summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MOVED1
-rw-r--r--Mk/bsd.sites.mk15
-rw-r--r--archivers/lbzip2/Makefile8
-rw-r--r--archivers/lbzip2/pkg-descr14
-rw-r--r--astro/pngphoon/Makefile15
-rw-r--r--astro/pngphoon/distinfo6
-rw-r--r--astro/pngphoon/files/patch-moon.c11
-rw-r--r--astro/pngphoon/files/patch-tws.h11
-rw-r--r--astro/pngphoon/pkg-descr1
-rw-r--r--audio/libmpdclient/pkg-plist5
-rw-r--r--audio/libopenspc/Makefile3
-rw-r--r--audio/lv2/Makefile5
-rw-r--r--audio/puddletag/Makefile4
-rw-r--r--audio/rnnoise/Makefile16
-rw-r--r--audio/rnnoise/distinfo8
-rw-r--r--audio/sonicradio/Makefile2
-rw-r--r--audio/sonicradio/distinfo10
-rw-r--r--biology/py-ete3/Makefile4
-rw-r--r--cad/k40-whisperer/Makefile3
-rw-r--r--comms/gnuradio/Makefile4
-rw-r--r--converters/simdutf/Makefile2
-rw-r--r--converters/simdutf/distinfo6
-rw-r--r--databases/cego/Makefile2
-rw-r--r--databases/cego/distinfo6
-rw-r--r--deskutils/dosage/Makefile4
-rw-r--r--deskutils/remind/Makefile3
-rw-r--r--deskutils/remind/distinfo6
-rw-r--r--devel/Makefile2
-rw-r--r--devel/aws-c-http/Makefile2
-rw-r--r--devel/aws-c-http/distinfo6
-rw-r--r--devel/aws-c-io/Makefile2
-rw-r--r--devel/aws-c-io/distinfo6
-rw-r--r--devel/aws-c-s3/Makefile2
-rw-r--r--devel/aws-c-s3/distinfo6
-rw-r--r--devel/aws-crt-cpp/Makefile2
-rw-r--r--devel/aws-crt-cpp/distinfo6
-rw-r--r--devel/cpprestsdk/Makefile2
-rw-r--r--devel/cpprestsdk/files/patch-include_cpprest_astreambuf.h77
-rw-r--r--devel/cpprestsdk/files/patch-include_cpprest_details_char__traits.h105
-rw-r--r--devel/cpprestsdk/files/patch-include_cpprest_streams.h144
-rw-r--r--devel/cpprestsdk/files/patch-tests_functional_streams_memstream__tests.cpp73
-rw-r--r--devel/cpprestsdk/files/patch-tests_functional_streams_stdstream__tests.cpp30
-rw-r--r--devel/cpprestsdk/pkg-plist1
-rw-r--r--devel/fatal/Makefile2
-rw-r--r--devel/fatal/distinfo6
-rw-r--r--devel/fbthrift/Makefile2
-rw-r--r--devel/fbthrift/distinfo6
-rw-r--r--devel/fbthrift/pkg-plist36
-rw-r--r--devel/folly/Makefile2
-rw-r--r--devel/folly/distinfo6
-rw-r--r--devel/folly/pkg-plist1
-rw-r--r--devel/gitleaks/Makefile9
-rw-r--r--devel/gitleaks/distinfo14
-rw-r--r--devel/p5-EV/files/patch-libev_ev.c14
-rw-r--r--devel/premake5/Makefile4
-rw-r--r--devel/premake5/distinfo6
-rw-r--r--devel/premake5/files/patch-src_host_premake.h13
-rw-r--r--devel/py-clldutils/Makefile3
-rw-r--r--devel/py-grab/Makefile4
-rw-r--r--devel/py-keystoneauth1/Makefile3
-rw-r--r--devel/py-libtaxii/Makefile4
-rw-r--r--devel/py-mypy/Makefile5
-rw-r--r--devel/py-oslo.vmware/Makefile3
-rw-r--r--devel/py-pymaven-patch/Makefile3
-rw-r--r--devel/py-pyquery/Makefile3
-rw-r--r--devel/py-pytest-pycodestyle/Makefile9
-rw-r--r--devel/py-pytest-pycodestyle/distinfo6
-rw-r--r--devel/py-python-xcaplib/Makefile3
-rw-r--r--devel/py-selection/Makefile3
-rw-r--r--devel/py-virtualenv/Makefile4
-rw-r--r--devel/py-virtualenv/distinfo6
-rw-r--r--devel/py-weblib/Makefile4
-rw-r--r--devel/py-xsdata/Makefile3
-rw-r--r--devel/rubygem-childprocess-gitlab/Makefile20
-rw-r--r--devel/rubygem-childprocess-gitlab/distinfo3
-rw-r--r--devel/rubygem-childprocess-gitlab/pkg-descr6
-rw-r--r--devel/rubygem-excon1-gitlab/Makefile22
-rw-r--r--devel/rubygem-excon1-gitlab/distinfo3
-rw-r--r--devel/rubygem-excon1-gitlab/pkg-descr1
-rw-r--r--dns/dnsrecon/Makefile4
-rw-r--r--editors/libreoffice/Makefile4
-rw-r--r--editors/novelwriter/Makefile3
-rw-r--r--editors/rehex/Makefile3
-rw-r--r--editors/rehex/distinfo6
-rw-r--r--editors/rehex/pkg-plist1
-rw-r--r--emulators/ppsspp/Makefile21
-rw-r--r--emulators/ppsspp/distinfo42
-rw-r--r--emulators/ppsspp/files/patch-Common_GPU_Vulkan_VulkanContext.cpp11
-rw-r--r--finance/py-ebaysdk/Makefile4
-rw-r--r--finance/py-investpy/Makefile4
-rw-r--r--finance/py-pytrends/Makefile3
-rw-r--r--games/anki/Makefile8
-rw-r--r--games/anki/distinfo18
-rw-r--r--games/anki/files/patch-qt_pyproject.toml14
-rw-r--r--games/freeciv/Makefile23
-rw-r--r--games/freeciv/distinfo6
-rw-r--r--games/freeciv/pkg-plist136
-rw-r--r--graphics/colmap/Makefile2
-rw-r--r--graphics/colmap/distinfo6
-rw-r--r--graphics/inkscape/Makefile3
-rw-r--r--graphics/osg/Makefile20
-rw-r--r--graphics/osg/files/patch-CMakeModules_FindFFmpeg.cmake10
-rw-r--r--graphics/osg/files/patch-CMakeModules_FindGStreamer.cmake17
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_OpenCASCADE_ReaderWriterOpenCASCADE.cpp11
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.cpp207
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.hpp255
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.cpp478
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.hpp131
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.cpp440
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.hpp62
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegPacket.hpp11
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegParameters.cpp37
-rw-r--r--graphics/osg/files/patch-src_osgPlugins_ffmpeg_ReaderWriterFFmpeg.cpp100
-rw-r--r--graphics/py-mayavi/Makefile2
-rw-r--r--graphics/py-pycollada/Makefile4
-rw-r--r--graphics/py-termtosvg/Makefile4
-rw-r--r--graphics/py-tifffile/Makefile3
-rw-r--r--graphics/swappy/Makefile4
-rw-r--r--irc/znc/Makefile2
-rw-r--r--irc/znc/distinfo6
-rw-r--r--korean/hunspell/Makefile3
-rw-r--r--lang/quickjs/Makefile4
-rw-r--r--lang/quickjs/distinfo6
-rw-r--r--lang/quickjs/files/patch-Makefile24
-rw-r--r--lang/quickjs/pkg-plist1
-rw-r--r--mail/automx/Makefile4
-rw-r--r--mail/cyrus-imapd25/Makefile10
-rw-r--r--mail/cyrus-imapd30/Makefile10
-rw-r--r--mail/cyrus-imapd310/Makefile10
-rw-r--r--mail/cyrus-imapd312/Makefile10
-rw-r--r--mail/cyrus-imapd32/Makefile10
-rw-r--r--mail/cyrus-imapd34/Makefile10
-rw-r--r--mail/cyrus-imapd36/Makefile10
-rw-r--r--mail/cyrus-imapd38/Makefile10
-rw-r--r--mail/mlmmj-webview/Makefile9
-rw-r--r--mail/mlmmj-webview/distinfo6
-rw-r--r--mail/py-premailer/Makefile4
-rw-r--r--mail/thunderbird/Makefile4
-rw-r--r--mail/thunderbird/distinfo6
-rw-r--r--math/octave-forge-geometry/Makefile4
-rw-r--r--math/py-pandas-datareader/Makefile4
-rw-r--r--math/vtk8/Makefile1
-rw-r--r--misc/llama-cpp/Makefile2
-rw-r--r--misc/llama-cpp/distinfo6
-rw-r--r--misc/llama-cpp/pkg-plist2
-rw-r--r--misc/ola/Makefile6
-rw-r--r--misc/ola/distinfo6
-rw-r--r--misc/py-kartograph/Makefile4
-rw-r--r--misc/py-lazrs/Makefile33
-rw-r--r--misc/py-lazrs/distinfo66
-rw-r--r--misc/py-mffpy/Makefile4
-rw-r--r--misc/py-pykml/Makefile4
-rw-r--r--multimedia/mediamtx/Makefile5
-rw-r--r--multimedia/mediamtx/distinfo14
-rw-r--r--multimedia/musikcube/Makefile2
-rw-r--r--multimedia/mythtv/Makefile6
-rw-r--r--multimedia/py-soco/Makefile4
-rw-r--r--multimedia/qmmp-qt5/Makefile2
-rw-r--r--multimedia/qmmp-qt5/distinfo6
-rw-r--r--multimedia/qmmp-qt5/pkg-plist1
-rw-r--r--multimedia/qmmp-qt6/Makefile2
-rw-r--r--multimedia/qmmp-qt6/distinfo6
-rw-r--r--multimedia/qmmp-qt6/pkg-plist1
-rw-r--r--multimedia/streamlink/Makefile4
-rw-r--r--multimedia/wireplumber/Makefile3
-rw-r--r--net-im/py-matrix-synapse/Makefile6
-rw-r--r--net-mgmt/crmsh/Makefile4
-rw-r--r--net-mgmt/py-gstat_exporter/Makefile3
-rw-r--r--net-mgmt/py-gstat_exporter/files/gstat_exporter.in4
-rw-r--r--net-mgmt/py-junos-eznc/Makefile4
-rw-r--r--net-mgmt/py-napalm/Makefile4
-rw-r--r--net-mgmt/py-ncclient/Makefile4
-rw-r--r--net-mgmt/py-nxapi-plumbing/Makefile4
-rw-r--r--net-mgmt/py-pyIOSXR/Makefile4
-rw-r--r--net-mgmt/py-pyang/Makefile4
-rw-r--r--net-p2p/bazarr/Makefile3
-rw-r--r--net-p2p/py-pulsar-client/Makefile3
-rw-r--r--net-p2p/py-pulsar-client/distinfo6
-rw-r--r--net/Makefile1
-rw-r--r--net/asio130/Makefile23
-rw-r--r--net/asio130/distinfo3
-rw-r--r--net/asio130/files/patch-configure11
-rw-r--r--net/asio130/pkg-descr3
-rw-r--r--net/asio130/pkg-plist622
-rw-r--r--net/eternalterminal/Makefile3
-rw-r--r--net/eternalterminal/distinfo6
-rw-r--r--net/fb303/Makefile2
-rw-r--r--net/fb303/distinfo6
-rw-r--r--net/fb303/pkg-plist9
-rw-r--r--net/mvfst/Makefile2
-rw-r--r--net/mvfst/distinfo6
-rw-r--r--net/mvfst/pkg-plist1
-rw-r--r--net/py-blobfile/Makefile3
-rw-r--r--net/py-pyshark/Makefile4
-rw-r--r--net/py-zeep/Makefile3
-rw-r--r--net/ryu/Makefile4
-rw-r--r--net/samba416/Makefile4
-rw-r--r--net/samba419/Makefile9
-rw-r--r--net/samba420/Makefile8
-rw-r--r--net/wangle/Makefile2
-rw-r--r--net/wangle/distinfo6
-rw-r--r--news/py-pynzb/Makefile6
-rw-r--r--print/py-relatorio/Makefile3
-rw-r--r--science/abinit/Makefile3
-rw-r--r--science/abinit/distinfo6
-rw-r--r--science/gemmi/Makefile7
-rw-r--r--science/gemmi/distinfo6
-rw-r--r--science/gemmi/pkg-plist1
-rw-r--r--science/phonopy/Makefile2
-rw-r--r--science/phonopy/distinfo6
-rw-r--r--science/py-OpenMC/Makefile4
-rw-r--r--science/py-gemmi/Makefile7
-rw-r--r--science/py-gemmi/distinfo6
-rw-r--r--science/py-gemmi/files/patch-CMakeLists.txt26
-rw-r--r--science/py-gemmi/pkg-plist2
-rw-r--r--science/py-obspy/Makefile3
-rw-r--r--science/py-phonopy/Makefile2
-rw-r--r--science/py-phonopy/distinfo6
-rw-r--r--science/py-pycsw/Makefile3
-rw-r--r--science/py-pygeometa/Makefile4
-rw-r--r--science/py-pyteomics/Makefile5
-rw-r--r--science/py-quantities/Makefile5
-rw-r--r--science/py-quantities/distinfo6
-rw-r--r--science/py-rmf/Makefile2
-rw-r--r--science/py-spglib/Makefile11
-rw-r--r--science/py-spglib/distinfo6
-rw-r--r--science/py-spglib/files/patch-pyproject.toml12
-rw-r--r--science/rmf/Makefile2
-rw-r--r--science/spglib/Makefile4
-rw-r--r--science/spglib/distinfo6
-rw-r--r--science/spglib/pkg-plist4
-rw-r--r--science/votca/Makefile7
-rw-r--r--security/Makefile1
-rw-r--r--security/fizz/Makefile2
-rw-r--r--security/fizz/distinfo6
-rw-r--r--security/gvmd/Makefile4
-rw-r--r--security/keepassxc/Makefile9
-rw-r--r--security/keepassxc/distinfo6
-rw-r--r--security/keepassxc/files/patch-CMakeLists.txt13
-rw-r--r--security/keepassxc276/Makefile72
-rw-r--r--security/keepassxc276/distinfo3
-rw-r--r--security/keepassxc276/files/patch-src_thirdparty_ykcore_CMakeLists.txt11
-rw-r--r--security/keepassxc276/pkg-descr22
-rw-r--r--security/keepassxc276/pkg-plist67
-rw-r--r--security/py-cybox/Makefile4
-rw-r--r--security/py-maec/Makefile4
-rw-r--r--security/py-mixbox/Makefile4
-rw-r--r--security/py-ospd-openvas/Makefile3
-rw-r--r--security/py-pykeepass/Makefile3
-rw-r--r--security/py-python-cas/Makefile4
-rw-r--r--security/py-python3-saml/Makefile3
-rw-r--r--security/py-stix/Makefile4
-rw-r--r--security/vuxml/vuln/2025.xml2
-rw-r--r--security/zeek/Makefile3
-rw-r--r--security/zeek/distinfo6
-rw-r--r--shells/carapace/Makefile3
-rw-r--r--shells/carapace/distinfo10
-rw-r--r--sysutils/Makefile2
-rw-r--r--sysutils/bamf/Makefile4
-rw-r--r--sysutils/kassiber/Makefile18
-rw-r--r--sysutils/kassiber/distinfo3
-rw-r--r--sysutils/kassiber/pkg-descr5
-rw-r--r--sysutils/kopia/Makefile3
-rw-r--r--sysutils/kopia/distinfo10
-rw-r--r--sysutils/liburcu/Makefile2
-rw-r--r--sysutils/liburcu/distinfo6
-rw-r--r--sysutils/liburcu/pkg-plist1
-rw-r--r--sysutils/py-howdoi/Makefile4
-rw-r--r--sysutils/rubygem-vagrant_cloud-gitlab/Makefile24
-rw-r--r--sysutils/rubygem-vagrant_cloud-gitlab/distinfo3
-rw-r--r--sysutils/rubygem-vagrant_cloud-gitlab/pkg-descr3
-rw-r--r--sysutils/superfile/Makefile3
-rw-r--r--sysutils/superfile/distinfo10
-rw-r--r--textproc/Makefile3
-rw-r--r--textproc/dyff/Makefile22
-rw-r--r--textproc/dyff/distinfo7
-rw-r--r--textproc/dyff/pkg-descr9
-rw-r--r--textproc/hq/Makefile149
-rw-r--r--textproc/hq/distinfo257
-rw-r--r--textproc/html-query/Makefile202
-rw-r--r--textproc/html-query/distinfo353
-rw-r--r--textproc/html-query/pkg-descr (renamed from textproc/hq/pkg-descr)0
-rw-r--r--textproc/jnv/Makefile276
-rw-r--r--textproc/jnv/distinfo552
-rw-r--r--textproc/jq/Makefile2
-rw-r--r--textproc/jq/distinfo6
-rw-r--r--textproc/jql/Makefile19
-rw-r--r--textproc/jql/distinfo38
-rw-r--r--textproc/py-citeproc-py/Makefile4
-rw-r--r--textproc/py-cyclonedx-python-lib/Makefile5
-rw-r--r--textproc/py-docxcompose/Makefile4
-rw-r--r--textproc/py-docxtpl/Makefile3
-rw-r--r--textproc/py-elementpath/Makefile3
-rw-r--r--textproc/py-markups/Makefile4
-rw-r--r--textproc/py-ocrmypdf/Makefile2
-rw-r--r--textproc/py-ocrmypdf/distinfo6
-rw-r--r--textproc/py-parsel/Makefile3
-rw-r--r--textproc/py-petl/Makefile3
-rw-r--r--textproc/py-pikepdf/Makefile3
-rw-r--r--textproc/py-pyexcel-ezodf/Makefile4
-rw-r--r--textproc/py-pyexcel-ods3/Makefile4
-rw-r--r--textproc/py-python-docx/Makefile3
-rw-r--r--textproc/py-python-pptx/Makefile3
-rw-r--r--textproc/py-sphinx-tabs/Makefile3
-rw-r--r--textproc/py-toronado/Makefile4
-rw-r--r--textproc/py-xmldiff/Makefile3
-rw-r--r--textproc/riffdiff/Makefile36
-rw-r--r--textproc/riffdiff/distinfo68
-rw-r--r--textproc/sigil/Makefile3
-rw-r--r--textproc/tokay/Makefile3
-rw-r--r--textproc/tokay/distinfo6
-rw-r--r--textproc/vacuum/Makefile8
-rw-r--r--textproc/vacuum/distinfo10
-rw-r--r--textproc/yelp-tools/Makefile3
-rw-r--r--textproc/yq/Makefile3
-rw-r--r--textproc/ytt/Makefile8
-rw-r--r--textproc/ytt/distinfo10
-rw-r--r--www/Makefile1
-rw-r--r--www/node24/files/patch-tools_v8__gypfiles_v8.gyp12
-rw-r--r--www/proxygen/Makefile2
-rw-r--r--www/proxygen/distinfo6
-rw-r--r--www/py-caldav/Makefile3
-rw-r--r--www/py-cinemagoer/Makefile4
-rw-r--r--www/py-feedgen/Makefile4
-rw-r--r--www/py-html5-parser/Makefile4
-rw-r--r--www/py-html5lib-modern/Makefile3
-rw-r--r--www/py-inlinestyler/Makefile4
-rw-r--r--www/py-readability-lxml/Makefile4
-rw-r--r--www/py-scrapy/Makefile4
-rw-r--r--www/py-seafdav/Makefile3
-rw-r--r--www/py-searxng-devel/Makefile3
-rw-r--r--www/py-splinter/Makefile4
-rw-r--r--www/py-spyne/Makefile4
-rw-r--r--www/py-urlwatch/Makefile4
-rw-r--r--www/py-woob/Makefile5
-rw-r--r--www/selenium/Makefile2
-rw-r--r--www/selenium/distinfo6
-rw-r--r--www/tailwindcss4/Makefile78
-rw-r--r--www/tailwindcss4/distinfo3
-rw-r--r--www/tailwindcss4/pkg-descr10
-rw-r--r--www/tailwindcss4/pkg-plist2228
-rw-r--r--www/wt/Makefile3
-rw-r--r--www/wt/distinfo6
-rw-r--r--www/wt/pkg-plist2
-rw-r--r--www/xist/Makefile4
-rw-r--r--x11-fm/doublecmd/Makefile17
-rw-r--r--x11-fm/doublecmd/distinfo16
-rw-r--r--x11-fm/doublecmd/files/patch-src_platform_unix_sdl2.pas11
-rw-r--r--x11-themes/kf6-breeze-icons/Makefile4
-rw-r--r--x11/cinnamon/Makefile4
-rw-r--r--x11/lightdm/Makefile2
-rw-r--r--x11/nwg-bar/Makefile4
-rw-r--r--x11/nwg-dock-hyprland/Makefile4
-rw-r--r--x11/nwg-dock/Makefile4
-rw-r--r--x11/nwg-drawer/Makefile4
-rw-r--r--x11/nwg-launchers/Makefile4
-rw-r--r--x11/nwg-look/Makefile4
-rw-r--r--x11/nwg-menu/Makefile4
358 files changed, 7608 insertions, 1702 deletions
diff --git a/MOVED b/MOVED
index c97c3a6d2e71..5645ef816e3d 100644
--- a/MOVED
+++ b/MOVED
@@ -4655,3 +4655,4 @@ lang/luajit-devel|lang/luajit|2025-07-08|Removed, use lang/luajit instead
devel/py-cog|devel/py-cogapp|2025-07-14|Renamed to match upstream PyPI package name
devel/pycharm-ce|devel/pycharm|2025-07-14|Has expired: Pycharm is now unified product. Please switch to devel/pycharm
devel/pycharm-pro|devel/pycharm|2025-07-14|Has expired: Pycharm is now unified product. Please switch to devel/pycharm
+textproc/hq|textproc/html-query|2025-07-21|Project was renamed
diff --git a/Mk/bsd.sites.mk b/Mk/bsd.sites.mk
index 93f2b6f4325c..c8baa05a608d 100644
--- a/Mk/bsd.sites.mk
+++ b/Mk/bsd.sites.mk
@@ -591,25 +591,16 @@ _gnome_ver= ${_version_major}.${_version_minor}
. endif
. endif
-. if !empty(MASTER_SITES:M*/archive/*)
-_GNOME_PATH= %SUBDIR%
-. else
_GNOME_PATH= %SUBDIR%/${_gnome_ver}
-. endif
MASTER_SITE_GNOME+= \
- https://download.gnome.org/${_GNOME_PATH}/ \
- http://ftp.belnet.be/mirror/ftp.gnome.org/gnomeftp/${_GNOME_PATH}/ \
- https://ftp.acc.umu.se/pub/GNOME/${_GNOME_PATH}/ \
- https://fr2.rpmfind.net/linux/gnome.org/${_GNOME_PATH}/ \
- https://gitlab.gnome.org/GNOME/${PORTNAME}/-/archive/${PORTVERSION}/
-
+ https://download.gnome.org/${_GNOME_PATH}/
.endif
.if !defined(IGNORE_MASTER_SITE_GIMP)
MASTER_SITE_GIMP+= \
- http://gimp.mirrors.hoobly.com/pub/%SUBDIR%/ \
- http://gimp.afri.cc/pub/%SUBDIR%/ \
+ https://ftp.gwdg.de/pub/misc/grafik/%SUBDIR%/ \
+ https://www.mirrorservice.org/sites/ftp.gimp.org/pub/%SUBDIR%/ \
https://download.gimp.org/pub/%SUBDIR%/
.endif
diff --git a/archivers/lbzip2/Makefile b/archivers/lbzip2/Makefile
index e45894c35cc2..dbf659e13a49 100644
--- a/archivers/lbzip2/Makefile
+++ b/archivers/lbzip2/Makefile
@@ -1,17 +1,17 @@
PORTNAME= lbzip2
PORTVERSION= 2.5
CATEGORIES= archivers
-MASTER_SITES= http://archive.lbzip2.org/ LOCAL/danfe
+MASTER_SITES= ${WWW}/releases/download/v${PORTVERSION}/ \
+ LOCAL/danfe
-LICENSE= GPLv3
+LICENSE= GPLv3+
MAINTAINER= danfe@FreeBSD.org
COMMENT= Multi-threaded bzip2/bunzip2 filter
-WWW= https://lbzip2.org/
+WWW= https://github.com/kjn/lbzip2
USES= tar:bzip2
GNU_CONFIGURE= yes
-GNU_CONFIGURE_MANPREFIX= ${PREFIX}/share
PLIST_FILES= bin/lbunzip2 bin/lbzcat bin/lbzip2 \
share/man/man1/lbunzip2.1.gz \
diff --git a/archivers/lbzip2/pkg-descr b/archivers/lbzip2/pkg-descr
index 1c23761043a3..2db31d3f25a3 100644
--- a/archivers/lbzip2/pkg-descr
+++ b/archivers/lbzip2/pkg-descr
@@ -1,13 +1,11 @@
-bzip2 is a free, multi-threaded compression utility with support for bzip2
-compressed file format.
-
-lbzip2 can process standard bz2 files in parallel. It uses POSIX threading
+lbzip2 is an independent, multi-threaded implementation of bzip2 which
+can process standard bz2 files in parallel. It uses POSIX threading
model (pthreads), which allows it to take full advantage of the symmetric
multiprocessing (SMP) systems. It has been proven to scale linearly, even
-to over one hundred processor cores.
+to over one hundred processor cores, and commonly considered the fastest
+SMP (and uniprocessor) bzip2 compressor and decompressor.
lbzip2 is fully compatible with bzip2 -- both at file format and command
line level. Files created by lbzip2 can be decompressed by all versions
-of bzip2 and other software supporting bz2 format. lbzip2 can decompress
-any bz2 files in parallel. All bzip2 command-line options are also
-accepted by lbzip2. This makes lbzip2 a drop-in replacement for bzip2.
+of bzip2 and other software supporting bz2 format. This makes lbzip2 a
+drop-in replacement for bzip2.
diff --git a/astro/pngphoon/Makefile b/astro/pngphoon/Makefile
index 2a562534ae48..3bcc5b1df0ec 100644
--- a/astro/pngphoon/Makefile
+++ b/astro/pngphoon/Makefile
@@ -1,24 +1,27 @@
PORTNAME= pngphoon
-DISTVERSION= 1.3
+DISTVERSION= 1.4
CATEGORIES= astro
MASTER_SITES= https://svolli.de/software/pngphoon/
-COMMENT= PNG Phase of Moon
MAINTAINER= fuz@FreeBSD.org
+COMMENT= PNG Phase of Moon
WWW= https://svolli.de/software/pngphoon/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libpng.so:graphics/png
+LIB_DEPENDS= libpng16.so:graphics/png
-USES= gmake localbase:ldflags tar:bz2
+USES= gmake localbase:ldflags shebangfix tar:bz2
+SHEBANG_FILES= contrib/phoonX
MAKE_ARGS= CC=${CC} CFLAGS="${CFLAGS}"
-PLIST_FILES= bin/pngphoon
+PLIST_FILES= bin/pngphoon bin/phoonX share/man/man1/pngphoon.1.gz
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/pngphoon ${STAGEDIR}${PREFIX}/bin/pngphoon
+ ${INSTALL_PROGRAM} ${WRKSRC}/pngphoon ${STAGEDIR}${PREFIX}/bin/
+ ${INSTALL_SCRIPT} ${WRKSRC}/contrib/phoonX ${STAGEDIR}${PREFIX}/bin/
+ ${INSTALL_MAN} ${WRKSRC}/contrib/pngphoon.1 ${STAGEDIR}${PREFIX}/share/man/man1/
.include <bsd.port.mk>
diff --git a/astro/pngphoon/distinfo b/astro/pngphoon/distinfo
index 8532d06226f7..d06a2fcb694f 100644
--- a/astro/pngphoon/distinfo
+++ b/astro/pngphoon/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1703936409
-SHA256 (pngphoon-1.3.tar.bz2) = 86bd37d37d23da12aa38b239fa0b197d7a5052c6b96b82361716b54e152d3b23
-SIZE (pngphoon-1.3.tar.bz2) = 67264
+TIMESTAMP = 1752050037
+SHA256 (pngphoon-1.4.tar.bz2) = 5492a1b75edd90e37e7f71b69ca8ed57c71c32bd5a35328085c79fb417cfd524
+SIZE (pngphoon-1.4.tar.bz2) = 77764
diff --git a/astro/pngphoon/files/patch-moon.c b/astro/pngphoon/files/patch-moon.c
new file mode 100644
index 000000000000..9fdf5936475c
--- /dev/null
+++ b/astro/pngphoon/files/patch-moon.c
@@ -0,0 +1,11 @@
+--- moon.c.orig 2025-07-18 07:32:17 UTC
++++ moon.c
+@@ -148,7 +148,7 @@ void mooncopy( image_t *image, moon_t *moondata, int c
+ moonoff = y * ( moondata->width ) / 8;
+ imageoff = (y + yoffset) * image->xbytes + xoffset / 8;
+
+- shade = blackflag ? shade = 0xff : shades[shadeindex][y % 8];
++ shade = blackflag ? 0xff : shades[shadeindex][y % 8];
+
+ /* finally, hack the bits */
+ if( bytexleft == bytexright )
diff --git a/astro/pngphoon/files/patch-tws.h b/astro/pngphoon/files/patch-tws.h
new file mode 100644
index 000000000000..e4e6e992dfe8
--- /dev/null
+++ b/astro/pngphoon/files/patch-tws.h
@@ -0,0 +1,11 @@
+--- tws.h.orig 2025-07-18 07:31:08 UTC
++++ tws.h
+@@ -33,7 +33,7 @@ struct tws
+
+ /* Declarations of routines. */
+
+-struct tws *dlocaltime( );
++struct tws *dlocaltime( long * );
+ /* dlocaltime( &clock ) turns a time(3) clock value into a tws */
+
+ struct tws *dtwstime( );
diff --git a/astro/pngphoon/pkg-descr b/astro/pngphoon/pkg-descr
index 2e0f07f3e4cb..99f51534f4b5 100644
--- a/astro/pngphoon/pkg-descr
+++ b/astro/pngphoon/pkg-descr
@@ -13,4 +13,3 @@ program was originally written for.
The image must have a width of at least 760 pixels to place the moon.
If the image is smaller just the stars will be drawn. And by the way:
it is pronounced "pingphoon" (like "typhoon").
-
diff --git a/audio/libmpdclient/pkg-plist b/audio/libmpdclient/pkg-plist
index 2ba1b567e0d8..7e27a85d5be1 100644
--- a/audio/libmpdclient/pkg-plist
+++ b/audio/libmpdclient/pkg-plist
@@ -143,6 +143,11 @@ libdata/pkgconfig/libmpdclient.pc
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/error_8h__dep__incl.md5
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/error_8h__dep__incl.png
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/error_8h_source.html
+%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/feature_8h.html
+%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/feature_8h__dep__incl.map
+%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/feature_8h__dep__incl.md5
+%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/feature_8h__dep__incl.png
+%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/feature_8h_source.html
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/files.html
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/fingerprint_8h.html
%%DOXYGEN%%%%PORTDOCS%%%%DOCSDIR%%/html/fingerprint_8h__dep__incl.map
diff --git a/audio/libopenspc/Makefile b/audio/libopenspc/Makefile
index 97b9a46956a0..5b78dec6d2b6 100644
--- a/audio/libopenspc/Makefile
+++ b/audio/libopenspc/Makefile
@@ -8,6 +8,9 @@ MASTER_SITES= http://rainbow-runner.nl/freebsd/ \
MAINTAINER= ports@FreeBSD.org
COMMENT= Library for playing SPC (SNES audio) files
+DEPRECATED= Legacy library based on a very old emulator, consider using audio/libgme
+EXPIRATION_DATE=2025-09-30
+
BUILD_DEPENDS= nasm:devel/nasm
GNU_CONFIGURE= yes
diff --git a/audio/lv2/Makefile b/audio/lv2/Makefile
index 76f0b6ea98ab..72bfb3945e03 100644
--- a/audio/lv2/Makefile
+++ b/audio/lv2/Makefile
@@ -1,5 +1,6 @@
PORTNAME= lv2
PORTVERSION= 1.18.10
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= https://lv2plug.in/spec/
@@ -12,7 +13,7 @@ LICENSE_COMB= multi
# Only lv2specgen.py is under MIT
LICENSE_FILE_ISCL= ${WRKSRC}/COPYING
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}rdflib>0:textproc/py-rdflib@${PY_FLAVOR}
@@ -30,7 +31,7 @@ DOCS_BUILD_DEPENDS= asciidoc:textproc/asciidoc
DOXYGEN_IMPLIES= DOCS
DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}rdflib>0:textproc/py-rdflib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown>0:textproc/py-markdown@${PY_FLAVOR}
diff --git a/audio/puddletag/Makefile b/audio/puddletag/Makefile
index 97fa8d6102d9..c10f952e9896 100644
--- a/audio/puddletag/Makefile
+++ b/audio/puddletag/Makefile
@@ -1,6 +1,6 @@
PORTNAME= puddletag
DISTVERSION= 2.4.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= audio python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -33,7 +33,7 @@ LXML_DESC= Enable better HTML parsing
PYACOUSTID_DESC= Enable support for tagging audio files using web based Tag Sources
LEVENSHTEIN_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Levenshtein>=0:devel/py-Levenshtein@${PY_FLAVOR}
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
PYACOUSTID_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyacoustid>=0:audio/py-pyacoustid@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/audio/rnnoise/Makefile b/audio/rnnoise/Makefile
index ce6859832997..6a35031132a8 100644
--- a/audio/rnnoise/Makefile
+++ b/audio/rnnoise/Makefile
@@ -1,23 +1,24 @@
PORTNAME= rnnoise
-DISTVERSION= g20210122
+PORTVERSION= 0.2
CATEGORIES= audio
+MASTER_SITES= https://github.com/xiph/rnnoise/releases/download/v${PORTVERSION}/
+
+PATCH_SITES= https://github.com/xiph/rnnoise/commit/
+PATCHFILES= 372f7b4b76cde4ca1ec4605353dd17898a99de38.patch:-p1
MAINTAINER= yuri@FreeBSD.org
COMMENT= Recurrent neural network for audio noise reduction
-WWW= https://github.com/xiph/rnnoise
+WWW= https://jmvalin.ca/demo/rnnoise/
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/COPYING
USES= autoreconf gmake libtool
GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-static --disable-examples
+CONFIGURE_ARGS= --disable-examples \
+ --disable-x86-rtcd
USE_LDCONFIG= yes
-USE_GITHUB= yes
-GH_ACCOUNT= xiph
-GH_TAGNAME= 1cbdbcf
-
INSTALL_TARGET= install-strip
OPTIONS_DEFINE= DOCS
@@ -27,6 +28,7 @@ DOCS_CONFIGURE_ENABLE= doc
PORTDOCS= * # API documentation feature is broken: https://github.com/xiph/rnnoise/issues/44
PLIST_FILES= include/rnnoise.h \
+ lib/librnnoise.a \
lib/librnnoise.so \
lib/librnnoise.so.0 \
lib/librnnoise.so.0.4.1 \
diff --git a/audio/rnnoise/distinfo b/audio/rnnoise/distinfo
index fe0530752e5f..eb51570c3d4c 100644
--- a/audio/rnnoise/distinfo
+++ b/audio/rnnoise/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1612679142
-SHA256 (xiph-rnnoise-g20210122-1cbdbcf_GH0.tar.gz) = e2aedecd6ee74c2c04caa90c4f02c4f1ceca6303d4a24bb59f0c00895b4fdcf0
-SIZE (xiph-rnnoise-g20210122-1cbdbcf_GH0.tar.gz) = 173753
+TIMESTAMP = 1753146024
+SHA256 (rnnoise-0.2.tar.gz) = 90fce4b00b9ff24c08dbfe31b82ffd43bae383d85c5535676d28b0a2b11c0d37
+SIZE (rnnoise-0.2.tar.gz) = 2294308
+SHA256 (372f7b4b76cde4ca1ec4605353dd17898a99de38.patch) = c491dfba7784ba027f7293259652053bb63bc834aae693269e4b5cf1dda54b05
+SIZE (372f7b4b76cde4ca1ec4605353dd17898a99de38.patch) = 4114
diff --git a/audio/sonicradio/Makefile b/audio/sonicradio/Makefile
index 2ee56cddf00e..25d6d4337fd8 100644
--- a/audio/sonicradio/Makefile
+++ b/audio/sonicradio/Makefile
@@ -1,6 +1,6 @@
PORTNAME= sonicradio
DISTVERSIONPREFIX= v
-DISTVERSION= 0.6.15
+DISTVERSION= 0.7.2
CATEGORIES= audio
MAINTAINER= nivit@FreeBSD.org
diff --git a/audio/sonicradio/distinfo b/audio/sonicradio/distinfo
index 54bc98f31308..b2f779c2eeb5 100644
--- a/audio/sonicradio/distinfo
+++ b/audio/sonicradio/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1750494577
-SHA256 (go/audio_sonicradio/sonicradio-v0.6.15/v0.6.15.mod) = e13d7c88d2c94f14eec5b9f603bc5ded2e13d9baab8eab44849479c58f0bdd6d
-SIZE (go/audio_sonicradio/sonicradio-v0.6.15/v0.6.15.mod) = 1197
-SHA256 (go/audio_sonicradio/sonicradio-v0.6.15/v0.6.15.zip) = 01304694c6754ef827609a1210d019fdd3aa93c389507f05af63e5923ebf308b
-SIZE (go/audio_sonicradio/sonicradio-v0.6.15/v0.6.15.zip) = 1259135
+TIMESTAMP = 1753178186
+SHA256 (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.mod) = e13d7c88d2c94f14eec5b9f603bc5ded2e13d9baab8eab44849479c58f0bdd6d
+SIZE (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.mod) = 1197
+SHA256 (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.zip) = a12258a0aaccbd04f7f8573c45cd0c7edac0e3658e5d53859752ebf698f43df1
+SIZE (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.zip) = 1263955
diff --git a/biology/py-ete3/Makefile b/biology/py-ete3/Makefile
index 8d7d68981261..4fc14d250f0a 100644
--- a/biology/py-ete3/Makefile
+++ b/biology/py-ete3/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ete3
DISTVERSION= 3.1.3
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= biology python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
PY_DEPENDS= ${PYNUMPY} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
BUILD_DEPENDS= ${PY_DEPENDS}
RUN_DEPENDS= ${PY_DEPENDS}
diff --git a/cad/k40-whisperer/Makefile b/cad/k40-whisperer/Makefile
index 1f8e46d1d0a6..442c77aac65c 100644
--- a/cad/k40-whisperer/Makefile
+++ b/cad/k40-whisperer/Makefile
@@ -1,5 +1,6 @@
PORTNAME= k40-whisperer
DISTVERSION= 0.59
+PORTREVISION= 1
CATEGORIES= cad python
MASTER_SITES= http://www.scorchworks.com/K40whisperer/
DISTNAME= K40_Whisperer-${DISTVERSION}_src
@@ -11,7 +12,7 @@ WWW= https://www.scorchworks.com/K40whisperer/k40whisperer.html
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/gpl-3.0.txt
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyusb>0:devel/py-pyusb@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=7.0.0:graphics/py-pillow@${PY_FLAVOR}
diff --git a/comms/gnuradio/Makefile b/comms/gnuradio/Makefile
index ef9c0c7e14b9..b94706452f35 100644
--- a/comms/gnuradio/Makefile
+++ b/comms/gnuradio/Makefile
@@ -1,7 +1,7 @@
PORTNAME= gnuradio
DISTVERSIONPREFIX= v
DISTVERSION= 3.10.12.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= comms astro hamradio
MAINTAINER= hamradio@FreeBSD.org
@@ -12,7 +12,7 @@ LICENSE= GPLv3
BUILD_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyqtgraph>0:graphics/py-pyqtgraph@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx>=1.2.2,1:textproc/py-sphinx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>0:devel/py-pyyaml@${PY_FLAVOR} \
diff --git a/converters/simdutf/Makefile b/converters/simdutf/Makefile
index ca69cd6a3910..1afb66706828 100644
--- a/converters/simdutf/Makefile
+++ b/converters/simdutf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= simdutf
DISTVERSIONPREFIX= v
-DISTVERSION= 7.3.2
+DISTVERSION= 7.3.3
CATEGORIES= converters textproc
MAINTAINER= fuz@FreeBSD.org
diff --git a/converters/simdutf/distinfo b/converters/simdutf/distinfo
index dc30e34a3aa2..97d2338edcdf 100644
--- a/converters/simdutf/distinfo
+++ b/converters/simdutf/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751626720
-SHA256 (simdutf-simdutf-v7.3.2_GH0.tar.gz) = ff5ee7fa9a02372819ca9fbb78983dd6e9a2140a13507c98fd9b91d2766bf9b5
-SIZE (simdutf-simdutf-v7.3.2_GH0.tar.gz) = 2200577
+TIMESTAMP = 1752755367
+SHA256 (simdutf-simdutf-v7.3.3_GH0.tar.gz) = 6d720ecdd2e524790c0204561f559b755952d8a836a237b2b533f716ab6fdfbb
+SIZE (simdutf-simdutf-v7.3.3_GH0.tar.gz) = 2202972
diff --git a/databases/cego/Makefile b/databases/cego/Makefile
index 15592ba9df5a..cc518a870e7a 100644
--- a/databases/cego/Makefile
+++ b/databases/cego/Makefile
@@ -1,5 +1,5 @@
PORTNAME= cego
-PORTVERSION= 2.52.19
+PORTVERSION= 2.52.20
CATEGORIES= databases
MASTER_SITES= http://www.lemke-it.com/
diff --git a/databases/cego/distinfo b/databases/cego/distinfo
index 90ad70f358c0..bceb46ae6517 100644
--- a/databases/cego/distinfo
+++ b/databases/cego/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752778756
-SHA256 (cego-2.52.19.tar.gz) = 20a89099f8f6c845ace18d7b7a97241e06a111d71ff9212667af4ec20c455728
-SIZE (cego-2.52.19.tar.gz) = 3310476
+TIMESTAMP = 1753034129
+SHA256 (cego-2.52.20.tar.gz) = 273a06b747d0e2f1f97b78a8154a58ff6251721e25721e2ef48f5360f7c129f3
+SIZE (cego-2.52.20.tar.gz) = 3307465
diff --git a/deskutils/dosage/Makefile b/deskutils/dosage/Makefile
index 5a69e393b26a..a7a3b1a8c8c1 100644
--- a/deskutils/dosage/Makefile
+++ b/deskutils/dosage/Makefile
@@ -1,6 +1,6 @@
PORTNAME= dosage
DISTVERSION= 3.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= deskutils python
MASTER_SITES= PYPI
@@ -17,7 +17,7 @@ BUILD_DEPENDS= ${PY_SETUPTOOLS} \
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}colorama>0:devel/py-colorama@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssselect>0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}imagesize>0:graphics/py-imagesize@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}platformdirs>0:devel/py-platformdirs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.0:www/py-requests@${PY_FLAVOR}
diff --git a/deskutils/remind/Makefile b/deskutils/remind/Makefile
index 22b2c1863e50..e30d9209f8f1 100644
--- a/deskutils/remind/Makefile
+++ b/deskutils/remind/Makefile
@@ -1,6 +1,5 @@
PORTNAME= remind
-DISTVERSION= 05.04.01
-PORTREVISION= 1
+DISTVERSION= 05.04.02
CATEGORIES= deskutils
# upstream moves distfiles to OLD once a new release appears
MASTER_SITES= https://dianne.skoll.ca/projects/remind/download/ \
diff --git a/deskutils/remind/distinfo b/deskutils/remind/distinfo
index a73bf2907a9a..47a102def74f 100644
--- a/deskutils/remind/distinfo
+++ b/deskutils/remind/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750105289
-SHA256 (remind-05.04.01.tar.gz) = 5ecb0c1358c24fd88ee6a22d05233c6e035826e85ee7b87f8e0226b558fae480
-SIZE (remind-05.04.01.tar.gz) = 4568953
+TIMESTAMP = 1752755124
+SHA256 (remind-05.04.02.tar.gz) = 5872c2eea8ab8ae50fa4a70388547fafd8277ba1ce9f037317695541af055526
+SIZE (remind-05.04.02.tar.gz) = 4566662
diff --git a/devel/Makefile b/devel/Makefile
index 540047b80ac4..379a91f8168d 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -7127,6 +7127,7 @@
SUBDIR += rubygem-cf-uaa-lib
SUBDIR += rubygem-cheffish
SUBDIR += rubygem-childprocess
+ SUBDIR += rubygem-childprocess-gitlab
SUBDIR += rubygem-chronic
SUBDIR += rubygem-chronic_duration
SUBDIR += rubygem-claide
@@ -7278,6 +7279,7 @@
SUBDIR += rubygem-excon
SUBDIR += rubygem-excon-gitlab
SUBDIR += rubygem-excon0
+ SUBDIR += rubygem-excon1-gitlab
SUBDIR += rubygem-execjs
SUBDIR += rubygem-extlib
SUBDIR += rubygem-extpp
diff --git a/devel/aws-c-http/Makefile b/devel/aws-c-http/Makefile
index 630966639aad..1182419c90e2 100644
--- a/devel/aws-c-http/Makefile
+++ b/devel/aws-c-http/Makefile
@@ -1,6 +1,6 @@
PORTNAME= aws-c-http
DISTVERSIONPREFIX= v
-DISTVERSION= 0.10.2
+DISTVERSION= 0.10.4
CATEGORIES= devel
MAINTAINER= eduardo@FreeBSD.org
diff --git a/devel/aws-c-http/distinfo b/devel/aws-c-http/distinfo
index 7e2e3d6d1b05..fe334eed3cce 100644
--- a/devel/aws-c-http/distinfo
+++ b/devel/aws-c-http/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749486541
-SHA256 (awslabs-aws-c-http-v0.10.2_GH0.tar.gz) = 048d9d683459ade363fd7cc448c2b6329c78f67a2a0c0cb61c16de4634a2fc6b
-SIZE (awslabs-aws-c-http-v0.10.2_GH0.tar.gz) = 489715
+TIMESTAMP = 1753133355
+SHA256 (awslabs-aws-c-http-v0.10.4_GH0.tar.gz) = dfeeeaa2e84ccda4c8cb0c29f412298df80a57a27003e716f2d3df9794956fc1
+SIZE (awslabs-aws-c-http-v0.10.4_GH0.tar.gz) = 496121
diff --git a/devel/aws-c-io/Makefile b/devel/aws-c-io/Makefile
index e36bfd1d02f4..6b65e51adf7c 100644
--- a/devel/aws-c-io/Makefile
+++ b/devel/aws-c-io/Makefile
@@ -1,6 +1,6 @@
PORTNAME= aws-c-io
DISTVERSIONPREFIX= v
-DISTVERSION= 0.21.1
+DISTVERSION= 0.21.2
CATEGORIES= devel
MAINTAINER= eduardo@FreeBSD.org
diff --git a/devel/aws-c-io/distinfo b/devel/aws-c-io/distinfo
index c92e9c2c62e6..8bb3981ca2d1 100644
--- a/devel/aws-c-io/distinfo
+++ b/devel/aws-c-io/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752765009
-SHA256 (awslabs-aws-c-io-v0.21.1_GH0.tar.gz) = 1d4c6ac5d65acdad8c07f7b0bdd417fd52ab99d29d6d79788618eba317679cf1
-SIZE (awslabs-aws-c-io-v0.21.1_GH0.tar.gz) = 749034
+TIMESTAMP = 1753133137
+SHA256 (awslabs-aws-c-io-v0.21.2_GH0.tar.gz) = 75ada840ed7ef1b8e6908a9d2d017375f9093b9db04c51caf68f8edcfd20cc4c
+SIZE (awslabs-aws-c-io-v0.21.2_GH0.tar.gz) = 750938
diff --git a/devel/aws-c-s3/Makefile b/devel/aws-c-s3/Makefile
index db076a3bfe25..09d4511aca0a 100644
--- a/devel/aws-c-s3/Makefile
+++ b/devel/aws-c-s3/Makefile
@@ -1,6 +1,6 @@
PORTNAME= aws-c-s3
DISTVERSIONPREFIX= v
-DISTVERSION= 0.8.5
+DISTVERSION= 0.8.6
CATEGORIES= devel
MAINTAINER= eduardo@FreeBSD.org
diff --git a/devel/aws-c-s3/distinfo b/devel/aws-c-s3/distinfo
index 4e4f8f78b700..6b4fcfc74bcc 100644
--- a/devel/aws-c-s3/distinfo
+++ b/devel/aws-c-s3/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752766107
-SHA256 (awslabs-aws-c-s3-v0.8.5_GH0.tar.gz) = 852c0614936d54f77b40f5a0850b4c16a339dc21764006075a6ccb36d90f70ae
-SIZE (awslabs-aws-c-s3-v0.8.5_GH0.tar.gz) = 371294
+TIMESTAMP = 1753133545
+SHA256 (awslabs-aws-c-s3-v0.8.6_GH0.tar.gz) = 583fb207c20a2e68a8e2990d62668b96c9662cf864f7c13c87d9ede09d61f8e5
+SIZE (awslabs-aws-c-s3-v0.8.6_GH0.tar.gz) = 375993
diff --git a/devel/aws-crt-cpp/Makefile b/devel/aws-crt-cpp/Makefile
index daac822e418a..0abf7631d62c 100644
--- a/devel/aws-crt-cpp/Makefile
+++ b/devel/aws-crt-cpp/Makefile
@@ -1,6 +1,6 @@
PORTNAME= aws-crt-cpp
DISTVERSIONPREFIX= v
-DISTVERSION= 0.33.0
+DISTVERSION= 0.33.1
CATEGORIES= devel
MAINTAINER= eduardo@FreeBSD.org
diff --git a/devel/aws-crt-cpp/distinfo b/devel/aws-crt-cpp/distinfo
index 5fa45e6d26d4..f5cea0a4b811 100644
--- a/devel/aws-crt-cpp/distinfo
+++ b/devel/aws-crt-cpp/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752262892
-SHA256 (awslabs-aws-crt-cpp-v0.33.0_GH0.tar.gz) = 10182e870dc35df3ab929e25a4c43bb6b8ed860aae70f597fa401cb5b5da3fb3
-SIZE (awslabs-aws-crt-cpp-v0.33.0_GH0.tar.gz) = 371377
+TIMESTAMP = 1753088602
+SHA256 (awslabs-aws-crt-cpp-v0.33.1_GH0.tar.gz) = edb3350ecabdefabee25f807816ab5ba0fb14615b267f329900a64d1c8cd4623
+SIZE (awslabs-aws-crt-cpp-v0.33.1_GH0.tar.gz) = 371634
diff --git a/devel/cpprestsdk/Makefile b/devel/cpprestsdk/Makefile
index f8f8f672c9fb..d9fcae5c27a0 100644
--- a/devel/cpprestsdk/Makefile
+++ b/devel/cpprestsdk/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cpprestsdk
PORTVERSION= 2.10.19
-PORTREVISION= 4
+PORTREVISION= 5
DISTVERSIONPREFIX= v
CATEGORIES= devel
diff --git a/devel/cpprestsdk/files/patch-include_cpprest_astreambuf.h b/devel/cpprestsdk/files/patch-include_cpprest_astreambuf.h
new file mode 100644
index 000000000000..3daacb5a460c
--- /dev/null
+++ b/devel/cpprestsdk/files/patch-include_cpprest_astreambuf.h
@@ -0,0 +1,77 @@
+--- include/cpprest/astreambuf.h.orig 2023-12-05 04:23:31 UTC
++++ include/cpprest/astreambuf.h
+@@ -15,6 +15,7 @@
+
+ #include "cpprest/asyncrt_utils.h"
+ #include "cpprest/details/basic_types.h"
++#include "cpprest/details/char_traits.h"
+ #include "pplx/pplxtasks.h"
+ #include <atomic>
+ #include <cstring>
+@@ -56,55 +57,28 @@ namespace streams
+ /// <typeparam name="_CharType">
+ /// The data type of the basic element of the stream.
+ /// </typeparam>
++namespace detail
++{
+ template<typename _CharType>
+-struct char_traits : std::char_traits<_CharType>
++struct char_traits : utility::CanUseStdCharTraits<_CharType>::TraitsType
+ {
+ /// <summary>
+ /// Some synchronous functions will return this value if the operation
+ /// requires an asynchronous call in a given situation.
+ /// </summary>
+ /// <returns>An <c>int_type</c> value which implies that an asynchronous call is required.</returns>
+- static typename std::char_traits<_CharType>::int_type requires_async()
++ static typename utility::CanUseStdCharTraits<_CharType>::TraitsType::int_type requires_async()
+ {
+- return std::char_traits<_CharType>::eof() - 1;
++ return utility::CanUseStdCharTraits<_CharType>::TraitsType::eof() - 1;
+ }
+ };
++}
++template<typename _CharType> struct char_traits : detail::char_traits<_CharType> {
++};
+ #if !defined(_WIN32)
+-template<>
+-struct char_traits<unsigned char> : private std::char_traits<char>
+-{
+-public:
+- typedef unsigned char char_type;
+-
+- using std::char_traits<char>::eof;
+- using std::char_traits<char>::int_type;
+- using std::char_traits<char>::off_type;
+- using std::char_traits<char>::pos_type;
+-
+- static size_t length(const unsigned char* str)
+- {
+- return std::char_traits<char>::length(reinterpret_cast<const char*>(str));
+- }
+-
+- static void assign(unsigned char& left, const unsigned char& right) { left = right; }
+- static unsigned char* assign(unsigned char* left, size_t n, unsigned char value)
+- {
+- return reinterpret_cast<unsigned char*>(
+- std::char_traits<char>::assign(reinterpret_cast<char*>(left), n, static_cast<char>(value)));
+- }
+-
+- static unsigned char* copy(unsigned char* left, const unsigned char* right, size_t n)
+- {
+- return reinterpret_cast<unsigned char*>(
+- std::char_traits<char>::copy(reinterpret_cast<char*>(left), reinterpret_cast<const char*>(right), n));
+- }
+-
+- static unsigned char* move(unsigned char* left, const unsigned char* right, size_t n)
+- {
+- return reinterpret_cast<unsigned char*>(
+- std::char_traits<char>::move(reinterpret_cast<char*>(left), reinterpret_cast<const char*>(right), n));
+- }
+-
++template <> struct char_traits<unsigned char> : detail::char_traits<unsigned char> {
++ typedef typename std::char_traits<char>::int_type int_type;
++ static int_type eof() { return std::char_traits<char>::eof(); }
+ static int_type requires_async() { return eof() - 1; }
+ };
+ #endif
diff --git a/devel/cpprestsdk/files/patch-include_cpprest_details_char__traits.h b/devel/cpprestsdk/files/patch-include_cpprest_details_char__traits.h
new file mode 100644
index 000000000000..6ccf51639de7
--- /dev/null
+++ b/devel/cpprestsdk/files/patch-include_cpprest_details_char__traits.h
@@ -0,0 +1,105 @@
+--- include/cpprest/details/char_traits.h.orig 2025-07-02 14:23:43 UTC
++++ include/cpprest/details/char_traits.h
+@@ -0,0 +1,102 @@
++//
++// Created by sigsegv on 6/28/25.
++//
++
++#ifndef CPPRESTSDK_ROOT_CHAR_TRAITS_H
++#define CPPRESTSDK_ROOT_CHAR_TRAITS_H
++
++#include <type_traits>
++#include <string>
++
++namespace utility {
++
++namespace detail {
++
++template <typename T> struct IntTypeFor {
++ typedef typename std::conditional<std::is_unsigned<T>::value, unsigned long long int, long long int>::type type;
++};
++template <> struct IntTypeFor<char> {
++ typedef typename std::char_traits<char>::int_type type;
++};
++template <> struct IntTypeFor<unsigned char> {
++ typedef typename std::make_unsigned<typename std::char_traits<char>::int_type>::type type;
++};
++
++template <typename T> class DetailCharTraits
++{
++public:
++ using char_type = T;
++ using int_type = typename IntTypeFor<T>::type;
++ using off_type = std::streamoff;
++ using pos_type = std::streampos;
++ using state_type = mbstate_t;
++
++ static void assign(char_type& r, const char_type& a) noexcept { r = a; }
++ static char_type to_char_type(int_type c) noexcept { return char_type(c); }
++ static int_type to_int_type(char_type c) noexcept { return c; }
++ static bool eq(char_type a, char_type b) noexcept { return a == b; }
++ static bool lt(char_type a, char_type b) noexcept { return a < b; }
++ static int compare(const char_type* s1,const char_type* s2,size_t n){
++ for (; n--; ++s1, ++s2) {
++ if (!eq(*s1, *s2))
++ return lt(*s1,*s2)?-1:1;
++ }
++ return 0;
++ }
++ static size_t length(const char_type* s){
++ const char_type* p = s;
++ while (*p)
++ ++p;
++ return size_t(p - s);
++ }
++ static const char_type* find(const char_type* s,size_t n,const char_type& a){
++ for (; n--; ++s)
++ {
++ if (eq(*s, a))
++ return s;
++ return nullptr;
++ }
++ }
++ static char_type* move (char_type* r,const char_type* s,size_t n){
++ return (char_type*)memmove(r, s, n * sizeof(char_type));
++ }
++ static char_type* copy (char_type* r,const char_type* s,size_t n){
++ return (char_type*)memcpy (r, s, n * sizeof(char_type));
++ }
++ static char_type* assign(char_type* r,size_t n,char_type a){
++ if (sizeof(char_type) == 1)
++ {
++ return (char_type*)memset(r, a, n);
++ }
++ else
++ {
++ for (char_type *s = r; n--; ++s)
++ {
++ *s = a;
++ }
++ }
++ }
++ static int_type eof() noexcept { return ~0u; }
++ static int_type not_eof(int_type c) noexcept { return c == eof() ? 0 : c; }
++};
++
++template <typename T, typename = bool> struct CanUseStdCharTraits : public std::false_type
++{
++public:
++ typedef DetailCharTraits<T> TraitsType;
++};
++
++template <typename T> struct CanUseStdCharTraits<T, decltype(std::char_traits<T>::eq(std::declval<T>(), std::declval<T>()))> : public std::true_type
++{
++public:
++ typedef std::char_traits<T> TraitsType;
++};
++
++}
++
++template <typename T> struct CanUseStdCharTraits : detail::CanUseStdCharTraits<typename std::remove_const<typename std::remove_reference<T>::type>::type> {
++};
++
++}
++
++#endif // CPPRESTSDK_ROOT_CHAR_TRAITS_H
diff --git a/devel/cpprestsdk/files/patch-include_cpprest_streams.h b/devel/cpprestsdk/files/patch-include_cpprest_streams.h
new file mode 100644
index 000000000000..c1e1a5ba5b7e
--- /dev/null
+++ b/devel/cpprestsdk/files/patch-include_cpprest_streams.h
@@ -0,0 +1,144 @@
+--- include/cpprest/streams.h.orig 2023-12-05 04:23:31 UTC
++++ include/cpprest/streams.h
+@@ -16,6 +16,7 @@
+ #define CASA_STREAMS_H
+
+ #include "cpprest/astreambuf.h"
++#include "cpprest/details/char_traits.h"
+ #include <iosfwd>
+ #include <cstdio>
+
+@@ -60,31 +61,96 @@ class basic_istream_helper (private)
+ concurrency::streams::streambuf<CharType> m_buffer;
+ };
+
+-template<typename CharType>
++template<typename CharType, class Traits = typename utility::CanUseStdCharTraits<CharType>::TraitsType>
+ struct Value2StringFormatter
+ {
++ struct SanitizeInput
++ {
++ const std::basic_string<char> &operator () (const std::basic_string<char> &input)
++ {
++ return input;
++ }
++ template <class InputTraits> std::basic_string<char> operator () (const std::basic_string<unsigned char, InputTraits> &input)
++ {
++ return {reinterpret_cast<const char *>(input.c_str()), input.size()};
++ }
++ const char *operator () (const char *input) {
++ return input;
++ }
++ const char *operator () (const unsigned char *input)
++ {
++ return reinterpret_cast<const char *>(input);
++ }
++ template <class T> T operator () (T input)
++ {
++ return input;
++ }
++ };
++ struct GenerateFormatOutput
++ {
++ std::basic_string<CharType,Traits> &&operator() (std::basic_string<CharType,Traits> &&result)
++ {
++ return std::move(result);
++ }
++ std::basic_string<CharType,Traits> operator() (const std::basic_string<char> &intermediate)
++ {
++ return {reinterpret_cast<const CharType *>(intermediate.c_str()), intermediate.size()};
++ }
++ };
+ template<typename T>
+- static std::basic_string<CharType> format(const T& val)
++ static std::basic_string<CharType, Traits> format(const T& val)
+ {
+- std::basic_ostringstream<CharType> ss;
+- ss << val;
+- return ss.str();
++ typename std::conditional<
++ sizeof(CharType) == 1,
++ std::basic_ostringstream<char>,
++ std::basic_ostringstream<typename std::make_signed<CharType>::type>
++ >::type ss;
++ SanitizeInput sanitizer;
++ ss << sanitizer(val);
++ typename std::conditional<
++ sizeof(CharType) == 1,
++ std::basic_string<char>,
++ std::basic_string<typename std::make_signed<CharType>::type>
++ >::type str = ss.str();
++ GenerateFormatOutput generateFormatOutput;
++ return generateFormatOutput(std::move(str));
+ }
+ };
+
+-template<>
+-struct Value2StringFormatter<uint8_t>
++template<class Traits, typename T>
++struct Value2StringFormatterUint8Format
+ {
+- template<typename T>
+- static std::basic_string<uint8_t> format(const T& val)
++ std::basic_string<uint8_t, Traits> operator () (const T& val)
+ {
+ std::basic_ostringstream<char> ss;
+ ss << val;
+ return reinterpret_cast<const uint8_t*>(ss.str().c_str());
+ }
++};
+
+- static std::basic_string<uint8_t> format(const utf16string& val)
++template <class Traits>
++struct Value2StringFormatterUint8Format<Traits, std::basic_string<uint8_t,Traits>>
++{
++ std::basic_string<uint8_t, Traits> operator () (
++ const std::basic_string<uint8_t, typename utility::CanUseStdCharTraits<uint8_t>::TraitsType>& val)
+ {
++ Value2StringFormatterUint8Format<Traits,std::basic_string<char>> format;
++ return format(reinterpret_cast<const std::basic_string<char>&>(val));
++ }
++};
++
++template<>
++struct Value2StringFormatter<uint8_t>
++{
++ template <typename T, class Traits = typename utility::CanUseStdCharTraits<uint8_t>::TraitsType>
++ static std::basic_string<uint8_t, Traits> format(const T& val)
++ {
++ Value2StringFormatterUint8Format<Traits, T> format;
++ return format(val);
++ }
++
++ static std::basic_string<uint8_t, typename utility::CanUseStdCharTraits<uint8_t>::TraitsType> format(const utf16string& val)
++ {
+ return format(utility::conversions::utf16_to_utf8(val));
+ }
+ };
+@@ -262,7 +328,7 @@ class basic_ostream (public)
+ /// Write the specified string to the output stream.
+ /// </summary>
+ /// <param name="str">Input string.</param>
+- pplx::task<size_t> print(const std::basic_string<CharType>& str) const
++ pplx::task<size_t> print(const std::basic_string<CharType,traits>& str) const
+ {
+ pplx::task<size_t> result;
+ if (!_verify_and_return_task(details::_out_stream_msg, result)) return result;
+@@ -273,7 +339,7 @@ class basic_ostream (public)
+ }
+ else
+ {
+- auto sharedStr = std::make_shared<std::basic_string<CharType>>(str);
++ auto sharedStr = std::make_shared<std::basic_string<CharType,traits>>(str);
+ return helper()->m_buffer.putn_nocopy(sharedStr->c_str(), sharedStr->size()).then([sharedStr](size_t size) {
+ return size;
+ });
+@@ -294,7 +360,7 @@ class basic_ostream (public)
+ if (!_verify_and_return_task(details::_out_stream_msg, result)) return result;
+ // TODO in the future this could be improved to have Value2StringFormatter avoid another unnecessary copy
+ // by putting the string on the heap before calling the print string overload.
+- return print(details::Value2StringFormatter<CharType>::format(val));
++ return print(details::Value2StringFormatter<CharType, traits>::format(val));
+ }
+
+ /// <summary>
diff --git a/devel/cpprestsdk/files/patch-tests_functional_streams_memstream__tests.cpp b/devel/cpprestsdk/files/patch-tests_functional_streams_memstream__tests.cpp
new file mode 100644
index 000000000000..e2b7e2e67e7e
--- /dev/null
+++ b/devel/cpprestsdk/files/patch-tests_functional_streams_memstream__tests.cpp
@@ -0,0 +1,73 @@
+--- tests/functional/streams/memstream_tests.cpp.orig 2023-12-05 04:23:31 UTC
++++ tests/functional/streams/memstream_tests.cpp
+@@ -8,6 +8,7 @@
+ *
+ * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+ ****/
++#include "cpprest/details/char_traits.h"
+ #include "stdafx.h"
+ #if defined(__cplusplus_winrt)
+ #include <wrl.h>
+@@ -32,7 +33,7 @@ void streambuf_putc(StreamBufferType& wbuf)
+ {
+ VERIFY_IS_TRUE(wbuf.can_write());
+
+- std::basic_string<typename StreamBufferType::char_type> s;
++ std::basic_string<typename StreamBufferType::char_type,typename utility::CanUseStdCharTraits<typename StreamBufferType::char_type>::TraitsType> s;
+ s.push_back((typename StreamBufferType::char_type)0);
+ s.push_back((typename StreamBufferType::char_type)1);
+ s.push_back((typename StreamBufferType::char_type)2);
+@@ -137,7 +138,7 @@ void streambuf_putn(StreamBufferType& wbuf)
+ {
+ VERIFY_IS_TRUE(wbuf.can_write());
+
+- std::basic_string<typename StreamBufferType::char_type> s;
++ std::basic_string<typename StreamBufferType::char_type,typename utility::CanUseStdCharTraits<typename StreamBufferType::char_type>::TraitsType> s;
+ s.push_back((typename StreamBufferType::char_type)0);
+ s.push_back((typename StreamBufferType::char_type)1);
+ s.push_back((typename StreamBufferType::char_type)2);
+@@ -169,7 +170,7 @@ void streambuf_putn(concurrency::streams::rawptr_buffe
+
+ typedef concurrency::streams::rawptr_buffer<CharType> StreamBufferType;
+
+- std::basic_string<CharType> s;
++ std::basic_string<CharType,typename CanUseStdCharTraits<CharType>::TraitsType> s;
+ s.push_back((CharType)0);
+ s.push_back((CharType)1);
+ s.push_back((CharType)2);
+@@ -198,7 +199,7 @@ void streambuf_putn(concurrency::streams::container_bu
+ typedef concurrency::streams::container_buffer<CollectionType> StreamBufferType;
+ typedef typename concurrency::streams::container_buffer<CollectionType>::char_type CharType;
+
+- std::basic_string<CharType> s;
++ std::basic_string<CharType, typename utility::CanUseStdCharTraits<CharType>::TraitsType> s;
+ s.push_back((CharType)0);
+ s.push_back((CharType)1);
+ s.push_back((CharType)2);
+@@ -553,7 +554,7 @@ void streambuf_putn_getn(StreamBufferType& rwbuf)
+ VERIFY_IS_TRUE(rwbuf.can_read());
+ VERIFY_IS_TRUE(rwbuf.can_write());
+ VERIFY_IS_FALSE(rwbuf.is_eof());
+- std::basic_string<typename StreamBufferType::char_type> s;
++ std::basic_string<typename StreamBufferType::char_type, typename utility::CanUseStdCharTraits<typename StreamBufferType::char_type>::TraitsType> s;
+ s.push_back((typename StreamBufferType::char_type)0);
+ s.push_back((typename StreamBufferType::char_type)1);
+ s.push_back((typename StreamBufferType::char_type)2);
+@@ -684,7 +685,7 @@ void streambuf_close_read_with_pending_read(StreamBuff
+ VERIFY_IS_TRUE(rwbuf.can_write());
+
+ // Write 4 characters
+- std::basic_string<typename StreamBufferType::char_type> s;
++ std::basic_string<typename StreamBufferType::char_type, typename utility::CanUseStdCharTraits<typename StreamBufferType::char_type>::TraitsType> s;
+ s.push_back((typename StreamBufferType::char_type)0);
+ s.push_back((typename StreamBufferType::char_type)1);
+ s.push_back((typename StreamBufferType::char_type)2);
+@@ -726,7 +727,7 @@ void streambuf_close_write_with_pending_read(StreamBuf
+ VERIFY_IS_TRUE(rwbuf.can_write());
+
+ // Write 4 characters
+- std::basic_string<typename StreamBufferType::char_type> s;
++ std::basic_string<typename StreamBufferType::char_type, typename utility::CanUseStdCharTraits<typename StreamBufferType::char_type>::TraitsType> s;
+ s.push_back((typename StreamBufferType::char_type)0);
+ s.push_back((typename StreamBufferType::char_type)1);
+ s.push_back((typename StreamBufferType::char_type)2);
diff --git a/devel/cpprestsdk/files/patch-tests_functional_streams_stdstream__tests.cpp b/devel/cpprestsdk/files/patch-tests_functional_streams_stdstream__tests.cpp
new file mode 100644
index 000000000000..4ec6c6af21de
--- /dev/null
+++ b/devel/cpprestsdk/files/patch-tests_functional_streams_stdstream__tests.cpp
@@ -0,0 +1,30 @@
+--- tests/functional/streams/stdstream_tests.cpp.orig 2023-12-05 04:23:31 UTC
++++ tests/functional/streams/stdstream_tests.cpp
+@@ -13,6 +13,7 @@
+ #include "cpprest/filestream.h"
+ #include "cpprest/producerconsumerstream.h"
+ #include "cpprest/rawptrstream.h"
++#include "cpprest/details/char_traits.h"
+
+ #if (!defined(_WIN32) || !defined(CPPREST_EXCLUDE_WEBSOCKETS)) && !defined(__cplusplus_winrt)
+ #include <boost/interprocess/streams/bufferstream.hpp>
+@@ -303,7 +304,8 @@ SUITE(stdstreambuf_tests)
+
+ const std::streamsize iterations = 100;
+
+- const std::string the_alphabet("abcdefghijklmnopqrstuvwxyz");
++ const char *the_alphabet_characters = "abcdefghijklmnopqrstuvwxyz";
++ const std::basic_string<uint8_t,typename utility::CanUseStdCharTraits<uint8_t>::TraitsType> the_alphabet(reinterpret_cast<const uint8_t *>(the_alphabet_characters));
+
+ auto writer = pplx::create_task([ostream, iterations, the_alphabet]() {
+ auto os = ostream;
+@@ -341,7 +343,8 @@ SUITE(stdstreambuf_tests)
+
+ const std::streamsize iterations = 100;
+
+- const std::string the_alphabet("abcdefghijklmnopqrstuvwxyz");
++ const char *the_alphabet_chars = "abcdefghijklmnopqrstuvwxyz";
++ const std::basic_string<uint8_t,typename CanUseStdCharTraits<uint8_t>::TraitsType> the_alphabet(reinterpret_cast<const uint8_t *>(the_alphabet_chars));
+
+ auto writer = pplx::create_task([ostream, iterations, the_alphabet]() {
+ auto os = ostream;
diff --git a/devel/cpprestsdk/pkg-plist b/devel/cpprestsdk/pkg-plist
index 7a229daaec3f..04a70794fecf 100644
--- a/devel/cpprestsdk/pkg-plist
+++ b/devel/cpprestsdk/pkg-plist
@@ -4,6 +4,7 @@ include/cpprest/base_uri.h
include/cpprest/containerstream.h
include/cpprest/details/SafeInt3.hpp
include/cpprest/details/basic_types.h
+include/cpprest/details/char_traits.h
include/cpprest/details/cpprest_compat.h
include/cpprest/details/fileio.h
include/cpprest/details/http_constants.dat
diff --git a/devel/fatal/Makefile b/devel/fatal/Makefile
index 1a56a4e27e3c..0e28d1c2a62c 100644
--- a/devel/fatal/Makefile
+++ b/devel/fatal/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fatal
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
diff --git a/devel/fatal/distinfo b/devel/fatal/distinfo
index 3d01fcac959b..a9b07441a264 100644
--- a/devel/fatal/distinfo
+++ b/devel/fatal/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053901
-SHA256 (facebook-fatal-v2025.07.07.00_GH0.tar.gz) = 162c738b169a6d2a491ecd87ea54b82ab11357a0ce574def0e7ec28e02cf5b93
-SIZE (facebook-fatal-v2025.07.07.00_GH0.tar.gz) = 657610
+TIMESTAMP = 1753158792
+SHA256 (facebook-fatal-v2025.07.21.00_GH0.tar.gz) = 320904e820ac4bcc9877af63967d606e8cec3bd4b97bf242923040c2b090b1be
+SIZE (facebook-fatal-v2025.07.21.00_GH0.tar.gz) = 657695
diff --git a/devel/fbthrift/Makefile b/devel/fbthrift/Makefile
index 14cd3717cc6d..0e8f2addef37 100644
--- a/devel/fbthrift/Makefile
+++ b/devel/fbthrift/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fbthrift
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
diff --git a/devel/fbthrift/distinfo b/devel/fbthrift/distinfo
index c0c493cc03b6..4b363d27fd82 100644
--- a/devel/fbthrift/distinfo
+++ b/devel/fbthrift/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053897
-SHA256 (facebook-fbthrift-v2025.07.07.00_GH0.tar.gz) = 3f9faa1b15912379740655d082048f2dd78b47a3b4b660bfd162f8965e1a85ea
-SIZE (facebook-fbthrift-v2025.07.07.00_GH0.tar.gz) = 15631909
+TIMESTAMP = 1753158788
+SHA256 (facebook-fbthrift-v2025.07.21.00_GH0.tar.gz) = e5b48881c376829e691ef5e866790cf1875d042a2a8cb81089b7e112c19056c0
+SIZE (facebook-fbthrift-v2025.07.21.00_GH0.tar.gz) = 15699481
diff --git a/devel/fbthrift/pkg-plist b/devel/fbthrift/pkg-plist
index 72ae9571476b..bf41b8322fc1 100644
--- a/devel/fbthrift/pkg-plist
+++ b/devel/fbthrift/pkg-plist
@@ -1,4 +1,3 @@
-bin/ProtocolBench
bin/thrift1
include/thrift/ThriftLibrary.cmake
include/thrift/annotation/bundled_annotations.h
@@ -247,8 +246,8 @@ include/thrift/lib/cpp2/async/RocketClientChannel.h
include/thrift/lib/cpp2/async/RpcOptions.h
include/thrift/lib/cpp2/async/RpcTypes.h
include/thrift/lib/cpp2/async/ServerChannel.h
-include/thrift/lib/cpp2/async/ServerGeneratorStream-inl.h
-include/thrift/lib/cpp2/async/ServerGeneratorStream.h
+include/thrift/lib/cpp2/async/ServerGeneratorStreamBridge-inl.h
+include/thrift/lib/cpp2/async/ServerGeneratorStreamBridge.h
include/thrift/lib/cpp2/async/ServerPublisherStream.h
include/thrift/lib/cpp2/async/ServerRequestData.h
include/thrift/lib/cpp2/async/ServerSinkBridge.h
@@ -269,6 +268,16 @@ include/thrift/lib/cpp2/async/metadata/RequestRpcMetadataAdapter.h
include/thrift/lib/cpp2/async/metadata/RequestRpcMetadataFacade.h
include/thrift/lib/cpp2/async/metadata/TCompactRequestRpcMetadataAdapter.h
include/thrift/lib/cpp2/async/processor/AsyncProcessor.h
+include/thrift/lib/cpp2/async/processor/AsyncProcessorFunc.h
+include/thrift/lib/cpp2/async/processor/EventTask.h
+include/thrift/lib/cpp2/async/processor/GeneratedAsyncProcessorBase.h
+include/thrift/lib/cpp2/async/processor/RequestParams.h
+include/thrift/lib/cpp2/async/processor/RequestTask.h
+include/thrift/lib/cpp2/async/processor/ServerInterface.h
+include/thrift/lib/cpp2/async/processor/ServerRequest.h
+include/thrift/lib/cpp2/async/processor/ServerRequestHelper.h
+include/thrift/lib/cpp2/async/processor/ServerRequestTask.h
+include/thrift/lib/cpp2/async/processor/ServiceHandlerBase.h
include/thrift/lib/cpp2/async/tests/util/TestSinkService.h
include/thrift/lib/cpp2/async/tests/util/TestStreamService.h
include/thrift/lib/cpp2/async/tests/util/Util.h
@@ -392,6 +401,7 @@ include/thrift/lib/cpp2/protocol/LazyDeserializationFlags.h
include/thrift/lib/cpp2/protocol/NativeObject-inl.h
include/thrift/lib/cpp2/protocol/NativeObject.h
include/thrift/lib/cpp2/protocol/Object.h
+include/thrift/lib/cpp2/protocol/Ops.h
include/thrift/lib/cpp2/protocol/Patch.h
include/thrift/lib/cpp2/protocol/Protocol.h
include/thrift/lib/cpp2/protocol/ProtocolReaderStructReadState.h
@@ -528,20 +538,6 @@ include/thrift/lib/cpp2/test/ObjectBenchUtils.h
include/thrift/lib/cpp2/test/ProtoBufStructs-inl.h
include/thrift/lib/cpp2/test/Structs.h
include/thrift/lib/cpp2/test/ThriftStructs-inl.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_clients.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_constants.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_data.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_for_each_field.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_handlers.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_layouts.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_metadata.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_types.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_types.tcc
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_types_custom_protocol.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_types_fwd.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_visit_by_thrift_field_metadata.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_visit_union.h
-include/thrift/lib/cpp2/test/gen-cpp2/ProtocolBenchData_visitation.h
include/thrift/lib/cpp2/test/server/ThriftServerTestUtils.h
include/thrift/lib/cpp2/test/util/FakeClock.h
include/thrift/lib/cpp2/test/util/TestHandler.h
@@ -580,7 +576,6 @@ include/thrift/lib/cpp2/transport/http2/common/testutil/FakeResponseHandler.h
include/thrift/lib/cpp2/transport/http2/server/ThriftRequestHandler.h
include/thrift/lib/cpp2/transport/rocket/ChecksumGenerator.h
include/thrift/lib/cpp2/transport/rocket/FdSocket.h
-include/thrift/lib/cpp2/transport/rocket/PayloadUtils.h
include/thrift/lib/cpp2/transport/rocket/RequestPayload.h
include/thrift/lib/cpp2/transport/rocket/RocketException.h
include/thrift/lib/cpp2/transport/rocket/Types.h
@@ -588,7 +583,11 @@ include/thrift/lib/cpp2/transport/rocket/client/KeepAliveWatcher.h
include/thrift/lib/cpp2/transport/rocket/client/RequestContext.h
include/thrift/lib/cpp2/transport/rocket/client/RequestContextQueue.h
include/thrift/lib/cpp2/transport/rocket/client/RocketClient.h
+include/thrift/lib/cpp2/transport/rocket/client/RocketSinkServerCallback.h
include/thrift/lib/cpp2/transport/rocket/client/RocketStreamServerCallback.h
+include/thrift/lib/cpp2/transport/rocket/client/RocketStreamServerCallbackWithChunkTimeout.h
+include/thrift/lib/cpp2/transport/rocket/client/StreamChannelStatus.h
+include/thrift/lib/cpp2/transport/rocket/client/StreamChannelStatusResponse.h
include/thrift/lib/cpp2/transport/rocket/compression/CompressionAlgorithmSelector.h
include/thrift/lib/cpp2/transport/rocket/compression/CompressionManager.h
include/thrift/lib/cpp2/transport/rocket/compression/CustomCompressor.h
@@ -612,7 +611,6 @@ include/thrift/lib/cpp2/transport/rocket/framing/test/Util.h
include/thrift/lib/cpp2/transport/rocket/payload/ChecksumPayloadSerializerStrategy.h
include/thrift/lib/cpp2/transport/rocket/payload/CustomCompressionPayloadSerializerStrategy.h
include/thrift/lib/cpp2/transport/rocket/payload/DefaultPayloadSerializerStrategy.h
-include/thrift/lib/cpp2/transport/rocket/payload/LegacyPayloadSerializerStrategy.h
include/thrift/lib/cpp2/transport/rocket/payload/PayloadSerializer.h
include/thrift/lib/cpp2/transport/rocket/payload/PayloadSerializerStrategy.h
include/thrift/lib/cpp2/transport/rocket/server/InteractionOverload.h
diff --git a/devel/folly/Makefile b/devel/folly/Makefile
index 5c62acb641ec..be74e7d56a6f 100644
--- a/devel/folly/Makefile
+++ b/devel/folly/Makefile
@@ -1,6 +1,6 @@
PORTNAME= folly
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
diff --git a/devel/folly/distinfo b/devel/folly/distinfo
index 98dc992fe666..fabaaed1844a 100644
--- a/devel/folly/distinfo
+++ b/devel/folly/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053885
-SHA256 (facebook-folly-v2025.07.07.00_GH0.tar.gz) = cdb272fc277a5b0523eb3b1dd11af0d54880ce9ad229e073583d0383373e4819
-SIZE (facebook-folly-v2025.07.07.00_GH0.tar.gz) = 4553953
+TIMESTAMP = 1753158774
+SHA256 (facebook-folly-v2025.07.21.00_GH0.tar.gz) = 9c324cee559c30c727ef26df1a35d0f5ab05445a68bd920ed454900101aa4938
+SIZE (facebook-folly-v2025.07.21.00_GH0.tar.gz) = 4560674
diff --git a/devel/folly/pkg-plist b/devel/folly/pkg-plist
index a268cd6309bc..5a66e6cb6fec 100644
--- a/devel/folly/pkg-plist
+++ b/devel/folly/pkg-plist
@@ -445,7 +445,6 @@ include/folly/executors/thread_factory/ThreadFactory.h
include/folly/experimental/EventCount.h
include/folly/experimental/FlatCombiningPriorityQueue.h
include/folly/experimental/FunctionScheduler.h
-include/folly/experimental/TestUtil.h
include/folly/experimental/ThreadedRepeatingFunctionRunner.h
include/folly/experimental/channels/Channel-fwd.h
include/folly/experimental/channels/Channel-inl.h
diff --git a/devel/gitleaks/Makefile b/devel/gitleaks/Makefile
index 51907eeb2332..eecfaa47518c 100644
--- a/devel/gitleaks/Makefile
+++ b/devel/gitleaks/Makefile
@@ -1,22 +1,23 @@
PORTNAME= gitleaks
DISTVERSIONPREFIX= v
-DISTVERSION= 8.24.0
-PORTREVISION= 3
+DISTVERSION= 8.28.0
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
COMMENT= Tool for detecting hardcoded secrets in git repositories
-WWW= https://github.com/zricethezav/gitleaks
+WWW= https://github.com/gitleaks/gitleaks
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= go:1.23,modules
+USES= go:modules
USE_GITHUB= nodefault
GH_TUPLE= golang:sys:v0.6.0:sys
GO_MODULE= github.com/zricethezav/gitleaks/v8
GO_TARGET= .
+GO_BUILDFLAGS= -ldflags="-X github.com/zricethezav/gitleaks/v8/cmd.Version=${DISTVERSION}"
+
PLIST_FILES= bin/${PORTNAME}
pre-patch:
diff --git a/devel/gitleaks/distinfo b/devel/gitleaks/distinfo
index 2545ba78a46c..131918c1b4a7 100644
--- a/devel/gitleaks/distinfo
+++ b/devel/gitleaks/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1740047392
-SHA256 (go/devel_gitleaks/gitleaks-v8.24.0/v8.24.0.mod) = a12042964fad321bd9e072adac4cde00160034e7863178629e5f61e44053e004
-SIZE (go/devel_gitleaks/gitleaks-v8.24.0/v8.24.0.mod) = 2515
-SHA256 (go/devel_gitleaks/gitleaks-v8.24.0/v8.24.0.zip) = 1ad09db95c72c13f00decbe81eaf2eb776e0d0eba2ec73f5edc5485df4117c5b
-SIZE (go/devel_gitleaks/gitleaks-v8.24.0/v8.24.0.zip) = 395097
-SHA256 (go/devel_gitleaks/gitleaks-v8.24.0/golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54
-SIZE (go/devel_gitleaks/gitleaks-v8.24.0/golang-sys-v0.6.0_GH0.tar.gz) = 1434234
+TIMESTAMP = 1753101875
+SHA256 (go/devel_gitleaks/gitleaks-v8.28.0/v8.28.0.mod) = 45fd7e161fc7b00335210044d6964fa432b6305b564521ac54ae4d61640093e7
+SIZE (go/devel_gitleaks/gitleaks-v8.28.0/v8.28.0.mod) = 3636
+SHA256 (go/devel_gitleaks/gitleaks-v8.28.0/v8.28.0.zip) = 5c3fb83483666522e3ada55995f50c69b0a257d2b6cffa8754171be30b9bec90
+SIZE (go/devel_gitleaks/gitleaks-v8.28.0/v8.28.0.zip) = 493803
+SHA256 (go/devel_gitleaks/gitleaks-v8.28.0/golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54
+SIZE (go/devel_gitleaks/gitleaks-v8.28.0/golang-sys-v0.6.0_GH0.tar.gz) = 1434234
diff --git a/devel/p5-EV/files/patch-libev_ev.c b/devel/p5-EV/files/patch-libev_ev.c
new file mode 100644
index 000000000000..ab255b4ae56d
--- /dev/null
+++ b/devel/p5-EV/files/patch-libev_ev.c
@@ -0,0 +1,14 @@
+--- libev/ev.c.orig 2025-07-21 10:03:33 UTC
++++ libev/ev.c
+@@ -511,7 +511,11 @@
+ #endif
+
+ #if EV_USE_INOTIFY
++# ifdef __FreeBSD__
++# include <sys/mount.h>
++# else
+ # include <sys/statfs.h>
++# endif
+ # include <sys/inotify.h>
+ /* some very old inotify.h headers don't have IN_DONT_FOLLOW */
+ # ifndef IN_DONT_FOLLOW
diff --git a/devel/premake5/Makefile b/devel/premake5/Makefile
index 0b1c074e716f..e339af3fd147 100644
--- a/devel/premake5/Makefile
+++ b/devel/premake5/Makefile
@@ -1,6 +1,6 @@
PORTNAME= premake
DISTVERSIONPREFIX= v
-DISTVERSION= 5.0.0-beta6
+DISTVERSION= 5.0.0-beta7
CATEGORIES= devel
MASTER_SITES= https://github.com/premake/premake-core/releases/download/${DISTVERSIONFULL}/
PKGNAMESUFFIX= 5
@@ -23,6 +23,8 @@ MAKE_ARGS= CC="${CC}" \
CXX="${CXX}"
ALL_TARGET= bsd
+WRKSRC= ${WRKDIR}
+
PLIST_FILES= bin/premake5
do-install:
diff --git a/devel/premake5/distinfo b/devel/premake5/distinfo
index 07b8351ad932..7c5e38462737 100644
--- a/devel/premake5/distinfo
+++ b/devel/premake5/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747687895
-SHA256 (premake-5.0.0-beta6-src.zip) = 8832890451889c7ca9ab62c507d86fc9bfde45094274e5e4f46f82a258b5789b
-SIZE (premake-5.0.0-beta6-src.zip) = 10622489
+TIMESTAMP = 1753007841
+SHA256 (premake-5.0.0-beta7-src.zip) = d39874aed04e317a46bdd281b193fe58c70457cd07bbd50e1bdcb4729c3a4860
+SIZE (premake-5.0.0-beta7-src.zip) = 10926866
diff --git a/devel/premake5/files/patch-src_host_premake.h b/devel/premake5/files/patch-src_host_premake.h
deleted file mode 100644
index e869762d9bf1..000000000000
--- a/devel/premake5/files/patch-src_host_premake.h
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/host/premake.h.orig 2025-03-08 19:35:32 UTC
-+++ src/host/premake.h
-@@ -72,6 +72,10 @@
- #define PLATFORM_ARCHITECTURE "loongarch64"
- #elif defined(__e2k__)
- #define PLATFORM_ARCHITECTURE "e2k"
-+#elif defined(__powerpc64__)
-+#define PLATFORM_ARCHITECTURE "PPC64"
-+#elif defined(__powerpc__)
-+#define PLATFORM_ARCHITECTURE "PPC"
- #elif !defined(RC_INVOKED)
- #error Unknown architecture detected
- #endif
diff --git a/devel/py-clldutils/Makefile b/devel/py-clldutils/Makefile
index f77ae0b91215..1b420981e498 100644
--- a/devel/py-clldutils/Makefile
+++ b/devel/py-clldutils/Makefile
@@ -1,5 +1,6 @@
PORTNAME= clldutils
PORTVERSION= 3.24.2
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +19,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=0:devel/py-attrs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tabulate>=0:devel/py-tabulate@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}colorlog>=0:devel/py-colorlog@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown>=0:textproc/py-markdown@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markupsafe>=0:textproc/py-markupsafe@${PY_FLAVOR}
USES= python
diff --git a/devel/py-grab/Makefile b/devel/py-grab/Makefile
index f36086c99d8c..775b25e842eb 100644
--- a/devel/py-grab/Makefile
+++ b/devel/py-grab/Makefile
@@ -1,6 +1,6 @@
PORTNAME= grab
PORTVERSION= 0.6.41
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= http://grablib.org/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pycurl>0:ftp/py-pycurl@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}weblib>0:devel/py-weblib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}selection>0:devel/py-selection@${PY_FLAVOR} \
diff --git a/devel/py-keystoneauth1/Makefile b/devel/py-keystoneauth1/Makefile
index 18bdc16cd82e..4344908134c1 100644
--- a/devel/py-keystoneauth1/Makefile
+++ b/devel/py-keystoneauth1/Makefile
@@ -1,5 +1,6 @@
PORTNAME= keystoneauth1
PORTVERSION= 5.11.1
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -36,6 +37,6 @@ BETAMAX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}betamax>=0.7.0:www/py-betamax@${PY_F
${PYTHON_PKGNAMEPREFIX}pyyaml>=3.13:devel/py-pyyaml@${PY_FLAVOR}
KERBEROS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests-kerberos>=0.8.0:security/py-requests-kerberos@${PY_FLAVOR}
OAUTH1_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}oauthlib>=0.6.2:security/py-oauthlib@${PY_FLAVOR}
-SAML2_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.2.0:devel/py-lxml@${PY_FLAVOR}
+SAML2_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.2.0:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/devel/py-libtaxii/Makefile b/devel/py-libtaxii/Makefile
index cd1e71a3f9f0..c1e4ffbc5474 100644
--- a/devel/py-libtaxii/Makefile
+++ b/devel/py-libtaxii/Makefile
@@ -1,6 +1,6 @@
PORTNAME= libtaxii
PORTVERSION= 1.1.119
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=2.2.3:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2.3:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-dateutil>=1.4.1:devel/py-python-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.9.0:devel/py-six@${PY_FLAVOR}
diff --git a/devel/py-mypy/Makefile b/devel/py-mypy/Makefile
index b58180f20d61..bf9d2ddb59f6 100644
--- a/devel/py-mypy/Makefile
+++ b/devel/py-mypy/Makefile
@@ -1,5 +1,6 @@
PORTNAME= mypy
PORTVERSION= 1.16.1
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -27,7 +28,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mypy_extensions>=1.0.0:devel/py-mypy_extensi
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=18.0:devel/py-attrs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}filelock>=3.3.0:sysutils/py-filelock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}importlib-metadata>=4.6.1<5.0.0:devel/py-importlib-metadata@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.4.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.4.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psutil>=4.0:sysutils/py-psutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}py>=1.5.2:devel/py-py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest-cov>=2.9.0:devel/py-pytest-cov@${PY_FLAVOR} \
@@ -53,6 +54,6 @@ DMYPY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psutil>=4.0:sysutils/py-psutil@${PY_FL
FASTER_CACHE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}orjson>=0:devel/py-orjson@${PY_FLAVOR}
INSTALL_TYPES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pip>=0:devel/py-pip@${PY_FLAVOR}
MYPYC_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=50:devel/py-setuptools@${PY_FLAVOR}
-REPORTS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+REPORTS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/devel/py-oslo.vmware/Makefile b/devel/py-oslo.vmware/Makefile
index 1360eb9d9d3c..a259856c41b8 100644
--- a/devel/py-oslo.vmware/Makefile
+++ b/devel/py-oslo.vmware/Makefile
@@ -1,5 +1,6 @@
PORTNAME= oslo.vmware
PORTVERSION= 4.5.0
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pbr>=2.0.0:devel/py-pbr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0.7.1:devel/py-defusedxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}eventlet>=0.18.2:net/py-eventlet@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.5.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.5.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>=0.7.18:net/py-netaddr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}oslo.concurrency>=3.26.0:devel/py-oslo.concurrency@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}oslo.context>=2.19.2:devel/py-oslo.context@${PY_FLAVOR} \
diff --git a/devel/py-pymaven-patch/Makefile b/devel/py-pymaven-patch/Makefile
index 023ecd945eda..9fc5fc0d5098 100644
--- a/devel/py-pymaven-patch/Makefile
+++ b/devel/py-pymaven-patch/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pymaven-patch
DISTVERSION= 0.3.2
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}pbr>=1.9:devel/py-pbr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.0.0<5.0.0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.0.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.10<2.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.7.0<3.0.0:www/py-requests@${PY_FLAVOR}
diff --git a/devel/py-pyquery/Makefile b/devel/py-pyquery/Makefile
index 10775c34489d..8f737b2b57b3 100644
--- a/devel/py-pyquery/Makefile
+++ b/devel/py-pyquery/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pyquery
PORTVERSION= 2.0.1
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=1.2.0:www/py-cssselect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.1:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.1:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/devel/py-pytest-pycodestyle/Makefile b/devel/py-pytest-pycodestyle/Makefile
index 24c4f41b5986..30c30793a181 100644
--- a/devel/py-pytest-pycodestyle/Makefile
+++ b/devel/py-pytest-pycodestyle/Makefile
@@ -1,6 +1,5 @@
PORTNAME= pytest-pycodestyle
-DISTVERSION= 2.4.1
-PORTREVISION= 1
+DISTVERSION= 2.5.0
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,17 +12,19 @@ WWW= https://github.com/henry0312/pytest-codestyle
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}py>0:devel/py-py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pycodestyle>0:devel/py-pycodestyle@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest>=7.0:devel/py-pytest@${PY_FLAVOR}
USES= python
-USE_PYTHON= distutils autoplist pytest
+USE_PYTHON= pep517 autoplist pytest
NO_ARCH= yes
TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
-# tests as of 2.4.1: 1 failed, 16 passed in 50.11s, see https://github.com/henry0312/pytest-pycodestyle/issues/114
+# tests as of 2.5.0: 15 passed in 3.82
.include <bsd.port.mk>
diff --git a/devel/py-pytest-pycodestyle/distinfo b/devel/py-pytest-pycodestyle/distinfo
index 38818bbedb2f..2621864f5e14 100644
--- a/devel/py-pytest-pycodestyle/distinfo
+++ b/devel/py-pytest-pycodestyle/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734398730
-SHA256 (pytest_pycodestyle-2.4.1.tar.gz) = 27cfebd52774ad55cceadce959913892b3b0989fc02400ef76a004a8b32ab5c9
-SIZE (pytest_pycodestyle-2.4.1.tar.gz) = 5284
+TIMESTAMP = 1753076632
+SHA256 (pytest_pycodestyle-2.5.0.tar.gz) = dd0060039e12a59b521da8e57e17133c965566dd8d17631e589e7545238829ac
+SIZE (pytest_pycodestyle-2.5.0.tar.gz) = 5859
diff --git a/devel/py-python-xcaplib/Makefile b/devel/py-python-xcaplib/Makefile
index 86e751382a97..795c77bd565a 100644
--- a/devel/py-python-xcaplib/Makefile
+++ b/devel/py-python-xcaplib/Makefile
@@ -1,5 +1,6 @@
PORTNAME= python-xcaplib
PORTVERSION= 1.2.2
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= http://download.ag-projects.com/XCAP/
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +13,7 @@ LICENSE= LGPL20+
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-application>=1.1.5:devel/py-python-application@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}twisted>=0:devel/py-twisted@${PY_FLAVOR}
diff --git a/devel/py-selection/Makefile b/devel/py-selection/Makefile
index 07a5f9f541af..8ed028b529dd 100644
--- a/devel/py-selection/Makefile
+++ b/devel/py-selection/Makefile
@@ -1,5 +1,6 @@
PORTNAME= selection
PORTVERSION= 0.0.21
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyquery>0:devel/py-pyquery@${PY_FLAVOR}
USES= python
diff --git a/devel/py-virtualenv/Makefile b/devel/py-virtualenv/Makefile
index e4c1bd7b7a95..de50094f8a8a 100644
--- a/devel/py-virtualenv/Makefile
+++ b/devel/py-virtualenv/Makefile
@@ -1,5 +1,5 @@
PORTNAME= virtualenv
-PORTVERSION= 20.31.2
+PORTVERSION= 20.32.0
CATEGORIES= devel python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -48,7 +48,6 @@ NO_ARCH= yes
OPTIONS_DEFINE= DOCS
-DOCS_BINARY_ALIAS= towncrier=towncrier-${PYTHON_VER}
DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click-default-group>=1.2.4:devel/py-click-default-group@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}filelock>=3.12.2:sysutils/py-filelock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}furo>=2023.7.26:textproc/py-furo@${PY_FLAVOR} \
@@ -58,6 +57,7 @@ DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click-default-group>=1.2.4:devel/py-c
${PYTHON_PKGNAMEPREFIX}sphinx>=5.3.0:textproc/py-sphinx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinxcontrib-towncrier>=0.3.2a0:textproc/py-sphinxcontrib-towncrier@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}towncrier>=22.12.0:textproc/py-towncrier@${PY_FLAVOR}
+DOCS_BINARY_ALIAS= towncrier=towncrier-${PYTHON_VER}
DOCS_PLIST_FILES= share/man/man1/virtualenv.1.gz
DOCS_PORTDOCS= * .buildinfo
diff --git a/devel/py-virtualenv/distinfo b/devel/py-virtualenv/distinfo
index 56937828d297..985fdfe1bfb6 100644
--- a/devel/py-virtualenv/distinfo
+++ b/devel/py-virtualenv/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747149753
-SHA256 (pypa-virtualenv-20.31.2_GH0.tar.gz) = 8780e4eb18cb1c8dd045ab77f574ed53b64860ee427585e465fa341d1567bed5
-SIZE (pypa-virtualenv-20.31.2_GH0.tar.gz) = 6114045
+TIMESTAMP = 1753176883
+SHA256 (pypa-virtualenv-20.32.0_GH0.tar.gz) = 3353e411d70b0210493a31655660fb3c7297760060d5fdcba924f769371417b6
+SIZE (pypa-virtualenv-20.32.0_GH0.tar.gz) = 6116343
diff --git a/devel/py-weblib/Makefile b/devel/py-weblib/Makefile
index 01b020f42be4..4a713635c261 100644
--- a/devel/py-weblib/Makefile
+++ b/devel/py-weblib/Makefile
@@ -1,6 +1,6 @@
PORTNAME= weblib
PORTVERSION= 0.1.30
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= MIT
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytils>0:russian/py-pytils@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}user_agent>0:www/py-user_agent@${PY_FLAVOR}
USES= python
diff --git a/devel/py-xsdata/Makefile b/devel/py-xsdata/Makefile
index 302e264958bd..faf3fb1c901b 100644
--- a/devel/py-xsdata/Makefile
+++ b/devel/py-xsdata/Makefile
@@ -1,5 +1,6 @@
PORTNAME= xsdata
PORTVERSION= 25.7
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -31,7 +32,7 @@ CLI_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>=5.0:devel/py-click@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}toposort>=1.5:devel/py-toposort@${PY_FLAVOR} \
ruff>=0.9.8:devel/ruff
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.5.0:devel/py-lxml@${PY_FLAVOR}
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.5.0:devel/py-lxml5@${PY_FLAVOR}
SOAP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/devel/rubygem-childprocess-gitlab/Makefile b/devel/rubygem-childprocess-gitlab/Makefile
new file mode 100644
index 000000000000..bc2e1a85f97b
--- /dev/null
+++ b/devel/rubygem-childprocess-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= childprocess
+PORTVERSION= 5.1.0
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= External background process controller
+WWW= https://github.com/enkessler/childprocess
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-logger-gitlab>=1.5<2:devel/rubygem-logger-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-childprocess-gitlab/distinfo b/devel/rubygem-childprocess-gitlab/distinfo
new file mode 100644
index 000000000000..dbdfe472808d
--- /dev/null
+++ b/devel/rubygem-childprocess-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1723201125
+SHA256 (rubygem/childprocess-5.1.0.gem) = 9a8d484be2fd4096a0e90a0cd3e449a05bc3aa33f8ac9e4d6dcef6ac1455b6ec
+SIZE (rubygem/childprocess-5.1.0.gem) = 21504
diff --git a/devel/rubygem-childprocess-gitlab/pkg-descr b/devel/rubygem-childprocess-gitlab/pkg-descr
new file mode 100644
index 000000000000..53c83cbd11a6
--- /dev/null
+++ b/devel/rubygem-childprocess-gitlab/pkg-descr
@@ -0,0 +1,6 @@
+This gem aims at being a simple and reliable solution for controlling
+external programs running in the background on any Ruby / OS
+combination.
+
+The code originated in the selenium-webdriver gem, but should prove
+useful as a standalone library.
diff --git a/devel/rubygem-excon1-gitlab/Makefile b/devel/rubygem-excon1-gitlab/Makefile
new file mode 100644
index 000000000000..62e9b31a7b22
--- /dev/null
+++ b/devel/rubygem-excon1-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= excon
+PORTVERSION= 1.2.7
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= 1-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Extended http(s) Connections Library
+WWW= https://github.com/excon/excon
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.md
+
+RUN_DEPENDS= rubygem-logger-gitlab>=0:devel/rubygem-logger-gitlab
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= excon_project
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-excon1-gitlab/distinfo b/devel/rubygem-excon1-gitlab/distinfo
new file mode 100644
index 000000000000..e7e385890580
--- /dev/null
+++ b/devel/rubygem-excon1-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1748495937
+SHA256 (rubygem/excon-1.2.7.gem) = 3b3917dbdf0c65b8d872039fe2b37bf423da2f245ef05b0af07423027c4cfde5
+SIZE (rubygem/excon-1.2.7.gem) = 171008
diff --git a/devel/rubygem-excon1-gitlab/pkg-descr b/devel/rubygem-excon1-gitlab/pkg-descr
new file mode 100644
index 000000000000..0431de530c06
--- /dev/null
+++ b/devel/rubygem-excon1-gitlab/pkg-descr
@@ -0,0 +1 @@
+EXtended http(s) CONnections Library
diff --git a/dns/dnsrecon/Makefile b/dns/dnsrecon/Makefile
index 58d49367aed5..1384a4850f54 100644
--- a/dns/dnsrecon/Makefile
+++ b/dns/dnsrecon/Makefile
@@ -1,6 +1,6 @@
PORTNAME= dnsrecon
DISTVERSION= 0.10.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= dns
MAINTAINER= rihaz.jerrin@gmail.com
@@ -10,7 +10,7 @@ WWW= https://github.com/darkoperator/dnsrecon
LICENSE= GPLv2
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dnspython>=0:dns/py-dnspython@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>=0:net/py-netaddr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>=0:databases/py-sqlite3@${PY_FLAVOR}
diff --git a/editors/libreoffice/Makefile b/editors/libreoffice/Makefile
index 0638b1c7981b..48b77bebd0b8 100644
--- a/editors/libreoffice/Makefile
+++ b/editors/libreoffice/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 1
+PORTREVISION= 2
.include "${.CURDIR}/Makefile.common"
@@ -28,7 +28,7 @@ BUILD_DEPENDS= p5-Archive-Zip>=0:archivers/p5-Archive-Zip \
${LOCALBASE}/include/glm/glm.hpp:math/glm \
bash:shells/bash \
gsed:textproc/gsed \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
coreutils>=8.23:sysutils/coreutils \
flex>=0.26:textproc/flex
LIB_DEPENDS= libapr-1.so:devel/apr1 \
diff --git a/editors/novelwriter/Makefile b/editors/novelwriter/Makefile
index 0993e2bad552..ca3c1e211299 100644
--- a/editors/novelwriter/Makefile
+++ b/editors/novelwriter/Makefile
@@ -1,6 +1,7 @@
PORTNAME= novelwriter
DISTVERSIONPREFIX= v
DISTVERSION= 2.7.2
+PORTREVISION= 1
CATEGORIES= editors python
MASTER_SITES= PYPI
@@ -11,7 +12,7 @@ WWW= https://novelwriter.io/ \
LICENSE= GPLv3
-PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}enchant>=3.0.0:textproc/py-enchant@${PY_FLAVOR}
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PY_DEPENDS} \
diff --git a/editors/rehex/Makefile b/editors/rehex/Makefile
index 3fa55e2fc94c..f9e2b9a8f204 100644
--- a/editors/rehex/Makefile
+++ b/editors/rehex/Makefile
@@ -1,6 +1,5 @@
PORTNAME= rehex
-DISTVERSION= 0.63.0
-PORTREVISION= 2
+DISTVERSION= 0.63.2
CATEGORIES= editors
MAINTAINER= fuz@FreeBSD.org
diff --git a/editors/rehex/distinfo b/editors/rehex/distinfo
index f39d4f2f88f1..a43df9ec609d 100644
--- a/editors/rehex/distinfo
+++ b/editors/rehex/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749814482
-SHA256 (solemnwarning-rehex-0.63.0_GH0.tar.gz) = 3662af7f57245382be02215f3fe654b62bcb55f529078f33062521700c24225b
-SIZE (solemnwarning-rehex-0.63.0_GH0.tar.gz) = 5019507
+TIMESTAMP = 1752691830
+SHA256 (solemnwarning-rehex-0.63.2_GH0.tar.gz) = 37dea3383eeae8ff993653960a5e23da101aadd829951dcb5dbebee131843ea5
+SIZE (solemnwarning-rehex-0.63.2_GH0.tar.gz) = 5030730
diff --git a/editors/rehex/pkg-plist b/editors/rehex/pkg-plist
index dbca3d715260..f6478dea55d9 100644
--- a/editors/rehex/pkg-plist
+++ b/editors/rehex/pkg-plist
@@ -14,6 +14,7 @@ lib/rehex/binary-template/lulpeg/lulpeg.lua
lib/rehex/binary-template/parser.lua
lib/rehex/binary-template/plugin.lua
lib/rehex/binary-template/preprocessor.lua
+lib/rehex/binary-template/stable_sort.lua
lib/rehex/binary-template/templates/riff.bt
lib/rehex/exe/bitops52.lua
lib/rehex/exe/class.lua
diff --git a/emulators/ppsspp/Makefile b/emulators/ppsspp/Makefile
index b4210cb7b275..18747dd52b1d 100644
--- a/emulators/ppsspp/Makefile
+++ b/emulators/ppsspp/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ppsspp
DISTVERSIONPREFIX= v
-DISTVERSION?= 1.19.2
+DISTVERSION?= 1.19.3
CATEGORIES= emulators
MAINTAINER= kreinholz@gmail.com
@@ -29,16 +29,17 @@ USES= cmake compiler:c++11-lib gl localbase:ldflags pkgconfig \
desktop-file-utils
USE_GITHUB= yes
GH_ACCOUNT= hrydgard
-GH_TUPLE?= hrydgard:glslang:8.13.3743-948-g50e0708:glslang/ext/glslang \
- google:cpu_features:v0.8.0-27-gfd4ffc1:cpu_features/ext/cpu_features \
+GH_TUPLE?= Kingcom:armips:v0.11.0-195-ga8d71f0:armips/ext/armips \
+ hrydgard:glslang:2.3-3991-g50e0708e:glslang/ext/glslang \
+ KhronosGroup:SPIRV-Cross:4212eef67ed0ca048cb726a6767185504e7695e5:SPIRVCross/ext/SPIRV-Cross \
+ Tencent:rapidjson:73063f5002612c6bf64fe24f851cd5cc0d83eef9:rapidjson/ext/rapidjson \
+ unknownbrackets:ppsspp-debugger:9776332f720c854ef26f325a0cf9e32c02115a9c:ppssppdebugger/assets/debugger \
+ google:cpu_features:v0.4.1-211-gfd4ffc1:cpu_features/ext/cpu_features \
+ RetroAchievements:rcheevos:v11.6.0-61-gef0e22b:rcheevos/ext/rcheevos \
rtissera:libchdr:26d27ca:libchdr/ext/libchdr \
- unknownbrackets:ppsspp-debugger:d358a87:debugger/assets/debugger \
- KhronosGroup:SPIRV-Cross:sdk-1.3.239.0:SPIRV/ext/SPIRV-Cross \
- Kingcom:armips:v0.11.0-195-ga8d71f0:armips/ext/armips \
- Kingcom:filesystem:v1.3.2-12-g3f1c185:filesystem/ext/armips/ext/filesystem \
- RetroAchievements:rcheevos:v11.6.0-gef0e22b:rcheevos/ext/rcheevos \
- Tencent:rapidjson:v1.1.0-415-g73063f5:rapidjson/ext/rapidjson \
- hrydgard:ppsspp-lua:7648485:lua/ext/lua
+ hrydgard:ppsspp-lua:7648485f14e8e5ee45e8e39b1eb4d3206dbd405a:ppsspplua/ext/lua \
+ Kingcom:filesystem:v1.1.2-171-g3f1c185:filesystem/ext/armips/ext/filesystem
+
EXCLUDE= libzip zlib
USE_GL= glew opengl
CMAKE_ON= ${LIBZIP MINIUPNPC SNAPPY ZSTD:L:S/^/USE_SYSTEM_/} USE_VULKAN_DISPLAY_KHR
diff --git a/emulators/ppsspp/distinfo b/emulators/ppsspp/distinfo
index 5588a603ebe1..bfe6f531f0ef 100644
--- a/emulators/ppsspp/distinfo
+++ b/emulators/ppsspp/distinfo
@@ -1,23 +1,23 @@
-TIMESTAMP = 1750002545
-SHA256 (hrydgard-ppsspp-v1.19.2_GH0.tar.gz) = 4b3abbdc2f76daad5d038c0676ab0ec91a4588a30a894e6604b76a061d683583
-SIZE (hrydgard-ppsspp-v1.19.2_GH0.tar.gz) = 38797975
-SHA256 (hrydgard-glslang-8.13.3743-948-g50e0708_GH0.tar.gz) = c5d7837395b5c076371d74d9d8adf0d0408c002f2e4fe08bc3eef1db6f608ceb
-SIZE (hrydgard-glslang-8.13.3743-948-g50e0708_GH0.tar.gz) = 3689922
-SHA256 (google-cpu_features-v0.8.0-27-gfd4ffc1_GH0.tar.gz) = 0bcb1a537b8fc184b9df9ddde9d15868efe7f651139ea84d3e20ac9900a43c60
-SIZE (google-cpu_features-v0.8.0-27-gfd4ffc1_GH0.tar.gz) = 109044
-SHA256 (rtissera-libchdr-26d27ca_GH0.tar.gz) = 49e028fadd0640926da158408c9eafb22fc89ccb0de69c67b167ef0a11f6a0c5
-SIZE (rtissera-libchdr-26d27ca_GH0.tar.gz) = 4274377
-SHA256 (unknownbrackets-ppsspp-debugger-d358a87_GH0.tar.gz) = 468ec2ca27aefa81657bc679c0983dbbd693b99e8b803a465bb42cd8e2993cb2
-SIZE (unknownbrackets-ppsspp-debugger-d358a87_GH0.tar.gz) = 815889
-SHA256 (KhronosGroup-SPIRV-Cross-sdk-1.3.239.0_GH0.tar.gz) = a1695022880e7ef3c2d407647f79876045dc2a3ed012753adc71ead5cc5178ba
-SIZE (KhronosGroup-SPIRV-Cross-sdk-1.3.239.0_GH0.tar.gz) = 1707048
+TIMESTAMP = 1752627057
+SHA256 (hrydgard-ppsspp-v1.19.3_GH0.tar.gz) = 2e02c3e0a7f5a2311f6e37f3e2fc9760d14eb7af5051bc251f168505f1ca9ad8
+SIZE (hrydgard-ppsspp-v1.19.3_GH0.tar.gz) = 38805948
SHA256 (Kingcom-armips-v0.11.0-195-ga8d71f0_GH0.tar.gz) = 8a46d92b070de90cefcd89c2894344d040481e1cf6216b31f4a5e531254fed88
SIZE (Kingcom-armips-v0.11.0-195-ga8d71f0_GH0.tar.gz) = 223306
-SHA256 (Kingcom-filesystem-v1.3.2-12-g3f1c185_GH0.tar.gz) = 9fa5a690e341bea1935a7f6b256e1bbd864abee988f834f10307f646dc38e604
-SIZE (Kingcom-filesystem-v1.3.2-12-g3f1c185_GH0.tar.gz) = 163401
-SHA256 (RetroAchievements-rcheevos-v11.6.0-gef0e22b_GH0.tar.gz) = 5d424b58ae280f56ee04a846d7f5e90e289f747e9ae4ac2d29e46761133d009e
-SIZE (RetroAchievements-rcheevos-v11.6.0-gef0e22b_GH0.tar.gz) = 417751
-SHA256 (Tencent-rapidjson-v1.1.0-415-g73063f5_GH0.tar.gz) = bfc1c1d5fbd9dbc78600798d8a8bfcb93f9d308d55564e012b64e8ca272ecea4
-SIZE (Tencent-rapidjson-v1.1.0-415-g73063f5_GH0.tar.gz) = 1054127
-SHA256 (hrydgard-ppsspp-lua-7648485_GH0.tar.gz) = e7dba820ddd788976810b4f21d1c4781a617e66c7bd67ee71acedd5d60db608e
-SIZE (hrydgard-ppsspp-lua-7648485_GH0.tar.gz) = 239547
+SHA256 (hrydgard-glslang-2.3-3991-g50e0708e_GH0.tar.gz) = 720e01f16e5ee2f7ada49ba0464232380bf71339c836cc4fabbabef2a741818b
+SIZE (hrydgard-glslang-2.3-3991-g50e0708e_GH0.tar.gz) = 3689100
+SHA256 (KhronosGroup-SPIRV-Cross-4212eef67ed0ca048cb726a6767185504e7695e5_GH0.tar.gz) = a7adf77b5680795302aee160309c6cb81b0da341d92bd7face01f9a156b65aeb
+SIZE (KhronosGroup-SPIRV-Cross-4212eef67ed0ca048cb726a6767185504e7695e5_GH0.tar.gz) = 1703767
+SHA256 (Tencent-rapidjson-73063f5002612c6bf64fe24f851cd5cc0d83eef9_GH0.tar.gz) = 896eb817fb2bc62a0a84ca65fac3e3c385b410e6dbf70d69c411e25776663e39
+SIZE (Tencent-rapidjson-73063f5002612c6bf64fe24f851cd5cc0d83eef9_GH0.tar.gz) = 1054419
+SHA256 (unknownbrackets-ppsspp-debugger-9776332f720c854ef26f325a0cf9e32c02115a9c_GH0.tar.gz) = 495db15fa9716d78c4958004df5a1487a94155694cceabd61fb40a2d0090fea3
+SIZE (unknownbrackets-ppsspp-debugger-9776332f720c854ef26f325a0cf9e32c02115a9c_GH0.tar.gz) = 810347
+SHA256 (google-cpu_features-v0.4.1-211-gfd4ffc1_GH0.tar.gz) = 20115fd59cf2db71594d71acf3dacfdaf6c1bdf54c1656f781fce4844a803e08
+SIZE (google-cpu_features-v0.4.1-211-gfd4ffc1_GH0.tar.gz) = 109042
+SHA256 (RetroAchievements-rcheevos-v11.6.0-61-gef0e22b_GH0.tar.gz) = 11c12a5ce2e61917edbd4634fc0623528267c51dae2303bfc55cbbb7ee7299fa
+SIZE (RetroAchievements-rcheevos-v11.6.0-61-gef0e22b_GH0.tar.gz) = 417819
+SHA256 (rtissera-libchdr-26d27ca_GH0.tar.gz) = 49e028fadd0640926da158408c9eafb22fc89ccb0de69c67b167ef0a11f6a0c5
+SIZE (rtissera-libchdr-26d27ca_GH0.tar.gz) = 4274377
+SHA256 (hrydgard-ppsspp-lua-7648485f14e8e5ee45e8e39b1eb4d3206dbd405a_GH0.tar.gz) = ee31027159979d7be564e19710e10339179992f6d663d38337e78340dd31987b
+SIZE (hrydgard-ppsspp-lua-7648485f14e8e5ee45e8e39b1eb4d3206dbd405a_GH0.tar.gz) = 239843
+SHA256 (Kingcom-filesystem-v1.1.2-171-g3f1c185_GH0.tar.gz) = 9f3866efc8b8b29cd9ff51c0cce8a281ff88cd34694d8da0d064cb82d95b8b71
+SIZE (Kingcom-filesystem-v1.1.2-171-g3f1c185_GH0.tar.gz) = 163405
diff --git a/emulators/ppsspp/files/patch-Common_GPU_Vulkan_VulkanContext.cpp b/emulators/ppsspp/files/patch-Common_GPU_Vulkan_VulkanContext.cpp
deleted file mode 100644
index 4ecc5e23175e..000000000000
--- a/emulators/ppsspp/files/patch-Common_GPU_Vulkan_VulkanContext.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- Common/GPU/Vulkan/VulkanContext.cpp.orig 2025-06-11 21:04:20 UTC
-+++ Common/GPU/Vulkan/VulkanContext.cpp
-@@ -119,7 +119,7 @@ VkResult VulkanContext::CreateInstance(const CreateInf
- if (vkEnumerateInstanceVersion) {
- vkEnumerateInstanceVersion(&vulkanInstanceApiVersion_);
- vulkanInstanceApiVersion_ &= 0xFFFFF000; // Remove patch version.
-- vulkanInstanceApiVersion_ = std::min(VK_API_VERSION_1_4, vulkanInstanceApiVersion_);
-+ vulkanInstanceApiVersion_ = std::min(VK_API_VERSION_1_3, vulkanInstanceApiVersion_);
- std::string versionString = FormatAPIVersion(vulkanInstanceApiVersion_);
- INFO_LOG(Log::G3D, "Detected Vulkan API version: %s", versionString.c_str());
- }
diff --git a/finance/py-ebaysdk/Makefile b/finance/py-ebaysdk/Makefile
index 8fdc34493e16..fe938f59c0c7 100644
--- a/finance/py-ebaysdk/Makefile
+++ b/finance/py-ebaysdk/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ebaysdk
PORTVERSION= 2.2.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= finance python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://github.com/timotheus/ebaysdk-python
LICENSE= CDDL
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist distutils
diff --git a/finance/py-investpy/Makefile b/finance/py-investpy/Makefile
index 07af3d0c4d58..9d4ec58b8ede 100644
--- a/finance/py-investpy/Makefile
+++ b/finance/py-investpy/Makefile
@@ -1,6 +1,6 @@
PORTNAME= investpy
PORTVERSION= 1.0.8
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= finance python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://investpy.readthedocs.io/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}pandas>=0.25.1:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>=2019.3:devel/py-pytz@${PY_FLAVOR} \
diff --git a/finance/py-pytrends/Makefile b/finance/py-pytrends/Makefile
index 5e1fdbb7b461..0c76880efb9c 100644
--- a/finance/py-pytrends/Makefile
+++ b/finance/py-pytrends/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pytrends
DISTVERSION= 4.9.2
+PORTREVISION= 1
CATEGORIES= finance python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +16,7 @@ BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>=2.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>=0.25:math/py-pandas@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= pep517 autoplist pytest # many tests fail, see https://github.com/GeneralMills/pytrends/issues/608
diff --git a/games/anki/Makefile b/games/anki/Makefile
index 2315dfac950f..eb69bedd23dd 100644
--- a/games/anki/Makefile
+++ b/games/anki/Makefile
@@ -1,5 +1,5 @@
PORTNAME= anki
-DISTVERSION= 25.07.2
+DISTVERSION= 25.07.3
# Don't forget to update ${_MY_BUILDHASH} if DISTVERSION changes
CATEGORIES= games education python
MASTER_SITES= LOCAL/kai/:yarncache
@@ -48,8 +48,8 @@ USES= cargo desktop-file-utils ninja nodejs:build pyqt:6 python \
USE_GITHUB= yes
GH_ACCOUNT= ankitects
# Translation files
-GH_TUPLE= ankitects:anki-core-i18n:a921649:ftlrslib \
- ankitects:anki-desktop-ftl:a1134ab:ftlextra
+GH_TUPLE= ankitects:anki-core-i18n:c0894bb:ftlrslib \
+ ankitects:anki-desktop-ftl:bc2da83:ftlextra
USE_PYQT= pyqt6 sip:build webengine
@@ -92,7 +92,7 @@ MPV_RUN_DEPENDS= mpv:multimedia/mpv
# Should contain the most recent commit that reflects ${DISTVERSION} and must
# be exactly 8 digits otherwise the check for newer versions won't work as
# expected.
-_MY_BUILDHASH= 3adcf05c
+_MY_BUILDHASH= 65b5aefd
# Remove ${CARGO_BUILD_TARGET} from ${CARGO_ENV} to avoid problems with
# hardcoded paths as the "runner" build system expects its components
# in ${WRKSRC}/out/rust/debug
diff --git a/games/anki/distinfo b/games/anki/distinfo
index 1b799c675c24..cd8edb196cfa 100644
--- a/games/anki/distinfo
+++ b/games/anki/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1751950538
-SHA256 (anki-yarn-cache-25.07.2.tar.gz) = e335ba5580efaa1fba43a353109b91d22082cd73423c05e7dcbf5bf664fd78db
-SIZE (anki-yarn-cache-25.07.2.tar.gz) = 527169863
+TIMESTAMP = 1753093518
+SHA256 (anki-yarn-cache-25.07.3.tar.gz) = fdd953506d2d6ecc898e882f3b2d22cce035fd40d5e62a5a203461c49ebc4332
+SIZE (anki-yarn-cache-25.07.3.tar.gz) = 527777067
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
@@ -1513,9 +1513,9 @@ SHA256 (ankitects-rust-url-bb930b8d089f4d30d7d19c12e54e66191de47b88_GH0.tar.gz)
SIZE (ankitects-rust-url-bb930b8d089f4d30d7d19c12e54e66191de47b88_GH0.tar.gz) = 394844
SHA256 (ankitects-linkcheck-184b2ca50ed39ca43da13f0b830a463861adb9ca_GH0.tar.gz) = 58ac773ba2e7c76a9ec3f59ee9571576d76e74d58c4974a1d606d6976e1be70e
SIZE (ankitects-linkcheck-184b2ca50ed39ca43da13f0b830a463861adb9ca_GH0.tar.gz) = 19408
-SHA256 (ankitects-anki-25.07.2_GH0.tar.gz) = 9cffb53ef99fb3929f1f359cc626de09222e76f4c0f612d7f3e037f63697cf9f
-SIZE (ankitects-anki-25.07.2_GH0.tar.gz) = 2508070
-SHA256 (ankitects-anki-core-i18n-a921649_GH0.tar.gz) = d7dfbac8bd30da3f7fc9fb56ae10c336b0b17fda419b02dbe4b03129cb2abad7
-SIZE (ankitects-anki-core-i18n-a921649_GH0.tar.gz) = 1663036
-SHA256 (ankitects-anki-desktop-ftl-a1134ab_GH0.tar.gz) = 3952cd641071acf0ab216369d2303f40ae8609078066705d97b6734aa87f2ee8
-SIZE (ankitects-anki-desktop-ftl-a1134ab_GH0.tar.gz) = 248236
+SHA256 (ankitects-anki-25.07.3_GH0.tar.gz) = 1a6062c1923ece79d7294fab884effc49ce9c03c55ece8a04207d4abba6f4df2
+SIZE (ankitects-anki-25.07.3_GH0.tar.gz) = 2511739
+SHA256 (ankitects-anki-core-i18n-c0894bb_GH0.tar.gz) = 1d5018398ac7da7f0124388630176b4e3110a578150dadd40e184e5d8e64e683
+SIZE (ankitects-anki-core-i18n-c0894bb_GH0.tar.gz) = 1693023
+SHA256 (ankitects-anki-desktop-ftl-bc2da83_GH0.tar.gz) = c561a0def2f170093c0cdf419a1429221cf1b531f1c6a603cf2be8c14e55a67f
+SIZE (ankitects-anki-desktop-ftl-bc2da83_GH0.tar.gz) = 250840
diff --git a/games/anki/files/patch-qt_pyproject.toml b/games/anki/files/patch-qt_pyproject.toml
index 230d2f62b318..3d01e0db6a51 100644
--- a/games/anki/files/patch-qt_pyproject.toml
+++ b/games/anki/files/patch-qt_pyproject.toml
@@ -1,15 +1,15 @@
Relax version requirements for several PyQt6 components.
---- qt/pyproject.toml.orig 2025-07-05 14:16:12 UTC
+--- qt/pyproject.toml.orig 2025-07-18 17:56:16 UTC
+++ qt/pyproject.toml
-@@ -45,11 +45,11 @@ qt = [
+@@ -38,11 +38,11 @@ qt = [
"pyqt6_sip==13.10.2",
]
qt = [
-- "pyqt6==6.8.0",
-- "pyqt6-qt6==6.8.1",
+- "pyqt6==6.9.1",
+- "pyqt6-qt6==6.9.1",
- "pyqt6-webengine==6.8.0",
-- "pyqt6-webengine-qt6==6.8.1",
+- "pyqt6-webengine-qt6==6.8.2",
- "pyqt6_sip==13.10.2",
+ "pyqt6",
+ "pyqt6-qt6",
@@ -17,5 +17,5 @@ Relax version requirements for several PyQt6 components.
+ "pyqt6-webengine-qt6",
+ "pyqt6_sip",
]
-
- [tool.uv]
+ qt68 = [
+ "pyqt6==6.8.0",
diff --git a/games/freeciv/Makefile b/games/freeciv/Makefile
index f6319a2e15c9..fbe53c15890b 100644
--- a/games/freeciv/Makefile
+++ b/games/freeciv/Makefile
@@ -1,5 +1,5 @@
PORTNAME= freeciv
-PORTVERSION= 3.1.5
+PORTVERSION= 3.2.0
PORTREVISION?= 0
CATEGORIES= games
MASTER_SITES= SF/freeciv/Freeciv%20${PORTVERSION:R}/${PORTVERSION} \
@@ -47,24 +47,21 @@ LDFLAGS+= -Wl,--as-needed ${ICONV_LIB}
PORTDATA= *
OPTIONS_DEFINE= DOCS IPV6 NLS
-OPTIONS_DEFAULT= QT SQLITE3
+OPTIONS_DEFAULT= QT6 SQLITE3
OPTIONS_MULTI= DB UI
OPTIONS_MULTI_DB= MYSQL PGSQL SQLITE3
-OPTIONS_MULTI_UI= GTK3 GTK4 QT SDL
+OPTIONS_MULTI_UI= GTK3 GTK4 QT6 SDL
OPTIONS_SUB= yes
DB_DESC= Database support
UI_DESC= GUI clients
-QT_DESC= QT GUI clients
GTK3_USES= gnome sdl
GTK3_USE= GNOME=cairo,gdkpixbuf,glib20,gtk30,pango \
SDL=mixer2
-GTK3_VARS= _FREECIV_CLIENT+=gtk3 \
- _FREECIV_CLIENT+=gtk3.22 \
+GTK3_VARS= _FREECIV_CLIENT+=gtk3.22 \
_FREECIV_MP+=gtk3
-GTK4_IMPLIES= GTK3
GTK4_USES= gnome sdl
GTK4_USE= GNOME=cairo,gdkpixbuf,glib20,gtk40,pango \
SDL=mixer2
@@ -84,15 +81,15 @@ PGSQL_USES= pgsql
PGSQL_CONFIGURE_ON= --with-postgres-prefix=${LOCALBASE}
PGSQL_VARS= _FREECIV_DB+=postgres
-QT_USES= qt:6 sdl
-QT_USE= QT=base,tools:build \
+QT6_USES= qt:6 sdl
+QT6_USE= QT=base,tools:build \
SDL=mixer2
-QT_CONFIGURE_ON= --with-qt6=yes \
+QT6_CONFIGURE_ON= --with-qt6=yes \
--with-qt6-includes=${LOCALBASE}/${QT_INCDIR_REL} \
--with-qt6-libs=${LOCALBASE}/${QT_LIBDIR_REL}
-QT_CONFIGURE_ENV= MOCCMD=${MOC}
-QT_CONFIGURE_ENABLE= ruledit
-QT_VARS= _FREECIV_CLIENT+=qt \
+QT6_CONFIGURE_ENV= MOCCMD=${MOC}
+QT6_CONFIGURE_ENABLE= ruledit
+QT6_VARS= _FREECIV_CLIENT+=qt \
_FREECIV_MP+=qt
SDL_USES= sdl
diff --git a/games/freeciv/distinfo b/games/freeciv/distinfo
index 6cb803f16ac7..8cbee6d4edd8 100644
--- a/games/freeciv/distinfo
+++ b/games/freeciv/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747411889
-SHA256 (freeciv-3.1.5.tar.xz) = 0d9f687ff950a77a9fa0af66108a7f67da717fd40c3a0ca4c0a4f4a3f0214b33
-SIZE (freeciv-3.1.5.tar.xz) = 46870140
+TIMESTAMP = 1753102926
+SHA256 (freeciv-3.2.0.tar.xz) = 828e831b672a46b316f6fdb23e670230b2ec9c05b6fe8c66fc9f7e1c0679fcde
+SIZE (freeciv-3.2.0.tar.xz) = 58150968
diff --git a/games/freeciv/pkg-plist b/games/freeciv/pkg-plist
index 7357e7ad349e..5de335a53263 100644
--- a/games/freeciv/pkg-plist
+++ b/games/freeciv/pkg-plist
@@ -1,14 +1,13 @@
%%CLIENT%%bin/freeciv-manual
-%%GTK3%%bin/freeciv-gtk3
%%GTK3%%bin/freeciv-gtk3.22
%%GTK4%%bin/freeciv-gtk4
bin/freeciv-mp-cli
%%GTK3%%bin/freeciv-mp-gtk3
%%GTK4%%bin/freeciv-mp-gtk4
-%%QT%%bin/freeciv-mp-qt
-%%QT%%bin/freeciv-qt
-%%QT%%bin/freeciv-ruledit
-%%QT%%bin/freeciv-ruleup
+%%QT6%%bin/freeciv-mp-qt
+%%QT6%%bin/freeciv-qt
+%%QT6%%bin/freeciv-ruledit
+%%QT6%%bin/freeciv-ruleup
%%SDL%%bin/freeciv-sdl2
bin/freeciv-server
%%ETCDIR%%/database.lua
@@ -18,14 +17,13 @@ lib/libfreeciv-srv.so.0.0.0
lib/libfreeciv.so
lib/libfreeciv.so.0
lib/libfreeciv.so.0.0.0
-%%GTK3%%share/applications/org.freeciv.gtk3.desktop
%%GTK3%%share/applications/org.freeciv.gtk322.desktop
%%GTK3%%share/applications/org.freeciv.gtk3.mp.desktop
%%GTK4%%share/applications/org.freeciv.gtk4.desktop
%%GTK4%%share/applications/org.freeciv.gtk4.mp.desktop
-%%QT%%share/applications/org.freeciv.qt.desktop
-%%QT%%share/applications/org.freeciv.qt.mp.desktop
-%%QT%%share/applications/org.freeciv.ruledit.desktop
+%%QT6%%share/applications/org.freeciv.qt.desktop
+%%QT6%%share/applications/org.freeciv.qt.mp.desktop
+%%QT6%%share/applications/org.freeciv.ruledit.desktop
%%SDL%%share/applications/org.freeciv.sdl2.desktop
share/applications/org.freeciv.server.desktop
%%PORTDOCS%%%%DOCSDIR%%/ABOUT-NLS
@@ -42,7 +40,7 @@ share/applications/org.freeciv.server.desktop
%%PORTDOCS%%%%DOCSDIR%%/INSTALL.Cygwin
%%PORTDOCS%%%%DOCSDIR%%/INSTALL.meson
%%PORTDOCS%%%%DOCSDIR%%/NEWS
-%%PORTDOCS%%%%DOCSDIR%%/NEWS-3.1
+%%PORTDOCS%%%%DOCSDIR%%/NEWS-3.2
%%PORTDOCS%%%%DOCSDIR%%/README.AI
%%PORTDOCS%%%%DOCSDIR%%/README.AI_modules
%%PORTDOCS%%%%DOCSDIR%%/README.achievements
@@ -68,169 +66,169 @@ share/applications/org.freeciv.server.desktop
%%PORTDOCS%%%%DOCSDIR%%/doxygen.md
%%CLIENT%%share/icons/hicolor/128x128/apps/freeciv-client.png
%%CLIENT%%share/icons/hicolor/128x128/apps/freeciv-modpack.png
-%%QT%%share/icons/hicolor/128x128/apps/freeciv-ruledit.png
+%%QT6%%share/icons/hicolor/128x128/apps/freeciv-ruledit.png
share/icons/hicolor/128x128/apps/freeciv-server.png
%%CLIENT%%share/icons/hicolor/16x16/apps/freeciv-client.png
%%CLIENT%%share/icons/hicolor/16x16/apps/freeciv-modpack.png
-%%QT%%share/icons/hicolor/16x16/apps/freeciv-ruledit.png
+%%QT6%%share/icons/hicolor/16x16/apps/freeciv-ruledit.png
share/icons/hicolor/16x16/apps/freeciv-server.png
%%CLIENT%%share/icons/hicolor/32x32/apps/freeciv-client.png
%%CLIENT%%share/icons/hicolor/32x32/apps/freeciv-modpack.png
-%%QT%%share/icons/hicolor/32x32/apps/freeciv-ruledit.png
+%%QT6%%share/icons/hicolor/32x32/apps/freeciv-ruledit.png
share/icons/hicolor/32x32/apps/freeciv-server.png
%%CLIENT%%share/icons/hicolor/48x48/apps/freeciv-client.png
%%CLIENT%%share/icons/hicolor/48x48/apps/freeciv-modpack.png
-%%QT%%share/icons/hicolor/48x48/apps/freeciv-ruledit.png
+%%QT6%%share/icons/hicolor/48x48/apps/freeciv-ruledit.png
share/icons/hicolor/48x48/apps/freeciv-server.png
%%CLIENT%%share/icons/hicolor/64x64/apps/freeciv-client.png
%%CLIENT%%share/icons/hicolor/64x64/apps/freeciv-modpack.png
-%%QT%%share/icons/hicolor/64x64/apps/freeciv-ruledit.png
+%%QT6%%share/icons/hicolor/64x64/apps/freeciv-ruledit.png
share/icons/hicolor/64x64/apps/freeciv-server.png
%%NLS%%share/locale/ar/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ar/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ar/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ar/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/bg/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/bg/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/bg/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/bg/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ca/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ca/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ca/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ca/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/cs/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/cs/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/cs/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/cs/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/da/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/da/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/da/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/da/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/de/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/de/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/de/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/de/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/el/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/el/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/el/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/el/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/en_GB/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/en_GB/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/en_GB/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/en_GB/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/eo/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/eo/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/eo/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/eo/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/es/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/es/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/es/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/es/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/es_419/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/es_419/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/es_419/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/es_419/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/et/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/et/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/et/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/et/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/fa/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/fa/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/fa/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/fa/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/fi/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/fi/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/fi/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/fi/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/fr/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/fr/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/fr/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/fr/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ga/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ga/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ga/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ga/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/gd/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/gd/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/gd/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/gd/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/gl_ES/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/gl_ES/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/gl_ES/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/gl_ES/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/he/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/he/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/he/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/he/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/hu/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/hu/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/hu/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/hu/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/id/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/id/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/id/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/id/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/it/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/it/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/it/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/it/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ja/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ja/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ja/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ja/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ko/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ko/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ko/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ko/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/lt/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/lt/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/lt/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/lt/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/nb/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/nb/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/nb/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/nb/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/nl/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/nl/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/nl/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/nl/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/pl/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/pl/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/pl/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/pl/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/pt/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/pt/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/pt/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/pt/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/pt_BR/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/pt_BR/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/pt_BR/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/pt_BR/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ro/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ro/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ro/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ro/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/ru/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/ru/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/ru/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/ru/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/sk/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/sk/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/sk/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/sk/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/sr/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/sr/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/sr/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/sr/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/sv/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/sv/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/sv/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/sv/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/tr/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/tr/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/tr/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/tr/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/uk/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/uk/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/uk/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/uk/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/zh_CN/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/zh_CN/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/zh_CN/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/zh_CN/LC_MESSAGES/freeciv-core.mo
%%NLS%%share/locale/zh_TW/LC_MESSAGES/freeciv-nations.mo
-%%QT%%%%NLS%%share/locale/zh_TW/LC_MESSAGES/freeciv-ruledit.mo
+%%QT6%%%%NLS%%share/locale/zh_TW/LC_MESSAGES/freeciv-ruledit.mo
%%NLS%%share/locale/zh_TW/LC_MESSAGES/freeciv-core.mo
-%%GTK3%%share/metainfo/org.freeciv.gtk3.metainfo.xml
-%%GTK3%%share/metainfo/org.freeciv.gtk322.metainfo.xml
-%%GTK3%%share/metainfo/org.freeciv.gtk3.mp.metainfo.xml
-%%GTK4%%share/metainfo/org.freeciv.gtk4.metainfo.xml
-%%GTK4%%share/metainfo/org.freeciv.gtk4.mp.metainfo.xml
-%%QT%%share/metainfo/org.freeciv.qt.metainfo.xml
-%%QT%%share/metainfo/org.freeciv.qt.mp.metainfo.xml
-%%QT%%share/metainfo/org.freeciv.ruledit.metainfo.xml
-%%SDL%%share/metainfo/org.freeciv.sdl2.metainfo.xml
share/metainfo/org.freeciv.server.metainfo.xml
share/man/man6/freeciv.6.gz
%%CLIENT%%share/man/man6/freeciv-client.6.gz
@comment share/man/man6/freeciv-gtk3.22.6.gz
-%%GTK3%%share/man/man6/freeciv-gtk3.6.gz
+%%GTK3%%share/man/man6/freeciv-gtk3.22.6.gz
%%GTK4%%share/man/man6/freeciv-gtk4.6.gz
share/man/man6/freeciv-manual.6.gz
share/man/man6/freeciv-modpack.6.gz
share/man/man6/freeciv-mp-cli.6.gz
%%GTK3%%share/man/man6/freeciv-mp-gtk3.6.gz
%%GTK4%%share/man/man6/freeciv-mp-gtk4.6.gz
-%%QT%%share/man/man6/freeciv-mp-qt.6.gz
-%%QT%%share/man/man6/freeciv-qt.6.gz
-%%QT%%share/man/man6/freeciv-ruledit.6.gz
-%%QT%%share/man/man6/freeciv-ruleup.6.gz
+%%QT6%%share/man/man6/freeciv-mp-qt.6.gz
+%%QT6%%share/man/man6/freeciv-qt.6.gz
+%%QT6%%share/man/man6/freeciv-ruledit.6.gz
+%%QT6%%share/man/man6/freeciv-ruleup.6.gz
@comment share/man/man6/freeciv-sdl.6.gz
%%SDL%%share/man/man6/freeciv-sdl2.6.gz
+%%SDL%%share/man/man6/freeciv-sdl3.6.gz
share/man/man6/freeciv-server.6.gz
@comment share/man/man6/freeciv-xaw.6.gz
+%%GTK3%%share/metainfo/org.freeciv.gtk322.metainfo.xml
+%%GTK3%%share/metainfo/org.freeciv.gtk3.mp.metainfo.xml
+%%GTK4%%share/metainfo/org.freeciv.gtk4.metainfo.xml
+%%GTK4%%share/metainfo/org.freeciv.gtk4.mp.metainfo.xml
+%%QT6%%share/metainfo/org.freeciv.qt.metainfo.xml
+%%QT6%%share/metainfo/org.freeciv.qt.mp.metainfo.xml
+%%QT6%%share/metainfo/org.freeciv.ruledit.metainfo.xml
+%%SDL%%share/metainfo/org.freeciv.sdl2.metainfo.xml
%%CLIENT%%share/pixmaps/freeciv-client.png
%%CLIENT%%share/pixmaps/freeciv-modpack.png
-%%QT%%share/pixmaps/freeciv-ruledit.png
+%%QT6%%share/pixmaps/freeciv-ruledit.png
diff --git a/graphics/colmap/Makefile b/graphics/colmap/Makefile
index 47977c264e01..ff330dc7534f 100644
--- a/graphics/colmap/Makefile
+++ b/graphics/colmap/Makefile
@@ -1,5 +1,5 @@
PORTNAME= colmap
-DISTVERSION= 3.12.1
+DISTVERSION= 3.12.3
CATEGORIES= graphics
MAINTAINER= fuz@FreeBSD.org
diff --git a/graphics/colmap/distinfo b/graphics/colmap/distinfo
index ac3ae55ad257..75c6ecbbd492 100644
--- a/graphics/colmap/distinfo
+++ b/graphics/colmap/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751922819
-SHA256 (colmap-colmap-3.12.1_GH0.tar.gz) = 366496caca43e73a1e61c7ebd9dee51d5b2afe15c0e75e16ebad6cfae6f2860b
-SIZE (colmap-colmap-3.12.1_GH0.tar.gz) = 3577466
+TIMESTAMP = 1752688090
+SHA256 (colmap-colmap-3.12.3_GH0.tar.gz) = 1ad69660bd4e15b9cdd2ef407ac11c8e39bdcdc68625c1d142b0d8e80b6b2aa7
+SIZE (colmap-colmap-3.12.3_GH0.tar.gz) = 3578250
diff --git a/graphics/inkscape/Makefile b/graphics/inkscape/Makefile
index 642c7c60f676..9f4e2d8f6b41 100644
--- a/graphics/inkscape/Makefile
+++ b/graphics/inkscape/Makefile
@@ -1,5 +1,6 @@
PORTNAME= inkscape
DISTVERSION= 1.4.2
+PORTREVISION= 1
CATEGORIES= graphics gnome
MASTER_SITES= https://media.inkscape.org/dl/resources/file/
@@ -36,7 +37,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>0:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cachecontrol>0:www/py-cachecontrol@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssselect>0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}filelock>=3.7.1:sysutils/py-filelock@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scour>0:textproc/py-scour@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tinycss2>0:textproc/py-tinycss2@${PY_FLAVOR} \
diff --git a/graphics/osg/Makefile b/graphics/osg/Makefile
index 5698ef582276..e27f9944bd36 100644
--- a/graphics/osg/Makefile
+++ b/graphics/osg/Makefile
@@ -1,10 +1,10 @@
PORTNAME= osg
PORTVERSION= 3.6.5
DISTVERSIONPREFIX= OpenSceneGraph-
-PORTREVISION= 78
+PORTREVISION= 79
CATEGORIES= graphics
-MAINTAINER= amdmi3@FreeBSD.org
+MAINTAINER= fluffy@FreeBSD.org
COMMENT= C++ OpenGL scene graph library for real-time rendering
WWW= https://www.openscenegraph.org/
@@ -16,20 +16,20 @@ LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
LIB_DEPENDS= libpng.so:graphics/png \
libtiff.so:graphics/tiff
-USE_GITHUB= yes
-GH_ACCOUNT= openscenegraph
-GH_PROJECT= OpenSceneGraph
-
-CONFLICTS_INSTALL=osg34
-
USES= alias cmake compiler:c11 jpeg gl pkgconfig xorg
USE_GL= gl
USE_XORG= x11
USE_LDCONFIG= yes
USE_CXXSTD= c++11
+USE_GITHUB= yes
+GH_ACCOUNT= openscenegraph
+GH_PROJECT= OpenSceneGraph
+
CFLAGS+= -I${LOCALBASE}/include/Imath -DInt64=uint64_t
+CONFLICTS_INSTALL=osg34
+
PLIST_SUB= OSG_VERSION=${PORTVERSION} \
OSG_SHLIBVER=161 \
OPENTHREADS_VERSION=3.3.1 \
@@ -38,7 +38,7 @@ PLIST_SUB= OSG_VERSION=${PORTVERSION} \
OPTIONS_DEFINE= CURL FFMPEG FREETYPE GDAL GIF GSTREAMER GTA \
JASPER LIBLAS LUA NVTT OPENEXR PDF SDL ASIO \
SVG VNC XRANDR XINERAMA FONTCONFIG DCMTK COLLADA
-OPTIONS_DEFAULT=FFMPEG FREETYPE GIF XRANDR XINERAMA FONTCONFIG
+OPTIONS_DEFAULT=COLLADA FFMPEG FREETYPE GIF XRANDR XINERAMA FONTCONFIG
OPTIONS_SUB= yes
ASIO_DESC= ASIO support (resthttp plugin)
@@ -55,7 +55,7 @@ COLLADA_DESC= COLLADA (dae) format support
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
CURL_VARS= FORCE_REQUIRE+=CURL
CURL_VARS_OFF= FORCE_IGNORE+=CURL
-FFMPEG_LIB_DEPENDS= libavcodec.so.58:multimedia/ffmpeg4
+FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
FFMPEG_VARS= FORCE_REQUIRE+=FFmpeg
FFMPEG_VARS_OFF= FORCE_IGNORE+=FFmpeg
FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2
diff --git a/graphics/osg/files/patch-CMakeModules_FindFFmpeg.cmake b/graphics/osg/files/patch-CMakeModules_FindFFmpeg.cmake
deleted file mode 100644
index 21ea506f30a7..000000000000
--- a/graphics/osg/files/patch-CMakeModules_FindFFmpeg.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
---- CMakeModules/FindFFmpeg.cmake.orig 2023-04-24 09:16:25 UTC
-+++ CMakeModules/FindFFmpeg.cmake
-@@ -21,6 +21,7 @@
- # (in new version case, use by ffmpeg header)
- #and ${FFMPEG_libname_INCLUDE_DIRS/libname} (in new version case, use by osg plugin code)
-
-+set(CMAKE_PREFIX_PATH "%%LOCALBASE%%/ffmpeg4;%%LOCALBASE%%/ffmpeg4/libexec")
-
- # Macro to find header and lib directories
- # example: FFMPEG_FIND(AVFORMAT avformat avformat.h)
diff --git a/graphics/osg/files/patch-CMakeModules_FindGStreamer.cmake b/graphics/osg/files/patch-CMakeModules_FindGStreamer.cmake
index 7b3259726d4b..a21b9d2bf56f 100644
--- a/graphics/osg/files/patch-CMakeModules_FindGStreamer.cmake
+++ b/graphics/osg/files/patch-CMakeModules_FindGStreamer.cmake
@@ -1,6 +1,6 @@
---- CMakeModules/FindGStreamer.cmake 2015-07-17 21:31:19.000000000 +0300
-+++ CMakeModules/FindGStreamer.cmake 2015-02-25 22:25:34.000000000 +0300
-@@ -83,18 +83,18 @@
+--- CMakeModules/FindGStreamer.cmake.orig 2022-12-01 18:17:31 UTC
++++ CMakeModules/FindGStreamer.cmake
+@@ -83,18 +83,18 @@ else ()
find_package(PkgConfig)
macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
@@ -12,17 +12,16 @@
-# HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
-# PATH_SUFFIXES gstreamer-1.0
-# )
--
--# find_library(${_component_prefix}_LIBRARIES
--# NAMES ${_library}
--# HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
--# )
+ find_path(${_component_prefix}_INCLUDE_DIRS
+ NAMES ${_header}
+ HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
+ PATH_SUFFIXES gstreamer-1.0
+ )
-+
+
+-# find_library(${_component_prefix}_LIBRARIES
+-# NAMES ${_library}
+-# HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
+-# )
+ find_library(${_component_prefix}_LIBRARIES
+ NAMES ${_library}
+ HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
diff --git a/graphics/osg/files/patch-src_osgPlugins_OpenCASCADE_ReaderWriterOpenCASCADE.cpp b/graphics/osg/files/patch-src_osgPlugins_OpenCASCADE_ReaderWriterOpenCASCADE.cpp
new file mode 100644
index 000000000000..0cb83cdf56a9
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_OpenCASCADE_ReaderWriterOpenCASCADE.cpp
@@ -0,0 +1,11 @@
+--- src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp
+@@ -211,7 +211,7 @@ osg::ref_ptr<osg::Geometry> ReaderWritterOpenCASCADE::
+ {
+ // populate vertex list
+ // Ref: http://www.opencascade.org/org/forum/thread_16694/?forum=3
+- gp_Pnt pt = (triangulation->Nodes())(j).Transformed(transformation * location.Transformation());
++ gp_Pnt pt = (triangulation->Node(j)).Transformed(transformation * location.Transformation());
+ vertexList->push_back(osg::Vec3(pt.X(), pt.Y(), pt.Z()));
+
+ // populate color list
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.cpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.cpp
new file mode 100644
index 000000000000..ecf35527a878
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.cpp
@@ -0,0 +1,207 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoder.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoder.cpp
+@@ -1,4 +1,3 @@
+-
+ #include "FFmpegDecoder.hpp"
+ #include "FFmpegParameters.hpp"
+
+@@ -36,8 +35,10 @@ FFmpegDecoder::FFmpegDecoder() :
+ }
+
+ FFmpegDecoder::FFmpegDecoder() :
+- m_audio_stream(0),
+- m_video_stream(0),
++ m_audio_stream(nullptr),
++ m_video_stream(nullptr),
++ m_audio_index(-1),
++ m_video_index(-1),
+ m_audio_queue(100),
+ m_video_queue(100),
+ m_audio_decoder(m_audio_queue, m_clocks),
+@@ -61,10 +62,10 @@ bool FFmpegDecoder::open(const std::string & filename,
+ try
+ {
+ // Open video file
+- AVFormatContext * p_format_context = 0;
+- AVInputFormat *iformat = 0;
++ AVFormatContext * p_format_context = nullptr;
++ AVInputFormat *iformat = nullptr;
+
+- if (filename.compare(0, 5, "/dev/")==0)
++ if (filename.compare(0, 5, "/dev/") == 0)
+ {
+ #ifdef ANDROID
+ throw std::runtime_error("Device not supported on Android");
+@@ -78,24 +79,24 @@ bool FFmpegDecoder::open(const std::string & filename,
+ }
+
+ std::string format = "video4linux2";
+- iformat = av_find_input_format(format.c_str());
++ iformat = const_cast<AVInputFormat*>(av_find_input_format(format.c_str()));
+
+ if (iformat)
+ {
+- OSG_INFO<<"Found input format: "<<format<<std::endl;
++ OSG_INFO << "Found input format: " << format << std::endl;
+ }
+ else
+ {
+- OSG_INFO<<"Failed to find input format: "<<format<<std::endl;
++ OSG_INFO << "Failed to find input format: " << format << std::endl;
+ }
+
+ #endif
+ }
+ else
+ {
+- iformat = parameters ? parameters->getFormat() : 0;
+- AVIOContext* context = parameters ? parameters->getContext() : 0;
+- if (context != NULL)
++ iformat = parameters ? const_cast<AVInputFormat*>(parameters->getFormat()) : nullptr;
++ AVIOContext* context = parameters ? parameters->getContext() : nullptr;
++ if (context != nullptr)
+ {
+ p_format_context = avformat_alloc_context();
+ p_format_context->pb = context;
+@@ -105,22 +106,7 @@ bool FFmpegDecoder::open(const std::string & filename,
+ int error = avformat_open_input(&p_format_context, filename.c_str(), iformat, parameters->getOptions());
+ if (error != 0)
+ {
+- std::string error_str;
+- switch (error)
+- {
+- //case AVERROR_UNKNOWN: error_str = "AVERROR_UNKNOWN"; break; // same value as AVERROR_INVALIDDATA
+- case AVERROR_IO: error_str = "AVERROR_IO"; break;
+- case AVERROR_NUMEXPECTED: error_str = "AVERROR_NUMEXPECTED"; break;
+- case AVERROR_INVALIDDATA: error_str = "AVERROR_INVALIDDATA"; break;
+- case AVERROR_NOMEM: error_str = "AVERROR_NOMEM"; break;
+- case AVERROR_NOFMT: error_str = "AVERROR_NOFMT"; break;
+- case AVERROR_NOTSUPP: error_str = "AVERROR_NOTSUPP"; break;
+- case AVERROR_NOENT: error_str = "AVERROR_NOENT"; break;
+- case AVERROR_PATCHWELCOME: error_str = "AVERROR_PATCHWELCOME"; break;
+- default: error_str = "Unknown error"; break;
+- }
+-
+- throw std::runtime_error("av_open_input_file() failed : " + error_str);
++ throw std::runtime_error("avformat_open_input() failed: " + AvStrError(error));
+ }
+
+ m_format_context.reset(p_format_context);
+@@ -128,15 +114,15 @@ bool FFmpegDecoder::open(const std::string & filename,
+ // Retrieve stream info
+ // Only buffer up to one and a half seconds by default
+ float max_analyze_duration = 1.5;
+- AVDictionaryEntry *mad = av_dict_get( *parameters->getOptions(), "mad", NULL, 0 );
+- if ( mad ) {
++ AVDictionaryEntry *mad = av_dict_get(*parameters->getOptions(), "mad", NULL, 0);
++ if (mad) {
+ max_analyze_duration = atof(mad->value);
+ }
+ p_format_context->max_analyze_duration = AV_TIME_BASE * max_analyze_duration;
+ // p_format_context->probesize = 100000;
+
+ if (avformat_find_stream_info(p_format_context, NULL) < 0)
+- throw std::runtime_error("av_find_stream_info() failed");
++ throw std::runtime_error("avformat_find_stream_info() failed");
+
+ m_duration = double(m_format_context->duration) / AV_TIME_BASE;
+ if (m_format_context->start_time != static_cast<int64_t>(AV_NOPTS_VALUE))
+@@ -159,7 +145,7 @@ bool FFmpegDecoder::open(const std::string & filename,
+ m_audio_stream = m_format_context->streams[m_audio_index];
+ else
+ {
+- m_audio_stream = 0;
++ m_audio_stream = nullptr;
+ m_audio_index = std::numeric_limits<unsigned int>::max();
+ }
+
+@@ -271,7 +257,7 @@ bool FFmpegDecoder::readNextPacketNormal()
+ {
+ AVPacket packet;
+
+- if (! m_pending_packet)
++ if (!m_pending_packet)
+ {
+ bool end_of_stream = false;
+
+@@ -279,10 +265,10 @@ bool FFmpegDecoder::readNextPacketNormal()
+ int error = av_read_frame(m_format_context.get(), &packet);
+ if (error < 0)
+ {
+- if (error == static_cast<int>(AVERROR_EOF) ||
+- m_format_context.get()->pb->eof_reached)
++ if (error == static_cast<int>(AVERROR_EOF) || m_format_context.get()->pb->eof_reached)
+ end_of_stream = true;
+- else {
++ else
++ {
+ OSG_FATAL << "av_read_frame() returned " << AvStrError(error) << std::endl;
+ throw std::runtime_error("av_read_frame() failed");
+ }
+@@ -303,12 +289,6 @@ bool FFmpegDecoder::readNextPacketNormal()
+ }
+ else
+ {
+- // Make the packet data available beyond av_read_frame() logical scope.
+- if ((error = av_dup_packet(&packet)) < 0) {
+- OSG_FATAL << "av_dup_packet() returned " << AvStrError(error) << std::endl;
+- throw std::runtime_error("av_dup_packet() failed");
+- }
+-
+ m_pending_packet = FFmpegPacket(packet);
+ }
+ }
+@@ -340,8 +320,6 @@ bool FFmpegDecoder::readNextPacketNormal()
+ return false;
+ }
+
+-
+-
+ bool FFmpegDecoder::readNextPacketEndOfStream()
+ {
+ const FFmpegPacket packet(FFmpegPacket::PACKET_END_OF_STREAM);
+@@ -352,8 +330,6 @@ bool FFmpegDecoder::readNextPacketEndOfStream()
+ return false;
+ }
+
+-
+-
+ bool FFmpegDecoder::readNextPacketRewinding()
+ {
+ const FFmpegPacket packet(FFmpegPacket::PACKET_FLUSH);
+@@ -364,8 +340,6 @@ bool FFmpegDecoder::readNextPacketRewinding()
+ return false;
+ }
+
+-
+-
+ void FFmpegDecoder::rewindButDontFlushQueues()
+ {
+ const AVRational AvTimeBaseQ = { 1, AV_TIME_BASE }; // = AV_TIME_BASE_Q
+@@ -374,7 +348,8 @@ void FFmpegDecoder::rewindButDontFlushQueues()
+ const int64_t seek_target = av_rescale_q(pos, AvTimeBaseQ, m_video_stream->time_base);
+
+ int error = 0;
+- if ((error = av_seek_frame(m_format_context.get(), m_video_index, seek_target, 0/*AVSEEK_FLAG_BYTE |*/ /*AVSEEK_FLAG_BACKWARD*/)) < 0) {
++ if ((error = av_seek_frame(m_format_context.get(), m_video_index, seek_target, 0)) < 0)
++ {
+ OSG_FATAL << "av_seek_frame returned " << AvStrError(error) << std::endl;
+ throw std::runtime_error("av_seek_frame failed()");
+ }
+@@ -397,13 +372,14 @@ void FFmpegDecoder::seekButDontFlushQueues(double time
+ {
+ const AVRational AvTimeBaseQ = { 1, AV_TIME_BASE }; // = AV_TIME_BASE_Q
+
+- const int64_t pos = int64_t(m_clocks.getStartTime()+time * double(AV_TIME_BASE));
++ const int64_t pos = int64_t(m_clocks.getStartTime() + time * double(AV_TIME_BASE));
+ const int64_t seek_target = av_rescale_q(pos, AvTimeBaseQ, m_video_stream->time_base);
+
+ m_clocks.setSeekTime(time);
+
+ int error = 0;
+- if ((error = av_seek_frame(m_format_context.get(), m_video_index, seek_target, 0/*AVSEEK_FLAG_BYTE |*/ /*AVSEEK_FLAG_BACKWARD*/)) < 0) {
++ if ((error = av_seek_frame(m_format_context.get(), m_video_index, seek_target, 0)) < 0)
++ {
+ OSG_FATAL << "av_seek_frame() returned " << AvStrError(error) << std::endl;
+ throw std::runtime_error("av_seek_frame failed()");
+ }
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.hpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.hpp
new file mode 100644
index 000000000000..090eed7d6e32
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoder.hpp
@@ -0,0 +1,255 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoder.hpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoder.hpp
+@@ -1,4 +1,3 @@
+-
+ #ifndef HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_H
+ #define HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_H
+
+@@ -7,73 +6,76 @@
+
+ #include <osg/Notify>
+
+-
+ namespace osgFFmpeg {
+
+ class FFmpegParameters;
+
+ class FormatContextPtr
+ {
+- public:
+-
+- typedef AVFormatContext T;
+-
+- explicit FormatContextPtr() : _ptr(0) {}
+- explicit FormatContextPtr(T* ptr) : _ptr(ptr) {}
+-
+- ~FormatContextPtr()
+- {
+- cleanup();
+- }
+-
+- T* get() { return _ptr; }
++public:
++ typedef AVFormatContext T;
+
+- operator bool() const { return _ptr != 0; }
++ explicit FormatContextPtr() : _ptr(nullptr) {}
++ explicit FormatContextPtr(T* ptr) : _ptr(ptr) {}
+
+- T * operator-> () const // never throws
+- {
+- return _ptr;
+- }
++ ~FormatContextPtr()
++ {
++ cleanup();
++ }
+
+- void reset(T* ptr)
+- {
+- if (ptr==_ptr) return;
+- cleanup();
+- _ptr = ptr;
+- }
++ T* get() const { return _ptr; }
++ T** getPtr() { return &_ptr; }
+
+- void cleanup()
++ operator T*() const { return _ptr; }
++
++ FormatContextPtr& operator=(T* ptr)
++ {
++ reset(ptr);
++ return *this;
++ }
++
++ bool operator==(std::nullptr_t) const { return _ptr == nullptr; }
++ bool operator!=(std::nullptr_t) const { return _ptr != nullptr; }
++
++ T* operator->() const // never throws
++ {
++ return _ptr;
++ }
++
++ void reset(T* ptr)
++ {
++ if (ptr == _ptr) return;
++ cleanup();
++ _ptr = ptr;
++ }
++
++ void cleanup()
++ {
++ if (_ptr)
+ {
+- if (_ptr)
+- {
+ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53, 17, 0)
+- OSG_NOTICE<<"Calling avformat_close_input("<<&_ptr<<")"<<std::endl;
+- avformat_close_input(&_ptr);
++ OSG_NOTICE << "Calling avformat_close_input(" << &_ptr << ")" << std::endl;
++ avformat_close_input(&_ptr);
+ #else
+- OSG_NOTICE<<"Calling av_close_input_file("<<_ptr<<")"<<std::endl;
+- av_close_input_file(_ptr);
++ OSG_NOTICE << "Calling av_close_input_file(" << _ptr << ")" << std::endl;
++ av_close_input_file(_ptr);
+ #endif
+- }
+- _ptr = 0;
+ }
+-
+-
++ _ptr = nullptr;
++ }
+
+- protected:
+-
+- T* _ptr;
++protected:
++ T* _ptr;
+ };
+
+-
+ class FFmpegDecoder : public osg::Referenced
+ {
+ public:
+-
+ FFmpegDecoder();
+ ~FFmpegDecoder();
+
+- bool open(const std::string & filename, FFmpegParameters* parameters);
+- void close(bool waitForThreadToExit);
++ bool open(const std::string& filename, FFmpegParameters* parameters);
++ void close(bool waitForThreadToExit = true);
+
+ bool readNextPacket();
+ void rewind();
+@@ -87,13 +89,12 @@ class FFmpegDecoder : public osg::Referenced (public)
+ double duration() const;
+ double reference();
+
+- FFmpegDecoderAudio & audio_decoder();
+- FFmpegDecoderVideo & video_decoder();
+- FFmpegDecoderAudio const & audio_decoder() const;
+- FFmpegDecoderVideo const & video_decoder() const;
++ FFmpegDecoderAudio& audio_decoder();
++ FFmpegDecoderVideo& video_decoder();
++ FFmpegDecoderAudio const& audio_decoder() const;
++ FFmpegDecoderVideo const& video_decoder() const;
+
+ protected:
+-
+ enum State
+ {
+ NORMAL,
+@@ -115,38 +116,33 @@ class FFmpegDecoder : public osg::Referenced (public)
+ void rewindButDontFlushQueues();
+ void seekButDontFlushQueues(double time);
+
+- FormatContextPtr m_format_context;
+- AVStream * m_audio_stream;
+- AVStream * m_video_stream;
++ FormatContextPtr m_format_context;
++ AVStream* m_audio_stream;
++ AVStream* m_video_stream;
+
+- int m_audio_index;
+- int m_video_index;
++ int m_audio_index;
++ int m_video_index;
+
+- FFmpegClocks m_clocks;
+- FFmpegPacket m_pending_packet;
+- PacketQueue m_audio_queue;
+- PacketQueue m_video_queue;
+-
+- FFmpegDecoderAudio m_audio_decoder;
+- FFmpegDecoderVideo m_video_decoder;
++ FFmpegClocks m_clocks;
++ FFmpegPacket m_pending_packet;
++ PacketQueue m_audio_queue;
++ PacketQueue m_video_queue;
+
+- double m_duration;
+- double m_start;
++ FFmpegDecoderAudio m_audio_decoder;
++ FFmpegDecoderVideo m_video_decoder;
+
+- State m_state;
+- bool m_loop;
++ double m_duration;
++ double m_start;
++
++ State m_state;
++ bool m_loop;
+ };
+
+-
+-
+-
+-
+ inline void FFmpegDecoder::loop(const bool loop)
+ {
+ m_loop = loop;
+ }
+
+-
+ inline bool FFmpegDecoder::loop() const
+ {
+ return m_loop;
+@@ -154,8 +150,8 @@ inline double FFmpegDecoder::creation_time() const
+
+ inline double FFmpegDecoder::creation_time() const
+ {
+- if(m_format_context) return m_format_context->start_time;
+- else return HUGE_VAL;
++ if (m_format_context) return m_format_context->start_time;
++ else return HUGE_VAL;
+ }
+
+ inline double FFmpegDecoder::duration() const
+@@ -165,37 +161,30 @@ inline double FFmpegDecoder::reference()
+
+ inline double FFmpegDecoder::reference()
+ {
+- return m_clocks.getCurrentTime();
++ return m_clocks.getCurrentTime();
+ }
+
+-
+-inline FFmpegDecoderAudio & FFmpegDecoder::audio_decoder()
++inline FFmpegDecoderAudio& FFmpegDecoder::audio_decoder()
+ {
+ return m_audio_decoder;
+ }
+
+-
+-inline FFmpegDecoderVideo & FFmpegDecoder::video_decoder()
++inline FFmpegDecoderVideo& FFmpegDecoder::video_decoder()
+ {
+ return m_video_decoder;
+ }
+
+-
+-inline FFmpegDecoderAudio const & FFmpegDecoder::audio_decoder() const
++inline FFmpegDecoderAudio const& FFmpegDecoder::audio_decoder() const
+ {
+ return m_audio_decoder;
+ }
+
+-
+-inline FFmpegDecoderVideo const & FFmpegDecoder::video_decoder() const
++inline FFmpegDecoderVideo const& FFmpegDecoder::video_decoder() const
+ {
+ return m_video_decoder;
+ }
+
+-
+-
+ } // namespace osgFFmpeg
+
+-
+-
+ #endif // HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_H
++
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.cpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.cpp
new file mode 100644
index 000000000000..fcee15f62682
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.cpp
@@ -0,0 +1,478 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp
+@@ -1,39 +1,24 @@
+ #include "FFmpegDecoderAudio.hpp"
+-
+ #include <osg/Notify>
+-
+ #include <stdexcept>
+-#include <string.h>
++#include <cstring>
++#include <libavutil/channel_layout.h>
++#include <libavutil/opt.h>
+
+-//DEBUG
+-//#include <iostream>
+-
+-
+ #ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
+ #define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
+ #endif
+
+-#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(55,28,1)
+-#define av_frame_alloc avcodec_alloc_frame
+-#define av_frame_free avcodec_free_frame
+-#endif
+-
+-#if LIBAVCODEC_VERSION_MAJOR < 56
+- #define AV_CODEC_ID_NONE CODEC_ID_NONE
+-#endif
+-
+ namespace osgFFmpeg {
+
+ static int decode_audio(AVCodecContext *avctx, int16_t *samples,
+- int *frame_size_ptr,
+- const uint8_t *buf, int buf_size,
+- SwrContext *swr_context,
+- int out_sample_rate,
+- int out_nb_channels,
+- AVSampleFormat out_sample_format)
++ int *frame_size_ptr,
++ const uint8_t *buf, int buf_size,
++ SwrContext *swr_context,
++ int out_sample_rate,
++ int out_nb_channels,
++ AVSampleFormat out_sample_format)
+ {
+-#if LIBAVCODEC_VERSION_MAJOR >= 53 || (LIBAVCODEC_VERSION_MAJOR==52 && LIBAVCODEC_VERSION_MINOR>=32)
+-
+ AVPacket avpkt;
+ av_init_packet(&avpkt);
+ avpkt.data = const_cast<uint8_t *>(buf);
+@@ -45,30 +30,39 @@ static int decode_audio(AVCodecContext *avctx, int16_t
+ if (!frame)
+ return AVERROR(ENOMEM);
+
+- ret = avcodec_decode_audio4(avctx, frame, &got_frame, &avpkt);
++ // Send the packet to the decoder
++ ret = avcodec_send_packet(avctx, &avpkt);
++ if (ret < 0) {
++ av_frame_free(&frame);
++ return ret;
++ }
+
+-#ifdef USE_AVRESAMPLE // libav's AVFrame structure does not contain a 'channels' field
+- if (ret >= 0 && got_frame) {
+-#else
+- if (ret >= 0 && got_frame && av_frame_get_channels(frame)>0) {
+-#endif
++ // Receive the frame from the decoder
++ ret = avcodec_receive_frame(avctx, frame);
++ if (ret == AVERROR(EAGAIN) || ret == AVERROR_EOF) {
++ av_frame_free(&frame);
++ return 0;
++ } else if (ret < 0) {
++ av_frame_free(&frame);
++ return ret;
++ } else {
++ got_frame = 1;
++ }
++
++ if (ret >= 0 && got_frame && frame->ch_layout.nb_channels > 0) {
+ int ch, plane_size;
+ int planar = av_sample_fmt_is_planar(avctx->sample_fmt);
+
+ int out_samples;
+ // if sample rate changes, number of samples is different
+- if ( out_sample_rate != avctx->sample_rate ) {
+-// out_samples = av_rescale_rnd(swr_get_delay(swr_context, avctx->sample_rate) +
+-// frame->nb_samples, out_sample_rate, avctx->sample_rate, AV_ROUND_UP);
++ if (out_sample_rate != avctx->sample_rate) {
+ out_samples = av_rescale_rnd(frame->nb_samples, out_sample_rate, avctx->sample_rate, AV_ROUND_UP);
+- }
+- else {
++ } else {
+ out_samples = frame->nb_samples;
+ }
+
+ int output_data_size = av_samples_get_buffer_size(&plane_size, out_nb_channels,
+- out_samples,
+- out_sample_format, 1);
++ out_samples, out_sample_format, 1);
+
+ if (*frame_size_ptr < output_data_size) {
+ av_log(avctx, AV_LOG_ERROR, "output buffer size is too small for "
+@@ -78,23 +72,19 @@ static int decode_audio(AVCodecContext *avctx, int16_t
+ }
+
+ // if resampling is needed, call swr_convert
+- if ( swr_context != NULL ) {
+-
++ if (swr_context != nullptr) {
+ out_samples = swr_convert(swr_context, (uint8_t **)&samples, out_samples,
+- (const uint8_t **)frame->extended_data, frame->nb_samples);
++ (const uint8_t **)frame->extended_data, frame->nb_samples);
+
+ // recompute output_data_size following swr_convert result (number of samples actually converted)
+ output_data_size = av_samples_get_buffer_size(&plane_size, out_nb_channels,
+- out_samples,
+- out_sample_format, 1);
+- }
+- else {
+-
++ out_samples, out_sample_format, 1);
++ } else {
+ memcpy(samples, frame->extended_data[0], plane_size);
+
+- if (planar && avctx->channels > 1) {
++ if (planar && frame->ch_layout.nb_channels > 1) {
+ uint8_t *out = ((uint8_t *)samples) + plane_size;
+- for (ch = 1; ch < avctx->channels; ch++) {
++ for (ch = 1; ch < frame->ch_layout.nb_channels; ch++) {
+ memcpy(out, frame->extended_data[ch], plane_size);
+ out += plane_size;
+ }
+@@ -102,26 +92,21 @@ static int decode_audio(AVCodecContext *avctx, int16_t
+ }
+
+ *frame_size_ptr = output_data_size;
+-
+ } else {
+ *frame_size_ptr = 0;
+ }
++
+ av_frame_free(&frame);
+ return ret;
+-
+-#else
+- // fallback for older versions of ffmpeg that don't have avcodec_decode_audio3.
+- return avcodec_decode_audio2(avctx, samples, frame_size_ptr, buf, buf_size);
+-#endif
+ }
+
+
+-FFmpegDecoderAudio::FFmpegDecoderAudio(PacketQueue & packets, FFmpegClocks & clocks) :
++FFmpegDecoderAudio::FFmpegDecoderAudio(PacketQueue &packets, FFmpegClocks &clocks) :
+ m_packets(packets),
+ m_clocks(clocks),
+- m_stream(0),
+- m_context(0),
+- m_packet_data(0),
++ m_stream(nullptr),
++ m_context(nullptr),
++ m_packet_data(nullptr),
+ m_bytes_remaining(0),
+ m_audio_buffer((AVCODEC_MAX_AUDIO_FRAME_SIZE * 3) / 2),
+ m_audio_buf_size(0),
+@@ -129,7 +114,7 @@ FFmpegDecoderAudio::FFmpegDecoderAudio(PacketQueue & p
+ m_end_of_stream(false),
+ m_paused(true),
+ m_exit(false),
+- m_swr_context(NULL)
++ m_swr_context(nullptr)
+ {
+ }
+
+@@ -137,103 +122,95 @@ FFmpegDecoderAudio::~FFmpegDecoderAudio()
+
+ FFmpegDecoderAudio::~FFmpegDecoderAudio()
+ {
+- this->close(true);
++ close(true);
+ }
+
+
+
+-void FFmpegDecoderAudio::open(AVStream * const stream, FFmpegParameters* parameters)
++void FFmpegDecoderAudio::open(AVStream *stream, FFmpegParameters* parameters)
+ {
+ try
+ {
+ // Sound can be optional (i.e. no audio stream is present)
+- if (stream == 0)
++ if (stream == nullptr)
+ return;
+
+ m_stream = stream;
+- m_context = stream->codec;
++ m_context = avcodec_alloc_context3(nullptr);
++ avcodec_parameters_to_context(m_context, stream->codecpar);
+
+ m_in_sample_rate = m_context->sample_rate;
+- m_in_nb_channels = m_context->channels;
++ m_in_nb_channels = m_context->ch_layout.nb_channels;
+ m_in_sample_format = m_context->sample_fmt;
+
+- AVDictionaryEntry *opt_out_sample_rate = av_dict_get( *parameters->getOptions(), "out_sample_rate", NULL, 0 );
+- if ( opt_out_sample_rate )
++ AVDictionaryEntry *opt_out_sample_rate = av_dict_get(*parameters->getOptions(), "out_sample_rate", nullptr, 0);
++ if (opt_out_sample_rate)
+ m_out_sample_rate = atoi(opt_out_sample_rate->value);
+ else
+ m_out_sample_rate = m_in_sample_rate;
+
+- AVDictionaryEntry *opt_out_sample_format = av_dict_get( *parameters->getOptions(), "out_sample_format", NULL, 0 );
+- if ( opt_out_sample_format )
++ AVDictionaryEntry *opt_out_sample_format = av_dict_get(*parameters->getOptions(), "out_sample_format", nullptr, 0);
++ if (opt_out_sample_format)
+ m_out_sample_format = (AVSampleFormat) atoi(opt_out_sample_format->value);
+ else
+ // always packed, planar formats are evil!
+- m_out_sample_format = av_get_packed_sample_fmt( m_in_sample_format );
++ m_out_sample_format = av_get_packed_sample_fmt(m_in_sample_format);
+
+- AVDictionaryEntry *opt_out_nb_channels = av_dict_get( *parameters->getOptions(), "out_nb_channels", NULL, 0 );
+- if ( opt_out_nb_channels )
++ AVDictionaryEntry *opt_out_nb_channels = av_dict_get(*parameters->getOptions(), "out_nb_channels", nullptr, 0);
++ if (opt_out_nb_channels)
+ m_out_nb_channels = atoi(opt_out_nb_channels->value);
+ else
+ m_out_nb_channels = m_in_nb_channels;
+
+- if ( m_in_sample_rate != m_out_sample_rate
++ if (m_in_sample_rate != m_out_sample_rate
+ || m_in_nb_channels != m_out_nb_channels
+- || m_in_sample_format != m_out_sample_format )
++ || m_in_sample_format != m_out_sample_format)
+ {
+-#if 0
+-printf("### CONVERTING from sample format %s TO %s\n\t\tFROM %d TO %d channels\n\t\tFROM %d Hz to %d Hz\n",
+- av_get_sample_fmt_name(m_in_sample_format),
+- av_get_sample_fmt_name(m_out_sample_format),
+- m_in_nb_channels,
+- m_out_nb_channels,
+- m_in_sample_rate,
+- m_out_sample_rate);
+-#endif
+- m_swr_context = swr_alloc_set_opts(NULL,
+- av_get_default_channel_layout(m_out_nb_channels),
+- m_out_sample_format,
+- m_out_sample_rate,
+- av_get_default_channel_layout(m_in_nb_channels),
+- m_in_sample_format,
+- m_in_sample_rate,
+- 0, NULL );
++ AVChannelLayout in_ch_layout;
++ AVChannelLayout out_ch_layout;
++ av_channel_layout_default(&in_ch_layout, m_in_nb_channels);
++ av_channel_layout_default(&out_ch_layout, m_out_nb_channels);
+
+- int err = swr_init(m_swr_context);
++ m_swr_context = swr_alloc();
++ if (!m_swr_context) {
++ throw std::runtime_error("Could not allocate resampler context");
++ }
+
+- if ( err ) {
++ av_opt_set_int(m_swr_context, "in_channel_count", in_ch_layout.nb_channels, 0);
++ av_opt_set_int(m_swr_context, "in_sample_rate", m_in_sample_rate, 0);
++ av_opt_set_sample_fmt(m_swr_context, "in_sample_fmt", m_in_sample_format, 0);
++ av_opt_set_chlayout(m_swr_context, "in_chlayout", &in_ch_layout, 0);
++
++ av_opt_set_int(m_swr_context, "out_channel_count", out_ch_layout.nb_channels, 0);
++ av_opt_set_int(m_swr_context, "out_sample_rate", m_out_sample_rate, 0);
++ av_opt_set_sample_fmt(m_swr_context, "out_sample_fmt", m_out_sample_format, 0);
++ av_opt_set_chlayout(m_swr_context, "out_chlayout", &out_ch_layout, 0);
++
++ int err = swr_init(m_swr_context);
++ if (err < 0) {
+ char error_string[512];
+- av_strerror(err, error_string, 512);
++ av_strerror(err, error_string, sizeof(error_string));
+ OSG_WARN << "FFmpegDecoderAudio - WARNING: Error initializing resampling context : " << error_string << std::endl;
+ swr_free(&m_swr_context);
+- throw std::runtime_error("swr_init() failed");;
++ throw std::runtime_error("swr_init() failed");
+ }
+ }
+
+- // Check stream sanity
+ if (m_context->codec_id == AV_CODEC_ID_NONE)
+- throw std::runtime_error("invalid audio codec");;
++ throw std::runtime_error("invalid audio codec");
+
+- // Find the decoder for the audio stream
+- AVCodec * const p_codec = avcodec_find_decoder(m_context->codec_id);
++ const AVCodec *p_codec = avcodec_find_decoder(m_context->codec_id);
+
+- if (p_codec == 0)
++ if (p_codec == nullptr)
+ throw std::runtime_error("avcodec_find_decoder() failed");
+
+- // Inform the codec that we can handle truncated bitstreams
+- //if (p_codec->capabilities & CODEC_CAP_TRUNCATED)
+- // m_context->flags |= CODEC_FLAG_TRUNCATED;
+-
+- // Open codec
+- if (avcodec_open2(m_context, p_codec, NULL) < 0)
++ if (avcodec_open2(m_context, p_codec, nullptr) < 0)
+ throw std::runtime_error("avcodec_open() failed");
+
+- m_context->get_buffer2 = avcodec_default_get_buffer2;
+-
+ }
+-
+ catch (...)
+ {
+- m_context = 0;
++ avcodec_free_context(&m_context);
+ throw;
+ }
+ }
+@@ -260,6 +237,10 @@ void FFmpegDecoderAudio::close(bool waitForThreadToExi
+ join();
+ }
+ swr_free(&m_swr_context);
++ if (m_context)
++ {
++ avcodec_free_context(&m_context);
++ }
+ }
+
+ void FFmpegDecoderAudio::setVolume(float volume)
+@@ -286,7 +267,7 @@ void FFmpegDecoderAudio::run()
+ decodeLoop();
+ }
+
+- catch (const std::exception & error)
++ catch (const std::exception &error)
+ {
+ OSG_WARN << "FFmpegDecoderAudio::run : " << error.what() << std::endl;
+ }
+@@ -301,15 +282,15 @@ void FFmpegDecoderAudio::setAudioSink(osg::ref_ptr<osg
+ void FFmpegDecoderAudio::setAudioSink(osg::ref_ptr<osg::AudioSink> audio_sink)
+ {
+ // The FFmpegDecoderAudio object takes the responsibility of destroying the audio_sink.
+- OSG_NOTICE<<"Assigning "<<audio_sink<<std::endl;
++ OSG_NOTICE << "Assigning " << audio_sink << std::endl;
+ m_audio_sink = audio_sink;
+ }
+
+
+
+-void FFmpegDecoderAudio::fillBuffer(void * const buffer, size_t size)
++void FFmpegDecoderAudio::fillBuffer(void *buffer, size_t size)
+ {
+- uint8_t * dst_buffer = reinterpret_cast<uint8_t*>(buffer);
++ uint8_t *dst_buffer = reinterpret_cast<uint8_t *>(buffer);
+
+ while (size != 0)
+ {
+@@ -349,9 +330,9 @@ void FFmpegDecoderAudio::decodeLoop()
+
+ void FFmpegDecoderAudio::decodeLoop()
+ {
+- const bool skip_audio = ! validContext() || ! m_audio_sink.valid();
++ const bool skip_audio = !validContext() || !m_audio_sink.valid();
+
+- if (! skip_audio && ! m_audio_sink->playing())
++ if (!skip_audio && !m_audio_sink->playing())
+ {
+ m_clocks.audioSetDelay(m_audio_sink->getDelay());
+ m_audio_sink->play();
+@@ -361,17 +342,17 @@ void FFmpegDecoderAudio::decodeLoop()
+ m_clocks.audioDisable();
+ }
+
+- while (! m_exit)
++ while (!m_exit)
+ {
+
+- if(m_paused)
++ if (m_paused)
+ {
+ m_clocks.pause(true);
+ m_pause_timer.setStartTick();
+
+- while(m_paused && !m_exit)
++ while (m_paused && !m_exit)
+ {
+- microSleep(10000);
++ OpenThreads::Thread::microSleep(10000);
+ }
+
+ m_clocks.setPauseTime(m_pause_timer.time_s());
+@@ -387,12 +368,30 @@ void FFmpegDecoderAudio::decodeLoop()
+ if (packet.valid())
+ packet.clear();
+ }
+- // Else, just idle in this thread.
+- // Note: If m_audio_sink has an audio callback, this thread will still be awaken
+- // from time to time to refill the audio buffer.
+ else
+ {
+- OpenThreads::Thread::microSleep(10000);
++ uint8_t audio_buffer[AVCODEC_MAX_AUDIO_FRAME_SIZE * 3 / 2];
++ size_t audio_data_size = decodeFrame(audio_buffer, sizeof(audio_buffer));
++
++ if (audio_data_size > 0)
++ {
++ // Handle the decoded audio data here.
++ // Since the AudioSink class does not have a specific method for handling raw buffers,
++ // we'll assume you have another method or need to implement this part accordingly.
++
++ // This part needs to match the actual implementation or subclass method
++ // If you have an actual derived class with specific methods, you should call them here.
++ // For example, if there's a method to write raw audio data, use it.
++
++ // Placeholder for actual implementation
++ // Assuming m_audio_sink->writeAudioData(audio_buffer, audio_data_size);
++
++ // OpenThreads::Thread::microSleep(10000); // Uncomment if you want to add a delay
++ }
++ else
++ {
++ OpenThreads::Thread::microSleep(10000);
++ }
+ }
+ }
+ }
+@@ -433,7 +432,7 @@ void FFmpegDecoderAudio::adjustBufferEndPts(const size
+
+
+
+-size_t FFmpegDecoderAudio::decodeFrame(void * const buffer, const size_t size)
++size_t FFmpegDecoderAudio::decodeFrame(void *buffer, const size_t size)
+ {
+ for (;;)
+ {
+@@ -443,7 +442,7 @@ size_t FFmpegDecoderAudio::decodeFrame(void * const bu
+ {
+ int data_size = size;
+
+- const int bytes_decoded = decode_audio(m_context, reinterpret_cast<int16_t*>(buffer), &data_size, m_packet_data, m_bytes_remaining, m_swr_context, m_out_sample_rate, m_out_nb_channels, m_out_sample_format);
++ const int bytes_decoded = decode_audio(m_context, reinterpret_cast<int16_t *>(buffer), &data_size, m_packet_data, m_bytes_remaining, m_swr_context, m_out_sample_rate, m_out_nb_channels, m_out_sample_format);
+
+ if (bytes_decoded < 0)
+ {
+@@ -503,10 +502,6 @@ size_t FFmpegDecoderAudio::decodeFrame(void * const bu
+ }
+ }
+
+-
+-/**
+- *
+- */
+ osg::AudioStream::SampleFormat FFmpegDecoderAudio::sampleFormat() const
+ {
+ switch (m_out_sample_format)
+@@ -515,19 +510,14 @@ osg::AudioStream::SampleFormat FFmpegDecoderAudio::sam
+ throw std::runtime_error("invalid audio format AV_SAMPLE_FMT_NONE");
+ case AV_SAMPLE_FMT_U8:
+ return osg::AudioStream::SAMPLE_FORMAT_U8;
+- break;
+ case AV_SAMPLE_FMT_S16:
+ return osg::AudioStream::SAMPLE_FORMAT_S16;
+- break;
+ case AV_SAMPLE_FMT_S32:
+ return osg::AudioStream::SAMPLE_FORMAT_S32;
+- break;
+ case AV_SAMPLE_FMT_FLT:
+ return osg::AudioStream::SAMPLE_FORMAT_F32;
+- break;
+ case AV_SAMPLE_FMT_DBL:
+ throw std::runtime_error("unhandled audio format AV_SAMPLE_FMT_DBL");
+-
+ default:
+ throw std::runtime_error("unknown audio format");
+ }
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.hpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.hpp
new file mode 100644
index 000000000000..5679e5baaad7
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderAudio.hpp
@@ -0,0 +1,131 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoderAudio.hpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoderAudio.hpp
+@@ -1,20 +1,19 @@
+-
+ #ifndef HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_AUDIO_H
+ #define HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_AUDIO_H
+
+-#include <OpenThreads/Thread>
++extern "C" {
++#include <libavcodec/avcodec.h>
++#include <libswresample/swresample.h>
++}
+
++#include <OpenThreads/Thread>
+ #include <osg/Timer>
+-
++#include <osg/AudioStream>
+ #include "FFmpegClocks.hpp"
+ #include "FFmpegPacket.hpp"
+ #include "FFmpegParameters.hpp"
+-
+-#include <osg/AudioStream>
+-
+ #include "BoundedMessageQueue.hpp"
+
+-
+ namespace osgFFmpeg {
+
+
+@@ -24,12 +23,12 @@ class FFmpegDecoderAudio : public OpenThreads::Thread
+ public:
+
+ typedef BoundedMessageQueue<FFmpegPacket> PacketQueue;
+- typedef void (* PublishFunc) (const FFmpegDecoderAudio & decoder, void * user_data);
++ typedef void (*PublishFunc)(const FFmpegDecoderAudio &decoder, void *user_data);
+
+- FFmpegDecoderAudio(PacketQueue & packets, FFmpegClocks & clocks);
++ FFmpegDecoderAudio(PacketQueue &packets, FFmpegClocks &clocks);
+ ~FFmpegDecoderAudio();
+
+- void open(AVStream * stream, FFmpegParameters* parameters);
++ void open(AVStream *stream, FFmpegParameters *parameters);
+ void pause(bool pause);
+ void close(bool waitForThreadToExit);
+
+@@ -39,7 +38,7 @@ class FFmpegDecoderAudio : public OpenThreads::Thread
+ virtual void run();
+
+ void setAudioSink(osg::ref_ptr<osg::AudioSink> audio_sink);
+- void fillBuffer(void * buffer, size_t size);
++ void fillBuffer(void *buffer, size_t size);
+
+ bool validContext() const;
+ int frequency() const;
+@@ -53,37 +52,37 @@ class FFmpegDecoderAudio : public OpenThreads::Thread
+
+ void decodeLoop();
+ void adjustBufferEndPts(size_t buffer_size);
+- size_t decodeFrame(void * buffer, size_t size);
++ size_t decodeFrame(void *buffer, size_t size);
+
+
+- PacketQueue & m_packets;
+- FFmpegClocks & m_clocks;
+- AVStream * m_stream;
+- AVCodecContext * m_context;
+- FFmpegPacket m_packet;
+- const uint8_t * m_packet_data;
+- int m_bytes_remaining;
++ PacketQueue &m_packets;
++ FFmpegClocks &m_clocks;
++ AVStream *m_stream;
++ AVCodecContext *m_context;
++ FFmpegPacket m_packet;
++ const uint8_t *m_packet_data;
++ int m_bytes_remaining;
+
+- Buffer m_audio_buffer;
+- size_t m_audio_buf_size;
+- size_t m_audio_buf_index;
++ Buffer m_audio_buffer;
++ size_t m_audio_buf_size;
++ size_t m_audio_buf_index;
+
+- int m_in_sample_rate;
+- int m_in_nb_channels;
+- AVSampleFormat m_in_sample_format;
+- int m_out_sample_rate;
+- int m_out_nb_channels;
+- AVSampleFormat m_out_sample_format;
++ int m_in_sample_rate;
++ int m_in_nb_channels;
++ AVSampleFormat m_in_sample_format;
++ int m_out_sample_rate;
++ int m_out_nb_channels;
++ AVSampleFormat m_out_sample_format;
+
+- SinkPtr m_audio_sink;
++ SinkPtr m_audio_sink;
+
+- osg::Timer m_pause_timer;
++ osg::Timer m_pause_timer;
+
+- bool m_end_of_stream;
+- bool m_paused;
+- volatile bool m_exit;
++ bool m_end_of_stream;
++ bool m_paused;
++ volatile bool m_exit;
+
+- SwrContext * m_swr_context; // Sw resampling context
++ SwrContext *m_swr_context; // Sw resampling context
+ };
+
+
+@@ -92,7 +91,7 @@ inline bool FFmpegDecoderAudio::validContext() const
+
+ inline bool FFmpegDecoderAudio::validContext() const
+ {
+- return m_context != 0;
++ return m_context != nullptr;
+ }
+
+
+@@ -110,5 +109,5 @@ inline int FFmpegDecoderAudio::nbChannels() const
+ } // namespace osgFFmpeg
+
+
+-
+ #endif // HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_AUDIO_H
++
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.cpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.cpp
new file mode 100644
index 000000000000..363ffe1028f4
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.cpp
@@ -0,0 +1,440 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp
+@@ -6,38 +6,35 @@
+ #include <stdexcept>
+ #include <string.h>
+
++extern "C" {
++#include <libavutil/imgutils.h>
++}
++
+ namespace osgFFmpeg {
+
+-// TODO - add support for using RGB or RGBA pixel format.
+-// Note from Jason Daly in a osg-submissions thread, "The pix_fmt field of AVCodecContext will indicate the pixel format of the decoded video"
+-
+-
+ FFmpegDecoderVideo::FFmpegDecoderVideo(PacketQueue & packets, FFmpegClocks & clocks) :
+ m_packets(packets),
+ m_clocks(clocks),
+- m_stream(0),
+- m_context(0),
+- m_codec(0),
+- m_packet_data(0),
++ m_stream(nullptr),
++ m_context(nullptr),
++ m_codec(nullptr),
++ m_packet_data(nullptr),
+ m_bytes_remaining(0),
+ m_packet_pts(AV_NOPTS_VALUE),
+ m_writeBuffer(0),
+- m_user_data(0),
+- m_publish_func(0),
++ m_user_data(nullptr),
++ m_publish_func(nullptr),
+ m_paused(true),
+ m_exit(false)
+ #ifdef USE_SWSCALE
+- ,m_swscale_ctx(0)
++ ,m_swscale_ctx(nullptr)
+ #endif
+ {
+-
+ }
+
+-
+-
+ FFmpegDecoderVideo::~FFmpegDecoderVideo()
+ {
+- OSG_INFO<<"Destructing FFmpegDecoderVideo..."<<std::endl;
++ OSG_INFO << "Destructing FFmpegDecoderVideo..." << std::endl;
+
+ this->close(true);
+
+@@ -45,24 +42,23 @@ FFmpegDecoderVideo::~FFmpegDecoderVideo()
+ if (m_swscale_ctx)
+ {
+ sws_freeContext(m_swscale_ctx);
+- m_swscale_ctx = 0;
++ m_swscale_ctx = nullptr;
+ }
+ #endif
+
+ if (m_context)
+ {
+- avcodec_close(m_context);
++ avcodec_free_context(&m_context);
+ }
+
+- OSG_INFO<<"Destructed FFmpegDecoderVideo"<<std::endl;
++ OSG_INFO << "Destructed FFmpegDecoderVideo" << std::endl;
+ }
+
+-
+-
+ void FFmpegDecoderVideo::open(AVStream * const stream)
+ {
+ m_stream = stream;
+- m_context = stream->codec;
++ m_context = avcodec_alloc_context3(nullptr);
++ avcodec_parameters_to_context(m_context, stream->codecpar);
+
+ // Trust the video size given at this point
+ // (avcodec_open seems to sometimes return a 0x0 size)
+@@ -74,43 +70,34 @@ void FFmpegDecoderVideo::open(AVStream * const stream)
+ m_alpha_channel = (m_context->pix_fmt == AV_PIX_FMT_YUVA420P);
+
+ // Find out the framerate
+- #if LIBAVCODEC_VERSION_MAJOR >= 56
+ m_frame_rate = av_q2d(stream->avg_frame_rate);
+- #else
+- m_frame_rate = av_q2d(stream->r_frame_rate);
+- #endif
+
+ // Find the decoder for the video stream
+ m_codec = avcodec_find_decoder(m_context->codec_id);
+
+- if (m_codec == 0)
++ if (m_codec == nullptr)
+ throw std::runtime_error("avcodec_find_decoder() failed");
+
+- // Inform the codec that we can handle truncated bitstreams
+- //if (p_codec->capabilities & CODEC_CAP_TRUNCATED)
+- // m_context->flags |= CODEC_FLAG_TRUNCATED;
+-
+ // Open codec
+- if (avcodec_open2(m_context, m_codec, NULL) < 0)
+- throw std::runtime_error("avcodec_open() failed");
++ if (avcodec_open2(m_context, m_codec, nullptr) < 0)
++ throw std::runtime_error("avcodec_open2() failed");
+
+ // Allocate video frame
+ m_frame.reset(av_frame_alloc());
+
+ // Allocate converted RGB frame
+ m_frame_rgba.reset(av_frame_alloc());
+- m_buffer_rgba[0].resize(avpicture_get_size(AV_PIX_FMT_RGB24, width(), height()));
++ m_buffer_rgba[0].resize(av_image_get_buffer_size(AV_PIX_FMT_RGB24, width(), height(), 1));
+ m_buffer_rgba[1].resize(m_buffer_rgba[0].size());
+
+ // Assign appropriate parts of the buffer to image planes in m_frame_rgba
+- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[0])[0], AV_PIX_FMT_RGB24, width(), height());
++ av_image_fill_arrays(m_frame_rgba->data, m_frame_rgba->linesize, &(m_buffer_rgba[0])[0], AV_PIX_FMT_RGB24, width(), height(), 1);
+
+- // Override get_buffer()/release_buffer() from codec context in order to retrieve the PTS of each frame.
++ // Override get_buffer2() from codec context in order to retrieve the PTS of each frame.
+ m_context->opaque = this;
+ m_context->get_buffer2 = getBuffer;
+ }
+
+-
+ void FFmpegDecoderVideo::close(bool waitForThreadToExit)
+ {
+ if (isRunning())
+@@ -123,10 +110,7 @@ void FFmpegDecoderVideo::pause(bool pause)
+
+ void FFmpegDecoderVideo::pause(bool pause)
+ {
+- if(pause)
+- m_paused = true;
+- else
+- m_paused = false;
++ m_paused = pause;
+ }
+
+ void FFmpegDecoderVideo::run()
+@@ -135,102 +119,60 @@ void FFmpegDecoderVideo::run()
+ {
+ decodeLoop();
+ }
+-
+- catch (const std::exception & error)
++ catch (const std::exception &error)
+ {
+ OSG_WARN << "FFmpegDecoderVideo::run : " << error.what() << std::endl;
+ }
+-
+ catch (...)
+ {
+ OSG_WARN << "FFmpegDecoderVideo::run : unhandled exception" << std::endl;
+ }
+ }
+
+-
+-
+ void FFmpegDecoderVideo::decodeLoop()
+ {
+ FFmpegPacket packet;
+ double pts;
+
+- while (! m_exit)
++ while (!m_exit)
+ {
+ // Work on the current packet until we have decoded all of it
+-
+ while (m_bytes_remaining > 0)
+ {
+ // Save global PTS to be stored in m_frame via getBuffer()
+-
+ m_packet_pts = packet.packet.pts;
+
+ // Decode video frame
+-
+ int frame_finished = 0;
++ const int bytes_decoded = avcodec_receive_frame(m_context, m_frame.get());
+
+- // We want to use the entire packet since some codecs will require extra information for decoding
+- const int bytes_decoded = avcodec_decode_video2(m_context, m_frame.get(), &frame_finished, &(packet.packet));
++ if (bytes_decoded == 0)
++ {
++ frame_finished = 1;
++ m_bytes_remaining -= bytes_decoded;
++ m_packet_data += bytes_decoded;
++ }
++ else if (bytes_decoded == AVERROR(EAGAIN))
++ {
++ break;
++ }
++ else if (bytes_decoded < 0)
++ {
++ throw std::runtime_error("avcodec_receive_frame() failed");
++ }
+
+- if (bytes_decoded < 0)
+- throw std::runtime_error("avcodec_decode_video failed()");
+-
+- m_bytes_remaining -= bytes_decoded;
+- m_packet_data += bytes_decoded;
+-
+ // Publish the frame if we have decoded a complete frame
+ if (frame_finished)
+ {
+-#if LIBAVCODEC_VERSION_INT <= AV_VERSION_INT(57,24,102)
+- //ffmpeg-3.0 and below
+- AVRational timebase;
+- // Find out the frame pts
+- if (m_frame->pts != int64_t(AV_NOPTS_VALUE))
++ if (m_frame->pts != AV_NOPTS_VALUE)
+ {
+- pts = m_frame->pts;
+- timebase = m_context->time_base;
+- }
+- else if (packet.packet.dts == int64_t(AV_NOPTS_VALUE) &&
+- m_frame->opaque != 0 &&
+- *reinterpret_cast<const int64_t*>(m_frame->opaque) != int64_t(AV_NOPTS_VALUE))
+- {
+- pts = *reinterpret_cast<const int64_t*>(m_frame->opaque);
+- timebase = m_stream->time_base;
+- }
+- else if (packet.packet.dts != int64_t(AV_NOPTS_VALUE))
+- {
+- pts = packet.packet.dts;
+- timebase = m_stream->time_base;
+- }
+- else
+- {
+- pts = 0;
+- timebase = m_context->time_base;
+- }
+-
+- pts *= av_q2d(timebase);
+-
+-#else
+- //above ffmpeg-3.0
+- // Find out the frame pts
+- if (m_frame->pts != int64_t(AV_NOPTS_VALUE))
+- {
+ pts = av_q2d(m_stream->time_base) * m_frame->pts;
+ }
+- else if (packet.packet.dts == int64_t(AV_NOPTS_VALUE) &&
+- m_frame->opaque != 0 &&
+- *reinterpret_cast<const int64_t*>(m_frame->opaque) != int64_t(AV_NOPTS_VALUE))
+- {
+- pts = av_q2d(m_stream->time_base) * *reinterpret_cast<const int64_t*>(m_frame->opaque);
+- }
+- else if (packet.packet.dts != int64_t(AV_NOPTS_VALUE))
+- {
+- pts = av_q2d(m_stream->time_base) * packet.packet.dts;
+- }
+ else
+ {
+ pts = 0;
+ }
+-#endif
++
+ const double synched_pts = m_clocks.videoSynchClock(m_frame.get(), av_q2d(av_inv_q(m_context->framerate)), pts);
+ const double frame_delay = m_clocks.videoRefreshSchedule(synched_pts);
+
+@@ -238,13 +180,12 @@ void FFmpegDecoderVideo::decodeLoop()
+ }
+ }
+
+- while(m_paused && !m_exit)
++ while (m_paused && !m_exit)
+ {
+- microSleep(10000);
++ OpenThreads::Thread::microSleep(10000);
+ }
+
+ // Get the next packet
+-
+ pts = 0;
+
+ if (packet.valid())
+@@ -253,12 +194,13 @@ void FFmpegDecoderVideo::decodeLoop()
+ bool is_empty = true;
+ packet = m_packets.timedPop(is_empty, 10);
+
+- if (! is_empty)
++ if (!is_empty)
+ {
+ if (packet.type == FFmpegPacket::PACKET_DATA)
+ {
+ m_bytes_remaining = packet.packet.size;
+ m_packet_data = packet.packet.data;
++ avcodec_send_packet(m_context, &(packet.packet));
+ }
+ else if (packet.type == FFmpegPacket::PACKET_FLUSH)
+ {
+@@ -268,8 +210,6 @@ void FFmpegDecoderVideo::decodeLoop()
+ }
+ }
+
+-
+-
+ void FFmpegDecoderVideo::findAspectRatio()
+ {
+ float ratio = 0.0f;
+@@ -283,65 +223,52 @@ void FFmpegDecoderVideo::findAspectRatio()
+ m_pixel_aspect_ratio = ratio;
+ }
+
+-int FFmpegDecoderVideo::convert(AVPicture *dst, int dst_pix_fmt, AVPicture *src,
+- int src_pix_fmt, int src_width, int src_height)
++int FFmpegDecoderVideo::convert(AVFrame *dst, int dst_pix_fmt, AVFrame *src,
++ int src_pix_fmt, int src_width, int src_height)
+ {
+ osg::Timer_t startTick = osg::Timer::instance()->tick();
+ #ifdef USE_SWSCALE
+- if (m_swscale_ctx==0)
++ if (m_swscale_ctx == nullptr)
+ {
+- m_swscale_ctx = sws_getContext(src_width, src_height, (AVPixelFormat) src_pix_fmt,
+- src_width, src_height, (AVPixelFormat) dst_pix_fmt,
+- /*SWS_BILINEAR*/ SWS_BICUBIC, NULL, NULL, NULL);
++ m_swscale_ctx = sws_getContext(src_width, src_height, (AVPixelFormat)src_pix_fmt,
++ src_width, src_height, (AVPixelFormat)dst_pix_fmt,
++ SWS_BICUBIC, nullptr, nullptr, nullptr);
+ }
+
++ OSG_DEBUG << "Using sws_scale ";
+
+- OSG_DEBUG<<"Using sws_scale ";
+-
+- int result = sws_scale(m_swscale_ctx,
+- (src->data), (src->linesize), 0, src_height,
+- (dst->data), (dst->linesize));
++ int result = sws_scale(m_swscale_ctx,
++ src->data, src->linesize, 0, src_height,
++ dst->data, dst->linesize);
+ #else
+
+- OSG_DEBUG<<"Using img_convert ";
++ OSG_DEBUG << "Using img_convert ";
+
+- int result = img_convert(dst, dst_pix_fmt, src,
+- src_pix_fmt, src_width, src_height);
+-
++ int result = av_image_copy_to_buffer(dst->data, dst_pix_fmt, src->data, src_pix_fmt, src_width, src_height);
+ #endif
+ osg::Timer_t endTick = osg::Timer::instance()->tick();
+- OSG_DEBUG<<" time = "<<osg::Timer::instance()->delta_m(startTick,endTick)<<"ms"<<std::endl;
++ OSG_DEBUG << " time = " << osg::Timer::instance()->delta_m(startTick, endTick) << "ms" << std::endl;
+
+ return result;
+ }
+
+-
+ void FFmpegDecoderVideo::publishFrame(const double delay, bool audio_disabled)
+ {
+ // If no publishing function, just ignore the frame
+- if (m_publish_func == 0)
++ if (m_publish_func == nullptr)
+ return;
+
+-#if 1
+- // new code from Jean-Sebasiten Guay - needs testing as we're unclear on the best solution
+ // If the display delay is too small, we better skip the frame.
+ if (!audio_disabled && delay < -0.010)
+ return;
+-#else
+- // original solution that hung on video stream over web.
+- // If the display delay is too small, we better skip the frame.
+- if (delay < -0.010)
+- return;
+-#endif
+
+- AVPicture * const src = (AVPicture *) m_frame.get();
+- AVPicture * const dst = (AVPicture *) m_frame_rgba.get();
++ AVFrame *src = m_frame.get();
++ AVFrame *dst = m_frame_rgba.get();
+
+ // Assign appropriate parts of the buffer to image planes in m_frame_rgba
+- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[m_writeBuffer])[0], AV_PIX_FMT_RGB24, width(), height());
++ av_image_fill_arrays(dst->data, dst->linesize, &(m_buffer_rgba[m_writeBuffer])[0], AV_PIX_FMT_RGB24, width(), height(), 1);
+
+ // Convert YUVA420p (i.e. YUV420p plus alpha channel) using our own routine
+-
+ if (m_context->pix_fmt == AV_PIX_FMT_YUVA420P)
+ yuva420pToRgba(dst, src, width(), height());
+ else
+@@ -363,26 +290,25 @@ void FFmpegDecoderVideo::publishFrame(const double del
+ i_delay -= micro_delay;
+ }
+
+- m_writeBuffer = 1-m_writeBuffer;
++ m_writeBuffer = 1 - m_writeBuffer;
+
+- m_publish_func(* this, m_user_data);
++ m_publish_func(*this, m_user_data);
+ }
+
+-
+-
+-void FFmpegDecoderVideo::yuva420pToRgba(AVPicture * const dst, AVPicture * const src, int width, int height)
++void FFmpegDecoderVideo::yuva420pToRgba(AVFrame * const dst, AVFrame * const src, int width, int height)
+ {
+ convert(dst, AV_PIX_FMT_RGB24, src, m_context->pix_fmt, width, height);
+
+ const size_t bpp = 4;
+
+- uint8_t * a_dst = dst->data[0] + 3;
++ uint8_t *a_dst = dst->data[0] + 3;
+
+- for (int h = 0; h < height; ++h) {
++ for (int h = 0; h < height; ++h)
++ {
++ const uint8_t *a_src = src->data[3] + h * src->linesize[3];
+
+- const uint8_t * a_src = src->data[3] + h * src->linesize[3];
+-
+- for (int w = 0; w < width; ++w) {
++ for (int w = 0; w < width; ++w)
++ {
+ *a_dst = *a_src;
+ a_dst += bpp;
+ a_src += 1;
+@@ -396,7 +322,7 @@ int FFmpegDecoderVideo::getBuffer(AVCodecContext * con
+ const FFmpegDecoderVideo * const this_ = reinterpret_cast<const FFmpegDecoderVideo*>(context->opaque);
+
+ const int result = avcodec_default_get_buffer2(context, picture, flags);
+- int64_t * p_pts = reinterpret_cast<int64_t*>( av_malloc(sizeof(int64_t)) );
++ int64_t *p_pts = reinterpret_cast<int64_t*>(av_malloc(sizeof(int64_t)));
+
+ *p_pts = this_->m_packet_pts;
+ picture->opaque = p_pts;
+@@ -415,3 +341,4 @@ void FFmpegDecoderVideo::freeBuffer(void *opaque, uint
+ }
+
+ } // namespace osgFFmpeg
++
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.hpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.hpp
new file mode 100644
index 000000000000..59d4ef26d5ff
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegDecoderVideo.hpp
@@ -0,0 +1,62 @@
+--- src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp
+@@ -1,4 +1,3 @@
+-
+ #ifndef HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_VIDEO_H
+ #define HEADER_GUARD_OSGFFMPEG_FFMPEG_DECODER_VIDEO_H
+
+@@ -15,11 +14,11 @@ class FramePtr
+
+ class FramePtr
+ {
+- public:
++ public:
+
+ typedef AVFrame T;
+
+- explicit FramePtr() : _ptr(0) {}
++ explicit FramePtr() : _ptr(nullptr) {}
+ explicit FramePtr(T* ptr) : _ptr(ptr) {}
+
+ ~FramePtr()
+@@ -43,14 +42,11 @@ class FramePtr
+
+ void cleanup()
+ {
+- if (_ptr) av_free(_ptr);
+- _ptr = 0;
++ if (_ptr) av_frame_free(&_ptr);
++ _ptr = nullptr;
+ }
+
+-
+-
+ protected:
+-
+ T* _ptr;
+ };
+
+@@ -88,12 +84,11 @@ class FFmpegDecoderVideo : public OpenThreads::Thread
+ void findAspectRatio();
+ void publishFrame(double delay, bool audio_disabled);
+ double synchronizeVideo(double pts);
+- void yuva420pToRgba(AVPicture *dst, AVPicture *src, int width, int height);
++ void yuva420pToRgba(AVFrame* dst, AVFrame* src, int width, int height);
+
+- int convert(AVPicture *dst, int dst_pix_fmt, AVPicture *src,
++ int convert(AVFrame* dst, int dst_pix_fmt, AVFrame* src,
+ int src_pix_fmt, int src_width, int src_height);
+
+-
+ static int getBuffer(AVCodecContext * context, AVFrame * picture, int flags);
+ static void freeBuffer(void * opaque, uint8_t *data);
+
+@@ -101,7 +96,7 @@ class FFmpegDecoderVideo : public OpenThreads::Thread
+ FFmpegClocks & m_clocks;
+ AVStream * m_stream;
+ AVCodecContext * m_context;
+- AVCodec * m_codec;
++ const AVCodec* m_codec;
+ const uint8_t * m_packet_data;
+ int m_bytes_remaining;
+ int64_t m_packet_pts;
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegPacket.hpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegPacket.hpp
new file mode 100644
index 000000000000..daa4932f1e6f
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegPacket.hpp
@@ -0,0 +1,11 @@
+--- src/osgPlugins/ffmpeg/FFmpegPacket.hpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegPacket.hpp
+@@ -42,7 +42,7 @@ namespace osgFFmpeg
+ void clear()
+ {
+ if (packet.data != 0)
+- av_free_packet(&packet);
++ av_packet_unref(&packet);
+
+ release();
+ }
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegParameters.cpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegParameters.cpp
new file mode 100644
index 000000000000..e2a09c3959d0
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_FFmpegParameters.cpp
@@ -0,0 +1,37 @@
+--- src/osgPlugins/ffmpeg/FFmpegParameters.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/FFmpegParameters.cpp
+@@ -1,4 +1,3 @@
+-
+ #include "FFmpegParameters.hpp"
+
+ #include <string>
+@@ -21,11 +20,8 @@ inline AVPixelFormat osg_av_get_pix_fmt(const char *na
+
+ inline AVPixelFormat osg_av_get_pix_fmt(const char *name) { return av_get_pix_fmt(name); }
+
+-
+ namespace osgFFmpeg {
+
+-
+-
+ FFmpegParameters::FFmpegParameters() :
+ m_format(0),
+ m_context(0),
+@@ -40,7 +36,6 @@ FFmpegParameters::~FFmpegParameters()
+ av_dict_free(&m_options);
+ }
+
+-
+ void FFmpegParameters::parse(const std::string& name, const std::string& value)
+ {
+ if (value.empty())
+@@ -52,7 +47,8 @@ void FFmpegParameters::parse(const std::string& name,
+ #ifndef ANDROID
+ avdevice_register_all();
+ #endif
+- m_format = av_find_input_format(value.c_str());
++ const AVInputFormat* format = av_find_input_format(value.c_str());
++ m_format = const_cast<AVInputFormat*>(format);
+ if (!m_format)
+ OSG_NOTICE<<"Failed to apply input video format: "<<value.c_str()<<std::endl;
+ }
diff --git a/graphics/osg/files/patch-src_osgPlugins_ffmpeg_ReaderWriterFFmpeg.cpp b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_ReaderWriterFFmpeg.cpp
new file mode 100644
index 000000000000..6bf9c3e11141
--- /dev/null
+++ b/graphics/osg/files/patch-src_osgPlugins_ffmpeg_ReaderWriterFFmpeg.cpp
@@ -0,0 +1,100 @@
+--- src/osgPlugins/ffmpeg/ReaderWriterFFmpeg.cpp.orig 2022-12-01 18:17:31 UTC
++++ src/osgPlugins/ffmpeg/ReaderWriterFFmpeg.cpp
+@@ -10,7 +10,6 @@
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * OpenSceneGraph Public License for more details.
+ */
+-
+ #include "FFmpegHeaders.hpp"
+ #include "FFmpegImageStream.hpp"
+ #include "FFmpegParameters.hpp"
+@@ -19,13 +18,6 @@
+ #include <osgDB/FileNameUtils>
+ #include <osgDB/FileUtils>
+
+-
+-#if LIBAVCODEC_VERSION_MAJOR >= 53 || \
+- (LIBAVCODEC_VERSION_MAJOR==52 && LIBAVCODEC_VERSION_MINOR>=30) || \
+- (LIBAVCODEC_VERSION_MAJOR==52 && LIBAVCODEC_VERSION_MINOR==20 && LIBAVCODEC_VERSION_MICRO >= 1)
+- #define USE_AV_LOCK_MANAGER
+-#endif
+-
+ extern "C" {
+
+ static void log_to_osg(void* /*ptr*/, int level, const char *fmt, va_list vl)
+@@ -100,26 +92,21 @@ class ReaderWriterFFmpeg : public osgDB::ReaderWriter
+
+ supportsOption("format", "Force setting input format (e.g. vfwcap for Windows webcam)");
+ supportsOption("pixel_format", "Set pixel format");
+- supportsOption("frame_size", "Set frame size (e.g. 320x240)");
++ supportsOption("frame_size", "Set frame size (e.g. 320x240)");
+ supportsOption("frame_rate", "Set frame rate (e.g. 25)");
+ // WARNING: This option is kept for backwards compatibility only, use out_sample_rate instead!
+ supportsOption("audio_sample_rate", "Set audio sampling rate (e.g. 44100)");
+ supportsOption("out_sample_format", "Set the output sample format (e.g. AV_SAMPLE_FMT_S16)");
+- supportsOption("out_sample_rate", "Set the output sample rate or frequency in Hz (e.g. 48000)");
++ supportsOption("out_sample_rate", "Set the output sample rate or frequency in Hz (e.g. 48000)");
+ supportsOption("out_nb_channels", "Set the output number of channels (e.g. 2 for stereo)");
+- supportsOption("context", "AVIOContext* for custom IO");
+- supportsOption("mad", "Max analyze duration (seconds)");
+- supportsOption("rtsp_transport", "RTSP transport (udp, tcp, udp_multicast or http)");
++ supportsOption("context", "AVIOContext* for custom IO");
++ supportsOption("mad", "Max analyze duration (seconds)");
++ supportsOption("rtsp_transport", "RTSP transport (udp, tcp, udp_multicast or http)");
+
+ av_log_set_callback(log_to_osg);
+
+-#ifdef USE_AV_LOCK_MANAGER
+- // enable thread locking
+- av_lockmgr_register(&lockMgr);
+-#endif
+ // Register all FFmpeg formats/codecs
+- av_register_all();
+-
++ avdevice_register_all();
+ avformat_network_init();
+ }
+
+@@ -218,41 +205,7 @@ class ReaderWriterFFmpeg : public osgDB::ReaderWriter
+ }
+ }
+ }
+-
+-#ifdef USE_AV_LOCK_MANAGER
+- static int lockMgr(void **mutex, enum AVLockOp op)
+- {
+- // returns are 0 success
+- OpenThreads::Mutex **m=(OpenThreads::Mutex**)mutex;
+- if (op==AV_LOCK_CREATE)
+- {
+- *m=new OpenThreads::Mutex;
+- return !*m;
+- }
+- else if (op==AV_LOCK_DESTROY)
+- {
+- delete *m;
+- return 0;
+- }
+- else if (op==AV_LOCK_OBTAIN)
+- {
+- (*m)->lock();
+- return 0;
+- }
+- else if (op==AV_LOCK_RELEASE)
+- {
+- (*m)->unlock();
+- return 0;
+- }
+- else
+- {
+- return -1;
+- }
+- }
+-#endif
+-
+ };
+
+-
+-
+ REGISTER_OSGPLUGIN(ffmpeg, ReaderWriterFFmpeg)
++
diff --git a/graphics/py-mayavi/Makefile b/graphics/py-mayavi/Makefile
index 4231c09f8271..3436526944e5 100644
--- a/graphics/py-mayavi/Makefile
+++ b/graphics/py-mayavi/Makefile
@@ -19,6 +19,8 @@ LICENSE_FILE_LGPL3= ${WRKSRC}/image_LICENSE_OOo.txt
LICENSE_FILE_BSD2CLAUSE= ${WRKSRC}/LICENSE_YORICK.txt
LICENSE_FILE_APACHE11= ${WRKSRC}/LICENSE_COLORBREWER.txt
+BROKEN_i386= stage fails: Building TVTK classes... Fatal Python error: Illegal instruction
+
BUILD_DEPENDS= ${PYNUMPY} \
${PY_SPHINX} \
sphinx-build:textproc/py-sphinx@${PY_FLAVOR}
diff --git a/graphics/py-pycollada/Makefile b/graphics/py-pycollada/Makefile
index 37e4ea3a82bc..c85d95ded77c 100644
--- a/graphics/py-pycollada/Makefile
+++ b/graphics/py-pycollada/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pycollada
DISTVERSION= 0.6
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= graphics python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -21,6 +21,6 @@ USE_PYTHON= autoplist distutils
OPTIONS_DEFINE= LXML
LXML_DESC= Uses lxml for XML loading, construction, and saving.
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/graphics/py-termtosvg/Makefile b/graphics/py-termtosvg/Makefile
index 947259a2c182..3d6b89d40203 100644
--- a/graphics/py-termtosvg/Makefile
+++ b/graphics/py-termtosvg/Makefile
@@ -1,6 +1,6 @@
PORTNAME= termtosvg
PORTVERSION= 1.1.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= graphics python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/nbedos/termtosvg
LICENSE= BSD3CLAUSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}svgwrite>=0:graphics/py-svgwrite@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyte>=0:devel/py-pyte@${PY_FLAVOR}
USES= python
diff --git a/graphics/py-tifffile/Makefile b/graphics/py-tifffile/Makefile
index ff9827739709..b97efc5fe285 100644
--- a/graphics/py-tifffile/Makefile
+++ b/graphics/py-tifffile/Makefile
@@ -1,5 +1,6 @@
PORTNAME= tifffile
PORTVERSION= 2025.6.1
+PORTREVISION= 1
CATEGORIES= graphics python
MASTER_SITES= PYPI \
https://github.com/cgohlke/tifffile/releases/download/v${PORTVERSION}/
@@ -30,7 +31,7 @@ ZARR_DESC= Access zarr store
CODECS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}imagecodecs>=2024.12.30:graphics/py-imagecodecs@${PY_FLAVOR}
PLOT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=0:math/py-matplotlib@${PY_FLAVOR}
XML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0:devel/py-defusedxml@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
ZARR_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}fsspec>=0:filesystems/py-fsspec@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}kerchunk>=0:filesystems/py-kerchunk@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}zarr>=3:devel/py-zarr@${PY_FLAVOR}
diff --git a/graphics/swappy/Makefile b/graphics/swappy/Makefile
index 4e0543163209..764597693a1f 100644
--- a/graphics/swappy/Makefile
+++ b/graphics/swappy/Makefile
@@ -1,10 +1,10 @@
PORTNAME= swappy
DISTVERSIONPREFIX= v
DISTVERSION= 1.5.1
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= graphics wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= Snapshot editing for Wayland (a la Snappy on macOS)
WWW= https://github.com/jtheoof/swappy
diff --git a/irc/znc/Makefile b/irc/znc/Makefile
index 0e5fc948855f..85ab3b4772a1 100644
--- a/irc/znc/Makefile
+++ b/irc/znc/Makefile
@@ -1,5 +1,5 @@
PORTNAME= znc
-DISTVERSION= 1.10.0
+DISTVERSION= 1.10.1
CATEGORIES= irc
MASTER_SITES= https://znc.in/releases/ \
https://znc.in/releases/archive/
diff --git a/irc/znc/distinfo b/irc/znc/distinfo
index 578ba82c281c..a04c801f1e69 100644
--- a/irc/znc/distinfo
+++ b/irc/znc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749582665
-SHA256 (znc-1.10.0.tar.gz) = be65ad9b62ef545a7e9486f2f74134edc53ba513ad43a69d9d8b476605336b19
-SIZE (znc-1.10.0.tar.gz) = 2305040
+TIMESTAMP = 1751491897
+SHA256 (znc-1.10.1.tar.gz) = 4e6e76851dbf2606185972b53ec5decad68fe53b63a56e4df8b8b3c0a6c46800
+SIZE (znc-1.10.1.tar.gz) = 2310976
diff --git a/korean/hunspell/Makefile b/korean/hunspell/Makefile
index 4c57e97cc4b7..fdad9a3c27cb 100644
--- a/korean/hunspell/Makefile
+++ b/korean/hunspell/Makefile
@@ -1,5 +1,6 @@
PORTNAME= hunspell
PORTVERSION= 0.7.90
+PORTREVISION= 1
CATEGORIES= korean textproc
MAINTAINER= jkim@FreeBSD.org
@@ -12,7 +13,7 @@ LICENSE_FILE_GPLv2+ = ${WRKSRC}/LICENSE.GPL
LICENSE_FILE_LGPL21+ = ${WRKSRC}/LICENSE.LGPL
LICENSE_FILE_MPL11= ${WRKSRC}/LICENSE.MPL
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
TEST_DEPENDS= hunspell:textproc/hunspell \
gmake:devel/gmake
diff --git a/lang/quickjs/Makefile b/lang/quickjs/Makefile
index 0a382adc5215..918632e5dc85 100644
--- a/lang/quickjs/Makefile
+++ b/lang/quickjs/Makefile
@@ -1,5 +1,5 @@
PORTNAME= quickjs
-DISTVERSION= 2025.04.26-20250426
+DISTVERSION= 2025.04.26-20250709
CATEGORIES= lang devel
#MASTER_SITES= https://bellard.org/${PORTNAME}/
#DISTNAME= ${PORTNAME}-${DISTVERSION:S/./-/g}
@@ -15,7 +15,7 @@ USE_LDCONFIG= yes
USE_GITHUB= yes
GH_ACCOUNT= bellard
-GH_TAGNAME= 6e2e68fd0896957f92eb6c242a2e048c1ef3cae0
+GH_TAGNAME= 1fdc768
CPE_VENDOR= ${PORTNAME}_project
diff --git a/lang/quickjs/distinfo b/lang/quickjs/distinfo
index 7637f8f4e79b..2eff0e7e9753 100644
--- a/lang/quickjs/distinfo
+++ b/lang/quickjs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1746485237
-SHA256 (bellard-quickjs-2025.04.26-20250426-6e2e68fd0896957f92eb6c242a2e048c1ef3cae0_GH0.tar.gz) = 3ceab2edf529ffc4ed4111e613e6878c8ffa4ca792d66a989f6a05fa35f9ec59
-SIZE (bellard-quickjs-2025.04.26-20250426-6e2e68fd0896957f92eb6c242a2e048c1ef3cae0_GH0.tar.gz) = 628637
+TIMESTAMP = 1752336175
+SHA256 (bellard-quickjs-2025.04.26-20250709-1fdc768_GH0.tar.gz) = f3b564d611909926a6895c53377ce72ecd61f797ac9b27dec8a728380c89abd7
+SIZE (bellard-quickjs-2025.04.26-20250709-1fdc768_GH0.tar.gz) = 592711
diff --git a/lang/quickjs/files/patch-Makefile b/lang/quickjs/files/patch-Makefile
index b1bff599e9c6..d4baa682dade 100644
--- a/lang/quickjs/files/patch-Makefile
+++ b/lang/quickjs/files/patch-Makefile
@@ -1,6 +1,6 @@
---- Makefile.orig 2024-07-27 21:40:48 UTC
-+++ Makefile
-@@ -94,6 +94,7 @@ ifdef CONFIG_CLANG
+--- Makefile.orig 2025-07-12 12:03:32.908750000 -0400
++++ Makefile 2025-07-12 12:08:54.639258000 -0400
+@@ -98,6 +98,7 @@
HOST_CC=clang
CC=$(CROSS_PREFIX)clang
CFLAGS+=-g -Wall -MMD -MF $(OBJDIR)/$(@F).d
@@ -8,9 +8,9 @@
CFLAGS += -Wextra
CFLAGS += -Wno-sign-compare
CFLAGS += -Wno-missing-field-initializers
-@@ -207,9 +208,9 @@ endif
- ifdef CONFIG_M32
- PROGS+=qjs32 qjs32_s
+@@ -212,9 +213,9 @@
+ QJSC_CC=$(CC)
+ QJSC=./qjsc$(EXE)
endif
-PROGS+=libquickjs.a
+PROGS+=libquickjs.so
@@ -20,7 +20,7 @@
endif
# examples
-@@ -298,12 +299,12 @@ endif
+@@ -296,12 +297,12 @@
LTOEXT=
endif
@@ -37,10 +37,10 @@
endif # CONFIG_LTO
libquickjs.fuzz.a: $(patsubst %.o, %.fuzz.o, $(QJS_LIB_OBJS))
-@@ -384,10 +385,14 @@ install: all
+@@ -368,10 +369,14 @@
+ mkdir -p "$(DESTDIR)$(PREFIX)/bin"
$(STRIP) qjs$(EXE) qjsc$(EXE)
install -m755 qjs$(EXE) qjsc$(EXE) "$(DESTDIR)$(PREFIX)/bin"
- ln -sf qjs$(EXE) "$(DESTDIR)$(PREFIX)/bin/qjscalc$(EXE)"
- mkdir -p "$(DESTDIR)$(PREFIX)/lib/quickjs"
- install -m644 libquickjs.a "$(DESTDIR)$(PREFIX)/lib/quickjs"
+ mkdir -p "$(DESTDIR)$(PREFIX)/lib"
@@ -55,8 +55,8 @@
endif
mkdir -p "$(DESTDIR)$(PREFIX)/include/quickjs"
install -m644 quickjs.h quickjs-libc.h "$(DESTDIR)$(PREFIX)/include/quickjs"
-@@ -417,7 +422,7 @@ HELLO_MODULE_OPTS=-fno-string-normalize -fno-map -fno-
- HELLO_MODULE_OPTS=-fno-string-normalize -fno-map -fno-promise -fno-typedarray \
+@@ -396,7 +401,7 @@
+ HELLO_MODULE_OPTS=-fno-string-normalize -fno-map -fno-typedarray \
-fno-typedarray -fno-regexp -fno-json -fno-eval -fno-proxy \
-fno-date -m
-examples/hello_module: $(QJSC) libquickjs$(LTOEXT).a $(HELLO_MODULE_SRCS)
@@ -64,7 +64,7 @@
$(QJSC) $(HELLO_MODULE_OPTS) -o $@ $(HELLO_MODULE_SRCS)
# use of an external C module (static compilation)
-@@ -425,7 +430,7 @@ test_fib.c: $(QJSC) examples/test_fib.js
+@@ -404,7 +409,7 @@
test_fib.c: $(QJSC) examples/test_fib.js
$(QJSC) -e -M examples/fib.so,fib -m -o $@ examples/test_fib.js
diff --git a/lang/quickjs/pkg-plist b/lang/quickjs/pkg-plist
index b99dbd28945a..58c98df8f769 100644
--- a/lang/quickjs/pkg-plist
+++ b/lang/quickjs/pkg-plist
@@ -1,6 +1,5 @@
bin/qjs
bin/qjsc
-bin/qjscalc
include/quickjs/quickjs-libc.h
include/quickjs/quickjs.h
lib/libquickjs.so
diff --git a/mail/automx/Makefile b/mail/automx/Makefile
index d96bdaed7b9e..e4d6016047c4 100644
--- a/mail/automx/Makefile
+++ b/mail/automx/Makefile
@@ -1,7 +1,7 @@
PORTNAME= automx
PORTVERSION= 0.10.2
DISTVERSIONPREFIX= v
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= mail
MAINTAINER= crees@FreeBSD.org
@@ -13,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ipaddr>=0:devel/py-ipaddr@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}m2crypto>=0:security/py-m2crypto@${PY_FLAVOR} \
wget:ftp/wget \
dig:dns/bind-tools
diff --git a/mail/cyrus-imapd25/Makefile b/mail/cyrus-imapd25/Makefile
index 2fd853795ef5..4644b9c2dcc1 100644
--- a/mail/cyrus-imapd25/Makefile
+++ b/mail/cyrus-imapd25/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 2.5.17
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${PORTVERSION}/
PKGNAMESUFFIX= 25
@@ -92,8 +92,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd30/Makefile b/mail/cyrus-imapd30/Makefile
index 1c9ad192cd74..f703e59a1012 100644
--- a/mail/cyrus-imapd30/Makefile
+++ b/mail/cyrus-imapd30/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 3.0.18
-PORTREVISION= 7
+PORTREVISION= 8
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${PORTVERSION}/
PKGNAMESUFFIX= 30
@@ -103,8 +103,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd310/Makefile b/mail/cyrus-imapd310/Makefile
index 772adce58b89..d9cd883b7eea 100644
--- a/mail/cyrus-imapd310/Makefile
+++ b/mail/cyrus-imapd310/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
DISTVERSION= 3.10.2
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${DISTVERSION}/
PKGNAMESUFFIX= ${CYRUS_IMAPD_VER}
@@ -140,8 +140,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd312/Makefile b/mail/cyrus-imapd312/Makefile
index cd12ebbffaae..cecb7675c9b3 100644
--- a/mail/cyrus-imapd312/Makefile
+++ b/mail/cyrus-imapd312/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
DISTVERSION= 3.12.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${DISTVERSION}/
PKGNAMESUFFIX= ${CYRUS_IMAPD_VER}
@@ -138,8 +138,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd32/Makefile b/mail/cyrus-imapd32/Makefile
index db836fe7dc3e..6b2a5ceeaf73 100644
--- a/mail/cyrus-imapd32/Makefile
+++ b/mail/cyrus-imapd32/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 3.2.12
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${PORTVERSION}/
PKGNAMESUFFIX= 32
@@ -112,8 +112,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd34/Makefile b/mail/cyrus-imapd34/Makefile
index 5d1d7454870d..bd5201a57e3c 100644
--- a/mail/cyrus-imapd34/Makefile
+++ b/mail/cyrus-imapd34/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 3.4.9
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${PORTVERSION}/
PKGNAMESUFFIX= ${CYRUS_IMAPD_VER}
@@ -127,8 +127,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd36/Makefile b/mail/cyrus-imapd36/Makefile
index a0f6f0fd62e6..be13b03f61c4 100644
--- a/mail/cyrus-imapd36/Makefile
+++ b/mail/cyrus-imapd36/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 3.6.7
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${DISTVERSION}/
PKGNAMESUFFIX= ${CYRUS_IMAPD_VER}
@@ -132,8 +132,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/cyrus-imapd38/Makefile b/mail/cyrus-imapd38/Makefile
index 79bae82629d3..2a684cc04dce 100644
--- a/mail/cyrus-imapd38/Makefile
+++ b/mail/cyrus-imapd38/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cyrus-imapd
PORTVERSION= 3.8.6
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= mail
MASTER_SITES= https://github.com/cyrusimap/cyrus-imapd/releases/download/${PORTNAME}-${DISTVERSION}/
PKGNAMESUFFIX= ${CYRUS_IMAPD_VER}
@@ -133,8 +133,12 @@ OPTIONS_RADIO_GSSAPI+= GSSAPI_BASE
OPTIONS_DEFAULT+= GSSAPI_BASE
.endif
GSSAPI_BASE_USES= gssapi
-GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
- --with-gss_impl=heimdal
+GSSAPI_BASE_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}"
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=mit
+.else
+GSSAPI_BASE_CONFIGURE_ON+= --with-gss_impl=heimdal
+.endif
GSSAPI_HEIMDAL_USES= gssapi:heimdal,flags
GSSAPI_HEIMDAL_CONFIGURE_ON= --enable-gssapi="${GSSAPIBASEDIR}" \
--with-gss_impl=heimdal
diff --git a/mail/mlmmj-webview/Makefile b/mail/mlmmj-webview/Makefile
index 9b79dc637088..a756d912ad5f 100644
--- a/mail/mlmmj-webview/Makefile
+++ b/mail/mlmmj-webview/Makefile
@@ -1,6 +1,5 @@
PORTNAME= mlmmj-webview
-PORTVERSION= 0.0.6
-PORTREVISION= 2
+PORTVERSION= 0.0.7
CATEGORIES= mail www
MASTER_SITES= https://codeberg.org/bapt/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/
@@ -10,13 +9,15 @@ WWW= https://codeberg.org/bapt/mlmmj-webview
LICENSE= BSD2CLAUSE
-LIB_DEPENDS= libkcgi.so:www/kcgi
+LIB_DEPENDS= libkcgi.so:www/kcgi \
+ libucl.so:textproc/libucl
USES= pkgconfig
WRKSRC= ${WRKDIR}/${PORTNAME}
HAS_CONFIGURE= yes
-PLIST_FILES= bin/${PORTNAME}
+PLIST_FILES= bin/${PORTNAME} \
+ bin/mlmmj-genindex
.include <bsd.port.mk>
diff --git a/mail/mlmmj-webview/distinfo b/mail/mlmmj-webview/distinfo
index b9cb02b68261..eba90ffa83e1 100644
--- a/mail/mlmmj-webview/distinfo
+++ b/mail/mlmmj-webview/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1701681410
-SHA256 (mlmmj-webview-0.0.6.tar.gz) = 7dfde1993e0717596909c48e7acd848902c8b94ebb3ae6f5cb009d80abafae42
-SIZE (mlmmj-webview-0.0.6.tar.gz) = 190156
+TIMESTAMP = 1753174070
+SHA256 (mlmmj-webview-0.0.7.tar.gz) = 5d166b546e5d3fae6c701a3bf27d3cea2a36b83d17dce5657ab2717a931a4b29
+SIZE (mlmmj-webview-0.0.7.tar.gz) = 192927
diff --git a/mail/py-premailer/Makefile b/mail/py-premailer/Makefile
index 784c98953fe8..5483f725b2e8 100644
--- a/mail/py-premailer/Makefile
+++ b/mail/py-premailer/Makefile
@@ -1,6 +1,6 @@
PORTNAME= premailer
PORTVERSION= 3.1.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= mail python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssutils>=0:www/py-cssutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mock>0:devel/py-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${PY_FLAVOR}
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile
index b8baea55f37d..db910ff21632 100644
--- a/mail/thunderbird/Makefile
+++ b/mail/thunderbird/Makefile
@@ -1,9 +1,9 @@
PORTNAME= thunderbird
DISTVERSION= 141.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= mail news net-im wayland
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \
- MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build2/source
+ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build3/source
DISTFILES= ${DISTNAME}.source${EXTRACT_SUFX}
MAINTAINER= gecko@FreeBSD.org
diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo
index b7c39d931b73..f673398ef994 100644
--- a/mail/thunderbird/distinfo
+++ b/mail/thunderbird/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752928378
-SHA256 (thunderbird-141.0.source.tar.xz) = be3e00918650ba060761f55791e82df944d68f8d84e3eaea4c1cb92733bbd13c
-SIZE (thunderbird-141.0.source.tar.xz) = 760085448
+TIMESTAMP = 1753116075
+SHA256 (thunderbird-141.0.source.tar.xz) = 694a6b11f8afa9ff2b0899f1f59473160b3a92be271892df8c2f6bb748fb4666
+SIZE (thunderbird-141.0.source.tar.xz) = 756973792
diff --git a/math/octave-forge-geometry/Makefile b/math/octave-forge-geometry/Makefile
index 9933cf303500..abdc8e77b362 100644
--- a/math/octave-forge-geometry/Makefile
+++ b/math/octave-forge-geometry/Makefile
@@ -1,6 +1,6 @@
PORTNAME= octave-forge-geometry
PORTVERSION= 4.1.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= math
MASTER_SITES= SF/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases
DISTNAME= ${OCTAVE_PKGNAME}-${DISTVERSIONFULL}
@@ -12,7 +12,7 @@ WWW= https://packages.octave.org/
LICENSE= GPLv3
LICENSE_FILE= ${WRKDIR}/${OCTAVE_SRC}/COPYING
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${OCTAVE_TARBALLS_DIR}/matgeom.tar.gz:math/octave-forge-matgeom
USES= octave python:env
diff --git a/math/py-pandas-datareader/Makefile b/math/py-pandas-datareader/Makefile
index 82f4f3440d19..4e941b803578 100644
--- a/math/py-pandas-datareader/Makefile
+++ b/math/py-pandas-datareader/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pandas-datareader
DISTVERSION= 0.9.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= math finance python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/pydata/pandas-datareader
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.md
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>0.19.2:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.3.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests-file>0:www/py-requests-file@${PY_FLAVOR} \
diff --git a/math/vtk8/Makefile b/math/vtk8/Makefile
index d0a3a97bdb2d..06d0030f5f76 100644
--- a/math/vtk8/Makefile
+++ b/math/vtk8/Makefile
@@ -12,6 +12,7 @@ WWW= https://www.vtk.org
LICENSE= BSD3CLAUSE
+BROKEN_FreeBSD_13= complation fails: error: no member named 'derived' in 'Transpose<TranspositionsBase<type-parameter-0-0>>'
BROKEN_FreeBSD_15= complation fails: error: no member named 'derived' in 'Transpose<TranspositionsBase<type-parameter-0-0>>'
LIB_DEPENDS= libtiff.so:graphics/tiff \
diff --git a/misc/llama-cpp/Makefile b/misc/llama-cpp/Makefile
index 6a6f8f36ca37..1866f235b18f 100644
--- a/misc/llama-cpp/Makefile
+++ b/misc/llama-cpp/Makefile
@@ -1,6 +1,6 @@
PORTNAME= llama-cpp
DISTVERSIONPREFIX= b
-DISTVERSION= 5897
+DISTVERSION= 5943
CATEGORIES= misc # machine-learning
MAINTAINER= yuri@FreeBSD.org
diff --git a/misc/llama-cpp/distinfo b/misc/llama-cpp/distinfo
index 0b0d820bedc1..7769fc9f69f5 100644
--- a/misc/llama-cpp/distinfo
+++ b/misc/llama-cpp/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1752529454
-SHA256 (ggerganov-llama.cpp-b5897_GH0.tar.gz) = 95f920d2cd25ab878fb1ad115fa0d810ec44c3582a72c4ce02d362a0000a2455
-SIZE (ggerganov-llama.cpp-b5897_GH0.tar.gz) = 25179873
+TIMESTAMP = 1753077187
+SHA256 (ggerganov-llama.cpp-b5943_GH0.tar.gz) = abb05cabbb7f2b18e762f0db17c4842836a768e33c4a8b840a4d3dbf8cdc47d4
+SIZE (ggerganov-llama.cpp-b5943_GH0.tar.gz) = 25229732
SHA256 (nomic-ai-kompute-4565194_GH0.tar.gz) = 95b52d2f0514c5201c7838348a9c3c9e60902ea3c6c9aa862193a212150b2bfc
SIZE (nomic-ai-kompute-4565194_GH0.tar.gz) = 13540496
diff --git a/misc/llama-cpp/pkg-plist b/misc/llama-cpp/pkg-plist
index 5cc1998007e9..d6690897b050 100644
--- a/misc/llama-cpp/pkg-plist
+++ b/misc/llama-cpp/pkg-plist
@@ -5,6 +5,7 @@ bin/convert_hf_to_gguf.py
%%EXAMPLES%%bin/llama-cli
%%EXAMPLES%%bin/llama-convert-llama2c-to-ggml
%%EXAMPLES%%bin/llama-cvector-generator
+%%EXAMPLES%%bin/llama-diffusion-cli
%%EXAMPLES%%bin/llama-embedding
%%EXAMPLES%%bin/llama-eval-callback
%%EXAMPLES%%bin/llama-export-lora
@@ -48,6 +49,7 @@ include/ggml-rpc.h
include/ggml-sycl.h
include/ggml-vulkan.h
include/ggml.h
+include/ggml-webgpu.h
include/gguf.h
include/llama-cpp.h
include/llama.h
diff --git a/misc/ola/Makefile b/misc/ola/Makefile
index 1e30be6e83ef..b62a7e2b874b 100644
--- a/misc/ola/Makefile
+++ b/misc/ola/Makefile
@@ -4,6 +4,10 @@ PORTREVISION= 10
CATEGORIES= misc
MASTER_SITES= https://github.com/OpenLightingProject/ola/releases/download/${DISTVERSION}/
+PATCH_SITES= https://github.com/OpenLightingProject/${PORTNAME}/commit/
+PATCHFILES+= 321731ce73be4ea79adb2174591ce94695d3e85b.patch:-p1
+PATCHFILES+= 4006f2129f0a6061d59fe5892a2a17c53699a31a.patch:-p1
+
MAINTAINER= yuri@FreeBSD.org
COMMENT= Open Lighting Architecture: framework for lighting control information
WWW= https://www.openlighting.org/ola/ \
@@ -11,8 +15,6 @@ WWW= https://www.openlighting.org/ola/ \
LICENSE= GPLv2+
-BROKEN_FreeBSD_15= compilation fails with clang-19, see https://github.com/OpenLightingProject/ola/issues/1982
-
LIB_DEPENDS= libavahi-common.so:net/avahi-app \
libftdi1.so:devel/libftdi1 \
libmicrohttpd.so:www/libmicrohttpd \
diff --git a/misc/ola/distinfo b/misc/ola/distinfo
index aa69c855991b..fc71f3769545 100644
--- a/misc/ola/distinfo
+++ b/misc/ola/distinfo
@@ -1,3 +1,7 @@
-TIMESTAMP = 1688084092
+TIMESTAMP = 1753077837
SHA256 (ola-0.10.9.tar.gz) = 44073698c147fe641507398253c2e52ff8dc7eac8606cbf286c29f37939a4ebf
SIZE (ola-0.10.9.tar.gz) = 2578760
+SHA256 (4006f2129f0a6061d59fe5892a2a17c53699a31a.patch) = 4aaa190f2d819aa82cd856c4f428406b3a092b6ed5c2465775006ee1f918d8ff
+SIZE (4006f2129f0a6061d59fe5892a2a17c53699a31a.patch) = 1006
+SHA256 (321731ce73be4ea79adb2174591ce94695d3e85b.patch) = 3b19a250de1ed4c0a153c77955ffb54c203412142a97bb879e4cc38ad3a5affd
+SIZE (321731ce73be4ea79adb2174591ce94695d3e85b.patch) = 1064
diff --git a/misc/py-kartograph/Makefile b/misc/py-kartograph/Makefile
index 674e5e8e0d4b..4973f59f1cf4 100644
--- a/misc/py-kartograph/Makefile
+++ b/misc/py-kartograph/Makefile
@@ -1,6 +1,6 @@
PORTNAME= kartograph
DISTVERSION= 0.6.8
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= misc python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ LICENSE= MIT
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}argparse>0:devel/py-argparse@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gdal>0:graphics/py-gdal@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ordereddict>0:devel/py-ordereddict@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyshp>0:devel/py-pyshp@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyaml>0:textproc/py-pyaml@${PY_FLAVOR} \
diff --git a/misc/py-lazrs/Makefile b/misc/py-lazrs/Makefile
index acde5873915a..e6a1e84f78c3 100644
--- a/misc/py-lazrs/Makefile
+++ b/misc/py-lazrs/Makefile
@@ -1,6 +1,5 @@
PORTNAME= lazrs
-DISTVERSION= 0.6.2
-PORTREVISION= 5
+DISTVERSION= 0.7.0
CATEGORIES= misc
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -20,34 +19,34 @@ USE_GITHUB= yes
GH_ACCOUNT= laz-rs
GH_PROJECT= laz-rs-python
-CARGO_CRATES= autocfg-1.4.0 \
+CARGO_CRATES= autocfg-1.5.0 \
byteorder-1.5.0 \
- cfg-if-1.0.0 \
- crossbeam-deque-0.8.5 \
+ cfg-if-1.0.1 \
+ crossbeam-deque-0.8.6 \
crossbeam-epoch-0.9.18 \
- crossbeam-utils-0.8.20 \
- either-1.13.0 \
+ crossbeam-utils-0.8.21 \
+ either-1.15.0 \
heck-0.5.0 \
- indoc-2.0.5 \
- laz-0.9.2 \
- libc-0.2.168 \
+ indoc-2.0.6 \
+ laz-0.10.0 \
+ libc-0.2.174 \
memoffset-0.9.1 \
num-traits-0.2.19 \
- once_cell-1.20.2 \
- portable-atomic-1.10.0 \
- proc-macro2-1.0.92 \
+ once_cell-1.21.3 \
+ portable-atomic-1.11.1 \
+ proc-macro2-1.0.95 \
pyo3-0.22.6 \
pyo3-build-config-0.22.6 \
pyo3-ffi-0.22.6 \
pyo3-macros-0.22.6 \
pyo3-macros-backend-0.22.6 \
- quote-1.0.37 \
+ quote-1.0.40 \
rayon-1.10.0 \
rayon-core-1.12.1 \
- syn-2.0.90 \
+ syn-2.0.104 \
target-lexicon-0.12.16 \
- unicode-ident-1.0.14 \
- unindent-0.2.3
+ unicode-ident-1.0.18 \
+ unindent-0.2.4
CARGO_BUILD= no
CARGO_INSTALL= no
diff --git a/misc/py-lazrs/distinfo b/misc/py-lazrs/distinfo
index e3e64098778a..abdd1c9a3212 100644
--- a/misc/py-lazrs/distinfo
+++ b/misc/py-lazrs/distinfo
@@ -1,36 +1,36 @@
-TIMESTAMP = 1734181162
-SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
-SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
+TIMESTAMP = 1753162732
+SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8
+SIZE (rust/crates/autocfg-1.5.0.crate) = 18729
SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
-SHA256 (rust/crates/crossbeam-deque-0.8.5.crate) = 613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d
-SIZE (rust/crates/crossbeam-deque-0.8.5.crate) = 21726
+SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268
+SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683
+SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51
+SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471
SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
-SHA256 (rust/crates/crossbeam-utils-0.8.20.crate) = 22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80
-SIZE (rust/crates/crossbeam-utils-0.8.20.crate) = 42487
-SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0
-SIZE (rust/crates/either-1.13.0.crate) = 19169
+SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
+SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
+SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719
+SIZE (rust/crates/either-1.15.0.crate) = 20114
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/indoc-2.0.5.crate) = b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5
-SIZE (rust/crates/indoc-2.0.5.crate) = 14396
-SHA256 (rust/crates/laz-0.9.2.crate) = 786baa800bbc74d9e22be06d2895e7bdc0777e3acb5bdb708b0170a0a8e94b2c
-SIZE (rust/crates/laz-0.9.2.crate) = 99596
-SHA256 (rust/crates/libc-0.2.168.crate) = 5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d
-SIZE (rust/crates/libc-0.2.168.crate) = 757025
+SHA256 (rust/crates/indoc-2.0.6.crate) = f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd
+SIZE (rust/crates/indoc-2.0.6.crate) = 17164
+SHA256 (rust/crates/laz-0.10.0.crate) = 2fdaa07b8ca574f1786ef2d1cbcfdb0c158c51afbe3760fad58c8f07981444d5
+SIZE (rust/crates/laz-0.10.0.crate) = 100633
+SHA256 (rust/crates/libc-0.2.174.crate) = 1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776
+SIZE (rust/crates/libc-0.2.174.crate) = 779933
SHA256 (rust/crates/memoffset-0.9.1.crate) = 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a
SIZE (rust/crates/memoffset-0.9.1.crate) = 9032
SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841
SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
-SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775
-SIZE (rust/crates/once_cell-1.20.2.crate) = 33394
-SHA256 (rust/crates/portable-atomic-1.10.0.crate) = 280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6
-SIZE (rust/crates/portable-atomic-1.10.0.crate) = 174760
-SHA256 (rust/crates/proc-macro2-1.0.92.crate) = 37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0
-SIZE (rust/crates/proc-macro2-1.0.92.crate) = 52353
+SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
+SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/portable-atomic-1.11.1.crate) = f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483
+SIZE (rust/crates/portable-atomic-1.11.1.crate) = 185506
+SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
+SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
SHA256 (rust/crates/pyo3-0.22.6.crate) = f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884
SIZE (rust/crates/pyo3-0.22.6.crate) = 546746
SHA256 (rust/crates/pyo3-build-config-0.22.6.crate) = b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38
@@ -41,19 +41,19 @@ SHA256 (rust/crates/pyo3-macros-0.22.6.crate) = 0fd24d897903a9e6d80b968368a34e15
SIZE (rust/crates/pyo3-macros-0.22.6.crate) = 8182
SHA256 (rust/crates/pyo3-macros-backend-0.22.6.crate) = 36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe
SIZE (rust/crates/pyo3-macros-backend-0.22.6.crate) = 66312
-SHA256 (rust/crates/quote-1.0.37.crate) = b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af
-SIZE (rust/crates/quote-1.0.37.crate) = 28558
+SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
+SIZE (rust/crates/quote-1.0.40.crate) = 31063
SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
SIZE (rust/crates/rayon-1.10.0.crate) = 180155
SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
-SHA256 (rust/crates/syn-2.0.90.crate) = 919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31
-SIZE (rust/crates/syn-2.0.90.crate) = 290584
+SHA256 (rust/crates/syn-2.0.104.crate) = 17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40
+SIZE (rust/crates/syn-2.0.104.crate) = 299699
SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1
SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488
-SHA256 (rust/crates/unicode-ident-1.0.14.crate) = adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83
-SIZE (rust/crates/unicode-ident-1.0.14.crate) = 47547
-SHA256 (rust/crates/unindent-0.2.3.crate) = c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce
-SIZE (rust/crates/unindent-0.2.3.crate) = 7306
-SHA256 (laz-rs-laz-rs-python-0.6.2_GH0.tar.gz) = 850255b7ee156c23bf341856328f3e6d044e86f8b679943f400bd010a1699139
-SIZE (laz-rs-laz-rs-python-0.6.2_GH0.tar.gz) = 7717
+SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
+SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
+SHA256 (rust/crates/unindent-0.2.4.crate) = 7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3
+SIZE (rust/crates/unindent-0.2.4.crate) = 7422
+SHA256 (laz-rs-laz-rs-python-0.7.0_GH0.tar.gz) = 1910b6002f95b3e1002472fda1c10537ff57352cc858671226c2c4e04214ffd0
+SIZE (laz-rs-laz-rs-python-0.7.0_GH0.tar.gz) = 7814
diff --git a/misc/py-mffpy/Makefile b/misc/py-mffpy/Makefile
index a5305c2c1d60..92f9739c48d7 100644
--- a/misc/py-mffpy/Makefile
+++ b/misc/py-mffpy/Makefile
@@ -1,7 +1,7 @@
PORTNAME= mffpy
DISTVERSIONPREFIX= v
DISTVERSION= 0.10.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= misc
#MASTER_SITES= PYPI # no test files
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE= APACHE20
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pip>0:devel/py-pip@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}deprecated>=1.2.12:devel/py-deprecated@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.8.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.8.0:devel/py-lxml5@${PY_FLAVOR} \
${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}pytz>=2019.2:devel/py-pytz@${PY_FLAVOR}
diff --git a/misc/py-pykml/Makefile b/misc/py-pykml/Makefile
index e87735d6e6aa..9d8b7bd9194a 100644
--- a/misc/py-pykml/Makefile
+++ b/misc/py-pykml/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pykml
DISTVERSION= 0.2.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= misc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://pythonhosted.org/pykml
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=2.2.6:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2.6:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= distutils concurrent autoplist
diff --git a/multimedia/mediamtx/Makefile b/multimedia/mediamtx/Makefile
index 0d457b55e5f5..de35824be2b9 100644
--- a/multimedia/mediamtx/Makefile
+++ b/multimedia/mediamtx/Makefile
@@ -1,9 +1,8 @@
PORTNAME= mediamtx
DISTVERSIONPREFIX= v
-DISTVERSION= 1.12.3
-PORTREVISION= 2
+DISTVERSION= 1.13.1
CATEGORIES= multimedia net
-MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.2/
+MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.7/
DISTFILES+= release.zip
MAINTAINER= diizzy@FreeBSD.org
diff --git a/multimedia/mediamtx/distinfo b/multimedia/mediamtx/distinfo
index 2b60ef5b70b9..caec39af2b7b 100644
--- a/multimedia/mediamtx/distinfo
+++ b/multimedia/mediamtx/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1748512601
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.12.3/release.zip) = d9c80634bcf683fb3b56c9bc2587a5d1dd883901d7278602abb87458c8d5eaf7
-SIZE (go/multimedia_mediamtx/mediamtx-v1.12.3/release.zip) = 5402144
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.12.3/v1.12.3.mod) = 5514980b8528029e8c3cad97c6cad409f4cf1744b27cdc7a371d7056c7db8788
-SIZE (go/multimedia_mediamtx/mediamtx-v1.12.3/v1.12.3.mod) = 4238
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.12.3/v1.12.3.zip) = eff781995ef60ec5cf201472806c1152baaae94833ea2a3424cfe21875074bd0
-SIZE (go/multimedia_mediamtx/mediamtx-v1.12.3/v1.12.3.zip) = 628092
+TIMESTAMP = 1753133812
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/release.zip) = 3af330143f96edf4f74338a104c59e85294d0a3b1d33872027c78973072499b5
+SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/release.zip) = 5437047
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.mod) = fcf06526149c35f2a912abb7233cd8ee435d65f00bc9846acfaf3a3d48a59053
+SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.mod) = 4237
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.zip) = 7f5fec4bf29375f8c9d584cfd6476ff9d2c4eafca0de16b51e5c01d32a3c690e
+SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.zip) = 636823
diff --git a/multimedia/musikcube/Makefile b/multimedia/musikcube/Makefile
index 075ac179f511..fc04c2be21fe 100644
--- a/multimedia/musikcube/Makefile
+++ b/multimedia/musikcube/Makefile
@@ -11,7 +11,7 @@ WWW= https://musikcube.com/ \
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-BUILD_DEPENDS= asio>0:net/asio
+BUILD_DEPENDS= asio130>0:net/asio130 # pending https://github.com/clangen/musikcube/issues/733
LIB_DEPENDS= libasound.so:audio/alsa-lib \
libavcodec.so:multimedia/ffmpeg \
libbasu.so:devel/basu \
diff --git a/multimedia/mythtv/Makefile b/multimedia/mythtv/Makefile
index 67a08a4d98fa..16d560e196a1 100644
--- a/multimedia/mythtv/Makefile
+++ b/multimedia/mythtv/Makefile
@@ -1,7 +1,7 @@
PORTNAME= mythtv
DISTVERSIONPREFIX= v
DISTVERSION= 34.0
-PORTREVISION= 4
+PORTREVISION= 5
PORTEPOCH= 1
CATEGORIES= multimedia
@@ -108,7 +108,7 @@ BINDINGS_DESC= Perl and Python bindings
BINDINGS_BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0:devel/py-future@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}simplejson>=0:devel/py-simplejson@${PY_FLAVOR} \
p5-DBI>=0:databases/p5-DBI \
@@ -120,7 +120,7 @@ BINDINGS_BUILD_DEPENDS= ${PY_SETUPTOOLS} \
p5-LWP-UserAgent-Determined>=0:www/p5-LWP-UserAgent-Determined
BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.2.2:databases/py-mysqlclient@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests-cache>0:www/py-requests-cache@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}simplejson>=3:devel/py-simplejson@${PY_FLAVOR} \
diff --git a/multimedia/py-soco/Makefile b/multimedia/py-soco/Makefile
index 2c25addd7454..e281bf77b098 100644
--- a/multimedia/py-soco/Makefile
+++ b/multimedia/py-soco/Makefile
@@ -1,7 +1,7 @@
PORTNAME= soco
DISTVERSIONPREFIX= v
DISTVERSION= 0.30.4
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE.rst
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}ifaddr>0:net/py-ifaddr@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xmltodict>0:devel/py-xmltodict@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}appdirs>0:devel/py-appdirs@${PY_FLAVOR} \
diff --git a/multimedia/qmmp-qt5/Makefile b/multimedia/qmmp-qt5/Makefile
index 5407bf35bfad..3ae74f029b77 100644
--- a/multimedia/qmmp-qt5/Makefile
+++ b/multimedia/qmmp-qt5/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qmmp
-PORTVERSION= 1.7.6
+PORTVERSION= 1.7.7
CATEGORIES= multimedia
MASTER_SITES= http://qmmp.ylsoftware.com/files/${PORTNAME}/${DISTVERSION:R}/ \
SF/qmmp-dev/${PORTNAME}/${DISTVERSION:R}/
diff --git a/multimedia/qmmp-qt5/distinfo b/multimedia/qmmp-qt5/distinfo
index 97082032d3dd..b73bd354f8d6 100644
--- a/multimedia/qmmp-qt5/distinfo
+++ b/multimedia/qmmp-qt5/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750883118
-SHA256 (qmmp-1.7.6.tar.bz2) = 43b441f022302a43b98cca88a47e8e5ba1e73caae8acc0e9e2c6b77e5b1eb3bb
-SIZE (qmmp-1.7.6.tar.bz2) = 1426952
+TIMESTAMP = 1753105818
+SHA256 (qmmp-1.7.7.tar.bz2) = f429a76b645480dd56a8fb64f55d33b8259f175f9f31a6f0de3f6209c7bf365d
+SIZE (qmmp-1.7.7.tar.bz2) = 1431704
diff --git a/multimedia/qmmp-qt5/pkg-plist b/multimedia/qmmp-qt5/pkg-plist
index 6bde33c21cbf..7122f2a0c45d 100644
--- a/multimedia/qmmp-qt5/pkg-plist
+++ b/multimedia/qmmp-qt5/pkg-plist
@@ -145,5 +145,6 @@ share/metainfo/com.ylsoftware.qmmp%%BIN_SUFFX%%.metainfo.xml
%%DATADIR%%%%BIN_SUFFX%%/images/app_icon.png
%%DATADIR%%%%BIN_SUFFX%%/images/empty_cover.png
%%DATADIR%%%%BIN_SUFFX%%/scripts/kwin.sh
+%%DATADIR%%%%BIN_SUFFX%%/scripts/kwin6.sh
share/solid/actions/qmmp-opencda%%BIN_SUFFX%%.desktop
@comment Insert PLIST.doc here
diff --git a/multimedia/qmmp-qt6/Makefile b/multimedia/qmmp-qt6/Makefile
index dea531c8cb62..0ef526d7d789 100644
--- a/multimedia/qmmp-qt6/Makefile
+++ b/multimedia/qmmp-qt6/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qmmp
-PORTVERSION= 2.2.6
+PORTVERSION= 2.2.7
CATEGORIES= multimedia
MASTER_SITES= http://qmmp.ylsoftware.com/files/${PORTNAME}/${DISTVERSION:R}/ \
SF/qmmp-dev/${PORTNAME}/${DISTVERSION:R}/
diff --git a/multimedia/qmmp-qt6/distinfo b/multimedia/qmmp-qt6/distinfo
index 82192426513d..1d6ec4d0c5c5 100644
--- a/multimedia/qmmp-qt6/distinfo
+++ b/multimedia/qmmp-qt6/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750883127
-SHA256 (qmmp-2.2.6.tar.bz2) = 270eca6fd728d9a0bc7f19e94e0e0e1f6a3c44dade648dffa58a0dbb7396cb4b
-SIZE (qmmp-2.2.6.tar.bz2) = 1429101
+TIMESTAMP = 1753105825
+SHA256 (qmmp-2.2.7.tar.bz2) = ddcff0b618f4790802f6d52d9a796b5f32cb7d0f23c99181b804f614fab5fbb2
+SIZE (qmmp-2.2.7.tar.bz2) = 1432860
diff --git a/multimedia/qmmp-qt6/pkg-plist b/multimedia/qmmp-qt6/pkg-plist
index 1510743cbdb3..f25a1af91898 100644
--- a/multimedia/qmmp-qt6/pkg-plist
+++ b/multimedia/qmmp-qt6/pkg-plist
@@ -146,4 +146,5 @@ share/metainfo/com.ylsoftware.qmmp.metainfo.xml
%%DATADIR%%/images/app_icon.png
%%DATADIR%%/images/empty_cover.png
%%DATADIR%%/scripts/kwin.sh
+%%DATADIR%%/scripts/kwin6.sh
share/solid/actions/qmmp-opencda.desktop
diff --git a/multimedia/streamlink/Makefile b/multimedia/streamlink/Makefile
index db64e1260303..caf1b2fd1a5b 100644
--- a/multimedia/streamlink/Makefile
+++ b/multimedia/streamlink/Makefile
@@ -1,6 +1,6 @@
PORTNAME= streamlink
DISTVERSION= 6.5.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ BUILD_DEPENDS= ${PY_SETUPTOOLS}\
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>0:security/py-certifi@${PY_FLAVOR}\
${PYTHON_PKGNAMEPREFIX}country>0:devel/py-country@${PY_FLAVOR}\
${PYTHON_PKGNAMEPREFIX}isodate>0:devel/py-isodate@${PY_FLAVOR}\
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.6.4:devel/py-lxml@${PY_FLAVOR}\
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.6.4:devel/py-lxml5@${PY_FLAVOR}\
${PYTHON_PKGNAMEPREFIX}pycryptodome>=3.4.3:security/py-pycryptodome@${PY_FLAVOR}\
${PYTHON_PKGNAMEPREFIX}pysocks>1.5.7:net/py-pysocks@${PY_FLAVOR}\
${PYTHON_PKGNAMEPREFIX}requests>2.26.0:www/py-requests@${PY_FLAVOR}\
diff --git a/multimedia/wireplumber/Makefile b/multimedia/wireplumber/Makefile
index 96ffa890036d..2d522d356d1f 100644
--- a/multimedia/wireplumber/Makefile
+++ b/multimedia/wireplumber/Makefile
@@ -1,5 +1,6 @@
PORTNAME= wireplumber
DISTVERSION= 0.5.8
+PORTREVISION= 1
CATEGORIES= multimedia
MAINTAINER= arrowd@FreeBSD.org
@@ -25,7 +26,7 @@ DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \
g-ir-scanner:devel/gobject-introspection \
sphinx-build:textproc/py-sphinx \
${PYTHON_PKGNAMEPREFIX}breathe>0:devel/py-breathe@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>0:textproc/py-sphinx_rtd_theme@${PY_FLAVOR}
DOXYGEN_MESON_ENABLED= doc introspection
DOXYGEN_IMPLIES= DOCS
diff --git a/net-im/py-matrix-synapse/Makefile b/net-im/py-matrix-synapse/Makefile
index 4ff68f2ee4b1..10cc8c0e173c 100644
--- a/net-im/py-matrix-synapse/Makefile
+++ b/net-im/py-matrix-synapse/Makefile
@@ -1,6 +1,6 @@
PORTNAME= matrix-synapse
DISTVERSION= 1.131.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-im python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -49,7 +49,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}jsonschema>=3.0.0:devel/py-jsonschema@${PY_F
${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}virtualenv>=15.0:devel/py-virtualenv@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tox>=2.3.1:devel/py-tox@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>4.5.2:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>4.5.2:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}parameterized>=0.7.4:devel/py-parameterized@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}authlib>=0.15.1:security/py-authlib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}idna>=2.5:dns/py-idna@${PY_FLAVOR}
@@ -95,7 +95,7 @@ PGSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psycopg2>2.8:databases/py-psycopg2@${P
REDIS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hiredis>=0:databases/py-hiredis@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}txredisapi>=1.4.7:databases/py-txredisapi@${PY_FLAVOR}
SQLITE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR}
-URLPREVIEW_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.2.0:devel/py-lxml@${PY_FLAVOR}
+URLPREVIEW_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.2.0:devel/py-lxml5@${PY_FLAVOR}
post-install:
${MKDIR} ${STAGEDIR}${ETCDIR}
diff --git a/net-mgmt/crmsh/Makefile b/net-mgmt/crmsh/Makefile
index eff7956b4eef..4926cb5b0457 100644
--- a/net-mgmt/crmsh/Makefile
+++ b/net-mgmt/crmsh/Makefile
@@ -1,6 +1,6 @@
PORTNAME= crmsh
DISTVERSION= 4.6.0
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= net-mgmt python
MAINTAINER= ports@FreeBSD.org
@@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= ${PY_SETUPTOOLS}
RUN_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}parallax>0:devel/py-parallax@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR}
diff --git a/net-mgmt/py-gstat_exporter/Makefile b/net-mgmt/py-gstat_exporter/Makefile
index 0690baafef49..9e32f448177e 100644
--- a/net-mgmt/py-gstat_exporter/Makefile
+++ b/net-mgmt/py-gstat_exporter/Makefile
@@ -1,5 +1,6 @@
PORTNAME= gstat_exporter
DISTVERSION= 0.2.0
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
@@ -17,8 +18,8 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}prometheus-client>=0.7.1:net-mgmt/py-prometh
USES= python
USE_RC_SUBR= gstat_exporter
-NO_BUILD= yes
NO_ARCH= yes
+NO_BUILD= yes
SUB_LIST= PYTHON_CMD=${PYTHON_CMD}
diff --git a/net-mgmt/py-gstat_exporter/files/gstat_exporter.in b/net-mgmt/py-gstat_exporter/files/gstat_exporter.in
index 42afc2e24d2c..cec6d3663104 100644
--- a/net-mgmt/py-gstat_exporter/files/gstat_exporter.in
+++ b/net-mgmt/py-gstat_exporter/files/gstat_exporter.in
@@ -8,6 +8,8 @@
#
# gstat_exporter_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable gstat_exporter_enable.
+# gstat_exporter_args (string): Set to "" by default.
+# Set additional command line arguments
. /etc/rc.subr
@@ -22,6 +24,6 @@ load_rc_config ${name}
pidfile="/var/run/${name}.pid"
command_interpreter=%%PYTHON_CMD%%
command=%%PREFIX%%/bin/${name}.py
-start_cmd="/usr/sbin/daemon -f -p ${pidfile} $command_interpreter $command"
+start_cmd="/usr/sbin/daemon -f -p ${pidfile} $command_interpreter $command ${gstat_exporter_args}"
run_rc_command "$1"
diff --git a/net-mgmt/py-junos-eznc/Makefile b/net-mgmt/py-junos-eznc/Makefile
index 0a0abb181c98..9258c5406eb6 100644
--- a/net-mgmt/py-junos-eznc/Makefile
+++ b/net-mgmt/py-junos-eznc/Makefile
@@ -1,6 +1,6 @@
PORTNAME= junos-eznc
DISTVERSION= 2.7.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/Juniper/py-junos-eznc
LICENSE= APACHE20
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.7.1:devel/py-Jinja2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=3.2.4:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=3.2.4:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ncclient>=0.6.15:net-mgmt/py-ncclient@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}paramiko>=1.15.2:security/py-paramiko@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>0:devel/py-pyparsing@${PY_FLAVOR} \
diff --git a/net-mgmt/py-napalm/Makefile b/net-mgmt/py-napalm/Makefile
index 2932706559d0..5d80e7f43c78 100644
--- a/net-mgmt/py-napalm/Makefile
+++ b/net-mgmt/py-napalm/Makefile
@@ -1,6 +1,6 @@
PORTNAME= napalm
DISTVERSION= 5.0.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-mgmt python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.3.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.3.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}textfsm>=1.1.2:textproc/py-textfsm@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}junos-eznc>=2.7.0:net-mgmt/py-junos-eznc@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ncclient>0:net-mgmt/py-ncclient@${PY_FLAVOR} \
diff --git a/net-mgmt/py-ncclient/Makefile b/net-mgmt/py-ncclient/Makefile
index 6c08e201c8f9..496112cb00b3 100644
--- a/net-mgmt/py-ncclient/Makefile
+++ b/net-mgmt/py-ncclient/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ncclient
DISTVERSION= 0.6.15
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/ncclient/ncclient
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}paramiko>=1.15.0:security/py-paramiko@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
diff --git a/net-mgmt/py-nxapi-plumbing/Makefile b/net-mgmt/py-nxapi-plumbing/Makefile
index 9ae254c6b58d..8eee0a57057c 100644
--- a/net-mgmt/py-nxapi-plumbing/Makefile
+++ b/net-mgmt/py-nxapi-plumbing/Makefile
@@ -1,6 +1,6 @@
PORTNAME= nxapi-plumbing
DISTVERSION= 0.5.2
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}future>=0:devel/py-future@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scp>=0:security/py-scp@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.7.0:www/py-requests@${PY_FLAVOR}
diff --git a/net-mgmt/py-pyIOSXR/Makefile b/net-mgmt/py-pyIOSXR/Makefile
index eb73e42ded8a..7d147e4ba82f 100644
--- a/net-mgmt/py-pyIOSXR/Makefile
+++ b/net-mgmt/py-pyIOSXR/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyIOSXR
DISTVERSION= 0.53
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/fooelisa/pyiosxr
LICENSE= APACHE20
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pip>=0:devel/py-pip@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.2.4:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.2.4:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netmiko>=1.4.3:security/py-netmiko@${PY_FLAVOR}
USES= python
diff --git a/net-mgmt/py-pyang/Makefile b/net-mgmt/py-pyang/Makefile
index c9a06bfd9852..3d37bdf7f119 100644
--- a/net-mgmt/py-pyang/Makefile
+++ b/net-mgmt/py-pyang/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyang
PORTVERSION= 1.7.8
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= net-mgmt python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://github.com/mbj4668/pyang/
LICENSE= MIT
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist distutils
diff --git a/net-p2p/bazarr/Makefile b/net-p2p/bazarr/Makefile
index c4568f418c41..27b4e7c38706 100644
--- a/net-p2p/bazarr/Makefile
+++ b/net-p2p/bazarr/Makefile
@@ -1,6 +1,7 @@
PORTNAME= bazarr
DISTVERSIONPREFIX= v
DISTVERSION= 1.5.2
+PORTREVISION= 1
CATEGORIES= net-p2p python
MASTER_SITES= https://github.com/morpheus65535/bazarr/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/
DISTNAME= bazarr
@@ -13,7 +14,7 @@ WWW= https://www.bazarr.media
LICENSE= GPLv3
RUN_DEPENDS= ${PYNUMPY} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.3.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.3.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>1.12.0:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=9.0.0:graphics/py-pillow@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
diff --git a/net-p2p/py-pulsar-client/Makefile b/net-p2p/py-pulsar-client/Makefile
index 3185cf594610..8ae0cc49b00e 100644
--- a/net-p2p/py-pulsar-client/Makefile
+++ b/net-p2p/py-pulsar-client/Makefile
@@ -1,7 +1,6 @@
PORTNAME= pulsar-client
DISTVERSIONPREFIX= v
-DISTVERSION= 3.6.0
-PORTREVISION= 1
+DISTVERSION= 3.8.0
CATEGORIES= net-p2p python # machine-learning
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/net-p2p/py-pulsar-client/distinfo b/net-p2p/py-pulsar-client/distinfo
index 59443dca7790..a65c9ada60b9 100644
--- a/net-p2p/py-pulsar-client/distinfo
+++ b/net-p2p/py-pulsar-client/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1738132002
-SHA256 (apache-pulsar-client-python-v3.6.0_GH0.tar.gz) = b2dc186cd3ac2d80f24f12b2f4d731f4b464248e8ce34ff0579526df2403784e
-SIZE (apache-pulsar-client-python-v3.6.0_GH0.tar.gz) = 101643
+TIMESTAMP = 1753077317
+SHA256 (apache-pulsar-client-python-v3.8.0_GH0.tar.gz) = e82e1a5ae51b260cc33491bc1771e89d74b0459bb39cf0a3fc4df6c29c7184ae
+SIZE (apache-pulsar-client-python-v3.8.0_GH0.tar.gz) = 107415
diff --git a/net/Makefile b/net/Makefile
index 084c05fae492..1d7962c2c074 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -32,6 +32,7 @@
SUBDIR += arprelease
SUBDIR += arrowdl
SUBDIR += asio
+ SUBDIR += asio130
SUBDIR += asterisk-chan_sccp
SUBDIR += asterisk-g72x
SUBDIR += asterisk18
diff --git a/net/asio130/Makefile b/net/asio130/Makefile
new file mode 100644
index 000000000000..53578a756205
--- /dev/null
+++ b/net/asio130/Makefile
@@ -0,0 +1,23 @@
+PORTNAME= asio
+DISTVERSION= 1.30.2
+CATEGORIES= net devel
+MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTVERSION}%20(Stable)/
+PKGNAMESUFFIX= 130
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Cross-platform C++ library for network and low-level I/O programming
+WWW= https://think-async.com/Asio/
+
+LICENSE= BSL
+LICENSE_FILE= ${WRKSRC}/LICENSE_1_0.txt
+
+USES= tar:bz2
+
+GNU_CONFIGURE= yes
+
+NO_BUILD= yes
+NO_ARCH= yes
+
+INSTALL_TARGET= install-data
+
+.include <bsd.port.mk>
diff --git a/net/asio130/distinfo b/net/asio130/distinfo
new file mode 100644
index 000000000000..19fbd5958c9a
--- /dev/null
+++ b/net/asio130/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1719925331
+SHA256 (asio-1.30.2.tar.bz2) = 9f12cef05c0477eace9c68ccabd19f9e3a04b875d4768c323714cbd3a5fa3c2b
+SIZE (asio-1.30.2.tar.bz2) = 3196850
diff --git a/net/asio130/files/patch-configure b/net/asio130/files/patch-configure
new file mode 100644
index 000000000000..ee74e8c5d0d1
--- /dev/null
+++ b/net/asio130/files/patch-configure
@@ -0,0 +1,11 @@
+Since we aren't compiling anything for the port, don't look for boost:
+--- configure.orig 2020-04-06 07:06:03 UTC
++++ configure
+@@ -4900,7 +4900,6 @@ else
+ echo "Can't find boost headers. Please check the location of the boost"
+ echo "distribution and rerun configure using the --with-boost=DIR option."
+ echo "Alternatively, run with --without-boost to enable standalone build."
+- exit 1
+
+ fi
+
diff --git a/net/asio130/pkg-descr b/net/asio130/pkg-descr
new file mode 100644
index 000000000000..8f95ad5faa7d
--- /dev/null
+++ b/net/asio130/pkg-descr
@@ -0,0 +1,3 @@
+Asio is a cross-platform C++ library for network and low-level I/O programming
+that provides developers with a consistent asynchronous model using a modern
+C++ approach.
diff --git a/net/asio130/pkg-plist b/net/asio130/pkg-plist
new file mode 100644
index 000000000000..b98755110d2f
--- /dev/null
+++ b/net/asio130/pkg-plist
@@ -0,0 +1,622 @@
+include/asio.hpp
+include/asio/any_completion_executor.hpp
+include/asio/any_completion_handler.hpp
+include/asio/any_io_executor.hpp
+include/asio/append.hpp
+include/asio/as_tuple.hpp
+include/asio/associated_allocator.hpp
+include/asio/associated_cancellation_slot.hpp
+include/asio/associated_executor.hpp
+include/asio/associated_immediate_executor.hpp
+include/asio/associator.hpp
+include/asio/async_result.hpp
+include/asio/awaitable.hpp
+include/asio/basic_datagram_socket.hpp
+include/asio/basic_deadline_timer.hpp
+include/asio/basic_file.hpp
+include/asio/basic_io_object.hpp
+include/asio/basic_random_access_file.hpp
+include/asio/basic_raw_socket.hpp
+include/asio/basic_readable_pipe.hpp
+include/asio/basic_seq_packet_socket.hpp
+include/asio/basic_serial_port.hpp
+include/asio/basic_signal_set.hpp
+include/asio/basic_socket.hpp
+include/asio/basic_socket_acceptor.hpp
+include/asio/basic_socket_iostream.hpp
+include/asio/basic_socket_streambuf.hpp
+include/asio/basic_stream_file.hpp
+include/asio/basic_stream_socket.hpp
+include/asio/basic_streambuf.hpp
+include/asio/basic_streambuf_fwd.hpp
+include/asio/basic_waitable_timer.hpp
+include/asio/basic_writable_pipe.hpp
+include/asio/bind_allocator.hpp
+include/asio/bind_cancellation_slot.hpp
+include/asio/bind_executor.hpp
+include/asio/bind_immediate_executor.hpp
+include/asio/buffer.hpp
+include/asio/buffer_registration.hpp
+include/asio/buffered_read_stream.hpp
+include/asio/buffered_read_stream_fwd.hpp
+include/asio/buffered_stream.hpp
+include/asio/buffered_stream_fwd.hpp
+include/asio/buffered_write_stream.hpp
+include/asio/buffered_write_stream_fwd.hpp
+include/asio/buffers_iterator.hpp
+include/asio/cancellation_signal.hpp
+include/asio/cancellation_state.hpp
+include/asio/cancellation_type.hpp
+include/asio/co_spawn.hpp
+include/asio/completion_condition.hpp
+include/asio/compose.hpp
+include/asio/connect.hpp
+include/asio/connect_pipe.hpp
+include/asio/consign.hpp
+include/asio/coroutine.hpp
+include/asio/deadline_timer.hpp
+include/asio/defer.hpp
+include/asio/deferred.hpp
+include/asio/detached.hpp
+include/asio/detail/array.hpp
+include/asio/detail/array_fwd.hpp
+include/asio/detail/assert.hpp
+include/asio/detail/atomic_count.hpp
+include/asio/detail/base_from_cancellation_state.hpp
+include/asio/detail/base_from_completion_cond.hpp
+include/asio/detail/bind_handler.hpp
+include/asio/detail/blocking_executor_op.hpp
+include/asio/detail/buffer_resize_guard.hpp
+include/asio/detail/buffer_sequence_adapter.hpp
+include/asio/detail/buffered_stream_storage.hpp
+include/asio/detail/call_stack.hpp
+include/asio/detail/chrono.hpp
+include/asio/detail/chrono_time_traits.hpp
+include/asio/detail/completion_handler.hpp
+include/asio/detail/composed_work.hpp
+include/asio/detail/concurrency_hint.hpp
+include/asio/detail/conditionally_enabled_event.hpp
+include/asio/detail/conditionally_enabled_mutex.hpp
+include/asio/detail/config.hpp
+include/asio/detail/consuming_buffers.hpp
+include/asio/detail/cstddef.hpp
+include/asio/detail/cstdint.hpp
+include/asio/detail/date_time_fwd.hpp
+include/asio/detail/deadline_timer_service.hpp
+include/asio/detail/dependent_type.hpp
+include/asio/detail/descriptor_ops.hpp
+include/asio/detail/descriptor_read_op.hpp
+include/asio/detail/descriptor_write_op.hpp
+include/asio/detail/dev_poll_reactor.hpp
+include/asio/detail/epoll_reactor.hpp
+include/asio/detail/event.hpp
+include/asio/detail/eventfd_select_interrupter.hpp
+include/asio/detail/exception.hpp
+include/asio/detail/executor_function.hpp
+include/asio/detail/executor_op.hpp
+include/asio/detail/fd_set_adapter.hpp
+include/asio/detail/fenced_block.hpp
+include/asio/detail/functional.hpp
+include/asio/detail/future.hpp
+include/asio/detail/global.hpp
+include/asio/detail/handler_alloc_helpers.hpp
+include/asio/detail/handler_cont_helpers.hpp
+include/asio/detail/handler_tracking.hpp
+include/asio/detail/handler_type_requirements.hpp
+include/asio/detail/handler_work.hpp
+include/asio/detail/hash_map.hpp
+include/asio/detail/impl/buffer_sequence_adapter.ipp
+include/asio/detail/impl/descriptor_ops.ipp
+include/asio/detail/impl/dev_poll_reactor.hpp
+include/asio/detail/impl/dev_poll_reactor.ipp
+include/asio/detail/impl/epoll_reactor.hpp
+include/asio/detail/impl/epoll_reactor.ipp
+include/asio/detail/impl/eventfd_select_interrupter.ipp
+include/asio/detail/impl/handler_tracking.ipp
+include/asio/detail/impl/io_uring_descriptor_service.ipp
+include/asio/detail/impl/io_uring_file_service.ipp
+include/asio/detail/impl/io_uring_service.hpp
+include/asio/detail/impl/io_uring_service.ipp
+include/asio/detail/impl/io_uring_socket_service_base.ipp
+include/asio/detail/impl/kqueue_reactor.hpp
+include/asio/detail/impl/kqueue_reactor.ipp
+include/asio/detail/impl/null_event.ipp
+include/asio/detail/impl/pipe_select_interrupter.ipp
+include/asio/detail/impl/posix_event.ipp
+include/asio/detail/impl/posix_mutex.ipp
+include/asio/detail/impl/posix_serial_port_service.ipp
+include/asio/detail/impl/posix_thread.ipp
+include/asio/detail/impl/posix_tss_ptr.ipp
+include/asio/detail/impl/reactive_descriptor_service.ipp
+include/asio/detail/impl/reactive_socket_service_base.ipp
+include/asio/detail/impl/resolver_service_base.ipp
+include/asio/detail/impl/scheduler.ipp
+include/asio/detail/impl/select_reactor.hpp
+include/asio/detail/impl/select_reactor.ipp
+include/asio/detail/impl/service_registry.hpp
+include/asio/detail/impl/service_registry.ipp
+include/asio/detail/impl/signal_set_service.ipp
+include/asio/detail/impl/socket_ops.ipp
+include/asio/detail/impl/socket_select_interrupter.ipp
+include/asio/detail/impl/strand_executor_service.hpp
+include/asio/detail/impl/strand_executor_service.ipp
+include/asio/detail/impl/strand_service.hpp
+include/asio/detail/impl/strand_service.ipp
+include/asio/detail/impl/thread_context.ipp
+include/asio/detail/impl/throw_error.ipp
+include/asio/detail/impl/timer_queue_ptime.ipp
+include/asio/detail/impl/timer_queue_set.ipp
+include/asio/detail/impl/win_event.ipp
+include/asio/detail/impl/win_iocp_file_service.ipp
+include/asio/detail/impl/win_iocp_handle_service.ipp
+include/asio/detail/impl/win_iocp_io_context.hpp
+include/asio/detail/impl/win_iocp_io_context.ipp
+include/asio/detail/impl/win_iocp_serial_port_service.ipp
+include/asio/detail/impl/win_iocp_socket_service_base.ipp
+include/asio/detail/impl/win_mutex.ipp
+include/asio/detail/impl/win_object_handle_service.ipp
+include/asio/detail/impl/win_static_mutex.ipp
+include/asio/detail/impl/win_thread.ipp
+include/asio/detail/impl/win_tss_ptr.ipp
+include/asio/detail/impl/winrt_ssocket_service_base.ipp
+include/asio/detail/impl/winrt_timer_scheduler.hpp
+include/asio/detail/impl/winrt_timer_scheduler.ipp
+include/asio/detail/impl/winsock_init.ipp
+include/asio/detail/initiate_defer.hpp
+include/asio/detail/initiate_dispatch.hpp
+include/asio/detail/initiate_post.hpp
+include/asio/detail/io_control.hpp
+include/asio/detail/io_object_impl.hpp
+include/asio/detail/io_uring_descriptor_read_at_op.hpp
+include/asio/detail/io_uring_descriptor_read_op.hpp
+include/asio/detail/io_uring_descriptor_service.hpp
+include/asio/detail/io_uring_descriptor_write_at_op.hpp
+include/asio/detail/io_uring_descriptor_write_op.hpp
+include/asio/detail/io_uring_file_service.hpp
+include/asio/detail/io_uring_null_buffers_op.hpp
+include/asio/detail/io_uring_operation.hpp
+include/asio/detail/io_uring_service.hpp
+include/asio/detail/io_uring_socket_accept_op.hpp
+include/asio/detail/io_uring_socket_connect_op.hpp
+include/asio/detail/io_uring_socket_recv_op.hpp
+include/asio/detail/io_uring_socket_recvfrom_op.hpp
+include/asio/detail/io_uring_socket_recvmsg_op.hpp
+include/asio/detail/io_uring_socket_send_op.hpp
+include/asio/detail/io_uring_socket_sendto_op.hpp
+include/asio/detail/io_uring_socket_service.hpp
+include/asio/detail/io_uring_socket_service_base.hpp
+include/asio/detail/io_uring_wait_op.hpp
+include/asio/detail/is_buffer_sequence.hpp
+include/asio/detail/is_executor.hpp
+include/asio/detail/keyword_tss_ptr.hpp
+include/asio/detail/kqueue_reactor.hpp
+include/asio/detail/limits.hpp
+include/asio/detail/local_free_on_block_exit.hpp
+include/asio/detail/memory.hpp
+include/asio/detail/mutex.hpp
+include/asio/detail/non_const_lvalue.hpp
+include/asio/detail/noncopyable.hpp
+include/asio/detail/null_event.hpp
+include/asio/detail/null_fenced_block.hpp
+include/asio/detail/null_global.hpp
+include/asio/detail/null_mutex.hpp
+include/asio/detail/null_reactor.hpp
+include/asio/detail/null_signal_blocker.hpp
+include/asio/detail/null_socket_service.hpp
+include/asio/detail/null_static_mutex.hpp
+include/asio/detail/null_thread.hpp
+include/asio/detail/null_tss_ptr.hpp
+include/asio/detail/object_pool.hpp
+include/asio/detail/old_win_sdk_compat.hpp
+include/asio/detail/op_queue.hpp
+include/asio/detail/operation.hpp
+include/asio/detail/pipe_select_interrupter.hpp
+include/asio/detail/pop_options.hpp
+include/asio/detail/posix_event.hpp
+include/asio/detail/posix_fd_set_adapter.hpp
+include/asio/detail/posix_global.hpp
+include/asio/detail/posix_mutex.hpp
+include/asio/detail/posix_serial_port_service.hpp
+include/asio/detail/posix_signal_blocker.hpp
+include/asio/detail/posix_static_mutex.hpp
+include/asio/detail/posix_thread.hpp
+include/asio/detail/posix_tss_ptr.hpp
+include/asio/detail/push_options.hpp
+include/asio/detail/reactive_descriptor_service.hpp
+include/asio/detail/reactive_null_buffers_op.hpp
+include/asio/detail/reactive_socket_accept_op.hpp
+include/asio/detail/reactive_socket_connect_op.hpp
+include/asio/detail/reactive_socket_recv_op.hpp
+include/asio/detail/reactive_socket_recvfrom_op.hpp
+include/asio/detail/reactive_socket_recvmsg_op.hpp
+include/asio/detail/reactive_socket_send_op.hpp
+include/asio/detail/reactive_socket_sendto_op.hpp
+include/asio/detail/reactive_socket_service.hpp
+include/asio/detail/reactive_socket_service_base.hpp
+include/asio/detail/reactive_wait_op.hpp
+include/asio/detail/reactor.hpp
+include/asio/detail/reactor_op.hpp
+include/asio/detail/reactor_op_queue.hpp
+include/asio/detail/recycling_allocator.hpp
+include/asio/detail/regex_fwd.hpp
+include/asio/detail/resolve_endpoint_op.hpp
+include/asio/detail/resolve_op.hpp
+include/asio/detail/resolve_query_op.hpp
+include/asio/detail/resolver_service.hpp
+include/asio/detail/resolver_service_base.hpp
+include/asio/detail/scheduler.hpp
+include/asio/detail/scheduler_operation.hpp
+include/asio/detail/scheduler_task.hpp
+include/asio/detail/scheduler_thread_info.hpp
+include/asio/detail/scoped_lock.hpp
+include/asio/detail/scoped_ptr.hpp
+include/asio/detail/select_interrupter.hpp
+include/asio/detail/select_reactor.hpp
+include/asio/detail/service_registry.hpp
+include/asio/detail/signal_blocker.hpp
+include/asio/detail/signal_handler.hpp
+include/asio/detail/signal_init.hpp
+include/asio/detail/signal_op.hpp
+include/asio/detail/signal_set_service.hpp
+include/asio/detail/socket_holder.hpp
+include/asio/detail/socket_ops.hpp
+include/asio/detail/socket_option.hpp
+include/asio/detail/socket_select_interrupter.hpp
+include/asio/detail/socket_types.hpp
+include/asio/detail/source_location.hpp
+include/asio/detail/static_mutex.hpp
+include/asio/detail/std_event.hpp
+include/asio/detail/std_fenced_block.hpp
+include/asio/detail/std_global.hpp
+include/asio/detail/std_mutex.hpp
+include/asio/detail/std_static_mutex.hpp
+include/asio/detail/std_thread.hpp
+include/asio/detail/strand_executor_service.hpp
+include/asio/detail/strand_service.hpp
+include/asio/detail/string_view.hpp
+include/asio/detail/thread.hpp
+include/asio/detail/thread_context.hpp
+include/asio/detail/thread_group.hpp
+include/asio/detail/thread_info_base.hpp
+include/asio/detail/throw_error.hpp
+include/asio/detail/throw_exception.hpp
+include/asio/detail/timer_queue.hpp
+include/asio/detail/timer_queue_base.hpp
+include/asio/detail/timer_queue_ptime.hpp
+include/asio/detail/timer_queue_set.hpp
+include/asio/detail/timer_scheduler.hpp
+include/asio/detail/timer_scheduler_fwd.hpp
+include/asio/detail/tss_ptr.hpp
+include/asio/detail/type_traits.hpp
+include/asio/detail/utility.hpp
+include/asio/detail/wait_handler.hpp
+include/asio/detail/wait_op.hpp
+include/asio/detail/win_event.hpp
+include/asio/detail/win_fd_set_adapter.hpp
+include/asio/detail/win_global.hpp
+include/asio/detail/win_iocp_file_service.hpp
+include/asio/detail/win_iocp_handle_read_op.hpp
+include/asio/detail/win_iocp_handle_service.hpp
+include/asio/detail/win_iocp_handle_write_op.hpp
+include/asio/detail/win_iocp_io_context.hpp
+include/asio/detail/win_iocp_null_buffers_op.hpp
+include/asio/detail/win_iocp_operation.hpp
+include/asio/detail/win_iocp_overlapped_op.hpp
+include/asio/detail/win_iocp_overlapped_ptr.hpp
+include/asio/detail/win_iocp_serial_port_service.hpp
+include/asio/detail/win_iocp_socket_accept_op.hpp
+include/asio/detail/win_iocp_socket_connect_op.hpp
+include/asio/detail/win_iocp_socket_recv_op.hpp
+include/asio/detail/win_iocp_socket_recvfrom_op.hpp
+include/asio/detail/win_iocp_socket_recvmsg_op.hpp
+include/asio/detail/win_iocp_socket_send_op.hpp
+include/asio/detail/win_iocp_socket_service.hpp
+include/asio/detail/win_iocp_socket_service_base.hpp
+include/asio/detail/win_iocp_thread_info.hpp
+include/asio/detail/win_iocp_wait_op.hpp
+include/asio/detail/win_mutex.hpp
+include/asio/detail/win_object_handle_service.hpp
+include/asio/detail/win_static_mutex.hpp
+include/asio/detail/win_thread.hpp
+include/asio/detail/win_tss_ptr.hpp
+include/asio/detail/winapp_thread.hpp
+include/asio/detail/wince_thread.hpp
+include/asio/detail/winrt_async_manager.hpp
+include/asio/detail/winrt_async_op.hpp
+include/asio/detail/winrt_resolve_op.hpp
+include/asio/detail/winrt_resolver_service.hpp
+include/asio/detail/winrt_socket_connect_op.hpp
+include/asio/detail/winrt_socket_recv_op.hpp
+include/asio/detail/winrt_socket_send_op.hpp
+include/asio/detail/winrt_ssocket_service.hpp
+include/asio/detail/winrt_ssocket_service_base.hpp
+include/asio/detail/winrt_timer_scheduler.hpp
+include/asio/detail/winrt_utils.hpp
+include/asio/detail/winsock_init.hpp
+include/asio/detail/work_dispatcher.hpp
+include/asio/detail/wrapped_handler.hpp
+include/asio/dispatch.hpp
+include/asio/error.hpp
+include/asio/error_code.hpp
+include/asio/execution.hpp
+include/asio/execution/allocator.hpp
+include/asio/execution/any_executor.hpp
+include/asio/execution/bad_executor.hpp
+include/asio/execution/blocking.hpp
+include/asio/execution/blocking_adaptation.hpp
+include/asio/execution/context.hpp
+include/asio/execution/context_as.hpp
+include/asio/execution/executor.hpp
+include/asio/execution/impl/bad_executor.ipp
+include/asio/execution/invocable_archetype.hpp
+include/asio/execution/mapping.hpp
+include/asio/execution/occupancy.hpp
+include/asio/execution/outstanding_work.hpp
+include/asio/execution/prefer_only.hpp
+include/asio/execution/relationship.hpp
+include/asio/execution_context.hpp
+include/asio/executor.hpp
+include/asio/executor_work_guard.hpp
+include/asio/experimental/append.hpp
+include/asio/experimental/as_single.hpp
+include/asio/experimental/as_tuple.hpp
+include/asio/experimental/awaitable_operators.hpp
+include/asio/experimental/basic_channel.hpp
+include/asio/experimental/basic_concurrent_channel.hpp
+include/asio/experimental/cancellation_condition.hpp
+include/asio/experimental/channel.hpp
+include/asio/experimental/channel_error.hpp
+include/asio/experimental/channel_traits.hpp
+include/asio/experimental/co_composed.hpp
+include/asio/experimental/co_spawn.hpp
+include/asio/experimental/concurrent_channel.hpp
+include/asio/experimental/coro.hpp
+include/asio/experimental/coro_traits.hpp
+include/asio/experimental/deferred.hpp
+include/asio/experimental/detail/channel_handler.hpp
+include/asio/experimental/detail/channel_message.hpp
+include/asio/experimental/detail/channel_operation.hpp
+include/asio/experimental/detail/channel_payload.hpp
+include/asio/experimental/detail/channel_receive_op.hpp
+include/asio/experimental/detail/channel_send_functions.hpp
+include/asio/experimental/detail/channel_send_op.hpp
+include/asio/experimental/detail/channel_service.hpp
+include/asio/experimental/detail/coro_completion_handler.hpp
+include/asio/experimental/detail/coro_promise_allocator.hpp
+include/asio/experimental/detail/has_signature.hpp
+include/asio/experimental/detail/impl/channel_service.hpp
+include/asio/experimental/detail/partial_promise.hpp
+include/asio/experimental/impl/as_single.hpp
+include/asio/experimental/impl/channel_error.ipp
+include/asio/experimental/impl/co_composed.hpp
+include/asio/experimental/impl/coro.hpp
+include/asio/experimental/impl/parallel_group.hpp
+include/asio/experimental/impl/promise.hpp
+include/asio/experimental/impl/use_coro.hpp
+include/asio/experimental/impl/use_promise.hpp
+include/asio/experimental/parallel_group.hpp
+include/asio/experimental/prepend.hpp
+include/asio/experimental/promise.hpp
+include/asio/experimental/use_coro.hpp
+include/asio/experimental/use_promise.hpp
+include/asio/file_base.hpp
+include/asio/generic/basic_endpoint.hpp
+include/asio/generic/datagram_protocol.hpp
+include/asio/generic/detail/endpoint.hpp
+include/asio/generic/detail/impl/endpoint.ipp
+include/asio/generic/raw_protocol.hpp
+include/asio/generic/seq_packet_protocol.hpp
+include/asio/generic/stream_protocol.hpp
+include/asio/handler_continuation_hook.hpp
+include/asio/high_resolution_timer.hpp
+include/asio/impl/any_completion_executor.ipp
+include/asio/impl/any_io_executor.ipp
+include/asio/impl/append.hpp
+include/asio/impl/as_tuple.hpp
+include/asio/impl/awaitable.hpp
+include/asio/impl/buffered_read_stream.hpp
+include/asio/impl/buffered_write_stream.hpp
+include/asio/impl/cancellation_signal.ipp
+include/asio/impl/co_spawn.hpp
+include/asio/impl/connect.hpp
+include/asio/impl/connect_pipe.hpp
+include/asio/impl/connect_pipe.ipp
+include/asio/impl/consign.hpp
+include/asio/impl/deferred.hpp
+include/asio/impl/detached.hpp
+include/asio/impl/error.ipp
+include/asio/impl/error_code.ipp
+include/asio/impl/execution_context.hpp
+include/asio/impl/execution_context.ipp
+include/asio/impl/executor.hpp
+include/asio/impl/executor.ipp
+include/asio/impl/io_context.hpp
+include/asio/impl/io_context.ipp
+include/asio/impl/multiple_exceptions.ipp
+include/asio/impl/prepend.hpp
+include/asio/impl/read.hpp
+include/asio/impl/read_at.hpp
+include/asio/impl/read_until.hpp
+include/asio/impl/redirect_error.hpp
+include/asio/impl/serial_port_base.hpp
+include/asio/impl/serial_port_base.ipp
+include/asio/impl/spawn.hpp
+include/asio/impl/src.hpp
+include/asio/impl/system_context.hpp
+include/asio/impl/system_context.ipp
+include/asio/impl/system_executor.hpp
+include/asio/impl/thread_pool.hpp
+include/asio/impl/thread_pool.ipp
+include/asio/impl/use_awaitable.hpp
+include/asio/impl/use_future.hpp
+include/asio/impl/write.hpp
+include/asio/impl/write_at.hpp
+include/asio/io_context.hpp
+include/asio/io_context_strand.hpp
+include/asio/io_service.hpp
+include/asio/io_service_strand.hpp
+include/asio/ip/address.hpp
+include/asio/ip/address_v4.hpp
+include/asio/ip/address_v4_iterator.hpp
+include/asio/ip/address_v4_range.hpp
+include/asio/ip/address_v6.hpp
+include/asio/ip/address_v6_iterator.hpp
+include/asio/ip/address_v6_range.hpp
+include/asio/ip/bad_address_cast.hpp
+include/asio/ip/basic_endpoint.hpp
+include/asio/ip/basic_resolver.hpp
+include/asio/ip/basic_resolver_entry.hpp
+include/asio/ip/basic_resolver_iterator.hpp
+include/asio/ip/basic_resolver_query.hpp
+include/asio/ip/basic_resolver_results.hpp
+include/asio/ip/detail/endpoint.hpp
+include/asio/ip/detail/impl/endpoint.ipp
+include/asio/ip/detail/socket_option.hpp
+include/asio/ip/host_name.hpp
+include/asio/ip/icmp.hpp
+include/asio/ip/impl/address.hpp
+include/asio/ip/impl/address.ipp
+include/asio/ip/impl/address_v4.hpp
+include/asio/ip/impl/address_v4.ipp
+include/asio/ip/impl/address_v6.hpp
+include/asio/ip/impl/address_v6.ipp
+include/asio/ip/impl/basic_endpoint.hpp
+include/asio/ip/impl/host_name.ipp
+include/asio/ip/impl/network_v4.hpp
+include/asio/ip/impl/network_v4.ipp
+include/asio/ip/impl/network_v6.hpp
+include/asio/ip/impl/network_v6.ipp
+include/asio/ip/multicast.hpp
+include/asio/ip/network_v4.hpp
+include/asio/ip/network_v6.hpp
+include/asio/ip/resolver_base.hpp
+include/asio/ip/resolver_query_base.hpp
+include/asio/ip/tcp.hpp
+include/asio/ip/udp.hpp
+include/asio/ip/unicast.hpp
+include/asio/ip/v6_only.hpp
+include/asio/is_applicable_property.hpp
+include/asio/is_contiguous_iterator.hpp
+include/asio/is_executor.hpp
+include/asio/is_read_buffered.hpp
+include/asio/is_write_buffered.hpp
+include/asio/local/basic_endpoint.hpp
+include/asio/local/connect_pair.hpp
+include/asio/local/datagram_protocol.hpp
+include/asio/local/detail/endpoint.hpp
+include/asio/local/detail/impl/endpoint.ipp
+include/asio/local/seq_packet_protocol.hpp
+include/asio/local/stream_protocol.hpp
+include/asio/multiple_exceptions.hpp
+include/asio/packaged_task.hpp
+include/asio/placeholders.hpp
+include/asio/posix/basic_descriptor.hpp
+include/asio/posix/basic_stream_descriptor.hpp
+include/asio/posix/descriptor.hpp
+include/asio/posix/descriptor_base.hpp
+include/asio/posix/stream_descriptor.hpp
+include/asio/post.hpp
+include/asio/prefer.hpp
+include/asio/prepend.hpp
+include/asio/query.hpp
+include/asio/random_access_file.hpp
+include/asio/read.hpp
+include/asio/read_at.hpp
+include/asio/read_until.hpp
+include/asio/readable_pipe.hpp
+include/asio/recycling_allocator.hpp
+include/asio/redirect_error.hpp
+include/asio/registered_buffer.hpp
+include/asio/require.hpp
+include/asio/require_concept.hpp
+include/asio/serial_port.hpp
+include/asio/serial_port_base.hpp
+include/asio/signal_set.hpp
+include/asio/signal_set_base.hpp
+include/asio/socket_base.hpp
+include/asio/spawn.hpp
+include/asio/ssl.hpp
+include/asio/ssl/context.hpp
+include/asio/ssl/context_base.hpp
+include/asio/ssl/detail/buffered_handshake_op.hpp
+include/asio/ssl/detail/engine.hpp
+include/asio/ssl/detail/handshake_op.hpp
+include/asio/ssl/detail/impl/engine.ipp
+include/asio/ssl/detail/impl/openssl_init.ipp
+include/asio/ssl/detail/io.hpp
+include/asio/ssl/detail/openssl_init.hpp
+include/asio/ssl/detail/openssl_types.hpp
+include/asio/ssl/detail/password_callback.hpp
+include/asio/ssl/detail/read_op.hpp
+include/asio/ssl/detail/shutdown_op.hpp
+include/asio/ssl/detail/stream_core.hpp
+include/asio/ssl/detail/verify_callback.hpp
+include/asio/ssl/detail/write_op.hpp
+include/asio/ssl/error.hpp
+include/asio/ssl/host_name_verification.hpp
+include/asio/ssl/impl/context.hpp
+include/asio/ssl/impl/context.ipp
+include/asio/ssl/impl/error.ipp
+include/asio/ssl/impl/host_name_verification.ipp
+include/asio/ssl/impl/rfc2818_verification.ipp
+include/asio/ssl/impl/src.hpp
+include/asio/ssl/rfc2818_verification.hpp
+include/asio/ssl/stream.hpp
+include/asio/ssl/stream_base.hpp
+include/asio/ssl/verify_context.hpp
+include/asio/ssl/verify_mode.hpp
+include/asio/static_thread_pool.hpp
+include/asio/steady_timer.hpp
+include/asio/strand.hpp
+include/asio/stream_file.hpp
+include/asio/streambuf.hpp
+include/asio/system_context.hpp
+include/asio/system_error.hpp
+include/asio/system_executor.hpp
+include/asio/system_timer.hpp
+include/asio/this_coro.hpp
+include/asio/thread.hpp
+include/asio/thread_pool.hpp
+include/asio/time_traits.hpp
+include/asio/traits/equality_comparable.hpp
+include/asio/traits/execute_member.hpp
+include/asio/traits/prefer_free.hpp
+include/asio/traits/prefer_member.hpp
+include/asio/traits/query_free.hpp
+include/asio/traits/query_member.hpp
+include/asio/traits/query_static_constexpr_member.hpp
+include/asio/traits/require_concept_free.hpp
+include/asio/traits/require_concept_member.hpp
+include/asio/traits/require_free.hpp
+include/asio/traits/require_member.hpp
+include/asio/traits/static_query.hpp
+include/asio/traits/static_require.hpp
+include/asio/traits/static_require_concept.hpp
+include/asio/ts/buffer.hpp
+include/asio/ts/executor.hpp
+include/asio/ts/internet.hpp
+include/asio/ts/io_context.hpp
+include/asio/ts/net.hpp
+include/asio/ts/netfwd.hpp
+include/asio/ts/socket.hpp
+include/asio/ts/timer.hpp
+include/asio/unyield.hpp
+include/asio/use_awaitable.hpp
+include/asio/use_future.hpp
+include/asio/uses_executor.hpp
+include/asio/version.hpp
+include/asio/wait_traits.hpp
+include/asio/windows/basic_object_handle.hpp
+include/asio/windows/basic_overlapped_handle.hpp
+include/asio/windows/basic_random_access_handle.hpp
+include/asio/windows/basic_stream_handle.hpp
+include/asio/windows/object_handle.hpp
+include/asio/windows/overlapped_handle.hpp
+include/asio/windows/overlapped_ptr.hpp
+include/asio/windows/random_access_handle.hpp
+include/asio/windows/stream_handle.hpp
+include/asio/writable_pipe.hpp
+include/asio/write.hpp
+include/asio/write_at.hpp
+include/asio/yield.hpp
+libdata/pkgconfig/asio.pc
diff --git a/net/eternalterminal/Makefile b/net/eternalterminal/Makefile
index cc8bb4d2e1f5..339c9988be38 100644
--- a/net/eternalterminal/Makefile
+++ b/net/eternalterminal/Makefile
@@ -1,7 +1,6 @@
PORTNAME= eternalterminal
DISTVERSIONPREFIX= et-v
-DISTVERSION= 6.2.9
-PORTREVISION= 8
+DISTVERSION= 6.2.10
CATEGORIES= net
MAINTAINER= eduardo@FreeBSD.org
diff --git a/net/eternalterminal/distinfo b/net/eternalterminal/distinfo
index 4cbf6c2fe83e..fae74dc8e8ae 100644
--- a/net/eternalterminal/distinfo
+++ b/net/eternalterminal/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1714591736
-SHA256 (MisterTea-EternalTerminal-et-v6.2.9_GH0.tar.gz) = 13bfb2722b011b5f0a28fa619508deca96deec9eee5e42b922add0c166d8185a
-SIZE (MisterTea-EternalTerminal-et-v6.2.9_GH0.tar.gz) = 25948460
+TIMESTAMP = 1753124983
+SHA256 (MisterTea-EternalTerminal-et-v6.2.10_GH0.tar.gz) = 5e2f46383b324baca0450d0190b386868d5666b346d6bf1d0f0f8d8c8ccf5a22
+SIZE (MisterTea-EternalTerminal-et-v6.2.10_GH0.tar.gz) = 28960041
diff --git a/net/fb303/Makefile b/net/fb303/Makefile
index c3f035832cd3..a7e59281e4a0 100644
--- a/net/fb303/Makefile
+++ b/net/fb303/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fb303
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= net
MAINTAINER= yuri@FreeBSD.org
diff --git a/net/fb303/distinfo b/net/fb303/distinfo
index b0e2cc1e9595..14007b235e0d 100644
--- a/net/fb303/distinfo
+++ b/net/fb303/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053905
-SHA256 (facebook-fb303-v2025.07.07.00_GH0.tar.gz) = 473b232cac6dac0d78768a72b7fd7970f25840135c2045418dbe582f29d1eda5
-SIZE (facebook-fb303-v2025.07.07.00_GH0.tar.gz) = 264344
+TIMESTAMP = 1753158796
+SHA256 (facebook-fb303-v2025.07.21.00_GH0.tar.gz) = f25d9720c145a22aba5089a72ad7a4a0be7facf34a7b39a5149929f94ecaff0d
+SIZE (facebook-fb303-v2025.07.21.00_GH0.tar.gz) = 265571
diff --git a/net/fb303/pkg-plist b/net/fb303/pkg-plist
index c87b087b757a..ae936078dad7 100644
--- a/net/fb303/pkg-plist
+++ b/net/fb303/pkg-plist
@@ -34,7 +34,6 @@ include/fb303/detail/QuantileStatMap.h
include/fb303/detail/QuantileStatWrappers-inl.h
include/fb303/detail/QuantileStatWrappers.h
include/fb303/detail/RegexUtil.h
-@dir include/fb303/thrift/clients
include/fb303/thrift/gen-cpp2/BaseService.h
include/fb303/thrift/gen-cpp2/BaseService.tcc
include/fb303/thrift/gen-cpp2/BaseServiceAsyncClient.h
@@ -44,8 +43,12 @@ include/fb303/thrift/gen-cpp2/fb303_core_metadata.h
include/fb303/thrift/gen-cpp2/fb303_core_types.h
include/fb303/thrift/gen-cpp2/fb303_core_types.tcc
include/fb303/thrift/gen-cpp2/fb303_core_types_custom_protocol.h
-@dir include/fb303/thrift/mocks
-@dir include/fb303/thrift/services
+@dir include/fb303/thrift/rust/clients
+@dir include/fb303/thrift/rust/gen_safe_patch/clients
+@dir include/fb303/thrift/rust/gen_safe_patch/mocks
+@dir include/fb303/thrift/rust/gen_safe_patch/services
+@dir include/fb303/thrift/rust/mocks
+@dir include/fb303/thrift/rust/services
include/thrift-files/fb303/thrift/fb303_core.thrift
lib/cmake/fb303/fb303-config.cmake
lib/cmake/fb303/fb303-targets-%%CMAKE_BUILD_TYPE%%.cmake
diff --git a/net/mvfst/Makefile b/net/mvfst/Makefile
index f27bf3ef3c6d..272683a4fb5f 100644
--- a/net/mvfst/Makefile
+++ b/net/mvfst/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mvfst
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= net
MAINTAINER= yuri@FreeBSD.org
diff --git a/net/mvfst/distinfo b/net/mvfst/distinfo
index 21b7e8d92026..d84aff0dcfa6 100644
--- a/net/mvfst/distinfo
+++ b/net/mvfst/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053910
-SHA256 (facebook-mvfst-v2025.07.07.00_GH0.tar.gz) = 11831c322feab8039dfff363de035d3cda10a29709d18a17117481c34de2533b
-SIZE (facebook-mvfst-v2025.07.07.00_GH0.tar.gz) = 2094844
+TIMESTAMP = 1753158800
+SHA256 (facebook-mvfst-v2025.07.21.00_GH0.tar.gz) = f5e8567871aaf20ca526441bb3cf9fc93b636bc38377e60cdd7d800399e24389
+SIZE (facebook-mvfst-v2025.07.21.00_GH0.tar.gz) = 2099919
diff --git a/net/mvfst/pkg-plist b/net/mvfst/pkg-plist
index 7dec706efd12..dcfba88934ae 100644
--- a/net/mvfst/pkg-plist
+++ b/net/mvfst/pkg-plist
@@ -74,6 +74,7 @@ include/quic/common/events/QuicEventBase.h
include/quic/common/events/QuicTimer.h
include/quic/common/testutil/MockAsyncUDPSocket.h
include/quic/common/third-party/enum.h
+include/quic/common/third-party/expected.hpp
include/quic/common/third-party/optional.h
include/quic/common/third-party/optional_flag_manipulator_fwd.h
include/quic/common/udpsocket/FollyQuicAsyncUDPSocket.h
diff --git a/net/py-blobfile/Makefile b/net/py-blobfile/Makefile
index 0dc6e2a19543..a97e845ab102 100644
--- a/net/py-blobfile/Makefile
+++ b/net/py-blobfile/Makefile
@@ -1,5 +1,6 @@
PORTNAME= blobfile
PORTVERSION= 3.0.0
+PORTREVISION= 1
CATEGORIES= net python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}filelock>=3.0:sysutils/py-filelock@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.9:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.9:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pycryptodomex>=3.8:security/py-pycryptodomex@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}urllib3>=1.25.3,1<3,1:net/py-urllib3@${PY_FLAVOR}
diff --git a/net/py-pyshark/Makefile b/net/py-pyshark/Makefile
index ef6992a9ff29..1e314b116c47 100644
--- a/net/py-pyshark/Makefile
+++ b/net/py-pyshark/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyshark
PORTVERSION= 0.6
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= net python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE= MIT
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}appdirs>=0:devel/py-appdirs@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}termcolor>=0:devel/py-termcolor@${PY_FLAVOR} \
tshark:net/wireshark@nox11
diff --git a/net/py-zeep/Makefile b/net/py-zeep/Makefile
index 900193adb5af..41017551a1f7 100644
--- a/net/py-zeep/Makefile
+++ b/net/py-zeep/Makefile
@@ -1,5 +1,6 @@
PORTNAME= zeep
DISTVERSION= 4.3.1
+PORTREVISION= 1
CATEGORIES= net python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=1.4.0,1:textproc/py-sphinx@${PY_FL
${PY_SETUPTOOLS}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=17.2.0:devel/py-attrs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}isodate>=0.5.4:devel/py-isodate@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.6.0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.6.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}platformdirs>=1.4.0:devel/py-platformdirs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.7.0:www/py-requests@${PY_FLAVOR} \
diff --git a/net/ryu/Makefile b/net/ryu/Makefile
index 41cc822787aa..68291659bba3 100644
--- a/net/ryu/Makefile
+++ b/net/ryu/Makefile
@@ -1,7 +1,7 @@
PORTNAME= ryu
PORTVERSION= 4.26
DISTVERSIONPREFIX= v
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= net python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}eventlet>0:net/py-eventlet@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}webob>=1.2:www/py-webob@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}paramiko>0:security/py-paramiko@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>0:net/py-netaddr@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}msgpack>=0.3.0:devel/py-msgpack@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.4.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ovs>0:devel/py-ovs@${PY_FLAVOR} \
diff --git a/net/samba416/Makefile b/net/samba416/Makefile
index a45b7bc71ce4..42beeddbe2ac 100644
--- a/net/samba416/Makefile
+++ b/net/samba416/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ${SAMBA4_BASENAME}416
PORTVERSION= ${SAMBA4_VERSION}
-PORTREVISION= 8
+PORTREVISION= 9
CATEGORIES?= net
MASTER_SITES= SAMBA/samba/stable SAMBA/samba/rc
DISTNAME= ${SAMBA4_DISTNAME}
@@ -381,7 +381,7 @@ GPGME_CONFIGURE_WITH= gpgme
GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme
GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR}
-GSSAPI_BUILTIN_USES= bison
+GSSAPI_BUILTIN_USES= bison gssapi
GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON
GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
diff --git a/net/samba419/Makefile b/net/samba419/Makefile
index f79f2b7c5376..68aea9f072ad 100644
--- a/net/samba419/Makefile
+++ b/net/samba419/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ${SAMBA4_BASENAME}419
PORTVERSION= ${SAMBA4_VERSION}
-PORTREVISION= 9
+PORTREVISION= 10
CATEGORIES?= net
MASTER_SITES= SAMBA/samba/stable SAMBA/samba/rc
DISTNAME= ${SAMBA4_DISTNAME}
@@ -366,8 +366,15 @@ GPGME_CONFIGURE_WITH= gpgme
GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme
GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR}
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BUILTIN_USES= bison gssapi
+GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON
+GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
+ --with-system-mitkdc=${GSSAPIBASEDIR}/libexec/krb5kdc
+.else
GSSAPI_BUILTIN_USES= bison
GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON
+.endif
GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
--with-system-mitkdc=${GSSAPIBASEDIR}/sbin/krb5kdc \
diff --git a/net/samba420/Makefile b/net/samba420/Makefile
index 42e525f6bb3f..68e4623196b2 100644
--- a/net/samba420/Makefile
+++ b/net/samba420/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ${SAMBA4_BASENAME}420
PORTVERSION= ${SAMBA4_VERSION}
-PORTREVISION= 7
+PORTREVISION= 8
CATEGORIES?= net
MASTER_SITES= SAMBA/samba/stable SAMBA/samba/rc
DISTNAME= ${SAMBA4_DISTNAME}
@@ -368,6 +368,12 @@ GPGME_CONFIGURE_WITH= gpgme
GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme
GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR}
+.if exists(/usr/libexec/krb5kdc)
+GSSAPI_BUILTIN_USES= gssapi
+GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
+ --with-system-mitkdc=${GSSAPIBASEDIR}/libexec/krb5kdc
+.endif
+
GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON
GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
diff --git a/net/wangle/Makefile b/net/wangle/Makefile
index ed0560601db0..b995019e1469 100644
--- a/net/wangle/Makefile
+++ b/net/wangle/Makefile
@@ -1,6 +1,6 @@
PORTNAME= wangle
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= net
MAINTAINER= yuri@FreeBSD.org
diff --git a/net/wangle/distinfo b/net/wangle/distinfo
index ead8f989c48e..5ce2b67c6f0e 100644
--- a/net/wangle/distinfo
+++ b/net/wangle/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053892
-SHA256 (facebook-wangle-v2025.07.07.00_GH0.tar.gz) = dcda76ebe3ee6d7857ee0541942d09c49438ad14bff2e7d8c98c41d74f1e927c
-SIZE (facebook-wangle-v2025.07.07.00_GH0.tar.gz) = 368593
+TIMESTAMP = 1753158782
+SHA256 (facebook-wangle-v2025.07.21.00_GH0.tar.gz) = c7407cf9e33c00d4cdd1fa96452638688c50402b6150eb7e42c9a5010eb78123
+SIZE (facebook-wangle-v2025.07.21.00_GH0.tar.gz) = 369158
diff --git a/news/py-pynzb/Makefile b/news/py-pynzb/Makefile
index 613775378600..69c775cb95b0 100644
--- a/news/py-pynzb/Makefile
+++ b/news/py-pynzb/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pynzb
PORTVERSION= 0.1.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= news python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -20,7 +20,7 @@ USE_PYTHON= pep517 autoplist
NO_ARCH= yes
OPTIONS_DEFINE= LXML
-LXML_DESC= Add support for py-lxml
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=2.2.1:devel/py-lxml@${PY_FLAVOR}
+LXML_DESC= Add support for py-lxml5
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2.1:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/print/py-relatorio/Makefile b/print/py-relatorio/Makefile
index 2d9b1334ffd6..8d58f745783d 100644
--- a/print/py-relatorio/Makefile
+++ b/print/py-relatorio/Makefile
@@ -1,5 +1,6 @@
PORTNAME= relatorio
PORTVERSION= 0.11.1
+PORTREVISION= 1
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Genshi>=0.5:textproc/py-genshi@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.0:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517 unittest
diff --git a/science/abinit/Makefile b/science/abinit/Makefile
index a310bee72cd0..2347581589fd 100644
--- a/science/abinit/Makefile
+++ b/science/abinit/Makefile
@@ -1,6 +1,5 @@
PORTNAME= abinit
-DISTVERSION= 10.2.7
-PORTREVISION= 1
+DISTVERSION= 10.4.5
CATEGORIES= science
MAINTAINER= yuri@FreeBSD.org
diff --git a/science/abinit/distinfo b/science/abinit/distinfo
index fa923cfa81d0..3cc29d915b5d 100644
--- a/science/abinit/distinfo
+++ b/science/abinit/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1739946724
-SHA256 (abinit-abinit-10.2.7_GH0.tar.gz) = 0cd5c5755d151ef6a95b107cdcf0ec496818e34356ae8d26b2b4842bf641aec4
-SIZE (abinit-abinit-10.2.7_GH0.tar.gz) = 141254516
+TIMESTAMP = 1753132807
+SHA256 (abinit-abinit-10.4.5_GH0.tar.gz) = ccb3af00603f574208b6d5bea6f857d7040be5748e7a93a689ffad84eb6a65ce
+SIZE (abinit-abinit-10.4.5_GH0.tar.gz) = 153582604
diff --git a/science/gemmi/Makefile b/science/gemmi/Makefile
index bca3ebaed373..aa0f3083bca2 100644
--- a/science/gemmi/Makefile
+++ b/science/gemmi/Makefile
@@ -1,11 +1,12 @@
PORTNAME= gemmi
DISTVERSIONPREFIX= v
-DISTVERSION= 0.7.1
+DISTVERSION= 0.7.3
CATEGORIES= science # chemistry
MAINTAINER= yuri@FreeBSD.org
COMMENT= Macromolecular crystallography library and utilities
-WWW= https://gemmi.readthedocs.io/en/latest/
+WWW= https://gemmi.readthedocs.io/en/latest/ \
+ https://github.com/project-gemmi/gemmi
LICENSE= MPL20
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
@@ -25,7 +26,7 @@ FORTRAN_USES= fortran
FORTRAN_CMAKE_BOOL= USE_FORTRAN
FORTRAN_BROKEN= project option doesn't do anything, see https://github.com/project-gemmi/gemmi/issues/232
-# tests as of 0.7.1 (run work/.build/cpptest):
+# tests as of 0.7.3 (run work/.build/cpptest):
# [doctest] test cases: 14 | 14 passed | 0 failed | 0 skipped
# [doctest] assertions: 129 | 129 passed | 0 failed |
# [doctest] Status: SUCCESS!
diff --git a/science/gemmi/distinfo b/science/gemmi/distinfo
index 49c83ebc50e8..a7884ddf53a9 100644
--- a/science/gemmi/distinfo
+++ b/science/gemmi/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1742884325
-SHA256 (project-gemmi-gemmi-v0.7.1_GH0.tar.gz) = 5d87c3e82ee159f5642d7c083a74e00ca9cc038ccf9be2522d7ae985f3377393
-SIZE (project-gemmi-gemmi-v0.7.1_GH0.tar.gz) = 1910265
+TIMESTAMP = 1753139349
+SHA256 (project-gemmi-gemmi-v0.7.3_GH0.tar.gz) = ed5e1d0665f27d623d877fa36f6c99a5de21310cc8715337ff9f6b545bd2e9d3
+SIZE (project-gemmi-gemmi-v0.7.3_GH0.tar.gz) = 1924234
diff --git a/science/gemmi/pkg-plist b/science/gemmi/pkg-plist
index c28c9d130ae7..965571f541a2 100644
--- a/science/gemmi/pkg-plist
+++ b/science/gemmi/pkg-plist
@@ -23,6 +23,7 @@ include/gemmi/crd.hpp
include/gemmi/ddl.hpp
include/gemmi/dencalc.hpp
include/gemmi/dirwalk.hpp
+include/gemmi/dssp.hpp
include/gemmi/ecalc.hpp
include/gemmi/eig3.hpp
include/gemmi/elem.hpp
diff --git a/science/phonopy/Makefile b/science/phonopy/Makefile
index 15241ef5732b..87062e5bc90e 100644
--- a/science/phonopy/Makefile
+++ b/science/phonopy/Makefile
@@ -1,6 +1,6 @@
PORTNAME= phonopy
DISTVERSIONPREFIX= v
-DISTVERSION= 2.41.2
+DISTVERSION= 2.42.0
CATEGORIES= science python
MAINTAINER= yuri@FreeBSD.org
diff --git a/science/phonopy/distinfo b/science/phonopy/distinfo
index 242c3100549a..7a515ee74037 100644
--- a/science/phonopy/distinfo
+++ b/science/phonopy/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752739755
-SHA256 (phonopy-phonopy-v2.41.2_GH0.tar.gz) = e78053c18dc6550bab6533b78704162c8d5bf0207ffcf3d61d636c0a4f9cbb33
-SIZE (phonopy-phonopy-v2.41.2_GH0.tar.gz) = 7717842
+TIMESTAMP = 1753085727
+SHA256 (phonopy-phonopy-v2.42.0_GH0.tar.gz) = db7efd4acb881114a9679a8f6730f127c196090d82077009746325ad2bc53041
+SIZE (phonopy-phonopy-v2.42.0_GH0.tar.gz) = 7718436
diff --git a/science/py-OpenMC/Makefile b/science/py-OpenMC/Makefile
index 6a295606f93b..77f10b2454d9 100644
--- a/science/py-OpenMC/Makefile
+++ b/science/py-OpenMC/Makefile
@@ -1,7 +1,7 @@
PORTNAME= OpenMC
DISTVERSIONPREFIX= v
DISTVERSION= 0.15.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= science
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
PY_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}h5py>0:science/py-h5py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ipython>0:devel/ipython@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}matplotlib>0:math/py-matplotlib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>0:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR} \
diff --git a/science/py-gemmi/Makefile b/science/py-gemmi/Makefile
index 2aac5d8717f0..9e7f9f8d7544 100644
--- a/science/py-gemmi/Makefile
+++ b/science/py-gemmi/Makefile
@@ -1,12 +1,13 @@
PORTNAME= gemmi
DISTVERSIONPREFIX= v
-DISTVERSION= 0.7.1
+DISTVERSION= 0.7.3
CATEGORIES= science python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= yuri@FreeBSD.org
COMMENT= Macromolecular crystallography library and utilities
-WWW= https://gemmi.readthedocs.io/en/latest/
+WWW= https://gemmi.readthedocs.io/en/latest/ \
+ https://github.com/project-gemmi/gemmi
LICENSE= MPL20
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
@@ -36,4 +37,6 @@ PLIST_SUB= VER=${PORTVERSION}
do-test:
@cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m unittest discover -v tests/
+# tests as of 0.7.3: test 'test_syntax_error' fails with syntax error, see https://github.com/project-gemmi/gemmi/issues/384
+
.include <bsd.port.mk>
diff --git a/science/py-gemmi/distinfo b/science/py-gemmi/distinfo
index 9050772d8cc8..b40d35b8cada 100644
--- a/science/py-gemmi/distinfo
+++ b/science/py-gemmi/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1742885714
-SHA256 (project-gemmi-gemmi-v0.7.1_GH0.tar.gz) = 5d87c3e82ee159f5642d7c083a74e00ca9cc038ccf9be2522d7ae985f3377393
-SIZE (project-gemmi-gemmi-v0.7.1_GH0.tar.gz) = 1910265
+TIMESTAMP = 1753140186
+SHA256 (project-gemmi-gemmi-v0.7.3_GH0.tar.gz) = ed5e1d0665f27d623d877fa36f6c99a5de21310cc8715337ff9f6b545bd2e9d3
+SIZE (project-gemmi-gemmi-v0.7.3_GH0.tar.gz) = 1924234
diff --git a/science/py-gemmi/files/patch-CMakeLists.txt b/science/py-gemmi/files/patch-CMakeLists.txt
index d75096e3228b..62637e7014cd 100644
--- a/science/py-gemmi/files/patch-CMakeLists.txt
+++ b/science/py-gemmi/files/patch-CMakeLists.txt
@@ -1,4 +1,4 @@
---- CMakeLists.txt.orig 2025-03-24 16:35:30 UTC
+--- CMakeLists.txt.orig 2025-07-05 13:51:16 UTC
+++ CMakeLists.txt
@@ -6,7 +6,7 @@ string(REGEX REPLACE ".+\"([0-9]+\.[0-9]+\.[0-9]+)(-de
string(REGEX REPLACE ".+\"([0-9]+\.[0-9]+\.[0-9]+)(-dev)?\"" "\\1"
@@ -27,7 +27,7 @@
-target_include_directories(gemmi_headers INTERFACE
- "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
- "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>")
--target_compile_features(gemmi_headers INTERFACE cxx_std_17)
+-target_compile_features(gemmi_headers INTERFACE cxx_std_14)
-set_target_properties(gemmi_headers PROPERTIES EXPORT_NAME headers)
-
-add_library(gemmi_cpp
@@ -37,7 +37,7 @@
- src/monlib.cpp src/mtz.cpp src/mtz2cif.cpp
- src/pdb.cpp src/polyheur.cpp src/read_cif.cpp
- src/resinfo.cpp src/riding_h.cpp
-- src/select.cpp src/sprintf.cpp src/symmetry.cpp
+- src/select.cpp src/sprintf.cpp src/dssp.cpp src/symmetry.cpp
- src/to_json.cpp src/to_mmcif.cpp src/to_pdb.cpp src/topo.cpp
- src/xds_ascii.cpp)
-add_library(gemmi::gemmi_cpp ALIAS gemmi_cpp)
@@ -98,8 +98,8 @@
target_include_directories(gemmi-${target} PRIVATE
"${CMAKE_CURRENT_SOURCE_DIR}/third_party")
endfunction()
-@@ -336,7 +274,7 @@ add_executable(gemmi::prog ALIAS gemmi_prog)
- prog/xds2mtz.cpp
+@@ -337,7 +275,7 @@ add_executable(gemmi::prog ALIAS gemmi_prog)
+ prog/wcn.cpp prog/xds2mtz.cpp
$<TARGET_OBJECTS:options>)
add_executable(gemmi::prog ALIAS gemmi_prog)
-target_link_libraries(gemmi_prog PRIVATE gemmi_cpp)
@@ -107,7 +107,7 @@
target_include_directories(gemmi_prog PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/third_party")
target_compile_definitions(gemmi_prog PRIVATE GEMMI_ALL_IN_ONE=1)
set_target_properties(gemmi_prog PROPERTIES OUTPUT_NAME gemmi EXPORT_NAME prog)
-@@ -376,7 +314,7 @@ target_compile_definitions(cpptest PRIVATE USE_STD_SNP
+@@ -377,17 +315,17 @@ target_compile_definitions(cpptest PRIVATE USE_STD_SNP
add_executable(cpptest EXCLUDE_FROM_ALL tests/main.cpp tests/cif.cpp tests/windowsh.cpp)
target_compile_definitions(cpptest PRIVATE USE_STD_SNPRINTF=1)
@@ -115,11 +115,9 @@
+target_link_libraries(cpptest PRIVATE gemmi)
target_include_directories(cpptest PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/third_party")
- add_executable(hello EXCLUDE_FROM_ALL examples/hello.cpp)
-@@ -384,11 +322,11 @@ add_executable(doc_example EXCLUDE_FROM_ALL
add_executable(doc_example EXCLUDE_FROM_ALL
docs/code/sym.cpp docs/code/elem.cpp docs/code/resinfo.cpp
- docs/code/cell.cpp docs/code/mutate.cpp src/resinfo.cpp)
+ docs/code/cell.cpp docs/code/mutate.cpp)
-target_link_libraries(doc_example PRIVATE gemmi_cpp)
+target_link_libraries(doc_example PRIVATE gemmi)
add_executable(doc_example2 EXCLUDE_FROM_ALL docs/code/cif_cc.cpp)
@@ -130,7 +128,7 @@
# always compile these tests with assertions enabled
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang|GNU|Intel")
-@@ -396,14 +334,14 @@ add_executable(test_disulf EXCLUDE_FROM_ALL tests/disu
+@@ -395,14 +333,14 @@ add_executable(test_disulf EXCLUDE_FROM_ALL tests/disu
endif()
add_executable(test_disulf EXCLUDE_FROM_ALL tests/disulf.cpp)
@@ -148,16 +146,16 @@
enable_testing()
-@@ -440,7 +378,7 @@ if (benchmark_FOUND)
+@@ -439,7 +377,7 @@ if (benchmark_FOUND)
foreach(b stoi elem mod niggli pdb resinfo round sym writecif)
add_executable(${b}-bm EXCLUDE_FROM_ALL benchmarks/${b}.cpp)
- if (b MATCHES "elem|resinfo|pdb|writecif")
+ if (b MATCHES "elem|resinfo|pdb|sym|writecif")
- target_link_libraries(${b}-bm PRIVATE gemmi_cpp)
+ target_link_libraries(${b}-bm PRIVATE gemmi)
endif()
target_link_libraries(${b}-bm PRIVATE gemmi_headers benchmark::benchmark)
set_property(TARGET ${b}-bm PROPERTY RUNTIME_OUTPUT_DIRECTORY
-@@ -481,11 +419,11 @@ if (USE_PYTHON)
+@@ -480,11 +418,11 @@ if (USE_PYTHON)
python/unitcell.cpp python/write.cpp)
if (STANDALONE_PYTHON_MODULE)
@@ -172,7 +170,7 @@
endif()
set_property(TARGET gemmi_py PROPERTY OUTPUT_NAME gemmi_ext)
if (CMAKE_CONFIGURATION_TYPES)
-@@ -568,19 +506,19 @@ endif()
+@@ -567,19 +505,19 @@ endif()
install(TARGETS gemmi_prog EXPORT GemmiTargets)
endif()
diff --git a/science/py-gemmi/pkg-plist b/science/py-gemmi/pkg-plist
index 7cf8db927729..9201705db9d6 100644
--- a/science/py-gemmi/pkg-plist
+++ b/science/py-gemmi/pkg-plist
@@ -7,7 +7,6 @@
%%PYTHON_SITELIBDIR%%/gemmi/examples/cif_i_sigi.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/col_order.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/from_json.py
-%%PYTHON_SITELIBDIR%%/gemmi/examples/hello.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/long_geom.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/map2mtz.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/maskcheck.py
@@ -22,6 +21,7 @@
%%PYTHON_SITELIBDIR%%/gemmi/examples/qq-plot.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/rama_gather.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/rama_plot.py
+%%PYTHON_SITELIBDIR%%/gemmi/examples/read_cif.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/refln-stats.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/simple_search.py
%%PYTHON_SITELIBDIR%%/gemmi/examples/sub_ccd.py
diff --git a/science/py-obspy/Makefile b/science/py-obspy/Makefile
index 682927b7f136..b0a3b8b4c973 100644
--- a/science/py-obspy/Makefile
+++ b/science/py-obspy/Makefile
@@ -1,5 +1,6 @@
PORTNAME= obspy
PORTVERSION= 1.4.2
+PORTREVISION= 1
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +15,7 @@ BUILD_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}scipy>=1.7.0:science/py-scipy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0.12.4:devel/py-future@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}matplotlib>=3.3.0:math/py-matplotlib@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.2:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}decorator>=0:devel/py-decorator@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlalchemy10>=0:databases/py-sqlalchemy10@${PY_FLAVOR}
diff --git a/science/py-phonopy/Makefile b/science/py-phonopy/Makefile
index 43101eaa6ecd..b298e416ecf5 100644
--- a/science/py-phonopy/Makefile
+++ b/science/py-phonopy/Makefile
@@ -1,5 +1,5 @@
PORTNAME= phonopy
-DISTVERSION= 2.41.2
+DISTVERSION= 2.42.0
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/science/py-phonopy/distinfo b/science/py-phonopy/distinfo
index 740077509ed3..fa7a9f63de51 100644
--- a/science/py-phonopy/distinfo
+++ b/science/py-phonopy/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752739793
-SHA256 (phonopy-2.41.2.tar.gz) = 850f1c298c1013c641ecbc94cd181cef3261b213655859d4bd88038ee442b232
-SIZE (phonopy-2.41.2.tar.gz) = 4713884
+TIMESTAMP = 1753085744
+SHA256 (phonopy-2.42.0.tar.gz) = f157afabc461d6b86c3ff09b139534890ca365ac4fd468cad1a0d0e9233776ce
+SIZE (phonopy-2.42.0.tar.gz) = 4715307
diff --git a/science/py-pycsw/Makefile b/science/py-pycsw/Makefile
index be76bccd65c7..0e08e20fb106 100644
--- a/science/py-pycsw/Makefile
+++ b/science/py-pycsw/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pycsw
PORTVERSION= 2.6.2
+PORTREVISION= 1
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}geolinks>=0:science/py-geolinks@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyproj>=0:graphics/py-pyproj@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}shapely>=0:devel/py-shapely@${PY_FLAVOR} \
diff --git a/science/py-pygeometa/Makefile b/science/py-pygeometa/Makefile
index dd1b60da1fc8..df12a82e2163 100644
--- a/science/py-pygeometa/Makefile
+++ b/science/py-pygeometa/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pygeometa
PORTVERSION= 0.15.3
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>=0:devel/py-click@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}jsonschema>=0:devel/py-jsonschema@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR}
diff --git a/science/py-pyteomics/Makefile b/science/py-pyteomics/Makefile
index cbcc08f885f8..6ef21f18727d 100644
--- a/science/py-pyteomics/Makefile
+++ b/science/py-pyteomics/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pyteomics
PORTVERSION= 4.7.5
+PORTREVISION= 1
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -30,9 +31,9 @@ XML_DESC= XML support
DF_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pandas>=0.17,1:math/py-pandas@${PY_FLAVOR}
GRAPHICS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=0:math/py-matplotlib@${PY_FLAVOR}
TDA_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR}
-UNIMOD_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+UNIMOD_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlalchemy14>=0:databases/py-sqlalchemy14@${PY_FLAVOR}
-XML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+XML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/science/py-quantities/Makefile b/science/py-quantities/Makefile
index 74a45beef3b2..dddaaa22df9e 100644
--- a/science/py-quantities/Makefile
+++ b/science/py-quantities/Makefile
@@ -1,6 +1,5 @@
PORTNAME= quantities
-DISTVERSION= 0.16.1
-PORTREVISION= 1
+DISTVERSION= 0.16.2
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -21,6 +20,6 @@ TEST_WRKSRC= ${WRKSRC}/quantities/tests
NO_ARCH= yes
-# tests: 173 passed, 3 xfailed in 33.50s
+# tests as of 0.16.2: 175 passed, 3 xfailed in 30.81s
.include <bsd.port.mk>
diff --git a/science/py-quantities/distinfo b/science/py-quantities/distinfo
index 26529773f059..eb191c3bbb35 100644
--- a/science/py-quantities/distinfo
+++ b/science/py-quantities/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1731110912
-SHA256 (quantities-0.16.1.tar.gz) = c9d688e8719720654187a6a83425e7d54f427d7465e03c49f3da53befd20074b
-SIZE (quantities-0.16.1.tar.gz) = 101045
+TIMESTAMP = 1753137018
+SHA256 (quantities-0.16.2.tar.gz) = 1f7c24f10d9ff57ddf751a358ea2fdfa9914516722f06a788ef4a2924c77d21c
+SIZE (quantities-0.16.2.tar.gz) = 101862
diff --git a/science/py-rmf/Makefile b/science/py-rmf/Makefile
index 1d13d19df62c..dbe6e2950396 100644
--- a/science/py-rmf/Makefile
+++ b/science/py-rmf/Makefile
@@ -6,7 +6,7 @@ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= yuri@FreeBSD.org
COMMENT= Library to support reading and writing of Rich Molecular Format files
WWW= https://integrativemodeling.org/rmf/ \
- https://github.com/open-rmf/rmf
+ https://github.com/salilab/rmf
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/COPYING
diff --git a/science/py-spglib/Makefile b/science/py-spglib/Makefile
index 14ad98f6aa4a..01e37fba4057 100644
--- a/science/py-spglib/Makefile
+++ b/science/py-spglib/Makefile
@@ -1,7 +1,6 @@
PORTNAME= spglib
DISTVERSIONPREFIX= v
-DISTVERSION= 2.5.0
-PORTREVISION= 1
+DISTVERSION= 2.6.0
CATEGORIES= science python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -19,10 +18,12 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>0:devel/py-setuptools-scm@$
${PYNUMPY} \
${PY_SETUPTOOLS}
LIB_DEPENDS= libsymspg.so:science/spglib
-RUN_DEPENDS= ${PYNUMPY}
+RUN_DEPENDS= ${PYNUMPY} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.9.0:devel/py-typing-extensions@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-benchmark>0:devel/py-pytest-benchmark@${PY_FLAVOR}
USES= python
-USE_PYTHON= pep517 autoplist pytest # tests fail to run, see https://github.com/spglib/spglib/issues/192
+USE_PYTHON= pep517 autoplist pytest
USE_GITHUB= yes
CMAKE_ARGS= -DPython3_EXECUTABLE=${PYTHON_CMD}
@@ -32,4 +33,6 @@ MAKE_ENV= SETUPTOOLS_SCM_PRETEND_VERSION=${DISTVERSION}
TEST_WRKSRC= ${WRKSRC}
TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+# tests as of 2.6.0: 3024 passed in 149.52s (0:02:29)
+
.include <bsd.port.mk>
diff --git a/science/py-spglib/distinfo b/science/py-spglib/distinfo
index 48711790a26d..b88216427863 100644
--- a/science/py-spglib/distinfo
+++ b/science/py-spglib/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1720768210
-SHA256 (spglib-spglib-v2.5.0_GH0.tar.gz) = b6026f5e85106c0c9ee57e54b9399890d0f29982e20e96ede0428b3efbe6b914
-SIZE (spglib-spglib-v2.5.0_GH0.tar.gz) = 2926427
+TIMESTAMP = 1753137266
+SHA256 (spglib-spglib-v2.6.0_GH0.tar.gz) = c65af71136c915352eb82444b165ec83289877eb8e46593033f199801b43dbf7
+SIZE (spglib-spglib-v2.6.0_GH0.tar.gz) = 2438640
diff --git a/science/py-spglib/files/patch-pyproject.toml b/science/py-spglib/files/patch-pyproject.toml
index 38d350736f4d..d7417075f4d6 100644
--- a/science/py-spglib/files/patch-pyproject.toml
+++ b/science/py-spglib/files/patch-pyproject.toml
@@ -1,21 +1,21 @@
- removal of license-files is a workaround for https://github.com/spglib/spglib/issues/560
---- pyproject.toml.orig 2024-07-11 08:36:56 UTC
+--- pyproject.toml.orig 2025-03-06 12:33:46 UTC
+++ pyproject.toml
@@ -1,7 +1,7 @@
[build-system]
# Numpy build and runtime dependencies are linked to ABI compatibility
# A new wheel rebuild is needed when changing these
--requires = ["scikit-build-core", "numpy~=2.0"]
-+requires = ["scikit-build-core", "numpy"]
+-requires = ["scikit-build-core>=0.11", "numpy~=2.0"]
++requires = ["scikit-build-core>=0.11", "numpy"]
build-backend = "scikit_build_core.build"
[project]
-@@ -9,7 +9,6 @@ license = { text = "BSD-3-Clause" }
+@@ -9,7 +9,6 @@ license = "BSD-3-Clause"
requires-python = ">=3.9"
description = "This is the spglib module."
- license = { text = "BSD-3-Clause" }
--license-files = { paths = ["COPYING"] }
+ license = "BSD-3-Clause"
+-license-files = ["COPYING"]
readme = "python/README.rst"
dynamic = ["version"]
dependencies = [
diff --git a/science/rmf/Makefile b/science/rmf/Makefile
index 5d09f287b9f7..9a1b1c673a5d 100644
--- a/science/rmf/Makefile
+++ b/science/rmf/Makefile
@@ -6,7 +6,7 @@ CATEGORIES= science graphics
MAINTAINER= yuri@FreeBSD.org
COMMENT= Library to support reading and writing of Rich Molecular Format files
WWW= https://integrativemodeling.org/rmf/ \
- https://github.com/open-rmf/rmf
+ https://github.com/salilab/rmf
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/COPYING
diff --git a/science/spglib/Makefile b/science/spglib/Makefile
index 4615c4db21ff..d12f56544466 100644
--- a/science/spglib/Makefile
+++ b/science/spglib/Makefile
@@ -1,6 +1,6 @@
PORTNAME= spglib
DISTVERSIONPREFIX= v
-DISTVERSION= 2.5.0
+DISTVERSION= 2.6.0
CATEGORIES= science
MAINTAINER= yuri@FreeBSD.org
@@ -32,4 +32,6 @@ OPTIONS_SUB= yes
FORTRAN_USES= fortran
FORTRAN_CMAKE_BOOL= SPGLIB_WITH_Fortran
+# tests as of 2.6.0: 100% tests passed, 0 tests failed out of 59
+
.include <bsd.port.mk>
diff --git a/science/spglib/distinfo b/science/spglib/distinfo
index 07218b207bc7..85fbb27635db 100644
--- a/science/spglib/distinfo
+++ b/science/spglib/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1720768091
-SHA256 (spglib-spglib-v2.5.0_GH0.tar.gz) = b6026f5e85106c0c9ee57e54b9399890d0f29982e20e96ede0428b3efbe6b914
-SIZE (spglib-spglib-v2.5.0_GH0.tar.gz) = 2926427
+TIMESTAMP = 1753138641
+SHA256 (spglib-spglib-v2.6.0_GH0.tar.gz) = c65af71136c915352eb82444b165ec83289877eb8e46593033f199801b43dbf7
+SIZE (spglib-spglib-v2.6.0_GH0.tar.gz) = 2438640
diff --git a/science/spglib/pkg-plist b/science/spglib/pkg-plist
index c3b5f01c8d33..5315006f0e5c 100644
--- a/science/spglib/pkg-plist
+++ b/science/spglib/pkg-plist
@@ -11,9 +11,9 @@ lib/cmake/Spglib/SpglibTargets_shared.cmake
%%FORTRAN%%lib/cmake/Spglib/try_compile.f90
%%FORTRAN%%lib/libspglib_f08.so
%%FORTRAN%%lib/libspglib_f08.so.2
-%%FORTRAN%%lib/libspglib_f08.so.2.5.0
+%%FORTRAN%%lib/libspglib_f08.so.2.6.0
lib/libsymspg.so
lib/libsymspg.so.2
-lib/libsymspg.so.2.5.0
+lib/libsymspg.so.2.6.0
libdata/pkgconfig/spglib.pc
%%FORTRAN%%libdata/pkgconfig/spglib_f08.pc
diff --git a/science/votca/Makefile b/science/votca/Makefile
index 24ce596890b3..340f86f54768 100644
--- a/science/votca/Makefile
+++ b/science/votca/Makefile
@@ -1,12 +1,13 @@
PORTNAME= votca
DISTVERSIONPREFIX= v
DISTVERSION= 2025
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= science
MAINTAINER= yuri@FreeBSD.org
COMMENT= CSG and XTP: libraries for atomistic simulations
-WWW= https://github.com/votca/votca
+WWW= https://www.votca.org/ \
+ https://github.com/votca/votca
LICENSE= APACHE20
@@ -15,7 +16,7 @@ BROKEN_i386= undefined reference to `__atomic_load'
PY_DEPENDS= \
${PYTHON_PKGNAMEPREFIX}ase>0:science/py-ase@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}h5py>0:science/py-h5py@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xmltodict>0:devel/py-xmltodict@${PY_FLAVOR} \
rdkit>0:science/rdkit
BUILD_DEPENDS= bash:shells/bash \
diff --git a/security/Makefile b/security/Makefile
index 0343c9fd1932..15488729f2b5 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -255,6 +255,7 @@
SUBDIR += keepass
SUBDIR += keepass-plugin-keepassrpc
SUBDIR += keepassxc
+ SUBDIR += keepassxc276
SUBDIR += keybase
SUBDIR += keychain
SUBDIR += keyprint
diff --git a/security/fizz/Makefile b/security/fizz/Makefile
index 34ec1011e8f7..52d84d866404 100644
--- a/security/fizz/Makefile
+++ b/security/fizz/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fizz
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= security
MAINTAINER= yuri@FreeBSD.org
diff --git a/security/fizz/distinfo b/security/fizz/distinfo
index 3adc96cbaa66..61fd5fd39bbb 100644
--- a/security/fizz/distinfo
+++ b/security/fizz/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053888
-SHA256 (facebookincubator-fizz-v2025.07.07.00_GH0.tar.gz) = 86635b14d000c6e8e61a3edfbd9ad51764c9bf84b3702d73ac6dadff97786c99
-SIZE (facebookincubator-fizz-v2025.07.07.00_GH0.tar.gz) = 759365
+TIMESTAMP = 1753158778
+SHA256 (facebookincubator-fizz-v2025.07.21.00_GH0.tar.gz) = 8e2eef377e81913edb70bd2beb53ed0f3b56048411314c557f8d9028c7b983f1
+SIZE (facebookincubator-fizz-v2025.07.21.00_GH0.tar.gz) = 762878
diff --git a/security/gvmd/Makefile b/security/gvmd/Makefile
index 0648b0880e09..0e719b8bddbb 100644
--- a/security/gvmd/Makefile
+++ b/security/gvmd/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gvmd
DISTVERSION= 26.0.0
-PORTREVISION= 1
+PORTREVISION= 2
DISTVERSIONPREFIX= v
CATEGORIES= security
@@ -15,7 +15,7 @@ LIB_DEPENDS= libgvm_base.so:security/gvm-libs \
libgnutls.so:security/gnutls \
libgpgme.so:security/gpgme \
libical.so:devel/libical
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${LOCALBASE}/lib/postgresql/libpg-gvm.so:databases/pg-gvm \
doxygen>0:devel/doxygen \
p5-XML-Twig>=0:textproc/p5-XML-Twig \
diff --git a/security/keepassxc/Makefile b/security/keepassxc/Makefile
index 4cb9c335c67b..1cd13b8eb820 100644
--- a/security/keepassxc/Makefile
+++ b/security/keepassxc/Makefile
@@ -1,5 +1,5 @@
PORTNAME= keepassxc
-DISTVERSION= 2.7.6
+DISTVERSION= 2.7.10
CATEGORIES= security
MASTER_SITES= https://github.com/keepassxreboot/keepassxc/releases/download/${DISTVERSION}/
DISTNAME= ${PORTNAME}-${DISTVERSION}-src
@@ -15,13 +15,10 @@ LICENSE_NAME_NOKIA-LGPL-EXCEPTION= Nokia Qt LGPL Exception version 1.1
LICENSE_FILE_NOKIA-LGPL-EXCEPTION= ${WRKSRC}/LICENSE.NOKIA-LGPL-EXCEPTION
LICENSE_PERMS_NOKIA-LGPL-EXCEPTION= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
-DEPRECATED= Depends on expired security/botan2
-EXPIRATION_DATE=2025-06-21
-
BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor
LIB_DEPENDS= libargon2.so:security/libargon2 \
libqrencode.so:graphics/libqrencode \
- libbotan-2.so:security/botan2
+ libbotan-3.so:security/botan3
USES= cmake compiler:c++17-lang desktop-file-utils pkgconfig qt:5 \
readline shared-mime-info tar:xz xorg
@@ -32,7 +29,7 @@ USE_XORG= x11
WRKSRC= ${WRKDIR}/${DISTNAME:S/-src//}
CMAKE_OFF= WITH_XC_UPDATECHECK
-CONFLICTS_INSTALL= keepassx-0.* keepassx2 keepassx
+CONFLICTS_INSTALL= keepassx-0.* keepassx2 keepassx keepassxc276
OPTIONS_DEFINE= AUTOTYPE BROWSER FDOSECRETS KEESHARE NETWORKING SSHAGENT YUBIKEY TEST
OPTIONS_DEFAULT= AUTOTYPE BROWSER FDOSECRETS KEESHARE NETWORKING SSHAGENT YUBIKEY
diff --git a/security/keepassxc/distinfo b/security/keepassxc/distinfo
index 25f70dd938b3..6a354c652cb2 100644
--- a/security/keepassxc/distinfo
+++ b/security/keepassxc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1692163985
-SHA256 (keepassxc-2.7.6-src.tar.xz) = a58074509fa8e90f152c6247f73e75e126303081f55eedb4ea0cbb6fa980d670
-SIZE (keepassxc-2.7.6-src.tar.xz) = 8474624
+TIMESTAMP = 1751644926
+SHA256 (keepassxc-2.7.10-src.tar.xz) = 5ce76d6440986c24842585f019d5f3cadc166fa71fc911a4fe97b8bbc4819dfa
+SIZE (keepassxc-2.7.10-src.tar.xz) = 9787952
diff --git a/security/keepassxc/files/patch-CMakeLists.txt b/security/keepassxc/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..38c92ebea387
--- /dev/null
+++ b/security/keepassxc/files/patch-CMakeLists.txt
@@ -0,0 +1,13 @@
+--- CMakeLists.txt.orig 2024-06-19 14:32:55.000000000 -0700
++++ CMakeLists.txt 2024-06-20 07:26:46.907481000 -0700
+@@ -575,8 +575,8 @@
+ include_directories(SYSTEM ${PCSC_INCLUDE_DIRS})
+
+ if(UNIX AND NOT APPLE)
+- find_library(LIBUSB_LIBRARIES NAMES usb-1.0 REQUIRED)
+- find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h PATH_SUFFIXES "libusb-1.0" "libusb" REQUIRED)
++ find_library(LIBUSB_LIBRARIES NAMES usb REQUIRED)
++ find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h PATH_SUFFIXES "libusb" "libusb" REQUIRED)
+ include_directories(SYSTEM ${LIBUSB_INCLUDE_DIR})
+ endif()
+ endif()
diff --git a/security/keepassxc276/Makefile b/security/keepassxc276/Makefile
new file mode 100644
index 000000000000..e5965d9be9de
--- /dev/null
+++ b/security/keepassxc276/Makefile
@@ -0,0 +1,72 @@
+PORTNAME= keepassxc
+DISTVERSION= 2.7.6
+CATEGORIES= security
+MASTER_SITES= https://github.com/keepassxreboot/keepassxc/releases/download/${DISTVERSION}/
+PKGNAMESUFFIX= 276
+DISTNAME= ${PORTNAME}-${DISTVERSION}-src
+
+MAINTAINER= lwhsu@FreeBSD.org
+COMMENT= KeePass Cross-platform Community Edition
+WWW= https://keepassxc.org
+
+CONFLICTS= keepassxc-[1-9]*
+
+LICENSE= APACHE20 BSD3CLAUSE CC0-1.0 GPLv2 GPLv3 LGPL21 LGPL3 MIT \
+ NOKIA-LGPL-EXCEPTION
+LICENSE_COMB= multi
+LICENSE_NAME_NOKIA-LGPL-EXCEPTION= Nokia Qt LGPL Exception version 1.1
+LICENSE_FILE_NOKIA-LGPL-EXCEPTION= ${WRKSRC}/LICENSE.NOKIA-LGPL-EXCEPTION
+LICENSE_PERMS_NOKIA-LGPL-EXCEPTION= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+DEPRECATED= Depends on expired security/botan2
+EXPIRATION_DATE=2025-06-21
+
+BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor
+LIB_DEPENDS= libargon2.so:security/libargon2 \
+ libqrencode.so:graphics/libqrencode \
+ libbotan-2.so:security/botan2
+
+USES= cmake compiler:c++17-lang desktop-file-utils pkgconfig qt:5 \
+ readline shared-mime-info tar:xz xorg
+USE_QT= concurrent core dbus gui network svg widgets buildtools:build \
+ linguisttools:build qmake:build testlib:build x11extras
+USE_XORG= x11
+
+WRKSRC= ${WRKDIR}/${DISTNAME:S/-src//}
+CMAKE_OFF= WITH_XC_UPDATECHECK
+
+CONFLICTS_INSTALL= keepassx-0.* keepassx2 keepassx
+
+OPTIONS_DEFINE= AUTOTYPE BROWSER FDOSECRETS KEESHARE NETWORKING SSHAGENT YUBIKEY TEST
+OPTIONS_DEFAULT= AUTOTYPE BROWSER FDOSECRETS KEESHARE NETWORKING SSHAGENT YUBIKEY
+OPTIONS_SUB= yes
+
+AUTOTYPE_CMAKE_BOOL= WITH_XC_AUTOTYPE
+AUTOTYPE_DESC= Auto-type passwords in input fields
+AUTOTYPE_USE= XORG=xi,xtst
+
+BROWSER_CMAKE_BOOL= WITH_XC_BROWSER
+BROWSER_DESC= Browser integration with KeePassXC-Browser
+
+FDOSECRETS_CMAKE_BOOL= WITH_XC_FDOSECRETS
+FDOSECRETS_DESC= freedesktop.org secrets service support
+
+KEESHARE_CMAKE_BOOL= WITH_XC_KEESHARE
+KEESHARE_DESC= Sharing integration with KeeShare
+KEESHARE_USES= minizip
+
+# Legacy/Deprecated.
+NETWORKING_CMAKE_BOOL= WITH_XC_NETWORKING
+NETWORKING_DESC= Networking support (e.g. for downloading website icons)
+
+SSHAGENT_CMAKE_BOOL= WITH_XC_SSHAGENT
+SSHAGENT_DESC= SSH agent support
+
+YUBIKEY_CMAKE_BOOL= WITH_XC_YUBIKEY
+YUBIKEY_DESC= YubiKey support
+YUBIKEY_LIB_DEPENDS= libpcsclite.so:devel/pcsc-lite
+
+TEST_CMAKE_BOOL= WITH_TESTS WITH_GUI_TESTS
+TEST_TEST_TARGET= test
+
+.include <bsd.port.mk>
diff --git a/security/keepassxc276/distinfo b/security/keepassxc276/distinfo
new file mode 100644
index 000000000000..25f70dd938b3
--- /dev/null
+++ b/security/keepassxc276/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1692163985
+SHA256 (keepassxc-2.7.6-src.tar.xz) = a58074509fa8e90f152c6247f73e75e126303081f55eedb4ea0cbb6fa980d670
+SIZE (keepassxc-2.7.6-src.tar.xz) = 8474624
diff --git a/security/keepassxc276/files/patch-src_thirdparty_ykcore_CMakeLists.txt b/security/keepassxc276/files/patch-src_thirdparty_ykcore_CMakeLists.txt
new file mode 100644
index 000000000000..af4cb68d5d09
--- /dev/null
+++ b/security/keepassxc276/files/patch-src_thirdparty_ykcore_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- src/thirdparty/ykcore/CMakeLists.txt.orig 2022-03-21 22:47:20 UTC
++++ src/thirdparty/ykcore/CMakeLists.txt
+@@ -27,7 +27,7 @@ elseif(UNIX AND NOT APPLE)
+ elseif(UNIX AND NOT APPLE)
+ target_sources(ykcore PRIVATE ykcore_libusb-1.0.c)
+
+- find_library(LIBUSB_LIBRARY NAMES usb-1.0)
++ find_library(LIBUSB_LIBRARY NAMES usb-1.0 usb)
+ find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h PATH_SUFFIXES "libusb-1.0" "libusb")
+ if(NOT LIBUSB_LIBRARY OR NOT LIBUSB_INCLUDE_DIR)
+ message(FATAL_ERROR "libusb-1.0 dev package required, but not found")
diff --git a/security/keepassxc276/pkg-descr b/security/keepassxc276/pkg-descr
new file mode 100644
index 000000000000..f71cf7e984f7
--- /dev/null
+++ b/security/keepassxc276/pkg-descr
@@ -0,0 +1,22 @@
+KeePassXC is a community fork of KeePassX, a native cross-platform port of
+KeePass Password Safe, with the goal to extend and improve it with new features
+and bugfixes to provide a feature-rich, fully cross-platform and modern
+open-source password manager.
+
+Main Features
+
+ * Secure storage with AES, Twofish or ChaCha20 encryption
+ * File format compatibility with KeePass2, KeePassX, MacPass, KeeWeb and many
+ others (KDBX 3.1 and 4.0)
+ * SSH Agent integration
+ * Passwords synchronization using KeeShare
+ * Auto-Type for automagically filling in login forms
+ * Key file and YubiKey challenge-response support for additional security
+ * TOTP generation (including Steam Guard)
+ * CSV import from other password managers (e.g., LastPass)
+ * Command line interface
+ * Custom icons for database entries and download of website favicons
+ * Database merge functionality
+ * Automatic reload when the database was changed externally
+ * Browser integration with KeePassXC-Browser for Google Chrome, Chromium,
+ Vivaldi, and Mozilla Firefox.
diff --git a/security/keepassxc276/pkg-plist b/security/keepassxc276/pkg-plist
new file mode 100644
index 000000000000..28f44ae6c9c8
--- /dev/null
+++ b/security/keepassxc276/pkg-plist
@@ -0,0 +1,67 @@
+bin/keepassxc
+bin/keepassxc-cli
+%%BROWSER%%bin/keepassxc-proxy
+%%AUTOTYPE%%lib/keepassxc/libkeepassxc-autotype-xcb.so
+share/man/man1/keepassxc-cli.1.gz
+share/man/man1/keepassxc.1.gz
+share/applications/org.keepassxc.KeePassXC.desktop
+share/icons/hicolor/256x256/apps/keepassxc.png
+share/icons/hicolor/scalable/apps/keepassxc-locked.svg
+share/icons/hicolor/scalable/apps/keepassxc-monochrome-dark-locked.svg
+share/icons/hicolor/scalable/apps/keepassxc-monochrome-dark.svg
+share/icons/hicolor/scalable/apps/keepassxc-monochrome-light-locked.svg
+share/icons/hicolor/scalable/apps/keepassxc-monochrome-light.svg
+share/icons/hicolor/scalable/apps/keepassxc-unlocked.svg
+share/icons/hicolor/scalable/apps/keepassxc.svg
+share/icons/hicolor/scalable/mimetypes/application-x-keepassxc.svg
+%%DATADIR%%/docs/KeePassXC_GettingStarted.html
+%%DATADIR%%/docs/KeePassXC_KeyboardShortcuts.html
+%%DATADIR%%/docs/KeePassXC_UserGuide.html
+%%DATADIR%%/icons/application/256x256/apps/keepassxc.png
+%%DATADIR%%/translations/keepassxc_ar.qm
+%%DATADIR%%/translations/keepassxc_bg.qm
+%%DATADIR%%/translations/keepassxc_ca.qm
+%%DATADIR%%/translations/keepassxc_cs.qm
+%%DATADIR%%/translations/keepassxc_da.qm
+%%DATADIR%%/translations/keepassxc_de.qm
+%%DATADIR%%/translations/keepassxc_el.qm
+%%DATADIR%%/translations/keepassxc_en.qm
+%%DATADIR%%/translations/keepassxc_en_GB.qm
+%%DATADIR%%/translations/keepassxc_en_US.qm
+%%DATADIR%%/translations/keepassxc_es.qm
+%%DATADIR%%/translations/keepassxc_et.qm
+%%DATADIR%%/translations/keepassxc_fi.qm
+%%DATADIR%%/translations/keepassxc_fil.qm
+%%DATADIR%%/translations/keepassxc_fr.qm
+%%DATADIR%%/translations/keepassxc_fr_CA.qm
+%%DATADIR%%/translations/keepassxc_he.qm
+%%DATADIR%%/translations/keepassxc_hr.qm
+%%DATADIR%%/translations/keepassxc_hu.qm
+%%DATADIR%%/translations/keepassxc_id.qm
+%%DATADIR%%/translations/keepassxc_it.qm
+%%DATADIR%%/translations/keepassxc_ja.qm
+%%DATADIR%%/translations/keepassxc_km.qm
+%%DATADIR%%/translations/keepassxc_ko.qm
+%%DATADIR%%/translations/keepassxc_lt.qm
+%%DATADIR%%/translations/keepassxc_my.qm
+%%DATADIR%%/translations/keepassxc_nb.qm
+%%DATADIR%%/translations/keepassxc_nl.qm
+%%DATADIR%%/translations/keepassxc_pl.qm
+%%DATADIR%%/translations/keepassxc_pt_BR.qm
+%%DATADIR%%/translations/keepassxc_pt_PT.qm
+%%DATADIR%%/translations/keepassxc_ro.qm
+%%DATADIR%%/translations/keepassxc_ru.qm
+%%DATADIR%%/translations/keepassxc_si.qm
+%%DATADIR%%/translations/keepassxc_sk.qm
+%%DATADIR%%/translations/keepassxc_sl.qm
+%%DATADIR%%/translations/keepassxc_sq.qm
+%%DATADIR%%/translations/keepassxc_sr.qm
+%%DATADIR%%/translations/keepassxc_sv.qm
+%%DATADIR%%/translations/keepassxc_th.qm
+%%DATADIR%%/translations/keepassxc_tr.qm
+%%DATADIR%%/translations/keepassxc_uk.qm
+%%DATADIR%%/translations/keepassxc_zh_CN.qm
+%%DATADIR%%/translations/keepassxc_zh_TW.qm
+%%DATADIR%%/wordlists/eff_large.wordlist
+share/metainfo/org.keepassxc.KeePassXC.appdata.xml
+share/mime/packages/keepassxc.xml
diff --git a/security/py-cybox/Makefile b/security/py-cybox/Makefile
index 5380ef49a79a..d6829f5065fc 100644
--- a/security/py-cybox/Makefile
+++ b/security/py-cybox/Makefile
@@ -1,7 +1,7 @@
PORTNAME= cybox
PORTVERSION= 2.1.0.21
DISTVERSIONPREFIX= v
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= security python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.2.3:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2.3:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mixbox>=1.0.2:security/py-mixbox@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>=0:devel/py-nose@${PY_FLAVOR}
diff --git a/security/py-maec/Makefile b/security/py-maec/Makefile
index f03bb0997f05..eb40a7d2fa9b 100644
--- a/security/py-maec/Makefile
+++ b/security/py-maec/Makefile
@@ -1,6 +1,6 @@
PORTNAME= maec
PORTVERSION= 4.1.0.17
-PORTREVISION= 1
+PORTREVISION= 2
DISTVERSIONPREFIX= v
CATEGORIES= security python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/MAECProject/python-maec
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=2.2.3:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=2.2.3:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cybox>=2.1.0.13:security/py-cybox@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mixbox>=0.0.13:security/py-mixbox@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>=0:devel/py-nose@${PY_FLAVOR}
diff --git a/security/py-mixbox/Makefile b/security/py-mixbox/Makefile
index fb026db3022c..af0835f1254e 100644
--- a/security/py-mixbox/Makefile
+++ b/security/py-mixbox/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mixbox
PORTVERSION= 1.0.5
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= security python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/CybOXProject/mixbox
LICENSE= BSD3CLAUSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}ordered-set>=0:devel/py-ordered-set@${PY_FLAVOR}
NO_ARCH= yes
diff --git a/security/py-ospd-openvas/Makefile b/security/py-ospd-openvas/Makefile
index f712dc948669..c7029aa90cce 100644
--- a/security/py-ospd-openvas/Makefile
+++ b/security/py-ospd-openvas/Makefile
@@ -1,6 +1,7 @@
PORTNAME= ospd-openvas
DISTVERSION= 22.9.0
DISTVERSIONPREFIX= v
+PORTREVISION= 1
CATEGORIES= security python
#MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +19,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}redis>=0:databases/py-redis@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}defusedxml>=0:devel/py-defusedxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}deprecated>0:devel/py-deprecated@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}paramiko>0:security/py-paramiko@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-gnupg>0:security/py-python-gnupg@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}paho-mqtt>0:net/py-paho-mqtt@${PY_FLAVOR} \
diff --git a/security/py-pykeepass/Makefile b/security/py-pykeepass/Makefile
index 6856c073a1a3..84c0e4e45cbe 100644
--- a/security/py-pykeepass/Makefile
+++ b/security/py-pykeepass/Makefile
@@ -1,6 +1,7 @@
PORTNAME= pykeepass
DISTVERSION= 4.1.1
DISTVERSIONSUFFIX= .post1
+PORTREVISION= 1
CATEGORIES= security python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +18,7 @@ BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}argon2-cffi>=0:security/py-argon2-cffi@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}construct>=0:devel/py-construct@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pycryptodomex>=0:security/py-pycryptodomex@${PY_FLAVOR}
USES= python
diff --git a/security/py-python-cas/Makefile b/security/py-python-cas/Makefile
index afdb7b8656e8..2f174cd20904 100644
--- a/security/py-python-cas/Makefile
+++ b/security/py-python-cas/Makefile
@@ -1,6 +1,6 @@
PORTNAME= python-cas
PORTVERSION= 1.6.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= security python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.11.1:www/py-requests@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=3.4:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=3.4:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist distutils
diff --git a/security/py-python3-saml/Makefile b/security/py-python3-saml/Makefile
index a2d8be7364ed..2079f1a1cdb0 100644
--- a/security/py-python3-saml/Makefile
+++ b/security/py-python3-saml/Makefile
@@ -1,5 +1,6 @@
PORTNAME= python3-saml
PORTVERSION= 1.16.0
+PORTREVISION= 1
CATEGORIES= security python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +17,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.1.0:devel/py-poetry-core@${
${PYTHON_PKGNAMEPREFIX}setuptools>=40.1.0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}isodate>=0.6.1:devel/py-isodate@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.6.5:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.6.5:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xmlsec>=1.3.9:security/py-xmlsec@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=4.5.2:devel/py-coverage@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}flake8>=3.6.0:devel/py-flake8@${PY_FLAVOR} \
diff --git a/security/py-stix/Makefile b/security/py-stix/Makefile
index bebebd778cb9..d32ce7cc2494 100644
--- a/security/py-stix/Makefile
+++ b/security/py-stix/Makefile
@@ -1,7 +1,7 @@
PORTNAME= stix
PORTVERSION= 1.2.0.11
DISTVERSIONPREFIX= v
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= security python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.3:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.3:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cybox>=2.1.0.13:security/py-cybox@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mixbox>=1.0.2:security/py-mixbox@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>=0:devel/py-nose@${PY_FLAVOR} \
diff --git a/security/vuxml/vuln/2025.xml b/security/vuxml/vuln/2025.xml
index 22b2f0f2fbf0..d41fa0a839d8 100644
--- a/security/vuxml/vuln/2025.xml
+++ b/security/vuxml/vuln/2025.xml
@@ -1612,7 +1612,7 @@
<affects>
<package>
<name>openh264</name>
- <range><lt>2.5.1</lt></range>
+ <range><lt>2.5.1,2</lt></range>
</package>
</affects>
<description>
diff --git a/security/zeek/Makefile b/security/zeek/Makefile
index 6a84daace7de..e9a2bcc78a26 100644
--- a/security/zeek/Makefile
+++ b/security/zeek/Makefile
@@ -1,6 +1,5 @@
PORTNAME= zeek
-DISTVERSION= 7.0.8
-PORTREVISION= 1
+DISTVERSION= 7.0.9
CATEGORIES= security
MASTER_SITES= https://download.zeek.org/
diff --git a/security/zeek/distinfo b/security/zeek/distinfo
index 556e223ec34a..716e78e681b4 100644
--- a/security/zeek/distinfo
+++ b/security/zeek/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747772619
-SHA256 (zeek-7.0.8.tar.gz) = 29f918851d671fb3d8fe6b97e3d9fcefaa18660c57cb1ed63adc5e25773175cd
-SIZE (zeek-7.0.8.tar.gz) = 95963798
+TIMESTAMP = 1753129322
+SHA256 (zeek-7.0.9.tar.gz) = bebec9a71242da250ef8476bfce632c43892995c247d8dfafcef80ce42f6adbc
+SIZE (zeek-7.0.9.tar.gz) = 95973519
diff --git a/shells/carapace/Makefile b/shells/carapace/Makefile
index c339efacc80d..2b564bac4e26 100644
--- a/shells/carapace/Makefile
+++ b/shells/carapace/Makefile
@@ -1,7 +1,6 @@
PORTNAME= carapace
DISTVERSIONPREFIX= v
-DISTVERSION= 1.3.3
-PORTREVISION= 1
+DISTVERSION= 1.4.0
CATEGORIES= shells
MAINTAINER= tagattie@FreeBSD.org
diff --git a/shells/carapace/distinfo b/shells/carapace/distinfo
index 545206c44ad0..d8370fd1bf45 100644
--- a/shells/carapace/distinfo
+++ b/shells/carapace/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1750448449
-SHA256 (go/shells_carapace/carapace-v1.3.3/v1.3.3.mod) = b51c68b5d98fe946e491b16cd7af620f5455b28923d3315705e7ac5a5df578d5
-SIZE (go/shells_carapace/carapace-v1.3.3/v1.3.3.mod) = 671
-SHA256 (go/shells_carapace/carapace-v1.3.3/v1.3.3.zip) = dd8a2cb444f5a820e84cf1adb6456d354e941de8b2c6583cf8903144105a922a
-SIZE (go/shells_carapace/carapace-v1.3.3/v1.3.3.zip) = 20863995
+TIMESTAMP = 1753153999
+SHA256 (go/shells_carapace/carapace-v1.4.0/v1.4.0.mod) = 5020250bfad1117434e16293857088364188c21abbca4e0b4b540b58803d3623
+SIZE (go/shells_carapace/carapace-v1.4.0/v1.4.0.mod) = 670
+SHA256 (go/shells_carapace/carapace-v1.4.0/v1.4.0.zip) = afcf7e240fba142c91b1adcc8adf17088eb85e2158bd6d13c9c7a52b372c0977
+SIZE (go/shells_carapace/carapace-v1.4.0/v1.4.0.zip) = 21676951
diff --git a/sysutils/Makefile b/sysutils/Makefile
index 55962ab1e711..6318f5d8375d 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -574,6 +574,7 @@
SUBDIR += k8temp
SUBDIR += k9s
SUBDIR += kapp
+ SUBDIR += kassiber
SUBDIR += kbackup
SUBDIR += kcron
SUBDIR += kdeadmin
@@ -1229,6 +1230,7 @@
SUBDIR += rubygem-vagrant-bhyve
SUBDIR += rubygem-vagrant-mutate
SUBDIR += rubygem-vagrant_cloud
+ SUBDIR += rubygem-vagrant_cloud-gitlab
SUBDIR += rubygem-vmstat
SUBDIR += rubygem-win32-file
SUBDIR += rubygem-win32-file-security
diff --git a/sysutils/bamf/Makefile b/sysutils/bamf/Makefile
index 5c86cd9d22b0..76b9a9e0e1da 100644
--- a/sysutils/bamf/Makefile
+++ b/sysutils/bamf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= bamf
PORTVERSION= 0.5.6
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= sysutils
MASTER_SITES= https://launchpad.net/${PORTNAME}/${PORTVERSION:R}/${PORTVERSION}/+download/
@@ -11,7 +11,7 @@ WWW= https://launchpad.net/bamf
LICENSE= LGPL3
LICENSE_FILE= ${WRKSRC}/COPYING.LGPL
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.4.2:devel/py-lxml@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.4.2:devel/py-lxml5@${PY_FLAVOR}
LIB_DEPENDS= libgtop-2.0.so:devel/libgtop \
libstartup-notification-1.so:x11/startup-notification \
libharfbuzz.so:print/harfbuzz
diff --git a/sysutils/kassiber/Makefile b/sysutils/kassiber/Makefile
new file mode 100644
index 000000000000..fb88788fcf60
--- /dev/null
+++ b/sysutils/kassiber/Makefile
@@ -0,0 +1,18 @@
+PORTNAME= kassiber
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.0.2
+CATEGORIES= sysutils
+
+MAINTAINER= fuz@FreeBSD.org
+COMMENT= Smuggle programs into jails
+
+LICENSE= BSD2CLAUSE
+
+USES= uidfix
+USE_GITHUB= yes
+GH_ACCOUNT= crest
+
+PLIST_FILES= bin/kassiber \
+ share/man/man1/kassiber.1.gz
+
+.include <bsd.port.mk>
diff --git a/sysutils/kassiber/distinfo b/sysutils/kassiber/distinfo
new file mode 100644
index 000000000000..666ac10c2681
--- /dev/null
+++ b/sysutils/kassiber/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1752687787
+SHA256 (crest-kassiber-v0.0.2_GH0.tar.gz) = f8b990c797f9f7360187da0210ba1eadc0856f30e4c9ecb622861e57c2512735
+SIZE (crest-kassiber-v0.0.2_GH0.tar.gz) = 9799
diff --git a/sysutils/kassiber/pkg-descr b/sysutils/kassiber/pkg-descr
new file mode 100644
index 000000000000..d376051d0ba9
--- /dev/null
+++ b/sysutils/kassiber/pkg-descr
@@ -0,0 +1,5 @@
+Kassiber takes an executable file from the host and runs it in
+the given jail, taking care of any library dependencies. This
+allows you to execute commands in jails without transferring
+their executable files or required shared library dependencies
+into them.
diff --git a/sysutils/kopia/Makefile b/sysutils/kopia/Makefile
index 09252e4009c0..d385c6edf8ce 100644
--- a/sysutils/kopia/Makefile
+++ b/sysutils/kopia/Makefile
@@ -1,7 +1,6 @@
PORTNAME= kopia
DISTVERSIONPREFIX= v
-DISTVERSION= 0.20.1
-PORTREVISION= 2
+DISTVERSION= 0.21.0
CATEGORIES= sysutils
MAINTAINER= eduardo@FreeBSD.org
diff --git a/sysutils/kopia/distinfo b/sysutils/kopia/distinfo
index 6bb33e9b252e..6e590f0b52b8 100644
--- a/sysutils/kopia/distinfo
+++ b/sysutils/kopia/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1748261778
-SHA256 (go/sysutils_kopia/kopia-v0.20.1/v0.20.1.mod) = ba1a78d23432eec3951e1fa397c0e7678b63a88df0f4c94c12c373f963d81cad
-SIZE (go/sysutils_kopia/kopia-v0.20.1/v0.20.1.mod) = 7159
-SHA256 (go/sysutils_kopia/kopia-v0.20.1/v0.20.1.zip) = 020e2f87adcb99eaad4fc3895a08d2433ae4a242758c95cc28dd340b76ec4deb
-SIZE (go/sysutils_kopia/kopia-v0.20.1/v0.20.1.zip) = 2369873
+TIMESTAMP = 1753051106
+SHA256 (go/sysutils_kopia/kopia-v0.21.0/v0.21.0.mod) = 8f535c3b0b8b925ffdac12109309343ccc1440e7905cc19bd7a2da4b53f710ed
+SIZE (go/sysutils_kopia/kopia-v0.21.0/v0.21.0.mod) = 7157
+SHA256 (go/sysutils_kopia/kopia-v0.21.0/v0.21.0.zip) = a6cfe8da2e9ee07e03a8b7fb8c886800ed19958ac52e3448a629c10132aefc59
+SIZE (go/sysutils_kopia/kopia-v0.21.0/v0.21.0.zip) = 2378858
diff --git a/sysutils/liburcu/Makefile b/sysutils/liburcu/Makefile
index 16c2fe638123..e0a1a26ceb90 100644
--- a/sysutils/liburcu/Makefile
+++ b/sysutils/liburcu/Makefile
@@ -1,5 +1,5 @@
PORTNAME= liburcu
-DISTVERSION= 0.15.1
+DISTVERSION= 0.15.3
CATEGORIES= sysutils
MASTER_SITES= https://lttng.org/files/urcu/
DISTNAME= userspace-rcu-${DISTVERSION}
diff --git a/sysutils/liburcu/distinfo b/sysutils/liburcu/distinfo
index 40ba6d3e7c0d..f6e992fefaaf 100644
--- a/sysutils/liburcu/distinfo
+++ b/sysutils/liburcu/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744243785
-SHA256 (userspace-rcu-0.15.1.tar.bz2) = 98d66cc12f2c5881879b976f0c55d10d311401513be254e3bd28cf3811fb50c8
-SIZE (userspace-rcu-0.15.1.tar.bz2) = 682998
+TIMESTAMP = 1751907763
+SHA256 (userspace-rcu-0.15.3.tar.bz2) = 26687ec84e3e114759454c884a08abeaf79dec09b041895ddf4c45ec150acb6d
+SIZE (userspace-rcu-0.15.3.tar.bz2) = 684175
diff --git a/sysutils/liburcu/pkg-plist b/sysutils/liburcu/pkg-plist
index f41cdea3962e..191d9b8977bd 100644
--- a/sysutils/liburcu/pkg-plist
+++ b/sysutils/liburcu/pkg-plist
@@ -85,6 +85,7 @@ include/urcu/uatomic/riscv.h
include/urcu/uatomic/s390.h
include/urcu/uatomic/sparc64.h
include/urcu/uatomic/tile.h
+include/urcu/uatomic/uassert.h
include/urcu/uatomic/x86.h
include/urcu/uatomic_arch.h
include/urcu/urcu-bp.h
diff --git a/sysutils/py-howdoi/Makefile b/sysutils/py-howdoi/Makefile
index 3a5eb7f9272f..9ab0f9e8b9aa 100644
--- a/sysutils/py-howdoi/Makefile
+++ b/sysutils/py-howdoi/Makefile
@@ -1,6 +1,6 @@
PORTNAME= howdoi
PORTVERSION= 2.0.20
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= sysutils python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +17,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}appdirs>0:devel/py-appdirs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}colorama>0:devel/py-colorama@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssselect>0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}keep>0:sysutils/py-keep@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyquery>0:devel/py-pyquery@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
diff --git a/sysutils/rubygem-vagrant_cloud-gitlab/Makefile b/sysutils/rubygem-vagrant_cloud-gitlab/Makefile
new file mode 100644
index 000000000000..789603ed6364
--- /dev/null
+++ b/sysutils/rubygem-vagrant_cloud-gitlab/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= vagrant_cloud
+PORTVERSION= 3.1.3
+CATEGORIES= sysutils rubygems devel
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Ruby library for the HashiCorp Vagrant Cloud API
+WWW= https://developer.hashicorp.com/vagrant/vagrant-cloud/api/v2 \
+ https://github.com/hashicorp/vagrant_cloud
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-excon1-gitlab>=1.0<2:devel/rubygem-excon1-gitlab \
+ rubygem-log4r>=1.1<2:sysutils/rubygem-log4r \
+ rubygem-oauth2-gitlab>2.0<3:net/rubygem-oauth2-gitlab \
+ rubygem-rexml>=3.3<4:textproc/rubygem-rexml
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/sysutils/rubygem-vagrant_cloud-gitlab/distinfo b/sysutils/rubygem-vagrant_cloud-gitlab/distinfo
new file mode 100644
index 000000000000..8be4fa07d3a1
--- /dev/null
+++ b/sysutils/rubygem-vagrant_cloud-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1744215569
+SHA256 (rubygem/vagrant_cloud-3.1.3.gem) = dbef5f0a9cf43299e74870658b1820f9c1f0fdc951d17e24f15f24a6b1b99525
+SIZE (rubygem/vagrant_cloud-3.1.3.gem) = 22528
diff --git a/sysutils/rubygem-vagrant_cloud-gitlab/pkg-descr b/sysutils/rubygem-vagrant_cloud-gitlab/pkg-descr
new file mode 100644
index 000000000000..c32ed86d0a51
--- /dev/null
+++ b/sysutils/rubygem-vagrant_cloud-gitlab/pkg-descr
@@ -0,0 +1,3 @@
+Ruby client for the Vagrant Cloud API.
+This client allows to create, modify and delete boxes, versions and
+providers. The main entry point is an object referencing your account.
diff --git a/sysutils/superfile/Makefile b/sysutils/superfile/Makefile
index e885089fc907..243a5ff3220c 100644
--- a/sysutils/superfile/Makefile
+++ b/sysutils/superfile/Makefile
@@ -1,7 +1,6 @@
PORTNAME= superfile
DISTVERSIONPREFIX= v
-DISTVERSION= 1.3.1
-PORTREVISION= 2
+DISTVERSION= 1.3.2
PORTEPOCH= 1
CATEGORIES= sysutils
diff --git a/sysutils/superfile/distinfo b/sysutils/superfile/distinfo
index f69c17874cd1..8e816c0ae667 100644
--- a/sysutils/superfile/distinfo
+++ b/sysutils/superfile/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1748258601
-SHA256 (go/sysutils_superfile/superfile-v1.3.1/v1.3.1.mod) = aad4169bd2da04543c19449b63b8c5b0cfbc68a4af3b5a0ed757d6bc7d6c2d62
-SIZE (go/sysutils_superfile/superfile-v1.3.1/v1.3.1.mod) = 3200
-SHA256 (go/sysutils_superfile/superfile-v1.3.1/v1.3.1.zip) = bc540bb1036e175826670f675fd48c3db65261635e4f538aea538c0546797239
-SIZE (go/sysutils_superfile/superfile-v1.3.1/v1.3.1.zip) = 10766867
+TIMESTAMP = 1752691516
+SHA256 (go/sysutils_superfile/superfile-v1.3.2/v1.3.2.mod) = 75e1e0938ca31f51c80697126aa7daae2746bf67f2c8e6defcfe0610e0fc44cc
+SIZE (go/sysutils_superfile/superfile-v1.3.2/v1.3.2.mod) = 3109
+SHA256 (go/sysutils_superfile/superfile-v1.3.2/v1.3.2.zip) = de95f53461d478a6b48e3adc68be5adff56c97fbb0c446cb46eb88645424a938
+SIZE (go/sysutils_superfile/superfile-v1.3.2/v1.3.2.zip) = 16513048
diff --git a/textproc/Makefile b/textproc/Makefile
index 67bf0decee29..3d1e566fe55a 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -170,6 +170,7 @@
SUBDIR += dtdparse
SUBDIR += duncan
SUBDIR += dwdiff
+ SUBDIR += dyff
SUBDIR += easydiff
SUBDIR += ebook-tools
SUBDIR += el-aspell
@@ -270,7 +271,6 @@
SUBDIR += hi-aspell
SUBDIR += highlight
SUBDIR += hil-aspell
- SUBDIR += hq
SUBDIR += hr-aspell
SUBDIR += hs-lhs2tex
SUBDIR += hs-pandoc
@@ -279,6 +279,7 @@
SUBDIR += hsb-aspell
SUBDIR += html
SUBDIR += html-pretty
+ SUBDIR += html-query
SUBDIR += html-xml-utils
SUBDIR += html2fo
SUBDIR += html2text
diff --git a/textproc/dyff/Makefile b/textproc/dyff/Makefile
new file mode 100644
index 000000000000..b7de9e5448b7
--- /dev/null
+++ b/textproc/dyff/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= dyff
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.10.1
+CATEGORIES= textproc
+
+MAINTAINER= ehaupt@FreeBSD.org
+COMMENT= Diff tool for YAML files, and sometimes JSON
+WWW= https://github.com/homeport/dyff
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= go:modules
+USE_GITHUB= yes
+GH_ACCOUNT= homeport
+
+GO_MODULE= github.com/${GH_ACCOUNT}/${PORTNAME}
+GO_TARGET= ./cmd/${PORTNAME}
+
+PLIST_FILES= bin/dyff
+
+.include <bsd.port.mk>
diff --git a/textproc/dyff/distinfo b/textproc/dyff/distinfo
new file mode 100644
index 000000000000..2766fc67239e
--- /dev/null
+++ b/textproc/dyff/distinfo
@@ -0,0 +1,7 @@
+TIMESTAMP = 1753103362
+SHA256 (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/v1.10.1.mod) = 5554574a88a01de1d0c522ea4738e6023f438809ac41361c9f8acb78560f7edf
+SIZE (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/v1.10.1.mod) = 2031
+SHA256 (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/v1.10.1.zip) = 113c45396586956a0102cc5f01f44a94cd3c0660c4fbd119b027e69abbb5eb73
+SIZE (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/v1.10.1.zip) = 1320571
+SHA256 (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/homeport-dyff-v1.10.1_GH0.tar.gz) = 8f20ba3580fbb45957211efdf5ac4fc60dd339a2f798db0ecf521c930fdb0be0
+SIZE (go/textproc_dyff/homeport-dyff-v1.10.1_GH0/homeport-dyff-v1.10.1_GH0.tar.gz) = 1217573
diff --git a/textproc/dyff/pkg-descr b/textproc/dyff/pkg-descr
new file mode 100644
index 000000000000..c23f6fef9b90
--- /dev/null
+++ b/textproc/dyff/pkg-descr
@@ -0,0 +1,9 @@
+dyff is a diff tool for YAML files (and occasionally JSON), designed to
+show only meaningful differences in a human-readable format. It is
+inspired by the way BOSH v1 displayed configuration changes, using
+syntax styles from Spruce and go-patch to locate differences within the
+document structure.
+
+dyff supports comparing local or remote files, integrates with kubectl
+and Git for improved YAML diffing workflows, and includes utilities to
+restructure, pretty-print, and convert between YAML and JSON.
diff --git a/textproc/hq/Makefile b/textproc/hq/Makefile
deleted file mode 100644
index 9f70aedab46a..000000000000
--- a/textproc/hq/Makefile
+++ /dev/null
@@ -1,149 +0,0 @@
-PORTNAME= hq
-DISTVERSIONPREFIX= v
-DISTVERSION= 1.0.1
-PORTREVISION= 21
-CATEGORIES= textproc
-
-MAINTAINER= yuri@FreeBSD.org
-COMMENT= jq, but for HTML
-WWW= https://github.com/orf/hq
-
-LICENSE= MIT
-LICENSE_FILE= ${WRKSRC}/LICENSE
-
-USES= cargo
-
-USE_GITHUB= yes
-GH_ACCOUNT= orf
-
-CARGO_CRATES= anyhow-1.0.69 \
- arrayvec-0.7.2 \
- autocfg-1.1.0 \
- bitflags-1.3.2 \
- block-buffer-0.10.4 \
- brownstone-3.0.0 \
- byteorder-1.4.3 \
- cc-1.0.79 \
- cfg-if-1.0.0 \
- clap-4.1.8 \
- clap_derive-4.1.8 \
- clap_lex-0.3.2 \
- convert_case-0.4.0 \
- cpufeatures-0.2.5 \
- crypto-common-0.1.6 \
- cssparser-0.29.6 \
- cssparser-macros-0.6.0 \
- derive_more-0.99.17 \
- digest-0.10.6 \
- dtoa-0.4.8 \
- dtoa-short-0.3.3 \
- ego-tree-0.6.2 \
- errno-0.2.8 \
- errno-dragonfly-0.1.2 \
- futf-0.1.5 \
- fxhash-0.2.1 \
- generic-array-0.14.6 \
- getopts-0.2.21 \
- getrandom-0.1.16 \
- getrandom-0.2.8 \
- heck-0.4.1 \
- hermit-abi-0.3.1 \
- html5ever-0.26.0 \
- indent_write-2.2.0 \
- io-lifetimes-1.0.6 \
- is-terminal-0.4.4 \
- itoa-1.0.6 \
- joinery-2.1.0 \
- libc-0.2.140 \
- linux-raw-sys-0.1.4 \
- lock_api-0.4.9 \
- log-0.4.17 \
- mac-0.1.1 \
- markup5ever-0.11.0 \
- matches-0.1.10 \
- memchr-2.5.0 \
- minimal-lexical-0.2.1 \
- new_debug_unreachable-1.0.4 \
- nodrop-0.1.14 \
- nom-7.1.3 \
- nom-supreme-0.8.0 \
- once_cell-1.17.1 \
- os_str_bytes-6.4.1 \
- parking_lot-0.12.1 \
- parking_lot_core-0.9.7 \
- pest-2.5.6 \
- pest_derive-2.5.6 \
- pest_generator-2.5.6 \
- pest_meta-2.5.6 \
- phf-0.8.0 \
- phf-0.10.1 \
- phf_codegen-0.8.0 \
- phf_codegen-0.10.0 \
- phf_generator-0.8.0 \
- phf_generator-0.10.0 \
- phf_macros-0.10.0 \
- phf_shared-0.8.0 \
- phf_shared-0.10.0 \
- ppv-lite86-0.2.17 \
- precomputed-hash-0.1.1 \
- proc-macro-error-1.0.4 \
- proc-macro-error-attr-1.0.4 \
- proc-macro-hack-0.5.20+deprecated \
- proc-macro2-1.0.51 \
- quote-1.0.23 \
- rand-0.7.3 \
- rand-0.8.5 \
- rand_chacha-0.2.2 \
- rand_chacha-0.3.1 \
- rand_core-0.5.1 \
- rand_core-0.6.4 \
- rand_hc-0.2.0 \
- rand_pcg-0.2.1 \
- redox_syscall-0.2.16 \
- rustc_version-0.4.0 \
- rustix-0.36.9 \
- ryu-1.0.13 \
- scopeguard-1.1.0 \
- scraper-0.15.0 \
- selectors-0.24.0 \
- semver-1.0.16 \
- serde-1.0.154 \
- serde_json-1.0.94 \
- servo_arc-0.2.0 \
- sha2-0.10.6 \
- siphasher-0.3.10 \
- smallvec-1.10.0 \
- stable_deref_trait-1.2.0 \
- string_cache-0.8.7 \
- string_cache_codegen-0.5.2 \
- strsim-0.10.0 \
- syn-1.0.109 \
- tendril-0.4.3 \
- termcolor-1.2.0 \
- thiserror-1.0.39 \
- thiserror-impl-1.0.39 \
- typenum-1.16.0 \
- ucd-trie-0.1.5 \
- unicode-ident-1.0.8 \
- unicode-width-0.1.10 \
- utf-8-0.7.6 \
- version_check-0.9.4 \
- wasi-0.9.0+wasi-snapshot-preview1 \
- wasi-0.11.0+wasi-snapshot-preview1 \
- winapi-0.3.9 \
- winapi-i686-pc-windows-gnu-0.4.0 \
- winapi-util-0.1.5 \
- winapi-x86_64-pc-windows-gnu-0.4.0 \
- windows-sys-0.45.0 \
- windows-targets-0.42.1 \
- windows_aarch64_gnullvm-0.42.1 \
- windows_aarch64_msvc-0.42.1 \
- windows_i686_gnu-0.42.1 \
- windows_i686_msvc-0.42.1 \
- windows_x86_64_gnu-0.42.1 \
- windows_x86_64_gnullvm-0.42.1 \
- windows_x86_64_msvc-0.42.1
-
-PLIST_FILES= bin/${PORTNAME}
-
-.include <bsd.port.mk>
diff --git a/textproc/hq/distinfo b/textproc/hq/distinfo
deleted file mode 100644
index 6a10ad6ab5b3..000000000000
--- a/textproc/hq/distinfo
+++ /dev/null
@@ -1,257 +0,0 @@
-TIMESTAMP = 1678553978
-SHA256 (rust/crates/anyhow-1.0.69.crate) = 224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800
-SIZE (rust/crates/anyhow-1.0.69.crate) = 43576
-SHA256 (rust/crates/arrayvec-0.7.2.crate) = 8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6
-SIZE (rust/crates/arrayvec-0.7.2.crate) = 29341
-SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
-SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
-SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
-SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71
-SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538
-SHA256 (rust/crates/brownstone-3.0.0.crate) = c5839ee4f953e811bfdcf223f509cb2c6a3e1447959b0bff459405575bc17f22
-SIZE (rust/crates/brownstone-3.0.0.crate) = 10770
-SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610
-SIZE (rust/crates/byteorder-1.4.3.crate) = 22512
-SHA256 (rust/crates/cc-1.0.79.crate) = 50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f
-SIZE (rust/crates/cc-1.0.79.crate) = 62624
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
-SHA256 (rust/crates/clap-4.1.8.crate) = c3d7ae14b20b94cb02149ed21a86c423859cbe18dc7ed69845cace50e52b40a5
-SIZE (rust/crates/clap-4.1.8.crate) = 207175
-SHA256 (rust/crates/clap_derive-4.1.8.crate) = 44bec8e5c9d09e439c4335b1af0abaab56dcf3b94999a936e1bb47b9134288f0
-SIZE (rust/crates/clap_derive-4.1.8.crate) = 27889
-SHA256 (rust/crates/clap_lex-0.3.2.crate) = 350b9cf31731f9957399229e9b2adc51eeabdfbe9d71d9a0552275fd12710d09
-SIZE (rust/crates/clap_lex-0.3.2.crate) = 9650
-SHA256 (rust/crates/convert_case-0.4.0.crate) = 6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e
-SIZE (rust/crates/convert_case-0.4.0.crate) = 8098
-SHA256 (rust/crates/cpufeatures-0.2.5.crate) = 28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320
-SIZE (rust/crates/cpufeatures-0.2.5.crate) = 11251
-SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3
-SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760
-SHA256 (rust/crates/cssparser-0.29.6.crate) = f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa
-SIZE (rust/crates/cssparser-0.29.6.crate) = 56704
-SHA256 (rust/crates/cssparser-macros-0.6.0.crate) = dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e
-SIZE (rust/crates/cssparser-macros-0.6.0.crate) = 6684
-SHA256 (rust/crates/derive_more-0.99.17.crate) = 4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321
-SIZE (rust/crates/derive_more-0.99.17.crate) = 55771
-SHA256 (rust/crates/digest-0.10.6.crate) = 8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f
-SIZE (rust/crates/digest-0.10.6.crate) = 19527
-SHA256 (rust/crates/dtoa-0.4.8.crate) = 56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0
-SIZE (rust/crates/dtoa-0.4.8.crate) = 16175
-SHA256 (rust/crates/dtoa-short-0.3.3.crate) = bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6
-SIZE (rust/crates/dtoa-short-0.3.3.crate) = 8198
-SHA256 (rust/crates/ego-tree-0.6.2.crate) = 3a68a4904193147e0a8dec3314640e6db742afd5f6e634f428a6af230d9b3591
-SIZE (rust/crates/ego-tree-0.6.2.crate) = 8962
-SHA256 (rust/crates/errno-0.2.8.crate) = f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1
-SIZE (rust/crates/errno-0.2.8.crate) = 9276
-SHA256 (rust/crates/errno-dragonfly-0.1.2.crate) = aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf
-SIZE (rust/crates/errno-dragonfly-0.1.2.crate) = 1810
-SHA256 (rust/crates/futf-0.1.5.crate) = df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843
-SIZE (rust/crates/futf-0.1.5.crate) = 11344
-SHA256 (rust/crates/fxhash-0.2.1.crate) = c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c
-SIZE (rust/crates/fxhash-0.2.1.crate) = 4102
-SHA256 (rust/crates/generic-array-0.14.6.crate) = bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9
-SIZE (rust/crates/generic-array-0.14.6.crate) = 15889
-SHA256 (rust/crates/getopts-0.2.21.crate) = 14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5
-SIZE (rust/crates/getopts-0.2.21.crate) = 18457
-SHA256 (rust/crates/getrandom-0.1.16.crate) = 8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce
-SIZE (rust/crates/getrandom-0.1.16.crate) = 25077
-SHA256 (rust/crates/getrandom-0.2.8.crate) = c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31
-SIZE (rust/crates/getrandom-0.2.8.crate) = 30553
-SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8
-SIZE (rust/crates/heck-0.4.1.crate) = 11567
-SHA256 (rust/crates/hermit-abi-0.3.1.crate) = fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286
-SIZE (rust/crates/hermit-abi-0.3.1.crate) = 13793
-SHA256 (rust/crates/html5ever-0.26.0.crate) = bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7
-SIZE (rust/crates/html5ever-0.26.0.crate) = 72921
-SHA256 (rust/crates/indent_write-2.2.0.crate) = 0cfe9645a18782869361d9c8732246be7b410ad4e919d3609ebabdac00ba12c3
-SIZE (rust/crates/indent_write-2.2.0.crate) = 11090
-SHA256 (rust/crates/io-lifetimes-1.0.6.crate) = cfa919a82ea574332e2de6e74b4c36e74d41982b335080fa59d4ef31be20fdf3
-SIZE (rust/crates/io-lifetimes-1.0.6.crate) = 36068
-SHA256 (rust/crates/is-terminal-0.4.4.crate) = 21b6b32576413a8e69b90e952e4a026476040d81017b80445deda5f2d3921857
-SIZE (rust/crates/is-terminal-0.4.4.crate) = 7744
-SHA256 (rust/crates/itoa-1.0.6.crate) = 453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6
-SIZE (rust/crates/itoa-1.0.6.crate) = 10410
-SHA256 (rust/crates/joinery-2.1.0.crate) = 72167d68f5fce3b8655487b8038691a3c9984ee769590f93f2a631f4ad64e4f5
-SIZE (rust/crates/joinery-2.1.0.crate) = 14163
-SHA256 (rust/crates/libc-0.2.140.crate) = 99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c
-SIZE (rust/crates/libc-0.2.140.crate) = 669153
-SHA256 (rust/crates/linux-raw-sys-0.1.4.crate) = f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4
-SIZE (rust/crates/linux-raw-sys-0.1.4.crate) = 878981
-SHA256 (rust/crates/lock_api-0.4.9.crate) = 435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df
-SIZE (rust/crates/lock_api-0.4.9.crate) = 25685
-SHA256 (rust/crates/log-0.4.17.crate) = abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e
-SIZE (rust/crates/log-0.4.17.crate) = 38028
-SHA256 (rust/crates/mac-0.1.1.crate) = c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4
-SIZE (rust/crates/mac-0.1.1.crate) = 4838
-SHA256 (rust/crates/markup5ever-0.11.0.crate) = 7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016
-SIZE (rust/crates/markup5ever-0.11.0.crate) = 34667
-SHA256 (rust/crates/matches-0.1.10.crate) = 2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5
-SIZE (rust/crates/matches-0.1.10.crate) = 2592
-SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d
-SIZE (rust/crates/memchr-2.5.0.crate) = 65812
-SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
-SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
-SHA256 (rust/crates/new_debug_unreachable-1.0.4.crate) = e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54
-SIZE (rust/crates/new_debug_unreachable-1.0.4.crate) = 2561
-SHA256 (rust/crates/nodrop-0.1.14.crate) = 72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb
-SIZE (rust/crates/nodrop-0.1.14.crate) = 7667
-SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
-SIZE (rust/crates/nom-7.1.3.crate) = 117570
-SHA256 (rust/crates/nom-supreme-0.8.0.crate) = 2bd3ae6c901f1959588759ff51c95d24b491ecb9ff91aa9c2ef4acc5b1dcab27
-SIZE (rust/crates/nom-supreme-0.8.0.crate) = 31430
-SHA256 (rust/crates/once_cell-1.17.1.crate) = b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3
-SIZE (rust/crates/once_cell-1.17.1.crate) = 32856
-SHA256 (rust/crates/os_str_bytes-6.4.1.crate) = 9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee
-SIZE (rust/crates/os_str_bytes-6.4.1.crate) = 23101
-SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f
-SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967
-SHA256 (rust/crates/parking_lot_core-0.9.7.crate) = 9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521
-SIZE (rust/crates/parking_lot_core-0.9.7.crate) = 32412
-SHA256 (rust/crates/pest-2.5.6.crate) = 8cbd939b234e95d72bc393d51788aec68aeeb5d51e748ca08ff3aad58cb722f7
-SIZE (rust/crates/pest-2.5.6.crate) = 107851
-SHA256 (rust/crates/pest_derive-2.5.6.crate) = a81186863f3d0a27340815be8f2078dd8050b14cd71913db9fbda795e5f707d7
-SIZE (rust/crates/pest_derive-2.5.6.crate) = 18436
-SHA256 (rust/crates/pest_generator-2.5.6.crate) = 75a1ef20bf3193c15ac345acb32e26b3dc3223aff4d77ae4fc5359567683796b
-SIZE (rust/crates/pest_generator-2.5.6.crate) = 17068
-SHA256 (rust/crates/pest_meta-2.5.6.crate) = 5e3b284b1f13a20dc5ebc90aff59a51b8d7137c221131b52a7260c08cbc1cc80
-SIZE (rust/crates/pest_meta-2.5.6.crate) = 33430
-SHA256 (rust/crates/phf-0.8.0.crate) = 3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12
-SIZE (rust/crates/phf-0.8.0.crate) = 3902
-SHA256 (rust/crates/phf-0.10.1.crate) = fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259
-SIZE (rust/crates/phf-0.10.1.crate) = 5406
-SHA256 (rust/crates/phf_codegen-0.8.0.crate) = cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815
-SIZE (rust/crates/phf_codegen-0.8.0.crate) = 3192
-SHA256 (rust/crates/phf_codegen-0.10.0.crate) = 4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd
-SIZE (rust/crates/phf_codegen-0.10.0.crate) = 3402
-SHA256 (rust/crates/phf_generator-0.8.0.crate) = 17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526
-SIZE (rust/crates/phf_generator-0.8.0.crate) = 7604
-SHA256 (rust/crates/phf_generator-0.10.0.crate) = 5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6
-SIZE (rust/crates/phf_generator-0.10.0.crate) = 7525
-SHA256 (rust/crates/phf_macros-0.10.0.crate) = 58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0
-SIZE (rust/crates/phf_macros-0.10.0.crate) = 3552
-SHA256 (rust/crates/phf_shared-0.8.0.crate) = c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7
-SIZE (rust/crates/phf_shared-0.8.0.crate) = 2860
-SHA256 (rust/crates/phf_shared-0.10.0.crate) = b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096
-SIZE (rust/crates/phf_shared-0.10.0.crate) = 4095
-SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de
-SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242
-SHA256 (rust/crates/precomputed-hash-0.1.1.crate) = 925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c
-SIZE (rust/crates/precomputed-hash-0.1.1.crate) = 1640
-SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c
-SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293
-SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869
-SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971
-SHA256 (rust/crates/proc-macro-hack-0.5.20+deprecated.crate) = dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068
-SIZE (rust/crates/proc-macro-hack-0.5.20+deprecated.crate) = 15045
-SHA256 (rust/crates/proc-macro2-1.0.51.crate) = 5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6
-SIZE (rust/crates/proc-macro2-1.0.51.crate) = 41804
-SHA256 (rust/crates/quote-1.0.23.crate) = 8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b
-SIZE (rust/crates/quote-1.0.23.crate) = 28058
-SHA256 (rust/crates/rand-0.7.3.crate) = 6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03
-SIZE (rust/crates/rand-0.7.3.crate) = 112246
-SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
-SIZE (rust/crates/rand-0.8.5.crate) = 87113
-SHA256 (rust/crates/rand_chacha-0.2.2.crate) = f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402
-SIZE (rust/crates/rand_chacha-0.2.2.crate) = 13267
-SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
-SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
-SHA256 (rust/crates/rand_core-0.5.1.crate) = 90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19
-SIZE (rust/crates/rand_core-0.5.1.crate) = 21116
-SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
-SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
-SHA256 (rust/crates/rand_hc-0.2.0.crate) = ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c
-SIZE (rust/crates/rand_hc-0.2.0.crate) = 11670
-SHA256 (rust/crates/rand_pcg-0.2.1.crate) = 16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429
-SIZE (rust/crates/rand_pcg-0.2.1.crate) = 11291
-SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a
-SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012
-SHA256 (rust/crates/rustc_version-0.4.0.crate) = bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366
-SIZE (rust/crates/rustc_version-0.4.0.crate) = 12175
-SHA256 (rust/crates/rustix-0.36.9.crate) = fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc
-SIZE (rust/crates/rustix-0.36.9.crate) = 293797
-SHA256 (rust/crates/ryu-1.0.13.crate) = f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041
-SIZE (rust/crates/ryu-1.0.13.crate) = 46823
-SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd
-SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470
-SHA256 (rust/crates/scraper-0.15.0.crate) = 4c557a9a03db98b0b298b497f0e16cd35a04a1fa9ee1130a6889c0714e0b73df
-SIZE (rust/crates/scraper-0.15.0.crate) = 23671
-SHA256 (rust/crates/selectors-0.24.0.crate) = 0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416
-SIZE (rust/crates/selectors-0.24.0.crate) = 45204
-SHA256 (rust/crates/semver-1.0.16.crate) = 58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a
-SIZE (rust/crates/semver-1.0.16.crate) = 29850
-SHA256 (rust/crates/serde-1.0.154.crate) = 8cdd151213925e7f1ab45a9bbfb129316bd00799784b174b7cc7bcd16961c49e
-SIZE (rust/crates/serde-1.0.154.crate) = 76802
-SHA256 (rust/crates/serde_json-1.0.94.crate) = 1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea
-SIZE (rust/crates/serde_json-1.0.94.crate) = 144406
-SHA256 (rust/crates/servo_arc-0.2.0.crate) = d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741
-SIZE (rust/crates/servo_arc-0.2.0.crate) = 17649
-SHA256 (rust/crates/sha2-0.10.6.crate) = 82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0
-SIZE (rust/crates/sha2-0.10.6.crate) = 20558
-SHA256 (rust/crates/siphasher-0.3.10.crate) = 7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de
-SIZE (rust/crates/siphasher-0.3.10.crate) = 9889
-SHA256 (rust/crates/smallvec-1.10.0.crate) = a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0
-SIZE (rust/crates/smallvec-1.10.0.crate) = 31564
-SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3
-SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054
-SHA256 (rust/crates/string_cache-0.8.7.crate) = f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b
-SIZE (rust/crates/string_cache-0.8.7.crate) = 16655
-SHA256 (rust/crates/string_cache_codegen-0.5.2.crate) = 6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988
-SIZE (rust/crates/string_cache_codegen-0.5.2.crate) = 8156
-SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
-SIZE (rust/crates/strsim-0.10.0.crate) = 11355
-SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
-SIZE (rust/crates/syn-1.0.109.crate) = 237611
-SHA256 (rust/crates/tendril-0.4.3.crate) = d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0
-SIZE (rust/crates/tendril-0.4.3.crate) = 37210
-SHA256 (rust/crates/termcolor-1.2.0.crate) = be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6
-SIZE (rust/crates/termcolor-1.2.0.crate) = 17917
-SHA256 (rust/crates/thiserror-1.0.39.crate) = a5ab016db510546d856297882807df8da66a16fb8c4101cb8b30054b0d5b2d9c
-SIZE (rust/crates/thiserror-1.0.39.crate) = 18729
-SHA256 (rust/crates/thiserror-impl-1.0.39.crate) = 5420d42e90af0c38c3290abcca25b9b3bdf379fc9f55c528f53a269d9c9a267e
-SIZE (rust/crates/thiserror-impl-1.0.39.crate) = 15057
-SHA256 (rust/crates/typenum-1.16.0.crate) = 497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba
-SIZE (rust/crates/typenum-1.16.0.crate) = 42477
-SHA256 (rust/crates/ucd-trie-0.1.5.crate) = 9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81
-SIZE (rust/crates/ucd-trie-0.1.5.crate) = 45391
-SHA256 (rust/crates/unicode-ident-1.0.8.crate) = e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4
-SIZE (rust/crates/unicode-ident-1.0.8.crate) = 41962
-SHA256 (rust/crates/unicode-width-0.1.10.crate) = c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b
-SIZE (rust/crates/unicode-width-0.1.10.crate) = 18968
-SHA256 (rust/crates/utf-8-0.7.6.crate) = 09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9
-SIZE (rust/crates/utf-8-0.7.6.crate) = 10422
-SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
-SIZE (rust/crates/version_check-0.9.4.crate) = 14895
-SHA256 (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519
-SIZE (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = 31521
-SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
-SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
-SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
-SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
-SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
-SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
-SHA256 (rust/crates/winapi-util-0.1.5.crate) = 70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178
-SIZE (rust/crates/winapi-util-0.1.5.crate) = 10164
-SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
-SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
-SHA256 (rust/crates/windows-sys-0.45.0.crate) = 75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0
-SIZE (rust/crates/windows-sys-0.45.0.crate) = 2568659
-SHA256 (rust/crates/windows-targets-0.42.1.crate) = 8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7
-SIZE (rust/crates/windows-targets-0.42.1.crate) = 5524
-SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.1.crate) = 8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608
-SIZE (rust/crates/windows_aarch64_gnullvm-0.42.1.crate) = 362795
-SHA256 (rust/crates/windows_aarch64_msvc-0.42.1.crate) = 4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7
-SIZE (rust/crates/windows_aarch64_msvc-0.42.1.crate) = 664655
-SHA256 (rust/crates/windows_i686_gnu-0.42.1.crate) = de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640
-SIZE (rust/crates/windows_i686_gnu-0.42.1.crate) = 733428
-SHA256 (rust/crates/windows_i686_msvc-0.42.1.crate) = bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605
-SIZE (rust/crates/windows_i686_msvc-0.42.1.crate) = 722583
-SHA256 (rust/crates/windows_x86_64_gnu-0.42.1.crate) = c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45
-SIZE (rust/crates/windows_x86_64_gnu-0.42.1.crate) = 697614
-SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.1.crate) = 628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463
-SIZE (rust/crates/windows_x86_64_gnullvm-0.42.1.crate) = 362788
-SHA256 (rust/crates/windows_x86_64_msvc-0.42.1.crate) = 447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd
-SIZE (rust/crates/windows_x86_64_msvc-0.42.1.crate) = 664606
-SHA256 (orf-hq-v1.0.1_GH0.tar.gz) = 6f761a301a38b27d7be9b536100003f361fecaf42639750d3c86096ec56a90b9
-SIZE (orf-hq-v1.0.1_GH0.tar.gz) = 1160119
diff --git a/textproc/html-query/Makefile b/textproc/html-query/Makefile
new file mode 100644
index 000000000000..e895a4a5a8c1
--- /dev/null
+++ b/textproc/html-query/Makefile
@@ -0,0 +1,202 @@
+PORTNAME= html-query
+DISTVERSIONPREFIX= html-query-v
+DISTVERSION= 1.2.2
+CATEGORIES= textproc
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= jq, but for HTML
+WWW= https://github.com/orf/hq
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= cargo
+
+USE_GITHUB= yes
+GH_ACCOUNT= orf
+
+CARGO_CRATES= ahash-0.7.7 \
+ ahash-0.8.6 \
+ anstream-0.6.4 \
+ anstyle-1.0.4 \
+ anstyle-parse-0.2.2 \
+ anstyle-query-1.0.0 \
+ anstyle-wincon-3.0.1 \
+ anyhow-1.0.75 \
+ arrayvec-0.7.4 \
+ async-channel-1.9.0 \
+ async-lock-2.8.0 \
+ async-task-4.5.0 \
+ async-trait-0.1.74 \
+ atomic-waker-1.1.2 \
+ autocfg-1.1.0 \
+ bitflags-1.3.2 \
+ bitflags-2.4.1 \
+ blocking-1.4.1 \
+ brownstone-3.0.0 \
+ bumpalo-3.14.0 \
+ byteorder-1.5.0 \
+ cfg-if-1.0.0 \
+ clap-4.4.10 \
+ clap_builder-4.4.9 \
+ clap_derive-4.4.7 \
+ clap_lex-0.6.0 \
+ colorchoice-1.0.0 \
+ concurrent-queue-2.3.0 \
+ console_error_panic_hook-0.1.7 \
+ crossbeam-utils-0.8.16 \
+ cssparser-0.31.2 \
+ cssparser-macros-0.6.1 \
+ darling-0.20.3 \
+ darling_core-0.20.3 \
+ darling_macro-0.20.3 \
+ derive_more-0.99.17 \
+ dioxus-0.4.0 \
+ dioxus-core-0.4.2 \
+ dioxus-core-macro-0.4.0 \
+ dioxus-debug-cell-0.1.1 \
+ dioxus-hooks-0.4.0 \
+ dioxus-hot-reload-0.4.0 \
+ dioxus-html-0.4.0 \
+ dioxus-interpreter-js-0.4.0 \
+ dioxus-logger-0.4.1 \
+ dioxus-rsx-0.4.0 \
+ dioxus-web-0.4.0 \
+ dtoa-1.0.9 \
+ dtoa-short-0.3.4 \
+ ego-tree-0.6.2 \
+ enumset-1.1.3 \
+ enumset_derive-0.8.1 \
+ euclid-0.22.9 \
+ event-listener-2.5.3 \
+ fastrand-2.0.1 \
+ fnv-1.0.7 \
+ futf-0.1.5 \
+ futures-channel-0.3.29 \
+ futures-core-0.3.29 \
+ futures-io-0.3.29 \
+ futures-lite-1.13.0 \
+ futures-macro-0.3.29 \
+ futures-task-0.3.29 \
+ futures-util-0.3.29 \
+ fxhash-0.2.1 \
+ getopts-0.2.21 \
+ getrandom-0.2.11 \
+ hashbrown-0.12.3 \
+ heck-0.4.1 \
+ html5ever-0.26.0 \
+ ident_case-1.0.1 \
+ indent_write-2.2.0 \
+ interprocess-docfix-1.2.2 \
+ intmap-0.7.1 \
+ itoa-1.0.9 \
+ joinery-2.1.0 \
+ js-sys-0.3.65 \
+ keyboard-types-0.6.2 \
+ libc-0.2.150 \
+ lock_api-0.4.11 \
+ log-0.4.20 \
+ longest-increasing-subsequence-0.1.0 \
+ lru-0.8.1 \
+ mac-0.1.1 \
+ markup5ever-0.11.0 \
+ memchr-2.6.4 \
+ minimal-lexical-0.2.1 \
+ new_debug_unreachable-1.0.4 \
+ nom-7.1.3 \
+ nom-supreme-0.8.0 \
+ num-traits-0.2.17 \
+ once_cell-1.18.0 \
+ ordered-float-2.10.1 \
+ parking_lot-0.12.1 \
+ parking_lot_core-0.9.9 \
+ phf-0.10.1 \
+ phf-0.11.2 \
+ phf_codegen-0.10.0 \
+ phf_generator-0.10.0 \
+ phf_generator-0.11.2 \
+ phf_macros-0.11.2 \
+ phf_shared-0.10.0 \
+ phf_shared-0.11.2 \
+ pin-project-lite-0.2.13 \
+ pin-utils-0.1.0 \
+ piper-0.2.1 \
+ ppv-lite86-0.2.17 \
+ precomputed-hash-0.1.1 \
+ proc-macro2-1.0.69 \
+ quote-1.0.33 \
+ rand-0.8.5 \
+ rand_chacha-0.3.1 \
+ rand_core-0.6.4 \
+ redox_syscall-0.4.1 \
+ rustc-hash-1.1.0 \
+ rustc_version-0.4.0 \
+ ryu-1.0.15 \
+ scopeguard-1.2.0 \
+ scraper-0.18.1 \
+ selectors-0.25.0 \
+ semver-1.0.20 \
+ serde-1.0.193 \
+ serde-value-0.7.0 \
+ serde-wasm-bindgen-0.5.0 \
+ serde_derive-1.0.193 \
+ serde_json-1.0.108 \
+ serde_repr-0.1.17 \
+ servo_arc-0.3.0 \
+ siphasher-0.3.11 \
+ slab-0.4.9 \
+ sledgehammer_bindgen-0.2.4 \
+ sledgehammer_utils-0.2.0 \
+ smallbox-0.8.2 \
+ smallvec-1.11.1 \
+ spinning-0.1.0 \
+ stable_deref_trait-1.2.0 \
+ string_cache-0.8.7 \
+ string_cache_codegen-0.5.2 \
+ strsim-0.10.0 \
+ syn-1.0.109 \
+ syn-2.0.39 \
+ tendril-0.4.3 \
+ thiserror-1.0.50 \
+ thiserror-impl-1.0.50 \
+ to_method-1.1.0 \
+ tracing-0.1.40 \
+ tracing-core-0.1.32 \
+ unicode-ident-1.0.12 \
+ unicode-segmentation-1.10.1 \
+ unicode-width-0.1.11 \
+ utf-8-0.7.6 \
+ utf8parse-0.2.1 \
+ version_check-0.9.4 \
+ wasi-0.11.0+wasi-snapshot-preview1 \
+ wasm-bindgen-0.2.88 \
+ wasm-bindgen-backend-0.2.88 \
+ wasm-bindgen-futures-0.4.38 \
+ wasm-bindgen-macro-0.2.88 \
+ wasm-bindgen-macro-support-0.2.88 \
+ wasm-bindgen-shared-0.2.88 \
+ web-sys-0.3.65 \
+ winapi-0.3.9 \
+ winapi-i686-pc-windows-gnu-0.4.0 \
+ winapi-x86_64-pc-windows-gnu-0.4.0 \
+ windows-sys-0.48.0 \
+ windows-targets-0.48.5 \
+ windows_aarch64_gnullvm-0.48.5 \
+ windows_aarch64_msvc-0.48.5 \
+ windows_i686_gnu-0.48.5 \
+ windows_i686_msvc-0.48.5 \
+ windows_x86_64_gnu-0.48.5 \
+ windows_x86_64_gnullvm-0.48.5 \
+ windows_x86_64_msvc-0.48.5 \
+ zerocopy-0.7.25 \
+ zerocopy-derive-0.7.25
+
+PLIST_FILES= bin/hq
+
+do-install:
+ # workaround for error: found a virtual manifest at `xx` instead of a package manifest
+ ${INSTALL_PROGRAM} \
+ ${WRKDIR}/target/release/hq \
+ ${STAGEDIR}${PREFIX}/bin/hq
+
+.include <bsd.port.mk>
diff --git a/textproc/html-query/distinfo b/textproc/html-query/distinfo
new file mode 100644
index 000000000000..e2328852c5cc
--- /dev/null
+++ b/textproc/html-query/distinfo
@@ -0,0 +1,353 @@
+TIMESTAMP = 1753125104
+SHA256 (rust/crates/ahash-0.7.7.crate) = 5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd
+SIZE (rust/crates/ahash-0.7.7.crate) = 38508
+SHA256 (rust/crates/ahash-0.8.6.crate) = 91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a
+SIZE (rust/crates/ahash-0.8.6.crate) = 42780
+SHA256 (rust/crates/anstream-0.6.4.crate) = 2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44
+SIZE (rust/crates/anstream-0.6.4.crate) = 20593
+SHA256 (rust/crates/anstyle-1.0.4.crate) = 7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87
+SIZE (rust/crates/anstyle-1.0.4.crate) = 13998
+SHA256 (rust/crates/anstyle-parse-0.2.2.crate) = 317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140
+SIZE (rust/crates/anstyle-parse-0.2.2.crate) = 24696
+SHA256 (rust/crates/anstyle-query-1.0.0.crate) = 5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b
+SIZE (rust/crates/anstyle-query-1.0.0.crate) = 8620
+SHA256 (rust/crates/anstyle-wincon-3.0.1.crate) = f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628
+SIZE (rust/crates/anstyle-wincon-3.0.1.crate) = 11279
+SHA256 (rust/crates/anyhow-1.0.75.crate) = a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6
+SIZE (rust/crates/anyhow-1.0.75.crate) = 43901
+SHA256 (rust/crates/arrayvec-0.7.4.crate) = 96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711
+SIZE (rust/crates/arrayvec-0.7.4.crate) = 29856
+SHA256 (rust/crates/async-channel-1.9.0.crate) = 81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35
+SIZE (rust/crates/async-channel-1.9.0.crate) = 13664
+SHA256 (rust/crates/async-lock-2.8.0.crate) = 287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b
+SIZE (rust/crates/async-lock-2.8.0.crate) = 29944
+SHA256 (rust/crates/async-task-4.5.0.crate) = b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1
+SIZE (rust/crates/async-task-4.5.0.crate) = 36956
+SHA256 (rust/crates/async-trait-0.1.74.crate) = a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9
+SIZE (rust/crates/async-trait-0.1.74.crate) = 28997
+SHA256 (rust/crates/atomic-waker-1.1.2.crate) = 1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0
+SIZE (rust/crates/atomic-waker-1.1.2.crate) = 12422
+SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
+SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bitflags-2.4.1.crate) = 327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07
+SIZE (rust/crates/bitflags-2.4.1.crate) = 37043
+SHA256 (rust/crates/blocking-1.4.1.crate) = 8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a
+SIZE (rust/crates/blocking-1.4.1.crate) = 17205
+SHA256 (rust/crates/brownstone-3.0.0.crate) = c5839ee4f953e811bfdcf223f509cb2c6a3e1447959b0bff459405575bc17f22
+SIZE (rust/crates/brownstone-3.0.0.crate) = 10770
+SHA256 (rust/crates/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec
+SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400
+SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
+SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/clap-4.4.10.crate) = 41fffed7514f420abec6d183b1d3acfd9099c79c3a10a06ade4f8203f1411272
+SIZE (rust/crates/clap-4.4.10.crate) = 54778
+SHA256 (rust/crates/clap_builder-4.4.9.crate) = 63361bae7eef3771745f02d8d892bec2fee5f6e34af316ba556e7f97a7069ff1
+SIZE (rust/crates/clap_builder-4.4.9.crate) = 163198
+SHA256 (rust/crates/clap_derive-4.4.7.crate) = cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442
+SIZE (rust/crates/clap_derive-4.4.7.crate) = 29046
+SHA256 (rust/crates/clap_lex-0.6.0.crate) = 702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1
+SIZE (rust/crates/clap_lex-0.6.0.crate) = 12272
+SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7
+SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857
+SHA256 (rust/crates/concurrent-queue-2.3.0.crate) = f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400
+SIZE (rust/crates/concurrent-queue-2.3.0.crate) = 20189
+SHA256 (rust/crates/console_error_panic_hook-0.1.7.crate) = a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc
+SIZE (rust/crates/console_error_panic_hook-0.1.7.crate) = 507196
+SHA256 (rust/crates/crossbeam-utils-0.8.16.crate) = 5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294
+SIZE (rust/crates/crossbeam-utils-0.8.16.crate) = 42508
+SHA256 (rust/crates/cssparser-0.31.2.crate) = 5b3df4f93e5fbbe73ec01ec8d3f68bba73107993a5b1e7519273c32db9b0d5be
+SIZE (rust/crates/cssparser-0.31.2.crate) = 60602
+SHA256 (rust/crates/cssparser-macros-0.6.1.crate) = 13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331
+SIZE (rust/crates/cssparser-macros-0.6.1.crate) = 7914
+SHA256 (rust/crates/darling-0.20.3.crate) = 0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e
+SIZE (rust/crates/darling-0.20.3.crate) = 26066
+SHA256 (rust/crates/darling_core-0.20.3.crate) = 177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621
+SIZE (rust/crates/darling_core-0.20.3.crate) = 60281
+SHA256 (rust/crates/darling_macro-0.20.3.crate) = 836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5
+SIZE (rust/crates/darling_macro-0.20.3.crate) = 1859
+SHA256 (rust/crates/derive_more-0.99.17.crate) = 4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321
+SIZE (rust/crates/derive_more-0.99.17.crate) = 55771
+SHA256 (rust/crates/dioxus-0.4.0.crate) = 734b13d4894daf5cee7d4a1d7960da207acd7d4b4e427c05c201a2ba87a5c032
+SIZE (rust/crates/dioxus-0.4.0.crate) = 16691
+SHA256 (rust/crates/dioxus-core-0.4.2.crate) = 9980d48779193a6fb30fb43cdb06cdcc6ada2173a73579bf92dec81607a7ed5e
+SIZE (rust/crates/dioxus-core-0.4.2.crate) = 94696
+SHA256 (rust/crates/dioxus-core-macro-0.4.0.crate) = e98f3e3fc1fb1f8796e30a5eaa6e037ca44105bdee3a70ed66721ac8b720c931
+SIZE (rust/crates/dioxus-core-macro-0.4.0.crate) = 21888
+SHA256 (rust/crates/dioxus-debug-cell-0.1.1.crate) = 2ea539174bb236e0e7dc9c12b19b88eae3cb574dedbd0252a2d43ea7e6de13e2
+SIZE (rust/crates/dioxus-debug-cell-0.1.1.crate) = 9700
+SHA256 (rust/crates/dioxus-hooks-0.4.0.crate) = 808e553203e4c2534e186a8a9da0f4032027ff5413067307ea8ecbd793e37f57
+SIZE (rust/crates/dioxus-hooks-0.4.0.crate) = 24165
+SHA256 (rust/crates/dioxus-hot-reload-0.4.0.crate) = 1ceb8aca167a64e4b0afaff447b13052402a9ade3f21b9e7d031b6b72669994a
+SIZE (rust/crates/dioxus-hot-reload-0.4.0.crate) = 6694
+SHA256 (rust/crates/dioxus-html-0.4.0.crate) = fb712fe56650dafddb626f8aed3d6ae194706c0299e175e99b45464add8b7af1
+SIZE (rust/crates/dioxus-html-0.4.0.crate) = 45216
+SHA256 (rust/crates/dioxus-interpreter-js-0.4.0.crate) = b2d35a6680cb2cf003a6c84fcaaa6d2a60b930efe4750910977b4e513bd73826
+SIZE (rust/crates/dioxus-interpreter-js-0.4.0.crate) = 9473
+SHA256 (rust/crates/dioxus-logger-0.4.1.crate) = 3d7cbab0b5519060fe9e14b3c21e3f2329b8386cd905618f78c7b929cd00cf54
+SIZE (rust/crates/dioxus-logger-0.4.1.crate) = 4083
+SHA256 (rust/crates/dioxus-rsx-0.4.0.crate) = 531a6b418fb75d08389920c024d1c082b500844cf50ccb16ad8d9ee33a1907a1
+SIZE (rust/crates/dioxus-rsx-0.4.0.crate) = 20277
+SHA256 (rust/crates/dioxus-web-0.4.0.crate) = 91d9dcd05db44c292220d520868bf703ea8165539ed8d80c60a7c33c3a846e8c
+SIZE (rust/crates/dioxus-web-0.4.0.crate) = 39450
+SHA256 (rust/crates/dtoa-1.0.9.crate) = dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653
+SIZE (rust/crates/dtoa-1.0.9.crate) = 17002
+SHA256 (rust/crates/dtoa-short-0.3.4.crate) = dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74
+SIZE (rust/crates/dtoa-short-0.3.4.crate) = 8276
+SHA256 (rust/crates/ego-tree-0.6.2.crate) = 3a68a4904193147e0a8dec3314640e6db742afd5f6e634f428a6af230d9b3591
+SIZE (rust/crates/ego-tree-0.6.2.crate) = 8962
+SHA256 (rust/crates/enumset-1.1.3.crate) = 226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d
+SIZE (rust/crates/enumset-1.1.3.crate) = 26976
+SHA256 (rust/crates/enumset_derive-0.8.1.crate) = e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af
+SIZE (rust/crates/enumset_derive-0.8.1.crate) = 12711
+SHA256 (rust/crates/euclid-0.22.9.crate) = 87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787
+SIZE (rust/crates/euclid-0.22.9.crate) = 76671
+SHA256 (rust/crates/event-listener-2.5.3.crate) = 0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0
+SIZE (rust/crates/event-listener-2.5.3.crate) = 15392
+SHA256 (rust/crates/fastrand-2.0.1.crate) = 25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5
+SIZE (rust/crates/fastrand-2.0.1.crate) = 14664
+SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
+SIZE (rust/crates/fnv-1.0.7.crate) = 11266
+SHA256 (rust/crates/futf-0.1.5.crate) = df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843
+SIZE (rust/crates/futf-0.1.5.crate) = 11344
+SHA256 (rust/crates/futures-channel-0.3.29.crate) = ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb
+SIZE (rust/crates/futures-channel-0.3.29.crate) = 32432
+SHA256 (rust/crates/futures-core-0.3.29.crate) = eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c
+SIZE (rust/crates/futures-core-0.3.29.crate) = 14808
+SHA256 (rust/crates/futures-io-0.3.29.crate) = 8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa
+SIZE (rust/crates/futures-io-0.3.29.crate) = 8908
+SHA256 (rust/crates/futures-lite-1.13.0.crate) = 49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce
+SIZE (rust/crates/futures-lite-1.13.0.crate) = 37058
+SHA256 (rust/crates/futures-macro-0.3.29.crate) = 53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb
+SIZE (rust/crates/futures-macro-0.3.29.crate) = 11278
+SHA256 (rust/crates/futures-task-0.3.29.crate) = efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2
+SIZE (rust/crates/futures-task-0.3.29.crate) = 11853
+SHA256 (rust/crates/futures-util-0.3.29.crate) = a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104
+SIZE (rust/crates/futures-util-0.3.29.crate) = 160207
+SHA256 (rust/crates/fxhash-0.2.1.crate) = c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c
+SIZE (rust/crates/fxhash-0.2.1.crate) = 4102
+SHA256 (rust/crates/getopts-0.2.21.crate) = 14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5
+SIZE (rust/crates/getopts-0.2.21.crate) = 18457
+SHA256 (rust/crates/getrandom-0.2.11.crate) = fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f
+SIZE (rust/crates/getrandom-0.2.11.crate) = 35391
+SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888
+SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968
+SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8
+SIZE (rust/crates/heck-0.4.1.crate) = 11567
+SHA256 (rust/crates/html5ever-0.26.0.crate) = bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7
+SIZE (rust/crates/html5ever-0.26.0.crate) = 72921
+SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
+SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
+SHA256 (rust/crates/indent_write-2.2.0.crate) = 0cfe9645a18782869361d9c8732246be7b410ad4e919d3609ebabdac00ba12c3
+SIZE (rust/crates/indent_write-2.2.0.crate) = 11090
+SHA256 (rust/crates/interprocess-docfix-1.2.2.crate) = 4b84ee245c606aeb0841649a9288e3eae8c61b853a8cd5c0e14450e96d53d28f
+SIZE (rust/crates/interprocess-docfix-1.2.2.crate) = 115427
+SHA256 (rust/crates/intmap-0.7.1.crate) = ae52f28f45ac2bc96edb7714de995cffc174a395fb0abf5bff453587c980d7b9
+SIZE (rust/crates/intmap-0.7.1.crate) = 6708
+SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38
+SIZE (rust/crates/itoa-1.0.9.crate) = 10492
+SHA256 (rust/crates/joinery-2.1.0.crate) = 72167d68f5fce3b8655487b8038691a3c9984ee769590f93f2a631f4ad64e4f5
+SIZE (rust/crates/joinery-2.1.0.crate) = 14163
+SHA256 (rust/crates/js-sys-0.3.65.crate) = 54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8
+SIZE (rust/crates/js-sys-0.3.65.crate) = 80725
+SHA256 (rust/crates/keyboard-types-0.6.2.crate) = 0b7668b7cff6a51fe61cdde64cd27c8a220786f399501b57ebe36f7d8112fd68
+SIZE (rust/crates/keyboard-types-0.6.2.crate) = 36367
+SHA256 (rust/crates/libc-0.2.150.crate) = 89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c
+SIZE (rust/crates/libc-0.2.150.crate) = 719359
+SHA256 (rust/crates/lock_api-0.4.11.crate) = 3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45
+SIZE (rust/crates/lock_api-0.4.11.crate) = 27487
+SHA256 (rust/crates/log-0.4.20.crate) = b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f
+SIZE (rust/crates/log-0.4.20.crate) = 38307
+SHA256 (rust/crates/longest-increasing-subsequence-0.1.0.crate) = b3bd0dd2cd90571056fdb71f6275fada10131182f84899f4b2a916e565d81d86
+SIZE (rust/crates/longest-increasing-subsequence-0.1.0.crate) = 9734
+SHA256 (rust/crates/lru-0.8.1.crate) = b6e8aaa3f231bb4bd57b84b2d5dc3ae7f350265df8aa96492e0bc394a1571909
+SIZE (rust/crates/lru-0.8.1.crate) = 13518
+SHA256 (rust/crates/mac-0.1.1.crate) = c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4
+SIZE (rust/crates/mac-0.1.1.crate) = 4838
+SHA256 (rust/crates/markup5ever-0.11.0.crate) = 7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016
+SIZE (rust/crates/markup5ever-0.11.0.crate) = 34667
+SHA256 (rust/crates/memchr-2.6.4.crate) = f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167
+SIZE (rust/crates/memchr-2.6.4.crate) = 94439
+SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
+SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
+SHA256 (rust/crates/new_debug_unreachable-1.0.4.crate) = e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54
+SIZE (rust/crates/new_debug_unreachable-1.0.4.crate) = 2561
+SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
+SIZE (rust/crates/nom-7.1.3.crate) = 117570
+SHA256 (rust/crates/nom-supreme-0.8.0.crate) = 2bd3ae6c901f1959588759ff51c95d24b491ecb9ff91aa9c2ef4acc5b1dcab27
+SIZE (rust/crates/nom-supreme-0.8.0.crate) = 31430
+SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c
+SIZE (rust/crates/num-traits-0.2.17.crate) = 50190
+SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d
+SIZE (rust/crates/once_cell-1.18.0.crate) = 32969
+SHA256 (rust/crates/ordered-float-2.10.1.crate) = 68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c
+SIZE (rust/crates/ordered-float-2.10.1.crate) = 16029
+SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f
+SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967
+SHA256 (rust/crates/parking_lot_core-0.9.9.crate) = 4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e
+SIZE (rust/crates/parking_lot_core-0.9.9.crate) = 32445
+SHA256 (rust/crates/phf-0.10.1.crate) = fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259
+SIZE (rust/crates/phf-0.10.1.crate) = 5406
+SHA256 (rust/crates/phf-0.11.2.crate) = ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc
+SIZE (rust/crates/phf-0.11.2.crate) = 21569
+SHA256 (rust/crates/phf_codegen-0.10.0.crate) = 4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd
+SIZE (rust/crates/phf_codegen-0.10.0.crate) = 3402
+SHA256 (rust/crates/phf_generator-0.10.0.crate) = 5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6
+SIZE (rust/crates/phf_generator-0.10.0.crate) = 7525
+SHA256 (rust/crates/phf_generator-0.11.2.crate) = 48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0
+SIZE (rust/crates/phf_generator-0.11.2.crate) = 14190
+SHA256 (rust/crates/phf_macros-0.11.2.crate) = 3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b
+SIZE (rust/crates/phf_macros-0.11.2.crate) = 4748
+SHA256 (rust/crates/phf_shared-0.10.0.crate) = b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096
+SIZE (rust/crates/phf_shared-0.10.0.crate) = 4095
+SHA256 (rust/crates/phf_shared-0.11.2.crate) = 90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b
+SIZE (rust/crates/phf_shared-0.11.2.crate) = 14284
+SHA256 (rust/crates/pin-project-lite-0.2.13.crate) = 8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58
+SIZE (rust/crates/pin-project-lite-0.2.13.crate) = 29141
+SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
+SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
+SHA256 (rust/crates/piper-0.2.1.crate) = 668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4
+SIZE (rust/crates/piper-0.2.1.crate) = 15878
+SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de
+SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242
+SHA256 (rust/crates/precomputed-hash-0.1.1.crate) = 925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c
+SIZE (rust/crates/precomputed-hash-0.1.1.crate) = 1640
+SHA256 (rust/crates/proc-macro2-1.0.69.crate) = 134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da
+SIZE (rust/crates/proc-macro2-1.0.69.crate) = 44271
+SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae
+SIZE (rust/crates/quote-1.0.33.crate) = 28090
+SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
+SIZE (rust/crates/rand-0.8.5.crate) = 87113
+SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
+SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
+SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
+SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
+SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa
+SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858
+SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
+SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
+SHA256 (rust/crates/rustc_version-0.4.0.crate) = bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366
+SIZE (rust/crates/rustc_version-0.4.0.crate) = 12175
+SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741
+SIZE (rust/crates/ryu-1.0.15.crate) = 46906
+SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
+SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
+SHA256 (rust/crates/scraper-0.18.1.crate) = 585480e3719b311b78a573db1c9d9c4c1f8010c2dee4cc59c2efe58ea4dbc3e1
+SIZE (rust/crates/scraper-0.18.1.crate) = 23389
+SHA256 (rust/crates/selectors-0.25.0.crate) = 4eb30575f3638fc8f6815f448d50cb1a2e255b0897985c8c59f4d37b72a07b06
+SIZE (rust/crates/selectors-0.25.0.crate) = 53052
+SHA256 (rust/crates/semver-1.0.20.crate) = 836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090
+SIZE (rust/crates/semver-1.0.20.crate) = 30451
+SHA256 (rust/crates/serde-1.0.193.crate) = 25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89
+SIZE (rust/crates/serde-1.0.193.crate) = 76863
+SHA256 (rust/crates/serde-value-0.7.0.crate) = f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c
+SIZE (rust/crates/serde-value-0.7.0.crate) = 10249
+SHA256 (rust/crates/serde-wasm-bindgen-0.5.0.crate) = f3b143e2833c57ab9ad3ea280d21fd34e285a42837aeb0ee301f4f41890fa00e
+SIZE (rust/crates/serde-wasm-bindgen-0.5.0.crate) = 17235
+SHA256 (rust/crates/serde_derive-1.0.193.crate) = 43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3
+SIZE (rust/crates/serde_derive-1.0.193.crate) = 55692
+SHA256 (rust/crates/serde_json-1.0.108.crate) = 3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b
+SIZE (rust/crates/serde_json-1.0.108.crate) = 146476
+SHA256 (rust/crates/serde_repr-0.1.17.crate) = 3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145
+SIZE (rust/crates/serde_repr-0.1.17.crate) = 9971
+SHA256 (rust/crates/servo_arc-0.3.0.crate) = d036d71a959e00c77a63538b90a6c2390969f9772b096ea837205c6bd0491a44
+SIZE (rust/crates/servo_arc-0.3.0.crate) = 12738
+SHA256 (rust/crates/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d
+SIZE (rust/crates/siphasher-0.3.11.crate) = 10442
+SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67
+SIZE (rust/crates/slab-0.4.9.crate) = 17108
+SHA256 (rust/crates/sledgehammer_bindgen-0.2.4.crate) = c0bc2cf26c12673eee8674b19d56cec04e9b815704c71298eafac61f131f99d7
+SIZE (rust/crates/sledgehammer_bindgen-0.2.4.crate) = 20109
+SHA256 (rust/crates/sledgehammer_utils-0.2.0.crate) = 5cd16550f1dd7866c7580dbf80c892dc1bef106737eeb850d42c62ec61896059
+SIZE (rust/crates/sledgehammer_utils-0.2.0.crate) = 3848
+SHA256 (rust/crates/smallbox-0.8.2.crate) = d92359f97e6b417da4328a970cf04a044db104fbd57f7d72cb7ff665bb8806af
+SIZE (rust/crates/smallbox-0.8.2.crate) = 9305
+SHA256 (rust/crates/smallvec-1.11.1.crate) = 942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a
+SIZE (rust/crates/smallvec-1.11.1.crate) = 34831
+SHA256 (rust/crates/spinning-0.1.0.crate) = 2d4f0e86297cad2658d92a707320d87bf4e6ae1050287f51d19b67ef3f153a7b
+SIZE (rust/crates/spinning-0.1.0.crate) = 12713
+SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3
+SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054
+SHA256 (rust/crates/string_cache-0.8.7.crate) = f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b
+SIZE (rust/crates/string_cache-0.8.7.crate) = 16655
+SHA256 (rust/crates/string_cache_codegen-0.5.2.crate) = 6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988
+SIZE (rust/crates/string_cache_codegen-0.5.2.crate) = 8156
+SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
+SIZE (rust/crates/strsim-0.10.0.crate) = 11355
+SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
+SIZE (rust/crates/syn-1.0.109.crate) = 237611
+SHA256 (rust/crates/syn-2.0.39.crate) = 23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a
+SIZE (rust/crates/syn-2.0.39.crate) = 244129
+SHA256 (rust/crates/tendril-0.4.3.crate) = d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0
+SIZE (rust/crates/tendril-0.4.3.crate) = 37210
+SHA256 (rust/crates/thiserror-1.0.50.crate) = f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2
+SIZE (rust/crates/thiserror-1.0.50.crate) = 19414
+SHA256 (rust/crates/thiserror-impl-1.0.50.crate) = 266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8
+SIZE (rust/crates/thiserror-impl-1.0.50.crate) = 15357
+SHA256 (rust/crates/to_method-1.1.0.crate) = c7c4ceeeca15c8384bbc3e011dbd8fccb7f068a440b752b7d9b32ceb0ca0e2e8
+SIZE (rust/crates/to_method-1.1.0.crate) = 4738
+SHA256 (rust/crates/tracing-0.1.40.crate) = c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef
+SIZE (rust/crates/tracing-0.1.40.crate) = 79459
+SHA256 (rust/crates/tracing-core-0.1.32.crate) = c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54
+SIZE (rust/crates/tracing-core-0.1.32.crate) = 61221
+SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
+SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
+SHA256 (rust/crates/unicode-segmentation-1.10.1.crate) = 1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36
+SIZE (rust/crates/unicode-segmentation-1.10.1.crate) = 98416
+SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85
+SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187
+SHA256 (rust/crates/utf-8-0.7.6.crate) = 09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9
+SIZE (rust/crates/utf-8-0.7.6.crate) = 10422
+SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
+SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435
+SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
+SIZE (rust/crates/version_check-0.9.4.crate) = 14895
+SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
+SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
+SHA256 (rust/crates/wasm-bindgen-0.2.88.crate) = 7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce
+SIZE (rust/crates/wasm-bindgen-0.2.88.crate) = 181311
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.88.crate) = e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217
+SIZE (rust/crates/wasm-bindgen-backend-0.2.88.crate) = 28181
+SHA256 (rust/crates/wasm-bindgen-futures-0.4.38.crate) = 9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02
+SIZE (rust/crates/wasm-bindgen-futures-0.4.38.crate) = 15376
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.88.crate) = 5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2
+SIZE (rust/crates/wasm-bindgen-macro-0.2.88.crate) = 13908
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.88.crate) = c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.88.crate) = 20008
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.88.crate) = 0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b
+SIZE (rust/crates/wasm-bindgen-shared-0.2.88.crate) = 7264
+SHA256 (rust/crates/web-sys-0.3.65.crate) = 5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85
+SIZE (rust/crates/web-sys-0.3.65.crate) = 734287
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
+SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9
+SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884
+SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c
+SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8
+SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492
+SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc
+SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483
+SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e
+SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891
+SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406
+SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300
+SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e
+SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc
+SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486
+SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538
+SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412
+SHA256 (rust/crates/zerocopy-0.7.25.crate) = 8cd369a67c0edfef15010f980c3cbe45d7f651deac2cd67ce097cd801de16557
+SIZE (rust/crates/zerocopy-0.7.25.crate) = 127666
+SHA256 (rust/crates/zerocopy-derive-0.7.25.crate) = c2f140bda219a26ccc0cdb03dba58af72590c53b22642577d88a927bc5c87d6b
+SIZE (rust/crates/zerocopy-derive-0.7.25.crate) = 528380
+SHA256 (orf-html-query-html-query-v1.2.2_GH0.tar.gz) = 0fdc12100c178cd2e5ae61c54e640ecb68533017fcee4845ceb4050d1e4fff60
+SIZE (orf-html-query-html-query-v1.2.2_GH0.tar.gz) = 1172530
diff --git a/textproc/hq/pkg-descr b/textproc/html-query/pkg-descr
index 1941a18d8dfa..1941a18d8dfa 100644
--- a/textproc/hq/pkg-descr
+++ b/textproc/html-query/pkg-descr
diff --git a/textproc/jnv/Makefile b/textproc/jnv/Makefile
index 83e045bba5a3..c0dae3861612 100644
--- a/textproc/jnv/Makefile
+++ b/textproc/jnv/Makefile
@@ -1,7 +1,6 @@
PORTNAME= jnv
DISTVERSIONPREFIX= v
-DISTVERSION= 0.6.0
-PORTREVISION= 3
+DISTVERSION= 0.6.1
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
@@ -16,70 +15,70 @@ USES= cargo
USE_GITHUB= yes
GH_ACCOUNT= ynqa
-CARGO_CRATES= addr2line-0.22.0 \
- adler-1.0.2 \
- ahash-0.8.11 \
+CARGO_CRATES= addr2line-0.24.2 \
+ adler2-2.0.1 \
+ ahash-0.8.12 \
aho-corasick-1.1.3 \
- allocator-api2-0.2.18 \
- anstream-0.6.13 \
- anstyle-1.0.10 \
- anstyle-parse-0.2.3 \
- anstyle-query-1.0.2 \
- anstyle-wincon-3.0.2 \
- anyhow-1.0.97 \
- arboard-3.4.1 \
+ allocator-api2-0.2.21 \
+ anstream-0.6.19 \
+ anstyle-1.0.11 \
+ anstyle-parse-0.2.7 \
+ anstyle-query-1.1.3 \
+ anstyle-wincon-3.0.9 \
+ anyhow-1.0.98 \
+ arboard-3.6.0 \
async-trait-0.1.88 \
- autocfg-1.2.0 \
- backtrace-0.3.73 \
- base64-0.21.7 \
- bincode-1.3.3 \
+ autocfg-1.5.0 \
+ backtrace-0.3.75 \
+ base64-0.22.1 \
bitflags-1.3.2 \
- bitflags-2.5.0 \
- block2-0.5.1 \
- bytemuck-1.16.3 \
+ bitflags-2.9.1 \
+ bytemuck-1.23.1 \
byteorder-lite-0.1.0 \
- bytes-1.9.0 \
- cc-1.2.5 \
- cfg-if-1.0.0 \
+ bytes-1.10.1 \
+ cc-1.2.29 \
+ cfg-if-1.0.1 \
+ chrono-0.4.41 \
chumsky-0.9.3 \
- clap-4.5.34 \
- clap_builder-4.5.34 \
- clap_derive-4.5.32 \
- clap_lex-0.7.4 \
+ clap-4.5.41 \
+ clap_builder-4.5.41 \
+ clap_derive-4.5.41 \
+ clap_lex-0.7.5 \
clipboard-win-5.4.0 \
- colorchoice-1.0.0 \
- core-foundation-0.9.4 \
- core-foundation-sys-0.8.6 \
- core-graphics-0.23.2 \
- core-graphics-types-0.1.3 \
- crc32fast-1.4.2 \
+ colorchoice-1.0.4 \
+ convert_case-0.7.1 \
+ crc32fast-1.5.0 \
crossbeam-deque-0.8.6 \
crossbeam-epoch-0.9.18 \
+ crossbeam-skiplist-0.1.3 \
crossbeam-utils-0.8.21 \
- crossterm-0.28.1 \
+ crossterm-0.29.0 \
crossterm_winapi-0.9.1 \
- darling-0.20.10 \
- darling_core-0.20.10 \
- darling_macro-0.20.10 \
- deranged-0.3.11 \
+ darling-0.20.11 \
+ darling_core-0.20.11 \
+ darling_macro-0.20.11 \
derive_builder-0.20.2 \
derive_builder_core-0.20.2 \
derive_builder_macro-0.20.2 \
+ derive_more-2.0.1 \
+ derive_more-impl-2.0.1 \
dirs-6.0.0 \
dirs-sys-0.5.0 \
+ dispatch2-0.3.0 \
+ document-features-0.2.11 \
+ downcast-rs-1.2.1 \
duration-string-0.5.2 \
- dyn-clone-1.0.17 \
+ dyn-clone-1.0.19 \
either-1.15.0 \
- equivalent-1.0.1 \
- errno-0.3.9 \
- error-code-3.2.0 \
- fdeflate-0.3.4 \
- filedescriptor-0.8.2 \
- flate2-1.0.31 \
+ equivalent-1.0.2 \
+ errno-0.3.13 \
+ error-code-3.3.2 \
+ fastrand-2.3.0 \
+ fdeflate-0.3.7 \
+ filedescriptor-0.8.3 \
+ fixedbitset-0.4.2 \
+ flate2-1.1.2 \
fnv-1.0.7 \
- foreign-types-0.5.0 \
- foreign-types-macros-0.2.3 \
- foreign-types-shared-0.3.1 \
futures-0.3.31 \
futures-channel-0.3.31 \
futures-core-0.3.31 \
@@ -90,130 +89,159 @@ CARGO_CRATES= addr2line-0.22.0 \
futures-task-0.3.31 \
futures-util-0.3.31 \
gethostname-0.4.3 \
- getrandom-0.2.14 \
- gimli-0.29.0 \
- hashbrown-0.14.3 \
- hashbrown-0.15.2 \
+ getrandom-0.2.16 \
+ getrandom-0.3.3 \
+ gimli-0.31.1 \
+ hashbrown-0.14.5 \
+ hashbrown-0.15.4 \
heck-0.5.0 \
- hermit-abi-0.3.9 \
- hifijson-0.2.1 \
+ hifijson-0.2.2 \
ident_case-1.0.1 \
- image-0.25.2 \
- indexmap-2.7.0 \
- itoa-1.0.11 \
- jaq-core-1.2.1 \
- jaq-interpret-1.2.1 \
- jaq-parse-1.0.2 \
- jaq-std-1.2.1 \
- jaq-syn-1.1.0 \
- jpeg-decoder-0.3.1 \
- libc-0.2.169 \
- libm-0.2.8 \
- libredox-0.1.3 \
- linux-raw-sys-0.4.14 \
- lock_api-0.4.11 \
- log-0.4.22 \
- memchr-2.7.2 \
- miniz_oxide-0.7.4 \
- mio-1.0.2 \
- num-conv-0.1.0 \
+ image-0.25.6 \
+ indexmap-2.10.0 \
+ io-uring-0.7.8 \
+ is_terminal_polyfill-1.70.1 \
+ itoa-1.0.15 \
+ jaq-core-1.5.1 \
+ jaq-interpret-1.5.0 \
+ jaq-parse-1.0.3 \
+ jaq-std-1.6.0 \
+ jaq-syn-1.6.0 \
+ jpeg-decoder-0.3.2 \
+ libc-0.2.174 \
+ libm-0.2.15 \
+ libredox-0.1.4 \
+ linux-raw-sys-0.4.15 \
+ linux-raw-sys-0.9.4 \
+ litrs-0.4.1 \
+ lock_api-0.4.13 \
+ log-0.4.27 \
+ memchr-2.7.5 \
+ minimal-lexical-0.2.1 \
+ miniz_oxide-0.8.9 \
+ mio-1.0.4 \
+ nom-7.1.3 \
num-traits-0.2.19 \
- objc-sys-0.3.5 \
- objc2-0.5.2 \
- objc2-app-kit-0.2.2 \
- objc2-core-data-0.2.2 \
- objc2-core-image-0.2.2 \
- objc2-encode-4.0.3 \
- objc2-foundation-0.2.2 \
- objc2-metal-0.2.2 \
- objc2-quartz-core-0.2.2 \
+ objc2-0.6.1 \
+ objc2-app-kit-0.3.1 \
+ objc2-core-foundation-0.3.1 \
+ objc2-core-graphics-0.3.1 \
+ objc2-encode-4.1.0 \
+ objc2-foundation-0.3.1 \
+ objc2-io-surface-0.3.1 \
object-0.36.7 \
- once_cell-1.19.0 \
+ once_cell-1.21.3 \
+ once_cell_polyfill-1.70.1 \
option-ext-0.2.0 \
- parking_lot-0.12.1 \
- parking_lot_core-0.9.9 \
- pin-project-lite-0.2.15 \
+ os_pipe-1.2.2 \
+ parking_lot-0.12.4 \
+ parking_lot_core-0.9.11 \
+ percent-encoding-2.3.1 \
+ petgraph-0.6.5 \
+ pin-project-lite-0.2.16 \
pin-utils-0.1.0 \
- png-0.17.13 \
- powerfmt-0.2.0 \
- proc-macro2-1.0.92 \
- promkit-core-0.1.0 \
- promkit-widgets-0.1.0 \
+ pkg-config-0.3.32 \
+ png-0.17.16 \
+ proc-macro2-1.0.95 \
+ promkit-core-0.2.0 \
+ promkit-widgets-0.2.0 \
+ quick-xml-0.37.5 \
quote-1.0.40 \
+ r-efi-5.3.0 \
rayon-1.10.0 \
rayon-core-1.12.1 \
- redox_syscall-0.4.1 \
+ redox_syscall-0.5.13 \
redox_users-0.5.0 \
- regex-1.10.4 \
- regex-automata-0.4.6 \
- regex-syntax-0.8.3 \
- rustc-demangle-0.1.24 \
- rustix-0.38.34 \
- ryu-1.0.17 \
+ regex-1.11.1 \
+ regex-automata-0.4.9 \
+ regex-syntax-0.8.5 \
+ rustc-demangle-0.1.25 \
+ rustix-0.38.44 \
+ rustix-1.0.8 \
+ ryu-1.0.20 \
scopeguard-1.2.0 \
serde-1.0.219 \
serde_derive-1.0.219 \
serde_json-1.0.140 \
- serde_spanned-0.6.8 \
+ serde_spanned-1.0.0 \
shlex-1.3.0 \
- signal-hook-0.3.17 \
+ signal-hook-0.3.18 \
signal-hook-mio-0.2.4 \
- signal-hook-registry-1.4.2 \
+ signal-hook-registry-1.4.5 \
simd-adler32-0.3.7 \
- slab-0.4.9 \
- smallvec-1.13.2 \
- socket2-0.5.8 \
+ slab-0.4.10 \
+ smallvec-1.15.1 \
+ socket2-0.5.10 \
strsim-0.11.1 \
- syn-2.0.95 \
- thiserror-1.0.64 \
+ syn-2.0.104 \
+ tempfile-3.20.0 \
+ thiserror-1.0.69 \
thiserror-2.0.12 \
- thiserror-impl-1.0.64 \
+ thiserror-impl-1.0.69 \
thiserror-impl-2.0.12 \
tiff-0.9.1 \
- time-0.3.36 \
- time-core-0.1.2 \
- time-macros-0.2.18 \
- tokio-1.44.1 \
+ tokio-1.46.1 \
tokio-macros-2.5.0 \
tokio-stream-0.1.17 \
- toml-0.8.20 \
- toml_datetime-0.6.8 \
- toml_edit-0.22.24 \
- unicode-ident-1.0.12 \
- unicode-width-0.2.0 \
+ toml-0.9.2 \
+ toml_datetime-0.7.0 \
+ toml_parser-1.0.1 \
+ toml_writer-1.0.2 \
+ tree_magic_mini-3.1.6 \
+ unicode-ident-1.0.18 \
+ unicode-segmentation-1.12.0 \
+ unicode-width-0.2.1 \
urlencoding-2.1.3 \
- utf8parse-0.2.1 \
- version_check-0.9.4 \
- wasi-0.11.0+wasi-snapshot-preview1 \
- weezl-0.1.8 \
+ utf8parse-0.2.2 \
+ version_check-0.9.5 \
+ wasi-0.11.1+wasi-snapshot-preview1 \
+ wasi-0.14.2+wasi-0.2.4 \
+ wayland-backend-0.3.10 \
+ wayland-client-0.31.10 \
+ wayland-protocols-0.32.8 \
+ wayland-protocols-wlr-0.3.8 \
+ wayland-scanner-0.31.6 \
+ wayland-sys-0.31.6 \
+ weezl-0.1.10 \
winapi-0.3.9 \
winapi-i686-pc-windows-gnu-0.4.0 \
winapi-x86_64-pc-windows-gnu-0.4.0 \
- windows-sys-0.48.0 \
windows-sys-0.52.0 \
windows-sys-0.59.0 \
+ windows-sys-0.60.2 \
windows-targets-0.48.5 \
windows-targets-0.52.6 \
+ windows-targets-0.53.2 \
windows_aarch64_gnullvm-0.48.5 \
windows_aarch64_gnullvm-0.52.6 \
+ windows_aarch64_gnullvm-0.53.0 \
windows_aarch64_msvc-0.48.5 \
windows_aarch64_msvc-0.52.6 \
+ windows_aarch64_msvc-0.53.0 \
windows_i686_gnu-0.48.5 \
windows_i686_gnu-0.52.6 \
+ windows_i686_gnu-0.53.0 \
windows_i686_gnullvm-0.52.6 \
+ windows_i686_gnullvm-0.53.0 \
windows_i686_msvc-0.48.5 \
windows_i686_msvc-0.52.6 \
+ windows_i686_msvc-0.53.0 \
windows_x86_64_gnu-0.48.5 \
windows_x86_64_gnu-0.52.6 \
+ windows_x86_64_gnu-0.53.0 \
windows_x86_64_gnullvm-0.48.5 \
windows_x86_64_gnullvm-0.52.6 \
+ windows_x86_64_gnullvm-0.53.0 \
windows_x86_64_msvc-0.48.5 \
windows_x86_64_msvc-0.52.6 \
- winnow-0.7.4 \
+ windows_x86_64_msvc-0.53.0 \
+ winnow-0.7.12 \
+ wit-bindgen-rt-0.39.0 \
+ wl-clipboard-rs-0.9.2 \
x11rb-0.13.1 \
x11rb-protocol-0.13.1 \
- zerocopy-0.7.32 \
- zerocopy-derive-0.7.32
+ zerocopy-0.8.26 \
+ zerocopy-derive-0.8.26
PLIST_FILES= bin/${PORTNAME}
diff --git a/textproc/jnv/distinfo b/textproc/jnv/distinfo
index 9bedaff5d220..ad319465eb17 100644
--- a/textproc/jnv/distinfo
+++ b/textproc/jnv/distinfo
@@ -1,132 +1,132 @@
-TIMESTAMP = 1743612051
-SHA256 (rust/crates/addr2line-0.22.0.crate) = 6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678
-SIZE (rust/crates/addr2line-0.22.0.crate) = 39156
-SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
-SIZE (rust/crates/adler-1.0.2.crate) = 12778
-SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011
-SIZE (rust/crates/ahash-0.8.11.crate) = 43607
+TIMESTAMP = 1753124656
+SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
+SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
+SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
+SIZE (rust/crates/adler2-2.0.1.crate) = 13366
+SHA256 (rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75
+SIZE (rust/crates/ahash-0.8.12.crate) = 43413
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
-SHA256 (rust/crates/allocator-api2-0.2.18.crate) = 5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f
-SIZE (rust/crates/allocator-api2-0.2.18.crate) = 62504
-SHA256 (rust/crates/anstream-0.6.13.crate) = d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb
-SIZE (rust/crates/anstream-0.6.13.crate) = 30928
-SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9
-SIZE (rust/crates/anstyle-1.0.10.crate) = 15725
-SHA256 (rust/crates/anstyle-parse-0.2.3.crate) = c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c
-SIZE (rust/crates/anstyle-parse-0.2.3.crate) = 24699
-SHA256 (rust/crates/anstyle-query-1.0.2.crate) = e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648
-SIZE (rust/crates/anstyle-query-1.0.2.crate) = 8739
-SHA256 (rust/crates/anstyle-wincon-3.0.2.crate) = 1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7
-SIZE (rust/crates/anstyle-wincon-3.0.2.crate) = 11272
-SHA256 (rust/crates/anyhow-1.0.97.crate) = dcfed56ad506cb2c684a14971b8861fdc3baaaae314b9e5f9bb532cbe3ba7a4f
-SIZE (rust/crates/anyhow-1.0.97.crate) = 52221
-SHA256 (rust/crates/arboard-3.4.1.crate) = df099ccb16cd014ff054ac1bf392c67feeef57164b05c42f037cd40f5d4357f4
-SIZE (rust/crates/arboard-3.4.1.crate) = 47070
+SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923
+SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622
+SHA256 (rust/crates/anstream-0.6.19.crate) = 301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933
+SIZE (rust/crates/anstream-0.6.19.crate) = 28767
+SHA256 (rust/crates/anstyle-1.0.11.crate) = 862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd
+SIZE (rust/crates/anstyle-1.0.11.crate) = 15880
+SHA256 (rust/crates/anstyle-parse-0.2.7.crate) = 4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2
+SIZE (rust/crates/anstyle-parse-0.2.7.crate) = 21707
+SHA256 (rust/crates/anstyle-query-1.1.3.crate) = 6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9
+SIZE (rust/crates/anstyle-query-1.1.3.crate) = 10190
+SHA256 (rust/crates/anstyle-wincon-3.0.9.crate) = 403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882
+SIZE (rust/crates/anstyle-wincon-3.0.9.crate) = 12561
+SHA256 (rust/crates/anyhow-1.0.98.crate) = e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487
+SIZE (rust/crates/anyhow-1.0.98.crate) = 53334
+SHA256 (rust/crates/arboard-3.6.0.crate) = 55f533f8e0af236ffe5eb979b99381df3258853f00ba2e44b6e1955292c75227
+SIZE (rust/crates/arboard-3.6.0.crate) = 52701
SHA256 (rust/crates/async-trait-0.1.88.crate) = e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5
SIZE (rust/crates/async-trait-0.1.88.crate) = 32084
-SHA256 (rust/crates/autocfg-1.2.0.crate) = f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80
-SIZE (rust/crates/autocfg-1.2.0.crate) = 14808
-SHA256 (rust/crates/backtrace-0.3.73.crate) = 5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a
-SIZE (rust/crates/backtrace-0.3.73.crate) = 87617
-SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567
-SIZE (rust/crates/base64-0.21.7.crate) = 82576
-SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad
-SIZE (rust/crates/bincode-1.3.3.crate) = 28958
+SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8
+SIZE (rust/crates/autocfg-1.5.0.crate) = 18729
+SHA256 (rust/crates/backtrace-0.3.75.crate) = 6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002
+SIZE (rust/crates/backtrace-0.3.75.crate) = 92665
+SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6
+SIZE (rust/crates/base64-0.22.1.crate) = 81597
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1
-SIZE (rust/crates/bitflags-2.5.0.crate) = 43821
-SHA256 (rust/crates/block2-0.5.1.crate) = 2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f
-SIZE (rust/crates/block2-0.5.1.crate) = 24191
-SHA256 (rust/crates/bytemuck-1.16.3.crate) = 102087e286b4677862ea56cf8fc58bb2cdfa8725c40ffb80fe3a008eb7f2fc83
-SIZE (rust/crates/bytemuck-1.16.3.crate) = 49539
+SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967
+SIZE (rust/crates/bitflags-2.9.1.crate) = 47913
+SHA256 (rust/crates/bytemuck-1.23.1.crate) = 5c76a5792e44e4abe34d3abf15636779261d45a7450612059293d1d2cfc63422
+SIZE (rust/crates/bytemuck-1.23.1.crate) = 52585
SHA256 (rust/crates/byteorder-lite-0.1.0.crate) = 8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495
SIZE (rust/crates/byteorder-lite-0.1.0.crate) = 15909
-SHA256 (rust/crates/bytes-1.9.0.crate) = 325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b
-SIZE (rust/crates/bytes-1.9.0.crate) = 67320
-SHA256 (rust/crates/cc-1.2.5.crate) = c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e
-SIZE (rust/crates/cc-1.2.5.crate) = 99839
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/bytes-1.10.1.crate) = d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a
+SIZE (rust/crates/bytes-1.10.1.crate) = 76779
+SHA256 (rust/crates/cc-1.2.29.crate) = 5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362
+SIZE (rust/crates/cc-1.2.29.crate) = 108072
+SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268
+SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683
+SHA256 (rust/crates/chrono-0.4.41.crate) = c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d
+SIZE (rust/crates/chrono-0.4.41.crate) = 234621
SHA256 (rust/crates/chumsky-0.9.3.crate) = 8eebd66744a15ded14960ab4ccdbfb51ad3b81f51f3f04a80adac98c985396c9
SIZE (rust/crates/chumsky-0.9.3.crate) = 75112
-SHA256 (rust/crates/clap-4.5.34.crate) = e958897981290da2a852763fe9cdb89cd36977a5d729023127095fa94d95e2ff
-SIZE (rust/crates/clap-4.5.34.crate) = 56980
-SHA256 (rust/crates/clap_builder-4.5.34.crate) = 83b0f35019843db2160b5bb19ae09b4e6411ac33fc6a712003c33e03090e2489
-SIZE (rust/crates/clap_builder-4.5.34.crate) = 168417
-SHA256 (rust/crates/clap_derive-4.5.32.crate) = 09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7
-SIZE (rust/crates/clap_derive-4.5.32.crate) = 33441
-SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
-SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
+SHA256 (rust/crates/clap-4.5.41.crate) = be92d32e80243a54711e5d7ce823c35c41c9d929dc4ab58e1276f625841aadf9
+SIZE (rust/crates/clap-4.5.41.crate) = 58298
+SHA256 (rust/crates/clap_builder-4.5.41.crate) = 707eab41e9622f9139419d573eca0900137718000c517d47da73045f54331c3d
+SIZE (rust/crates/clap_builder-4.5.41.crate) = 169633
+SHA256 (rust/crates/clap_derive-4.5.41.crate) = ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491
+SIZE (rust/crates/clap_derive-4.5.41.crate) = 33493
+SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675
+SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469
SHA256 (rust/crates/clipboard-win-5.4.0.crate) = 15efe7a882b08f34e38556b14f2fb3daa98769d06c7f0c1b076dfd0d983bc892
SIZE (rust/crates/clipboard-win-5.4.0.crate) = 20559
-SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7
-SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857
-SHA256 (rust/crates/core-foundation-0.9.4.crate) = 91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f
-SIZE (rust/crates/core-foundation-0.9.4.crate) = 27743
-SHA256 (rust/crates/core-foundation-sys-0.8.6.crate) = 06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f
-SIZE (rust/crates/core-foundation-sys-0.8.6.crate) = 37629
-SHA256 (rust/crates/core-graphics-0.23.2.crate) = c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081
-SIZE (rust/crates/core-graphics-0.23.2.crate) = 30763
-SHA256 (rust/crates/core-graphics-types-0.1.3.crate) = 45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf
-SIZE (rust/crates/core-graphics-types-0.1.3.crate) = 7063
-SHA256 (rust/crates/crc32fast-1.4.2.crate) = a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3
-SIZE (rust/crates/crc32fast-1.4.2.crate) = 38491
+SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75
+SIZE (rust/crates/colorchoice-1.0.4.crate) = 8196
+SHA256 (rust/crates/convert_case-0.7.1.crate) = bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7
+SIZE (rust/crates/convert_case-0.7.1.crate) = 23816
+SHA256 (rust/crates/crc32fast-1.5.0.crate) = 9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511
+SIZE (rust/crates/crc32fast-1.5.0.crate) = 40723
SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51
SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471
SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
+SHA256 (rust/crates/crossbeam-skiplist-0.1.3.crate) = df29de440c58ca2cc6e587ec3d22347551a32435fbde9d2bff64e78a9ffa151b
+SIZE (rust/crates/crossbeam-skiplist-0.1.3.crate) = 34930
SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
-SHA256 (rust/crates/crossterm-0.28.1.crate) = 829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6
-SIZE (rust/crates/crossterm-0.28.1.crate) = 132275
+SHA256 (rust/crates/crossterm-0.29.0.crate) = d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b
+SIZE (rust/crates/crossterm-0.29.0.crate) = 136635
SHA256 (rust/crates/crossterm_winapi-0.9.1.crate) = acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b
SIZE (rust/crates/crossterm_winapi-0.9.1.crate) = 16027
-SHA256 (rust/crates/darling-0.20.10.crate) = 6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989
-SIZE (rust/crates/darling-0.20.10.crate) = 32031
-SHA256 (rust/crates/darling_core-0.20.10.crate) = 95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5
-SIZE (rust/crates/darling_core-0.20.10.crate) = 65015
-SHA256 (rust/crates/darling_macro-0.20.10.crate) = d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806
-SIZE (rust/crates/darling_macro-0.20.10.crate) = 1874
-SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4
-SIZE (rust/crates/deranged-0.3.11.crate) = 18043
+SHA256 (rust/crates/darling-0.20.11.crate) = fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee
+SIZE (rust/crates/darling-0.20.11.crate) = 37614
+SHA256 (rust/crates/darling_core-0.20.11.crate) = 0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e
+SIZE (rust/crates/darling_core-0.20.11.crate) = 68006
+SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead
+SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532
SHA256 (rust/crates/derive_builder-0.20.2.crate) = 507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947
SIZE (rust/crates/derive_builder-0.20.2.crate) = 36661
SHA256 (rust/crates/derive_builder_core-0.20.2.crate) = 2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8
SIZE (rust/crates/derive_builder_core-0.20.2.crate) = 31397
SHA256 (rust/crates/derive_builder_macro-0.20.2.crate) = ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c
SIZE (rust/crates/derive_builder_macro-0.20.2.crate) = 6360
+SHA256 (rust/crates/derive_more-2.0.1.crate) = 093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678
+SIZE (rust/crates/derive_more-2.0.1.crate) = 70127
+SHA256 (rust/crates/derive_more-impl-2.0.1.crate) = bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3
+SIZE (rust/crates/derive_more-impl-2.0.1.crate) = 78233
SHA256 (rust/crates/dirs-6.0.0.crate) = c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e
SIZE (rust/crates/dirs-6.0.0.crate) = 14190
SHA256 (rust/crates/dirs-sys-0.5.0.crate) = e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab
SIZE (rust/crates/dirs-sys-0.5.0.crate) = 10157
+SHA256 (rust/crates/dispatch2-0.3.0.crate) = 89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec
+SIZE (rust/crates/dispatch2-0.3.0.crate) = 54606
+SHA256 (rust/crates/document-features-0.2.11.crate) = 95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d
+SIZE (rust/crates/document-features-0.2.11.crate) = 14640
+SHA256 (rust/crates/downcast-rs-1.2.1.crate) = 75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2
+SIZE (rust/crates/downcast-rs-1.2.1.crate) = 11821
SHA256 (rust/crates/duration-string-0.5.2.crate) = 04782251e09dc67c90d694d89e9a3e5fc6cfe883df1b203202de672d812fb299
SIZE (rust/crates/duration-string-0.5.2.crate) = 9280
-SHA256 (rust/crates/dyn-clone-1.0.17.crate) = 0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125
-SIZE (rust/crates/dyn-clone-1.0.17.crate) = 11848
+SHA256 (rust/crates/dyn-clone-1.0.19.crate) = 1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005
+SIZE (rust/crates/dyn-clone-1.0.19.crate) = 12896
SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719
SIZE (rust/crates/either-1.15.0.crate) = 20114
-SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
-SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
-SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba
-SIZE (rust/crates/errno-0.3.9.crate) = 10690
-SHA256 (rust/crates/error-code-3.2.0.crate) = a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b
-SIZE (rust/crates/error-code-3.2.0.crate) = 7569
-SHA256 (rust/crates/fdeflate-0.3.4.crate) = 4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645
-SIZE (rust/crates/fdeflate-0.3.4.crate) = 25001
-SHA256 (rust/crates/filedescriptor-0.8.2.crate) = 7199d965852c3bac31f779ef99cbb4537f80e952e2d6aa0ffeb30cce00f4f46e
-SIZE (rust/crates/filedescriptor-0.8.2.crate) = 10830
-SHA256 (rust/crates/flate2-1.0.31.crate) = 7f211bbe8e69bbd0cfdea405084f128ae8b4aaa6b0b522fc8f2b009084797920
-SIZE (rust/crates/flate2-1.0.31.crate) = 108176
+SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f
+SIZE (rust/crates/equivalent-1.0.2.crate) = 7419
+SHA256 (rust/crates/errno-0.3.13.crate) = 778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad
+SIZE (rust/crates/errno-0.3.13.crate) = 12449
+SHA256 (rust/crates/error-code-3.3.2.crate) = dea2df4cf52843e0452895c455a1a2cfbb842a1e7329671acf418fdc53ed4c59
+SIZE (rust/crates/error-code-3.3.2.crate) = 8516
+SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be
+SIZE (rust/crates/fastrand-2.3.0.crate) = 15076
+SHA256 (rust/crates/fdeflate-0.3.7.crate) = 1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c
+SIZE (rust/crates/fdeflate-0.3.7.crate) = 27188
+SHA256 (rust/crates/filedescriptor-0.8.3.crate) = e40758ed24c9b2eeb76c35fb0aebc66c626084edd827e07e1552279814c6682d
+SIZE (rust/crates/filedescriptor-0.8.3.crate) = 12635
+SHA256 (rust/crates/fixedbitset-0.4.2.crate) = 0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80
+SIZE (rust/crates/fixedbitset-0.4.2.crate) = 15954
+SHA256 (rust/crates/flate2-1.1.2.crate) = 4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d
+SIZE (rust/crates/flate2-1.1.2.crate) = 76495
SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
-SHA256 (rust/crates/foreign-types-0.5.0.crate) = d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965
-SIZE (rust/crates/foreign-types-0.5.0.crate) = 7824
-SHA256 (rust/crates/foreign-types-macros-0.2.3.crate) = 1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742
-SIZE (rust/crates/foreign-types-macros-0.2.3.crate) = 7635
-SHA256 (rust/crates/foreign-types-shared-0.3.1.crate) = aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b
-SIZE (rust/crates/foreign-types-shared-0.3.1.crate) = 6006
SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876
SIZE (rust/crates/futures-0.3.31.crate) = 54953
SHA256 (rust/crates/futures-channel-0.3.31.crate) = 2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10
@@ -147,126 +147,146 @@ SHA256 (rust/crates/futures-util-0.3.31.crate) = 9fa08315bb612088cc391249efdc3bc
SIZE (rust/crates/futures-util-0.3.31.crate) = 162124
SHA256 (rust/crates/gethostname-0.4.3.crate) = 0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818
SIZE (rust/crates/gethostname-0.4.3.crate) = 9336
-SHA256 (rust/crates/getrandom-0.2.14.crate) = 94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c
-SIZE (rust/crates/getrandom-0.2.14.crate) = 37307
-SHA256 (rust/crates/gimli-0.29.0.crate) = 40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd
-SIZE (rust/crates/gimli-0.29.0.crate) = 275756
-SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604
-SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425
-SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289
-SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478
+SHA256 (rust/crates/getrandom-0.2.16.crate) = 335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592
+SIZE (rust/crates/getrandom-0.2.16.crate) = 40163
+SHA256 (rust/crates/getrandom-0.3.3.crate) = 26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4
+SIZE (rust/crates/getrandom-0.3.3.crate) = 49493
+SHA256 (rust/crates/gimli-0.31.1.crate) = 07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f
+SIZE (rust/crates/gimli-0.31.1.crate) = 279515
+SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1
+SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498
+SHA256 (rust/crates/hashbrown-0.15.4.crate) = 5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5
+SIZE (rust/crates/hashbrown-0.15.4.crate) = 140447
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/hermit-abi-0.3.9.crate) = d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024
-SIZE (rust/crates/hermit-abi-0.3.9.crate) = 16165
-SHA256 (rust/crates/hifijson-0.2.1.crate) = 18ae468bcb4dfecf0e4949ee28abbc99076b6a0077f51ddbc94dbfff8e6a870c
-SIZE (rust/crates/hifijson-0.2.1.crate) = 23266
+SHA256 (rust/crates/hifijson-0.2.2.crate) = 9958ab3ce3170c061a27679916bd9b969eceeb5e8b120438e6751d0987655c42
+SIZE (rust/crates/hifijson-0.2.2.crate) = 23401
SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
-SHA256 (rust/crates/image-0.25.2.crate) = 99314c8a2152b8ddb211f924cdae532d8c5e4c8bb54728e12fff1b0cd5963a10
-SIZE (rust/crates/image-0.25.2.crate) = 225656
-SHA256 (rust/crates/indexmap-2.7.0.crate) = 62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f
-SIZE (rust/crates/indexmap-2.7.0.crate) = 85335
-SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b
-SIZE (rust/crates/itoa-1.0.11.crate) = 10563
-SHA256 (rust/crates/jaq-core-1.2.1.crate) = 03d6a5713b8f33675abfac79d1db0022a3f28764b2a6b96a185c199ad8dab86d
-SIZE (rust/crates/jaq-core-1.2.1.crate) = 21580
-SHA256 (rust/crates/jaq-interpret-1.2.1.crate) = f569e38e5fc677db8dfda89ee0b4c25b3f53e811b16434fd14bdc5b43fc362ac
-SIZE (rust/crates/jaq-interpret-1.2.1.crate) = 38376
-SHA256 (rust/crates/jaq-parse-1.0.2.crate) = ef6f8beb9f9922546419e774e24199e8a968f54c63a5a2323c8f3ef3321ace14
-SIZE (rust/crates/jaq-parse-1.0.2.crate) = 17064
-SHA256 (rust/crates/jaq-std-1.2.1.crate) = 5d7871c59297cbfdd18f6f1bbbafaad24e97fd555ee1e2a1be7a40a5a20f551a
-SIZE (rust/crates/jaq-std-1.2.1.crate) = 16732
-SHA256 (rust/crates/jaq-syn-1.1.0.crate) = a4d60101fb791b20c982731d848ed6e7d25363656497647c2093b68bd88398d6
-SIZE (rust/crates/jaq-syn-1.1.0.crate) = 15340
-SHA256 (rust/crates/jpeg-decoder-0.3.1.crate) = f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0
-SIZE (rust/crates/jpeg-decoder-0.3.1.crate) = 744364
-SHA256 (rust/crates/libc-0.2.169.crate) = b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a
-SIZE (rust/crates/libc-0.2.169.crate) = 757901
-SHA256 (rust/crates/libm-0.2.8.crate) = 4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058
-SIZE (rust/crates/libm-0.2.8.crate) = 113450
-SHA256 (rust/crates/libredox-0.1.3.crate) = c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d
-SIZE (rust/crates/libredox-0.1.3.crate) = 6068
-SHA256 (rust/crates/linux-raw-sys-0.4.14.crate) = 78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89
-SIZE (rust/crates/linux-raw-sys-0.4.14.crate) = 1826665
-SHA256 (rust/crates/lock_api-0.4.11.crate) = 3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45
-SIZE (rust/crates/lock_api-0.4.11.crate) = 27487
-SHA256 (rust/crates/log-0.4.22.crate) = a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24
-SIZE (rust/crates/log-0.4.22.crate) = 44027
-SHA256 (rust/crates/memchr-2.7.2.crate) = 6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d
-SIZE (rust/crates/memchr-2.7.2.crate) = 96220
-SHA256 (rust/crates/miniz_oxide-0.7.4.crate) = b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08
-SIZE (rust/crates/miniz_oxide-0.7.4.crate) = 56119
-SHA256 (rust/crates/mio-1.0.2.crate) = 80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec
-SIZE (rust/crates/mio-1.0.2.crate) = 102777
-SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
-SIZE (rust/crates/num-conv-0.1.0.crate) = 7444
+SHA256 (rust/crates/image-0.25.6.crate) = db35664ce6b9810857a38a906215e75a9c879f0696556a39f59c62829710251a
+SIZE (rust/crates/image-0.25.6.crate) = 242367
+SHA256 (rust/crates/indexmap-2.10.0.crate) = fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661
+SIZE (rust/crates/indexmap-2.10.0.crate) = 95836
+SHA256 (rust/crates/io-uring-0.7.8.crate) = b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013
+SIZE (rust/crates/io-uring-0.7.8.crate) = 94958
+SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
+SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
+SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
+SIZE (rust/crates/itoa-1.0.15.crate) = 11231
+SHA256 (rust/crates/jaq-core-1.5.1.crate) = d6fda09ee08c84c81293fdf811d9ebaa87b327557b5391f290c926d728c2ddd4
+SIZE (rust/crates/jaq-core-1.5.1.crate) = 22924
+SHA256 (rust/crates/jaq-interpret-1.5.0.crate) = 2fe95ec3c24af3fd9f3dd1091593f5e49b003a66c496a8aa39d764d0a06ae17b
+SIZE (rust/crates/jaq-interpret-1.5.0.crate) = 41183
+SHA256 (rust/crates/jaq-parse-1.0.3.crate) = 0346d7d3146cdda8acd929581f3d6626a332356c74d5c95aeaffaac2eb6dee82
+SIZE (rust/crates/jaq-parse-1.0.3.crate) = 17750
+SHA256 (rust/crates/jaq-std-1.6.0.crate) = bfbaa55578fd3b70433b594a370741e0c364e4afff92cc0099623fce87311bc1
+SIZE (rust/crates/jaq-std-1.6.0.crate) = 17613
+SHA256 (rust/crates/jaq-syn-1.6.0.crate) = 1ba44fe4428c71304604261ecbae047ee9cfb60c4f1a6bd222ebbb31726d3948
+SIZE (rust/crates/jaq-syn-1.6.0.crate) = 27143
+SHA256 (rust/crates/jpeg-decoder-0.3.2.crate) = 00810f1d8b74be64b13dbf3db89ac67740615d6c891f0e7b6179326533011a07
+SIZE (rust/crates/jpeg-decoder-0.3.2.crate) = 745371
+SHA256 (rust/crates/libc-0.2.174.crate) = 1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776
+SIZE (rust/crates/libc-0.2.174.crate) = 779933
+SHA256 (rust/crates/libm-0.2.15.crate) = f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de
+SIZE (rust/crates/libm-0.2.15.crate) = 156108
+SHA256 (rust/crates/libredox-0.1.4.crate) = 1580801010e535496706ba011c15f8532df6b42297d2e471fec38ceadd8c0638
+SIZE (rust/crates/libredox-0.1.4.crate) = 6946
+SHA256 (rust/crates/linux-raw-sys-0.4.15.crate) = d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab
+SIZE (rust/crates/linux-raw-sys-0.4.15.crate) = 2150898
+SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
+SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
+SHA256 (rust/crates/litrs-0.4.1.crate) = b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5
+SIZE (rust/crates/litrs-0.4.1.crate) = 42603
+SHA256 (rust/crates/lock_api-0.4.13.crate) = 96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765
+SIZE (rust/crates/lock_api-0.4.13.crate) = 28565
+SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
+SIZE (rust/crates/log-0.4.27.crate) = 48120
+SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0
+SIZE (rust/crates/memchr-2.7.5.crate) = 97603
+SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
+SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
+SHA256 (rust/crates/miniz_oxide-0.8.9.crate) = 1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316
+SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132
+SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c
+SIZE (rust/crates/mio-1.0.4.crate) = 104212
+SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
+SIZE (rust/crates/nom-7.1.3.crate) = 117570
SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841
SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
-SHA256 (rust/crates/objc-sys-0.3.5.crate) = cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310
-SIZE (rust/crates/objc-sys-0.3.5.crate) = 20560
-SHA256 (rust/crates/objc2-0.5.2.crate) = 46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804
-SIZE (rust/crates/objc2-0.5.2.crate) = 199204
-SHA256 (rust/crates/objc2-app-kit-0.2.2.crate) = e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff
-SIZE (rust/crates/objc2-app-kit-0.2.2.crate) = 337435
-SHA256 (rust/crates/objc2-core-data-0.2.2.crate) = 617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef
-SIZE (rust/crates/objc2-core-data-0.2.2.crate) = 30575
-SHA256 (rust/crates/objc2-core-image-0.2.2.crate) = 55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80
-SIZE (rust/crates/objc2-core-image-0.2.2.crate) = 20050
-SHA256 (rust/crates/objc2-encode-4.0.3.crate) = 7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8
-SIZE (rust/crates/objc2-encode-4.0.3.crate) = 19478
-SHA256 (rust/crates/objc2-foundation-0.2.2.crate) = 0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8
-SIZE (rust/crates/objc2-foundation-0.2.2.crate) = 249330
-SHA256 (rust/crates/objc2-metal-0.2.2.crate) = dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6
-SIZE (rust/crates/objc2-metal-0.2.2.crate) = 75276
-SHA256 (rust/crates/objc2-quartz-core-0.2.2.crate) = e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a
-SIZE (rust/crates/objc2-quartz-core-0.2.2.crate) = 21306
+SHA256 (rust/crates/objc2-0.6.1.crate) = 88c6597e14493ab2e44ce58f2fdecf095a51f12ca57bec060a11c57332520551
+SIZE (rust/crates/objc2-0.6.1.crate) = 270980
+SHA256 (rust/crates/objc2-app-kit-0.3.1.crate) = e6f29f568bec459b0ddff777cec4fe3fd8666d82d5a40ebd0ff7e66134f89bcc
+SIZE (rust/crates/objc2-app-kit-0.3.1.crate) = 495884
+SHA256 (rust/crates/objc2-core-foundation-0.3.1.crate) = 1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166
+SIZE (rust/crates/objc2-core-foundation-0.3.1.crate) = 178121
+SHA256 (rust/crates/objc2-core-graphics-0.3.1.crate) = 989c6c68c13021b5c2d6b71456ebb0f9dc78d752e86a98da7c716f4f9470f5a4
+SIZE (rust/crates/objc2-core-graphics-0.3.1.crate) = 72294
+SHA256 (rust/crates/objc2-encode-4.1.0.crate) = ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33
+SIZE (rust/crates/objc2-encode-4.1.0.crate) = 21004
+SHA256 (rust/crates/objc2-foundation-0.3.1.crate) = 900831247d2fe1a09a683278e5384cfb8c80c79fe6b166f9d14bfdde0ea1b03c
+SIZE (rust/crates/objc2-foundation-0.3.1.crate) = 324572
+SHA256 (rust/crates/objc2-io-surface-0.3.1.crate) = 7282e9ac92529fa3457ce90ebb15f4ecbc383e8338060960760fa2cf75420c3c
+SIZE (rust/crates/objc2-io-surface-0.3.1.crate) = 11724
SHA256 (rust/crates/object-0.36.7.crate) = 62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87
SIZE (rust/crates/object-0.36.7.crate) = 329938
-SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92
-SIZE (rust/crates/once_cell-1.19.0.crate) = 33046
+SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
+SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/once_cell_polyfill-1.70.1.crate) = a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad
+SIZE (rust/crates/once_cell_polyfill-1.70.1.crate) = 7510
SHA256 (rust/crates/option-ext-0.2.0.crate) = 04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d
SIZE (rust/crates/option-ext-0.2.0.crate) = 7345
-SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f
-SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967
-SHA256 (rust/crates/parking_lot_core-0.9.9.crate) = 4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e
-SIZE (rust/crates/parking_lot_core-0.9.9.crate) = 32445
-SHA256 (rust/crates/pin-project-lite-0.2.15.crate) = 915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff
-SIZE (rust/crates/pin-project-lite-0.2.15.crate) = 29683
+SHA256 (rust/crates/os_pipe-1.2.2.crate) = db335f4760b14ead6290116f2427bf33a14d4f0617d49f78a246de10c1831224
+SIZE (rust/crates/os_pipe-1.2.2.crate) = 10810
+SHA256 (rust/crates/parking_lot-0.12.4.crate) = 70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13
+SIZE (rust/crates/parking_lot-0.12.4.crate) = 46779
+SHA256 (rust/crates/parking_lot_core-0.9.11.crate) = bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5
+SIZE (rust/crates/parking_lot_core-0.9.11.crate) = 34773
+SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e
+SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235
+SHA256 (rust/crates/petgraph-0.6.5.crate) = b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db
+SIZE (rust/crates/petgraph-0.6.5.crate) = 710970
+SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b
+SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504
SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
-SHA256 (rust/crates/png-0.17.13.crate) = 06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1
-SIZE (rust/crates/png-0.17.13.crate) = 103176
-SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
-SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
-SHA256 (rust/crates/proc-macro2-1.0.92.crate) = 37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0
-SIZE (rust/crates/proc-macro2-1.0.92.crate) = 52353
-SHA256 (rust/crates/promkit-core-0.1.0.crate) = afdf9ca2b84218bffc62938a4755eb2c84c3015ed1eb98f2a4833701c9301a52
-SIZE (rust/crates/promkit-core-0.1.0.crate) = 10159
-SHA256 (rust/crates/promkit-widgets-0.1.0.crate) = 528fb688a78893954d5b37e9b98ab98b669f9ec997ce6dc285e850b92e4ad257
-SIZE (rust/crates/promkit-widgets-0.1.0.crate) = 27237
+SHA256 (rust/crates/pkg-config-0.3.32.crate) = 7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c
+SIZE (rust/crates/pkg-config-0.3.32.crate) = 21370
+SHA256 (rust/crates/png-0.17.16.crate) = 82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526
+SIZE (rust/crates/png-0.17.16.crate) = 117975
+SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
+SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
+SHA256 (rust/crates/promkit-core-0.2.0.crate) = ed89f85398b2590095afe8fb4852c177d09f568836c206a9bed823bf1e70a051
+SIZE (rust/crates/promkit-core-0.2.0.crate) = 12518
+SHA256 (rust/crates/promkit-widgets-0.2.0.crate) = f7ef81079760b198d5dde773c78b94a72edc2ebd057be386382c379e0d854fb6
+SIZE (rust/crates/promkit-widgets-0.2.0.crate) = 29974
+SHA256 (rust/crates/quick-xml-0.37.5.crate) = 331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb
+SIZE (rust/crates/quick-xml-0.37.5.crate) = 190481
SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
SIZE (rust/crates/quote-1.0.40.crate) = 31063
+SHA256 (rust/crates/r-efi-5.3.0.crate) = 69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f
+SIZE (rust/crates/r-efi-5.3.0.crate) = 64532
SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
SIZE (rust/crates/rayon-1.10.0.crate) = 180155
SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
-SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa
-SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858
+SHA256 (rust/crates/redox_syscall-0.5.13.crate) = 0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6
+SIZE (rust/crates/redox_syscall-0.5.13.crate) = 29489
SHA256 (rust/crates/redox_users-0.5.0.crate) = dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b
SIZE (rust/crates/redox_users-0.5.0.crate) = 15586
-SHA256 (rust/crates/regex-1.10.4.crate) = c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c
-SIZE (rust/crates/regex-1.10.4.crate) = 253191
-SHA256 (rust/crates/regex-automata-0.4.6.crate) = 86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea
-SIZE (rust/crates/regex-automata-0.4.6.crate) = 617565
-SHA256 (rust/crates/regex-syntax-0.8.3.crate) = adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56
-SIZE (rust/crates/regex-syntax-0.8.3.crate) = 347497
-SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f
-SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047
-SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f
-SIZE (rust/crates/rustix-0.38.34.crate) = 365160
-SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1
-SIZE (rust/crates/ryu-1.0.17.crate) = 47537
+SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191
+SIZE (rust/crates/regex-1.11.1.crate) = 254170
+SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908
+SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525
+SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
+SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
+SHA256 (rust/crates/rustc-demangle-0.1.25.crate) = 989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f
+SIZE (rust/crates/rustc-demangle-0.1.25.crate) = 29590
+SHA256 (rust/crates/rustix-0.38.44.crate) = fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154
+SIZE (rust/crates/rustix-0.38.44.crate) = 379347
+SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
+SIZE (rust/crates/rustix-1.0.8.crate) = 416688
+SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
+SIZE (rust/crates/ryu-1.0.20.crate) = 48738
SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
@@ -275,125 +295,163 @@ SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21
SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
SHA256 (rust/crates/serde_json-1.0.140.crate) = 20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373
SIZE (rust/crates/serde_json-1.0.140.crate) = 154852
-SHA256 (rust/crates/serde_spanned-0.6.8.crate) = 87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1
-SIZE (rust/crates/serde_spanned-0.6.8.crate) = 9330
+SHA256 (rust/crates/serde_spanned-1.0.0.crate) = 40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83
+SIZE (rust/crates/serde_spanned-1.0.0.crate) = 10956
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
-SHA256 (rust/crates/signal-hook-0.3.17.crate) = 8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801
-SIZE (rust/crates/signal-hook-0.3.17.crate) = 50296
+SHA256 (rust/crates/signal-hook-0.3.18.crate) = d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2
+SIZE (rust/crates/signal-hook-0.3.18.crate) = 50862
SHA256 (rust/crates/signal-hook-mio-0.2.4.crate) = 34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd
SIZE (rust/crates/signal-hook-mio-0.2.4.crate) = 9314
-SHA256 (rust/crates/signal-hook-registry-1.4.2.crate) = a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1
-SIZE (rust/crates/signal-hook-registry-1.4.2.crate) = 18064
+SHA256 (rust/crates/signal-hook-registry-1.4.5.crate) = 9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410
+SIZE (rust/crates/signal-hook-registry-1.4.5.crate) = 19004
SHA256 (rust/crates/simd-adler32-0.3.7.crate) = d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe
SIZE (rust/crates/simd-adler32-0.3.7.crate) = 12086
-SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67
-SIZE (rust/crates/slab-0.4.9.crate) = 17108
-SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67
-SIZE (rust/crates/smallvec-1.13.2.crate) = 35216
-SHA256 (rust/crates/socket2-0.5.8.crate) = c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8
-SIZE (rust/crates/socket2-0.5.8.crate) = 56309
+SHA256 (rust/crates/slab-0.4.10.crate) = 04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d
+SIZE (rust/crates/slab-0.4.10.crate) = 17810
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
+SHA256 (rust/crates/socket2-0.5.10.crate) = e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678
+SIZE (rust/crates/socket2-0.5.10.crate) = 58169
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
-SHA256 (rust/crates/syn-2.0.95.crate) = 46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a
-SIZE (rust/crates/syn-2.0.95.crate) = 297136
-SHA256 (rust/crates/thiserror-1.0.64.crate) = d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84
-SIZE (rust/crates/thiserror-1.0.64.crate) = 21574
+SHA256 (rust/crates/syn-2.0.104.crate) = 17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40
+SIZE (rust/crates/syn-2.0.104.crate) = 299699
+SHA256 (rust/crates/tempfile-3.20.0.crate) = e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1
+SIZE (rust/crates/tempfile-3.20.0.crate) = 42306
+SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52
+SIZE (rust/crates/thiserror-1.0.69.crate) = 22198
SHA256 (rust/crates/thiserror-2.0.12.crate) = 567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708
SIZE (rust/crates/thiserror-2.0.12.crate) = 28693
-SHA256 (rust/crates/thiserror-impl-1.0.64.crate) = 08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3
-SIZE (rust/crates/thiserror-impl-1.0.64.crate) = 16073
+SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1
+SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365
SHA256 (rust/crates/thiserror-impl-2.0.12.crate) = 7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d
SIZE (rust/crates/thiserror-impl-2.0.12.crate) = 21141
SHA256 (rust/crates/tiff-0.9.1.crate) = ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e
SIZE (rust/crates/tiff-0.9.1.crate) = 1423953
-SHA256 (rust/crates/time-0.3.36.crate) = 5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885
-SIZE (rust/crates/time-0.3.36.crate) = 119805
-SHA256 (rust/crates/time-core-0.1.2.crate) = ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3
-SIZE (rust/crates/time-core-0.1.2.crate) = 7191
-SHA256 (rust/crates/time-macros-0.2.18.crate) = 3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf
-SIZE (rust/crates/time-macros-0.2.18.crate) = 24361
-SHA256 (rust/crates/tokio-1.44.1.crate) = f382da615b842244d4b8738c82ed1275e6c5dd90c459a30941cd07080b06c91a
-SIZE (rust/crates/tokio-1.44.1.crate) = 830115
+SHA256 (rust/crates/tokio-1.46.1.crate) = 0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17
+SIZE (rust/crates/tokio-1.46.1.crate) = 823632
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047
SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477
-SHA256 (rust/crates/toml-0.8.20.crate) = cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148
-SIZE (rust/crates/toml-0.8.20.crate) = 51095
-SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41
-SIZE (rust/crates/toml_datetime-0.6.8.crate) = 12028
-SHA256 (rust/crates/toml_edit-0.22.24.crate) = 17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474
-SIZE (rust/crates/toml_edit-0.22.24.crate) = 106399
-SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
-SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
-SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd
-SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
+SHA256 (rust/crates/toml-0.9.2.crate) = ed0aee96c12fa71097902e0bb061a5e1ebd766a6636bb605ba401c45c1650eac
+SIZE (rust/crates/toml-0.9.2.crate) = 56695
+SHA256 (rust/crates/toml_datetime-0.7.0.crate) = bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3
+SIZE (rust/crates/toml_datetime-0.7.0.crate) = 18108
+SHA256 (rust/crates/toml_parser-1.0.1.crate) = 97200572db069e74c512a14117b296ba0a80a30123fbbb5aa1f4a348f639ca30
+SIZE (rust/crates/toml_parser-1.0.1.crate) = 35063
+SHA256 (rust/crates/toml_writer-1.0.2.crate) = fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64
+SIZE (rust/crates/toml_writer-1.0.2.crate) = 16988
+SHA256 (rust/crates/tree_magic_mini-3.1.6.crate) = aac5e8971f245c3389a5a76e648bfc80803ae066a1243a75db0064d7c1129d63
+SIZE (rust/crates/tree_magic_mini-3.1.6.crate) = 14869
+SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
+SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
+SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
+SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323
+SHA256 (rust/crates/unicode-width-0.2.1.crate) = 4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c
+SIZE (rust/crates/unicode-width-0.2.1.crate) = 279344
SHA256 (rust/crates/urlencoding-2.1.3.crate) = daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da
SIZE (rust/crates/urlencoding-2.1.3.crate) = 6538
-SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
-SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435
-SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
-SIZE (rust/crates/version_check-0.9.4.crate) = 14895
-SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
-SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
-SHA256 (rust/crates/weezl-0.1.8.crate) = 53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082
-SIZE (rust/crates/weezl-0.1.8.crate) = 42175
+SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
+SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
+SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
+SIZE (rust/crates/version_check-0.9.5.crate) = 15554
+SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
+SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
+SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3
+SIZE (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 140921
+SHA256 (rust/crates/wayland-backend-0.3.10.crate) = fe770181423e5fc79d3e2a7f4410b7799d5aab1de4372853de3c6aa13ca24121
+SIZE (rust/crates/wayland-backend-0.3.10.crate) = 75632
+SHA256 (rust/crates/wayland-client-0.31.10.crate) = 978fa7c67b0847dbd6a9f350ca2569174974cd4082737054dbb7fbb79d7d9a61
+SIZE (rust/crates/wayland-client-0.31.10.crate) = 64777
+SHA256 (rust/crates/wayland-protocols-0.32.8.crate) = 779075454e1e9a521794fed15886323ea0feda3f8b0fc1390f5398141310422a
+SIZE (rust/crates/wayland-protocols-0.32.8.crate) = 210103
+SHA256 (rust/crates/wayland-protocols-wlr-0.3.8.crate) = 1cb6cdc73399c0e06504c437fe3cf886f25568dd5454473d565085b36d6a8bbf
+SIZE (rust/crates/wayland-protocols-wlr-0.3.8.crate) = 28616
+SHA256 (rust/crates/wayland-scanner-0.31.6.crate) = 896fdafd5d28145fce7958917d69f2fd44469b1d4e861cb5961bcbeebc6d1484
+SIZE (rust/crates/wayland-scanner-0.31.6.crate) = 36365
+SHA256 (rust/crates/wayland-sys-0.31.6.crate) = dbcebb399c77d5aa9fa5db874806ee7b4eba4e73650948e8f93963f128896615
+SIZE (rust/crates/wayland-sys-0.31.6.crate) = 10049
+SHA256 (rust/crates/weezl-0.1.10.crate) = a751b3277700db47d3e574514de2eced5e54dc8a5436a3bf7a0b248b2cee16f3
+SIZE (rust/crates/weezl-0.1.10.crate) = 46418
SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
-SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9
-SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884
SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
+SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479
SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c
SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
+SHA256 (rust/crates/windows-targets-0.53.2.crate) = c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef
+SIZE (rust/crates/windows-targets-0.53.2.crate) = 7046
SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8
SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492
SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764
+SIZE (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 782443
SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc
SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483
SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
+SHA256 (rust/crates/windows_aarch64_msvc-0.53.0.crate) = c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c
+SIZE (rust/crates/windows_aarch64_msvc-0.53.0.crate) = 834446
SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e
SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891
SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
+SHA256 (rust/crates/windows_i686_gnu-0.53.0.crate) = c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3
+SIZE (rust/crates/windows_i686_gnu-0.53.0.crate) = 936973
SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
+SHA256 (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11
+SIZE (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 854056
SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406
SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300
SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
+SHA256 (rust/crates/windows_i686_msvc-0.53.0.crate) = 581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d
+SIZE (rust/crates/windows_i686_msvc-0.53.0.crate) = 903450
SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e
SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619
SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
+SHA256 (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba
+SIZE (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 902585
SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc
SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486
SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57
+SIZE (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 782434
SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538
SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (rust/crates/winnow-0.7.4.crate) = 0e97b544156e9bebe1a0ffbc03484fc1ffe3100cbce3ffb17eac35f7cdd7ab36
-SIZE (rust/crates/winnow-0.7.4.crate) = 173588
+SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486
+SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400
+SHA256 (rust/crates/winnow-0.7.12.crate) = f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95
+SIZE (rust/crates/winnow-0.7.12.crate) = 174403
+SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1
+SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241
+SHA256 (rust/crates/wl-clipboard-rs-0.9.2.crate) = 8e5ff8d0e60065f549fafd9d6cb626203ea64a798186c80d8e7df4f8af56baeb
+SIZE (rust/crates/wl-clipboard-rs-0.9.2.crate) = 39007
SHA256 (rust/crates/x11rb-0.13.1.crate) = 5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12
SIZE (rust/crates/x11rb-0.13.1.crate) = 223916
SHA256 (rust/crates/x11rb-protocol-0.13.1.crate) = ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d
SIZE (rust/crates/x11rb-protocol-0.13.1.crate) = 508522
-SHA256 (rust/crates/zerocopy-0.7.32.crate) = 74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be
-SIZE (rust/crates/zerocopy-0.7.32.crate) = 151096
-SHA256 (rust/crates/zerocopy-derive-0.7.32.crate) = 9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6
-SIZE (rust/crates/zerocopy-derive-0.7.32.crate) = 37623
-SHA256 (ynqa-jnv-v0.6.0_GH0.tar.gz) = 8220bf433728b57ddb174920a48c1750c5087b52154567074020b6800d6579d3
-SIZE (ynqa-jnv-v0.6.0_GH0.tar.gz) = 147727
+SHA256 (rust/crates/zerocopy-0.8.26.crate) = 1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f
+SIZE (rust/crates/zerocopy-0.8.26.crate) = 249223
+SHA256 (rust/crates/zerocopy-derive-0.8.26.crate) = 9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181
+SIZE (rust/crates/zerocopy-derive-0.8.26.crate) = 88080
+SHA256 (ynqa-jnv-v0.6.1_GH0.tar.gz) = 03223fb20a4c65c2610b94e6208b65098e6b3fe836d3deea75931a5c808f4869
+SIZE (ynqa-jnv-v0.6.1_GH0.tar.gz) = 149110
diff --git a/textproc/jq/Makefile b/textproc/jq/Makefile
index a5b3d97f3784..da09e17454ca 100644
--- a/textproc/jq/Makefile
+++ b/textproc/jq/Makefile
@@ -1,5 +1,5 @@
PORTNAME= jq
-DISTVERSION= 1.8.0
+DISTVERSION= 1.8.1
CATEGORIES= textproc
MASTER_SITES= https://github.com/jqlang/${PORTNAME}/releases/download/${PORTNAME}-${DISTVERSION}/
diff --git a/textproc/jq/distinfo b/textproc/jq/distinfo
index a9062ef6cad9..c129c5658ac0 100644
--- a/textproc/jq/distinfo
+++ b/textproc/jq/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1748825344
-SHA256 (jq-1.8.0.tar.gz) = 91811577f91d9a6195ff50c2bffec9b72c8429dc05ec3ea022fd95c06d2b319c
-SIZE (jq-1.8.0.tar.gz) = 1908285
+TIMESTAMP = 1753122427
+SHA256 (jq-1.8.1.tar.gz) = 2be64e7129cecb11d5906290eba10af694fb9e3e7f9fc208a311dc33ca837eb0
+SIZE (jq-1.8.1.tar.gz) = 2026798
diff --git a/textproc/jql/Makefile b/textproc/jql/Makefile
index 24c383103fbb..f563f7be84e0 100644
--- a/textproc/jql/Makefile
+++ b/textproc/jql/Makefile
@@ -1,7 +1,6 @@
PORTNAME= jql
DISTVERSIONPREFIX= jql-v
-DISTVERSION= 8.0.6
-PORTREVISION= 2
+DISTVERSION= 8.0.7
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
@@ -36,13 +35,13 @@ CARGO_CRATES= addr2line-0.24.2 \
ciborium-0.2.2 \
ciborium-io-0.2.2 \
ciborium-ll-0.2.2 \
- clap-4.5.37 \
- clap_builder-4.5.37 \
- clap_derive-4.5.32 \
+ clap-4.5.40 \
+ clap_builder-4.5.40 \
+ clap_derive-4.5.40 \
clap_lex-0.7.4 \
colorchoice-1.0.3 \
colored_json-5.0.0 \
- criterion-0.5.1 \
+ criterion-0.6.0 \
criterion-plot-0.5.0 \
crossbeam-deque-0.8.5 \
crossbeam-epoch-0.9.18 \
@@ -54,11 +53,10 @@ CARGO_CRATES= addr2line-0.24.2 \
half-2.4.1 \
hashbrown-0.15.2 \
heck-0.5.0 \
- hermit-abi-0.4.0 \
indexmap-2.9.0 \
- is-terminal-0.4.13 \
is_terminal_polyfill-1.70.1 \
itertools-0.10.5 \
+ itertools-0.13.0 \
itoa-1.0.14 \
js-sys-0.3.74 \
libc-0.2.167 \
@@ -95,7 +93,7 @@ CARGO_CRATES= addr2line-0.24.2 \
thiserror-2.0.12 \
thiserror-impl-2.0.12 \
tinytemplate-1.2.1 \
- tokio-1.44.2 \
+ tokio-1.45.1 \
tokio-macros-2.5.0 \
unicode-ident-1.0.14 \
utf8parse-0.2.2 \
@@ -107,7 +105,6 @@ CARGO_CRATES= addr2line-0.24.2 \
wasm-bindgen-shared-0.2.97 \
web-sys-0.3.74 \
winapi-util-0.1.9 \
- windows-sys-0.52.0 \
windows-sys-0.59.0 \
windows-targets-0.52.6 \
windows_aarch64_gnullvm-0.52.6 \
@@ -118,7 +115,7 @@ CARGO_CRATES= addr2line-0.24.2 \
windows_x86_64_gnu-0.52.6 \
windows_x86_64_gnullvm-0.52.6 \
windows_x86_64_msvc-0.52.6 \
- winnow-0.7.8 \
+ winnow-0.7.11 \
yansi-1.0.1
PLIST_FILES= bin/${PORTNAME}
diff --git a/textproc/jql/distinfo b/textproc/jql/distinfo
index 85b2c12c1f7c..4a28d4c94810 100644
--- a/textproc/jql/distinfo
+++ b/textproc/jql/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1746348989
+TIMESTAMP = 1753124573
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
@@ -39,20 +39,20 @@ SHA256 (rust/crates/ciborium-io-0.2.2.crate) = 05afea1e0a06c9be33d539b876f1ce369
SIZE (rust/crates/ciborium-io-0.2.2.crate) = 6697
SHA256 (rust/crates/ciborium-ll-0.2.2.crate) = 57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9
SIZE (rust/crates/ciborium-ll-0.2.2.crate) = 14695
-SHA256 (rust/crates/clap-4.5.37.crate) = eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071
-SIZE (rust/crates/clap-4.5.37.crate) = 56962
-SHA256 (rust/crates/clap_builder-4.5.37.crate) = efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2
-SIZE (rust/crates/clap_builder-4.5.37.crate) = 168761
-SHA256 (rust/crates/clap_derive-4.5.32.crate) = 09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7
-SIZE (rust/crates/clap_derive-4.5.32.crate) = 33441
+SHA256 (rust/crates/clap-4.5.40.crate) = 40b6887a1d8685cebccf115538db5c0efe625ccac9696ad45c409d96566e910f
+SIZE (rust/crates/clap-4.5.40.crate) = 57419
+SHA256 (rust/crates/clap_builder-4.5.40.crate) = e0c66c08ce9f0c698cbce5c0279d0bb6ac936d8674174fe48f736533b964f59e
+SIZE (rust/crates/clap_builder-4.5.40.crate) = 169191
+SHA256 (rust/crates/clap_derive-4.5.40.crate) = d2c7947ae4cc3d851207c1adb5b5e260ff0cca11446b1d6d1423788e442257ce
+SIZE (rust/crates/clap_derive-4.5.40.crate) = 33470
SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
SHA256 (rust/crates/colored_json-5.0.0.crate) = e35980a1b846f8e3e359fd18099172a0857140ba9230affc4f71348081e039b6
SIZE (rust/crates/colored_json-5.0.0.crate) = 12318
-SHA256 (rust/crates/criterion-0.5.1.crate) = f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f
-SIZE (rust/crates/criterion-0.5.1.crate) = 110088
+SHA256 (rust/crates/criterion-0.6.0.crate) = 3bf7af66b0989381bd0be551bd7cc91912a655a58c6918420c9527b1fd8b4679
+SIZE (rust/crates/criterion-0.6.0.crate) = 119470
SHA256 (rust/crates/criterion-plot-0.5.0.crate) = 6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1
SIZE (rust/crates/criterion-plot-0.5.0.crate) = 22706
SHA256 (rust/crates/crossbeam-deque-0.8.5.crate) = 613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d
@@ -75,16 +75,14 @@ SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3f
SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/hermit-abi-0.4.0.crate) = fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc
-SIZE (rust/crates/hermit-abi-0.4.0.crate) = 16310
SHA256 (rust/crates/indexmap-2.9.0.crate) = cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e
SIZE (rust/crates/indexmap-2.9.0.crate) = 91214
-SHA256 (rust/crates/is-terminal-0.4.13.crate) = 261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b
-SIZE (rust/crates/is-terminal-0.4.13.crate) = 7665
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
SIZE (rust/crates/itertools-0.10.5.crate) = 115354
+SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
+SIZE (rust/crates/itertools-0.13.0.crate) = 146261
SHA256 (rust/crates/itoa-1.0.14.crate) = d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674
SIZE (rust/crates/itoa-1.0.14.crate) = 11210
SHA256 (rust/crates/js-sys-0.3.74.crate) = a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705
@@ -157,8 +155,8 @@ SHA256 (rust/crates/thiserror-impl-2.0.12.crate) = 7f7cf42b4507d8ea322120659672c
SIZE (rust/crates/thiserror-impl-2.0.12.crate) = 21141
SHA256 (rust/crates/tinytemplate-1.2.1.crate) = be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc
SIZE (rust/crates/tinytemplate-1.2.1.crate) = 26490
-SHA256 (rust/crates/tokio-1.44.2.crate) = e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48
-SIZE (rust/crates/tokio-1.44.2.crate) = 841618
+SHA256 (rust/crates/tokio-1.45.1.crate) = 75ef51a33ef1da925cea3e4eb122833cb377c61439ca401b770f54902b806779
+SIZE (rust/crates/tokio-1.45.1.crate) = 811787
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
SHA256 (rust/crates/unicode-ident-1.0.14.crate) = adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83
@@ -181,8 +179,6 @@ SHA256 (rust/crates/web-sys-0.3.74.crate) = a98bc3c33f0fe7e59ad7cd041b89034fa82a
SIZE (rust/crates/web-sys-0.3.74.crate) = 635737
SHA256 (rust/crates/winapi-util-0.1.9.crate) = cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb
SIZE (rust/crates/winapi-util-0.1.9.crate) = 12464
-SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
-SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
@@ -203,9 +199,9 @@ SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (rust/crates/winnow-0.7.8.crate) = 9e27d6ad3dac991091e4d35de9ba2d2d00647c5d0fc26c5496dee55984ae111b
-SIZE (rust/crates/winnow-0.7.8.crate) = 174444
+SHA256 (rust/crates/winnow-0.7.11.crate) = 74c7b26e3480b707944fc872477815d29a8e429d2f93a1ce000f5fa84a15cbcd
+SIZE (rust/crates/winnow-0.7.11.crate) = 174175
SHA256 (rust/crates/yansi-1.0.1.crate) = cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049
SIZE (rust/crates/yansi-1.0.1.crate) = 75497
-SHA256 (yamafaktory-jql-jql-v8.0.6_GH0.tar.gz) = 8af2f6c794cffeba9bc2604cf68cd7ddaa6126ec038786060b463474e8a88b5b
-SIZE (yamafaktory-jql-jql-v8.0.6_GH0.tar.gz) = 447699
+SHA256 (yamafaktory-jql-jql-v8.0.7_GH0.tar.gz) = 05448d17d1036373633e0d6a4556481ccc3b309832bdc9363d4c6f5d9d4311a4
+SIZE (yamafaktory-jql-jql-v8.0.7_GH0.tar.gz) = 447569
diff --git a/textproc/py-citeproc-py/Makefile b/textproc/py-citeproc-py/Makefile
index 3a7c5da64f28..c3b81e86a7c3 100644
--- a/textproc/py-citeproc-py/Makefile
+++ b/textproc/py-citeproc-py/Makefile
@@ -1,6 +1,6 @@
PORTNAME= citeproc-py
DISTVERSION= 0.6.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}rnc2rng>=2.6.1:textproc/py-rnc2rng@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= distutils concurrent autoplist
diff --git a/textproc/py-cyclonedx-python-lib/Makefile b/textproc/py-cyclonedx-python-lib/Makefile
index 3a6b59810eac..80e12522cc1b 100644
--- a/textproc/py-cyclonedx-python-lib/Makefile
+++ b/textproc/py-cyclonedx-python-lib/Makefile
@@ -1,5 +1,6 @@
PORTNAME= cyclonedx-python-lib
PORTVERSION= 10.4.1
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI \
https://github.com/CycloneDX/cyclonedx-python-lib/releases/download/v${PORTVERSION}/
@@ -32,9 +33,9 @@ XML_VALIDATION_DESC= XML validation
JSON_VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.18<5:devel/py-jsonschema@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}referencing>=0.28.4:devel/py-referencing@${PY_FLAVOR}
VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.18<5:devel/py-jsonschema@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4<7:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4<7:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}referencing>=0.28.4:devel/py-referencing@${PY_FLAVOR}
-XML_VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4<7:devel/py-lxml@${PY_FLAVOR}
+XML_VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4<7:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.pre.mk>
diff --git a/textproc/py-docxcompose/Makefile b/textproc/py-docxcompose/Makefile
index a8698748953b..0388f780ba55 100644
--- a/textproc/py-docxcompose/Makefile
+++ b/textproc/py-docxcompose/Makefile
@@ -1,6 +1,6 @@
PORTNAME= docxcompose
PORTVERSION= 1.4.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://github.com/4teamwork/docxcompose
LICENSE= MIT
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-docx>0:textproc/py-python-docx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR}
diff --git a/textproc/py-docxtpl/Makefile b/textproc/py-docxtpl/Makefile
index d53b217c57f9..3b6feb714b19 100644
--- a/textproc/py-docxtpl/Makefile
+++ b/textproc/py-docxtpl/Makefile
@@ -1,5 +1,6 @@
PORTNAME= docxtpl
PORTVERSION= 0.20.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -10,7 +11,7 @@ WWW= https://github.com/elapouya/python-docx-template
LICENSE= LGPL21
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-docx>0:textproc/py-python-docx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}docxcompose>0:textproc/py-docxcompose@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR}
diff --git a/textproc/py-elementpath/Makefile b/textproc/py-elementpath/Makefile
index ca6021b283c2..72ebc583a741 100644
--- a/textproc/py-elementpath/Makefile
+++ b/textproc/py-elementpath/Makefile
@@ -1,5 +1,6 @@
PORTNAME= elementpath
DISTVERSION= 4.8.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +12,7 @@ WWW= https://github.com/sissaschool/elementpath
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}xmlschema>=2.0.0:textproc/py-xmlschema@${PY_FLAVOR}
USES= python
diff --git a/textproc/py-markups/Makefile b/textproc/py-markups/Makefile
index 9c253d6f94fc..807de39378f5 100644
--- a/textproc/py-markups/Makefile
+++ b/textproc/py-markups/Makefile
@@ -1,6 +1,6 @@
PORTNAME= markups
PORTVERSION= 4.0.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-markdown-math>=0:textproc/py-python-markdown-math@${PY_FLAVOR}
TEST_DEPENDS= asciidoc>=0:textproc/asciidoc \
${PYTHON_PKGNAMEPREFIX}docutils>=0,1:textproc/py-docutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown>=3:textproc/py-markdown@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pymdown-extensions>=0:textproc/py-pymdown-extensions@${PY_FLAVOR} \
diff --git a/textproc/py-ocrmypdf/Makefile b/textproc/py-ocrmypdf/Makefile
index be3d1bf2f4b8..faba4fd54e22 100644
--- a/textproc/py-ocrmypdf/Makefile
+++ b/textproc/py-ocrmypdf/Makefile
@@ -1,5 +1,5 @@
PORTNAME= ocrmypdf
-DISTVERSION= 16.10.1
+DISTVERSION= 16.10.4
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-ocrmypdf/distinfo b/textproc/py-ocrmypdf/distinfo
index a83e1f16151f..ff8097787e66 100644
--- a/textproc/py-ocrmypdf/distinfo
+++ b/textproc/py-ocrmypdf/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747387056
-SHA256 (ocrmypdf-16.10.1.tar.gz) = 9f32059fc97e25931aaa0a8a4027b8c9faca7d9e1183089f32e0cba5631449f1
-SIZE (ocrmypdf-16.10.1.tar.gz) = 6819366
+TIMESTAMP = 1753074854
+SHA256 (ocrmypdf-16.10.4.tar.gz) = de749ef5f554b63d57e68d032e7cba5500cbd5030835bf24f658f7b7a04f3dc1
+SIZE (ocrmypdf-16.10.4.tar.gz) = 7003649
diff --git a/textproc/py-parsel/Makefile b/textproc/py-parsel/Makefile
index 5779a769d867..04e4adb48cef 100644
--- a/textproc/py-parsel/Makefile
+++ b/textproc/py-parsel/Makefile
@@ -1,5 +1,6 @@
PORTNAME= parsel
PORTVERSION= 1.10.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +14,7 @@ LICENSE= BSD3CLAUSE
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=1.2.0:www/py-cssselect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=2.3:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=2.3:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}w3lib>=1.19.0:www/py-w3lib@${PY_FLAVOR}
diff --git a/textproc/py-petl/Makefile b/textproc/py-petl/Makefile
index 8dbf2846432a..2292dfaea49c 100644
--- a/textproc/py-petl/Makefile
+++ b/textproc/py-petl/Makefile
@@ -1,5 +1,6 @@
PORTNAME= petl
PORTVERSION= 1.7.17
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -53,7 +54,7 @@ SMB_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}smbprotocol>=1.0.1:net/py-smbprotocol@${
XLS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}xlrd>=2.0.1:textproc/py-xlrd@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xlwt>=1.3.0:textproc/py-xlwt@${PY_FLAVOR}
XLSX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}openpyxl>=2.6.2:textproc/py-openpyxl@${PY_FLAVOR}
-XPATH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.4.0:devel/py-lxml@${PY_FLAVOR}
+XPATH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.4.0:devel/py-lxml5@${PY_FLAVOR}
WHOOSH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}whoosh>=0:textproc/py-whoosh@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/textproc/py-pikepdf/Makefile b/textproc/py-pikepdf/Makefile
index 3887307b1fd0..560df16a06fc 100644
--- a/textproc/py-pikepdf/Makefile
+++ b/textproc/py-pikepdf/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pikepdf
DISTVERSION= 9.9.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +17,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
${PYTHON_PKGNAMEPREFIX}wheel>=0.37:devel/py-wheel@${PY_FLAVOR}
LIB_DEPENDS= libqpdf.so:print/qpdf
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}deprecated>0:devel/py-deprecated@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.8:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.8:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=10.0.1:graphics/py-pillow@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=20.2.0:devel/py-attrs@${PY_FLAVOR} \
diff --git a/textproc/py-pyexcel-ezodf/Makefile b/textproc/py-pyexcel-ezodf/Makefile
index 41ce7df9fdef..fa86d6b6712b 100644
--- a/textproc/py-pyexcel-ezodf/Makefile
+++ b/textproc/py-pyexcel-ezodf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyexcel-ezodf
PORTVERSION= 0.3.4
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/py-pyexcel-ods3/Makefile b/textproc/py-pyexcel-ods3/Makefile
index 4672f4ddd74e..7d06f873dd61 100644
--- a/textproc/py-pyexcel-ods3/Makefile
+++ b/textproc/py-pyexcel-ods3/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyexcel-ods3
PORTVERSION= 0.6.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyexcel-ezodf>=0.3.3:textproc/py-pyexcel-ezodf@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyexcel-io>=0.6.2:textproc/py-pyexcel-io@${PY_FLAVOR}
diff --git a/textproc/py-python-docx/Makefile b/textproc/py-python-docx/Makefile
index ceeb4b582cc1..baf2ce9f3789 100644
--- a/textproc/py-python-docx/Makefile
+++ b/textproc/py-python-docx/Makefile
@@ -1,5 +1,6 @@
PORTNAME= python-docx
PORTVERSION= 1.1.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +13,7 @@ LICENSE= MIT
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0.0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR}
# Python3 ready
USES= python
diff --git a/textproc/py-python-pptx/Makefile b/textproc/py-python-pptx/Makefile
index e12dd5f3d8a2..840004805027 100644
--- a/textproc/py-python-pptx/Makefile
+++ b/textproc/py-python-pptx/Makefile
@@ -1,5 +1,6 @@
PORTNAME= python-pptx
DISTVERSION= 1.0.2
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.1.0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.1.0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=3.3.2:graphics/py-pillow@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}XlsxWriter>=0.5.7:textproc/py-xlsxwriter@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}behave>0:devel/py-behave@${PY_FLAVOR} \
diff --git a/textproc/py-sphinx-tabs/Makefile b/textproc/py-sphinx-tabs/Makefile
index ad7150ccb34c..e1c05e150d5a 100644
--- a/textproc/py-sphinx-tabs/Makefile
+++ b/textproc/py-sphinx-tabs/Makefile
@@ -1,5 +1,6 @@
PORTNAME= sphinx-tabs
PORTVERSION= 3.4.7
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}docutils>=0,1:textproc/py-docutils@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx>=1.8,1:textproc/py-sphinx@${PY_FLAVOR}
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/py-toronado/Makefile b/textproc/py-toronado/Makefile
index 25de1b1fc26b..86913adce597 100644
--- a/textproc/py-toronado/Makefile
+++ b/textproc/py-toronado/Makefile
@@ -1,6 +1,6 @@
PORTNAME= toronado
PORTVERSION= 0.1.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= APACHE20
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssutils>=0:www/py-cssutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent distutils
diff --git a/textproc/py-xmldiff/Makefile b/textproc/py-xmldiff/Makefile
index 801445017bed..8939e60c1078 100644
--- a/textproc/py-xmldiff/Makefile
+++ b/textproc/py-xmldiff/Makefile
@@ -1,5 +1,6 @@
PORTNAME= xmldiff
PORTVERSION= 2.7.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.1.0:devel/py-lxml@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.1.0:devel/py-lxml5@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/riffdiff/Makefile b/textproc/riffdiff/Makefile
index f0c1169b2738..df4818f40824 100644
--- a/textproc/riffdiff/Makefile
+++ b/textproc/riffdiff/Makefile
@@ -1,6 +1,5 @@
PORTNAME= riffdiff
-DISTVERSION= 3.3.10
-PORTREVISION= 2
+DISTVERSION= 3.4.0
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
@@ -40,21 +39,32 @@ CARGO_CRATES= addr2line-0.14.0 \
colorchoice-1.0.0 \
ctor-0.1.16 \
difference-2.0.0 \
+ displaydoc-0.2.5 \
either-1.6.1 \
errno-0.3.5 \
fastrand-1.9.0 \
+ form_urlencoded-1.2.1 \
gimli-0.23.0 \
git-version-0.3.4 \
git-version-macro-0.3.4 \
heck-0.5.0 \
hermit-abi-0.1.19 \
+ icu_collections-2.0.0 \
+ icu_locale_core-2.0.0 \
+ icu_normalizer-2.0.0 \
+ icu_normalizer_data-2.0.0 \
+ icu_properties-2.0.1 \
+ icu_properties_data-2.0.1 \
+ icu_provider-2.0.0 \
+ idna-1.0.3 \
+ idna_adapter-1.2.1 \
instant-0.1.12 \
io-lifetimes-1.0.6 \
is_terminal_polyfill-1.70.1 \
itertools-0.10.1 \
- lazy_static-1.4.0 \
libc-0.2.140 \
linux-raw-sys-0.1.4 \
+ litemap-0.8.0 \
log-0.4.21 \
memchr-2.5.0 \
miniz_oxide-0.4.3 \
@@ -62,6 +72,8 @@ CARGO_CRATES= addr2line-0.14.0 \
object-0.22.0 \
once_cell-1.20.2 \
output_vt100-0.1.2 \
+ percent-encoding-2.3.1 \
+ potential_utf-0.1.2 \
pretty_assertions-0.6.1 \
proc-macro-hack-0.5.19 \
proc-macro2-1.0.93 \
@@ -72,14 +84,22 @@ CARGO_CRATES= addr2line-0.14.0 \
rustc-demangle-0.1.18 \
rustix-0.36.16 \
rustversion-1.0.18 \
+ serde-1.0.193 \
+ serde_derive-1.0.193 \
similar-2.6.0 \
+ smallvec-1.15.1 \
+ stable_deref_trait-1.2.0 \
strsim-0.11.1 \
syn-1.0.48 \
syn-2.0.30 \
+ synstructure-0.13.2 \
tempfile-3.4.0 \
threadpool-1.8.1 \
+ tinystr-0.8.1 \
unicode-ident-1.0.11 \
unicode-xid-0.2.1 \
+ url-2.5.4 \
+ utf8_iter-1.0.4 \
utf8parse-0.2.1 \
winapi-0.3.9 \
winapi-i686-pc-windows-gnu-0.4.0 \
@@ -112,7 +132,15 @@ CARGO_CRATES= addr2line-0.14.0 \
windows_x86_64_gnullvm-0.52.6 \
windows_x86_64_msvc-0.42.1 \
windows_x86_64_msvc-0.48.5 \
- windows_x86_64_msvc-0.52.6
+ windows_x86_64_msvc-0.52.6 \
+ writeable-0.6.1 \
+ yoke-0.8.0 \
+ yoke-derive-0.8.0 \
+ zerofrom-0.1.6 \
+ zerofrom-derive-0.1.6 \
+ zerotrie-0.2.2 \
+ zerovec-0.11.2 \
+ zerovec-derive-0.11.1
PLIST_FILES= bin/riff
diff --git a/textproc/riffdiff/distinfo b/textproc/riffdiff/distinfo
index 6d2e5bc402b9..2ce1c355a6e3 100644
--- a/textproc/riffdiff/distinfo
+++ b/textproc/riffdiff/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1748368803
+TIMESTAMP = 1753124376
SHA256 (rust/crates/addr2line-0.14.0.crate) = 7c0929d69e78dd9bf5408269919fcbcaeb2e35e5d43e5815517cdc6a8e11a423
SIZE (rust/crates/addr2line-0.14.0.crate) = 30065
SHA256 (rust/crates/adler-0.2.3.crate) = ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e
@@ -43,12 +43,16 @@ SHA256 (rust/crates/ctor-0.1.16.crate) = 7fbaabec2c953050352311293be5c6aba8e141b
SIZE (rust/crates/ctor-0.1.16.crate) = 4770
SHA256 (rust/crates/difference-2.0.0.crate) = 524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198
SIZE (rust/crates/difference-2.0.0.crate) = 147616
+SHA256 (rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0
+SIZE (rust/crates/displaydoc-0.2.5.crate) = 24219
SHA256 (rust/crates/either-1.6.1.crate) = e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457
SIZE (rust/crates/either-1.6.1.crate) = 13641
SHA256 (rust/crates/errno-0.3.5.crate) = ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860
SIZE (rust/crates/errno-0.3.5.crate) = 10576
SHA256 (rust/crates/fastrand-1.9.0.crate) = e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be
SIZE (rust/crates/fastrand-1.9.0.crate) = 11910
+SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456
+SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969
SHA256 (rust/crates/gimli-0.23.0.crate) = f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce
SIZE (rust/crates/gimli-0.23.0.crate) = 702175
SHA256 (rust/crates/git-version-0.3.4.crate) = 94918e83f1e01dedc2e361d00ce9487b14c58c7f40bab148026fa39d42cb41e2
@@ -59,6 +63,24 @@ SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d3
SIZE (rust/crates/heck-0.5.0.crate) = 11517
SHA256 (rust/crates/hermit-abi-0.1.19.crate) = 62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33
SIZE (rust/crates/hermit-abi-0.1.19.crate) = 9979
+SHA256 (rust/crates/icu_collections-2.0.0.crate) = 200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47
+SIZE (rust/crates/icu_collections-2.0.0.crate) = 83033
+SHA256 (rust/crates/icu_locale_core-2.0.0.crate) = 0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a
+SIZE (rust/crates/icu_locale_core-2.0.0.crate) = 74430
+SHA256 (rust/crates/icu_normalizer-2.0.0.crate) = 436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979
+SIZE (rust/crates/icu_normalizer-2.0.0.crate) = 61543
+SHA256 (rust/crates/icu_normalizer_data-2.0.0.crate) = 00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3
+SIZE (rust/crates/icu_normalizer_data-2.0.0.crate) = 68101
+SHA256 (rust/crates/icu_properties-2.0.1.crate) = 016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b
+SIZE (rust/crates/icu_properties-2.0.1.crate) = 58165
+SHA256 (rust/crates/icu_properties_data-2.0.1.crate) = 298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632
+SIZE (rust/crates/icu_properties_data-2.0.1.crate) = 159735
+SHA256 (rust/crates/icu_provider-2.0.0.crate) = 03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af
+SIZE (rust/crates/icu_provider-2.0.0.crate) = 50966
+SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e
+SIZE (rust/crates/idna-1.0.3.crate) = 142515
+SHA256 (rust/crates/idna_adapter-1.2.1.crate) = 3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344
+SIZE (rust/crates/idna_adapter-1.2.1.crate) = 10389
SHA256 (rust/crates/instant-0.1.12.crate) = 7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c
SIZE (rust/crates/instant-0.1.12.crate) = 6128
SHA256 (rust/crates/io-lifetimes-1.0.6.crate) = cfa919a82ea574332e2de6e74b4c36e74d41982b335080fa59d4ef31be20fdf3
@@ -67,12 +89,12 @@ SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
SHA256 (rust/crates/itertools-0.10.1.crate) = 69ddb889f9d0d08a67338271fa9b62996bc788c7796a5c18cf057420aaed5eaf
SIZE (rust/crates/itertools-0.10.1.crate) = 116219
-SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646
-SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
SHA256 (rust/crates/libc-0.2.140.crate) = 99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c
SIZE (rust/crates/libc-0.2.140.crate) = 669153
SHA256 (rust/crates/linux-raw-sys-0.1.4.crate) = f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4
SIZE (rust/crates/linux-raw-sys-0.1.4.crate) = 878981
+SHA256 (rust/crates/litemap-0.8.0.crate) = 241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956
+SIZE (rust/crates/litemap-0.8.0.crate) = 34344
SHA256 (rust/crates/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c
SIZE (rust/crates/log-0.4.21.crate) = 43442
SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d
@@ -87,6 +109,10 @@ SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f9
SIZE (rust/crates/once_cell-1.20.2.crate) = 33394
SHA256 (rust/crates/output_vt100-0.1.2.crate) = 53cdc5b785b7a58c5aad8216b3dfa114df64b0b06ae6e1501cef91df2fbdf8f9
SIZE (rust/crates/output_vt100-0.1.2.crate) = 4062
+SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e
+SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235
+SHA256 (rust/crates/potential_utf-0.1.2.crate) = e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585
+SIZE (rust/crates/potential_utf-0.1.2.crate) = 9613
SHA256 (rust/crates/pretty_assertions-0.6.1.crate) = 3f81e1644e1b54f5a68959a29aa86cde704219254669da328ecfdf6a1f09d427
SIZE (rust/crates/pretty_assertions-0.6.1.crate) = 61551
SHA256 (rust/crates/proc-macro-hack-0.5.19.crate) = dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5
@@ -107,22 +133,38 @@ SHA256 (rust/crates/rustix-0.36.16.crate) = 6da3636faa25820d8648e0e31c5d519bbb01
SIZE (rust/crates/rustix-0.36.16.crate) = 290950
SHA256 (rust/crates/rustversion-1.0.18.crate) = 0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248
SIZE (rust/crates/rustversion-1.0.18.crate) = 17794
+SHA256 (rust/crates/serde-1.0.193.crate) = 25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89
+SIZE (rust/crates/serde-1.0.193.crate) = 76863
+SHA256 (rust/crates/serde_derive-1.0.193.crate) = 43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3
+SIZE (rust/crates/serde_derive-1.0.193.crate) = 55692
SHA256 (rust/crates/similar-2.6.0.crate) = 1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e
SIZE (rust/crates/similar-2.6.0.crate) = 51659
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
+SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3
+SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
SHA256 (rust/crates/syn-1.0.48.crate) = cc371affeffc477f42a221a1e4297aedcea33d47d19b61455588bd9d8f6b19ac
SIZE (rust/crates/syn-1.0.48.crate) = 225747
SHA256 (rust/crates/syn-2.0.30.crate) = 0ddc1f908d32ec46858c2d3b3daa00cc35bf4b6841ce4355c7bb3eedf2283a68
SIZE (rust/crates/syn-2.0.30.crate) = 241864
+SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2
+SIZE (rust/crates/synstructure-0.13.2.crate) = 18950
SHA256 (rust/crates/tempfile-3.4.0.crate) = af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95
SIZE (rust/crates/tempfile-3.4.0.crate) = 30591
SHA256 (rust/crates/threadpool-1.8.1.crate) = d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa
SIZE (rust/crates/threadpool-1.8.1.crate) = 14408
+SHA256 (rust/crates/tinystr-0.8.1.crate) = 5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b
+SIZE (rust/crates/tinystr-0.8.1.crate) = 23333
SHA256 (rust/crates/unicode-ident-1.0.11.crate) = 301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c
SIZE (rust/crates/unicode-ident-1.0.11.crate) = 42067
SHA256 (rust/crates/unicode-xid-0.2.1.crate) = f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564
SIZE (rust/crates/unicode-xid-0.2.1.crate) = 14392
+SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60
+SIZE (rust/crates/url-2.5.4.crate) = 81097
+SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be
+SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437
SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435
SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
@@ -189,5 +231,21 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b738
SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (walles-riff-3.3.10_GH0.tar.gz) = 6db6ac7525f00c4a4cb45351b9a229e253b3e9053ab365d6f881c0144159f8da
-SIZE (walles-riff-3.3.10_GH0.tar.gz) = 2174200
+SHA256 (rust/crates/writeable-0.6.1.crate) = ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb
+SIZE (rust/crates/writeable-0.6.1.crate) = 24068
+SHA256 (rust/crates/yoke-0.8.0.crate) = 5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc
+SIZE (rust/crates/yoke-0.8.0.crate) = 28726
+SHA256 (rust/crates/yoke-derive-0.8.0.crate) = 38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6
+SIZE (rust/crates/yoke-derive-0.8.0.crate) = 7521
+SHA256 (rust/crates/zerofrom-0.1.6.crate) = 50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5
+SIZE (rust/crates/zerofrom-0.1.6.crate) = 5669
+SHA256 (rust/crates/zerofrom-derive-0.1.6.crate) = d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502
+SIZE (rust/crates/zerofrom-derive-0.1.6.crate) = 8305
+SHA256 (rust/crates/zerotrie-0.2.2.crate) = 36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595
+SIZE (rust/crates/zerotrie-0.2.2.crate) = 74423
+SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428
+SIZE (rust/crates/zerovec-0.11.2.crate) = 124500
+SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f
+SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294
+SHA256 (walles-riff-3.4.0_GH0.tar.gz) = ac1b973ab3dc0386f59c1b92bb509eab762d1524781c5e60e1208cfce70966e4
+SIZE (walles-riff-3.4.0_GH0.tar.gz) = 2074194
diff --git a/textproc/sigil/Makefile b/textproc/sigil/Makefile
index 24c0ecf6a87b..3c45abfc5fd7 100644
--- a/textproc/sigil/Makefile
+++ b/textproc/sigil/Makefile
@@ -1,5 +1,6 @@
PORTNAME= sigil
DISTVERSION= 2.5.2
+PORTREVISION= 1
CATEGORIES= textproc
MAINTAINER= jonc@chen.org.nz
@@ -12,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING.txt
LIB_DEPENDS= libpcre2-16.so:devel/pcre2 \
libhunspell-1.7.so:textproc/hunspell
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dulwich>=0.15.0:devel/py-dulwich@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
USES= cmake cpe desktop-file-utils gl localbase:ldflags \
minizip pkgconfig python qt:6 shebangfix
diff --git a/textproc/tokay/Makefile b/textproc/tokay/Makefile
index 7081e7df71c8..8fd47fa5f695 100644
--- a/textproc/tokay/Makefile
+++ b/textproc/tokay/Makefile
@@ -1,7 +1,6 @@
PORTNAME= tokay
DISTVERSIONPREFIX= v
-DISTVERSION= 0.6.8
-PORTREVISION= 2
+DISTVERSION= 0.6.9
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
diff --git a/textproc/tokay/distinfo b/textproc/tokay/distinfo
index e42d1310364c..daab61689000 100644
--- a/textproc/tokay/distinfo
+++ b/textproc/tokay/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1748373712
+TIMESTAMP = 1753124308
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
SHA256 (rust/crates/ansi_term-0.12.1.crate) = d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2
@@ -219,5 +219,5 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
SHA256 (rust/crates/yaml-rust-0.3.5.crate) = e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992
SIZE (rust/crates/yaml-rust-0.3.5.crate) = 42087
-SHA256 (tokay-lang-tokay-v0.6.8_GH0.tar.gz) = c1ec5ccc474eb22519010d383bb618912095604742c9ddd4a1bd3676c8e36f8d
-SIZE (tokay-lang-tokay-v0.6.8_GH0.tar.gz) = 150097
+SHA256 (tokay-lang-tokay-v0.6.9_GH0.tar.gz) = be326760548e98fa1c298789a183f2cccfcc5b3decbf75ee09ce967c0d983ec4
+SIZE (tokay-lang-tokay-v0.6.9_GH0.tar.gz) = 152608
diff --git a/textproc/vacuum/Makefile b/textproc/vacuum/Makefile
index 18c152a61cfb..758dedbe4a8a 100644
--- a/textproc/vacuum/Makefile
+++ b/textproc/vacuum/Makefile
@@ -1,18 +1,18 @@
PORTNAME= vacuum
DISTVERSIONPREFIX= v
-DISTVERSION= 0.13.2
-PORTREVISION= 2
+DISTVERSION= 0.17.6
CATEGORIES= textproc
PKGNAMESUFFIX= -lint-tool
MAINTAINER= yuri@FreeBSD.org
COMMENT= OpenAPI/Swagger linter and quality analysis tool
-WWW= https://quobix.com/vacuum/
+WWW= https://quobix.com/vacuum/ \
+ https://github.com/daveshanley/vacuum
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= go:1.21,modules
+USES= go:1.23,modules
GO_MODULE= github.com/daveshanley/vacuum
diff --git a/textproc/vacuum/distinfo b/textproc/vacuum/distinfo
index daeea83c793f..837a8c7ede5e 100644
--- a/textproc/vacuum/distinfo
+++ b/textproc/vacuum/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1727935155
-SHA256 (go/textproc_vacuum/vacuum-v0.13.2/v0.13.2.mod) = 4020df65cb24fd0dcf62db68fdc756e0dd00f0218ac55e8b3157b6fb58d91326
-SIZE (go/textproc_vacuum/vacuum-v0.13.2/v0.13.2.mod) = 3748
-SHA256 (go/textproc_vacuum/vacuum-v0.13.2/v0.13.2.zip) = 27517501a9c898c59750c579c714128560113d9140730279f0fb8601fc8826b1
-SIZE (go/textproc_vacuum/vacuum-v0.13.2/v0.13.2.zip) = 2847891
+TIMESTAMP = 1753123720
+SHA256 (go/textproc_vacuum/vacuum-v0.17.6/v0.17.6.mod) = b3bd4fb60a052f31fed91c1124f8bc179d0ef7c06cd0633d60f139c60d593866
+SIZE (go/textproc_vacuum/vacuum-v0.17.6/v0.17.6.mod) = 3634
+SHA256 (go/textproc_vacuum/vacuum-v0.17.6/v0.17.6.zip) = 7b77aee075c7d3694529dbf02bdec7f283eec56db66d84e7144aa92b7114c864
+SIZE (go/textproc_vacuum/vacuum-v0.17.6/v0.17.6.zip) = 3102941
diff --git a/textproc/yelp-tools/Makefile b/textproc/yelp-tools/Makefile
index 33adb284042e..f04feeacedb0 100644
--- a/textproc/yelp-tools/Makefile
+++ b/textproc/yelp-tools/Makefile
@@ -1,5 +1,6 @@
PORTNAME= yelp-tools
PORTVERSION= 42.1
+PORTREVISION= 1
CATEGORIES= textproc gnome
MASTER_SITES= GNOME
DIST_SUBDIR= gnome
@@ -10,7 +11,7 @@ WWW= https://gitlab.gnome.org/GNOME/yelp-tools
LICENSE= GPLv2+
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
itstool:textproc/itstool \
yelp-xsl>=0:textproc/yelp-xsl
diff --git a/textproc/yq/Makefile b/textproc/yq/Makefile
index 0a2e4db3c8d6..dcd786e51fb6 100644
--- a/textproc/yq/Makefile
+++ b/textproc/yq/Makefile
@@ -5,7 +5,8 @@ MASTER_SITES= PYPI
MAINTAINER= yuri@FreeBSD.org
COMMENT= Command-line YAML and XML processor, jq wrapper for YAML/XML documents
-WWW= https://kislyuk.github.io/yq/
+WWW= https://kislyuk.github.io/yq/ \
+ https://github.com/kislyuk/yq
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
diff --git a/textproc/ytt/Makefile b/textproc/ytt/Makefile
index 10f93474ad81..882c7c57b2b4 100644
--- a/textproc/ytt/Makefile
+++ b/textproc/ytt/Makefile
@@ -1,17 +1,17 @@
PORTNAME= ytt
DISTVERSIONPREFIX= v
-DISTVERSION= 0.49.0
-PORTREVISION= 8
+DISTVERSION= 0.52.0
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
COMMENT= YAML templating tool that works on YAML structure instead of text
-WWW= https://carvel.dev/ytt/
+WWW= https://carvel.dev/ytt/ \
+ https://github.com/carvel-dev/ytt
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= go:1.22,modules
+USES= go:1.24,modules
GO_MODULE= github.com/carvel-dev/ytt
GO_TARGET= ./cmd/ytt/
diff --git a/textproc/ytt/distinfo b/textproc/ytt/distinfo
index b6d33dca9389..b52d9d8c11c6 100644
--- a/textproc/ytt/distinfo
+++ b/textproc/ytt/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1713328862
-SHA256 (go/textproc_ytt/ytt-v0.49.0/v0.49.0.mod) = f53503a6b50af40a27d975b8ee436e30d17482a51630d51f88512d6d27471287
-SIZE (go/textproc_ytt/ytt-v0.49.0/v0.49.0.mod) = 898
-SHA256 (go/textproc_ytt/ytt-v0.49.0/v0.49.0.zip) = b26a2fb3482ba4abaeeb50a54ea0f626babf44c43674801ed8f4b7f377478920
-SIZE (go/textproc_ytt/ytt-v0.49.0/v0.49.0.zip) = 1194611
+TIMESTAMP = 1753122942
+SHA256 (go/textproc_ytt/ytt-v0.52.0/v0.52.0.mod) = 0e566b17de6f4312c87f9fb47e3c66569be432e9449e88ce3ed9fcd66bdc5382
+SIZE (go/textproc_ytt/ytt-v0.52.0/v0.52.0.mod) = 900
+SHA256 (go/textproc_ytt/ytt-v0.52.0/v0.52.0.zip) = 5ccca5bd311afcf42d7e8cfa03b9d0c55d87e4a94cf128a0c5c468b00a8e0676
+SIZE (go/textproc_ytt/ytt-v0.52.0/v0.52.0.zip) = 1195901
diff --git a/www/Makefile b/www/Makefile
index 041473c0ce5e..1446c2b57c5b 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -2517,6 +2517,7 @@
SUBDIR += swiggle
SUBDIR += sws
SUBDIR += tailwindcss3
+ SUBDIR += tailwindcss4
SUBDIR += tcexam
SUBDIR += tclhttpd
SUBDIR += tclwebtest
diff --git a/www/node24/files/patch-tools_v8__gypfiles_v8.gyp b/www/node24/files/patch-tools_v8__gypfiles_v8.gyp
new file mode 100644
index 000000000000..189f9b3780d8
--- /dev/null
+++ b/www/node24/files/patch-tools_v8__gypfiles_v8.gyp
@@ -0,0 +1,12 @@
+--- tools/v8_gypfiles/v8.gyp.orig 2025-07-17 21:44:08 UTC
++++ tools/v8_gypfiles/v8.gyp
+@@ -1314,9 +1314,6 @@
+ # to implement atomic memory access.
+ # Clang needs it for some atomic operations (https://clang.llvm.org/docs/Toolchain.html#atomics-library).
+ ['(OS=="linux" and clang==1) or (v8_current_cpu in ["mips64", "mips64el", "arm", "riscv64", "loong64"])', {
+- 'link_settings': {
+- 'libraries': ['-latomic', ],
+- },
+ }],
+ ],
+ }, # v8_base_without_compiler
diff --git a/www/proxygen/Makefile b/www/proxygen/Makefile
index d0bbd1653a57..840c3adda155 100644
--- a/www/proxygen/Makefile
+++ b/www/proxygen/Makefile
@@ -1,6 +1,6 @@
PORTNAME= proxygen
DISTVERSIONPREFIX= v
-DISTVERSION= 2025.07.07.00
+DISTVERSION= 2025.07.21.00
CATEGORIES= www
MAINTAINER= yuri@FreeBSD.org
diff --git a/www/proxygen/distinfo b/www/proxygen/distinfo
index 2800180a613d..6cc314691add 100644
--- a/www/proxygen/distinfo
+++ b/www/proxygen/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752053901
-SHA256 (facebook-proxygen-v2025.07.07.00_GH0.tar.gz) = 9a7d756fe88704e4f0fc69e72c71249894c94c205215b38e24a4fdd6459d73c8
-SIZE (facebook-proxygen-v2025.07.07.00_GH0.tar.gz) = 1223443
+TIMESTAMP = 1753158792
+SHA256 (facebook-proxygen-v2025.07.21.00_GH0.tar.gz) = 6859d5d2553310b639f2e7570604ad5354c52c657cc4123bb90b14d0828db2e0
+SIZE (facebook-proxygen-v2025.07.21.00_GH0.tar.gz) = 1227652
diff --git a/www/py-caldav/Makefile b/www/py-caldav/Makefile
index ac45c293ba7d..d0965310bc0b 100644
--- a/www/py-caldav/Makefile
+++ b/www/py-caldav/Makefile
@@ -1,5 +1,6 @@
PORTNAME= caldav
PORTVERSION= 2.0.1
+PORTREVISION= 1
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +17,7 @@ LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING.GPL
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0:devel/py-hatch-vcs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}icalendar>=6.0.0:devel/py-icalendar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}recurring-ical-events>=2.0.0:devel/py-recurring-ical-events@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \
diff --git a/www/py-cinemagoer/Makefile b/www/py-cinemagoer/Makefile
index 207db453a2e5..9b1cc42d1c57 100644
--- a/www/py-cinemagoer/Makefile
+++ b/www/py-cinemagoer/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cinemagoer
PORTVERSION= 2023.5.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlalchemy20>=0:databases/py-sqlalchemy20@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest-profiling>=0:devel/py-pytest-profiling@${PY_FLAVOR}
diff --git a/www/py-feedgen/Makefile b/www/py-feedgen/Makefile
index e055c6014d66..124c3c57cb9c 100644
--- a/www/py-feedgen/Makefile
+++ b/www/py-feedgen/Makefile
@@ -1,6 +1,6 @@
PORTNAME= feedgen
DISTVERSION= 1.0.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_COMB= multi
LICENSE_FILE_BSD2CLAUSE= ${WRKSRC}/license.bsd
LICENSE_FILE_LGPL3+ = ${WRKSRC}/license.lgpl
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR}
USES= python
diff --git a/www/py-html5-parser/Makefile b/www/py-html5-parser/Makefile
index 67683949647d..7b86e641cd32 100644
--- a/www/py-html5-parser/Makefile
+++ b/www/py-html5-parser/Makefile
@@ -1,6 +1,6 @@
PORTNAME= html5-parser
PORTVERSION= 0.4.12
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://html5-parser.readthedocs.io/
LICENSE= APACHE20
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.9.2:devel/py-lxml@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.9.2:devel/py-lxml5@${PY_FLAVOR}
USES= gnome pkgconfig python
USE_PYTHON= autoplist distutils
diff --git a/www/py-html5lib-modern/Makefile b/www/py-html5lib-modern/Makefile
index 90493edd637f..76148c705e58 100644
--- a/www/py-html5lib-modern/Makefile
+++ b/www/py-html5lib-modern/Makefile
@@ -1,5 +1,6 @@
PORTNAME= html5lib-modern
PORTVERSION= 1.2
+PORTREVISION= 1
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -29,6 +30,6 @@ LXML_DESC= Tree building/walking via lxml
CHARDET_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}chardet>=2.2.1,1:textproc/py-chardet@${PY_FLAVOR}
GENSHI_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Genshi>=0.7.1:textproc/py-genshi@${PY_FLAVOR}
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.4.0:devel/py-lxml@${PY_FLAVOR}
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.4.0:devel/py-lxml5@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/www/py-inlinestyler/Makefile b/www/py-inlinestyler/Makefile
index f3e445173f97..4af3fc82057e 100644
--- a/www/py-inlinestyler/Makefile
+++ b/www/py-inlinestyler/Makefile
@@ -1,6 +1,6 @@
PORTNAME= inlinestyler
PORTVERSION= 0.2.5
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssutils>0:www/py-cssutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=1.0.0:www/py-requests@${PY_FLAVOR}
USES= python
diff --git a/www/py-readability-lxml/Makefile b/www/py-readability-lxml/Makefile
index e2e95b6bda4a..620e1a050d42 100644
--- a/www/py-readability-lxml/Makefile
+++ b/www/py-readability-lxml/Makefile
@@ -1,6 +1,6 @@
PORTNAME= readability-lxml
PORTVERSION= 0.8.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/buriy/python-readability
LICENSE= APACHE20
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>0:www/py-cssselect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}timeout-decorator>0:devel/py-timeout-decorator@${PY_FLAVOR}
USES= python
diff --git a/www/py-scrapy/Makefile b/www/py-scrapy/Makefile
index 606dc2b3cfa4..1d22ac626028 100644
--- a/www/py-scrapy/Makefile
+++ b/www/py-scrapy/Makefile
@@ -1,6 +1,6 @@
PORTNAME= Scrapy
DISTVERSION= 2.11.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -23,7 +23,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}twisted>=18.9.0:devel/py-twisted@${PY_FLAVOR
${PYTHON_PKGNAMEPREFIX}zope.interface>=5.1.0:devel/py-zope.interface@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}protego>=0.1.15:www/py-protego@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}itemadapter>=0.1.0:devel/py-itemadapter@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.4.1:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.4.1:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tldextract>0:dns/py-tldextract@${PY_FLAVOR}
USES= cpe python
diff --git a/www/py-seafdav/Makefile b/www/py-seafdav/Makefile
index 08168aa57ff7..a3219307ff6c 100644
--- a/www/py-seafdav/Makefile
+++ b/www/py-seafdav/Makefile
@@ -2,6 +2,7 @@ PORTNAME= seafdav
DISTVERSIONPREFIX= v
DISTVERSION= ${SEAHUB_VER}
DISTVERSIONSUFFIX= -server
+PORTREVISION= 1
CATEGORIES= www python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +19,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0.5:devel/py-defusedxml@${PY_FLA
${PYTHON_PKGNAMEPREFIX}python-pam>=1.8:security/py-python-pam@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=5.1:devel/py-pyyaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.12:devel/py-six@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlalchemy14>=0:databases/py-sqlalchemy14@${PY_FLAVOR}
USES= python shebangfix
diff --git a/www/py-searxng-devel/Makefile b/www/py-searxng-devel/Makefile
index e7b3aa04bf95..dc759595d471 100644
--- a/www/py-searxng-devel/Makefile
+++ b/www/py-searxng-devel/Makefile
@@ -1,5 +1,6 @@
PORTNAME= searxng
DISTVERSION= 20250711
+PORTREVISION= 1
CATEGORIES= www python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
PKGNAMESUFFIX= -devel
@@ -23,7 +24,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=0:devel/py-babel@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}isodate>=0:devel/py-isodate@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}langdetect>=0:textproc/py-langdetect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown-it-py>=0:textproc/py-markdown-it-py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}msgspec>=0:devel/py-msgspec@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=0:textproc/py-pygments@${PY_FLAVOR} \
diff --git a/www/py-splinter/Makefile b/www/py-splinter/Makefile
index dab25f7d7d7d..e6d30f9b87a3 100644
--- a/www/py-splinter/Makefile
+++ b/www/py-splinter/Makefile
@@ -1,6 +1,6 @@
PORTNAME= splinter
PORTVERSION= 0.21.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}urllib3>=1.26.14:net/py-urllib3@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>0:www/py-cssselect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=4.2.4:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=4.2.4:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}selenium>=4.1.0:www/py-selenium@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}zope.testbrowser>=5.5.1:devel/py-zope.testbrowser@${PY_FLAVOR}
diff --git a/www/py-spyne/Makefile b/www/py-spyne/Makefile
index 1c338bc6b4e0..bac27c204563 100644
--- a/www/py-spyne/Makefile
+++ b/www/py-spyne/Makefile
@@ -1,6 +1,6 @@
PORTNAME= spyne
PORTVERSION= 2.14.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= www devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -19,7 +19,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytz>=0,1:devel/py-pytz@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}colorama>=0:devel/py-colorama@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=3.6:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=3.6:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}msgpack>=1:devel/py-msgpack@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>=0,1:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>=2.0.2:devel/py-pyparsing@${PY_FLAVOR} \
diff --git a/www/py-urlwatch/Makefile b/www/py-urlwatch/Makefile
index f0e49dfee489..1115b42bfaae 100644
--- a/www/py-urlwatch/Makefile
+++ b/www/py-urlwatch/Makefile
@@ -1,6 +1,6 @@
PORTNAME= urlwatch
DISTVERSION= 2.29
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/COPYING
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}minidb>=2.0.8:databases/py-minidb@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}platformdirs>0:devel/py-platformdirs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}keyring>0:security/py-keyring@${PY_FLAVOR} \
diff --git a/www/py-woob/Makefile b/www/py-woob/Makefile
index 419d0b237bc8..dd47c81fd32e 100644
--- a/www/py-woob/Makefile
+++ b/www/py-woob/Makefile
@@ -1,5 +1,6 @@
PORTNAME= woob
PORTVERSION= 3.7
+PORTREVISION= 1
CATEGORIES= www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING.LESSER
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=23.0:devel/py-packaging@${PY_FLAVOR} \
${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}setuptools-scm>=8:devel/py-setuptools-scm@${PY_FLAVOR} \
@@ -29,7 +30,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}unidecode>=0:converters/py-unidecode@${PY_FL
${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}colorama>=0:devel/py-colorama@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=23.0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}prettytable>0:devel/py-prettytable@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}simplejson>0:devel/py-simplejson@${PY_FLAVOR} \
diff --git a/www/selenium/Makefile b/www/selenium/Makefile
index 48dc76afe821..8243608e3e2d 100644
--- a/www/selenium/Makefile
+++ b/www/selenium/Makefile
@@ -1,5 +1,5 @@
PORTNAME= selenium
-DISTVERSION= 4.32.0
+DISTVERSION= 4.34.0
CATEGORIES= www devel java
MASTER_SITES= https://github.com/SeleniumHQ/${PORTNAME}/releases/download/${PORTNAME}-${DISTVERSION}/
DISTNAME= selenium-server-${DISTVERSION}
diff --git a/www/selenium/distinfo b/www/selenium/distinfo
index a6af3d02879f..3dfacd5ce05d 100644
--- a/www/selenium/distinfo
+++ b/www/selenium/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747707505
-SHA256 (selenium-server-4.32.0.jar) = a2a40741368a4251b9ba60469a048e4fae9417491171d9faf7ce55cc40320335
-SIZE (selenium-server-4.32.0.jar) = 42675799
+TIMESTAMP = 1752823263
+SHA256 (selenium-server-4.34.0.jar) = c4ca7b2453abec28ac705cfc61321ba7ed62e886fbfd54c997b133d73c69c508
+SIZE (selenium-server-4.34.0.jar) = 43006967
diff --git a/www/tailwindcss4/Makefile b/www/tailwindcss4/Makefile
new file mode 100644
index 000000000000..8cf337126107
--- /dev/null
+++ b/www/tailwindcss4/Makefile
@@ -0,0 +1,78 @@
+PORTNAME= tailwindcss4
+DISTVERSION= 4.1.10
+CATEGORIES= www devel
+MASTER_SITES= LOCAL/dch/${PORTNAME}/:npm
+DISTFILES= ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npm
+
+MAINTAINER= dch@FreeBSD.org
+COMMENT= Utility-first CSS framework with npm dependencies
+WWW= https://tailwindcss.com/
+
+LICENSE= MIT
+
+ONLY_FOR_ARCHS= amd64
+
+BUILD_DEPENDS= npm-node24>0:www/npm-node24
+USES= nodejs:24,build,run python:build tar:txz
+
+CONFLICTS_INSTALL= tailwindcss*
+
+_DAISYUI_VER= 5.0.43
+_FORMS_VER= 0.5.10
+_POSTCSS_VER= 8.5.5
+_TWCLI_VER= ${DISTVERSION}
+_TAILWIND_VER= ${DISTVERSION}
+_WATCHER_VER= 2.5.1
+
+_NPM_CACHE= ${WRKDIR}/cache
+_NPM_ARCHIVE= ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}
+
+do-extract:
+ @${MKDIR} ${WRKDIR}/cache
+ ${TAR} -xf ${DISTDIR}/${_NPM_ARCHIVE} -C ${_NPM_CACHE}
+
+do-build:
+# because nodejs is fiddly we can't build & then install
+.if !defined(MAINTAINER_MODE)
+ ${ECHO_CMD} offline=true > ${WRKDIR}/.npmrc
+.endif
+
+do-install:
+ ${ECHO_CMD} python=${PYTHON_CMD} >> ${WRKDIR}/.npmrc
+ (cd ${WRKDIR} && \
+ ${SETENV} HOME=${WRKDIR} npm_config_cache=${_NPM_CACHE} \
+ npm_config_devdir=${_NPM_CACHE} npm_config_nodedir=${PREFIX} \
+ npm_config_node_gyp_include_dir=${PREFIX}/include/node \
+ npm install --global --no-audit --no-fund --no-prune --cache \
+ ${_NPM_CACHE} --prefer-offline --verbose --no-progress \
+ --build-from-source --prefix=${STAGEDIR}${PREFIX} @parcel/watcher@${_WATCHER_VER} \
+ @tailwindcss/cli@${TWCLI_VER} @tailwindcss/forms@${FORMS_VER} \
+ autoprefixer@${_PREFIX_VER} postcss@${_POSTCSS_VER} \
+ tailwindcss@${_TAILWIND_VER} daisyui@${_DAISYUI_VER})
+# strip .node files they are shared libraries
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/node_modules/@parcel/watcher/node_modules/@parcel/watcher-freebsd-*/watcher.node
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/node_modules/@parcel/watcher/build/Release/watcher.node
+# create symlinks for the CLI tools
+.for script in nanoid:../lib/node_modules/nanoid/bin/nanoid.cjs \
+ tailwind:../lib/node_modules/@tailwindcss/cli/dist/index.mjs \
+ tailwindcss:../lib/node_modules/@tailwindcss/cli/dist/index.mjs
+ ${LN} -sf ${script:C/.*://} ${STAGEDIR}${PREFIX}/bin/${script:C/:.*//}
+.endfor
+# remove files already present in node, npm, or yarn packages
+.for m in corepack npm
+ ${RM} -rf ${STAGEDIR}${PREFIX}/lib/node_modules/${m}
+.endfor
+# remove build detritus
+.for file in Release/.deps Release/obj.target Makefile binding.Makefile \
+ config.gypi watcher.target.mk
+ ${RM} -rf ${STAGEDIR}${PREFIX}/lib/node_modules/@parcel/watcher/build/${file}
+.endfor
+
+_tarball: do-install
+ ${TAR} -caf ${DISTDIR}/${_NPM_ARCHIVE} -C ${_NPM_CACHE} _cacache
+ ${CHMOD} 644 ${DISTDIR}/${_NPM_ARCHIVE}
+ @${ECHO_MSG} Ready to upload tarball to freefall distfiles directory:
+ @${ECHO_MSG} ${DISTDIR}/${_NPM_ARCHIVE}
+ @${ECHO_MSG} scp ${DISTDIR}/${_NPM_ARCHIVE} dch@freefall.freebsd.org:public_distfiles/${PORTNAME}/
+
+.include <bsd.port.mk>
diff --git a/www/tailwindcss4/distinfo b/www/tailwindcss4/distinfo
new file mode 100644
index 000000000000..63a862a15d08
--- /dev/null
+++ b/www/tailwindcss4/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1750709626
+SHA256 (tailwindcss4-npm-cache-4.1.10.txz) = 55e43ed950e7207fba51c0e8bc6d65f6668b52f636c64b5cad11ae9b7b63ab42
+SIZE (tailwindcss4-npm-cache-4.1.10.txz) = 15398368
diff --git a/www/tailwindcss4/pkg-descr b/www/tailwindcss4/pkg-descr
new file mode 100644
index 000000000000..fc8ac873069e
--- /dev/null
+++ b/www/tailwindcss4/pkg-descr
@@ -0,0 +1,10 @@
+Tailwind CSS is a utility-first CSS framework for rapidly building custom
+user interfaces. This port comprises Tailwind CSS along with commonly used
+related packages via npm:
+
+- tailwindcss: the core framework
+- postcss: optimise resulting CSS
+- @tailwindcss/forms: official CSS forms plugin
+- daisyui: component library
+
+The packages are installed globally and can be used from the command line.
diff --git a/www/tailwindcss4/pkg-plist b/www/tailwindcss4/pkg-plist
new file mode 100644
index 000000000000..d0b9a04ded1f
--- /dev/null
+++ b/www/tailwindcss4/pkg-plist
@@ -0,0 +1,2228 @@
+bin/autoprefixer
+bin/nanoid
+bin/tailwind
+bin/tailwindcss
+lib/node_modules/@parcel/watcher/LICENSE
+lib/node_modules/@parcel/watcher/README.md
+lib/node_modules/@parcel/watcher/binding.gyp
+lib/node_modules/@parcel/watcher/build/Release/watcher.node
+lib/node_modules/@parcel/watcher/index.d.ts
+lib/node_modules/@parcel/watcher/index.js
+lib/node_modules/@parcel/watcher/index.js.flow
+lib/node_modules/@parcel/watcher/node_modules/.bin/detect-libc
+lib/node_modules/@parcel/watcher/node_modules/@parcel/watcher-freebsd-x64/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/@parcel/watcher-freebsd-x64/README.md
+lib/node_modules/@parcel/watcher/node_modules/@parcel/watcher-freebsd-x64/package.json
+lib/node_modules/@parcel/watcher/node_modules/@parcel/watcher-freebsd-x64/watcher.node
+lib/node_modules/@parcel/watcher/node_modules/braces/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/braces/README.md
+lib/node_modules/@parcel/watcher/node_modules/braces/index.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/compile.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/constants.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/expand.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/parse.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/stringify.js
+lib/node_modules/@parcel/watcher/node_modules/braces/lib/utils.js
+lib/node_modules/@parcel/watcher/node_modules/braces/package.json
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/.npmignore
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/README.md
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/bin/detect-libc.js
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/lib/detect-libc.js
+lib/node_modules/@parcel/watcher/node_modules/detect-libc/package.json
+lib/node_modules/@parcel/watcher/node_modules/fill-range/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/fill-range/README.md
+lib/node_modules/@parcel/watcher/node_modules/fill-range/index.js
+lib/node_modules/@parcel/watcher/node_modules/fill-range/package.json
+lib/node_modules/@parcel/watcher/node_modules/is-extglob/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/is-extglob/README.md
+lib/node_modules/@parcel/watcher/node_modules/is-extglob/index.js
+lib/node_modules/@parcel/watcher/node_modules/is-extglob/package.json
+lib/node_modules/@parcel/watcher/node_modules/is-glob/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/is-glob/README.md
+lib/node_modules/@parcel/watcher/node_modules/is-glob/index.js
+lib/node_modules/@parcel/watcher/node_modules/is-glob/package.json
+lib/node_modules/@parcel/watcher/node_modules/is-number/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/is-number/README.md
+lib/node_modules/@parcel/watcher/node_modules/is-number/index.js
+lib/node_modules/@parcel/watcher/node_modules/is-number/package.json
+lib/node_modules/@parcel/watcher/node_modules/micromatch/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/micromatch/README.md
+lib/node_modules/@parcel/watcher/node_modules/micromatch/index.js
+lib/node_modules/@parcel/watcher/node_modules/micromatch/package.json
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/LICENSE.md
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/README.md
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/common.gypi
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/except.gypi
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/index.js
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/napi-inl.deprecated.h
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/napi-inl.h
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/napi.h
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/node_addon_api.gyp
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/node_api.gyp
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/noexcept.gypi
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/nothing.c
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/package-support.json
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/package.json
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/tools/README.md
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/tools/check-napi.js
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/tools/clang-format.js
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/tools/conversion.js
+lib/node_modules/@parcel/watcher/node_modules/node-addon-api/tools/eslint-format.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/CHANGELOG.md
+lib/node_modules/@parcel/watcher/node_modules/picomatch/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/picomatch/README.md
+lib/node_modules/@parcel/watcher/node_modules/picomatch/index.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/lib/constants.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/lib/parse.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/lib/picomatch.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/lib/scan.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/lib/utils.js
+lib/node_modules/@parcel/watcher/node_modules/picomatch/package.json
+lib/node_modules/@parcel/watcher/node_modules/to-regex-range/LICENSE
+lib/node_modules/@parcel/watcher/node_modules/to-regex-range/README.md
+lib/node_modules/@parcel/watcher/node_modules/to-regex-range/index.js
+lib/node_modules/@parcel/watcher/node_modules/to-regex-range/package.json
+lib/node_modules/@parcel/watcher/package.json
+lib/node_modules/@parcel/watcher/scripts/build-from-source.js
+lib/node_modules/@parcel/watcher/src/Backend.cc
+lib/node_modules/@parcel/watcher/src/Backend.hh
+lib/node_modules/@parcel/watcher/src/Debounce.cc
+lib/node_modules/@parcel/watcher/src/Debounce.hh
+lib/node_modules/@parcel/watcher/src/DirTree.cc
+lib/node_modules/@parcel/watcher/src/DirTree.hh
+lib/node_modules/@parcel/watcher/src/Event.hh
+lib/node_modules/@parcel/watcher/src/Glob.cc
+lib/node_modules/@parcel/watcher/src/Glob.hh
+lib/node_modules/@parcel/watcher/src/PromiseRunner.hh
+lib/node_modules/@parcel/watcher/src/Signal.hh
+lib/node_modules/@parcel/watcher/src/Watcher.cc
+lib/node_modules/@parcel/watcher/src/Watcher.hh
+lib/node_modules/@parcel/watcher/src/binding.cc
+lib/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc
+lib/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh
+lib/node_modules/@parcel/watcher/src/linux/InotifyBackend.cc
+lib/node_modules/@parcel/watcher/src/linux/InotifyBackend.hh
+lib/node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc
+lib/node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh
+lib/node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc
+lib/node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh
+lib/node_modules/@parcel/watcher/src/unix/fts.cc
+lib/node_modules/@parcel/watcher/src/unix/legacy.cc
+lib/node_modules/@parcel/watcher/src/wasm/WasmBackend.cc
+lib/node_modules/@parcel/watcher/src/wasm/WasmBackend.hh
+lib/node_modules/@parcel/watcher/src/wasm/include.h
+lib/node_modules/@parcel/watcher/src/watchman/BSER.cc
+lib/node_modules/@parcel/watcher/src/watchman/BSER.hh
+lib/node_modules/@parcel/watcher/src/watchman/IPC.hh
+lib/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc
+lib/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh
+lib/node_modules/@parcel/watcher/src/windows/WindowsBackend.cc
+lib/node_modules/@parcel/watcher/src/windows/WindowsBackend.hh
+lib/node_modules/@parcel/watcher/src/windows/win_utils.cc
+lib/node_modules/@parcel/watcher/src/windows/win_utils.hh
+lib/node_modules/@parcel/watcher/wrapper.js
+lib/node_modules/@tailwindcss/cli/LICENSE
+lib/node_modules/@tailwindcss/cli/README.md
+lib/node_modules/@tailwindcss/cli/dist/index.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/.bin/jiti
+lib/node_modules/@tailwindcss/cli/node_modules/.bin/mkdirp
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/remapping.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/remapping.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/remapping.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/remapping.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/types/build-source-map-tree.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/types/remapping.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/types/source-map-tree.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/types/source-map.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/dist/types/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@ampproject/remapping/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@isaacs/fs-minipass/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/types/gen-mapping.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/types/sourcemap-segment.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/dist/types/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/gen-mapping/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/dist/types/resolve-uri.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/resolve-uri/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/dist/set-array.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/dist/set-array.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/dist/set-array.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/dist/set-array.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/dist/types/set-array.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/set-array/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/types/scopes.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/types/sourcemap-codec.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/types/strings.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/dist/types/vlq.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/sourcemap-codec/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/any-map.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/binary-search.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/by-source.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/resolve.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/sort.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/sourcemap-segment.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/strip-filename.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/trace-mapping.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/dist/types/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@jridgewell/trace-mapping/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/esm-cache.loader.d.mts
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/esm-cache.loader.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/index.d.mts
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/index.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/require-cache.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/dist/require-cache.js
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/node/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide-freebsd-x64/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide-freebsd-x64/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide-freebsd-x64/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide-freebsd-x64/tailwindcss-oxide.freebsd-x64.node
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/@tailwindcss/oxide/scripts/install.js
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/LICENSE.md
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/chownr/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/lib/detect-libc.js
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/lib/filesystem.js
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/lib/process.js
+lib/node_modules/@tailwindcss/cli/node_modules/detect-libc/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/AliasFieldPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/AliasPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/AppendPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/CloneBasenamePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ConditionalPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/DescriptionFilePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/DescriptionFileUtils.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/DirectoryExistsPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ExportsFieldPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ExtensionAliasPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/FileExistsPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ImportsFieldPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/JoinRequestPartPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/JoinRequestPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/LogInfoPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/MainFieldPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ModulesInHierachicDirectoriesPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ModulesInHierarchicalDirectoriesPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ModulesInRootPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/NextPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ParsePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/PnpPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/Resolver.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ResolverFactory.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/RestrictionsPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/ResultPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/RootsPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/SelfReferencePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/SymlinkPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/SyncAsyncFileSystemDecorator.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/TryNextPlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/UseFilePlugin.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/createInnerContext.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/forEachBail.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/getInnerRequest.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/getPaths.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/util/entrypoints.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/util/identifier.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/util/module-browser.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/util/path.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/lib/util/process-browser.js
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/enhanced-resolve/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/clone.js
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/graceful-fs.js
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/legacy-streams.js
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/graceful-fs/polyfills.js
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/dist/babel.cjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/dist/jiti.cjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti-cli.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti-hooks.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti-native.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti-register.d.mts
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti-register.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti.cjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti.d.cts
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti.d.mts
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/jiti.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/lib/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/jiti/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss-freebsd-x64/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss-freebsd-x64/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss-freebsd-x64/lightningcss.freebsd-x64.node
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss-freebsd-x64/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/ast.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/ast.js.flow
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/browserslistToTargets.js
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/composeVisitors.js
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/flags.js
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/index.js.flow
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/index.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/targets.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/node/targets.js.flow
+lib/node_modules/@tailwindcss/cli/node_modules/lightningcss/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.cjs.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.cjs.js
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.cjs.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.es.d.mts
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.es.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.es.mjs.map
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.umd.js
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/dist/magic-string.umd.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/magic-string/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minipass/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/constants.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/constants.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/constants.js
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/constants.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/constants.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/constants.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/constants.js
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/constants.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/minizlib/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/bin.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/bin.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/bin.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/bin.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/find-made.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/find-made.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/find-made.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/find-made.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-native.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-native.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-native.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/mkdirp-native.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/opts-arg.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/opts-arg.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/opts-arg.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/opts-arg.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/path-arg.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/path-arg.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/path-arg.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/path-arg.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/use-native.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/use-native.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/use-native.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/cjs/src/use-native.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/find-made.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/find-made.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/find-made.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/find-made.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-manual.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-manual.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-manual.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-manual.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-native.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-native.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-native.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/mkdirp-native.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/opts-arg.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/opts-arg.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/opts-arg.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/opts-arg.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/path-arg.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/path-arg.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/path-arg.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/path-arg.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/use-native.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/use-native.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/use-native.js
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/dist/mjs/use-native.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/mkdirp/readme.markdown
+lib/node_modules/@tailwindcss/cli/node_modules/mri/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/mri/lib/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/mri/lib/index.mjs
+lib/node_modules/@tailwindcss/cli/node_modules/mri/license.md
+lib/node_modules/@tailwindcss/cli/node_modules/mri/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/mri/readme.md
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/picocolors.browser.js
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/picocolors.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/picocolors.js
+lib/node_modules/@tailwindcss/cli/node_modules/picocolors/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/array-set.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/base64-vlq.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/base64.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/binary-search.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/mapping-list.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/quick-sort.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-map-consumer.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-map-consumer.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-map-generator.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-map-generator.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-node.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/source-node.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/lib/util.js
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/source-map.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/source-map-js/source-map.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncParallelBailHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncParallelHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncSeriesBailHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncSeriesHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncSeriesLoopHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/AsyncSeriesWaterfallHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/Hook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/HookCodeFactory.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/HookMap.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/MultiHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/SyncBailHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/SyncHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/SyncLoopHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/SyncWaterfallHook.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/lib/util-browser.js
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/tapable/tapable.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/LICENSE
+lib/node_modules/@tailwindcss/cli/node_modules/tar/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/create.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/create.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/create.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/create.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/cwd-error.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/cwd-error.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/cwd-error.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/cwd-error.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/extract.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/extract.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/extract.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/extract.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/get-write-flag.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/get-write-flag.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/get-write-flag.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/get-write-flag.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/header.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/header.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/header.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/header.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/large-numbers.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/large-numbers.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/large-numbers.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/large-numbers.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/list.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/list.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/list.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/list.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/make-command.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/make-command.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/make-command.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/make-command.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mkdir.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mkdir.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mkdir.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mkdir.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mode-fix.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mode-fix.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mode-fix.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/mode-fix.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-unicode.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-unicode.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-unicode.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-unicode.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-windows-path.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/normalize-windows-path.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/options.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/options.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/options.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/options.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pack.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pack.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pack.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pack.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/parse.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/parse.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/parse.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/parse.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/path-reservations.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/path-reservations.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/path-reservations.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/path-reservations.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pax.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pax.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pax.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/pax.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/read-entry.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/read-entry.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/read-entry.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/read-entry.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/replace.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/replace.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/replace.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/replace.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-absolute-path.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-absolute-path.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-trailing-slashes.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/strip-trailing-slashes.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/symlink-error.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/symlink-error.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/symlink-error.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/symlink-error.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/types.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/types.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/types.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/unpack.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/unpack.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/unpack.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/unpack.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/update.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/update.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/update.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/update.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/warn-method.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/warn-method.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/warn-method.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/warn-method.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/winchars.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/winchars.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/winchars.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/winchars.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/write-entry.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/write-entry.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/write-entry.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/commonjs/write-entry.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/create.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/create.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/create.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/create.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/cwd-error.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/cwd-error.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/cwd-error.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/cwd-error.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/extract.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/extract.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/extract.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/extract.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/get-write-flag.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/get-write-flag.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/get-write-flag.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/get-write-flag.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/header.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/header.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/header.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/header.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/large-numbers.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/large-numbers.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/large-numbers.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/large-numbers.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/list.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/list.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/list.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/list.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/make-command.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/make-command.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/make-command.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/make-command.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mkdir.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mkdir.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mkdir.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mkdir.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mode-fix.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mode-fix.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mode-fix.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/mode-fix.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-unicode.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-unicode.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-unicode.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-unicode.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-windows-path.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-windows-path.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-windows-path.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/normalize-windows-path.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/options.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/options.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/options.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/options.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pack.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pack.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pack.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pack.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/parse.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/parse.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/parse.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/parse.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/path-reservations.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/path-reservations.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/path-reservations.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/path-reservations.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pax.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pax.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pax.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/pax.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/read-entry.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/read-entry.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/read-entry.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/read-entry.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/replace.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/replace.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/replace.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/replace.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-absolute-path.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-absolute-path.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-absolute-path.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-absolute-path.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-trailing-slashes.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/strip-trailing-slashes.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/symlink-error.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/symlink-error.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/symlink-error.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/symlink-error.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/types.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/types.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/types.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/types.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/unpack.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/unpack.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/unpack.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/unpack.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/update.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/update.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/update.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/update.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/warn-method.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/warn-method.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/warn-method.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/warn-method.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/winchars.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/winchars.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/winchars.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/winchars.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/write-entry.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/write-entry.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/write-entry.js
+lib/node_modules/@tailwindcss/cli/node_modules/tar/dist/esm/write-entry.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/tar/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/LICENSE.md
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/README.md
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/commonjs/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/commonjs/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/commonjs/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/commonjs/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/commonjs/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/esm/index.d.ts
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/esm/index.d.ts.map
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/esm/index.js
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/esm/index.js.map
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/dist/esm/package.json
+lib/node_modules/@tailwindcss/cli/node_modules/yallist/package.json
+lib/node_modules/@tailwindcss/cli/package.json
+lib/node_modules/@tailwindcss/forms/.github/ISSUE_TEMPLATE/1.bug_report.yml
+lib/node_modules/@tailwindcss/forms/.github/ISSUE_TEMPLATE/config.yml
+lib/node_modules/@tailwindcss/forms/.github/workflows/prepare-release.yml
+lib/node_modules/@tailwindcss/forms/.github/workflows/release-insiders.yml
+lib/node_modules/@tailwindcss/forms/.github/workflows/release.yml
+lib/node_modules/@tailwindcss/forms/CHANGELOG.md
+lib/node_modules/@tailwindcss/forms/LICENSE
+lib/node_modules/@tailwindcss/forms/README.md
+lib/node_modules/@tailwindcss/forms/index.html
+lib/node_modules/@tailwindcss/forms/kitchen-sink.html
+lib/node_modules/@tailwindcss/forms/node_modules/.bin/mini-svg-data-uri
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/LICENSE
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/README.md
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/cli.js
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/index.d.ts
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/index.js
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/index.test-d.ts
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/package.json
+lib/node_modules/@tailwindcss/forms/node_modules/mini-svg-data-uri/shorter-css-color-names.js
+lib/node_modules/@tailwindcss/forms/package.json
+lib/node_modules/@tailwindcss/forms/scripts/release-channel.js
+lib/node_modules/@tailwindcss/forms/scripts/release-notes.js
+lib/node_modules/@tailwindcss/forms/src/index.d.ts
+lib/node_modules/@tailwindcss/forms/src/index.js
+lib/node_modules/@tailwindcss/forms/tailwind.config.js
+lib/node_modules/autoprefixer/LICENSE
+lib/node_modules/autoprefixer/README.md
+lib/node_modules/autoprefixer/bin/autoprefixer
+lib/node_modules/autoprefixer/data/prefixes.js
+lib/node_modules/autoprefixer/lib/at-rule.js
+lib/node_modules/autoprefixer/lib/autoprefixer.d.ts
+lib/node_modules/autoprefixer/lib/autoprefixer.js
+lib/node_modules/autoprefixer/lib/brackets.js
+lib/node_modules/autoprefixer/lib/browsers.js
+lib/node_modules/autoprefixer/lib/declaration.js
+lib/node_modules/autoprefixer/lib/hacks/align-content.js
+lib/node_modules/autoprefixer/lib/hacks/align-items.js
+lib/node_modules/autoprefixer/lib/hacks/align-self.js
+lib/node_modules/autoprefixer/lib/hacks/animation.js
+lib/node_modules/autoprefixer/lib/hacks/appearance.js
+lib/node_modules/autoprefixer/lib/hacks/autofill.js
+lib/node_modules/autoprefixer/lib/hacks/backdrop-filter.js
+lib/node_modules/autoprefixer/lib/hacks/background-clip.js
+lib/node_modules/autoprefixer/lib/hacks/background-size.js
+lib/node_modules/autoprefixer/lib/hacks/block-logical.js
+lib/node_modules/autoprefixer/lib/hacks/border-image.js
+lib/node_modules/autoprefixer/lib/hacks/border-radius.js
+lib/node_modules/autoprefixer/lib/hacks/break-props.js
+lib/node_modules/autoprefixer/lib/hacks/cross-fade.js
+lib/node_modules/autoprefixer/lib/hacks/display-flex.js
+lib/node_modules/autoprefixer/lib/hacks/display-grid.js
+lib/node_modules/autoprefixer/lib/hacks/file-selector-button.js
+lib/node_modules/autoprefixer/lib/hacks/filter-value.js
+lib/node_modules/autoprefixer/lib/hacks/filter.js
+lib/node_modules/autoprefixer/lib/hacks/flex-basis.js
+lib/node_modules/autoprefixer/lib/hacks/flex-direction.js
+lib/node_modules/autoprefixer/lib/hacks/flex-flow.js
+lib/node_modules/autoprefixer/lib/hacks/flex-grow.js
+lib/node_modules/autoprefixer/lib/hacks/flex-shrink.js
+lib/node_modules/autoprefixer/lib/hacks/flex-spec.js
+lib/node_modules/autoprefixer/lib/hacks/flex-wrap.js
+lib/node_modules/autoprefixer/lib/hacks/flex.js
+lib/node_modules/autoprefixer/lib/hacks/fullscreen.js
+lib/node_modules/autoprefixer/lib/hacks/gradient.js
+lib/node_modules/autoprefixer/lib/hacks/grid-area.js
+lib/node_modules/autoprefixer/lib/hacks/grid-column-align.js
+lib/node_modules/autoprefixer/lib/hacks/grid-end.js
+lib/node_modules/autoprefixer/lib/hacks/grid-row-align.js
+lib/node_modules/autoprefixer/lib/hacks/grid-row-column.js
+lib/node_modules/autoprefixer/lib/hacks/grid-rows-columns.js
+lib/node_modules/autoprefixer/lib/hacks/grid-start.js
+lib/node_modules/autoprefixer/lib/hacks/grid-template-areas.js
+lib/node_modules/autoprefixer/lib/hacks/grid-template.js
+lib/node_modules/autoprefixer/lib/hacks/grid-utils.js
+lib/node_modules/autoprefixer/lib/hacks/image-rendering.js
+lib/node_modules/autoprefixer/lib/hacks/image-set.js
+lib/node_modules/autoprefixer/lib/hacks/inline-logical.js
+lib/node_modules/autoprefixer/lib/hacks/intrinsic.js
+lib/node_modules/autoprefixer/lib/hacks/justify-content.js
+lib/node_modules/autoprefixer/lib/hacks/mask-border.js
+lib/node_modules/autoprefixer/lib/hacks/mask-composite.js
+lib/node_modules/autoprefixer/lib/hacks/order.js
+lib/node_modules/autoprefixer/lib/hacks/overscroll-behavior.js
+lib/node_modules/autoprefixer/lib/hacks/pixelated.js
+lib/node_modules/autoprefixer/lib/hacks/place-self.js
+lib/node_modules/autoprefixer/lib/hacks/placeholder-shown.js
+lib/node_modules/autoprefixer/lib/hacks/placeholder.js
+lib/node_modules/autoprefixer/lib/hacks/print-color-adjust.js
+lib/node_modules/autoprefixer/lib/hacks/text-decoration-skip-ink.js
+lib/node_modules/autoprefixer/lib/hacks/text-decoration.js
+lib/node_modules/autoprefixer/lib/hacks/text-emphasis-position.js
+lib/node_modules/autoprefixer/lib/hacks/transform-decl.js
+lib/node_modules/autoprefixer/lib/hacks/user-select.js
+lib/node_modules/autoprefixer/lib/hacks/writing-mode.js
+lib/node_modules/autoprefixer/lib/info.js
+lib/node_modules/autoprefixer/lib/old-selector.js
+lib/node_modules/autoprefixer/lib/old-value.js
+lib/node_modules/autoprefixer/lib/prefixer.js
+lib/node_modules/autoprefixer/lib/prefixes.js
+lib/node_modules/autoprefixer/lib/processor.js
+lib/node_modules/autoprefixer/lib/resolution.js
+lib/node_modules/autoprefixer/lib/selector.js
+lib/node_modules/autoprefixer/lib/supports.js
+lib/node_modules/autoprefixer/lib/transition.js
+lib/node_modules/autoprefixer/lib/utils.js
+lib/node_modules/autoprefixer/lib/value.js
+lib/node_modules/autoprefixer/lib/vendor.js
+lib/node_modules/autoprefixer/node_modules/.bin/browserslist
+lib/node_modules/autoprefixer/node_modules/.bin/update-browserslist-db
+lib/node_modules/autoprefixer/node_modules/browserslist/LICENSE
+lib/node_modules/autoprefixer/node_modules/browserslist/README.md
+lib/node_modules/autoprefixer/node_modules/browserslist/browser.js
+lib/node_modules/autoprefixer/node_modules/browserslist/cli.js
+lib/node_modules/autoprefixer/node_modules/browserslist/error.d.ts
+lib/node_modules/autoprefixer/node_modules/browserslist/error.js
+lib/node_modules/autoprefixer/node_modules/browserslist/index.d.ts
+lib/node_modules/autoprefixer/node_modules/browserslist/index.js
+lib/node_modules/autoprefixer/node_modules/browserslist/node.js
+lib/node_modules/autoprefixer/node_modules/browserslist/package.json
+lib/node_modules/autoprefixer/node_modules/browserslist/parse.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/LICENSE
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/README.md
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/agents.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/browserVersions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/browsers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/aac.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/abortcontroller.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ac3-ec3.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/accelerometer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/addeventlistener.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/alternate-stylesheet.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ambient-light.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/apng.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/array-find-index.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/array-find.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/array-flat.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/array-includes.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/arrow-functions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/asmjs.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/async-clipboard.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/async-functions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/atob-btoa.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/audio-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/audio.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/audiotracks.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/autofocus.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/auxclick.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/av1.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/avif.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-attachment.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-clip-text.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-img-opts.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-position-x-y.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-repeat-round-space.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/background-sync.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/battery-status.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/beacon.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/beforeafterprint.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/bigint.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/blobbuilder.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/bloburls.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/border-image.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/border-radius.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/broadcastchannel.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/brotli.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/calc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/canvas-blending.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/canvas-text.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/canvas.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ch-unit.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/chacha20-poly1305.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/channel-messaging.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/childnode-remove.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/classlist.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/clipboard.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/colr-v1.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/colr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/comparedocumentposition.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/console-basic.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/console-time.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/const.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/constraint-validation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/contenteditable.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/contentsecuritypolicy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/cookie-store-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/cors.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/createimagebitmap.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/credential-management.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/cross-document-view-transitions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/cryptography.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-all.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-anchor-positioning.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-animation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-any-link.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-appearance.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-at-counter-style.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-autofill.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-backdrop-filter.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-background-offsets.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-backgroundblendmode.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-boxshadow.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-canvas.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-caret-color.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-cascade-layers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-cascade-scope.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-case-insensitive.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-clip-path.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-color-adjust.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-color-function.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-conic-gradients.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-container-queries-style.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-container-queries.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-container-query-units.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-containment.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-content-visibility.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-counters.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-crisp-edges.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-cross-fade.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-default-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-descendant-gtgt.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-deviceadaptation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-dir-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-display-contents.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-element-function.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-env-function.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-exclusions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-featurequeries.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-file-selector-button.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-filter-function.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-filters.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-first-letter.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-first-line.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-fixed.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-focus-visible.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-focus-within.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-font-palette.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-font-rendering-controls.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-font-stretch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-gencontent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-gradients.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-grid-animation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-grid.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-hanging-punctuation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-has.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-hyphens.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-image-orientation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-image-set.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-in-out-of-range.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-initial-letter.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-initial-value.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-lch-lab.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-letter-spacing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-line-clamp.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-logical-props.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-marker-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-masks.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-matches-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-math-functions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-media-interaction.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-media-range-syntax.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-media-resolution.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-media-scripting.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-mediaqueries.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-mixblendmode.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-module-scripts.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-motion-paths.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-namespaces.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-nesting.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-not-sel-list.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-nth-child-of.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-opacity.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-optional-pseudo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-overflow-anchor.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-overflow-overlay.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-overflow.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-overscroll-behavior.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-page-break.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-paged-media.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-paint-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-placeholder-shown.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-placeholder.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-print-color-adjust.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-read-only-write.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-rebeccapurple.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-reflections.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-regions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-relative-colors.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-repeating-gradients.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-resize.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-revert-value.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-rrggbbaa.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-scroll-behavior.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-scrollbar.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-sel2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-sel3.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-selection.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-shapes.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-snappoints.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-sticky.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-subgrid.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-supports-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-table.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-align-last.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-box-trim.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-indent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-justify.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-orientation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-spacing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-text-wrap-balance.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-textshadow.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-touch-action.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-transitions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-unicode-bidi.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-unset-value.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-variables.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-when-else.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-widows-orphans.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-width-stretch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-writing-mode.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css-zoom.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-attr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-boxsizing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-colors.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-cursors-grab.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-cursors-newer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-cursors.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/css3-tabsize.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/currentcolor.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/custom-elements.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/custom-elementsv1.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/customevent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/datalist.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dataset.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/datauri.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/date-tolocaledatestring.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/declarative-shadow-dom.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/decorators.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/details.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/deviceorientation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/devicepixelratio.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dialog.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dispatchevent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dnssec.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/do-not-track.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/document-currentscript.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/document-evaluate-xpath.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/document-execcommand.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/document-policy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/document-scrollingelement.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/documenthead.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dom-manip-convenience.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dom-range.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/domcontentloaded.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dommatrix.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/download.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/dragndrop.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/element-closest.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/element-from-point.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/element-scroll-methods.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/eme.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/eot.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es5.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-class.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-generators.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-module.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-number.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6-string-includes.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/es6.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/eventsource.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/extended-system-fonts.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/feature-policy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/fetch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/fieldset-disabled.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/fileapi.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/filereader.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/filereadersync.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/filesystem.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/flac.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/flexbox-gap.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/flexbox.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/flow-root.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/focusin-focusout-events.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-family-system-ui.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-feature.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-kerning.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-loading.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-size-adjust.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-smooth.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-unicode-range.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-variant-alternates.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/font-variant-numeric.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/fontface.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/form-attribute.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/form-submit-attributes.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/form-validation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/forms.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/fullscreen.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/gamepad.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/geolocation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/getboundingclientrect.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/getcomputedstyle.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/getelementsbyclassname.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/getrandomvalues.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/gyroscope.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/hardwareconcurrency.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/hashchange.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/heif.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/hevc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/hidden.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/high-resolution-time.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/history.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/html-media-capture.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/html5semantic.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/http-live-streaming.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/http2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/http3.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/iframe-sandbox.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/iframe-seamless.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/iframe-srcdoc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/imagecapture.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ime.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/import-maps.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/imports.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/indeterminate-checkbox.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/indexeddb.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/indexeddb2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/inline-block.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/innertext.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-color.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-datetime.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-email-tel-url.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-event.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-file-accept.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-file-directory.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-file-multiple.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-inputmode.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-minlength.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-number.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-pattern.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-placeholder.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-range.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-search.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/input-selection.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/insert-adjacent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/insertadjacenthtml.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/internationalization.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/intersectionobserver-v2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/intersectionobserver.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/intl-pluralrules.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/intrinsic-width.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/jpeg2000.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/jpegxl.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/jpegxr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/json.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/justify-content-space-evenly.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-charcode.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-code.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-key.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-location.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/keyboardevent-which.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/lazyload.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/let.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-icon-png.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-icon-svg.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-modulepreload.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-preconnect.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-prefetch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-preload.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/link-rel-prerender.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/loading-lazy-attr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/localecompare.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/magnetometer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/matchesselector.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/matchmedia.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mathml.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/maxlength.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-css-backdrop-pseudo-element.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate-override.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-plaintext.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-text-decoration-color.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-text-decoration-line.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-text-decoration-shorthand.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mdn-text-decoration-style.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/media-fragments.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mediacapture-fromelement.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mediarecorder.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mediasource.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/menu.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/meta-theme-color.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/meter.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/midi.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/minmaxwh.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mp3.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mpeg-dash.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mpeg4.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/multibackgrounds.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/multicolumn.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mutation-events.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/mutationobserver.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/namevalue-storage.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/native-filesystem-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/nav-timing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/netinfo.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/notifications.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/object-entries.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/object-fit.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/object-observe.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/object-values.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/objectrtc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/offline-apps.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/offscreencanvas.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ogg-vorbis.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ogv.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ol-reversed.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/once-event-listener.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/online-status.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/opus.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/orientation-sensor.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/outline.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pad-start-end.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/page-transition-events.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pagevisibility.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/passive-event-listener.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/passkeys.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/passwordrules.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/path2d.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/payment-request.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pdf-viewer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/permissions-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/permissions-policy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/picture-in-picture.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/picture.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ping.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/png-alpha.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pointer-events.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pointer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/pointerlock.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/portals.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/prefers-color-scheme.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/prefers-reduced-motion.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/progress.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/promise-finally.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/promises.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/proximity.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/proxy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/publickeypinning.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/push-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/queryselector.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/readonly-attr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/referrer-policy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/registerprotocolhandler.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rel-noopener.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rel-noreferrer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rellist.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rem.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/requestanimationframe.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/requestidlecallback.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/resizeobserver.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/resource-timing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rest-parameters.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/rtcpeerconnection.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ruby.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/run-in.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/screen-orientation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/script-async.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/script-defer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/scrollintoview.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sdch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/selection-api.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/selectlist.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/server-timing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/serviceworkers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/setimmediate.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/shadowdom.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/shadowdomv1.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sharedarraybuffer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sharedworkers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sni.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/spdy.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/speech-recognition.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/speech-synthesis.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/spellcheck-attribute.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sql-storage.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/srcset.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/stream.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/streams.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/stricttransportsecurity.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/style-scoped.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/subresource-bundling.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/subresource-integrity.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-css.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-filters.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-fonts.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-fragment.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-html.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-html5.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-img.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg-smil.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/svg.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/sxg.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/tabindex-attr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/template-literals.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/template.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/temporal.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/testfeat.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/text-decoration.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/text-emphasis.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/text-overflow.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/text-size-adjust.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/text-stroke.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/textcontent.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/textencoder.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/tls1-1.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/tls1-2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/tls1-3.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/touch.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/transforms2d.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/transforms3d.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/trusted-types.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/ttf.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/typedarrays.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/u2f.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/unhandledrejection.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/url.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/urlsearchparams.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/use-strict.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/user-select-none.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/user-timing.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/variable-fonts.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/vector-effect.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/vibration.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/video.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/videotracks.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/view-transitions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/viewport-unit-variants.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/viewport-units.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wai-aria.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wake-lock.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-bigint.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-bulk-memory.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-extended-const.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-gc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-multi-memory.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-multi-value.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-mutable-globals.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-nontrapping-fptoint.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-reference-types.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-relaxed-simd.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-signext.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-simd.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-tail-calls.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm-threads.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wasm.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wav.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wbr-element.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/web-animation.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/web-app-manifest.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/web-bluetooth.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/web-serial.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/web-share.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webauthn.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webcodecs.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webgl.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webgl2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webgpu.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webhid.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webkit-user-drag.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webm.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webnfc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webp.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/websockets.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webtransport.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webusb.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webvr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webvtt.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webworkers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/webxr.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/will-change.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/woff.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/woff2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/word-break.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/wordwrap.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/x-doc-messaging.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/x-frame-options.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/xhr2.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/xhtml.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/xhtmlsmil.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/xml-serializer.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/features/zstd.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AX.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/AZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BB.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BJ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/BZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CV.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CX.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/CZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DJ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/DZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/EC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/EE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/EG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ER.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ES.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ET.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FJ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/FR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GB.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GP.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GQ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/GY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/HK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/HN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/HR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/HT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/HU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ID.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IQ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/IT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/JE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/JM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/JO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/JP.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KP.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/KZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LB.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LV.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/LY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ME.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ML.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MP.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MQ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MV.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MX.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/MZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NP.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/NZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/OM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/PY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/QA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/RE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/RO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/RS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/RU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/RW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SB.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SK.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ST.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SV.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/SZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TD.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TH.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TJ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TL.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TO.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TR.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TV.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/TZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/UA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/UG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/US.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/UY.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/UZ.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VC.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VG.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VI.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VN.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/VU.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/WF.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/WS.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/YE.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/YT.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ZA.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ZM.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/ZW.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-af.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-an.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-as.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-eu.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-na.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-oc.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-sa.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/data/regions/alt-ww.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/lib/statuses.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/lib/supported.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/agents.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/browserVersions.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/browsers.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/feature.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/features.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/index.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/dist/unpacker/region.js
+lib/node_modules/autoprefixer/node_modules/caniuse-lite/package.json
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/LICENSE
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/README.md
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/chromium-versions.js
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/chromium-versions.json
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/full-chromium-versions.js
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/full-chromium-versions.json
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/full-versions.js
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/full-versions.json
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/index.js
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/package.json
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/versions.js
+lib/node_modules/autoprefixer/node_modules/electron-to-chromium/versions.json
+lib/node_modules/autoprefixer/node_modules/escalade/dist/index.js
+lib/node_modules/autoprefixer/node_modules/escalade/dist/index.mjs
+lib/node_modules/autoprefixer/node_modules/escalade/index.d.mts
+lib/node_modules/autoprefixer/node_modules/escalade/index.d.ts
+lib/node_modules/autoprefixer/node_modules/escalade/license
+lib/node_modules/autoprefixer/node_modules/escalade/package.json
+lib/node_modules/autoprefixer/node_modules/escalade/readme.md
+lib/node_modules/autoprefixer/node_modules/escalade/sync/index.d.mts
+lib/node_modules/autoprefixer/node_modules/escalade/sync/index.d.ts
+lib/node_modules/autoprefixer/node_modules/escalade/sync/index.js
+lib/node_modules/autoprefixer/node_modules/escalade/sync/index.mjs
+lib/node_modules/autoprefixer/node_modules/fraction.js/LICENSE
+lib/node_modules/autoprefixer/node_modules/fraction.js/README.md
+lib/node_modules/autoprefixer/node_modules/fraction.js/bigfraction.js
+lib/node_modules/autoprefixer/node_modules/fraction.js/fraction.cjs
+lib/node_modules/autoprefixer/node_modules/fraction.js/fraction.d.ts
+lib/node_modules/autoprefixer/node_modules/fraction.js/fraction.js
+lib/node_modules/autoprefixer/node_modules/fraction.js/fraction.min.js
+lib/node_modules/autoprefixer/node_modules/fraction.js/package.json
+lib/node_modules/autoprefixer/node_modules/node-releases/LICENSE
+lib/node_modules/autoprefixer/node_modules/node-releases/README.md
+lib/node_modules/autoprefixer/node_modules/node-releases/data/processed/envs.json
+lib/node_modules/autoprefixer/node_modules/node-releases/data/release-schedule/release-schedule.json
+lib/node_modules/autoprefixer/node_modules/node-releases/package.json
+lib/node_modules/autoprefixer/node_modules/normalize-range/index.js
+lib/node_modules/autoprefixer/node_modules/normalize-range/license
+lib/node_modules/autoprefixer/node_modules/normalize-range/package.json
+lib/node_modules/autoprefixer/node_modules/normalize-range/readme.md
+lib/node_modules/autoprefixer/node_modules/picocolors/LICENSE
+lib/node_modules/autoprefixer/node_modules/picocolors/README.md
+lib/node_modules/autoprefixer/node_modules/picocolors/package.json
+lib/node_modules/autoprefixer/node_modules/picocolors/picocolors.browser.js
+lib/node_modules/autoprefixer/node_modules/picocolors/picocolors.d.ts
+lib/node_modules/autoprefixer/node_modules/picocolors/picocolors.js
+lib/node_modules/autoprefixer/node_modules/picocolors/types.d.ts
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/LICENSE
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/README.md
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/index.d.ts
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/index.js
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/parse.js
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/stringify.js
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/unit.js
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/lib/walk.js
+lib/node_modules/autoprefixer/node_modules/postcss-value-parser/package.json
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/LICENSE
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/README.md
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/check-npm-version.js
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/cli.js
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/index.d.ts
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/index.js
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/package.json
+lib/node_modules/autoprefixer/node_modules/update-browserslist-db/utils.js
+lib/node_modules/autoprefixer/package.json
+lib/node_modules/daisyui/LICENSE
+lib/node_modules/daisyui/README.md
+lib/node_modules/daisyui/base/properties.css
+lib/node_modules/daisyui/base/properties/index.js
+lib/node_modules/daisyui/base/properties/object.js
+lib/node_modules/daisyui/base/reset.css
+lib/node_modules/daisyui/base/rootcolor.css
+lib/node_modules/daisyui/base/rootcolor/index.js
+lib/node_modules/daisyui/base/rootcolor/object.js
+lib/node_modules/daisyui/base/rootscrollgutter.css
+lib/node_modules/daisyui/base/rootscrollgutter/index.js
+lib/node_modules/daisyui/base/rootscrollgutter/object.js
+lib/node_modules/daisyui/base/rootscrolllock.css
+lib/node_modules/daisyui/base/rootscrolllock/index.js
+lib/node_modules/daisyui/base/rootscrolllock/object.js
+lib/node_modules/daisyui/base/scrollbar.css
+lib/node_modules/daisyui/base/scrollbar/index.js
+lib/node_modules/daisyui/base/scrollbar/object.js
+lib/node_modules/daisyui/base/svg.css
+lib/node_modules/daisyui/base/svg/index.js
+lib/node_modules/daisyui/base/svg/object.js
+lib/node_modules/daisyui/chunks.css
+lib/node_modules/daisyui/colors/properties-extended.css
+lib/node_modules/daisyui/colors/properties.css
+lib/node_modules/daisyui/colors/responsive-extended.css
+lib/node_modules/daisyui/colors/responsive.css
+lib/node_modules/daisyui/colors/states-extended.css
+lib/node_modules/daisyui/colors/states.css
+lib/node_modules/daisyui/components/alert.css
+lib/node_modules/daisyui/components/alert/index.js
+lib/node_modules/daisyui/components/alert/object.js
+lib/node_modules/daisyui/components/avatar.css
+lib/node_modules/daisyui/components/avatar/index.js
+lib/node_modules/daisyui/components/avatar/object.js
+lib/node_modules/daisyui/components/badge.css
+lib/node_modules/daisyui/components/badge/index.js
+lib/node_modules/daisyui/components/badge/object.js
+lib/node_modules/daisyui/components/breadcrumbs.css
+lib/node_modules/daisyui/components/breadcrumbs/index.js
+lib/node_modules/daisyui/components/breadcrumbs/object.js
+lib/node_modules/daisyui/components/button.css
+lib/node_modules/daisyui/components/button/index.js
+lib/node_modules/daisyui/components/button/object.js
+lib/node_modules/daisyui/components/calendar.css
+lib/node_modules/daisyui/components/calendar/index.js
+lib/node_modules/daisyui/components/calendar/object.js
+lib/node_modules/daisyui/components/card.css
+lib/node_modules/daisyui/components/card/index.js
+lib/node_modules/daisyui/components/card/object.js
+lib/node_modules/daisyui/components/carousel.css
+lib/node_modules/daisyui/components/carousel/index.js
+lib/node_modules/daisyui/components/carousel/object.js
+lib/node_modules/daisyui/components/chat.css
+lib/node_modules/daisyui/components/chat/index.js
+lib/node_modules/daisyui/components/chat/object.js
+lib/node_modules/daisyui/components/checkbox.css
+lib/node_modules/daisyui/components/checkbox/index.js
+lib/node_modules/daisyui/components/checkbox/object.js
+lib/node_modules/daisyui/components/collapse.css
+lib/node_modules/daisyui/components/collapse/index.js
+lib/node_modules/daisyui/components/collapse/object.js
+lib/node_modules/daisyui/components/countdown.css
+lib/node_modules/daisyui/components/countdown/index.js
+lib/node_modules/daisyui/components/countdown/object.js
+lib/node_modules/daisyui/components/diff.css
+lib/node_modules/daisyui/components/diff/index.js
+lib/node_modules/daisyui/components/diff/object.js
+lib/node_modules/daisyui/components/divider.css
+lib/node_modules/daisyui/components/divider/index.js
+lib/node_modules/daisyui/components/divider/object.js
+lib/node_modules/daisyui/components/dock.css
+lib/node_modules/daisyui/components/dock/index.js
+lib/node_modules/daisyui/components/dock/object.js
+lib/node_modules/daisyui/components/drawer.css
+lib/node_modules/daisyui/components/drawer/index.js
+lib/node_modules/daisyui/components/drawer/object.js
+lib/node_modules/daisyui/components/dropdown.css
+lib/node_modules/daisyui/components/dropdown/index.js
+lib/node_modules/daisyui/components/dropdown/object.js
+lib/node_modules/daisyui/components/fieldset.css
+lib/node_modules/daisyui/components/fieldset/index.js
+lib/node_modules/daisyui/components/fieldset/object.js
+lib/node_modules/daisyui/components/fileinput.css
+lib/node_modules/daisyui/components/fileinput/index.js
+lib/node_modules/daisyui/components/fileinput/object.js
+lib/node_modules/daisyui/components/filter.css
+lib/node_modules/daisyui/components/filter/index.js
+lib/node_modules/daisyui/components/filter/object.js
+lib/node_modules/daisyui/components/footer.css
+lib/node_modules/daisyui/components/footer/index.js
+lib/node_modules/daisyui/components/footer/object.js
+lib/node_modules/daisyui/components/hero.css
+lib/node_modules/daisyui/components/hero/index.js
+lib/node_modules/daisyui/components/hero/object.js
+lib/node_modules/daisyui/components/indicator.css
+lib/node_modules/daisyui/components/indicator/index.js
+lib/node_modules/daisyui/components/indicator/object.js
+lib/node_modules/daisyui/components/input.css
+lib/node_modules/daisyui/components/input/index.js
+lib/node_modules/daisyui/components/input/object.js
+lib/node_modules/daisyui/components/kbd.css
+lib/node_modules/daisyui/components/kbd/index.js
+lib/node_modules/daisyui/components/kbd/object.js
+lib/node_modules/daisyui/components/label.css
+lib/node_modules/daisyui/components/label/index.js
+lib/node_modules/daisyui/components/label/object.js
+lib/node_modules/daisyui/components/link.css
+lib/node_modules/daisyui/components/link/index.js
+lib/node_modules/daisyui/components/link/object.js
+lib/node_modules/daisyui/components/list.css
+lib/node_modules/daisyui/components/list/index.js
+lib/node_modules/daisyui/components/list/object.js
+lib/node_modules/daisyui/components/loading.css
+lib/node_modules/daisyui/components/loading/index.js
+lib/node_modules/daisyui/components/loading/object.js
+lib/node_modules/daisyui/components/mask.css
+lib/node_modules/daisyui/components/mask/index.js
+lib/node_modules/daisyui/components/mask/object.js
+lib/node_modules/daisyui/components/menu.css
+lib/node_modules/daisyui/components/menu/index.js
+lib/node_modules/daisyui/components/menu/object.js
+lib/node_modules/daisyui/components/mockup.css
+lib/node_modules/daisyui/components/mockup/index.js
+lib/node_modules/daisyui/components/mockup/object.js
+lib/node_modules/daisyui/components/modal.css
+lib/node_modules/daisyui/components/modal/index.js
+lib/node_modules/daisyui/components/modal/object.js
+lib/node_modules/daisyui/components/navbar.css
+lib/node_modules/daisyui/components/navbar/index.js
+lib/node_modules/daisyui/components/navbar/object.js
+lib/node_modules/daisyui/components/progress.css
+lib/node_modules/daisyui/components/progress/index.js
+lib/node_modules/daisyui/components/progress/object.js
+lib/node_modules/daisyui/components/radialprogress.css
+lib/node_modules/daisyui/components/radialprogress/index.js
+lib/node_modules/daisyui/components/radialprogress/object.js
+lib/node_modules/daisyui/components/radio.css
+lib/node_modules/daisyui/components/radio/index.js
+lib/node_modules/daisyui/components/radio/object.js
+lib/node_modules/daisyui/components/range.css
+lib/node_modules/daisyui/components/range/index.js
+lib/node_modules/daisyui/components/range/object.js
+lib/node_modules/daisyui/components/rating.css
+lib/node_modules/daisyui/components/rating/index.js
+lib/node_modules/daisyui/components/rating/object.js
+lib/node_modules/daisyui/components/select.css
+lib/node_modules/daisyui/components/select/index.js
+lib/node_modules/daisyui/components/select/object.js
+lib/node_modules/daisyui/components/skeleton.css
+lib/node_modules/daisyui/components/skeleton/index.js
+lib/node_modules/daisyui/components/skeleton/object.js
+lib/node_modules/daisyui/components/stack.css
+lib/node_modules/daisyui/components/stack/index.js
+lib/node_modules/daisyui/components/stack/object.js
+lib/node_modules/daisyui/components/stat.css
+lib/node_modules/daisyui/components/stat/index.js
+lib/node_modules/daisyui/components/stat/object.js
+lib/node_modules/daisyui/components/status.css
+lib/node_modules/daisyui/components/status/index.js
+lib/node_modules/daisyui/components/status/object.js
+lib/node_modules/daisyui/components/steps.css
+lib/node_modules/daisyui/components/steps/index.js
+lib/node_modules/daisyui/components/steps/object.js
+lib/node_modules/daisyui/components/swap.css
+lib/node_modules/daisyui/components/swap/index.js
+lib/node_modules/daisyui/components/swap/object.js
+lib/node_modules/daisyui/components/tab.css
+lib/node_modules/daisyui/components/tab/index.js
+lib/node_modules/daisyui/components/tab/object.js
+lib/node_modules/daisyui/components/table.css
+lib/node_modules/daisyui/components/table/index.js
+lib/node_modules/daisyui/components/table/object.js
+lib/node_modules/daisyui/components/textarea.css
+lib/node_modules/daisyui/components/textarea/index.js
+lib/node_modules/daisyui/components/textarea/object.js
+lib/node_modules/daisyui/components/timeline.css
+lib/node_modules/daisyui/components/timeline/index.js
+lib/node_modules/daisyui/components/timeline/object.js
+lib/node_modules/daisyui/components/toast.css
+lib/node_modules/daisyui/components/toast/index.js
+lib/node_modules/daisyui/components/toast/object.js
+lib/node_modules/daisyui/components/toggle.css
+lib/node_modules/daisyui/components/toggle/index.js
+lib/node_modules/daisyui/components/toggle/object.js
+lib/node_modules/daisyui/components/tooltip.css
+lib/node_modules/daisyui/components/tooltip/index.js
+lib/node_modules/daisyui/components/tooltip/object.js
+lib/node_modules/daisyui/components/validator.css
+lib/node_modules/daisyui/components/validator/index.js
+lib/node_modules/daisyui/components/validator/object.js
+lib/node_modules/daisyui/daisyui.css
+lib/node_modules/daisyui/functions/addPrefix.js
+lib/node_modules/daisyui/functions/plugin.js
+lib/node_modules/daisyui/functions/pluginOptionsHandler.js
+lib/node_modules/daisyui/functions/themeOrder.js
+lib/node_modules/daisyui/functions/variables.js
+lib/node_modules/daisyui/imports.js
+lib/node_modules/daisyui/index.js
+lib/node_modules/daisyui/package.json
+lib/node_modules/daisyui/theme/abyss.css
+lib/node_modules/daisyui/theme/abyss/index.js
+lib/node_modules/daisyui/theme/abyss/object.js
+lib/node_modules/daisyui/theme/acid.css
+lib/node_modules/daisyui/theme/acid/index.js
+lib/node_modules/daisyui/theme/acid/object.js
+lib/node_modules/daisyui/theme/aqua.css
+lib/node_modules/daisyui/theme/aqua/index.js
+lib/node_modules/daisyui/theme/aqua/object.js
+lib/node_modules/daisyui/theme/autumn.css
+lib/node_modules/daisyui/theme/autumn/index.js
+lib/node_modules/daisyui/theme/autumn/object.js
+lib/node_modules/daisyui/theme/black.css
+lib/node_modules/daisyui/theme/black/index.js
+lib/node_modules/daisyui/theme/black/object.js
+lib/node_modules/daisyui/theme/bumblebee.css
+lib/node_modules/daisyui/theme/bumblebee/index.js
+lib/node_modules/daisyui/theme/bumblebee/object.js
+lib/node_modules/daisyui/theme/business.css
+lib/node_modules/daisyui/theme/business/index.js
+lib/node_modules/daisyui/theme/business/object.js
+lib/node_modules/daisyui/theme/caramellatte.css
+lib/node_modules/daisyui/theme/caramellatte/index.js
+lib/node_modules/daisyui/theme/caramellatte/object.js
+lib/node_modules/daisyui/theme/cmyk.css
+lib/node_modules/daisyui/theme/cmyk/index.js
+lib/node_modules/daisyui/theme/cmyk/object.js
+lib/node_modules/daisyui/theme/coffee.css
+lib/node_modules/daisyui/theme/coffee/index.js
+lib/node_modules/daisyui/theme/coffee/object.js
+lib/node_modules/daisyui/theme/corporate.css
+lib/node_modules/daisyui/theme/corporate/index.js
+lib/node_modules/daisyui/theme/corporate/object.js
+lib/node_modules/daisyui/theme/cupcake.css
+lib/node_modules/daisyui/theme/cupcake/index.js
+lib/node_modules/daisyui/theme/cupcake/object.js
+lib/node_modules/daisyui/theme/cyberpunk.css
+lib/node_modules/daisyui/theme/cyberpunk/index.js
+lib/node_modules/daisyui/theme/cyberpunk/object.js
+lib/node_modules/daisyui/theme/dark.css
+lib/node_modules/daisyui/theme/dark/index.js
+lib/node_modules/daisyui/theme/dark/object.js
+lib/node_modules/daisyui/theme/dim.css
+lib/node_modules/daisyui/theme/dim/index.js
+lib/node_modules/daisyui/theme/dim/object.js
+lib/node_modules/daisyui/theme/dracula.css
+lib/node_modules/daisyui/theme/dracula/index.js
+lib/node_modules/daisyui/theme/dracula/object.js
+lib/node_modules/daisyui/theme/emerald.css
+lib/node_modules/daisyui/theme/emerald/index.js
+lib/node_modules/daisyui/theme/emerald/object.js
+lib/node_modules/daisyui/theme/fantasy.css
+lib/node_modules/daisyui/theme/fantasy/index.js
+lib/node_modules/daisyui/theme/fantasy/object.js
+lib/node_modules/daisyui/theme/forest.css
+lib/node_modules/daisyui/theme/forest/index.js
+lib/node_modules/daisyui/theme/forest/object.js
+lib/node_modules/daisyui/theme/garden.css
+lib/node_modules/daisyui/theme/garden/index.js
+lib/node_modules/daisyui/theme/garden/object.js
+lib/node_modules/daisyui/theme/halloween.css
+lib/node_modules/daisyui/theme/halloween/index.js
+lib/node_modules/daisyui/theme/halloween/object.js
+lib/node_modules/daisyui/theme/index.js
+lib/node_modules/daisyui/theme/lemonade.css
+lib/node_modules/daisyui/theme/lemonade/index.js
+lib/node_modules/daisyui/theme/lemonade/object.js
+lib/node_modules/daisyui/theme/light.css
+lib/node_modules/daisyui/theme/light/index.js
+lib/node_modules/daisyui/theme/light/object.js
+lib/node_modules/daisyui/theme/lofi.css
+lib/node_modules/daisyui/theme/lofi/index.js
+lib/node_modules/daisyui/theme/lofi/object.js
+lib/node_modules/daisyui/theme/luxury.css
+lib/node_modules/daisyui/theme/luxury/index.js
+lib/node_modules/daisyui/theme/luxury/object.js
+lib/node_modules/daisyui/theme/night.css
+lib/node_modules/daisyui/theme/night/index.js
+lib/node_modules/daisyui/theme/night/object.js
+lib/node_modules/daisyui/theme/nord.css
+lib/node_modules/daisyui/theme/nord/index.js
+lib/node_modules/daisyui/theme/nord/object.js
+lib/node_modules/daisyui/theme/object.d.ts
+lib/node_modules/daisyui/theme/object.js
+lib/node_modules/daisyui/theme/pastel.css
+lib/node_modules/daisyui/theme/pastel/index.js
+lib/node_modules/daisyui/theme/pastel/object.js
+lib/node_modules/daisyui/theme/retro.css
+lib/node_modules/daisyui/theme/retro/index.js
+lib/node_modules/daisyui/theme/retro/object.js
+lib/node_modules/daisyui/theme/silk.css
+lib/node_modules/daisyui/theme/silk/index.js
+lib/node_modules/daisyui/theme/silk/object.js
+lib/node_modules/daisyui/theme/sunset.css
+lib/node_modules/daisyui/theme/sunset/index.js
+lib/node_modules/daisyui/theme/sunset/object.js
+lib/node_modules/daisyui/theme/synthwave.css
+lib/node_modules/daisyui/theme/synthwave/index.js
+lib/node_modules/daisyui/theme/synthwave/object.js
+lib/node_modules/daisyui/theme/valentine.css
+lib/node_modules/daisyui/theme/valentine/index.js
+lib/node_modules/daisyui/theme/valentine/object.js
+lib/node_modules/daisyui/theme/winter.css
+lib/node_modules/daisyui/theme/winter/index.js
+lib/node_modules/daisyui/theme/winter/object.js
+lib/node_modules/daisyui/theme/wireframe.css
+lib/node_modules/daisyui/theme/wireframe/index.js
+lib/node_modules/daisyui/theme/wireframe/object.js
+lib/node_modules/daisyui/themes.css
+lib/node_modules/daisyui/utilities/glass.css
+lib/node_modules/daisyui/utilities/glass/index.js
+lib/node_modules/daisyui/utilities/glass/object.js
+lib/node_modules/daisyui/utilities/join.css
+lib/node_modules/daisyui/utilities/join/index.js
+lib/node_modules/daisyui/utilities/join/object.js
+lib/node_modules/daisyui/utilities/radius.css
+lib/node_modules/daisyui/utilities/radius/index.js
+lib/node_modules/daisyui/utilities/radius/object.js
+lib/node_modules/daisyui/utilities/typography.css
+lib/node_modules/daisyui/utilities/typography/index.js
+lib/node_modules/daisyui/utilities/typography/object.js
+lib/node_modules/postcss/LICENSE
+lib/node_modules/postcss/README.md
+lib/node_modules/postcss/lib/at-rule.d.ts
+lib/node_modules/postcss/lib/at-rule.js
+lib/node_modules/postcss/lib/comment.d.ts
+lib/node_modules/postcss/lib/comment.js
+lib/node_modules/postcss/lib/container.d.ts
+lib/node_modules/postcss/lib/container.js
+lib/node_modules/postcss/lib/css-syntax-error.d.ts
+lib/node_modules/postcss/lib/css-syntax-error.js
+lib/node_modules/postcss/lib/declaration.d.ts
+lib/node_modules/postcss/lib/declaration.js
+lib/node_modules/postcss/lib/document.d.ts
+lib/node_modules/postcss/lib/document.js
+lib/node_modules/postcss/lib/fromJSON.d.ts
+lib/node_modules/postcss/lib/fromJSON.js
+lib/node_modules/postcss/lib/input.d.ts
+lib/node_modules/postcss/lib/input.js
+lib/node_modules/postcss/lib/lazy-result.d.ts
+lib/node_modules/postcss/lib/lazy-result.js
+lib/node_modules/postcss/lib/list.d.ts
+lib/node_modules/postcss/lib/list.js
+lib/node_modules/postcss/lib/map-generator.js
+lib/node_modules/postcss/lib/no-work-result.d.ts
+lib/node_modules/postcss/lib/no-work-result.js
+lib/node_modules/postcss/lib/node.d.ts
+lib/node_modules/postcss/lib/node.js
+lib/node_modules/postcss/lib/parse.d.ts
+lib/node_modules/postcss/lib/parse.js
+lib/node_modules/postcss/lib/parser.js
+lib/node_modules/postcss/lib/postcss.d.mts
+lib/node_modules/postcss/lib/postcss.d.ts
+lib/node_modules/postcss/lib/postcss.js
+lib/node_modules/postcss/lib/postcss.mjs
+lib/node_modules/postcss/lib/previous-map.d.ts
+lib/node_modules/postcss/lib/previous-map.js
+lib/node_modules/postcss/lib/processor.d.ts
+lib/node_modules/postcss/lib/processor.js
+lib/node_modules/postcss/lib/result.d.ts
+lib/node_modules/postcss/lib/result.js
+lib/node_modules/postcss/lib/root.d.ts
+lib/node_modules/postcss/lib/root.js
+lib/node_modules/postcss/lib/rule.d.ts
+lib/node_modules/postcss/lib/rule.js
+lib/node_modules/postcss/lib/stringifier.d.ts
+lib/node_modules/postcss/lib/stringifier.js
+lib/node_modules/postcss/lib/stringify.d.ts
+lib/node_modules/postcss/lib/stringify.js
+lib/node_modules/postcss/lib/symbols.js
+lib/node_modules/postcss/lib/terminal-highlight.js
+lib/node_modules/postcss/lib/tokenize.js
+lib/node_modules/postcss/lib/warn-once.js
+lib/node_modules/postcss/lib/warning.d.ts
+lib/node_modules/postcss/lib/warning.js
+lib/node_modules/postcss/node_modules/.bin/nanoid
+lib/node_modules/postcss/node_modules/nanoid/LICENSE
+lib/node_modules/postcss/node_modules/nanoid/README.md
+lib/node_modules/postcss/node_modules/nanoid/async/index.browser.cjs
+lib/node_modules/postcss/node_modules/nanoid/async/index.browser.js
+lib/node_modules/postcss/node_modules/nanoid/async/index.cjs
+lib/node_modules/postcss/node_modules/nanoid/async/index.d.ts
+lib/node_modules/postcss/node_modules/nanoid/async/index.js
+lib/node_modules/postcss/node_modules/nanoid/async/index.native.js
+lib/node_modules/postcss/node_modules/nanoid/async/package.json
+lib/node_modules/postcss/node_modules/nanoid/bin/nanoid.cjs
+lib/node_modules/postcss/node_modules/nanoid/index.browser.cjs
+lib/node_modules/postcss/node_modules/nanoid/index.browser.js
+lib/node_modules/postcss/node_modules/nanoid/index.cjs
+lib/node_modules/postcss/node_modules/nanoid/index.d.cts
+lib/node_modules/postcss/node_modules/nanoid/index.d.ts
+lib/node_modules/postcss/node_modules/nanoid/index.js
+lib/node_modules/postcss/node_modules/nanoid/nanoid.js
+lib/node_modules/postcss/node_modules/nanoid/non-secure/index.cjs
+lib/node_modules/postcss/node_modules/nanoid/non-secure/index.d.ts
+lib/node_modules/postcss/node_modules/nanoid/non-secure/index.js
+lib/node_modules/postcss/node_modules/nanoid/non-secure/package.json
+lib/node_modules/postcss/node_modules/nanoid/package.json
+lib/node_modules/postcss/node_modules/nanoid/url-alphabet/index.cjs
+lib/node_modules/postcss/node_modules/nanoid/url-alphabet/index.js
+lib/node_modules/postcss/node_modules/nanoid/url-alphabet/package.json
+lib/node_modules/postcss/node_modules/picocolors/LICENSE
+lib/node_modules/postcss/node_modules/picocolors/README.md
+lib/node_modules/postcss/node_modules/picocolors/package.json
+lib/node_modules/postcss/node_modules/picocolors/picocolors.browser.js
+lib/node_modules/postcss/node_modules/picocolors/picocolors.d.ts
+lib/node_modules/postcss/node_modules/picocolors/picocolors.js
+lib/node_modules/postcss/node_modules/picocolors/types.d.ts
+lib/node_modules/postcss/node_modules/source-map-js/LICENSE
+lib/node_modules/postcss/node_modules/source-map-js/README.md
+lib/node_modules/postcss/node_modules/source-map-js/lib/array-set.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/base64-vlq.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/base64.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/binary-search.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/mapping-list.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/quick-sort.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-map-consumer.d.ts
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-map-consumer.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-map-generator.d.ts
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-map-generator.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-node.d.ts
+lib/node_modules/postcss/node_modules/source-map-js/lib/source-node.js
+lib/node_modules/postcss/node_modules/source-map-js/lib/util.js
+lib/node_modules/postcss/node_modules/source-map-js/package.json
+lib/node_modules/postcss/node_modules/source-map-js/source-map.d.ts
+lib/node_modules/postcss/node_modules/source-map-js/source-map.js
+lib/node_modules/postcss/package.json
+lib/node_modules/tailwindcss/LICENSE
+lib/node_modules/tailwindcss/README.md
+lib/node_modules/tailwindcss/dist/chunk-E562WLSY.mjs
+lib/node_modules/tailwindcss/dist/chunk-G32FJCSR.mjs
+lib/node_modules/tailwindcss/dist/chunk-HTB5LLOP.mjs
+lib/node_modules/tailwindcss/dist/colors-b_6i0Oi7.d.ts
+lib/node_modules/tailwindcss/dist/colors.d.mts
+lib/node_modules/tailwindcss/dist/colors.d.ts
+lib/node_modules/tailwindcss/dist/colors.js
+lib/node_modules/tailwindcss/dist/colors.mjs
+lib/node_modules/tailwindcss/dist/default-theme.d.mts
+lib/node_modules/tailwindcss/dist/default-theme.d.ts
+lib/node_modules/tailwindcss/dist/default-theme.js
+lib/node_modules/tailwindcss/dist/default-theme.mjs
+lib/node_modules/tailwindcss/dist/flatten-color-palette.d.mts
+lib/node_modules/tailwindcss/dist/flatten-color-palette.d.ts
+lib/node_modules/tailwindcss/dist/flatten-color-palette.js
+lib/node_modules/tailwindcss/dist/flatten-color-palette.mjs
+lib/node_modules/tailwindcss/dist/lib.d.mts
+lib/node_modules/tailwindcss/dist/lib.d.ts
+lib/node_modules/tailwindcss/dist/lib.js
+lib/node_modules/tailwindcss/dist/lib.mjs
+lib/node_modules/tailwindcss/dist/plugin.d.mts
+lib/node_modules/tailwindcss/dist/plugin.d.ts
+lib/node_modules/tailwindcss/dist/plugin.js
+lib/node_modules/tailwindcss/dist/plugin.mjs
+lib/node_modules/tailwindcss/dist/resolve-config-BIFUA2FY.d.ts
+lib/node_modules/tailwindcss/dist/resolve-config-QUZ9b-Gn.d.mts
+lib/node_modules/tailwindcss/dist/types-B254mqw1.d.mts
+lib/node_modules/tailwindcss/index.css
+lib/node_modules/tailwindcss/package.json
+lib/node_modules/tailwindcss/preflight.css
+lib/node_modules/tailwindcss/theme.css
+lib/node_modules/tailwindcss/utilities.css
diff --git a/www/wt/Makefile b/www/wt/Makefile
index 336427db5ed4..573339f983d3 100644
--- a/www/wt/Makefile
+++ b/www/wt/Makefile
@@ -1,6 +1,5 @@
PORTNAME= wt
-DISTVERSION= 4.11.3
-PORTREVISION= 1
+DISTVERSION= 4.11.4
CATEGORIES= www
MAINTAINER= info@babaei.net
diff --git a/www/wt/distinfo b/www/wt/distinfo
index bcce7578e0b5..f63c215d2b0f 100644
--- a/www/wt/distinfo
+++ b/www/wt/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1740047837
-SHA256 (emweb-wt-4.11.3_GH0.tar.gz) = b0093b938767367a8bed76e82ab5522df5c6dee2c4cd8feca5c47bb43755eccc
-SIZE (emweb-wt-4.11.3_GH0.tar.gz) = 10601583
+TIMESTAMP = 1753078030
+SHA256 (emweb-wt-4.11.4_GH0.tar.gz) = b42b9818e4c8ab8af835b0c88bda5c4f71ccfb38fd8baf90648064b0544eb564
+SIZE (emweb-wt-4.11.4_GH0.tar.gz) = 10616646
diff --git a/www/wt/pkg-plist b/www/wt/pkg-plist
index 1e0d263822e9..cdb08afb829c 100644
--- a/www/wt/pkg-plist
+++ b/www/wt/pkg-plist
@@ -316,6 +316,7 @@ include/Wt/WPopupMenuItem.h
include/Wt/WPopupWidget.h
include/Wt/WProgressBar.h
include/Wt/WPushButton.h
+include/Wt/WQrCode.h
include/Wt/WRadioButton.h
include/Wt/WRandom.h
include/Wt/WRasterImage.h
@@ -395,6 +396,7 @@ include/Wt/cpp17/any/README.md
include/Wt/cpp17/any/any.hpp
include/Wt/cpp20/date.hpp
include/Wt/cpp20/tz.hpp
+include/thirdparty/qrcodegen/QrCode.hpp
lib/cmake/wt/wt-config-version.cmake
lib/cmake/wt/wt-config.cmake
%%DBO%%lib/cmake/wt/wt-target-dbo-%%CMAKE_BUILD_TYPE%%.cmake
diff --git a/www/xist/Makefile b/www/xist/Makefile
index 13f140f0276a..e88a6233b951 100644
--- a/www/xist/Makefile
+++ b/www/xist/Makefile
@@ -1,6 +1,6 @@
PORTNAME= xist
PORTVERSION= 5.34
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www python
MASTER_SITES= PYPI \
http://ftp.livinglogic.de/xist/
@@ -14,7 +14,7 @@ WWW= http://www.livinglogic.de/Python/xist/
LICENSE= MIT
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssutils>=1.0,1:www/py-cssutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml>=3.4:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>=3.4:devel/py-lxml5@${PY_FLAVOR} \
${PY_PILLOW}
USES= python tar:bzip2
diff --git a/x11-fm/doublecmd/Makefile b/x11-fm/doublecmd/Makefile
index fbc2bd188176..b986aeda08ec 100644
--- a/x11-fm/doublecmd/Makefile
+++ b/x11-fm/doublecmd/Makefile
@@ -1,14 +1,13 @@
PORTNAME= doublecmd
-PORTVERSION= 1.1.24
+PORTVERSION= 1.1.26
DISTVERSIONPREFIX= v
-PORTREVISION= 1
CATEGORIES= x11-fm
PKGNAMESUFFIX= ${LAZARUS_PKGNAMESUFFIX}
-PATCH_SITES+= https://github.com/doublecmd/doublecmd/commit/
-PATCHFILES+= 11f8742da2464570b588865fffe6090107a7f543.patch:-p1
-PATCHFILES+= e38813f8d5a1c0ea9696a9b8c4f5580b17681627.patch:-p1
-PATCHFILES+= 68d1c6e4e1dc0dd16755ee6209bf21bdf95c7690.patch:-p1
+#PATCH_SITES+= https://github.com/doublecmd/doublecmd/commit/
+#PATCHFILES+= 11f8742da2464570b588865fffe6090107a7f543.patch:-p1
+#PATCHFILES+= e38813f8d5a1c0ea9696a9b8c4f5580b17681627.patch:-p1
+#PATCHFILES+= 68d1c6e4e1dc0dd16755ee6209bf21bdf95c7690.patch:-p1
MAINTAINER= fluffy@FreeBSD.org
COMMENT= Total Commander like file manager for the X Window System
@@ -16,7 +15,7 @@ WWW= https://doublecmd.sourceforge.io
LICENSE= GPLv2
-ONLY_FOR_ARCHS= i386 amd64
+ONLY_FOR_ARCHS= i386 amd64 aarch64
gtk2_CONFLICTS_INSTALL= ${PORTNAME}-qt5 ${PORTNAME}-qt6
qt5_CONFLICTS_INSTALL= ${PORTNAME}-gtk2 ${PORTNAME}-qt6
@@ -29,8 +28,9 @@ GH_PROJECT= doublecmd.github.io:help
GH_TAGNAME= ${DISTVERSIONPREFIX}${DCHELP}:help
USE_GNOME= cairo glib20
USE_XORG= x11
+USE_BINUTILS= yes
-DCHELP= 1.1.24
+DCHELP= 1.1.26
LAZARUS_PROJECT_FILES= components/chsdet/chsdet.lpk \
components/multithreadprocs/multithreadprocslaz.lpk \
@@ -46,6 +46,7 @@ LAZBUILD_ARGS= --pcp=${WRKSRC}/tmppcp -d
LAZARUS_NO_FLAVORS= gtk3
MAKE_ENV+= LDVER=ld.bfd # for DragonFly
+#MAKE_ENV+= CPU_TARGET=x86_64
PLIST= ${WRKDIR}/pkg-plist
PORTDOCS= *
diff --git a/x11-fm/doublecmd/distinfo b/x11-fm/doublecmd/distinfo
index bd0c696f262b..beaf4ead59a8 100644
--- a/x11-fm/doublecmd/distinfo
+++ b/x11-fm/doublecmd/distinfo
@@ -1,11 +1,5 @@
-TIMESTAMP = 1745258949
-SHA256 (doublecmd-doublecmd-v1.1.24_GH0.tar.gz) = 507d60055642b2cb89bccc4838b67bc9e4127003335c83bda1d9b3733c67d502
-SIZE (doublecmd-doublecmd-v1.1.24_GH0.tar.gz) = 9493483
-SHA256 (doublecmd-doublecmd.github.io-v1.1.24_GH0.tar.gz) = 847f84d7cfbf128a6126585e12d77f81e25574d269a7a1e4779c25e6d7d8cbc1
-SIZE (doublecmd-doublecmd.github.io-v1.1.24_GH0.tar.gz) = 8014377
-SHA256 (11f8742da2464570b588865fffe6090107a7f543.patch) = 789767b9a578ae5b98275bf7e740adcb3a3c57ad295c715fe00b6708efd81651
-SIZE (11f8742da2464570b588865fffe6090107a7f543.patch) = 3002
-SHA256 (e38813f8d5a1c0ea9696a9b8c4f5580b17681627.patch) = 4962452c6dc28ae1236e6b4579359a61636201b573b8749b70a44f0658003b46
-SIZE (e38813f8d5a1c0ea9696a9b8c4f5580b17681627.patch) = 5257
-SHA256 (68d1c6e4e1dc0dd16755ee6209bf21bdf95c7690.patch) = 451dc8718c99a0f370afd1484581ca4d26c11f1aed011390551666c05b86b9b3
-SIZE (68d1c6e4e1dc0dd16755ee6209bf21bdf95c7690.patch) = 9140
+TIMESTAMP = 1749541859
+SHA256 (doublecmd-doublecmd-v1.1.26_GH0.tar.gz) = cb16d73b9f130f2df15f032bf791ecb9b89301cc78ef8b88e265134d2ad2c1ae
+SIZE (doublecmd-doublecmd-v1.1.26_GH0.tar.gz) = 9535946
+SHA256 (doublecmd-doublecmd.github.io-v1.1.26_GH0.tar.gz) = c6e176bc4c8f0e9cefd42d15088533e7850eb53719e946c5b3c8980a7391bf23
+SIZE (doublecmd-doublecmd.github.io-v1.1.26_GH0.tar.gz) = 8015248
diff --git a/x11-fm/doublecmd/files/patch-src_platform_unix_sdl2.pas b/x11-fm/doublecmd/files/patch-src_platform_unix_sdl2.pas
deleted file mode 100644
index a1356db13d36..000000000000
--- a/x11-fm/doublecmd/files/patch-src_platform_unix_sdl2.pas
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/platform/unix/sdl2.pas.orig 2025-01-24 23:49:21 UTC
-+++ src/platform/unix/sdl2.pas
-@@ -122,7 +122,7 @@ begin
- Exit(False);
- end;
- end;
-- Result:= BeginThread(@Play, AudioData) > 0;
-+ Result:= BeginThread(@Play, AudioData) > TThreadID(0);
- end;
-
- const
diff --git a/x11-themes/kf6-breeze-icons/Makefile b/x11-themes/kf6-breeze-icons/Makefile
index 26709f5114f4..5fe9828aa24c 100644
--- a/x11-themes/kf6-breeze-icons/Makefile
+++ b/x11-themes/kf6-breeze-icons/Makefile
@@ -1,12 +1,12 @@
PORTNAME= breeze-icons
DISTVERSION= ${KDE_FRAMEWORKS_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11-themes kde kde-frameworks
MAINTAINER= kde@FreeBSD.org
COMMENT= Default KDE icon theme
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.9.3:devel/py-lxml@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.9.3:devel/py-lxml5@${PY_FLAVOR}
USES= cmake gl kde:6 qt:6 shebangfix tar:xz \
python:build
diff --git a/x11/cinnamon/Makefile b/x11/cinnamon/Makefile
index be6a5c8f2327..26fc204fd275 100644
--- a/x11/cinnamon/Makefile
+++ b/x11/cinnamon/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cinnamon
DISTVERSION= 6.4.10
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= x11 gnome
DIST_SUBDIR= gnome
@@ -32,7 +32,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus@${PY_FLAVOR} \
cinnamon-settings-daemon>0:sysutils/cinnamon-settings-daemon \
nemo:x11-fm/nemo \
${PY_PILLOW} \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyinotify>0:devel/py-pyinotify@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-xapp>0:x11/py-python-xapp@${PY_FLAVOR} \
diff --git a/x11/lightdm/Makefile b/x11/lightdm/Makefile
index dac21ec5c77b..94ee2c635347 100644
--- a/x11/lightdm/Makefile
+++ b/x11/lightdm/Makefile
@@ -63,7 +63,7 @@ VAPI_USE= GNOME=introspection:build
VAPI_CONFIGURE_ENABLE= vala
post-patch:
- @${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},' \
+ @${REINPLACE_CMD} -i "" -e 's,%%PREFIX%%,${PREFIX},' \
${WRKSRC}/data/lightdm.1 \
${WRKSRC}/data/lightdm.conf
diff --git a/x11/nwg-bar/Makefile b/x11/nwg-bar/Makefile
index a977beccdcba..dc3aa7eadb0c 100644
--- a/x11/nwg-bar/Makefile
+++ b/x11/nwg-bar/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-bar
DISTVERSIONPREFIX= v
DISTVERSION= 0.1.6
-PORTREVISION= 12
+PORTREVISION= 13
CATEGORIES= x11 wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= GTK3-based button bar for sway and other wlroots-based compositors
WWW= https://github.com/nwg-piotr/nwg-bar
diff --git a/x11/nwg-dock-hyprland/Makefile b/x11/nwg-dock-hyprland/Makefile
index de71a642ad9b..76172d0f9960 100644
--- a/x11/nwg-dock-hyprland/Makefile
+++ b/x11/nwg-dock-hyprland/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-dock-hyprland
DISTVERSIONPREFIX= v
DISTVERSION= 0.4.3
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= x11
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= GTK3-based dock for Hyprland
WWW= https://github.com/nwg-piotr/nwg-dock-hyprland
diff --git a/x11/nwg-dock/Makefile b/x11/nwg-dock/Makefile
index 2baba1d7828b..6a8314bb21bd 100644
--- a/x11/nwg-dock/Makefile
+++ b/x11/nwg-dock/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-dock
DISTVERSIONPREFIX= v
DISTVERSION= 0.4.3
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= x11
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= GTK3-based dock for sway
WWW= https://github.com/nwg-piotr/nwg-dock
diff --git a/x11/nwg-drawer/Makefile b/x11/nwg-drawer/Makefile
index 9722f89d7b91..d3509e25abda 100644
--- a/x11/nwg-drawer/Makefile
+++ b/x11/nwg-drawer/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-drawer
DISTVERSIONPREFIX= v
DISTVERSION= 0.6.3
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= x11 wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= Application drawer for sway and other wlroots compositors
WWW= https://github.com/nwg-piotr/nwg-drawer
diff --git a/x11/nwg-launchers/Makefile b/x11/nwg-launchers/Makefile
index e54118b68287..598fd127a20f 100644
--- a/x11/nwg-launchers/Makefile
+++ b/x11/nwg-launchers/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-launchers
DISTVERSIONPREFIX= v
DISTVERSION= 0.7.1.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= GTK-based launchers: application grid, button bar, dmenu for sway and other window managers
WWW= https://github.com/nwg-piotr/nwg-launchers
diff --git a/x11/nwg-look/Makefile b/x11/nwg-look/Makefile
index 4fd302264f85..98cf5210d00e 100644
--- a/x11/nwg-look/Makefile
+++ b/x11/nwg-look/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-look
DISTVERSIONPREFIX= v
DISTVERSION= 1.0.3
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= x11 wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= GTK settings editor adapted to work in the wlroots environment
WWW= https://github.com/nwg-piotr/nwg-look
diff --git a/x11/nwg-menu/Makefile b/x11/nwg-menu/Makefile
index d4c1d87707dd..8f3e5bd5fa0b 100644
--- a/x11/nwg-menu/Makefile
+++ b/x11/nwg-menu/Makefile
@@ -1,10 +1,10 @@
PORTNAME= nwg-menu
DISTVERSIONPREFIX= v
DISTVERSION= 0.1.7
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= x11 wayland
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= tagattie@FreeBSD.org
COMMENT= MenuStart plugin to nwg-panel, also capable of working standalone
WWW= https://github.com/nwg-piotr/nwg-menu