diff options
Diffstat (limited to 'www')
1539 files changed, 41992 insertions, 8754 deletions
diff --git a/www/Makefile b/www/Makefile index 8cebe5a998ff..2fb285c57633 100644 --- a/www/Makefile +++ b/www/Makefile @@ -324,6 +324,8 @@ SUBDIR += links SUBDIR += links1 SUBDIR += linux-c7-qtwebkit + SUBDIR += linux-chrome + SUBDIR += linux-rl9-libnghttp2 SUBDIR += linux-widevine-cdm SUBDIR += litmus SUBDIR += ljdeps @@ -422,7 +424,6 @@ SUBDIR += mod_scgi SUBDIR += mod_security SUBDIR += mod_setenvifplus - SUBDIR += mod_tidy SUBDIR += mod_umask SUBDIR += mod_webauth SUBDIR += mod_webkit @@ -474,6 +475,7 @@ SUBDIR += node18 SUBDIR += node20 SUBDIR += node21 + SUBDIR += node22 SUBDIR += nostromo SUBDIR += novnc SUBDIR += novnc-websockify @@ -483,6 +485,7 @@ SUBDIR += npm-node18 SUBDIR += npm-node20 SUBDIR += npm-node21 + SUBDIR += npm-node22 SUBDIR += oauth2-proxy SUBDIR += obhttpd SUBDIR += offpunk @@ -492,6 +495,7 @@ SUBDIR += onionshare-cli SUBDIR += onlyoffice-documentserver SUBDIR += opencart + SUBDIR += openemr SUBDIR += openresty SUBDIR += orangehrm SUBDIR += osrm-backend @@ -1473,6 +1477,7 @@ SUBDIR += py-cachelib SUBDIR += py-caldav SUBDIR += py-channels + SUBDIR += py-channels-redis SUBDIR += py-cheroot SUBDIR += py-cherrypy SUBDIR += py-cinemagoer @@ -1487,12 +1492,8 @@ SUBDIR += py-daphne SUBDIR += py-dj-database-url SUBDIR += py-dj42-channels - SUBDIR += py-dj42-channels-redis SUBDIR += py-dj42-django-allauth - SUBDIR += py-dj42-django-auditlog SUBDIR += py-dj42-django-auth-ldap - SUBDIR += py-dj42-django-celery-results - SUBDIR += py-dj42-django-compression-middleware SUBDIR += py-dj42-django-cors-headers SUBDIR += py-dj42-django-crispy-forms SUBDIR += py-dj42-django-debug-toolbar @@ -1503,7 +1504,6 @@ SUBDIR += py-dj42-django-js-asset SUBDIR += py-dj42-django-modelcluster SUBDIR += py-dj42-django-mptt - SUBDIR += py-dj42-django-multiselectfield SUBDIR += py-dj42-django-otp SUBDIR += py-dj42-django-permissionedforms SUBDIR += py-dj42-django-prometheus @@ -1515,16 +1515,15 @@ SUBDIR += py-dj42-django-treebeard SUBDIR += py-dj42-djangoql SUBDIR += py-dj42-djangorestframework - SUBDIR += py-dj42-djangorestframework-guardian SUBDIR += py-dj42-drf-spectacular SUBDIR += py-dj42-drf-spectacular-sidecar - SUBDIR += py-dj42-drf-writable-nested SUBDIR += py-django-admin-rangefilter SUBDIR += py-django-advanced-filters SUBDIR += py-django-allauth SUBDIR += py-django-annoying SUBDIR += py-django-appconf SUBDIR += py-django-assets + SUBDIR += py-django-auditlog SUBDIR += py-django-auth-ldap SUBDIR += py-django-autocomplete-light SUBDIR += py-django-bakery @@ -1535,10 +1534,12 @@ SUBDIR += py-django-bootstrap4 SUBDIR += py-django-braces SUBDIR += py-django-cacheops + SUBDIR += py-django-celery-results SUBDIR += py-django-choices-field SUBDIR += py-django-ckeditor-5 SUBDIR += py-django-classy-tags SUBDIR += py-django-cms + SUBDIR += py-django-compression-middleware SUBDIR += py-django-configurations SUBDIR += py-django-constance SUBDIR += py-django-contact-form @@ -1551,7 +1552,6 @@ SUBDIR += py-django-csp SUBDIR += py-django-debreach SUBDIR += py-django-debug-toolbar - SUBDIR += py-django-dpaste SUBDIR += py-django-extensions SUBDIR += py-django-filer SUBDIR += py-django-filter @@ -1579,6 +1579,7 @@ SUBDIR += py-django-model-utils SUBDIR += py-django-modelcluster SUBDIR += py-django-mptt + SUBDIR += py-django-multiselectfield SUBDIR += py-django-netfields SUBDIR += py-django-object-actions SUBDIR += py-django-otp @@ -1633,11 +1634,13 @@ SUBDIR += py-djangorestframework SUBDIR += py-djangorestframework-csv SUBDIR += py-djangorestframework-filters + SUBDIR += py-djangorestframework-guardian SUBDIR += py-djangorestframework-xml SUBDIR += py-djangosaml2 SUBDIR += py-draftjs-exporter SUBDIR += py-drf-spectacular SUBDIR += py-drf-spectacular-sidecar + SUBDIR += py-drf-writable-nested SUBDIR += py-drf-yasg SUBDIR += py-dropbox SUBDIR += py-dtflickr @@ -1964,6 +1967,16 @@ SUBDIR += rubygem-bluecloth SUBDIR += rubygem-bootstrap-sass SUBDIR += rubygem-browser + SUBDIR += rubygem-browser5 + SUBDIR += rubygem-bullet_train + SUBDIR += rubygem-bullet_train-fields + SUBDIR += rubygem-bullet_train-has_uuid + SUBDIR += rubygem-bullet_train-roles + SUBDIR += rubygem-bullet_train-routes + SUBDIR += rubygem-bullet_train-scope_validator + SUBDIR += rubygem-bullet_train-super_load_and_authorize_resource + SUBDIR += rubygem-bullet_train-themes + SUBDIR += rubygem-cable_ready SUBDIR += rubygem-cal-heatmap-rails SUBDIR += rubygem-carrierwave SUBDIR += rubygem-carrierwave1 @@ -1972,6 +1985,7 @@ SUBDIR += rubygem-chosen-rails SUBDIR += rubygem-chromedriver-helper SUBDIR += rubygem-circuitbox + SUBDIR += rubygem-cloudinary SUBDIR += rubygem-cookiejar SUBDIR += rubygem-crass SUBDIR += rubygem-cssbundling-rails @@ -2064,6 +2078,7 @@ SUBDIR += rubygem-http_router SUBDIR += rubygem-httparty SUBDIR += rubygem-httparty020 + SUBDIR += rubygem-httparty021 SUBDIR += rubygem-httpclient SUBDIR += rubygem-httpi SUBDIR += rubygem-hurley @@ -2156,6 +2171,7 @@ SUBDIR += rubygem-passenger SUBDIR += rubygem-patron SUBDIR += rubygem-platform-api + SUBDIR += rubygem-possessive SUBDIR += rubygem-propshaft SUBDIR += rubygem-propshaft-rails70 SUBDIR += rubygem-protocol-hpack @@ -2235,6 +2251,7 @@ SUBDIR += rubygem-responders-rails60 SUBDIR += rubygem-responders-rails61 SUBDIR += rubygem-responders-rails70 + SUBDIR += rubygem-responders-rails71 SUBDIR += rubygem-rest-client SUBDIR += rubygem-rfacebook SUBDIR += rubygem-rfeedfinder @@ -2257,6 +2274,7 @@ SUBDIR += rubygem-select2-rails SUBDIR += rubygem-selenium-webdriver SUBDIR += rubygem-semantic-ui-sass + SUBDIR += rubygem-showcase-rails SUBDIR += rubygem-simple-rss SUBDIR += rubygem-sinatra SUBDIR += rubygem-sinatra-contrib @@ -2368,6 +2386,7 @@ SUBDIR += tdom SUBDIR += template_ SUBDIR += templatelite + SUBDIR += tgpt SUBDIR += thirtybees SUBDIR += threejs SUBDIR += threema-web @@ -2384,6 +2403,7 @@ SUBDIR += tokyopromenade SUBDIR += tomcat-devel SUBDIR += tomcat-native + SUBDIR += tomcat-native2 SUBDIR += tomcat101 SUBDIR += tomcat85 SUBDIR += tomcat9 @@ -2437,6 +2457,7 @@ SUBDIR += twms SUBDIR += typo3-11 SUBDIR += typo3-12 + SUBDIR += typo3-13 SUBDIR += uchiwa SUBDIR += ufdbguard SUBDIR += ulfius @@ -2527,6 +2548,7 @@ SUBDIR += yarn-node18 SUBDIR += yarn-node20 SUBDIR += yarn-node21 + SUBDIR += yarn-node22 SUBDIR += yarr SUBDIR += yaws SUBDIR += you-get diff --git a/www/adguardhome/Makefile b/www/adguardhome/Makefile index 68fa35e12925..78a6b44d14f4 100644 --- a/www/adguardhome/Makefile +++ b/www/adguardhome/Makefile @@ -1,7 +1,7 @@ PORTNAME= adguardhome DISTVERSIONPREFIX= v DISTVERSION= 0.107.48 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/adzap/Makefile b/www/adzap/Makefile index 528a132445cb..97020af53e72 100644 --- a/www/adzap/Makefile +++ b/www/adzap/Makefile @@ -10,6 +10,9 @@ WWW= https://adzapper.sourceforge.net/ LICENSE= BSD3CLAUSE +DEPRECATED= Obsolete, no longer provides reasonable amount of filtering +EXPIRATION_DATE=2024-06-30 + USES= perl5 shebangfix SHEBANG_FILES= scripts/squid_redirect-nodata scripts/wrapzap scripts/zapchain USE_PERL5= run diff --git a/www/amfora/Makefile b/www/amfora/Makefile index 1146f02db656..d6b5b60269d7 100644 --- a/www/amfora/Makefile +++ b/www/amfora/Makefile @@ -1,7 +1,7 @@ PORTNAME= amfora DISTVERSIONPREFIX= v DISTVERSION= 1.10.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/aquatone/Makefile b/www/aquatone/Makefile index 17fe8b2f643b..1434230eb4db 100644 --- a/www/aquatone/Makefile +++ b/www/aquatone/Makefile @@ -1,7 +1,7 @@ PORTNAME= aquatone DISTVERSIONPREFIX= v DISTVERSION= 1.7.0 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www security MAINTAINER= yuri@FreeBSD.org diff --git a/www/authelia/Makefile b/www/authelia/Makefile index ab0537b19408..56cdcdca36f4 100644 --- a/www/authelia/Makefile +++ b/www/authelia/Makefile @@ -1,6 +1,7 @@ PORTNAME= authelia DISTVERSIONPREFIX= v DISTVERSION= 4.38.8 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://github.com/authelia/authelia/releases/download/v${DISTVERSION}/:public_html DISTFILES= authelia-${DISTVERSIONFULL}-public_html${EXTRACT_SUFX}:public_html # html root directory needs to be built in a special way diff --git a/www/bareos-webui/Makefile b/www/bareos-webui/Makefile index 843fdc7b552f..e540133f7c9e 100644 --- a/www/bareos-webui/Makefile +++ b/www/bareos-webui/Makefile @@ -1,6 +1,6 @@ PORTNAME= bareos DISTVERSIONPREFIX= Release/ -DISTVERSION= 23.0.1 +DISTVERSION= 23.0.2 CATEGORIES?= www sysutils PKGNAMESUFFIX= -webui diff --git a/www/bareos-webui/distinfo b/www/bareos-webui/distinfo index 49002a9e97ef..ff77959d57ef 100644 --- a/www/bareos-webui/distinfo +++ b/www/bareos-webui/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1705703894 -SHA256 (bareos-bareos-Release-23.0.1_GH0.tar.gz) = ab35e0be81c11913c42e62829daa3228c1ae94ad96d76b829cab0d3eb6f2ef6c -SIZE (bareos-bareos-Release-23.0.1_GH0.tar.gz) = 14728566 +TIMESTAMP = 1714631949 +SHA256 (bareos-bareos-Release-23.0.2_GH0.tar.gz) = 88df0b281d0c23c4991e227126b2df263f13a89329aaaaa67e84e804cafc793c +SIZE (bareos-bareos-Release-23.0.2_GH0.tar.gz) = 14724410 diff --git a/www/bareos21-webui/Makefile b/www/bareos21-webui/Makefile index 5712ff597452..e0ef8025450f 100644 --- a/www/bareos21-webui/Makefile +++ b/www/bareos21-webui/Makefile @@ -1,6 +1,6 @@ PORTNAME= bareos DISTVERSIONPREFIX= Release/ -DISTVERSION= 21.1.8 +DISTVERSION= 21.1.9 CATEGORIES?= www sysutils PKGNAMESUFFIX= 21-webui diff --git a/www/bareos21-webui/distinfo b/www/bareos21-webui/distinfo index 2d2bd1dabcac..4a42ebd17c2c 100644 --- a/www/bareos21-webui/distinfo +++ b/www/bareos21-webui/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1704486594 -SHA256 (bareos-bareos-Release-21.1.8_GH0.tar.gz) = 5cdf196151e758ff2787d47d97153e69cf75895d81f559b61c06679166a60b4d -SIZE (bareos-bareos-Release-21.1.8_GH0.tar.gz) = 11663322 +TIMESTAMP = 1714631959 +SHA256 (bareos-bareos-Release-21.1.9_GH0.tar.gz) = cea611402f3d42903e8ad56808e43f3bc2163e0dbbbca4cba3f4abab8842320c +SIZE (bareos-bareos-Release-21.1.9_GH0.tar.gz) = 11670286 diff --git a/www/bareos22-webui/Makefile b/www/bareos22-webui/Makefile index bd40ab0ec9dd..ced73c924ee9 100644 --- a/www/bareos22-webui/Makefile +++ b/www/bareos22-webui/Makefile @@ -1,6 +1,6 @@ PORTNAME= bareos DISTVERSIONPREFIX= Release/ -DISTVERSION= 22.1.3 +DISTVERSION= 22.1.4 CATEGORIES?= www sysutils PKGNAMESUFFIX= 22-webui diff --git a/www/bareos22-webui/distinfo b/www/bareos22-webui/distinfo index fe4153fead46..1de1847a5575 100644 --- a/www/bareos22-webui/distinfo +++ b/www/bareos22-webui/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1704486712 -SHA256 (bareos-bareos-Release-22.1.3_GH0.tar.gz) = 765bf250a34296756051e896b28130b2ca3965cebaf310116c50e3e6c63d7d52 -SIZE (bareos-bareos-Release-22.1.3_GH0.tar.gz) = 14745204 +TIMESTAMP = 1714631970 +SHA256 (bareos-bareos-Release-22.1.4_GH0.tar.gz) = fd2d2eb7557907e1fe85cb823ef51a31bfc2809d5cb25264d42685a24dafdb6d +SIZE (bareos-bareos-Release-22.1.4_GH0.tar.gz) = 14747141 diff --git a/www/beehive/Makefile b/www/beehive/Makefile index bb042d6174e9..f17cc485cc74 100644 --- a/www/beehive/Makefile +++ b/www/beehive/Makefile @@ -1,7 +1,7 @@ PORTNAME= beehive DISTVERSIONPREFIX= v DISTVERSION= 0.4.0 -PORTREVISION= 20 +PORTREVISION= 21 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/bkmrkconv/Makefile b/www/bkmrkconv/Makefile index e4f93913aa7b..aa434a866828 100644 --- a/www/bkmrkconv/Makefile +++ b/www/bkmrkconv/Makefile @@ -9,6 +9,9 @@ WWW= http://www.bleb.org/software/bkmrkconv/ LICENSE= ART10 +DEPRECATED= Obsolete utility, generated files are already in a readable format +EXPIRATION_DATE=2024-05-31 + USES= perl5 NO_BUILD= yes NO_ARCH= yes diff --git a/www/bluefish/Makefile b/www/bluefish/Makefile index e65073b07ee1..10d7b2c86332 100644 --- a/www/bluefish/Makefile +++ b/www/bluefish/Makefile @@ -30,6 +30,8 @@ CONFIGURE_ARGS= --disable-update-databases \ --with-icon-path=${PREFIX}/share/pixmaps INSTALL_TARGET= install-strip +PORTSCOUT= skipv:2.2.15fp + OPTIONS_DEFINE= DEBUG DOCS NLS TIDY OPTIONS_DEFAULT= GTK3 OPTIONS_SINGLE= TOOLKIT diff --git a/www/bolt/Makefile b/www/bolt/Makefile index 05b824f238ce..357e848f18bc 100644 --- a/www/bolt/Makefile +++ b/www/bolt/Makefile @@ -6,11 +6,14 @@ MASTER_SITES= https://bolt.cm/distribution/ MAINTAINER= ports@FreeBSD.org COMMENT= Sophisticated, lightweight & simple CMS -WWW= https://bolt.cm/ +WWW= https://github.com/bolt/core LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.md +DEPRECATED= Outdated and unsupported, current version is several years old and unsupported upstream +EXPIRATION_DATE=2024-06-30 + USES= cpe php:web CPE_VENDOR= ${PORTNAME}cms diff --git a/www/bozohttpd/Makefile b/www/bozohttpd/Makefile index 94c23a39ea75..e80b858d4fd0 100644 --- a/www/bozohttpd/Makefile +++ b/www/bozohttpd/Makefile @@ -2,12 +2,11 @@ PORTNAME= bozohttpd PORTVERSION= 20210227 PORTREVISION= 1 CATEGORIES= www -MASTER_SITES= http://www.eterna.com.au/bozohttpd/ \ - NETBSD +MASTER_SITES= http://eterna23.net/bozohttpd/ MAINTAINER= jmohacsi@bsd.hu COMMENT= Bozotic HTTP server from NetBSD -WWW= http://www.eterna.com.au/bozohttpd/ +WWW= http://eterna23.net/bozohttpd/ LICENSE= BSD2CLAUSE diff --git a/www/bugzilla2atom/Makefile b/www/bugzilla2atom/Makefile index 1346f1aa06ed..ca575e9ac1ce 100644 --- a/www/bugzilla2atom/Makefile +++ b/www/bugzilla2atom/Makefile @@ -1,7 +1,7 @@ PORTNAME= bugzilla2atom DISTVERSIONPREFIX= v DISTVERSION= ${MODVERSION:S/-/./g:R} -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= www MAINTAINER= fuz@FreeBSD.org diff --git a/www/caddy-custom/Makefile b/www/caddy-custom/Makefile index 59954858225a..6c883c52a262 100644 --- a/www/caddy-custom/Makefile +++ b/www/caddy-custom/Makefile @@ -4,7 +4,7 @@ PORTNAME= caddy-custom PORTVERSION= ${CADDY_VERSION}.${XCADDY_VERSION} -PORTREVISION= 16 +PORTREVISION= 17 CATEGORIES= www DISTFILES= # none diff --git a/www/caddy-custom/pkg-descr b/www/caddy-custom/pkg-descr index c5983d9a92ac..21e76169df57 100644 --- a/www/caddy-custom/pkg-descr +++ b/www/caddy-custom/pkg-descr @@ -3,7 +3,7 @@ using plugins of your choice. You will need to rebuild this port manually if one of your plugins gets updated. Caddy is a high-performance webserver with a simple config format, -out-of-the-box HTTP/3 support, and automatica transparent ACME +out-of-the-box HTTP/3 support, and automatic transparent ACME certificate provisioning. NOTE: THIS PORT BYPASSES EVERY SINGLE ONE OF FREEBSD'S CHECKSUM- diff --git a/www/caddy/Makefile b/www/caddy/Makefile index 4f5556675c3b..c2712310ecc2 100644 --- a/www/caddy/Makefile +++ b/www/caddy/Makefile @@ -1,7 +1,7 @@ PORTNAME= caddy DISTVERSIONPREFIX= v DISTVERSION= 2.7.6 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= www DIST_SUBDIR= caddy diff --git a/www/carbonapi/Makefile b/www/carbonapi/Makefile index 9f35701c101e..f076a3506474 100644 --- a/www/carbonapi/Makefile +++ b/www/carbonapi/Makefile @@ -1,6 +1,6 @@ PORTNAME= carbonapi DISTVERSION= 0.14.1 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MAINTAINER= a.andersson.thn@gmail.com diff --git a/www/castor/Makefile b/www/castor/Makefile index 86da1f3d5ead..8f3816748194 100644 --- a/www/castor/Makefile +++ b/www/castor/Makefile @@ -1,6 +1,6 @@ PORTNAME= castor DISTVERSION= 0.8.16 -PORTREVISION= 34 +PORTREVISION= 35 CATEGORIES= www MASTER_SITES= https://git.sr.ht/~julienxx/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} diff --git a/www/chems/Makefile b/www/chems/Makefile index 9b09488ed0f0..412cb04f90c1 100644 --- a/www/chems/Makefile +++ b/www/chems/Makefile @@ -8,6 +8,9 @@ MAINTAINER= ports@FreeBSD.org COMMENT= The geekest content helper management system WWW= http://chems.sf.net +DEPRECATED= Abandonware, last release in 2009 and no activity since upstream +EXPIRATION_DATE=2024-05-31 + NO_BUILD= yes USES= zip php USE_PHP= xml iconv gd diff --git a/www/chisel/Makefile b/www/chisel/Makefile index 4c7a842a82d3..dbe6796d462c 100644 --- a/www/chisel/Makefile +++ b/www/chisel/Makefile @@ -1,7 +1,7 @@ PORTNAME= chisel DISTVERSIONPREFIX= v DISTVERSION= 1.9.1 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/chromium/Makefile b/www/chromium/Makefile index f4243fab81f2..b6c560def878 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -1,5 +1,5 @@ PORTNAME= chromium -PORTVERSION= 124.0.6367.60 +PORTVERSION= 124.0.6367.207 CATEGORIES= www wayland MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ https://nerd.hu/distfiles/:external diff --git a/www/chromium/distinfo b/www/chromium/distinfo index e61cc1be1d16..559acaf6b434 100644 --- a/www/chromium/distinfo +++ b/www/chromium/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1713531852 -SHA256 (chromium-124.0.6367.60.tar.xz) = ebd553527149cb8477a522df90acd6cea2388a6f431e2db589a0301df1d0cae2 -SIZE (chromium-124.0.6367.60.tar.xz) = 3432734968 -SHA256 (chrome-linux-124.0.6367.60-llvm17.profdata.tar.xz) = 6c4447dcd395f898bce3dbb7c5d361ee25f571f1c9c9c30767b169dec5ce1290 -SIZE (chrome-linux-124.0.6367.60-llvm17.profdata.tar.xz) = 30129116 -SHA256 (chromium-124.0.6367.60-testdata.tar.xz) = 42fcb4454bb703343843b7b7b4c7c28cbc9e0f885f5e38748268aeeb00ce9d29 -SIZE (chromium-124.0.6367.60-testdata.tar.xz) = 279785420 +TIMESTAMP = 1715673268 +SHA256 (chromium-124.0.6367.207.tar.xz) = 6d6dc8b943012573a244ddb013b281ecbc97f77fe1fc6f55a4118241d107eba5 +SIZE (chromium-124.0.6367.207.tar.xz) = 3450794132 +SHA256 (chrome-linux-124.0.6367.207-llvm17.profdata.tar.xz) = 43953cf8958c1f8d6b700635a4d209fe27ea4487e26ac12bc5f2ee56c28cb0c5 +SIZE (chrome-linux-124.0.6367.207-llvm17.profdata.tar.xz) = 30059564 +SHA256 (chromium-124.0.6367.207-testdata.tar.xz) = d30386a73719a64fdd191f7b51709185e4d3fc49888b04a390506d4370e69b06 +SIZE (chromium-124.0.6367.207-testdata.tar.xz) = 277899644 SHA256 (test_fonts-336e775eec536b2d785cc80eff6ac39051931286.tar.gz) = a2ca2962daf482a8f943163541e1c73ba4b2694fabcd2510981f2db4eda493c8 SIZE (test_fonts-336e775eec536b2d785cc80eff6ac39051931286.tar.gz) = 32624734 diff --git a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc index 22672e805dd8..3b8e559bce55 100644 --- a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,4 +1,4 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2024-04-19 13:02:56 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2024-05-01 07:03:57 UTC +++ chrome/app/chrome_main_delegate.cc @@ -146,7 +146,7 @@ #include "components/about_ui/credit_utils.h" @@ -34,7 +34,16 @@ #include "chrome/browser/policy/policy_path_parser.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -346,7 +346,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty +@@ -249,7 +249,7 @@ + #include "base/scoped_add_feature_flags.h" + #include "ui/base/ui_base_features.h" + #include "ui/ozone/public/ozone_platform.h" +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/chrome_browser_main_extra_parts_linux.h" + #endif + #endif // BUILDFLAG(IS_OZONE) +@@ -349,7 +349,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty // and resources loaded. bool SubprocessNeedsResourceBundle(const std::string& process_type) { return @@ -43,7 +52,7 @@ // The zygote process opens the resources for the renderers. process_type == switches::kZygoteProcess || #endif -@@ -431,7 +431,7 @@ bool HandleVersionSwitches(const base::CommandLine& co +@@ -434,7 +434,7 @@ bool HandleVersionSwitches(const base::CommandLine& co // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -52,7 +61,7 @@ // Show the man page if --help or -h is on the command line. void HandleHelpSwitches(const base::CommandLine& command_line) { if (command_line.HasSwitch(switches::kHelp) || -@@ -477,7 +477,7 @@ void SetCrashpadUploadConsentPostLogin() { +@@ -480,7 +480,7 @@ void SetCrashpadUploadConsentPostLogin() { } #endif // BUILDFLAG(IS_CHROMEOS_LACROS) @@ -61,7 +70,7 @@ void SIGTERMProfilingShutdown(int signal) { content::Profiling::Stop(); struct sigaction sigact; -@@ -559,7 +559,7 @@ std::optional<int> AcquireProcessSingleton( +@@ -562,7 +562,7 @@ std::optional<int> AcquireProcessSingleton( // process can be exited. ChromeProcessSingleton::CreateInstance(user_data_dir); @@ -70,7 +79,7 @@ // Read the xdg-activation token and set it in the command line for the // duration of the notification in order to ensure this is propagated to an // already running browser process if it exists. -@@ -643,7 +643,7 @@ void InitializeUserDataDir(base::CommandLine* command_ +@@ -646,7 +646,7 @@ void InitializeUserDataDir(base::CommandLine* command_ std::string process_type = command_line->GetSwitchValueASCII(switches::kProcessType); @@ -79,7 +88,7 @@ // On Linux, Chrome does not support running multiple copies under different // DISPLAYs, so the profile directory can be specified in the environment to // support the virtual desktop use-case. -@@ -770,7 +770,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat +@@ -773,7 +773,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ @@ -88,7 +97,16 @@ // Record the startup process creation time on supported platforms. On Android // this is recorded in ChromeMainDelegateAndroid. startup_metric_utils::GetCommon().RecordStartupProcessCreationTime( -@@ -1155,7 +1155,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv +@@ -964,7 +964,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitia + #if BUILDFLAG(IS_OZONE) + // Initialize Ozone platform and add required feature flags as per platform's + // properties. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + ChromeBrowserMainExtraPartsLinux::InitOzonePlatformHint(); + #endif + ui::OzonePlatform::PreEarlyInitialization(); +@@ -1162,7 +1162,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv chrome::GetChannel() == version_info::Channel::DEV; const bool emit_crashes = #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ @@ -97,7 +115,7 @@ is_canary_dev; #else false; -@@ -1174,7 +1174,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv +@@ -1181,7 +1181,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv // for more context. base::sequence_manager::internal::ThreadController::InitializeFeatures( /*record_sample_metadata=*/is_canary_dev); @@ -106,7 +124,7 @@ base::MessagePumpLibevent::InitializeFeatures(); #elif BUILDFLAG(IS_MAC) base::PlatformThread::InitFeaturesPostFieldTrial(); -@@ -1323,7 +1323,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom +@@ -1330,7 +1330,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom // TODO(crbug.com/1052397): Revisit the macro expression once build flag // switch of lacros-chrome is complete. @@ -115,7 +133,7 @@ // This will directly exit if the user asked for help. HandleHelpSwitches(command_line); #endif -@@ -1353,7 +1353,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom +@@ -1360,7 +1360,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom #if BUILDFLAG(IS_CHROMEOS) chromeos::dbus_paths::RegisterPathProvider(); #endif @@ -124,7 +142,7 @@ nacl::RegisterPathProvider(); #endif -@@ -1750,7 +1750,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1757,7 +1757,7 @@ void ChromeMainDelegate::PreSandboxStartup() { CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; } @@ -133,7 +151,7 @@ // Zygote needs to call InitCrashReporter() in RunZygote(). if (process_type != switches::kZygoteProcess) { if (command_line.HasSwitch(switches::kPreCrashpadCrashTest)) { -@@ -1851,7 +1851,7 @@ absl::variant<int, content::MainFunctionParams> Chrome +@@ -1858,7 +1858,7 @@ absl::variant<int, content::MainFunctionParams> Chrome // This entry is not needed on Linux, where the NaCl loader // process is launched via nacl_helper instead. diff --git a/www/chromium/files/patch-chrome_browser_BUILD.gn b/www/chromium/files/patch-chrome_browser_BUILD.gn index bd4ce5d9f973..87575ea436c1 100644 --- a/www/chromium/files/patch-chrome_browser_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_BUILD.gn @@ -1,6 +1,6 @@ ---- chrome/browser/BUILD.gn.orig 2024-04-19 13:02:56 UTC +--- chrome/browser/BUILD.gn.orig 2024-04-25 21:17:54 UTC +++ chrome/browser/BUILD.gn -@@ -6552,6 +6552,13 @@ static_library("browser") { +@@ -6554,6 +6554,13 @@ static_library("browser") { } } diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc index e30002b2521b..80dcc921f211 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc @@ -1,9 +1,9 @@ ---- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2024-04-19 13:02:56 UTC +--- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2024-05-01 07:03:57 UTC +++ chrome/browser/chrome_browser_main_extra_parts_linux.cc -@@ -169,7 +169,7 @@ ChromeBrowserMainExtraPartsLinux::ChromeBrowserMainExt - ChromeBrowserMainExtraPartsLinux::~ChromeBrowserMainExtraPartsLinux() = default; +@@ -175,7 +175,7 @@ void ChromeBrowserMainExtraPartsLinux::PostBrowserStar - void ChromeBrowserMainExtraPartsLinux::PreEarlyInitialization() { + // static + void ChromeBrowserMainExtraPartsLinux::InitOzonePlatformHint() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On the desktop, we fix the platform name if necessary. diff --git a/www/chromium/files/patch-chrome_browser_devtools_BUILD.gn b/www/chromium/files/patch-chrome_browser_devtools_BUILD.gn new file mode 100644 index 000000000000..06adbd4b64ff --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_devtools_BUILD.gn @@ -0,0 +1,10 @@ +--- chrome/browser/devtools/BUILD.gn.orig 2024-04-30 23:46:45 UTC ++++ chrome/browser/devtools/BUILD.gn +@@ -113,6 +113,7 @@ static_library("devtools") { + "//chrome/browser/autofill:autofill", + "//components/autofill/content/browser:browser", + "//components/autofill/core/browser:browser", ++ "//components/enterprise/buildflags", + "//components/paint_preview/buildflags:buildflags", + "//content/public/browser", + "//net", diff --git a/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc b/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc index 7a10eb391d30..257aa9ece63e 100644 --- a/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc +++ b/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc @@ -1,4 +1,4 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2024-04-19 13:02:56 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2024-05-11 05:42:43 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc @@ -80,8 +80,10 @@ @@ -30,7 +30,7 @@ #include "components/power_metrics/system_power_monitor.h" #endif -@@ -858,7 +860,7 @@ void RecordStartupMetrics() { +@@ -860,7 +862,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/1216328. @@ -39,7 +39,7 @@ shell_integration::DefaultWebClientState default_state = shell_integration::GetDefaultBrowser(); base::UmaHistogramEnumeration("DefaultBrowser.State", default_state, -@@ -1162,11 +1164,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1164,11 +1166,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt } #endif // !BUILDFLAG(IS_ANDROID) diff --git a/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc b/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc index 5631409a268a..de849528cb42 100644 --- a/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,4 +1,4 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2024-04-19 13:02:56 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2024-05-01 07:03:57 UTC +++ chrome/browser/prefs/browser_prefs.cc @@ -488,18 +488,18 @@ #endif @@ -31,7 +31,7 @@ #include "ui/color/system_theme.h" #endif -@@ -1715,7 +1715,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1722,7 +1722,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) registry->RegisterBooleanPref(prefs::kOopPrintDriversAllowedByPolicy, true); #endif @@ -40,7 +40,7 @@ registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true); #endif -@@ -2060,12 +2060,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2067,12 +2067,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc index 3a94f3289bf5..b84d4925f3dc 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc @@ -1,6 +1,6 @@ ---- chrome/browser/ui/views/tabs/tab.cc.orig 2024-02-23 21:04:38 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2024-04-25 21:17:54 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -618,7 +618,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -621,7 +621,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& return; } diff --git a/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc b/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc index a0a51fe0e131..fc579ddbbd9f 100644 --- a/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc +++ b/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc @@ -1,9 +1,9 @@ ---- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2024-04-19 13:02:56 UTC +--- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2024-04-25 21:17:54 UTC +++ components/viz/service/display_embedder/skia_output_surface_impl.cc -@@ -1526,7 +1526,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor - ->GetDeviceQueue() - ->GetVulkanPhysicalDevice(), - VK_IMAGE_TILING_OPTIMAL, vk_format, yuv_color_space, ycbcr_info); +@@ -1527,7 +1527,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor + ->GetVulkanPhysicalDevice(), + VK_IMAGE_TILING_OPTIMAL, vk_format, + si_format, yuv_color_space, ycbcr_info); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Textures that were allocated _on linux_ with ycbcr info came from diff --git a/www/chromium/files/patch-media_base_media__switches.cc b/www/chromium/files/patch-media_base_media__switches.cc index 2bd334016a61..818840435859 100644 --- a/www/chromium/files/patch-media_base_media__switches.cc +++ b/www/chromium/files/patch-media_base_media__switches.cc @@ -1,4 +1,4 @@ ---- media/base/media_switches.cc.orig 2024-04-19 13:02:56 UTC +--- media/base/media_switches.cc.orig 2024-05-11 05:42:43 UTC +++ media/base/media_switches.cc @@ -21,7 +21,7 @@ #include "ui/gl/gl_features.h" @@ -92,7 +92,7 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -1500,7 +1500,7 @@ BASE_FEATURE(kUseGTFOOutOfProcessVideoDecoding, +@@ -1496,7 +1496,7 @@ BASE_FEATURE(kUseGTFOOutOfProcessVideoDecoding, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) diff --git a/www/chromium/files/patch-net_dns_BUILD.gn b/www/chromium/files/patch-net_dns_BUILD.gn index 8c130b336675..dd5a55548aa8 100644 --- a/www/chromium/files/patch-net_dns_BUILD.gn +++ b/www/chromium/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2024-04-19 13:02:56 UTC +--- net/dns/BUILD.gn.orig 2024-04-30 23:47:00 UTC +++ net/dns/BUILD.gn @@ -136,7 +136,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -177,6 +177,7 @@ source_set("dns") { +@@ -170,6 +170,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -177,6 +180,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -444,9 +445,9 @@ source_set("tests") { +@@ -444,9 +448,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 b/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 index e8b0df090779..f1773706aebd 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 @@ -1,6 +1,6 @@ ---- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2024-04-19 13:02:56 UTC +--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2024-05-01 07:03:57 UTC +++ third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -321,7 +321,7 @@ +@@ -313,7 +313,7 @@ name: "AppTitle", status: "experimental", origin_trial_feature_name: "AppTitle", @@ -9,7 +9,7 @@ base_feature: "WebAppEnableAppTitle", }, { -@@ -1969,7 +1969,7 @@ +@@ -1961,7 +1961,7 @@ base_feature_status: "enabled", copied_from_base_feature_if: "overridden", origin_trial_feature_name: "FullscreenPopupWindows", @@ -18,7 +18,7 @@ }, { name: "GamepadButtonAxisEvents", -@@ -2890,7 +2890,7 @@ +@@ -2882,7 +2882,7 @@ name: "PaymentHandlerMinimalHeaderUX", origin_trial_feature_name: "PaymentHandlerMinimalHeaderUX", origin_trial_allows_third_party: true, @@ -27,7 +27,7 @@ status: "stable", }, { -@@ -3082,7 +3082,7 @@ +@@ -3074,7 +3074,7 @@ { name: "PrivateNetworkAccessPermissionPrompt", origin_trial_feature_name: "PrivateNetworkAccessPermissionPrompt", @@ -36,7 +36,7 @@ status: "stable", public: true, base_feature: "none", -@@ -3950,7 +3950,7 @@ +@@ -3942,7 +3942,7 @@ name: "UnrestrictedSharedArrayBuffer", base_feature: "none", origin_trial_feature_name: "UnrestrictedSharedArrayBuffer", @@ -45,7 +45,7 @@ }, // Enables using policy-controlled feature "usb-unrestricted" to allow // isolated context to access protected USB interface classes and to -@@ -4110,7 +4110,7 @@ +@@ -4102,7 +4102,7 @@ { name: "WebAppScopeExtensions", origin_trial_feature_name: "WebAppScopeExtensions", diff --git a/www/chromium/files/patch-third__party_ffmpeg_configure b/www/chromium/files/patch-third__party_ffmpeg_configure new file mode 100644 index 000000000000..4ef45be429b6 --- /dev/null +++ b/www/chromium/files/patch-third__party_ffmpeg_configure @@ -0,0 +1,13 @@ +--- third_party/ffmpeg/configure.orig 2024-04-25 07:48:13 UTC ++++ third_party/ffmpeg/configure +@@ -6713,8 +6713,8 @@ if ! disabled pthreads && ! enabled w32threads && ! en + if enabled pthread_np_h; then + hdrs="$hdrs pthread_np.h" + fi +- check_lib pthread_set_name_np "$hdrs" pthread_set_name_np -lpthread +- check_lib pthread_setname_np "$hdrs" pthread_setname_np -lpthread ++ check_lib pthread_set_name_np pthread_np.h pthread_set_name_np -lpthread ++ check_lib pthread_setname_np pthread_np.h pthread_setname_np -lpthread + fi + fi + diff --git a/www/chromium/files/patch-ui_base_ui__base__features.cc b/www/chromium/files/patch-ui_base_ui__base__features.cc index d0da3c97ac93..2a6cf5fba425 100644 --- a/www/chromium/files/patch-ui_base_ui__base__features.cc +++ b/www/chromium/files/patch-ui_base_ui__base__features.cc @@ -1,6 +1,6 @@ ---- ui/base/ui_base_features.cc.orig 2024-04-19 13:02:56 UTC +--- ui/base/ui_base_features.cc.orig 2024-05-01 07:03:57 UTC +++ ui/base/ui_base_features.cc -@@ -227,7 +227,7 @@ BASE_FEATURE(kExperimentalFlingAnimation, +@@ -228,7 +228,7 @@ BASE_FEATURE(kExperimentalFlingAnimation, "ExperimentalFlingAnimation", // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -9,7 +9,7 @@ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_ASH) && \ !BUILDFLAG(IS_CHROMEOS_LACROS)) base::FEATURE_ENABLED_BY_DEFAULT -@@ -326,7 +326,7 @@ bool IsForcedColorsEnabled() { +@@ -327,7 +327,7 @@ bool IsForcedColorsEnabled() { BASE_FEATURE(kEyeDropper, "EyeDropper", #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/cl-lml-sbcl/Makefile b/www/cl-lml-sbcl/Makefile index 7ede627088e6..bed4cd7de3e9 100644 --- a/www/cl-lml-sbcl/Makefile +++ b/www/cl-lml-sbcl/Makefile @@ -1,6 +1,6 @@ PORTNAME= lml PORTVERSION= 2.5.7 -PORTREVISION= 81 +PORTREVISION= 82 CATEGORIES= www textproc PKGNAMEPREFIX= cl- DISTFILES= # none diff --git a/www/clearsilver/Makefile b/www/clearsilver/Makefile index 65eda7b57f42..d3e65d3097a3 100644 --- a/www/clearsilver/Makefile +++ b/www/clearsilver/Makefile @@ -8,6 +8,8 @@ MAINTAINER= ports@FreeBSD.org COMMENT= Fast, powerful, and language-neutral template system WWW= http://www.clearsilver.net/ +DEPRECATED= Abandonware and outdated, last release in 2017 no activity since 2019 + USES= gmake GNU_CONFIGURE= yes GNU_CONFIGURE_MANPREFIX=${PREFIX}/share diff --git a/www/cobalt/Makefile b/www/cobalt/Makefile index de42df88bb8b..b6d457044cd9 100644 --- a/www/cobalt/Makefile +++ b/www/cobalt/Makefile @@ -1,7 +1,7 @@ PORTNAME= cobalt DISTVERSIONPREFIX= v DISTVERSION= 0.19.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www PKGNAMESUFFIX= -site-generator diff --git a/www/colly/Makefile b/www/colly/Makefile index ef86cc761725..394a0895fb07 100644 --- a/www/colly/Makefile +++ b/www/colly/Makefile @@ -1,7 +1,7 @@ PORTNAME= colly DISTVERSIONPREFIX= v DISTVERSION= 2.1.0 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/cpr/Makefile b/www/cpr/Makefile index 6bf3a5d261bf..f21e05edad65 100644 --- a/www/cpr/Makefile +++ b/www/cpr/Makefile @@ -34,7 +34,6 @@ CMAKE_ON= BUILD_SHARED_LIBS \ CPR_ENABLE_SSL \ CPR_SKIP_CA_BUNDLE_SEARCH \ CPR_USE_SYSTEM_CURL -PIE_UNSAFE= yes PLIST_SUB= PORTVERSION=${PORTVERSION} diff --git a/www/crawl/Makefile b/www/crawl/Makefile index 141037a64133..d2676aad821e 100644 --- a/www/crawl/Makefile +++ b/www/crawl/Makefile @@ -1,10 +1,10 @@ PORTNAME= crawl PORTVERSION= 0.4 -PORTREVISION= 15 +PORTREVISION= 16 CATEGORIES= www MASTER_SITES= http://www.monkey.org/~provos/ -MAINTAINER= ports@FreeBSD.org +MAINTAINER= portmaster@BSDforge.com COMMENT= Small, efficient web crawler with advanced features WWW= https://www.monkey.org/~provos/crawl/ @@ -15,7 +15,6 @@ LIB_DEPENDS= libevent.so:devel/libevent USES= bdb pkgconfig GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share CONFIGURE_ARGS= --with-libevent --program-transform-name='' CONFIGURE_ENV= EVENTINC="`pkgconf --cflags libevent`" EVENTLIB="`pkgconf --libs libevent`" diff --git a/www/cssed/Makefile b/www/cssed/Makefile index fbe8155c4deb..af31552892b4 100644 --- a/www/cssed/Makefile +++ b/www/cssed/Makefile @@ -11,6 +11,10 @@ WWW= https://cssed.sourceforge.net/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING +BROKEN= Not compatible with Python 3.x +DEPRECATED= Abandonware and broken, doesn't work with Python 3.x +EXPIRATION_DATE=2024-05-31 + USES= compiler:c++11-lang dos2unix gettext gnome localbase pathfix \ pkgconfig DOS2UNIX_FILES= scintilla/gtk/ScintillaGTK.cxx diff --git a/www/deno/Makefile b/www/deno/Makefile index d4ff04bd736d..d2fe456ccca2 100644 --- a/www/deno/Makefile +++ b/www/deno/Makefile @@ -1,6 +1,7 @@ PORTNAME= deno DISTVERSIONPREFIX= v DISTVERSION= 1.42.4 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= mikael@FreeBSD.org diff --git a/www/devd/Makefile b/www/devd/Makefile index 56d92bbcc248..a934e63e557e 100644 --- a/www/devd/Makefile +++ b/www/devd/Makefile @@ -1,7 +1,7 @@ PORTNAME= devd DISTVERSIONPREFIX= v DISTVERSION= 0.9 -PORTREVISION= 22 +PORTREVISION= 23 CATEGORIES= www devel MAINTAINER= yuri@FreeBSD.org diff --git a/www/dezoomify-rs/Makefile b/www/dezoomify-rs/Makefile index e5d9cefa4592..b300deac0f0b 100644 --- a/www/dezoomify-rs/Makefile +++ b/www/dezoomify-rs/Makefile @@ -1,7 +1,7 @@ PORTNAME= dezoomify-rs DISTVERSIONPREFIX= v DISTVERSION= 2.12.3 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= nivit@FreeBSD.org diff --git a/www/dillo2/Makefile b/www/dillo2/Makefile index 376bcbadd86f..8eded5223a80 100644 --- a/www/dillo2/Makefile +++ b/www/dillo2/Makefile @@ -1,8 +1,7 @@ PORTNAME= dillo -PORTVERSION= 3.0.5 -PORTREVISION= 5 +PORTVERSION= 3.1.0 CATEGORIES= www -MASTER_SITES= http://www.dillo.org/download/ \ +MASTER_SITES= https://github.com/dillo-browser/dillo/releases/download/v3.1.0/ \ LOCAL/bf/dillo/ \ TEX/language/hyph-utf8/tex/generic/hyph-utf8/patterns/txt/:hyphen DISTFILES= ${DISTNAME}${EXTRACT_SUFX} @@ -11,7 +10,7 @@ EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= cy@FreeBSD.org COMMENT= Fast, small graphical Web browser built upon fltk -WWW= https://www.dillo.org/ +WWW= https://dillo-browser.github.io/dillo.org.html LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING @@ -37,11 +36,10 @@ PORTDOCS= * OPTIONS_DEFINE= COOKIES DEBUG DOCS HYPHENATION IPV6 JPEG PNG SSL \ THREADS -OPTIONS_DEFAULT= COOKIES IPV6 JPEG PNG SSL THREADS +OPTIONS_DEFAULT= COOKIES IPV6 JPEG PNG THREADS COOKIES_DESC= Cookie support HYPHENATION_DESC= Hyphenation file(s) for HYPHENATION_LANGS -SSL_DESC= Experimental HTTPS support DEBUG_CONFIGURE_ENABLE= gprof rtfl @@ -55,10 +53,6 @@ JPEG_USES= jpeg PNG_CONFIGURE_ENABLE= png PNG_LIB_DEPENDS= libpng.so:graphics/png -SSL_USES= ssl -SSL_CONFIGURE_ENABLE= ssl -SSL_EXTRA_PATCHES= ${PATCHDIR}/extra-patches-openssl - THREADS_CONFIGURE_ENABLE= threaded-dns .include <bsd.port.pre.mk> @@ -90,11 +84,13 @@ post-patch: @${MV} ${WRKSRC}/dillorc ${WRKSRC}/dillorc.sample @${MV} ${WRKSRC}/dpid/dpidrc.in ${WRKSRC}/dpid/dpidrc.sample.in @${MV} ${WRKSRC}/src/domainrc ${WRKSRC}/src/domainrc.sample + @${MV} ${WRKSRC}/src/hsts_preload ${WRKSRC}/src/hsts_preload.sample @${MV} ${WRKSRC}/src/keysrc ${WRKSRC}/src/keysrc.sample @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" ${WRKSRC}/configure @${REINPLACE_CMD} -e "s|dillorc|dillorc.sample|g" ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e "s|dpidrc|dpidrc.sample|g" ${WRKSRC}/dpid/Makefile.in @${REINPLACE_CMD} -E "s/(domain|keys)rc/&.sample/g" ${WRKSRC}/src/Makefile.in + @${REINPLACE_CMD} -E "s/hsts_preload/hsts_preload.sample/g" ${WRKSRC}/src/Makefile.in @${REINPLACE_CMD} -e "s|/lib/dillo|/libexec/dillo|" \ ${WRKSRC}/dillo-install-hyphenation \ ${WRKSRC}/doc/dillo.1.in \ diff --git a/www/dillo2/distinfo b/www/dillo2/distinfo index 650e7afdaec1..967d6dfe04be 100644 --- a/www/dillo2/distinfo +++ b/www/dillo2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1652973072 -SHA256 (dillo/dillo-3.0.5.tar.bz2) = db1be16c1c5842ebe07b419aa7c6ef11a45603a75df2877f99635f4f8345148b -SIZE (dillo/dillo-3.0.5.tar.bz2) = 734472 +TIMESTAMP = 1715503936 +SHA256 (dillo/dillo-3.1.0.tar.bz2) = f56766956d90dac0ccca31755917cba8a4014bcf43b3e36c7d86efe1d20f9d92 +SIZE (dillo/dillo-3.1.0.tar.bz2) = 994610 diff --git a/www/dillo2/files/extra-patches-openssl b/www/dillo2/files/extra-patches-openssl deleted file mode 100644 index 38134a30d2fe..000000000000 --- a/www/dillo2/files/extra-patches-openssl +++ /dev/null @@ -1,41 +0,0 @@ -Patches obtained from: -http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/www/dillo/patches/ - -$NetBSD: patch-configure,v 1.1 2018/03/24 15:40:07 ryoon Exp $ - -* Detect OpenSSL 1.1.0 - ---- configure.orig 2015-06-30 14:07:22.000000000 +0000 -+++ configure -@@ -6018,11 +6018,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ - #ifdef __cplusplus - extern "C" - #endif --char SSL_library_init (); -+void OPENSSL_config (); - int - main () - { --return SSL_library_init (); -+OPENSSL_config (); - ; - return 0; - } -$NetBSD: patch-dpi_https.c,v 1.1 2018/03/24 15:40:07 ryoon Exp $ - -* Support OpenSSL 1.1.0 - ---- dpi/https.c.orig 2015-06-30 14:06:08.000000000 +0000 -+++ dpi/https.c -@@ -476,7 +476,11 @@ static int handle_certificate_problem(SS - case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: - /*Either self signed and untrusted*/ - /*Extract CN from certificate name information*/ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - if ((cn = strstr(remote_cert->name, "/CN=")) == NULL) { -+#else -+ if ((cn = strstr(X509_get_subject_name(remote_cert), "/CN=")) == NULL) { -+#endif - strcpy(buf, "(no CN given)"); - } else { - char *cn_end; diff --git a/www/dillo2/pkg-plist b/www/dillo2/pkg-plist index a02ea17856e1..2f4bf3e9c87a 100644 --- a/www/dillo2/pkg-plist +++ b/www/dillo2/pkg-plist @@ -5,6 +5,7 @@ bin/dpidc @sample etc/dillo/dillorc.sample @sample etc/dillo/domainrc.sample @sample etc/dillo/dpidrc.sample +@sample etc/dillo/hsts_preload.sample @sample etc/dillo/keysrc.sample libexec/dillo/dpi/bookmarks/bookmarks.dpi libexec/dillo/dpi/cookies/cookies.dpi @@ -13,7 +14,9 @@ libexec/dillo/dpi/downloads/downloads.dpi libexec/dillo/dpi/file/file.dpi libexec/dillo/dpi/ftp/ftp.filter.dpi libexec/dillo/dpi/hello/hello.filter.dpi -libexec/dillo/dpi/https/https.filter.dpi libexec/dillo/dpi/vsource/vsource.filter.dpi +share/applications/dillo.desktop +share/icons/hicolor/128x128/apps/dillo.png +share/icons/hicolor/48x48/apps/dillo.png share/man/man1/dillo.1.gz @dir libexec/dillo/hyphenation diff --git a/www/domoticz/Makefile b/www/domoticz/Makefile index f6d72fcf11d6..5affeba9ea85 100644 --- a/www/domoticz/Makefile +++ b/www/domoticz/Makefile @@ -1,6 +1,5 @@ PORTNAME= domoticz -DISTVERSION= 2023.1 -PORTREVISION= 2 +DISTVERSION= 2024.4 CATEGORIES= www MAINTAINER= kiwi@oav.net diff --git a/www/domoticz/distinfo b/www/domoticz/distinfo index 831bdeb9b4e6..0d14e196ff67 100644 --- a/www/domoticz/distinfo +++ b/www/domoticz/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1684829760 -SHA256 (domoticz-domoticz-2023.1_GH0.tar.gz) = 3144372d0847cb4d22a8c4b1362cd31885b37671adc682c3a8e9435762cde338 -SIZE (domoticz-domoticz-2023.1_GH0.tar.gz) = 13135239 +TIMESTAMP = 1714821392 +SHA256 (domoticz-domoticz-2024.4_GH0.tar.gz) = d87113d7cacd0b52b9126fcc1ef24e140a4f7042d5bc6262e86e4b4752f5cf38 +SIZE (domoticz-domoticz-2024.4_GH0.tar.gz) = 13221980 diff --git a/www/domoticz/pkg-plist b/www/domoticz/pkg-plist index 586e11fb27ef..850a65a40b8e 100644 --- a/www/domoticz/pkg-plist +++ b/www/domoticz/pkg-plist @@ -1,855 +1,3 @@ -domoticz/Config/2gig/ct100.xml -domoticz/Config/2gig/ct101.xml -domoticz/Config/2gig/ct200.xml -domoticz/Config/2gig/ct30.xml -domoticz/Config/2gig/ct32.xml -domoticz/Config/2gig/ct50e.xml -domoticz/Config/2gig/ct80.xml -domoticz/Config/BeNext/1poleswitch.xml -domoticz/Config/BeNext/2poleswitch.xml -domoticz/Config/BeNext/AlarmSound.xml -domoticz/Config/BeNext/BuiltinDimmer.xml -domoticz/Config/BeNext/DoorSensor.xml -domoticz/Config/BeNext/EnergySwitch.xml -domoticz/Config/BeNext/HeatingControl.xml -domoticz/Config/BeNext/Molite.xml -domoticz/Config/BeNext/P1dongle.xml -domoticz/Config/BeNext/PanicButton.xml -domoticz/Config/BeNext/PanicWatch.xml -domoticz/Config/BeNext/PluginDimmer.xml -domoticz/Config/BeNext/SceneController.xml -domoticz/Config/BeNext/TagReader.xml -domoticz/Config/BeNext/TagReader500.xml -domoticz/Config/BeNext/mydisplay.xml -domoticz/Config/BeNext/mygate.xml -domoticz/Config/Localization.xml -domoticz/Config/Localization.xsd -domoticz/Config/NotificationCCTypes.xml -domoticz/Config/NotificationCCTypes.xsd -domoticz/Config/SensorMultiLevelCCTypes.xml -domoticz/Config/SensorMultiLevelCCTypes.xsd -domoticz/Config/abus/SHRM10000.xml -domoticz/Config/act/lfm20.xml -domoticz/Config/act/zdm230.xml -domoticz/Config/act/zdp100.xml -domoticz/Config/act/zdw103.xml -domoticz/Config/act/zdw232.xml -domoticz/Config/act/zir010.xml -domoticz/Config/act/zrm230.xml -domoticz/Config/act/zrp100.xml -domoticz/Config/act/zrp110.xml -domoticz/Config/act/zrw103.xml -domoticz/Config/act/zrw230.xml -domoticz/Config/aeotec/dsa03202.xml -domoticz/Config/aeotec/dsa22.xml -domoticz/Config/aeotec/dsa38.xml -domoticz/Config/aeotec/dsb04100.xml -domoticz/Config/aeotec/dsb05.xml -domoticz/Config/aeotec/dsb09104.xml -domoticz/Config/aeotec/dsb28-zweu.xml -domoticz/Config/aeotec/dsb28.xml -domoticz/Config/aeotec/dsb29.xml -domoticz/Config/aeotec/dsb45.xml -domoticz/Config/aeotec/dsb54.xml -domoticz/Config/aeotec/dsc06106.xml -domoticz/Config/aeotec/dsc08101.xml -domoticz/Config/aeotec/dsc10.xml -domoticz/Config/aeotec/dsc11.xml -domoticz/Config/aeotec/dsc12104.xml -domoticz/Config/aeotec/dsc13104.xml -domoticz/Config/aeotec/dsc14104.xml -domoticz/Config/aeotec/dsc18103.xml -domoticz/Config/aeotec/dsc19103.xml -domoticz/Config/aeotec/dsc24.xml -domoticz/Config/aeotec/dsc26103.xml -domoticz/Config/aeotec/dsc27103.xml -domoticz/Config/aeotec/dsc35103.xml -domoticz/Config/aeotec/dsd37.xml -domoticz/Config/aeotec/zw056.xml -domoticz/Config/aeotec/zw062.xml -domoticz/Config/aeotec/zw074.xml -domoticz/Config/aeotec/zw075.xml -domoticz/Config/aeotec/zw078.xml -domoticz/Config/aeotec/zw080.xml -domoticz/Config/aeotec/zw088.xml -domoticz/Config/aeotec/zw089.xml -domoticz/Config/aeotec/zw090.xml -domoticz/Config/aeotec/zw095.xml -domoticz/Config/aeotec/zw096.xml -domoticz/Config/aeotec/zw097.xml -domoticz/Config/aeotec/zw098.xml -domoticz/Config/aeotec/zw099.xml -domoticz/Config/aeotec/zw100.xml -domoticz/Config/aeotec/zw111.xml -domoticz/Config/aeotec/zw112.xml -domoticz/Config/aeotec/zw116.xml -domoticz/Config/aeotec/zw117.xml -domoticz/Config/aeotec/zw120.xml -domoticz/Config/aeotec/zw121.xml -domoticz/Config/aeotec/zw122.xml -domoticz/Config/aeotec/zw129.xml -domoticz/Config/aeotec/zw130.xml -domoticz/Config/aeotec/zw132.xml -domoticz/Config/aeotec/zw139.xml -domoticz/Config/aeotec/zw140.xml -domoticz/Config/aeotec/zw141.xml -domoticz/Config/aeotec/zw162.xml -domoticz/Config/aeotec/zw164.xml -domoticz/Config/aeotec/zw175.xml -domoticz/Config/aeotec/zw187.xml -domoticz/Config/aeotec/zw189.xml -domoticz/Config/aeotec/zwa001.xml -domoticz/Config/aeotec/zwa002.xml -domoticz/Config/aeotec/zwa003.xml -domoticz/Config/aeotec/zwa004.xml -domoticz/Config/aeotec/zwa005.xml -domoticz/Config/aeotec/zwa006.xml -domoticz/Config/aeotec/zwa008.xml -domoticz/Config/aeotec/zwa009.xml -domoticz/Config/aeotec/zwa011.xml -domoticz/Config/aeotec/zwa012.xml -domoticz/Config/aeotec/zwa019.xml -domoticz/Config/aeotec/zwa021.xml -domoticz/Config/aeotec/zwa023.xml -domoticz/Config/airlinemechanical/zds-ud10.xml -domoticz/Config/alfred/DB2.xml -domoticz/Config/assa_abloy/ConexisL1.xml -domoticz/Config/assa_abloy/KeyfreeConnected-plus.xml -domoticz/Config/assa_abloy/KeyfreeConnected.xml -domoticz/Config/assa_abloy/ProSLKey-FreeDeadbolt.xml -domoticz/Config/assa_abloy/PushButtonDeadbolt.xml -domoticz/Config/assa_abloy/PushButtonLever.xml -domoticz/Config/assa_abloy/TouchDeadbolt.xml -domoticz/Config/assa_abloy/TouchLever.xml -domoticz/Config/assa_abloy/nexTouch.xml -domoticz/Config/assa_abloy/yrd1x0.xml -domoticz/Config/assa_abloy/yrm276.xml -domoticz/Config/august/asl-03.xml -domoticz/Config/buffalo/hw-100v15a-zw.xml -domoticz/Config/building36/b36-t10.xml -domoticz/Config/comfort/ucm.xml -domoticz/Config/config-template.xml -domoticz/Config/connecthome/ch-201.xml -domoticz/Config/cooper/RF9501.xml -domoticz/Config/cooper/RF9505-T.xml -domoticz/Config/cooper/RF9505-T.xml.zip -domoticz/Config/cooper/RF9517.xml -domoticz/Config/cooper/RF9540-N.xml -domoticz/Config/cooper/RF9542-Z.xml -domoticz/Config/cooper/RF9601.xml -domoticz/Config/cooper/RFWC5.xml -domoticz/Config/cooper/rf9534.xml -domoticz/Config/danfoss/living.xml -domoticz/Config/danfoss/rsroom.xml -domoticz/Config/danfoss/z.xml -domoticz/Config/device_classes.xml -domoticz/Config/device_classes.xsd -domoticz/Config/device_configuration.xsd -domoticz/Config/devolo/connectz.xml -domoticz/Config/devolo/mt02648.xml -domoticz/Config/devolo/mt02755.xml -domoticz/Config/devolo/mt02758.xml -domoticz/Config/devolo/mt02792.xml -domoticz/Config/devolo/mt2646.xml -domoticz/Config/devolo/mt2647.xml -domoticz/Config/devolo/mt2651.xml -domoticz/Config/devolo/mt2652.xml -domoticz/Config/devolo/mt2653.xml -domoticz/Config/devolo/mt2756.xml -domoticz/Config/devolo/mt2759.xml -domoticz/Config/devolo/mt2760.xml -domoticz/Config/devolo/mt2761.xml -domoticz/Config/devolo/rs014G0159.xml -domoticz/Config/diehlcontrols/766366.xml -domoticz/Config/dlink/dch-z110.xml -domoticz/Config/dlink/dch-z120.xml -domoticz/Config/dlink/dch-z210.xml -domoticz/Config/dlink/dch-z510.xml -domoticz/Config/dome/0002.xml -domoticz/Config/dome/0083.xml -domoticz/Config/dome/0085.xml -domoticz/Config/dome/0086.xml -domoticz/Config/dome/0087.xml -domoticz/Config/dome/0088.xml -domoticz/Config/dome/0101.xml -domoticz/Config/dome/0104.xml -domoticz/Config/dome/0201.xml -domoticz/Config/dome/dmex1.xml -domoticz/Config/domitech/zb22uk.xml -domoticz/Config/domitech/ze27eu.xml -domoticz/Config/domux/DX1CA-Z.xml -domoticz/Config/domux/DX1CG-Z.xml -domoticz/Config/domux/DX1DS-Z.xml -domoticz/Config/domux/DX1HT-Z.xml -domoticz/Config/domux/DX1MS-Z.xml -domoticz/Config/domux/DX1SA-Z.xml -domoticz/Config/domux/DX1WL-Z.xml -domoticz/Config/domux/DX2SK-Z.xml -domoticz/Config/dragontech/wd-100.xml -domoticz/Config/duco/DucoBox.xml -domoticz/Config/duco/Ducotronic_CO-RH_sensor.xml -domoticz/Config/duwi/05458.xml -domoticz/Config/duwi/ZWES1000.xml -domoticz/Config/duwi/ZWESJ300.xml -domoticz/Config/duwi/zw-edan-300.xml -domoticz/Config/duwi/zw-zdan-300.xml -domoticz/Config/duwi/zwfb.xml -domoticz/Config/duwi/zwws.xml -domoticz/Config/ecodim/0.7.xml -domoticz/Config/ecolink/doorwindow.xml -domoticz/Config/ecolink/firefighter.xml -domoticz/Config/ecolink/floodfreeze.xml -domoticz/Config/ecolink/motion.xml -domoticz/Config/ecolink/sensor.xml -domoticz/Config/ecolink/tiltsensor.xml -domoticz/Config/econet/ezw1204.xml -domoticz/Config/electronicsolutions/dbmz.xml -domoticz/Config/enblink/ss201-us-w_1308.xml -domoticz/Config/enerwave/zw15rmplus.xml -domoticz/Config/enerwave/zw15s.xml -domoticz/Config/enerwave/zw20r.xml -domoticz/Config/enerwave/zw20rm.xml -domoticz/Config/enerwave/zw500d.xml -domoticz/Config/enerwave/zwn-bpc.xml -domoticz/Config/enerwave/zwn-sc7.xml -domoticz/Config/enerwave/zwnrsm1plus.xml -domoticz/Config/enerwave/zwnrsm2plus.xml -domoticz/Config/eurotronic/eur_airquality.xml -domoticz/Config/eurotronic/eur_cometz.xml -domoticz/Config/eurotronic/eur_spiritz.xml -domoticz/Config/eurotronic/eur_stellaz.xml -domoticz/Config/eurotronic/eur_temphumin.xml -domoticz/Config/everspring/ad146.xml -domoticz/Config/everspring/ad147.xml -domoticz/Config/everspring/an145.xml -domoticz/Config/everspring/an157.xml -domoticz/Config/everspring/an158.xml -domoticz/Config/everspring/an163.xml -domoticz/Config/everspring/an179.xml -domoticz/Config/everspring/an180.xml -domoticz/Config/everspring/an181.xml -domoticz/Config/everspring/hac01.xml -domoticz/Config/everspring/han01.xml -domoticz/Config/everspring/han02-1.xml -domoticz/Config/everspring/hsp02.xml -domoticz/Config/everspring/lptdm1u.xml -domoticz/Config/everspring/se812.xml -domoticz/Config/everspring/sf812.xml -domoticz/Config/everspring/sm103.xml -domoticz/Config/everspring/sp103.xml -domoticz/Config/everspring/sp814.xml -domoticz/Config/everspring/sp815.xml -domoticz/Config/everspring/sp816.xml -domoticz/Config/everspring/st812.xml -domoticz/Config/everspring/st814.xml -domoticz/Config/everspring/st815.xml -domoticz/Config/everspring/tse03.xml -domoticz/Config/everspringct/hsm02.xml -domoticz/Config/evolve/lfm-20.xml -domoticz/Config/evolve/lrm-as.xml -domoticz/Config/evolve/lsm-15.xml -domoticz/Config/evolve/ltm-5.xml -domoticz/Config/evolve/t-100.xml -domoticz/Config/fakro/arz.xml -domoticz/Config/fakro/arzsolar.xml -domoticz/Config/fakro/zrh12.xml -domoticz/Config/fakro/zwp10.xml -domoticz/Config/fakro/zwrs.xml -domoticz/Config/fakro/zws12.xml -domoticz/Config/fakro/zws230.xml -domoticz/Config/fibaro/fgbs001.xml -domoticz/Config/fibaro/fgbs222.xml -domoticz/Config/fibaro/fgcd001.xml -domoticz/Config/fibaro/fgd211.xml -domoticz/Config/fibaro/fgd212.xml -domoticz/Config/fibaro/fgdw2.xml -domoticz/Config/fibaro/fgfs101.xml -domoticz/Config/fibaro/fgfs101zw5.xml -domoticz/Config/fibaro/fggc001.xml -domoticz/Config/fibaro/fgk001.xml -domoticz/Config/fibaro/fgk10x.xml -domoticz/Config/fibaro/fgkf601.xml -domoticz/Config/fibaro/fgms.xml -domoticz/Config/fibaro/fgmszw5.xml -domoticz/Config/fibaro/fgpb101.xml -domoticz/Config/fibaro/fgr221.xml -domoticz/Config/fibaro/fgr223.xml -domoticz/Config/fibaro/fgrgbw442.xml -domoticz/Config/fibaro/fgrgbwm441.xml -domoticz/Config/fibaro/fgrm222.xml -domoticz/Config/fibaro/fgs211.xml -domoticz/Config/fibaro/fgs212.xml -domoticz/Config/fibaro/fgs213.xml -domoticz/Config/fibaro/fgs214.xml -domoticz/Config/fibaro/fgs221.xml -domoticz/Config/fibaro/fgs222.xml -domoticz/Config/fibaro/fgs223.xml -domoticz/Config/fibaro/fgs224.xml -domoticz/Config/fibaro/fgsd002.xml -domoticz/Config/fibaro/fgss101.xml -domoticz/Config/fibaro/fgt001.xml -domoticz/Config/fibaro/fgwd111.xml -domoticz/Config/fibaro/fgwds221.xml -domoticz/Config/fibaro/fgwds221ss.xml -domoticz/Config/fibaro/fgwoe.xml -domoticz/Config/fibaro/fgwpb121.xml -domoticz/Config/fibaro/fgwpe.xml -domoticz/Config/fibaro/fgwpfzw5.xml -domoticz/Config/fibaro/fgwpg111.xml -domoticz/Config/fibaro/fgwr111.xml -domoticz/Config/firstalert/zcombo-g.xml -domoticz/Config/firstalert/zcombo.xml -domoticz/Config/firstalert/zsmoke.xml -domoticz/Config/followgood/swz-1002.xml -domoticz/Config/forest/fs2z5232000002.xml -domoticz/Config/fortrezz/fmi.xml -domoticz/Config/fortrezz/fts05p.xml -domoticz/Config/fortrezz/gdc1_fortrezz_1501.xml -domoticz/Config/fortrezz/mimo2plus.xml -domoticz/Config/fortrezz/mimolite.xml -domoticz/Config/fortrezz/ssa2.xml -domoticz/Config/fortrezz/ssa3.xml -domoticz/Config/fortrezz/wv01.xml -domoticz/Config/fortrezz/wwa-01aa.xml -domoticz/Config/fortrezz/wwa02.xml -domoticz/Config/frostdale/fdn2311.xml -domoticz/Config/frostdale/fdn2nxx.xml -domoticz/Config/ge/12719-plugin-switch.xml -domoticz/Config/ge/12720.xml -domoticz/Config/ge/12724-dimmer.xml -domoticz/Config/ge/12727.xml -domoticz/Config/ge/14280-plugin-dimmer.xml -domoticz/Config/ge/14282-plugin-switch.xml -domoticz/Config/ge/14284.xml -domoticz/Config/ge/14285.xml -domoticz/Config/ge/14288-outlet.xml -domoticz/Config/ge/14291-switch.xml -domoticz/Config/ge/14292-toggle-switch.xml -domoticz/Config/ge/14294-dimmer.xml -domoticz/Config/ge/14295-dimmer-toggle.xml -domoticz/Config/ge/14298.xml -domoticz/Config/ge/14322-dimmer-toggle.xml -domoticz/Config/ge/26931-motion-switch.xml -domoticz/Config/ge/26932-motion-dimmer.xml -domoticz/Config/ge/26933-motion-dimmer.xml -domoticz/Config/ge/28167-plugin-dimmer.xml -domoticz/Config/ge/28169-plugin-switch.xml -domoticz/Config/ge/45604.xml -domoticz/Config/ge/46201-switch.xml -domoticz/Config/ge/46202-switch.xml -domoticz/Config/ge/46203-dimmer.xml -domoticz/Config/ge/46204-dimmer-toggle.xml -domoticz/Config/ge/dimmer.xml -domoticz/Config/ge/dimmer_module.xml -domoticz/Config/ge/hinge-pin.xml -domoticz/Config/ge/receptacle.xml -domoticz/Config/ge/relay.xml -domoticz/Config/ge/ze26i.xml -domoticz/Config/ge/zw4001-switch.xml -domoticz/Config/ge/zw6302.xml -domoticz/Config/gocontrol/GC-TBZ48L.xml -domoticz/Config/goodway/td14010.xml -domoticz/Config/gr/gr-302n.xml -domoticz/Config/gr/gr105.xml -domoticz/Config/gr/gr105n.xml -domoticz/Config/gr/grb3.xml -domoticz/Config/graber/brz1.xml -domoticz/Config/graber/csz1.xml -domoticz/Config/graber/mcz1.xml -domoticz/Config/graber/rsz1.xml -domoticz/Config/graber/vcz1.xml -domoticz/Config/greenwave/gs1110-1-gr-1.xml -domoticz/Config/greenwave/powernode1.xml -domoticz/Config/greenwave/powernode6.xml -domoticz/Config/guardtec/gkw2000d.xml -domoticz/Config/hab/iblindsV2.xml -domoticz/Config/hab/iblindsV3.xml -domoticz/Config/hank/hkzw-dws01.xml -domoticz/Config/hank/hkzw-fld01.xml -domoticz/Config/hank/hkzw-ms01.xml -domoticz/Config/hank/hkzw-ms02-200.xml -domoticz/Config/hank/hkzw-ms02-300.xml -domoticz/Config/hank/hkzw-rgb01.xml -domoticz/Config/hank/hkzw-so01-smartplug.xml -domoticz/Config/hank/hkzw-so03.xml -domoticz/Config/hank/hkzw-so05-smartplug.xml -domoticz/Config/hank/hkzw-so08-smartplug.xml -domoticz/Config/hank/scenecontroller1.xml -domoticz/Config/hank/scenecontroller4.xml -domoticz/Config/heiman/HS1CA-Z.xml -domoticz/Config/heiman/HS1CG-Z.xml -domoticz/Config/heiman/HS1DS-Z.xml -domoticz/Config/heiman/HS1HT-Z.xml -domoticz/Config/heiman/HS1MS-Z.xml -domoticz/Config/heiman/HS1SA-Z.xml -domoticz/Config/heiman/HS1WL-Z.xml -domoticz/Config/heiman/HS2SK-Z.xml -domoticz/Config/heiman/HS2WD-Z.xml -domoticz/Config/heltun/he-ft01.xml -domoticz/Config/heltun/he-ht01.xml -domoticz/Config/heltun/he-zw-sw-5a-1.xml -domoticz/Config/heltun/he-zw-therm-fc1.xml -domoticz/Config/heltun/he-zw-therm-fl2.xml -domoticz/Config/homeseer/ezmotionplus.xml -domoticz/Config/homeseer/hs-ds100plus.xml -domoticz/Config/homeseer/hs-fc200plus.xml -domoticz/Config/homeseer/hs-fls100plus.xml -domoticz/Config/homeseer/hs-fs100plus.xml -domoticz/Config/homeseer/hs-ls100plus.xml -domoticz/Config/homeseer/hs-ms100plus.xml -domoticz/Config/homeseer/hs-wd100plus.xml -domoticz/Config/homeseer/hs-wd200plus.xml -domoticz/Config/homeseer/hs-ws100plus.xml -domoticz/Config/homeseer/hs-ws200plus.xml -domoticz/Config/homeseer/hsm100.xml -domoticz/Config/homeseer/hsm200.xml -domoticz/Config/homeseer/ztroller.xml -domoticz/Config/honeywell/2681-plugin-dimmer.xml -domoticz/Config/honeywell/3830-zw3107.xml -domoticz/Config/honeywell/39348-ZW4005.xml -domoticz/Config/honeywell/39348-zw4008.xml -domoticz/Config/honeywell/39349-ZW1002.xml -domoticz/Config/honeywell/39351-ZW3005.xml -domoticz/Config/honeywell/39351-ZW3010.xml -domoticz/Config/honeywell/39357-ZW3004.xml -domoticz/Config/honeywell/39358-ZW4002.xml -domoticz/Config/honeywell/39449-ZW4106.xml -domoticz/Config/honeywell/lynx-touch-l5100.xml -domoticz/Config/honeywell/th6320zw2003.xml -domoticz/Config/honeywell/th8320zw1000.xml -domoticz/Config/horstmann/asrzw.xml -domoticz/Config/horstmann/hrt4zw.xml -domoticz/Config/horstmann/scsc17.xml -domoticz/Config/horstmann/ses301.xml -domoticz/Config/horstmann/ses302.xml -domoticz/Config/horstmann/ses303.xml -domoticz/Config/horstmann/sir321.xml -domoticz/Config/horstmann/srt321.xml -domoticz/Config/horstmann/srt323.xml -domoticz/Config/horstmann/ssr302.xml -domoticz/Config/horstmann/ssr303.xml -domoticz/Config/icare/zw-66.xml -domoticz/Config/idlock/idlock101.xml -domoticz/Config/idlock/idlock150.xml -domoticz/Config/ingersoll/dwzwave1.xml -domoticz/Config/inovelli/lzw30-sn.xml -domoticz/Config/inovelli/lzw30.xml -domoticz/Config/inovelli/lzw31-sn.xml -domoticz/Config/inovelli/lzw31.xml -domoticz/Config/inovelli/lzw36.xml -domoticz/Config/inovelli/lzw40.xml -domoticz/Config/inovelli/lzw41.xml -domoticz/Config/inovelli/lzw42.xml -domoticz/Config/inovelli/lzw45.xml -domoticz/Config/inovelli/lzw60.xml -domoticz/Config/inovelli/nzw1201.xml -domoticz/Config/inovelli/nzw30.xml -domoticz/Config/inovelli/nzw31.xml -domoticz/Config/inovelli/nzw36.xml -domoticz/Config/inovelli/nzw37.xml -domoticz/Config/inovelli/nzw39.xml -domoticz/Config/inovelli/nzw96.xml -domoticz/Config/inovelli/nzw97.xml -domoticz/Config/inovelli/simple_module.xml -domoticz/Config/intermatic/ca8900.xml -domoticz/Config/iris/rangeextender.xml -domoticz/Config/iwatsu/ne-4ct-2p.xml -domoticz/Config/iwatsu/ne-4ct.xml -domoticz/Config/jasco/45601.xml -domoticz/Config/kaipule/im20.xml -domoticz/Config/kaipule/ix32.xml -domoticz/Config/kwikset/888.xml -domoticz/Config/kwikset/910.xml -domoticz/Config/kwikset/914c.xml -domoticz/Config/kwikset/916.xml -domoticz/Config/kwikset/smartcode.xml -domoticz/Config/leviton/dz15s.xml -domoticz/Config/leviton/dz6hd.xml -domoticz/Config/leviton/dzpa1.xml -domoticz/Config/leviton/dzpd3.xml -domoticz/Config/leviton/rzi10.xml -domoticz/Config/leviton/vrcpg.xml -domoticz/Config/leviton/vrcs2.xml -domoticz/Config/leviton/vrcz4.xml -domoticz/Config/leviton/vre06.xml -domoticz/Config/leviton/vrf01.xml -domoticz/Config/leviton/vri06.xml -domoticz/Config/leviton/vri10.xml -domoticz/Config/leviton/vrpa1.xml -domoticz/Config/leviton/vrpd3.xml -domoticz/Config/leviton/vrs15.xml -domoticz/Config/leviton/zw15r.xml -domoticz/Config/leviton/zw4sf.xml -domoticz/Config/linear/GC-TBZ48.xml -domoticz/Config/linear/LB60Z-1.xml -domoticz/Config/linear/PD300Z-2.xml -domoticz/Config/linear/WA00Z-1.xml -domoticz/Config/linear/WA105DBZ-1.xml -domoticz/Config/linear/WADWAZ-1.xml -domoticz/Config/linear/WAPIRZ-1.xml -domoticz/Config/linear/WD500Z-1.xml -domoticz/Config/linear/WD500Z5-1.xml -domoticz/Config/linear/WS15Z-1.xml -domoticz/Config/linear/WT00Z-1.xml -domoticz/Config/linear/WT00Z5-1.xml -domoticz/Config/linear/gd00z-7.xml -domoticz/Config/linear/ngd00z.xml -domoticz/Config/logicsoft/ZDB5100.xml -domoticz/Config/logicsoft/ZHC5002.xml -domoticz/Config/logicsoft/ZHC5010.xml -domoticz/Config/manufacturer_specific.xml -domoticz/Config/manufacturer_specific.xsd -domoticz/Config/mcohome/a8-9.xml -domoticz/Config/mcohome/mh10pm25wd.xml -domoticz/Config/mcohome/mh7h.xml -domoticz/Config/mcohome/mh8fceu.xml -domoticz/Config/mcohome/mh8fceu0803.xml -domoticz/Config/mcohome/mh9co2.xml -domoticz/Config/mcohome/mhdt411.xml -domoticz/Config/mcohome/mhp210.xml -domoticz/Config/mcohome/mhp220.xml -domoticz/Config/mcohome/mhp511.xml -domoticz/Config/mcohome/mhs220.xml -domoticz/Config/mcohome/mhs311.xml -domoticz/Config/mcohome/mhs312.xml -domoticz/Config/mcohome/mhs314.xml -domoticz/Config/mcohome/mhs411.xml -domoticz/Config/mcohome/mhs412.xml -domoticz/Config/mcohome/mhs513.xml -domoticz/Config/merten/5044xx.xml -domoticz/Config/merten/5046xx.xml -domoticz/Config/merten/506004.xml -domoticz/Config/merten/507801.xml -domoticz/Config/merten/508244.xml -domoticz/Config/merten/50x5xx.xml -domoticz/Config/miyakawaelectric/me-d101.xml -domoticz/Config/namron/1402756.xml -domoticz/Config/namron/4512710.xml -domoticz/Config/namron/4512712.xml -domoticz/Config/namron/4512714.xml -domoticz/Config/namron/4512715.xml -domoticz/Config/namron/4512720.xml -domoticz/Config/namron/4512724.xml -domoticz/Config/nei/ms11z.xml -domoticz/Config/nexia/db100z.xml -domoticz/Config/nexia/th100nx.xml -domoticz/Config/nodon/asp3100SmartPlug.xml -domoticz/Config/nodon/crc3100OctanRemote.xml -domoticz/Config/nodon/crc360xSofremote.xml -domoticz/Config/nodon/cws3101wallswitch.xml -domoticz/Config/nodon/msp31xxMicroSmartPlug.xml -domoticz/Config/northq/nq9021.xml -domoticz/Config/northq/nq9121.xml -domoticz/Config/northq/nq92021.xml -domoticz/Config/oomi/ft100.xml -domoticz/Config/oomi/ft111.xml -domoticz/Config/oomi/ft112.xml -domoticz/Config/oomi/ft118.xml -domoticz/Config/options.xml -domoticz/Config/options.xsd -domoticz/Config/permundo/psc132zw.xml -domoticz/Config/permundo/psc234zw.xml -domoticz/Config/philio/pad02.xml -domoticz/Config/philio/pan03.xml -domoticz/Config/philio/pan04.xml -domoticz/Config/philio/pan05.xml -domoticz/Config/philio/pan06.xml -domoticz/Config/philio/pan07.xml -domoticz/Config/philio/pan08.xml -domoticz/Config/philio/pan11-1.xml -domoticz/Config/philio/pan11.xml -domoticz/Config/philio/pan16.xml -domoticz/Config/philio/phpab01.xml -domoticz/Config/philio/phpat02.xml -domoticz/Config/philio/phpsg01.xml -domoticz/Config/philio/pse02.xml -domoticz/Config/philio/psm02.xml -domoticz/Config/philio/psp05.xml -domoticz/Config/philio/psr03-1b.xml -domoticz/Config/philio/psr04.xml -domoticz/Config/philio/pst02-1c.xml -domoticz/Config/philio/pst02-b.xml -domoticz/Config/philio/pst02.xml -domoticz/Config/polycontrol/doorlock.xml -domoticz/Config/polycontrol/doorlockv3.xml -domoticz/Config/polycontrol/keypad.xml -domoticz/Config/polycontrol/polylock.xml -domoticz/Config/popp/004407.xml -domoticz/Config/popp/009105.xml -domoticz/Config/popp/009303.xml -domoticz/Config/popp/009402.xml -domoticz/Config/popp/009501.xml -domoticz/Config/popp/012501.xml -domoticz/Config/popp/123580.xml -domoticz/Config/popp/123601.xml -domoticz/Config/popp/123658.xml -domoticz/Config/popp/700045.xml -domoticz/Config/popp/700168.xml -domoticz/Config/popp/700342.xml -domoticz/Config/popp/700397.xml -domoticz/Config/popp/700793.xml -domoticz/Config/popp/701202.xml -domoticz/Config/popp/dwt.xml -domoticz/Config/popp/smoke-detector.xml -domoticz/Config/popp/solar-siren.xml -domoticz/Config/popp/zweather.xml -domoticz/Config/prowell/zw-702.xml -domoticz/Config/q-light/q-light_puck.xml -domoticz/Config/q-light/q-light_zerodim.xml -domoticz/Config/q-light/q-light_zerodim_2pol.xml -domoticz/Config/qees/reto-dimmer-plus.xml -domoticz/Config/qees/reto-plugin-switch.xml -domoticz/Config/qolsys/qz2140-840.xml -domoticz/Config/qubino/ZMNHAA2.xml -domoticz/Config/qubino/ZMNHADx.xml -domoticz/Config/qubino/ZMNHBA2.xml -domoticz/Config/qubino/ZMNHBDx.xml -domoticz/Config/qubino/ZMNHCA2.xml -domoticz/Config/qubino/ZMNHCDx.xml -domoticz/Config/qubino/ZMNHDA2.xml -domoticz/Config/qubino/ZMNHDDx.xml -domoticz/Config/qubino/ZMNHHDx.xml -domoticz/Config/qubino/ZMNHIA2.xml -domoticz/Config/qubino/ZMNHIDxS1.xml -domoticz/Config/qubino/ZMNHIDxS2.xml -domoticz/Config/qubino/ZMNHJA2.xml -domoticz/Config/qubino/ZMNHJD1.xml -domoticz/Config/qubino/ZMNHKDx.xml -domoticz/Config/qubino/ZMNHLAx.xml -domoticz/Config/qubino/ZMNHLDx.xml -domoticz/Config/qubino/ZMNHMDx.xml -domoticz/Config/qubino/ZMNHNDx.xml -domoticz/Config/qubino/ZMNHODx.xml -domoticz/Config/qubino/ZMNHQDx.xml -domoticz/Config/qubino/ZMNHSDx.xml -domoticz/Config/qubino/ZMNHTDx.xml -domoticz/Config/qubino/ZMNHTDxS3.xml -domoticz/Config/qubino/ZMNHUD1.xml -domoticz/Config/qubino/ZMNHVDx.xml -domoticz/Config/qubino/ZMNHWD1.xml -domoticz/Config/qubino/ZMNHXDx.xml -domoticz/Config/qubino/ZMNHYDx.xml -domoticz/Config/qubino/ZMNHZDx.xml -domoticz/Config/qubino/ZMNKADx.xml -domoticz/Config/qubino/ZMNKIDx.xml -domoticz/Config/quby/qb2.xml -domoticz/Config/rcs/em52-zw.xml -domoticz/Config/rcs/pm12-zw.xml -domoticz/Config/rcs/therm0005.xml -domoticz/Config/rcs/therm0007.xml -domoticz/Config/rcs/therm0009.xml -domoticz/Config/remotec/bw8120eu.xml -domoticz/Config/remotec/zfm-80.xml -domoticz/Config/remotec/zrc-100eu.xml -domoticz/Config/remotec/zrc-90.xml -domoticz/Config/remotec/zts-110.xml -domoticz/Config/remotec/zts-500.xml -domoticz/Config/remotec/zurc.xml -domoticz/Config/remotec/zxt-120.xml -domoticz/Config/remotec/zxt-310.xml -domoticz/Config/remotec/zxt-600.xml -domoticz/Config/ring/PIR-SS.xml -domoticz/Config/ring/contact-sensor-v2.xml -domoticz/Config/ring/motion-detector-v2.xml -domoticz/Config/schlage/BE468.xml -domoticz/Config/schlage/BE468ZP.xml -domoticz/Config/schlage/BE469.xml -domoticz/Config/schlage/BE469ZP.xml -domoticz/Config/schlage/fe599.xml -domoticz/Config/schlagelink/41.xml -domoticz/Config/schlagelink/itemp.xml -domoticz/Config/schlagelink/minikeypad.xml -domoticz/Config/sensative/strips.xml -domoticz/Config/sensative/stripscomfort.xml -domoticz/Config/sercomm/sw-clp01-eu.xml -domoticz/Config/shenzen_neo/ls01ch.xml -domoticz/Config/shenzen_neo/ls02ch.xml -domoticz/Config/shenzen_neo/ls03ch.xml -domoticz/Config/shenzen_neo/nas-ab01z.xml -domoticz/Config/shenzen_neo/nas-cs01z.xml -domoticz/Config/shenzen_neo/nas-ds01z.xml -domoticz/Config/shenzen_neo/nas-pd01z.xml -domoticz/Config/shenzen_neo/nas-pd02z.xml -domoticz/Config/shenzen_neo/nas-pd03z.xml -domoticz/Config/shenzen_neo/nas-rc01z.xml -domoticz/Config/shenzen_neo/nas-sc03ze.xml -domoticz/Config/shenzen_neo/nas-wr01z.xml -domoticz/Config/shenzen_neo/nas-wr01ze.xml -domoticz/Config/shenzen_neo/nas-ws02z.xml -domoticz/Config/shenzen_saykey/sk-3007-05.xml -domoticz/Config/simon/10002020-13X.xml -domoticz/Config/simon/10002034-13X.xml -domoticz/Config/simon/10002041-13X.xml -domoticz/Config/simon/10002080-13X.xml -domoticz/Config/smartthings/pgc401m.xml -domoticz/Config/smartthings/sth-eth200.xml -domoticz/Config/somfy/1811265_ZRTSI.xml -domoticz/Config/steinel/is140-2.xml -domoticz/Config/steinel/l810-led-ihf.xml -domoticz/Config/steinel/rs-led-d2.xml -domoticz/Config/steinel/xled-home-2.xml -domoticz/Config/stelpro/stzw402.xml -domoticz/Config/sunricher/srzv9001k12dimz4.xml -domoticz/Config/sunricher/srzv9001k12dimz5.xml -domoticz/Config/sunricher/srzv9001k2dim.xml -domoticz/Config/sunricher/srzv9001k4dim.xml -domoticz/Config/sunricher/srzv9001k4dimg2.xml -domoticz/Config/sunricher/srzv9001k8.xml -domoticz/Config/sunricher/srzv9001t4dimeu.xml -domoticz/Config/sunricher/srzv9001tccteu.xml -domoticz/Config/sunricher/srzv9003t4rgbweu.xml -domoticz/Config/sunricher/srzv9100aa.xml -domoticz/Config/sunricher/srzv9101sachpeu.xml -domoticz/Config/sunricher/srzv9101sachpswitch.xml -domoticz/Config/sunricher/zv2835rac.xml -domoticz/Config/sunricher/zv9101.xml -domoticz/Config/sunricher/zv9101fa.xml -domoticz/Config/swiid/swiidinter.xml -domoticz/Config/swiid/swiidplug.xml -domoticz/Config/technisat/03009496.xml -domoticz/Config/technisat/03009497.xml -domoticz/Config/technisat/03009499.xml -domoticz/Config/telldus/TZWP102.xml -domoticz/Config/telldus/tzdw100.xml -domoticz/Config/telldus/tzwp100.xml -domoticz/Config/there/800z.xml -domoticz/Config/thermofloor/heatit-zdim.xml -domoticz/Config/thermofloor/heatit021-v1.92.xml -domoticz/Config/thermofloor/heatit021.xml -domoticz/Config/thermofloor/heatit056.xml -domoticz/Config/thermofloor/heatit058.xml -domoticz/Config/thermofloor/heatit204.xml -domoticz/Config/thermofloor/heatit20a.xml -domoticz/Config/thermofloor/heatitz4.xml -domoticz/Config/thermofloor/heatitz8.xml -domoticz/Config/thermofloor/heatitzm.xml -domoticz/Config/trane/TZEMT400AB32MAA.xml -domoticz/Config/trane/TZEMT400BB32MAA.xml -domoticz/Config/trane/TZEMT524AA21MA.xml -domoticz/Config/vera/vera2.xml -domoticz/Config/vision/1701.xml -domoticz/Config/vision/brg1-433.xml -domoticz/Config/vision/zd2102.xml -domoticz/Config/vision/zd2105us5.xml -domoticz/Config/vision/zd2201.xml -domoticz/Config/vision/zd2301.xml -domoticz/Config/vision/zf5201.xml -domoticz/Config/vision/zg8101.xml -domoticz/Config/vision/zl7101us.xml -domoticz/Config/vision/zl7201us.xml -domoticz/Config/vision/zl7261.xml -domoticz/Config/vision/zl7431.xml -domoticz/Config/vision/zl7432us.xml -domoticz/Config/vision/zm1601eu.xml -domoticz/Config/vision/zm1601eu5.xml -domoticz/Config/vision/zm1602eu.xml -domoticz/Config/vision/zm1602eu5.xml -domoticz/Config/vision/zp3102.xml -domoticz/Config/vision/zp3111.xml -domoticz/Config/vision/zr1202us.xml -domoticz/Config/vision/zs5101eu.xml -domoticz/Config/vision/zs610eu.xml -domoticz/Config/vision/zu1401jp.xml -domoticz/Config/vitrum/vitrumI-Dimmer.xml -domoticz/Config/vitrum/vitrumI-Switch.xml -domoticz/Config/vitrum/vitrumII-Dimmer.xml -domoticz/Config/vitrum/vitrumII-RollerBlind.xml -domoticz/Config/vitrum/vitrumII-Switch.xml -domoticz/Config/vitrum/vitrumIII-Dimmer.xml -domoticz/Config/vitrum/vitrumIII-Switch.xml -domoticz/Config/vitrum/vitrumIV-Switch.xml -domoticz/Config/vitrum/vitrumVI-Switch.xml -domoticz/Config/waynedalton/WDTC-20.xml -domoticz/Config/wenzhou/sm103.xml -domoticz/Config/wenzhou/tsp01.xml -domoticz/Config/wenzhou/tz55.xml -domoticz/Config/wenzhou/tz56.xml -domoticz/Config/wenzhou/tz56s.xml -domoticz/Config/wenzhou/tz57.xml -domoticz/Config/wenzhou/tz65d.xml -domoticz/Config/wenzhou/tz66d.xml -domoticz/Config/wenzhou/tz67.xml -domoticz/Config/wenzhou/tz68.xml -domoticz/Config/wenzhou/tz69.xml -domoticz/Config/wenzhou/tz74.xml -domoticz/Config/wenzhou/tz77.xml -domoticz/Config/wenzhou/tz78.xml -domoticz/Config/wenzhou/tz79.xml -domoticz/Config/wenzhou/tz88.xml -domoticz/Config/wenzhou/tze96.xml -domoticz/Config/widom/DRY.xml -domoticz/Config/widom/UBS104.xml -domoticz/Config/widom/UME304C_S.xml -domoticz/Config/widom/UMS2.xml -domoticz/Config/widom/WDS.xml -domoticz/Config/widom/WDS2.xml -domoticz/Config/widom/WSP.xml -domoticz/Config/widom/WTED.xml -domoticz/Config/wink/wnk-mot1.xml -domoticz/Config/wink/wnk-sir1p.xml -domoticz/Config/zipato/MiniKeypad.xml -domoticz/Config/zipato/RGBBulb.xml -domoticz/Config/zipato/RGBBulb2.xml -domoticz/Config/zipato/ne-nas-ab02z.xml -domoticz/Config/zipato/pan04.xml -domoticz/Config/zipato/vszd2102.xml -domoticz/Config/zipato/zp3102.xml -domoticz/Config/zooz/zen06.xml -domoticz/Config/zooz/zen07.xml -domoticz/Config/zooz/zen15.xml -domoticz/Config/zooz/zen16.xml -domoticz/Config/zooz/zen17.xml -domoticz/Config/zooz/zen20.xml -domoticz/Config/zooz/zen20v2.xml -domoticz/Config/zooz/zen21.xml -domoticz/Config/zooz/zen21v3.xml -domoticz/Config/zooz/zen22.xml -domoticz/Config/zooz/zen22v2.xml -domoticz/Config/zooz/zen23.xml -domoticz/Config/zooz/zen23v3.xml -domoticz/Config/zooz/zen24.xml -domoticz/Config/zooz/zen24v2.xml -domoticz/Config/zooz/zen25.xml -domoticz/Config/zooz/zen26.xml -domoticz/Config/zooz/zen27.xml -domoticz/Config/zooz/zen30.xml -domoticz/Config/zooz/zen31.xml -domoticz/Config/zooz/zen32.xml -domoticz/Config/zooz/zen34.xml -domoticz/Config/zooz/zen71.xml -domoticz/Config/zooz/zen72.xml -domoticz/Config/zooz/zen76.xml -domoticz/Config/zooz/zen77.xml -domoticz/Config/zooz/zse08.xml -domoticz/Config/zooz/zse09.xml -domoticz/Config/zooz/zse18.xml -domoticz/Config/zooz/zse19.xml -domoticz/Config/zooz/zse29.xml -domoticz/Config/zooz/zse30.xml -domoticz/Config/zooz/zse33.xml -domoticz/Config/zooz/zse40.xml -domoticz/Config/zwave.me/004001.xml -domoticz/Config/zwave.me/ZME_05431.xml -domoticz/Config/zwave.me/ZME_05461.xml -domoticz/Config/zwave.me/ZME_06433.xml -domoticz/Config/zwave.me/ZME_06436.xml -domoticz/Config/zwave.me/ZME_064381.xml -domoticz/Config/zwave.me/ZME_064435.xml -domoticz/Config/zwave.me/ZME_KFOB-S.xml -domoticz/Config/zwave.me/ZME_RC2.xml -domoticz/Config/zwave.me/ZME_WALLC-S.xml -domoticz/Config/zwave.me/ZME_WCD2.xml -domoticz/Config/zwave.me/ZUno.xml -domoticz/Config/zwave.me/iTemp.xml -domoticz/Config/zwave.me/kfob.xml -domoticz/Config/zwave.me/popp_kfob-c.xml -domoticz/Config/zwave.me/razberry.xml -domoticz/Config/zwave.me/zme_raz5.xml -domoticz/Config/zwave.me/zweather.xml -domoticz/Config/zwcfg.xsd -domoticz/Config/zwp/PA-100.xml -domoticz/Config/zwp/WD-100.xml -domoticz/Config/zwscene.xsd domoticz/History.txt domoticz/License.txt domoticz/domoticz @@ -1136,6 +284,7 @@ domoticz/www/app/DPFibaroController.js domoticz/www/app/DPGooglePubSubController.js domoticz/www/app/DPHttpController.js domoticz/www/app/DPInfluxController.js +domoticz/www/app/DPMQTTController.js domoticz/www/app/DashboardController.js domoticz/www/app/DeviceLightEdit.js domoticz/www/app/DummyController.js @@ -1149,9 +298,9 @@ domoticz/www/app/LogController.js domoticz/www/app/LoginController.js domoticz/www/app/LogoutController.js domoticz/www/app/MobileNotificationsController.js +domoticz/www/app/MyProfileController.js domoticz/www/app/NotificationController.js domoticz/www/app/OfflineController.js -domoticz/www/app/RFXComFirmwareController.js domoticz/www/app/RestoreDatabaseController.js domoticz/www/app/ScenesController.js domoticz/www/app/SetupController.js @@ -1202,6 +351,10 @@ domoticz/www/app/hardware/setup/EnOceanESP3.html domoticz/www/app/hardware/setup/EnOceanESP3.js domoticz/www/app/hardware/setup/Kodi.html domoticz/www/app/hardware/setup/Kodi.js +domoticz/www/app/hardware/setup/MQTT-AD.html +domoticz/www/app/hardware/setup/MQTT-AD.js +domoticz/www/app/hardware/setup/MQTT.html +domoticz/www/app/hardware/setup/MQTT.js domoticz/www/app/hardware/setup/MySensors.html domoticz/www/app/hardware/setup/MySensors.js domoticz/www/app/hardware/setup/PanasonicTV.html @@ -1235,13 +388,18 @@ domoticz/www/app/log/GraphLog.html domoticz/www/app/log/GraphLog.js domoticz/www/app/log/LightLog.html domoticz/www/app/log/LightLog.js +domoticz/www/app/log/RainLog.html +domoticz/www/app/log/RainLog.js domoticz/www/app/log/RefreshingChart.js domoticz/www/app/log/SceneLog.html domoticz/www/app/log/SceneLog.js +domoticz/www/app/log/SetpointLog.html +domoticz/www/app/log/SetpointLog.js domoticz/www/app/log/TemperatureLog.html domoticz/www/app/log/TemperatureLog.js domoticz/www/app/log/TextLog.html domoticz/www/app/log/TextLog.js +domoticz/www/app/log/chart-compare-temp.html domoticz/www/app/log/chart-compare.html domoticz/www/app/log/chart-day.html domoticz/www/app/log/chart-month.html @@ -1396,6 +554,9 @@ domoticz/www/i18n/domoticz-tr.json.gz domoticz/www/i18n/domoticz-uk.json.gz domoticz/www/i18n/domoticz-zh.json.gz domoticz/www/i18n/domoticz-zh_TW.json.gz +domoticz/www/images/AC.png +domoticz/www/images/AC48_Off.png +domoticz/www/images/AC48_On.png domoticz/www/images/Alarm.png domoticz/www/images/Alarm48_Off.png domoticz/www/images/Alarm48_On.png @@ -1844,6 +1005,7 @@ domoticz/www/js/domoticzdevices.js domoticz/www/js/highcharts-ng.min.js.gz domoticz/www/js/highcharts/highcharts-more.js.gz domoticz/www/js/highcharts/highcharts.js.gz +domoticz/www/js/highcharts/modules/data.js.gz domoticz/www/js/highcharts/modules/dependency-wheel.js.gz domoticz/www/js/highcharts/modules/export-data.js.gz domoticz/www/js/highcharts/modules/exporting.js.gz @@ -1873,6 +1035,7 @@ domoticz/www/js/ngload.min.js.gz domoticz/www/js/noty/noty.css domoticz/www/js/noty/noty.min.js.gz domoticz/www/js/noty/relax.css +domoticz/www/js/qrcode.js domoticz/www/js/require.min.js.gz domoticz/www/js/respond.min.js.gz domoticz/www/js/sw-toolbox.js @@ -1961,6 +1124,7 @@ domoticz/www/styles/simple-blue/custom.js domoticz/www/styles/simple-gray/custom.css domoticz/www/styles/simple-gray/custom.js domoticz/www/switch_icons.txt +domoticz/www/templates/angular.example domoticz/www/templates/custom.example domoticz/www/templates/readme.txt domoticz/www/views/about.html @@ -1973,6 +1137,7 @@ domoticz/www/views/dpfibaro.html domoticz/www/views/dpgooglepubsub.html domoticz/www/views/dphttp.html domoticz/www/views/dpinflux.html +domoticz/www/views/dpmqtt.html domoticz/www/views/floorplanedit.html domoticz/www/views/floorplans.html domoticz/www/views/forecast.html @@ -1985,11 +1150,11 @@ domoticz/www/views/log.html domoticz/www/views/login.html domoticz/www/views/logout.html domoticz/www/views/mobile_notifications.html +domoticz/www/views/myprofile.html domoticz/www/views/notification.html domoticz/www/views/notifications.html domoticz/www/views/offline.html domoticz/www/views/restoredatabase.html -domoticz/www/views/rfxcomfirmware.html domoticz/www/views/scenes.html domoticz/www/views/setup.html domoticz/www/views/temperature.html diff --git a/www/dot-http/Makefile b/www/dot-http/Makefile index a84d8623b19c..69cf85aaefb5 100644 --- a/www/dot-http/Makefile +++ b/www/dot-http/Makefile @@ -1,7 +1,7 @@ PORTNAME= dot-http DISTVERSIONPREFIX= v DISTVERSION= 0.2.0 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/dpp/Makefile b/www/dpp/Makefile index 6977b897516d..631f896b3843 100644 --- a/www/dpp/Makefile +++ b/www/dpp/Makefile @@ -1,5 +1,6 @@ PORTNAME= dpp DISTVERSION= 10.0.29 +PORTREVISION= 1 CATEGORIES= www devel MASTER_SITES= https://github.com/brainboxdotcc/DPP/releases/download/v${DISTVERSION}/ PKGNAMESUFFIX= -discord diff --git a/www/drill/Makefile b/www/drill/Makefile index 9e017f0517a4..59a82f196633 100644 --- a/www/drill/Makefile +++ b/www/drill/Makefile @@ -1,6 +1,6 @@ PORTNAME= drill DISTVERSION= 0.8.3 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/dufs/Makefile b/www/dufs/Makefile index 778240b11b63..3a649458e843 100644 --- a/www/dufs/Makefile +++ b/www/dufs/Makefile @@ -1,7 +1,7 @@ PORTNAME= dufs DISTVERSIONPREFIX= v DISTVERSION= 0.40.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www MAINTAINER= ashish@FreeBSD.org diff --git a/www/eden/Makefile b/www/eden/Makefile index 190ce2397ff4..b9221fa6314c 100644 --- a/www/eden/Makefile +++ b/www/eden/Makefile @@ -1,7 +1,7 @@ PORTNAME= eden PORTVERSION= 0.7.4 DISTVERSIONPREFIX= v -PORTREVISION= 21 +PORTREVISION= 22 CATEGORIES= www PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ diff --git a/www/element-web/Makefile b/www/element-web/Makefile index 8a01e6124754..e358c175f98b 100644 --- a/www/element-web/Makefile +++ b/www/element-web/Makefile @@ -1,6 +1,6 @@ PORTNAME= element DISTVERSIONPREFIX= v -DISTVERSION= 1.11.65 +DISTVERSION= 1.11.66 CATEGORIES= www MASTER_SITES= https://github.com/element-hq/element-web/releases/download/${DISTVERSIONFULL}/ PKGNAMESUFFIX= -web @@ -18,7 +18,7 @@ CPE_VENDOR= matrix NO_ARCH= yes NO_BUILD= yes SUB_FILES= pkg-message -PLIST_SUB= COMMITID=ad882b5866028f8f562c +PLIST_SUB= COMMITID=530cd900a69ee944f8ab do-install: @${MKDIR} ${STAGEDIR}${WWWDIR} diff --git a/www/element-web/distinfo b/www/element-web/distinfo index 3c540e4e22ce..9601bcb1c5cb 100644 --- a/www/element-web/distinfo +++ b/www/element-web/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713886057 -SHA256 (element-v1.11.65.tar.gz) = 069dd851afced0d82ecb815d408c618c42311a2b7671b8a6479d21edcb5e80e9 -SIZE (element-v1.11.65.tar.gz) = 23608337 +TIMESTAMP = 1715089358 +SHA256 (element-v1.11.66.tar.gz) = 4bab7bf011f650a94f2bc0a6e8f0f0cb7fe59975f3cced1cb270c47419169c37 +SIZE (element-v1.11.66.tar.gz) = 23614921 diff --git a/www/element-web/pkg-plist b/www/element-web/pkg-plist index 440a0ca6ecee..4b91d07fb067 100644 --- a/www/element-web/pkg-plist +++ b/www/element-web/pkg-plist @@ -25,9 +25,6 @@ %%WWWDIR%%/bundles/%%COMMITID%%/344.js.map %%WWWDIR%%/bundles/%%COMMITID%%/3746.js %%WWWDIR%%/bundles/%%COMMITID%%/3746.js.map -%%WWWDIR%%/bundles/%%COMMITID%%/3799.js -%%WWWDIR%%/bundles/%%COMMITID%%/3799.js.LICENSE.txt -%%WWWDIR%%/bundles/%%COMMITID%%/3799.js.map %%WWWDIR%%/bundles/%%COMMITID%%/3998.js %%WWWDIR%%/bundles/%%COMMITID%%/3998.js.map %%WWWDIR%%/bundles/%%COMMITID%%/4311.js @@ -37,6 +34,9 @@ %%WWWDIR%%/bundles/%%COMMITID%%/4670.js.map %%WWWDIR%%/bundles/%%COMMITID%%/4813.js %%WWWDIR%%/bundles/%%COMMITID%%/4813.js.map +%%WWWDIR%%/bundles/%%COMMITID%%/4932.js +%%WWWDIR%%/bundles/%%COMMITID%%/4932.js.LICENSE.txt +%%WWWDIR%%/bundles/%%COMMITID%%/4932.js.map %%WWWDIR%%/bundles/%%COMMITID%%/5484.js %%WWWDIR%%/bundles/%%COMMITID%%/5484.js.map %%WWWDIR%%/bundles/%%COMMITID%%/6202.js @@ -220,38 +220,38 @@ %%WWWDIR%%/fonts/Nunito/Nunito-SemiBold.58f5995.ttf %%WWWDIR%%/fonts/Twemoji_Mozilla/TwemojiMozilla-colr.78a2a9b.woff2 %%WWWDIR%%/fonts/Twemoji_Mozilla/TwemojiMozilla-sbix.e8e92b5.woff2 -%%WWWDIR%%/i18n/cs.fc65a23.json -%%WWWDIR%%/i18n/de_DE.cd03041.json +%%WWWDIR%%/i18n/cs.441fe2b.json +%%WWWDIR%%/i18n/de_DE.e561b2a.json %%WWWDIR%%/i18n/el.82e2eda.json -%%WWWDIR%%/i18n/en_EN.553e6be.json +%%WWWDIR%%/i18n/en_EN.423ca06.json %%WWWDIR%%/i18n/eo.10e7271.json -%%WWWDIR%%/i18n/es.e10abb9.json -%%WWWDIR%%/i18n/et.7b58e17.json +%%WWWDIR%%/i18n/es.8ca4a0f.json +%%WWWDIR%%/i18n/et.0443516.json %%WWWDIR%%/i18n/fa.3fdd52e.json -%%WWWDIR%%/i18n/fi.d48058f.json -%%WWWDIR%%/i18n/fr.2bcaabd.json +%%WWWDIR%%/i18n/fi.aa7ed46.json +%%WWWDIR%%/i18n/fr.790a405.json %%WWWDIR%%/i18n/gl.02597d8.json %%WWWDIR%%/i18n/he.7b8ff49.json -%%WWWDIR%%/i18n/hu.da49ef6.json -%%WWWDIR%%/i18n/id.8ec5e07.json -%%WWWDIR%%/i18n/is.ab55545.json -%%WWWDIR%%/i18n/it.6824477.json -%%WWWDIR%%/i18n/ja.17a6d99.json -%%WWWDIR%%/i18n/languages.fbce0b9.json +%%WWWDIR%%/i18n/hu.0fa5e14.json +%%WWWDIR%%/i18n/id.fce7498.json +%%WWWDIR%%/i18n/is.2d275e0.json +%%WWWDIR%%/i18n/it.bb32f97.json +%%WWWDIR%%/i18n/ja.dfdafd0.json +%%WWWDIR%%/i18n/languages.5025d82.json %%WWWDIR%%/i18n/languages.json %%WWWDIR%%/i18n/lo.05facf8.json %%WWWDIR%%/i18n/lt.2abd76f.json %%WWWDIR%%/i18n/nl.bd5e35a.json -%%WWWDIR%%/i18n/pl.28390d9.json +%%WWWDIR%%/i18n/pl.1dbfc90.json %%WWWDIR%%/i18n/pt_BR.d2cabb6.json -%%WWWDIR%%/i18n/ru.5129ec3.json -%%WWWDIR%%/i18n/sk.f48d956.json -%%WWWDIR%%/i18n/sq.0bc583b.json -%%WWWDIR%%/i18n/sv.09f5300.json -%%WWWDIR%%/i18n/uk.36a5794.json -%%WWWDIR%%/i18n/vi.b035c5e.json +%%WWWDIR%%/i18n/ru.645227c.json +%%WWWDIR%%/i18n/sk.83af431.json +%%WWWDIR%%/i18n/sq.408766d.json +%%WWWDIR%%/i18n/sv.4528f59.json +%%WWWDIR%%/i18n/uk.cc3f735.json +%%WWWDIR%%/i18n/vi.3b8e518.json %%WWWDIR%%/i18n/zh_Hans.c0483a7.json -%%WWWDIR%%/i18n/zh_Hant.51d9018.json +%%WWWDIR%%/i18n/zh_Hant.34700d7.json %%WWWDIR%%/icons/chat-solid.550e415.svg %%WWWDIR%%/icons/chevron-left.a9d372d.svg %%WWWDIR%%/icons/close.dce71fd.svg diff --git a/www/fabio/Makefile b/www/fabio/Makefile index 8ae0cc07c4ea..3693ced3dad7 100644 --- a/www/fabio/Makefile +++ b/www/fabio/Makefile @@ -1,7 +1,7 @@ PORTNAME= fabio PORTVERSION= 1.6.0 DISTVERSIONPREFIX= v -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= stl@ossuary.net diff --git a/www/ffproxy/Makefile b/www/ffproxy/Makefile index ffebd5b0927d..5adf60d4210c 100644 --- a/www/ffproxy/Makefile +++ b/www/ffproxy/Makefile @@ -3,9 +3,7 @@ PORTVERSION= 1.6 PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://${PORTNAME}.sourceforge.net/${PORTNAME}/ \ - http://www.sourcefiles.org/System/Daemons/Proxy/ \ - http://www.nevm.de/${PORTNAME}/ \ - http://faith.eu.org/${PORTNAME}/ + http://www.nevm.de/${PORTNAME}/ MAINTAINER= ports@FreeBSD.org COMMENT= Filtering HTTP proxy server @@ -14,6 +12,9 @@ WWW= https://ffproxy.sourceforge.net LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING +DEPRECATED= Abandoned upstream, last update in 2006. Consider using www/squid +EXPIRATION_DATE=2024-06-30 + GNU_CONFIGURE= yes GNU_CONFIGURE_MANPREFIX=${PREFIX}/share diff --git a/www/ffsend/Makefile b/www/ffsend/Makefile index 74132e273a8d..43f15c70f2d2 100644 --- a/www/ffsend/Makefile +++ b/www/ffsend/Makefile @@ -1,7 +1,7 @@ PORTNAME= ffsend DISTVERSIONPREFIX= v DISTVERSION= 0.2.74 -PORTREVISION= 24 +PORTREVISION= 25 CATEGORIES= www MAINTAINER= ports@FreeBSD.org diff --git a/www/filtron/Makefile b/www/filtron/Makefile index 074827b3b982..8316ef019f9c 100644 --- a/www/filtron/Makefile +++ b/www/filtron/Makefile @@ -1,6 +1,6 @@ PORTNAME= filtron PORTVERSION= g20180218 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile index d846380ae544..64a23843adfb 100644 --- a/www/firefox-esr/Makefile +++ b/www/firefox-esr/Makefile @@ -1,5 +1,6 @@ PORTNAME= firefox -DISTVERSION= 115.10.0 +DISTVERSION= 115.11.0 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ diff --git a/www/firefox-esr/distinfo b/www/firefox-esr/distinfo index 4bf4e78079dc..08fddf921341 100644 --- a/www/firefox-esr/distinfo +++ b/www/firefox-esr/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712602749 -SHA256 (firefox-115.10.0esr.source.tar.xz) = 0afd3c733d95f7047f258d1a9768d06d856217fe736d85bfb370db9dd926eef2 -SIZE (firefox-115.10.0esr.source.tar.xz) = 507826764 +TIMESTAMP = 1715020977 +SHA256 (firefox-115.11.0esr.source.tar.xz) = 16be46f16a356a2b8bd3541805a24c8a2acf6f077cf8a65859689685c26025e0 +SIZE (firefox-115.11.0esr.source.tar.xz) = 506015444 diff --git a/www/firefox-esr/files/patch-llvm18 b/www/firefox-esr/files/patch-llvm18 new file mode 100644 index 000000000000..f88e1eb079a8 --- /dev/null +++ b/www/firefox-esr/files/patch-llvm18 @@ -0,0 +1,199 @@ +From cd10f3ba0d83f34ca978cc4c7a552b72fdd068aa Mon Sep 17 00:00:00 2001 +From: David Tolnay <dtolnay@gmail.com> +Date: Tue, 28 Nov 2023 11:18:39 -0800 +Subject: [PATCH 1/2] Flatten cursor.kind() matching in Item::parse down to one + match + +--- + bindgen/ir/item.rs | 84 ++++++++++++++++++++++------------------------ + 1 file changed, 41 insertions(+), 43 deletions(-) + +diff --git bindgen/ir/item.rs bindgen/ir/item.rs +index 0556452bfa..4f2d361e51 100644 +--- third_party/rust/bindgen/ir/item.rs ++++ third_party/rust/bindgen/ir/item.rs +@@ -1427,53 +1427,52 @@ + } + } + +- // Guess how does clang treat extern "C" blocks? +- if cursor.kind() == CXCursor_UnexposedDecl { +- Err(ParseError::Recurse) +- } else { ++ match cursor.kind() { ++ // Guess how does clang treat extern "C" blocks? ++ CXCursor_UnexposedDecl => Err(ParseError::Recurse), ++ + // We allowlist cursors here known to be unhandled, to prevent being + // too noisy about this. +- match cursor.kind() { +- CXCursor_MacroDefinition | +- CXCursor_MacroExpansion | +- CXCursor_UsingDeclaration | +- CXCursor_UsingDirective | +- CXCursor_StaticAssert | +- CXCursor_FunctionTemplate => { +- debug!( +- "Unhandled cursor kind {:?}: {:?}", +- cursor.kind(), +- cursor +- ); +- } +- CXCursor_InclusionDirective => { +- let file = cursor.get_included_file_name(); +- match file { +- None => { +- warn!( +- "Inclusion of a nameless file in {:?}", +- cursor +- ); +- } +- Some(filename) => { +- ctx.include_file(filename); +- } +- } +- } +- _ => { +- // ignore toplevel operator overloads +- let spelling = cursor.spelling(); +- if !spelling.starts_with("operator") { ++ CXCursor_MacroDefinition | ++ CXCursor_MacroExpansion | ++ CXCursor_UsingDeclaration | ++ CXCursor_UsingDirective | ++ CXCursor_StaticAssert | ++ CXCursor_FunctionTemplate => { ++ debug!( ++ "Unhandled cursor kind {:?}: {:?}", ++ cursor.kind(), ++ cursor ++ ); ++ Err(ParseError::Continue) ++ } ++ CXCursor_InclusionDirective => { ++ let file = cursor.get_included_file_name(); ++ match file { ++ None => { + warn!( +- "Unhandled cursor kind {:?}: {:?}", +- cursor.kind(), ++ "Inclusion of a nameless file in {:?}", + cursor + ); + } ++ Some(filename) => { ++ ctx.include_file(filename); ++ } + } ++ Err(ParseError::Continue) ++ } ++ _ => { ++ // ignore toplevel operator overloads ++ let spelling = cursor.spelling(); ++ if !spelling.starts_with("operator") { ++ warn!( ++ "Unhandled cursor kind {:?}: {:?}", ++ cursor.kind(), ++ cursor ++ ); ++ } ++ Err(ParseError::Continue) + } +- +- Err(ParseError::Continue) + } + } + + +From 2997017b5a3065b83e9d76f0080d6cb99c94c0c1 Mon Sep 17 00:00:00 2001 +From: David Tolnay <dtolnay@gmail.com> +Date: Tue, 28 Nov 2023 11:21:18 -0800 +Subject: [PATCH 2/2] Handle CXCursor_LinkageSpec in Clang 18+ + +--- + bindgen/ir/item.rs | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git bindgen/ir/item.rs bindgen/ir/item.rs +index 4f2d361e51..dd587b088b 100644 +--- third_party/rust/bindgen/ir/item.rs ++++ third_party/rust/bindgen/ir/item.rs +@@ -1433,8 +1433,11 @@ impl Item { + } + + match cursor.kind() { +- // Guess how does clang treat extern "C" blocks? +- CXCursor_UnexposedDecl => Err(ParseError::Recurse), ++ // On Clang 18+, extern "C" is reported accurately as a LinkageSpec. ++ // Older LLVM treat it as UnexposedDecl. ++ CXCursor_LinkageSpec | CXCursor_UnexposedDecl => { ++ Err(ParseError::Recurse) ++ } + + // We allowlist cursors here known to be unhandled, to prevent being + // too noisy about this. +diff --git dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp +--- dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp ++++ dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp +@@ -97,11 +97,11 @@ + uint32_t width_; + uint32_t height_; + uint8_t y_; + uint8_t u_; + uint8_t v_; +- uint32_t timestamp_; ++ uint64_t timestamp_; + } idr_nalu; + }; + #pragma pack(pop) + + #define ENCODED_FRAME_MAGIC 0x004000b8 +diff --git dom/media/gtest/TestGMPRemoveAndDelete.cpp dom/media/gtest/TestGMPRemoveAndDelete.cpp +--- dom/media/gtest/TestGMPRemoveAndDelete.cpp ++++ dom/media/gtest/TestGMPRemoveAndDelete.cpp +@@ -359,11 +359,11 @@ + uint32_t width_; + uint32_t height_; + uint8_t y_; + uint8_t u_; + uint8_t v_; +- uint32_t timestamp_; ++ uint64_t timestamp_; + } idr_nalu; + }; + #pragma pack(pop) + + GMPVideoFrame* absFrame; +diff --git dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h +--- dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h ++++ dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h +@@ -300,11 +300,11 @@ + + struct InputImageData { + int64_t timestamp_us; + }; + // Map rtp time -> input image data +- DataMutex<std::map<uint32_t, InputImageData>> mInputImageMap; ++ DataMutex<std::map<uint64_t, InputImageData>> mInputImageMap; + + MediaEventProducer<uint64_t> mInitPluginEvent; + MediaEventProducer<uint64_t> mReleasePluginEvent; + }; + +diff --git dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp +--- dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp ++++ dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp +@@ -538,11 +538,11 @@ + return; + } + + webrtc::VideoFrameType ft; + GmpFrameTypeToWebrtcFrameType(aEncodedFrame->FrameType(), &ft); +- uint32_t timestamp = (aEncodedFrame->TimeStamp() * 90ll + 999) / 1000; ++ uint64_t timestamp = (aEncodedFrame->TimeStamp() * 90ll + 999) / 1000; + + GMP_LOG_DEBUG("GMP Encoded: %" PRIu64 ", type %d, len %d", + aEncodedFrame->TimeStamp(), aEncodedFrame->BufferType(), + aEncodedFrame->Size()); + + diff --git a/www/firefox-esr/files/patch-rust-1.78.0 b/www/firefox-esr/files/patch-rust-1.78.0 new file mode 100644 index 000000000000..7e6685d5e8e7 --- /dev/null +++ b/www/firefox-esr/files/patch-rust-1.78.0 @@ -0,0 +1,3582 @@ +Adapted from https://hg.mozilla.org/mozilla-central/rev/1db2ef126a6a +-- + +# HG changeset patch +# User Henri Sivonen <hsivonen@hsivonen.fi> +# Date 1714462184 0 +# Node ID 1db2ef126a6a8555dbf50345e16492c977b42e92 +# Parent a545e84b3674c4878f2e618b7bce23058f2ac690 +Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers + +Differential Revision: https://phabricator.services.mozilla.com/D207167 + +diff --git a/.cargo/config.in b/.cargo/config.in +--- .cargo/config.in ++++ .cargo/config.in +@@ -35,31 +35,31 @@ git = "https://github.com/gfx-rs/wgpu" + rev = "f71a1bc736fde37509262ca03e91d8f56a13aeb5" + replace-with = "vendored-sources" + + [source."git+https://github.com/glandium/warp?rev=4af45fae95bc98b0eba1ef0db17e1dac471bb23d"] + git = "https://github.com/glandium/warp" + rev = "4af45fae95bc98b0eba1ef0db17e1dac471bb23d" + replace-with = "vendored-sources" + ++[source."git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80"] ++git = "https://github.com/hsivonen/any_all_workaround" ++rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++replace-with = "vendored-sources" ++ + [source."git+https://github.com/hsivonen/chardetng?rev=3484d3e3ebdc8931493aa5df4d7ee9360a90e76b"] + git = "https://github.com/hsivonen/chardetng" + rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" + replace-with = "vendored-sources" + + [source."git+https://github.com/hsivonen/chardetng_c?rev=ed8a4c6f900a90d4dbc1d64b856e61490a1c3570"] + git = "https://github.com/hsivonen/chardetng_c" + rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" + replace-with = "vendored-sources" + +-[source."git+https://github.com/hsivonen/packed_simd?rev=e588ceb568878e1a3156ea9ce551d5b63ef0cdc4"] +-git = "https://github.com/hsivonen/packed_simd" +-rev = "e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" +-replace-with = "vendored-sources" +- + [source."git+https://github.com/jfkthame/mapped_hyph.git?rev=c7651a0cffff41996ad13c44f689bd9cd2192c01"] + git = "https://github.com/jfkthame/mapped_hyph.git" + rev = "c7651a0cffff41996ad13c44f689bd9cd2192c01" + replace-with = "vendored-sources" + + [source."git+https://github.com/mozilla-spidermonkey/jsparagus?rev=64ba08e24749616de2344112f226d1ef4ba893ae"] + git = "https://github.com/mozilla-spidermonkey/jsparagus" + rev = "64ba08e24749616de2344112f226d1ef4ba893ae" +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -80,16 +80,25 @@ dependencies = [ + name = "android_system_properties" + version = "0.1.5" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" + dependencies = [ + "libc", + ] + ++[[package]] ++name = "any_all_workaround" ++version = "0.1.0" ++source = "git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80#7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "version_check", ++] ++ + [[package]] + name = "anyhow" + version = "1.0.69" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + + [[package]] + name = "app_services_logger" +@@ -1431,22 +1440,22 @@ dependencies = [ + "encoding_rs", + "nserror", + "nsstring", + "xmldecl", + ] + + [[package]] + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" ++checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" + dependencies = [ ++ "any_all_workaround", + "cfg-if 1.0.0", +- "packed_simd", + ] + + [[package]] + name = "enum-primitive-derive" + version = "0.2.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "c375b9c5eadb68d0a6efee2999fef292f45854c3444c86f09d8ab086ba942b0e" + dependencies = [ +@@ -3901,25 +3910,16 @@ checksum = "8d91edf4fbb970279443471345a4e8c491bf05bb283b3e6c88e4e606fd8c181b" + [[package]] + name = "oxilangtag-ffi" + version = "0.1.0" + dependencies = [ + "nsstring", + "oxilangtag", + ] + +-[[package]] +-name = "packed_simd" +-version = "0.3.9" +-source = "git+https://github.com/hsivonen/packed_simd?rev=e588ceb568878e1a3156ea9ce551d5b63ef0cdc4#e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" +-dependencies = [ +- "cfg-if 1.0.0", +- "num-traits", +-] +- + [[package]] + name = "parking_lot" + version = "0.11.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" + dependencies = [ + "instant", + "lock_api", +diff --git a/Cargo.toml b/Cargo.toml +--- Cargo.toml ++++ Cargo.toml +@@ -154,22 +154,22 @@ rure = { path = "third_party/rust/rure" } + + # 0.31.1 but without rust-cssparser#342. + # TODO: Remove these, and just use v0.31.1 once bug 1836219 lands + # (which will get syn 2 into the tree). + cssparser = { path = "third_party/rust/cssparser" } + cssparser-macros = { path = "third_party/rust/cssparser-macros" } + + # Other overrides ++any_all_workaround = { git = "https://github.com/hsivonen/any_all_workaround", rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" } + chardetng = { git = "https://github.com/hsivonen/chardetng", rev="3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" } + chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev="ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" } + coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev="fc68464b5445caf111e41f643a2e69ccce0b4f83" } + firefox-on-glean = { path = "toolkit/components/glean/api" } + libudev-sys = { path = "dom/webauthn/libudev-sys" } +-packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev = "e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" } + midir = { git = "https://github.com/mozilla/midir.git", rev = "519e651241e867af3391db08f9ae6400bc023e18" } + # warp 0.3.3 + https://github.com/seanmonstar/warp/pull/1007 + warp = { git = "https://github.com/glandium/warp", rev = "4af45fae95bc98b0eba1ef0db17e1dac471bb23d" } + + # application-services overrides to make updating them all simpler. + interrupt-support = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } + sql-support = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } + sync15 = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } +diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk +--- config/makefiles/rust.mk ++++ config/makefiles/rust.mk +@@ -260,17 +260,17 @@ export COREAUDIO_SDK_PATH=$(IPHONEOS_SDK + export IPHONEOS_SDK_DIR + PATH := $(topsrcdir)/build/macosx:$(PATH) + endif + endif + + ifndef RUSTC_BOOTSTRAP + RUSTC_BOOTSTRAP := mozglue_static,qcms + ifdef MOZ_RUST_SIMD +-RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,packed_simd ++RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,any_all_workaround + endif + export RUSTC_BOOTSTRAP + endif + + target_rust_ltoable := force-cargo-library-build $(ADD_RUST_LTOABLE) + target_rust_nonltoable := force-cargo-test-run force-cargo-program-build + + ifdef MOZ_PGO_RUST +diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml +--- supply-chain/audits.toml ++++ supply-chain/audits.toml +@@ -596,16 +596,29 @@ who = "Mike Hommey <mh+mozilla@glandium. + criteria = "safe-to-deploy" + delta = "0.1.2 -> 0.1.4" + + [[audits.android_system_properties]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "0.1.4 -> 0.1.5" + ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++version = "0.1.0" ++notes = "The little code that is in this crate I reviewed and modified from packed_simd (which has previously been vendored in full instead of just this small part)." ++ ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++delta = "0.1.0 -> 0.1.0@git:7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++importable = false ++notes = "This is a trivial workaround copied from elsewhere in m-c, specifically qcms." ++ + [[audits.anyhow]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "1.0.57 -> 1.0.61" + + [[audits.anyhow]] + who = "Bobby Holley <bobbyholley@gmail.com>" + criteria = "safe-to-deploy" +diff --git a/supply-chain/config.toml b/supply-chain/config.toml +--- supply-chain/config.toml ++++ supply-chain/config.toml +@@ -14,16 +14,20 @@ url = "https://raw.githubusercontent.com + url = "https://raw.githubusercontent.com/google/supply-chain/main/audits.toml" + + [imports.isrg] + url = "https://raw.githubusercontent.com/divviup/libprio-rs/main/supply-chain/audits.toml" + + [imports.mozilla] + url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" + ++[policy.any_all_workaround] ++audit-as-crates-io = true ++notes = "This is the upstream code plus the ARM intrinsics workaround from qcms, see bug 1882209." ++ + [policy.autocfg] + audit-as-crates-io = true + notes = "This is the upstream code plus a few local fixes, see bug 1685697." + + [policy.chardetng] + audit-as-crates-io = true + notes = "This is a crate Henri wrote which is also published. We should probably update Firefox to tip and certify that." + +diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock +--- supply-chain/imports.lock ++++ supply-chain/imports.lock +@@ -115,16 +115,23 @@ user-name = "David Tolnay" + + [[publisher.encoding_rs]] + version = "0.8.33" + when = "2023-08-23" + user-id = 4484 + user-login = "hsivonen" + user-name = "Henri Sivonen" + ++[[publisher.encoding_rs]] ++version = "0.8.34" ++when = "2024-04-10" ++user-id = 4484 ++user-login = "hsivonen" ++user-name = "Henri Sivonen" ++ + [[publisher.etagere]] + version = "0.2.7" + when = "2022-05-04" + user-id = 1281 + user-login = "nical" + user-name = "Nicolas Silva" + + [[publisher.euclid]] +diff --git a/third_party/rust/any_all_workaround/.cargo-checksum.json b/third_party/rust/any_all_workaround/.cargo-checksum.json +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/.cargo-checksum.json +@@ -0,0 +1,1 @@ ++{"files":{"Cargo.toml":"f8c127449dc9432d404c21c99833e4617ab88a797445af249a7fe3c989985d6d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","LICENSE-MIT-QCMS":"36d847ae882f6574ebc72f56a4f354e4f104fde4a584373496482e97d52d31bc","README.md":"4c617b8ced3a27b7edecf0e5e41ed451c04e88dab529e7a35fccc4e1551efbd7","build.rs":"56b29ab6da3e49075bfd0a7b690267c8016298bf0d332e2e68bbaf19decbbf71","src/lib.rs":"7118106690b9d25c5d0a3e2079feb83d76f1d434d0da36b9d0351806d27c850d"},"package":null} +\ No newline at end of file +diff --git a/third_party/rust/any_all_workaround/Cargo.toml b/third_party/rust/any_all_workaround/Cargo.toml +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/Cargo.toml +@@ -0,0 +1,28 @@ ++# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO ++# ++# When uploading crates to the registry Cargo will automatically ++# "normalize" Cargo.toml files for maximal compatibility ++# with all versions of Cargo and also rewrite `path` dependencies ++# to registry (e.g., crates.io) dependencies. ++# ++# If you are reading this file be aware that the original Cargo.toml ++# will likely look very different (and much more reasonable). ++# See Cargo.toml.orig for the original contents. ++ ++[package] ++edition = "2021" ++name = "any_all_workaround" ++version = "0.1.0" ++authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] ++description = "Workaround for bad LLVM codegen for boolean reductions on 32-bit ARM" ++homepage = "https://docs.rs/any_all_workaround/" ++documentation = "https://docs.rs/any_all_workaround/" ++readme = "README.md" ++license = "MIT OR Apache-2.0" ++repository = "https://github.com/hsivonen/any_all_workaround" ++ ++[dependencies] ++cfg-if = "1.0" ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/third_party/rust/packed_simd/LICENSE-APACHE b/third_party/rust/any_all_workaround/LICENSE-APACHE +rename from third_party/rust/packed_simd/LICENSE-APACHE +rename to third_party/rust/any_all_workaround/LICENSE-APACHE +diff --git a/third_party/rust/packed_simd/LICENSE-MIT b/third_party/rust/any_all_workaround/LICENSE-MIT +rename from third_party/rust/packed_simd/LICENSE-MIT +rename to third_party/rust/any_all_workaround/LICENSE-MIT +diff --git a/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS b/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +@@ -0,0 +1,21 @@ ++qcms ++Copyright (C) 2009-2024 Mozilla Corporation ++Copyright (C) 1998-2007 Marti Maria ++ ++Permission is hereby granted, free of charge, to any person obtaining ++a copy of this software and associated documentation files (the "Software"), ++to deal in the Software without restriction, including without limitation ++the rights to use, copy, modify, merge, publish, distribute, sublicense, ++and/or sell copies of the Software, and to permit persons to whom the Software ++is furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in ++all copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ++THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +diff --git a/third_party/rust/any_all_workaround/README.md b/third_party/rust/any_all_workaround/README.md +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/README.md +@@ -0,0 +1,13 @@ ++# any_all_workaround ++ ++This is a workaround for bad codegen ([Rust bug](https://github.com/rust-lang/portable-simd/issues/146), [LLVM bug](https://github.com/llvm/llvm-project/issues/50466)) for the `any()` and `all()` reductions for NEON-backed SIMD vectors on 32-bit ARM. On other platforms these delegate to `any()` and `all()` in `core::simd`. ++ ++The plan is to abandon this crate once the LLVM bug is fixed or `core::simd` works around the LLVM bug. ++ ++The code is forked from the [`packed_simd` crate](https://raw.githubusercontent.com/hsivonen/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs). ++ ++This crate requires Nightly Rust as it depends on the `portable_simd` feature. ++ ++# License ++ ++`MIT OR Apache-2.0`, since that's how `packed_simd` is licensed. (The ARM intrinsics Rust version workaround is from qcms, see LICENSE-MIT-QCMS.) +diff --git a/third_party/rust/any_all_workaround/build.rs b/third_party/rust/any_all_workaround/build.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/third_party/rust/any_all_workaround/src/lib.rs b/third_party/rust/any_all_workaround/src/lib.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/src/lib.rs +@@ -0,0 +1,110 @@ ++// This code began as a fork of ++// https://raw.githubusercontent.com/rust-lang/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs ++// which didn't have a license header on the file, but Cargo.toml said "MIT OR Apache-2.0". ++// See LICENSE-MIT and LICENSE-APACHE. ++ ++#![no_std] ++#![feature(portable_simd)] ++#![cfg_attr( ++ all( ++ stdsimd_split, ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdarch_arm_neon_intrinsics) ++)] ++#![cfg_attr( ++ all( ++ not(stdsimd_split), ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdsimd) ++)] ++ ++use cfg_if::cfg_if; ++use core::simd::mask16x8; ++use core::simd::mask32x4; ++use core::simd::mask8x16; ++ ++cfg_if! { ++ if #[cfg(all(target_arch = "arm", target_endian = "little", target_feature = "neon", target_feature = "v7"))] { ++ use core::simd::mask8x8; ++ use core::simd::mask16x4; ++ use core::simd::mask32x2; ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline] ++ pub fn $all(s: $id) -> bool { ++ use core::arch::arm::$vpmin; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmin(transmute(halves.0), transmute(halves.1))); ++ h.all() ++ } ++ } ++ #[inline] ++ pub fn $any(s: $id) -> bool { ++ use core::arch::arm::$vpmax; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmax(transmute(halves.0), transmute(halves.1))); ++ h.any() ++ } ++ } ++ } ++ } ++ } else { ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline(always)] ++ pub fn $all(s: $id) -> bool { ++ s.all() ++ } ++ #[inline(always)] ++ pub fn $any(s: $id) -> bool { ++ s.any() ++ } ++ } ++ } ++ } ++} ++ ++arm_128_v7_neon_impl!( ++ all_mask8x16, ++ any_mask8x16, ++ mask8x16, ++ mask8x8, ++ vpmin_u8, ++ vpmax_u8 ++); ++arm_128_v7_neon_impl!( ++ all_mask16x8, ++ any_mask16x8, ++ mask16x8, ++ mask16x4, ++ vpmin_u16, ++ vpmax_u16 ++); ++arm_128_v7_neon_impl!( ++ all_mask32x4, ++ any_mask32x4, ++ mask32x4, ++ mask32x2, ++ vpmin_u32, ++ vpmax_u32 ++); +diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml +--- third_party/rust/encoding_rs/Cargo.toml ++++ third_party/rust/encoding_rs/Cargo.toml +@@ -6,18 +6,19 @@ + # to registry (e.g., crates.io) dependencies. + # + # If you are reading this file be aware that the original Cargo.toml + # will likely look very different (and much more reasonable). + # See Cargo.toml.orig for the original contents. + + [package] + edition = "2018" ++rust-version = "1.36" + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] + description = "A Gecko-oriented implementation of the Encoding Standard" + homepage = "https://docs.rs/encoding_rs/" + documentation = "https://docs.rs/encoding_rs/" + readme = "README.md" + keywords = [ + "encoding", + "web", +@@ -31,23 +32,23 @@ categories = [ + "internationalization", + ] + license = "(Apache-2.0 OR MIT) AND BSD-3-Clause" + repository = "https://github.com/hsivonen/encoding_rs" + + [profile.release] + lto = true + ++[dependencies.any_all_workaround] ++version = "0.1.0" ++optional = true ++ + [dependencies.cfg-if] + version = "1.0" + +-[dependencies.packed_simd] +-version = "0.3.9" +-optional = true +- + [dependencies.serde] + version = "1.0" + optional = true + + [dev-dependencies.bincode] + version = "1.0" + + [dev-dependencies.serde_derive] +@@ -69,15 +70,9 @@ fast-legacy-encode = [ + "fast-hanja-encode", + "fast-kanji-encode", + "fast-gb-hanzi-encode", + "fast-big5-hanzi-encode", + ] + less-slow-big5-hanzi-encode = [] + less-slow-gb-hanzi-encode = [] + less-slow-kanji-encode = [] +-simd-accel = [ +- "packed_simd", +- "packed_simd/into_bits", +-] +- +-[badges.travis-ci] +-repository = "hsivonen/encoding_rs" ++simd-accel = ["any_all_workaround"] +diff --git a/third_party/rust/encoding_rs/README.md b/third_party/rust/encoding_rs/README.md +--- third_party/rust/encoding_rs/README.md ++++ third_party/rust/encoding_rs/README.md +@@ -162,50 +162,36 @@ wrappers. + * [C++](https://github.com/hsivonen/recode_cpp) + + ## Optional features + + There are currently these optional cargo features: + + ### `simd-accel` + +-Enables SIMD acceleration using the nightly-dependent `packed_simd` crate. ++Enables SIMD acceleration using the nightly-dependent `portable_simd` standard ++library feature. + + This is an opt-in feature, because enabling this feature _opts out_ of Rust's + guarantees of future compilers compiling old code (aka. "stability story"). + + Currently, this has not been tested to be an improvement except for these +-targets: ++targets and enabling the `simd-accel` feature is expected to break the build ++on other targets: + + * x86_64 + * i686 + * aarch64 + * thumbv7neon + + If you use nightly Rust, you use targets whose first component is one of the + above, and you are prepared _to have to revise your configuration when updating + Rust_, you should enable this feature. Otherwise, please _do not_ enable this + feature. + +-_Note!_ If you are compiling for a target that does not have 128-bit SIMD +-enabled as part of the target definition and you are enabling 128-bit SIMD +-using `-C target_feature`, you need to enable the `core_arch` Cargo feature +-for `packed_simd` to compile a crates.io snapshot of `core_arch` instead of +-using the standard-library copy of `core::arch`, because the `core::arch` +-module of the pre-compiled standard library has been compiled with the +-assumption that the CPU doesn't have 128-bit SIMD. At present this applies +-mainly to 32-bit ARM targets whose first component does not include the +-substring `neon`. +- +-The encoding_rs side of things has not been properly set up for POWER, +-PowerPC, MIPS, etc., SIMD at this time, so even if you were to follow +-the advice from the previous paragraph, you probably shouldn't use +-the `simd-accel` option on the less mainstream architectures at this +-time. +- + Used by Firefox. + + ### `serde` + + Enables support for serializing and deserializing `&'static Encoding`-typed + struct fields using [Serde][1]. + + [1]: https://serde.rs/ +@@ -376,18 +362,19 @@ It is a goal to support the latest stabl + the version of Rust that's used for Firefox Nightly. + + At this time, there is no firm commitment to support a version older than + what's required by Firefox, and there is no commitment to treat MSRV changes + as semver-breaking, because this crate depends on `cfg-if`, which doesn't + appear to treat MSRV changes as semver-breaking, so it would be useless for + this crate to treat MSRV changes as semver-breaking. + +-As of 2021-02-04, MSRV appears to be Rust 1.36.0 for using the crate and ++As of 2024-04-04, MSRV appears to be Rust 1.36.0 for using the crate and + 1.42.0 for doc tests to pass without errors about the global allocator. ++With the `simd-accel` feature, the MSRV is even higher. + + ## Compatibility with rust-encoding + + A compatibility layer that implements the rust-encoding API on top of + encoding_rs is + [provided as a separate crate](https://github.com/hsivonen/encoding_rs_compat) + (cannot be uploaded to crates.io). The compatibility layer was originally + written with the assuption that Firefox would need it, but it is not currently +@@ -441,20 +428,27 @@ To regenerate the generated code: + - [x] Implement the rust-encoding API in terms of encoding_rs. + - [x] Add SIMD acceleration for Aarch64. + - [x] Investigate the use of NEON on 32-bit ARM. + - [ ] ~Investigate Bj旦rn H旦hrmann's lookup table acceleration for UTF-8 as + adapted to Rust in rust-encoding.~ + - [x] Add actually fast CJK encode options. + - [ ] ~Investigate [Bob Steagall's lookup table acceleration for UTF-8](https://github.com/BobSteagall/CppNow2018/blob/master/FastConversionFromUTF-8/Fast%20Conversion%20From%20UTF-8%20with%20C%2B%2B%2C%20DFAs%2C%20and%20SSE%20Intrinsics%20-%20Bob%20Steagall%20-%20C%2B%2BNow%202018.pdf).~ + - [x] Provide a build mode that works without `alloc` (with lesser API surface). +-- [ ] Migrate to `std::simd` once it is stable and declare 1.0. ++- [x] Migrate to `std::simd` ~once it is stable and declare 1.0.~ ++- [ ] Migrate `unsafe` slice access by larger types than `u8`/`u16` to `align_to`. + + ## Release Notes + ++### 0.8.34 ++ ++* Use the `portable_simd` nightly feature of the standard library instead of the `packed_simd` crate. Only affects the `simd-accel` optional nightly feature. ++* Internal documentation improvements and minor code improvements around `unsafe`. ++* Added `rust-version` to `Cargo.toml`. ++ + ### 0.8.33 + + * Use `packed_simd` instead of `packed_simd_2` again now that updates are back under the `packed_simd` name. Only affects the `simd-accel` optional nightly feature. + + ### 0.8.32 + + * Removed `build.rs`. (This removal should resolve false positives reported by some antivirus products. This may break some build configurations that have opted out of Rust's guarantees against future build breakage.) + * Internal change to what API is used for reinterpreting the lane configuration of SIMD vectors. +diff --git a/third_party/rust/encoding_rs/src/ascii.rs b/third_party/rust/encoding_rs/src/ascii.rs +--- third_party/rust/encoding_rs/src/ascii.rs ++++ third_party/rust/encoding_rs/src/ascii.rs +@@ -46,71 +46,87 @@ cfg_if! { + #[allow(dead_code)] + #[inline(always)] + fn likely(b: bool) -> bool { + b + } + } + } + ++// Safety invariants for masks: data & mask = 0 for valid ASCII or basic latin utf-16 ++ + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const ASCII_MASK: usize = 0x8080_8080_8080_8080u64 as usize; + + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const BASIC_LATIN_MASK: usize = 0xFF80_FF80_FF80_FF80u64 as usize; + + #[allow(unused_macros)] + macro_rules! ascii_naive { + ($name:ident, $src_unit:ty, $dst_unit:ty) => { ++ /// Safety: src and dst must have len_unit elements and be aligned ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + // Yes, manually omitting the bound check here matters + // a lot for perf. + for i in 0..len { ++ // Safety: len invariant used here + let code_unit = *(src.add(i)); ++ // Safety: Upholds safety-usable invariant here + if code_unit > 127 { + return Some((code_unit, i)); + } ++ // Safety: len invariant used here + *(dst.add(i)) = code_unit as $dst_unit; + } + return None; + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_alu { + ($name:ident, ++ // safety invariant: src/dst MUST be u8 + $src_unit:ty, + $dst_unit:ty, ++ // Safety invariant: stride_fn must consume and produce two usizes, and return the index of the first non-ascii when it fails + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr(feature = "cargo-clippy", allow(never_loop, cast_ptr_alignment))] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch until we are aligned to usize + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + let src_alignment = (src as usize) & ALU_ALIGNMENT_MASK; + let dst_alignment = (dst as usize) & ALU_ALIGNMENT_MASK; + if src_alignment != dst_alignment { ++ // Safety: bails early and ends up in the na誰ve branch where usize-alignment doesn't matter + break; + } + (ALU_ALIGNMENT - src_alignment) & ALU_ALIGNMENT_MASK + // } else if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // ascii_to_basic_latin + // let src_until_alignment = (ALIGNMENT - ((src as usize) & ALIGNMENT_MASK)) & ALIGNMENT_MASK; + // if (dst.add(src_until_alignment) as usize) & ALIGNMENT_MASK != 0 { + // break; +@@ -129,74 +145,104 @@ macro_rules! ascii_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: num_ascii is known to be a byte index of a non-ascii byte due to stride_fn's invariant + if let Some(num_ascii) = $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + offset += num_ascii; ++ // Safety: Upholds safety-usable invariant here by indexing into non-ascii byte + return Some((*(src.add(offset)), offset)); + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ ++ // Safety: This is the na誰ve code, same as ascii_naive, and has no requirements ++ // other than src/dst being valid for the the right lens + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_alu { + ($name:ident, ++ // safety invariant: use u8 for src/dest for ascii, and u16 for basic_latin + $src_unit:ty, + $dst_unit:ty, ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure basic-latin has the same alignment as ascii, starting with ascii since it is smaller. + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + // let src_alignment = (src as usize) & ALIGNMENT_MASK; + // let dst_alignment = (dst as usize) & ALIGNMENT_MASK; + // if src_alignment != dst_alignment { +@@ -232,66 +278,89 @@ macro_rules! basic_latin_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + if !$stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + break; + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_alu { ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure the UTF-16 side has the same alignment as the Latin-1 side, starting with Latin-1 since it is smaller. + let mut until_alignment = { + if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // unpack + let src_until_alignment = (ALU_ALIGNMENT + - ((src as usize) & ALU_ALIGNMENT_MASK)) + & ALU_ALIGNMENT_MASK; + if (dst.wrapping_add(src_until_alignment) as usize) & ALU_ALIGNMENT_MASK + != 0 +@@ -308,373 +377,485 @@ macro_rules! latin1_alu { + != 0 + { + break; + } + dst_until_alignment + } + }; + if until_alignment + ALU_STRIDE_SIZE <= len { ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ); ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + // XXX Should we first process one stride unconditionally as unaligned to + // avoid the cost of the branchiness below if the first stride fails anyway? + // XXX Should we just use unaligned SSE2 access unconditionally? It seems that + // on Haswell, it would make sense to just use unaligned and not bother + // checking. Need to benchmark older architectures before deciding. + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Safety: checking whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { ++ // Safety: Checking whether dst is aligned + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_dst_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: upholds safety-usable invariant + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_src_aligned:ident + ) => { +- #[inline(always)] ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; + // This loop is only broken out of as a goto forward without + // actually looping + 'outer: loop { ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned ++ // Safety: this is safe to call since we're valid for this read/write + if !$stride_neither_aligned(src, dst) { + break 'outer; + } + offset = SIMD_STRIDE_SIZE; + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is less that SIMD_ALIGNMENT, which is also SIMD_STRIDE_SIZE (as documented) + let until_alignment = ((SIMD_ALIGNMENT + - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; +- // This addition won't overflow, because even in the 32-bit PAE case the ++ // Safety: This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read/write (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading/writing 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); ++ // Safety: This is whether dst is aligned + let dst_masked = (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK; + if dst_masked == 0 { + loop { ++ // Safety: both are aligned, we can call the aligned function. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_both_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } else { + loop { ++ // Safety: only src is aligned here. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_src_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. ++ + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } + } else { + // At most two iterations, so unroll + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + break 'outer; + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident ++ + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Whether dst is aligned + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { + if dst_masked == 0 { + loop { ++ // Safety: Both were aligned, we can use the aligned function + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: src was aligned, dst was not + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: src was aligned, dst was not + $stride_dst_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: Neither were aligned + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_STRIDE_SIZE. + let mut until_alignment = ((SIMD_STRIDE_SIZE + - ((src as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; + while until_alignment != 0 { ++ // Safety: This is a straightforward copy, since until_alignment is < SIMD_STRIDE_SIZE < len, this is in-bounds + *(dst.add(offset)) = *(src.add(offset)) as $dst_unit; + offset += 1; + until_alignment -= 1; + } ++ // Safety: here offset will be `until_alignment`, i.e. enough to align `src`. + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements. + if offset + SIMD_STRIDE_SIZE * 2 <= len { + let len_minus_stride_times_two = len_minus_stride - SIMD_STRIDE_SIZE; ++ // Safety: at this point src is known to be aligned at offset, dst is not. + if (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK == 0 { + loop { ++ // Safety: We checked alignment of dst above, we can use the alignment functions. We're allowed to read/write 2*SIMD_STRIDE_SIZE elements, which we do. + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } else { + loop { ++ // Safety: we ensured alignment of src already. + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } + } ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we are valid to munch SIMD_STRIDE_SIZE more elements, which we do + if offset < len_minus_stride { + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + // On x86_64, this loop autovectorizes but in the pack + // case there are instructions whose purpose is to make sure + // each u16 in the vector is truncated before packing. However, + // since we don't care about saturating behavior of SSE2 packing + // when the input isn't Latin1, those instructions are useless. + // Unfortunately, using the `assume` intrinsic to lie to the + // optimizer doesn't make LLVM omit the trunctation that we +@@ -688,138 +869,180 @@ macro_rules! latin1_simd_check_align_unr + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for reads/writes of len elements of type src_unit/dst_unit ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for unaligned reads/writes of len elements of type src_unit/dst_unit + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + $store(dst, simd); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_double_stride { ++ // Safety: store must be valid for 32 bytes of write, which may be unaligned (candidates: `store(8|16)_(aligned|unaligned)`) + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 32 bytes of aligned u8x16 read ++ /// dst must be valid for 32 bytes of unaligned write according to ++ /// the $store fn, which may allow for unaligned writes or require ++ /// alignment to either 16x8 or u8x16. ++ /// ++ /// Safety-usable invariant: Returns Some(index) if the element at `index` is invalid ASCII + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + $store(dst, first); + if unlikely(!simd_is_ascii(first | second)) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + return Some(mask_first.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + return Some(SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16/32 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_double_stride { ++ // Safety: store must be valid for 16 bytes of write, which may be unaligned + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned reads, ++ /// aligned to either 16x8 or u8x16. ++ /// dst must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned or unaligned reads + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + let (a, b) = simd_unpack(first); + $store(dst, a); ++ // Safety: divide by 2 since it's a u16 pointer + $store(dst.add(SIMD_STRIDE_SIZE / 2), b); + if unlikely(!simd_is_ascii(first | second)) { + let mask_first = mask_ascii(first); + if mask_first != 0 { + return Some(mask_first.trailing_zeros() as usize); + } + let (c, d) = simd_unpack(second); + $store(dst.add(SIMD_STRIDE_SIZE), c); +@@ -832,47 +1055,59 @@ macro_rules! ascii_to_basic_latin_simd_d + $store(dst.add(SIMD_STRIDE_SIZE + (SIMD_STRIDE_SIZE / 2)), d); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! unpack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) { + let simd = $load(src); + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) -> bool { + let first = $load(src); + let second = $load(src.add(8)); + if simd_is_basic_latin(first | second) { + $store(dst, simd_pack(first, second)); + true + } else { + false + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! pack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) { + let first = $load(src); + let second = $load(src.add(8)); + $store(dst, simd_pack(first, second)); + } + }; + } +@@ -888,24 +1123,28 @@ cfg_if! { + // pub const ALIGNMENT: usize = 8; + + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const ALU_ALIGNMENT: usize = 8; + + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently produce ++ // neither_unaligned variants using only unaligned inputs. + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_neither_aligned, load16_unaligned, store8_unaligned); + unpack_simd_stride!(unpack_stride_neither_aligned, load16_unaligned, store8_unaligned); + + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the unalign macro with unalign functions above. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. + ascii_simd_unalign!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_neither_aligned); + ascii_simd_unalign!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_unalign!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_unalign!(unpack_latin1, u8, u16, unpack_stride_neither_aligned); + latin1_simd_unalign!(pack_latin1, u16, u8, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_endian = "little", target_feature = "neon"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // +@@ -914,16 +1153,19 @@ cfg_if! { + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_dst_aligned, load16_unaligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_both_aligned, load16_aligned, store8_aligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_src_aligned, load16_aligned, store8_unaligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_dst_aligned, load16_unaligned, store8_aligned); +@@ -939,36 +1181,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + pack_simd_stride!(pack_stride_dst_aligned, load8_unaligned, store16_aligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_dst_aligned, ascii_to_ascii_stride_neither_aligned); + ascii_simd_check_align!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_dst_aligned, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // + // Newer microarchitectures are not supposed to have a performance difference between + // aligned and unaligned SSE2 loads and stores when the address is actually aligned, + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + ++ /// Safety-usable invariant: This should be identical to SIMD_STRIDE_SIZE (used by ascii_simd_check_align_unrolled) + pub const SIMD_ALIGNMENT: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_both_aligned, store16_aligned); + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_src_aligned, store16_unaligned); + + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_both_aligned, store8_aligned); + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_src_aligned, store8_unaligned); + + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); +@@ -984,33 +1233,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_both_aligned, load8_aligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_src_aligned, load8_aligned, store16_unaligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither/double_both/double_src here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align_unrolled!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_neither_aligned, ascii_to_ascii_simd_double_stride_both_aligned, ascii_to_ascii_simd_double_stride_src_aligned); + ascii_simd_check_align_unrolled!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_neither_aligned, ascii_to_basic_latin_simd_double_stride_both_aligned, ascii_to_basic_latin_simd_double_stride_src_aligned); + + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align_unrolled!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align_unrolled!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(target_endian = "little", target_pointer_width = "64"))] { + // Aligned ALU word, little-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | + ((0x0000_0000_0000_FF00usize & word) << 8) | + (0x0000_0000_0000_00FFusize & word); + let second = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | +@@ -1019,22 +1278,24 @@ cfg_if! { + let third = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); + let fourth = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000_0000_0000usize & second) << 8) | + ((0x0000_00FF_0000_0000usize & second) << 16) | + ((0x0000_0000_00FF_0000usize & second) << 24) | + ((0x0000_0000_0000_00FFusize & second) << 32) | + ((0x00FF_0000_0000_0000usize & first) >> 24) | + ((0x0000_00FF_0000_0000usize & first) >> 16) | +@@ -1043,70 +1304,88 @@ cfg_if! { + let second_word = ((0x00FF_0000_0000_0000usize & fourth) << 8) | + ((0x0000_00FF_0000_0000usize & fourth) << 16) | + ((0x0000_0000_00FF_0000usize & fourth) << 24) | + ((0x0000_0000_0000_00FFusize & fourth) << 32) | + ((0x00FF_0000_0000_0000usize & third) >> 24) | + ((0x0000_00FF_0000_0000usize & third) >> 16) | + ((0x0000_0000_00FF_0000usize & third) >> 8) | + (0x0000_0000_0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "little", target_pointer_width = "32"))] { + // Aligned ALU word, little-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let second = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let third = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); + let fourth = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & second) << 8) | + ((0x0000_00FFusize & second) << 16) | + ((0x00FF_0000usize & first) >> 8) | + (0x0000_00FFusize & first); + let second_word = ((0x00FF_0000usize & fourth) << 8) | + ((0x0000_00FFusize & fourth) << 16) | + ((0x00FF_0000usize & third) >> 8) | + (0x0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "64"))] { + // Aligned ALU word, big-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | + ((0x0000_FF00_0000_0000usize & word) >> 24) | + ((0x0000_00FF_0000_0000usize & word) >> 32); + let second = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | +@@ -1115,22 +1394,24 @@ cfg_if! { + let third = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); + let fourth = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF0000_00000000usize & first) << 8) | + ((0x000000FF_00000000usize & first) << 16) | + ((0x00000000_00FF0000usize & first) << 24) | + ((0x00000000_000000FFusize & first) << 32) | + ((0x00FF0000_00000000usize & second) >> 24) | + ((0x000000FF_00000000usize & second) >> 16) | +@@ -1139,67 +1420,80 @@ cfg_if! { + let second_word = ((0x00FF0000_00000000usize & third) << 8) | + ((0x000000FF_00000000usize & third) << 16) | + ((0x00000000_00FF0000usize & third) << 24) | + ((0x00000000_000000FFusize & third) << 32) | + ((0x00FF0000_00000000usize & fourth) >> 24) | + ((0x000000FF_00000000usize & fourth) >> 16) | + ((0x00000000_00FF0000usize & fourth) >> 8) | + (0x00000000_000000FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "32"))] { + // Aligned ALU word, big-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let second = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let third = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); + let fourth = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & first) << 8) | + ((0x0000_00FFusize & first) << 16) | + ((0x00FF_0000usize & second) >> 8) | + (0x0000_00FFusize & second); + let second_word = ((0x00FF_0000usize & third) << 8) | + ((0x0000_00FFusize & third) << 16) | + ((0x00FF_0000usize & fourth) >> 8) | + (0x0000_00FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else { + ascii_naive!(ascii_to_ascii, u8, u8); + ascii_naive!(ascii_to_basic_latin, u8, u16); + ascii_naive!(basic_latin_to_ascii, u16, u8); + } + } + + cfg_if! { ++ // Safety-usable invariant: this counts the zeroes from the "first byte" of utf-8 data packed into a usize ++ // with the target endianness + if #[cfg(target_endian = "little")] { + #[allow(dead_code)] + #[inline(always)] + fn count_zeros(word: usize) -> u32 { + word.trailing_zeros() + } + } else { + #[allow(dead_code)] +@@ -1207,208 +1501,272 @@ cfg_if! { + fn count_zeros(word: usize) -> u32 { + word.leading_zeros() + } + } + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", target_endian = "little", target_arch = "disabled"))] { ++ /// Safety-usable invariant: Will return the value and position of the first non-ASCII byte in the slice in a Some if found. ++ /// In other words, the first element of the Some is always `> 127` + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: src at offset is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + if !simd_is_ascii(simd) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety: Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned vector ++ // Safety: src is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset = mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset = SIMD_STRIDE_SIZE; ++ // Safety: Now that offset has changed we don't yet know how much it is valid for + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_ALIGNMENT, which is defined to be equal to SIMD_STRIDE_SIZE. + let until_alignment = unsafe { (SIMD_ALIGNMENT - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) & SIMD_ALIGNMENT_MASK }; + // This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); + loop { ++ // Safety: We were valid for this read, and were aligned. + let first = unsafe { load16_aligned(src.add(offset)) }; + let second = unsafe { load16_aligned(src.add(offset + SIMD_STRIDE_SIZE)) }; + if !simd_is_ascii(first | second) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + offset += mask_first.trailing_zeros() as usize; + } else { + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize; + } ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + let non_ascii = unsafe { *src.add(offset) }; ++ + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { +- let simd = unsafe { load16_aligned(src.add(offset)) }; +- let mask = mask_ascii(simd); ++ // Safety: We were valid for this read, and were aligned. ++ let simd = unsafe { load16_aligned(src.add(offset)) }; ++ // Safety: mask_ascii produces a mask of all the high bits. ++ let mask = mask_ascii(simd); + if mask != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } else { ++ // Safety: this is the unaligned branch + // At most two iterations, so unroll ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = unsafe { *(src.add(offset)) }; + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else { ++ // Safety-usable invariant: returns byte index of first non-ascii byte + #[inline(always)] + fn find_non_ascii(word: usize, second_word: usize) -> Option<usize> { + let word_masked = word & ASCII_MASK; + let second_masked = second_word & ASCII_MASK; + if (word_masked | second_masked) == 0 { ++ // Both are ascii, invariant upheld + return None; + } + if word_masked != 0 { + let zeros = count_zeros(word_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + return Some(num_ascii); + } + let zeros = count_zeros(second_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + Some(ALU_ALIGNMENT + num_ascii) + } + ++ /// Safety: `src` must be valid for the reads of two `usize`s ++ /// ++ /// Safety-usable invariant: will return byte index of first non-ascii byte + #[inline(always)] + unsafe fn validate_ascii_stride(src: *const usize) -> Option<usize> { + let word = *src; + let second_word = *(src.add(1)); + find_non_ascii(word, second_word) + } + ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[cfg_attr(feature = "cargo-clippy", allow(cast_ptr_alignment))] + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; + let mut until_alignment = (ALU_ALIGNMENT - ((src as usize) & ALU_ALIGNMENT_MASK)) & ALU_ALIGNMENT_MASK; ++ // Safety: If this check fails we're valid to read `until_alignment + ALU_STRIDE_SIZE` elements + if until_alignment + ALU_STRIDE_SIZE <= len { + while until_alignment != 0 { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + until_alignment -= 1; + } ++ // Safety: At this point we have read until_alignment elements and ++ // are valid for `ALU_STRIDE_SIZE` more. + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: we were valid for this read + let ptr = unsafe { src.add(offset) as *const usize }; + if let Some(num_ascii) = unsafe { validate_ascii_stride(ptr) } { + offset += num_ascii; ++ // Safety-usable invairant upheld here using the invariant from validate_ascii_stride() + return Some((unsafe { *(src.add(offset)) }, offset)); + } + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > ALU_STRIDE_SIZE` which means we always have at least `2 * ALU_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + + } +@@ -1423,70 +1781,88 @@ cfg_if! { + // vector reads without vector writes. + + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const ALU_ALIGNMENT: usize = 4; + + pub const ALU_ALIGNMENT_MASK: usize = 3; + } else { ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn unpack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + } + ++ // Safety: src points to four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn pack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + } + ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn ascii_to_basic_latin_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); + // Check if the words contains non-ASCII + if (word & ASCII_MASK) | (second_word & ASCII_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + true + } + ++ // Safety: src points four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn basic_latin_to_ascii_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); + if (first & BASIC_LATIN_MASK) | (second & BASIC_LATIN_MASK) | (third & BASIC_LATIN_MASK) | (fourth & BASIC_LATIN_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + true + } + ++ // Safety: src, dst both point to two valid `usize`s each ++ // Safety-usable invariant: Will return byte index of first non-ascii byte. + #[inline(always)] + unsafe fn ascii_to_ascii_stride(src: *const usize, dst: *mut usize) -> Option<usize> { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: src safety invariant used here + *dst = word; + *(dst.add(1)) = second_word; ++ // Relies on safety-usable invariant here + find_non_ascii(word, second_word) + } + + basic_latin_alu!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_alu); + basic_latin_alu!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_alu); + latin1_alu!(unpack_latin1, u8, u16, unpack_latin1_stride_alu); + latin1_alu!(pack_latin1, u16, u8, pack_latin1_stride_alu); ++ // Safety invariant upheld: ascii_to_ascii_stride will return byte index of first non-ascii if found + ascii_alu!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride); + } + } + + pub fn ascii_valid_up_to(bytes: &[u8]) -> usize { + match validate_ascii(bytes) { + None => bytes.len(), + Some((_, num_valid)) => num_valid, +diff --git a/third_party/rust/encoding_rs/src/handles.rs b/third_party/rust/encoding_rs/src/handles.rs +--- third_party/rust/encoding_rs/src/handles.rs ++++ third_party/rust/encoding_rs/src/handles.rs +@@ -29,17 +29,17 @@ use crate::simd_funcs::*; + #[cfg(all( + feature = "simd-accel", + any( + target_feature = "sse2", + all(target_endian = "little", target_arch = "aarch64"), + all(target_endian = "little", target_feature = "neon") + ) + ))] +-use packed_simd::u16x8; ++use core::simd::u16x8; + + use super::DecoderResult; + use super::EncoderResult; + use crate::ascii::*; + use crate::utf_8::convert_utf8_to_utf16_up_to_invalid; + use crate::utf_8::utf8_valid_up_to; + + pub enum Space<T> { +@@ -85,84 +85,100 @@ impl Endian for LittleEndian { + const OPPOSITE_ENDIAN: bool = false; + + #[cfg(target_endian = "big")] + const OPPOSITE_ENDIAN: bool = true; + } + + #[derive(Debug, Copy, Clone)] + struct UnalignedU16Slice { ++ // Safety invariant: ptr must be valid for reading 2*len bytes + ptr: *const u8, + len: usize, + } + + impl UnalignedU16Slice { ++ /// Safety: ptr must be valid for reading 2*len bytes + #[inline(always)] + pub unsafe fn new(ptr: *const u8, len: usize) -> UnalignedU16Slice { ++ // Safety: field invariant passed up to caller here + UnalignedU16Slice { ptr, len } + } + + #[inline(always)] + pub fn trim_last(&mut self) { + assert!(self.len > 0); ++ // Safety: invariant upheld here: a slice is still valid with a shorter len + self.len -= 1; + } + + #[inline(always)] + pub fn at(&self, i: usize) -> u16 { + use core::mem::MaybeUninit; + + assert!(i < self.len); + unsafe { + let mut u: MaybeUninit<u16> = MaybeUninit::uninit(); ++ // Safety: i is at most len - 1, which works here + ::core::ptr::copy_nonoverlapping(self.ptr.add(i * 2), u.as_mut_ptr() as *mut u8, 2); ++ // Safety: valid read above lets us do this + u.assume_init() + } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn simd_at(&self, i: usize) -> u16x8 { ++ // Safety: i/len are on the scale of u16s, each one corresponds to 2 u8s + assert!(i + SIMD_STRIDE_SIZE / 2 <= self.len); + let byte_index = i * 2; ++ // Safety: load16_unaligned needs SIMD_STRIDE_SIZE=16 u8 elements to read, ++ // or 16/2 = 8 u16 elements to read. ++ // We have checked that we have at least that many above. ++ + unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) } + } + + #[inline(always)] + pub fn len(&self) -> usize { + self.len + } + + #[inline(always)] + pub fn tail(&self, from: usize) -> UnalignedU16Slice { + // XXX the return value should be restricted not to + // outlive self. + assert!(from <= self.len); ++ // Safety: This upholds the same invariant: `from` is in bounds and we're returning a shorter slice + unsafe { UnalignedU16Slice::new(self.ptr.add(from * 2), self.len - from) } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn copy_bmp_to<E: Endian>(&self, other: &mut [u16]) -> Option<(u16, usize)> { + assert!(self.len <= other.len()); + let mut offset = 0; ++ // Safety: SIMD_STRIDE_SIZE is measured in bytes, whereas len is in u16s. We check we can ++ // munch SIMD_STRIDE_SIZE / 2 u16s which means we can write SIMD_STRIDE_SIZE u8s + if SIMD_STRIDE_SIZE / 2 <= self.len { + let len_minus_stride = self.len - SIMD_STRIDE_SIZE / 2; + loop { + let mut simd = self.simd_at(offset); + if E::OPPOSITE_ENDIAN { + simd = simd_byte_swap(simd); + } ++ // Safety: we have enough space on the other side to write this + unsafe { + store8_unaligned(other.as_mut_ptr().add(offset), simd); + } + if contains_surrogates(simd) { + break; + } + offset += SIMD_STRIDE_SIZE / 2; ++ // Safety: This ensures we still have space for writing SIMD_STRIDE_SIZE u8s + if offset > len_minus_stride { + break; + } + } + } + while offset < self.len { + let unit = swap_if_opposite_endian::<E>(self.at(offset)); + other[offset] = unit; +@@ -231,33 +247,37 @@ fn copy_unaligned_basic_latin_to_ascii<E + #[cfg(feature = "simd-accel")] + #[inline(always)] + fn copy_unaligned_basic_latin_to_ascii<E: Endian>( + src: UnalignedU16Slice, + dst: &mut [u8], + ) -> CopyAsciiResult<usize, (u16, usize)> { + let len = ::core::cmp::min(src.len(), dst.len()); + let mut offset = 0; ++ // Safety: This check ensures we are able to read/write at least SIMD_STRIDE_SIZE elements + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { + let mut first = src.simd_at(offset); + let mut second = src.simd_at(offset + (SIMD_STRIDE_SIZE / 2)); + if E::OPPOSITE_ENDIAN { + first = simd_byte_swap(first); + second = simd_byte_swap(second); + } + if !simd_is_basic_latin(first | second) { + break; + } + let packed = simd_pack(first, second); ++ // Safety: We are able to write SIMD_STRIDE_SIZE elements in this iteration + unsafe { + store16_unaligned(dst.as_mut_ptr().add(offset), packed); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which ensures that we can write at least SIMD_STRIDE_SIZE elements ++ // in the next iteration + if offset > len_minus_stride { + break; + } + } + } + copy_unaligned_basic_latin_to_ascii_alu::<E>(src.tail(offset), &mut dst[offset..], offset) + } + +@@ -632,94 +652,106 @@ impl<'a> Utf16Destination<'a> { + #[inline(always)] + fn write_astral(&mut self, astral: u32) { + debug_assert!(astral > 0xFFFF); + debug_assert!(astral <= 0x10_FFFF); + self.write_code_unit((0xD7C0 + (astral >> 10)) as u16); + self.write_code_unit((0xDC00 + (astral & 0x3FF)) as u16); + } + #[inline(always)] +- pub fn write_surrogate_pair(&mut self, high: u16, low: u16) { ++ fn write_surrogate_pair(&mut self, high: u16, low: u16) { + self.write_code_unit(high); + self.write_code_unit(low); + } + #[inline(always)] + fn write_big5_combination(&mut self, combined: u16, combining: u16) { + self.write_bmp_excl_ascii(combined); + self.write_bmp_excl_ascii(combining); + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_bmp<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16BmpHandle<'b, 'a>)> { + let non_ascii_ret = { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16BmpHandle::new(self))) + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_astral<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16AstralHandle<'b, 'a>)> { + let non_ascii_ret = { + let dst_len = self.slice.len(); + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + if self.pos + 1 < dst_len { + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } else { + return CopyAsciiResult::Stop(( + DecoderResult::OutputFull, + source.pos, + self.pos, + )); + } + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16AstralHandle::new(self))) + } + #[inline(always)] + pub fn copy_utf8_up_to_invalid_from(&mut self, source: &mut ByteSource) { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (read, written) = convert_utf8_to_utf16_up_to_invalid(src_remaining, dst_remaining); + source.pos += read; +diff --git a/third_party/rust/encoding_rs/src/lib.rs b/third_party/rust/encoding_rs/src/lib.rs +--- third_party/rust/encoding_rs/src/lib.rs ++++ third_party/rust/encoding_rs/src/lib.rs +@@ -684,37 +684,26 @@ + //! <tr><td>TIS-620</td><td>windows-874</td></tr> + //! </tbody> + //! </table> + //! + //! See the section [_UTF-16LE, UTF-16BE and Unicode Encoding Schemes_](#utf-16le-utf-16be-and-unicode-encoding-schemes) + //! for discussion about the UTF-16 family. + + #![no_std] +-#![cfg_attr(feature = "simd-accel", feature(core_intrinsics))] ++#![cfg_attr(feature = "simd-accel", feature(core_intrinsics, portable_simd))] + + #[cfg(feature = "alloc")] + #[cfg_attr(test, macro_use)] + extern crate alloc; + + extern crate core; + #[macro_use] + extern crate cfg_if; + +-#[cfg(all( +- feature = "simd-accel", +- any( +- target_feature = "sse2", +- all(target_endian = "little", target_arch = "aarch64"), +- all(target_endian = "little", target_feature = "neon") +- ) +-))] +-#[macro_use(shuffle)] +-extern crate packed_simd; +- + #[cfg(feature = "serde")] + extern crate serde; + + #[cfg(all(test, feature = "serde"))] + extern crate bincode; + #[cfg(all(test, feature = "serde"))] + #[macro_use] + extern crate serde_derive; +diff --git a/third_party/rust/encoding_rs/src/mem.rs b/third_party/rust/encoding_rs/src/mem.rs +--- third_party/rust/encoding_rs/src/mem.rs ++++ third_party/rust/encoding_rs/src/mem.rs +@@ -111,16 +111,21 @@ macro_rules! by_unit_check_alu { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - ALU_ALIGNMENT / unit_size; + if offset + (4 * (ALU_ALIGNMENT / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length ALU_ALIGNMENT / unit_size. ALU_ALIGNMENT is the size of usize, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four usize reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (ALU_ALIGNMENT / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const usize) } + | unsafe { + *(src.add(offset + (ALU_ALIGNMENT / unit_size)) as *const usize) + } + | unsafe { + *(src.add(offset + (2 * (ALU_ALIGNMENT / unit_size))) +@@ -129,22 +134,24 @@ macro_rules! by_unit_check_alu { + | unsafe { + *(src.add(offset + (3 * (ALU_ALIGNMENT / unit_size))) + as *const usize) + }; + if unroll_accu & $mask != 0 { + return false; + } + offset += 4 * (ALU_ALIGNMENT / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one usize read. + accu |= unsafe { *(src.add(offset) as *const usize) }; + offset += ALU_ALIGNMENT / unit_size; + } + } + } + for &unit in &buffer[offset..] { + accu |= unit as usize; + } +@@ -184,16 +191,21 @@ macro_rules! by_unit_check_simd { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - SIMD_STRIDE_SIZE / unit_size; + if offset + (4 * (SIMD_STRIDE_SIZE / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length SIMD_STRIDE_SIZE / unit_size. SIMD_STRIDE_SIZE is the size of $simd_ty, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four $simd_ty reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (SIMD_STRIDE_SIZE / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const $simd_ty) } + | unsafe { + *(src.add(offset + (SIMD_STRIDE_SIZE / unit_size)) + as *const $simd_ty) + } + | unsafe { +@@ -203,23 +215,25 @@ macro_rules! by_unit_check_simd { + | unsafe { + *(src.add(offset + (3 * (SIMD_STRIDE_SIZE / unit_size))) + as *const $simd_ty) + }; + if !$func(unroll_accu) { + return false; + } + offset += 4 * (SIMD_STRIDE_SIZE / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + let mut simd_accu = $splat; + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one $simd_ty read. + simd_accu = simd_accu | unsafe { *(src.add(offset) as *const $simd_ty) }; + offset += SIMD_STRIDE_SIZE / unit_size; + } + if !$func(simd_accu) { + return false; + } + } + } +@@ -229,18 +243,18 @@ macro_rules! by_unit_check_simd { + accu < $bound + } + }; + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", any(target_feature = "sse2", all(target_endian = "little", target_arch = "aarch64"), all(target_endian = "little", target_feature = "neon"))))] { + use crate::simd_funcs::*; +- use packed_simd::u8x16; +- use packed_simd::u16x8; ++ use core::simd::u8x16; ++ use core::simd::u16x8; + + const SIMD_ALIGNMENT: usize = 16; + + const SIMD_ALIGNMENT_MASK: usize = 15; + + by_unit_check_simd!(is_ascii_impl, u8, u8x16::splat(0), u8x16, 0x80, simd_is_ascii); + by_unit_check_simd!(is_basic_latin_impl, u16, u16x8::splat(0), u16x8, 0x80, simd_is_basic_latin); + by_unit_check_simd!(is_utf16_latin1_impl, u16, u16x8::splat(0), u16x8, 0x100, simd_is_latin1); +diff --git a/third_party/rust/encoding_rs/src/simd_funcs.rs b/third_party/rust/encoding_rs/src/simd_funcs.rs +--- third_party/rust/encoding_rs/src/simd_funcs.rs ++++ third_party/rust/encoding_rs/src/simd_funcs.rs +@@ -2,65 +2,84 @@ + // file at the top-level directory of this distribution. + // + // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or + // https://www.apache.org/licenses/LICENSE-2.0> or the MIT license + // <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your + // option. This file may not be copied, modified, or distributed + // except according to those terms. + +-use packed_simd::u16x8; +-use packed_simd::u8x16; +-use packed_simd::IntoBits; ++use any_all_workaround::all_mask16x8; ++use any_all_workaround::all_mask8x16; ++use any_all_workaround::any_mask16x8; ++use any_all_workaround::any_mask8x16; ++use core::simd::cmp::SimdPartialEq; ++use core::simd::cmp::SimdPartialOrd; ++use core::simd::mask16x8; ++use core::simd::mask8x16; ++use core::simd::simd_swizzle; ++use core::simd::u16x8; ++use core::simd::u8x16; ++use core::simd::ToBytes; + + // TODO: Migrate unaligned access to stdlib code if/when the RFC + // https://github.com/rust-lang/rfcs/pull/1725 is implemented. + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load16_unaligned(ptr: *const u8) -> u8x16 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr, &mut simd as *mut u8x16 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u8x16>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load16_aligned(ptr: *const u8) -> u8x16 { + *(ptr as *const u8x16) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store16_unaligned(ptr: *mut u8, s: u8x16) { + ::core::ptr::copy_nonoverlapping(&s as *const u8x16 as *const u8, ptr, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store16_aligned(ptr: *mut u8, s: u8x16) { + *(ptr as *mut u8x16) = s; + } + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load8_unaligned(ptr: *const u16) -> u16x8 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr as *const u8, &mut simd as *mut u16x8 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u16x8>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr as *const u8, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load8_aligned(ptr: *const u16) -> u16x8 { + *(ptr as *const u16x8) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store8_unaligned(ptr: *mut u16, s: u16x8) { + ::core::ptr::copy_nonoverlapping(&s as *const u16x8 as *const u8, ptr as *mut u8, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store8_aligned(ptr: *mut u16, s: u16x8) { + *(ptr as *mut u16x8) = s; + } + + cfg_if! { + if #[cfg(all(target_feature = "sse2", target_arch = "x86_64"))] { +@@ -95,234 +114,241 @@ cfg_if! { + pub fn simd_byte_swap(s: u16x8) -> u16x8 { + let left = s << 8; + let right = s >> 8; + left | right + } + + #[inline(always)] + pub fn to_u16_lanes(s: u8x16) -> u16x8 { +- s.into_bits() ++ u16x8::from_ne_bytes(s) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + + // Expose low-level mask instead of higher-level conclusion, + // because the non-ASCII case would perform less well otherwise. ++ // Safety-usable invariant: This returned value is whether each high bit is set + #[inline(always)] + pub fn mask_ascii(s: u8x16) -> i32 { + unsafe { +- _mm_movemask_epi8(s.into_bits()) ++ _mm_movemask_epi8(s.into()) + } + } + + } else { + + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- _mm_movemask_epi8(s.into_bits()) == 0 ++ // Safety: We have cfg()d the correct platform ++ _mm_movemask_epi8(s.into()) == 0 + } + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0x80 + } + } + } else { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + // This optimizes better on ARM than + // the lt formulation. + let highest_ascii = u8x16::splat(0x7F); +- !s.gt(highest_ascii).any() ++ !any_mask8x16(s.simd_gt(highest_ascii)) + } + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + if simd_is_ascii(s) { + return true; + } + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ s.simd_lt(above_str_latin1).all() + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0xC4 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0xC4 + } + } + } else { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ all_mask8x16(s.simd_lt(above_str_latin1)) + } + } + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x80 + } + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x100 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x100 + } + } + } else { + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + let above_ascii = u16x8::splat(0x80); +- s.lt(above_ascii).all() ++ all_mask16x8(s.simd_lt(above_ascii)) + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + // For some reason, on SSE2 this formulation + // seems faster in this case while the above + // function is better the other way round... + let highest_latin1 = u16x8::splat(0xFF); +- !s.gt(highest_latin1).any() ++ !any_mask16x8(s.simd_gt(highest_latin1)) + } + } + } + + #[inline(always)] + pub fn contains_surrogates(s: u16x8) -> bool { + let mask = u16x8::splat(0xF800); + let surrogate_bits = u16x8::splat(0xD800); +- (s & mask).eq(surrogate_bits).any() ++ any_mask16x8((s & mask).simd_eq(surrogate_bits)) + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => ({ + unsafe { +- if vmaxvq_u16($s.into_bits()) < 0x0590 { ++ // Safety: We have cfg()d the correct platform ++ if vmaxvq_u16($s.into()) < 0x0590 { + return false; + } + } + }) + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => () + } + } else { + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => () + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => ({ +- if $s.all() { ++ if all_mask16x8($s) { + return false; + } + }) + } + } + } + + macro_rules! in_range16x8 { + ($s:ident, $start:expr, $end:expr) => {{ + // SIMD sub is wrapping +- ($s - u16x8::splat($start)).lt(u16x8::splat($end - $start)) ++ ($s - u16x8::splat($start)).simd_lt(u16x8::splat($end - $start)) + }}; + } + + #[inline(always)] + pub fn is_u16x8_bidi(s: u16x8) -> bool { + // We try to first quickly refute the RTLness of the vector. If that + // fails, we do the real RTL check, so in that case we end up wasting + // the work for the up-front quick checks. Even the quick-check is + // two-fold in order to return `false` ASAP if everything is below + // Hebrew. + + aarch64_return_false_if_below_hebrew!(s); + +- let below_hebrew = s.lt(u16x8::splat(0x0590)); ++ let below_hebrew = s.simd_lt(u16x8::splat(0x0590)); + + non_aarch64_return_false_if_all!(below_hebrew); + +- if (below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802)).all() { ++ if all_mask16x8( ++ below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802), ++ ) { + return false; + } + + // Quick refutation failed. Let's do the full check. + +- (in_range16x8!(s, 0x0590, 0x0900) +- | in_range16x8!(s, 0xFB1D, 0xFE00) +- | in_range16x8!(s, 0xFE70, 0xFEFF) +- | in_range16x8!(s, 0xD802, 0xD804) +- | in_range16x8!(s, 0xD83A, 0xD83C) +- | s.eq(u16x8::splat(0x200F)) +- | s.eq(u16x8::splat(0x202B)) +- | s.eq(u16x8::splat(0x202E)) +- | s.eq(u16x8::splat(0x2067))) +- .any() ++ any_mask16x8( ++ (in_range16x8!(s, 0x0590, 0x0900) ++ | in_range16x8!(s, 0xFB1D, 0xFE00) ++ | in_range16x8!(s, 0xFE70, 0xFEFF) ++ | in_range16x8!(s, 0xD802, 0xD804) ++ | in_range16x8!(s, 0xD83A, 0xD83C) ++ | s.simd_eq(u16x8::splat(0x200F)) ++ | s.simd_eq(u16x8::splat(0x202B)) ++ | s.simd_eq(u16x8::splat(0x202E)) ++ | s.simd_eq(u16x8::splat(0x2067))), ++ ) + } + + #[inline(always)] + pub fn simd_unpack(s: u8x16) -> (u16x8, u16x8) { +- unsafe { +- let first: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] +- ); +- let second: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] +- ); +- (first.into_bits(), second.into_bits()) +- } ++ let first: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] ++ ); ++ let second: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] ++ ); ++ (u16x8::from_ne_bytes(first), u16x8::from_ne_bytes(second)) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { + unsafe { +- _mm_packus_epi16(a.into_bits(), b.into_bits()).into_bits() ++ // Safety: We have cfg()d the correct platform ++ _mm_packus_epi16(a.into(), b.into()).into() + } + } + } else { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { +- unsafe { +- let first: u8x16 = a.into_bits(); +- let second: u8x16 = b.into_bits(); +- shuffle!( +- first, +- second, +- [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] +- ) +- } ++ let first: u8x16 = a.to_ne_bytes(); ++ let second: u8x16 = b.to_ne_bytes(); ++ simd_swizzle!( ++ first, ++ second, ++ [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] ++ ) + } + } + } + + #[cfg(test)] + mod tests { + use super::*; + use alloc::vec::Vec; +diff --git a/third_party/rust/encoding_rs/src/single_byte.rs b/third_party/rust/encoding_rs/src/single_byte.rs +--- third_party/rust/encoding_rs/src/single_byte.rs ++++ third_party/rust/encoding_rs/src/single_byte.rs +@@ -48,16 +48,19 @@ impl SingleByteDecoder { + CopyAsciiResult::GoOn((mut non_ascii, mut handle)) => 'middle: loop { + // Start non-boilerplate + // + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: `non_ascii` is a u8 byte >=0x80, from the invariants ++ // on Utf8Destination::copy_ascii_from_check_space_bmp() + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + source.consumed(), + handle.written(), +@@ -146,82 +149,103 @@ impl SingleByteDecoder { + dst: &mut [u16], + _last: bool, + ) -> (DecoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (DecoderResult::OutputFull, dst.len()) + } else { + (DecoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + ascii_to_basic_latin( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + unsafe { +- // The bound check has already been performed ++ // Safety: As mentioned above, `converted < length` + *(dst.get_unchecked_mut(converted)) = mapped; + } ++ // Safety: `converted <= length` upheld, since `converted < length` before this + converted += 1; + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: We are back to `converted < length` because of the == above ++ // and can perform this check. + let mut b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: `converted < length` is upheld for this loop + 'innermost: loop { + if b > 127 { + non_ascii = b; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: `converted < length` is true for this loop + *(dst.get_unchecked_mut(converted)) = u16::from(b); + } ++ // Safety: We are now at `converted <= length`. We should *not* `continue` ++ // the loop without reverifying + converted += 1; + if b < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted <= length` because of the == above + b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: The loop continues as `converted < length` + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; + } + } + } + } +@@ -229,16 +253,18 @@ impl SingleByteDecoder { + } + + pub fn latin1_byte_compatible_up_to(&self, buffer: &[u8]) -> usize { + let mut bytes = buffer; + let mut total = 0; + loop { + if let Some((non_ascii, offset)) = validate_ascii(bytes) { + total += offset; ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + if mapped != u16::from(non_ascii) { + return total; + } + total += 1; + bytes = &bytes[offset + 1..]; + } else { + return total; +@@ -379,64 +405,89 @@ impl SingleByteEncoder { + dst: &mut [u8], + _last: bool, + ) -> (EncoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (EncoderResult::OutputFull, dst.len()) + } else { + (EncoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + basic_latin_to_ascii( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + match self.encode_u16(non_ascii) { + Some(byte) => { + unsafe { ++ // Safety: we're allowed this access since `converted < length` + *(dst.get_unchecked_mut(converted)) = byte; + } + converted += 1; ++ // `converted <= length` now + } + None => { + // At this point, we need to know if we + // have a surrogate. + let high_bits = non_ascii & 0xFC00u16; + if high_bits == 0xD800u16 { + // high surrogate + if converted + 1 == length { + // End of buffer. This surrogate is unpaired. + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } ++ // Safety: convered < length from outside the match, and `converted + 1 != length`, ++ // So `converted + 1 < length` as well. We're in bounds + let second = + u32::from(unsafe { *src.get_unchecked(converted + 1) }); + if second & 0xFC00u32 != 0xDC00u32 { + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + // The next code unit is a low surrogate. + let astral: char = unsafe { ++ // Safety: We can rely on non_ascii being 0xD800-0xDBFF since the high bits are 0xD800 ++ // Then, (non_ascii << 10 - 0xD800 << 10) becomes between (0 to 0x3FF) << 10, which is between ++ // 0x400 to 0xffc00. Adding the 0x10000 gives a range of 0x10400 to 0x10fc00. Subtracting the 0xDC00 ++ // gives 0x2800 to 0x102000 ++ // The second term is between 0xDC00 and 0xDFFF from the check above. This gives a maximum ++ // possible range of (0x10400 + 0xDC00) to (0x102000 + 0xDFFF) which is 0x1E000 to 0x10ffff. ++ // This is in range. ++ // ++ // From a Unicode principles perspective this can also be verified as we have checked that `non_ascii` is a high surrogate ++ // (0xD800..=0xDBFF), and that `second` is a low surrogate (`0xDC00..=0xDFFF`), and we are applying reverse of the UTC16 transformation ++ // algorithm <https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF>, by applying the high surrogate - 0xD800 to the ++ // high ten bits, and the low surrogate - 0xDc00 to the low ten bits, and then adding 0x10000 + ::core::char::from_u32_unchecked( + (u32::from(non_ascii) << 10) + second + - (((0xD800u32 << 10) - 0x1_0000u32) + 0xDC00u32), + ) + }; + return ( + EncoderResult::Unmappable(astral), + converted + 2, // +2 `for non_ascii` and `second` +@@ -451,52 +502,63 @@ impl SingleByteEncoder { + converted, + ); + } + return ( + EncoderResult::unmappable_from_bmp(non_ascii), + converted + 1, // +1 `for non_ascii` + converted, + ); ++ // Safety: This branch diverges, so no need to uphold invariants on `converted` + } + } + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted < length` due to the == above and can perform ++ // the unchecked read + let mut unit = unsafe { *(src.get_unchecked(converted)) }; + 'innermost: loop { ++ // Safety: This loop always begins with `converted < length`, see ++ // the invariant outside and the comment on the continue below + if unit > 127 { + non_ascii = unit; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: Can rely on converted < length + *(dst.get_unchecked_mut(converted)) = unit as u8; + } + converted += 1; ++ // `converted <= length` here + if unit < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: `converted < length` due to the == above. The read is safe. + unit = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: This only happens if `converted < length`, maintaining it + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; ++ // Safety: All other routes to here diverge so the continue is the only ++ // way to run the innermost loop. + } + } + } + } + } + } + } + +diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs +--- third_party/rust/encoding_rs/src/x_user_defined.rs ++++ third_party/rust/encoding_rs/src/x_user_defined.rs +@@ -9,22 +9,23 @@ + + use super::*; + use crate::handles::*; + use crate::variant::*; + + cfg_if! { + if #[cfg(feature = "simd-accel")] { + use simd_funcs::*; +- use packed_simd::u16x8; ++ use core::simd::u16x8; ++ use core::simd::cmp::SimdPartialOrd; + + #[inline(always)] + fn shift_upper(unpacked: u16x8) -> u16x8 { + let highest_ascii = u16x8::splat(0x7F); +- unpacked + unpacked.gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } ++ unpacked + unpacked.simd_gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } + } else { + } + } + + pub struct UserDefinedDecoder; + + impl UserDefinedDecoder { + pub fn new() -> VariantDecoder { +@@ -111,20 +112,25 @@ impl UserDefinedDecoder { + } else { + (DecoderResult::InputEmpty, src.len()) + }; + // Not bothering with alignment + let tail_start = length & !0xF; + let simd_iterations = length >> 4; + let src_ptr = src.as_ptr(); + let dst_ptr = dst.as_mut_ptr(); ++ // Safety: This is `for i in 0..length / 16` + for i in 0..simd_iterations { ++ // Safety: This is in bounds: length is the minumum valid length for both src/dst ++ // and i ranges to length/16, so multiplying by 16 will always be `< length` and can do ++ // a 16 byte read + let input = unsafe { load16_unaligned(src_ptr.add(i * 16)) }; + let (first, second) = simd_unpack(input); + unsafe { ++ // Safety: same as above, but this is two consecutive 8-byte reads + store8_unaligned(dst_ptr.add(i * 16), shift_upper(first)); + store8_unaligned(dst_ptr.add((i * 16) + 8), shift_upper(second)); + } + } + let src_tail = &src[tail_start..length]; + let dst_tail = &mut dst[tail_start..length]; + src_tail + .iter() + +diff --git a/third_party/rust/encoding_rs/.cargo-checksum.json b/third_party/rust/encoding_rs/.cargo-checksum.json +--- third_party/rust/encoding_rs/.cargo-checksum.json ++++ third_party/rust/encoding_rs/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"42fa83322aa9fd6723b77d35d0cacb92cbb6e7f573ce11c55f5225292866f8f4","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"d938e8ab0b9ab67e74a1a4f48f23fdce956d0ad3a3f6147ae7612a92763c88d5","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"c44c002641adb5ebc4368707a8cc0a076d2f33e6a5c27b1b69988eb515f5653d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"cc83dc0754751d67f5688a65c5e0191cba02f6bacce81a0813a243cba55eef7a","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"1dc07b818e45846b16ddcaf0de46c8862dd7df8099123ec38b95c3f8ad9c91ec","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"0bf34103e0ad1b842a13a082dee2b920b05cf4fb0f145c9ee7f608f4cb4a544f","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"2612aba86e1d201096d7e47a859bc3444f85934cc82d8adc6d39a4304d9eecfc","src/single_byte.rs":"3c9e9c1f946ae622c725ba9421240c1faa9a05e95fa10dd4642a25cb276a1edc","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"c9c010730dfb9f141d4fed19350c08a21af240913a54bb64f5ca89ff93b6b7d1"},"package":"7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"} +\ No newline at end of file ++{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"22a4d210c92dae9f32c6944ef340ee8fdd027f99c081577e8907123e2a93383e","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"1d08aefcb92afa81b18154049c9abbcad4540a23f7172e9f9bbed5af33f1a087","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"588e38b01e666d5e7462617ea7e90a108d608dec9e016f3d273ac0744af2e05d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"b08cef1f5785bb6a4822f2e844c6df1b046b737b7a075e4593eaa8c4208e9fe2","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"834f44b670ec48ee82c0e12223d1567313fdd9f88bca5f4b117c82c1828f559f","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"948571137d3b151df8db4fb2c733e74ae595d055cdf0ad83abcab9341d6adabe","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"05c6e77af74bfe73cd39a752067c11425d6b46e5da419910f54bf75a5c02a984","src/single_byte.rs":"3ad87116fb339434a4b58e8f2b15485f2b66b9f7814d708f16194ed08f6d6ccf","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"9456ca46168ef86c98399a2536f577ef7be3cdde90c0c51392d8ac48519d3fae"},"package":"b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"} diff --git a/www/firefox-esr/files/patch-rust-1.78.0-arm b/www/firefox-esr/files/patch-rust-1.78.0-arm new file mode 100644 index 000000000000..7db8038cfaeb --- /dev/null +++ b/www/firefox-esr/files/patch-rust-1.78.0-arm @@ -0,0 +1,64 @@ +Relevant bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1882291 + + +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -4274,10 +4274,11 @@ + [[package]] + name = "qcms" + version = "0.2.0" + dependencies = [ + "libc", ++ "version_check", + ] + + [[package]] + name = "qlog" + version = "0.4.0" +diff --git a/gfx/qcms/Cargo.toml b/gfx/qcms/Cargo.toml +--- gfx/qcms/Cargo.toml ++++ gfx/qcms/Cargo.toml +@@ -18,5 +18,8 @@ + iccv4-enabled = [] + cmyk = [] + + [dependencies] + libc = {version = "0.2", optional = true } ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/gfx/qcms/build.rs b/gfx/qcms/build.rs +new file mode 100644 +--- /dev/null ++++ gfx/qcms/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/gfx/qcms/src/lib.rs b/gfx/qcms/src/lib.rs +--- gfx/qcms/src/lib.rs ++++ gfx/qcms/src/lib.rs +@@ -5,13 +5,15 @@ + #![allow(non_camel_case_types)] + #![allow(non_snake_case)] + #![allow(non_upper_case_globals)] + // These are needed for the neon SIMD code and can be removed once the MSRV supports the + // instrinsics we use +-#![cfg_attr(feature = "neon", feature(stdsimd))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_neon_intrinsics))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_feature_detection))] ++#![cfg_attr(all(not(stdsimd_split), target_arch = "arm", feature = "neon"), feature(stdsimd))] + #![cfg_attr( +- feature = "neon", ++ all(target_arch = "arm", feature = "neon"), + feature(arm_target_feature, raw_ref_op) + + )] + + /// These values match the Rendering Intent values from the ICC spec + diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 8f4bea3f1acd..c071b340a668 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -1,9 +1,10 @@ PORTNAME= firefox -DISTVERSION= 125.0.2 +DISTVERSION= 126.0 +PORTREVISION= 2 PORTEPOCH= 2 CATEGORIES= www wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build1/source + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build2/source DISTFILES= ${DISTNAME}.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org @@ -14,7 +15,7 @@ BUILD_DEPENDS= nspr>=4.32:devel/nspr \ nss>=3.99:security/nss \ icu>=73.1:devel/icu \ libevent>=2.1.8:devel/libevent \ - harfbuzz>=8.3.0:print/harfbuzz \ + harfbuzz>=8.3.1:print/harfbuzz \ graphite2>=1.3.14:graphics/graphite2 \ png>=1.6.43:graphics/png \ dav1d>=1.0.0:multimedia/dav1d \ diff --git a/www/firefox/distinfo b/www/firefox/distinfo index 0786efbadaea..0a82262a4352 100644 --- a/www/firefox/distinfo +++ b/www/firefox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713558615 -SHA256 (firefox-125.0.2.source.tar.xz) = 69d0563361bab375407b25430c782346bec7623f3f1005e7dc505351ac69f799 -SIZE (firefox-125.0.2.source.tar.xz) = 544666944 +TIMESTAMP = 1715328113 +SHA256 (firefox-126.0.source.tar.xz) = 910e82a1999ec229e5bc5090a39cec9c575e8bafcac2c54f9bb5c699bd868526 +SIZE (firefox-126.0.source.tar.xz) = 552065476 diff --git a/www/firefox/files/patch-bug1890593 b/www/firefox/files/patch-bug1890593 deleted file mode 100644 index 75a4da270e1a..000000000000 --- a/www/firefox/files/patch-bug1890593 +++ /dev/null @@ -1,28 +0,0 @@ -commit 9ef1582be54a8ff301336b397130e4d313fa3371 -Author: Christoph Moench-Tegeder <cmt@burggraben.net> -Date: Tue Apr 9 21:27:21 2024 +0200 - - bug 1890593 - GetSystemWPADSetting for libproxy-enabled builds - - In #621429 a call to nsUnixSystemProxySettings::GetSystemWPADSetting() - was added, but that function is not available for builds with - MOZ_ENABLE_LIBPROXY. The funtion is trivial enough to just - copy it across - else there'd more boilerplate than actual code. - -diff --git toolkit/system/unixproxy/nsLibProxySettings.cpp toolkit/system/unixproxy/nsLibProxySettings.cpp -index 4f6f43fb76e9..f2c782455426 100644 ---- toolkit/system/unixproxy/nsLibProxySettings.cpp -+++ toolkit/system/unixproxy/nsLibProxySettings.cpp -@@ -99,6 +99,12 @@ nsresult nsUnixSystemProxySettings::GetProxyForURI(const nsACString& aSpec, - return NS_OK; - } - -+NS_IMETHODIMP -+nsUnixSystemProxySettings::GetSystemWPADSetting(bool* aSystemWPADSetting) { -+ *aSystemWPADSetting = false; -+ return NS_OK; -+} -+ - NS_IMPL_COMPONENT_FACTORY(nsUnixSystemProxySettings) { - return do_AddRef(new nsUnixSystemProxySettings()).downcast<nsISupports>(); - } diff --git a/www/firefox/files/patch-libwebrtc-generated b/www/firefox/files/patch-libwebrtc-generated index caec639c4c69..a56d291ae041 100644 --- a/www/firefox/files/patch-libwebrtc-generated +++ b/www/firefox/files/patch-libwebrtc-generated @@ -1,7 +1,7 @@ -commit 01127134cdeb090ebf87ffdf452c586ca3a3d838 +commit e0f8f58bed7cc4cd65c82ef0ea0e795ac6eeda65 Author: Christoph Moench-Tegeder <cmt@FreeBSD.org> - regenerate FreeBSD libwebrtc patch for Firefox 125 + regenerate FreeBSD libwebrtc patch for Firefox 126 diff --git third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build index b0671b5d4adb..642f867db664 100644 @@ -6510,10 +6510,10 @@ index 5656999ecb9a..93c7cd55cf2e 100644 - DEFINES["_GNU_SOURCE"] = True - Library("call_api_gn") -diff --git third_party/libwebrtc/api/callfactory_api_gn/moz.build third_party/libwebrtc/api/callfactory_api_gn/moz.build -index 157a34ec8e62..d9e58de1c43a 100644 ---- third_party/libwebrtc/api/callfactory_api_gn/moz.build -+++ third_party/libwebrtc/api/callfactory_api_gn/moz.build +diff --git third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build +index 4147b3868be0..1f0c3440b172 100644 +--- third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build ++++ third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build @@ -12,11 +12,21 @@ AllowCompilerWarnings() DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1" DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True @@ -6536,7 +6536,7 @@ index 157a34ec8e62..d9e58de1c43a 100644 FINAL_LIBRARY = "webrtc" -@@ -39,122 +49,17 @@ if not CONFIG["MOZ_DEBUG"]: +@@ -39,111 +49,17 @@ if not CONFIG["MOZ_DEBUG"]: if CONFIG["MOZ_DEBUG"] == "1": DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1" @@ -6584,10 +6584,6 @@ index 157a34ec8e62..d9e58de1c43a 100644 - DEFINES["__STDC_CONSTANT_MACROS"] = True - DEFINES["__STDC_FORMAT_MACROS"] = True - -- OS_LIBS += [ -- "rt" -- ] -- -if CONFIG["OS_TARGET"] == "OpenBSD": - - DEFINES["USE_GLIB"] = "1" @@ -6628,13 +6624,6 @@ index 157a34ec8e62..d9e58de1c43a 100644 - DEFINES["_WIN32_WINNT"] = "0x0A00" - DEFINES["_WINDOWS"] = True - DEFINES["__STD_C"] = True -- -- OS_LIBS += [ -- "crypt32", -- "iphlpapi", -- "secur32", -- "winmm" -- ] + DEFINES["_DEBUG"] = True if CONFIG["TARGET_CPU"] == "aarch64": @@ -6660,7 +6649,7 @@ index 157a34ec8e62..d9e58de1c43a 100644 if CONFIG["TARGET_CPU"] == "x86": -@@ -164,50 +69,8 @@ if CONFIG["TARGET_CPU"] == "x86_64": +@@ -153,50 +69,8 @@ if CONFIG["TARGET_CPU"] == "x86_64": DEFINES["WEBRTC_ENABLE_AVX2"] = True @@ -6711,11 +6700,11 @@ index 157a34ec8e62..d9e58de1c43a 100644 - - DEFINES["_GNU_SOURCE"] = True - - Library("callfactory_api_gn") -diff --git third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build -index 4147b3868be0..1f0c3440b172 100644 ---- third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build -+++ third_party/libwebrtc/api/crypto/frame_decryptor_interface_gn/moz.build + Library("frame_decryptor_interface_gn") +diff --git third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build +index 93034ef6e23e..2f5ff0067bee 100644 +--- third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build ++++ third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build @@ -12,11 +12,21 @@ AllowCompilerWarnings() DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1" DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True @@ -6902,11 +6891,11 @@ index 4147b3868be0..1f0c3440b172 100644 - - DEFINES["_GNU_SOURCE"] = True - - Library("frame_decryptor_interface_gn") -diff --git third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build -index 93034ef6e23e..2f5ff0067bee 100644 ---- third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build -+++ third_party/libwebrtc/api/crypto/frame_encryptor_interface_gn/moz.build + Library("frame_encryptor_interface_gn") +diff --git third_party/libwebrtc/api/crypto/options_gn/moz.build third_party/libwebrtc/api/crypto/options_gn/moz.build +index 9b5cca4f8b98..33542ced4242 100644 +--- third_party/libwebrtc/api/crypto/options_gn/moz.build ++++ third_party/libwebrtc/api/crypto/options_gn/moz.build @@ -12,11 +12,21 @@ AllowCompilerWarnings() DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1" DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True @@ -6929,7 +6918,7 @@ index 93034ef6e23e..2f5ff0067bee 100644 FINAL_LIBRARY = "webrtc" -@@ -39,111 +49,17 @@ if not CONFIG["MOZ_DEBUG"]: +@@ -43,174 +53,32 @@ if not CONFIG["MOZ_DEBUG"]: if CONFIG["MOZ_DEBUG"] == "1": DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1" @@ -6948,10 +6937,6 @@ index 93034ef6e23e..2f5ff0067bee 100644 - DEFINES["__STDC_CONSTANT_MACROS"] = True - DEFINES["__STDC_FORMAT_MACROS"] = True - -- OS_LIBS += [ -- "log" -- ] -- -if CONFIG["OS_TARGET"] == "Darwin": - - DEFINES["WEBRTC_MAC"] = True @@ -7026,6 +7011,10 @@ index 93034ef6e23e..2f5ff0067bee 100644 -if CONFIG["TARGET_CPU"] == "arm": - +- CXXFLAGS += [ +- "-mfpu=neon" +- ] +- - DEFINES["WEBRTC_ARCH_ARM"] = True - DEFINES["WEBRTC_ARCH_ARM_V7"] = True - DEFINES["WEBRTC_HAS_NEON"] = True @@ -7042,10 +7031,12 @@ index 93034ef6e23e..2f5ff0067bee 100644 if CONFIG["TARGET_CPU"] == "x86": -@@ -153,50 +69,8 @@ if CONFIG["TARGET_CPU"] == "x86_64": - - DEFINES["WEBRTC_ENABLE_AVX2"] = True - +- DEFINES["WEBRTC_ENABLE_AVX2"] = True +- +-if CONFIG["TARGET_CPU"] == "x86_64": +- +- DEFINES["WEBRTC_ENABLE_AVX2"] = True +- -if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android": - - DEFINES["_DEBUG"] = True @@ -7067,16 +7058,21 @@ index 93034ef6e23e..2f5ff0067bee 100644 - DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0" - -if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux": -+if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": - - DEFINES["USE_X11"] = "1" - +- +- DEFINES["USE_X11"] = "1" +- -if CONFIG["OS_TARGET"] == "Android" and CONFIG["TARGET_CPU"] == "arm": - - OS_LIBS += [ - "unwind" - ] - +-if CONFIG["OS_TARGET"] == "Android" and CONFIG["TARGET_CPU"] == "x86": +- + CXXFLAGS += [ + "-msse2" + ] + -if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": - - DEFINES["_GNU_SOURCE"] = True @@ -7086,18 +7082,27 @@ index 93034ef6e23e..2f5ff0067bee 100644 - DEFINES["_GNU_SOURCE"] = True - -if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": -- ++ DEFINES["WEBRTC_ENABLE_AVX2"] = True + +- CXXFLAGS += [ +- "-msse2" +- ] ++if CONFIG["TARGET_CPU"] == "x86_64": + - DEFINES["_GNU_SOURCE"] = True -- ++ DEFINES["WEBRTC_ENABLE_AVX2"] = True + -if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64": -- ++if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": + - DEFINES["_GNU_SOURCE"] = True -- - Library("frame_encryptor_interface_gn") -diff --git third_party/libwebrtc/api/crypto/options_gn/moz.build third_party/libwebrtc/api/crypto/options_gn/moz.build -index 9b5cca4f8b98..33542ced4242 100644 ---- third_party/libwebrtc/api/crypto/options_gn/moz.build -+++ third_party/libwebrtc/api/crypto/options_gn/moz.build ++ DEFINES["USE_X11"] = "1" + + Library("options_gn") +diff --git third_party/libwebrtc/api/environment/environment_factory_gn/moz.build third_party/libwebrtc/api/environment/environment_factory_gn/moz.build +index 77a2224baf94..5c7930031464 100644 +--- third_party/libwebrtc/api/environment/environment_factory_gn/moz.build ++++ third_party/libwebrtc/api/environment/environment_factory_gn/moz.build @@ -12,11 +12,21 @@ AllowCompilerWarnings() DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1" DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True @@ -7120,7 +7125,7 @@ index 9b5cca4f8b98..33542ced4242 100644 FINAL_LIBRARY = "webrtc" -@@ -43,174 +53,32 @@ if not CONFIG["MOZ_DEBUG"]: +@@ -43,189 +53,32 @@ if not CONFIG["MOZ_DEBUG"]: if CONFIG["MOZ_DEBUG"] == "1": DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1" @@ -7139,6 +7144,10 @@ index 9b5cca4f8b98..33542ced4242 100644 - DEFINES["__STDC_CONSTANT_MACROS"] = True - DEFINES["__STDC_FORMAT_MACROS"] = True - +- OS_LIBS += [ +- "log" +- ] +- -if CONFIG["OS_TARGET"] == "Darwin": - - DEFINES["WEBRTC_MAC"] = True @@ -7164,6 +7173,10 @@ index 9b5cca4f8b98..33542ced4242 100644 - DEFINES["__STDC_CONSTANT_MACROS"] = True - DEFINES["__STDC_FORMAT_MACROS"] = True - +- OS_LIBS += [ +- "rt" +- ] +- -if CONFIG["OS_TARGET"] == "OpenBSD": - - DEFINES["USE_GLIB"] = "1" @@ -7204,6 +7217,13 @@ index 9b5cca4f8b98..33542ced4242 100644 - DEFINES["_WIN32_WINNT"] = "0x0A00" - DEFINES["_WINDOWS"] = True - DEFINES["__STD_C"] = True +- +- OS_LIBS += [ +- "crypt32", +- "iphlpapi", +- "secur32", +- "winmm" +- ] + DEFINES["_DEBUG"] = True if CONFIG["TARGET_CPU"] == "aarch64": @@ -7300,7 +7320,7 @@ index 9b5cca4f8b98..33542ced4242 100644 - DEFINES["_GNU_SOURCE"] = True + DEFINES["USE_X11"] = "1" - Library("options_gn") + Library("environment_factory_gn") diff --git third_party/libwebrtc/api/environment/environment_gn/moz.build third_party/libwebrtc/api/environment/environment_gn/moz.build index e7105ff57383..b7d434e7f0e5 100644 --- third_party/libwebrtc/api/environment/environment_gn/moz.build @@ -13479,6 +13499,193 @@ index 1f52ba37d7d4..26728a141487 100644 - DEFINES["_GNU_SOURCE"] = True - Library("simulated_network_api_gn") +diff --git third_party/libwebrtc/api/task_queue/default_task_queue_factory_gn/moz.build third_party/libwebrtc/api/task_queue/default_task_queue_factory_gn/moz.build +index 0911b84473f5..2525ec25c7b0 100644 +--- third_party/libwebrtc/api/task_queue/default_task_queue_factory_gn/moz.build ++++ third_party/libwebrtc/api/task_queue/default_task_queue_factory_gn/moz.build +@@ -12,11 +12,21 @@ AllowCompilerWarnings() + DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1" + DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True + DEFINES["RTC_ENABLE_VP9"] = True ++DEFINES["USE_GLIB"] = "1" ++DEFINES["USE_OZONE"] = "1" ++DEFINES["WEBRTC_BSD"] = True ++DEFINES["WEBRTC_ENABLE_LIBEVENT"] = True + DEFINES["WEBRTC_ENABLE_PROTOBUF"] = "0" + DEFINES["WEBRTC_LIBRARY_IMPL"] = True + DEFINES["WEBRTC_MOZILLA_BUILD"] = True + DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0" ++DEFINES["WEBRTC_POSIX"] = True + DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0" ++DEFINES["_FILE_OFFSET_BITS"] = "64" ++DEFINES["_LARGEFILE64_SOURCE"] = True ++DEFINES["_LARGEFILE_SOURCE"] = True ++DEFINES["__STDC_CONSTANT_MACROS"] = True ++DEFINES["__STDC_FORMAT_MACROS"] = True + + FINAL_LIBRARY = "webrtc" + +@@ -39,107 +49,17 @@ if not CONFIG["MOZ_DEBUG"]: + if CONFIG["MOZ_DEBUG"] == "1": + + DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1" +- +-if CONFIG["OS_TARGET"] == "Android": +- +- DEFINES["ANDROID"] = True +- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1" +- DEFINES["HAVE_SYS_UIO_H"] = True +- DEFINES["WEBRTC_ANDROID"] = True +- DEFINES["WEBRTC_ANDROID_OPENSLES"] = True +- DEFINES["WEBRTC_ENABLE_LIBEVENT"] = True +- DEFINES["WEBRTC_LINUX"] = True +- DEFINES["WEBRTC_POSIX"] = True +- DEFINES["_GNU_SOURCE"] = True +- DEFINES["__STDC_CONSTANT_MACROS"] = True +- DEFINES["__STDC_FORMAT_MACROS"] = True +- +-if CONFIG["OS_TARGET"] == "Darwin": +- +- DEFINES["WEBRTC_MAC"] = True +- DEFINES["WEBRTC_POSIX"] = True +- DEFINES["_LIBCPP_HAS_NO_ALIGNED_ALLOCATION"] = True +- DEFINES["__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES"] = "0" +- DEFINES["__STDC_CONSTANT_MACROS"] = True +- DEFINES["__STDC_FORMAT_MACROS"] = True +- +-if CONFIG["OS_TARGET"] == "Linux": +- +- DEFINES["USE_AURA"] = "1" +- DEFINES["USE_GLIB"] = "1" +- DEFINES["USE_NSS_CERTS"] = "1" +- DEFINES["USE_OZONE"] = "1" +- DEFINES["USE_UDEV"] = True +- DEFINES["WEBRTC_ENABLE_LIBEVENT"] = True +- DEFINES["WEBRTC_LINUX"] = True +- DEFINES["WEBRTC_POSIX"] = True +- DEFINES["_FILE_OFFSET_BITS"] = "64" +- DEFINES["_LARGEFILE64_SOURCE"] = True +- DEFINES["_LARGEFILE_SOURCE"] = True +- DEFINES["__STDC_CONSTANT_MACROS"] = True +- DEFINES["__STDC_FORMAT_MACROS"] = True +- +-if CONFIG["OS_TARGET"] == "OpenBSD": +- +- DEFINES["USE_GLIB"] = "1" +- DEFINES["USE_OZONE"] = "1" +- DEFINES["USE_X11"] = "1" +- DEFINES["WEBRTC_BSD"] = True +- DEFINES["WEBRTC_ENABLE_LIBEVENT"] = True +- DEFINES["WEBRTC_POSIX"] = True +- DEFINES["_FILE_OFFSET_BITS"] = "64" +- DEFINES["_LARGEFILE64_SOURCE"] = True +- DEFINES["_LARGEFILE_SOURCE"] = True +- DEFINES["__STDC_CONSTANT_MACROS"] = True +- DEFINES["__STDC_FORMAT_MACROS"] = True +- +-if CONFIG["OS_TARGET"] == "WINNT": +- +- DEFINES["CERT_CHAIN_PARA_HAS_EXTRA_FIELDS"] = True +- DEFINES["NOMINMAX"] = True +- DEFINES["NTDDI_VERSION"] = "0x0A000000" +- DEFINES["PSAPI_VERSION"] = "2" +- DEFINES["RTC_ENABLE_WIN_WGC"] = True +- DEFINES["UNICODE"] = True +- DEFINES["USE_AURA"] = "1" +- DEFINES["WEBRTC_WIN"] = True +- DEFINES["WIN32"] = True +- DEFINES["WIN32_LEAN_AND_MEAN"] = True +- DEFINES["WINAPI_FAMILY"] = "WINAPI_FAMILY_DESKTOP_APP" +- DEFINES["WINVER"] = "0x0A00" +- DEFINES["_ATL_NO_OPENGL"] = True +- DEFINES["_CRT_RAND_S"] = True +- DEFINES["_CRT_SECURE_NO_DEPRECATE"] = True +- DEFINES["_ENABLE_EXTENDED_ALIGNED_STORAGE"] = True +- DEFINES["_HAS_EXCEPTIONS"] = "0" +- DEFINES["_HAS_NODISCARD"] = True +- DEFINES["_SCL_SECURE_NO_DEPRECATE"] = True +- DEFINES["_SECURE_ATL"] = True +- DEFINES["_UNICODE"] = True +- DEFINES["_WIN32_WINNT"] = "0x0A00" +- DEFINES["_WINDOWS"] = True +- DEFINES["__STD_C"] = True ++ DEFINES["_DEBUG"] = True + + if CONFIG["TARGET_CPU"] == "aarch64": + + DEFINES["WEBRTC_ARCH_ARM64"] = True + DEFINES["WEBRTC_HAS_NEON"] = True + +-if CONFIG["TARGET_CPU"] == "arm": +- +- DEFINES["WEBRTC_ARCH_ARM"] = True +- DEFINES["WEBRTC_ARCH_ARM_V7"] = True +- DEFINES["WEBRTC_HAS_NEON"] = True +- + if CONFIG["TARGET_CPU"] == "mips32": + + DEFINES["MIPS32_LE"] = True + DEFINES["MIPS_FPU_LE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +-if CONFIG["TARGET_CPU"] == "mips64": +- +- DEFINES["_GNU_SOURCE"] = True + + if CONFIG["TARGET_CPU"] == "x86": + +@@ -149,50 +69,8 @@ if CONFIG["TARGET_CPU"] == "x86_64": + + DEFINES["WEBRTC_ENABLE_AVX2"] = True + +-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android": +- +- DEFINES["_DEBUG"] = True +- +-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin": +- +- DEFINES["_DEBUG"] = True +- +-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux": +- +- DEFINES["_DEBUG"] = True +- +-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "OpenBSD": +- +- DEFINES["_DEBUG"] = True +- +-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "WINNT": +- +- DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0" +- +-if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux": ++if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD": + + DEFINES["USE_X11"] = "1" + +-if CONFIG["OS_TARGET"] == "Android" and CONFIG["TARGET_CPU"] == "arm": +- +- OS_LIBS += [ +- "unwind" +- ] +- +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": +- +- DEFINES["_GNU_SOURCE"] = True +- +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "arm": +- +- DEFINES["_GNU_SOURCE"] = True +- +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": +- +- DEFINES["_GNU_SOURCE"] = True +- +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64": +- +- DEFINES["_GNU_SOURCE"] = True +- + Library("default_task_queue_factory_gn") diff --git third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build index 43229b22ed5c..e8094ed7f16d 100644 --- third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build @@ -65853,10 +66060,10 @@ index 883e5c70b24b..caec155ca861 100644 Library("webrtc_vp9_helpers_gn") diff --git third_party/libwebrtc/moz.build third_party/libwebrtc/moz.build -index ad1adce75739..55860774ec2c 100644 +index 59472bdc9b56..45b99de39516 100644 --- third_party/libwebrtc/moz.build +++ third_party/libwebrtc/moz.build -@@ -265,6 +265,8 @@ DIRS += [ +@@ -266,6 +266,8 @@ DIRS += [ "/third_party/libwebrtc/modules/congestion_controller/goog_cc/send_side_bwe_gn", "/third_party/libwebrtc/modules/congestion_controller/rtp/control_handler_gn", "/third_party/libwebrtc/modules/congestion_controller/rtp/transport_feedback_gn", @@ -65865,7 +66072,7 @@ index ad1adce75739..55860774ec2c 100644 "/third_party/libwebrtc/modules/module_api_gn", "/third_party/libwebrtc/modules/module_api_public_gn", "/third_party/libwebrtc/modules/module_fec_api_gn", -@@ -464,102 +466,11 @@ DIRS += [ +@@ -465,102 +467,11 @@ DIRS += [ "/third_party/libwebrtc/webrtc_gn" ] @@ -65969,7 +66176,7 @@ index ad1adce75739..55860774ec2c 100644 "/third_party/libwebrtc/modules/portal/portal_gn", "/third_party/libwebrtc/third_party/drm/drm_gn", "/third_party/libwebrtc/third_party/gbm/gbm_gn", -@@ -567,26 +478,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": +@@ -568,26 +479,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": "/third_party/libwebrtc/third_party/pipewire/pipewire_gn" ] @@ -65997,7 +66204,7 @@ index ad1adce75739..55860774ec2c 100644 "/third_party/libwebrtc/modules/portal/portal_gn", "/third_party/libwebrtc/third_party/drm/drm_gn", "/third_party/libwebrtc/third_party/gbm/gbm_gn", -@@ -594,11 +488,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips32": +@@ -595,11 +489,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips32": "/third_party/libwebrtc/third_party/pipewire/pipewire_gn" ] @@ -66010,7 +66217,7 @@ index ad1adce75739..55860774ec2c 100644 "/third_party/libwebrtc/modules/portal/portal_gn", "/third_party/libwebrtc/third_party/drm/drm_gn", "/third_party/libwebrtc/third_party/gbm/gbm_gn", -@@ -606,7 +498,7 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips64": +@@ -607,7 +499,7 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips64": "/third_party/libwebrtc/third_party/pipewire/pipewire_gn" ] @@ -66019,7 +66226,7 @@ index ad1adce75739..55860774ec2c 100644 DIRS += [ "/third_party/libwebrtc/common_audio/common_audio_avx2_gn", -@@ -614,8 +506,6 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": +@@ -615,8 +507,6 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": "/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn", "/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn", "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn", @@ -66028,7 +66235,7 @@ index ad1adce75739..55860774ec2c 100644 "/third_party/libwebrtc/modules/portal/portal_gn", "/third_party/libwebrtc/third_party/drm/drm_gn", "/third_party/libwebrtc/third_party/gbm/gbm_gn", -@@ -623,7 +513,7 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": +@@ -624,7 +514,7 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": "/third_party/libwebrtc/third_party/pipewire/pipewire_gn" ] @@ -66037,7 +66244,7 @@ index ad1adce75739..55860774ec2c 100644 DIRS += [ "/third_party/libwebrtc/common_audio/common_audio_avx2_gn", -@@ -631,69 +521,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64": +@@ -632,69 +522,9 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64": "/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn", "/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn", "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn", @@ -95839,7 +96046,7 @@ index e38fabc4cc62..0d30b9bd4787 100644 Library("unique_timestamp_counter_gn") diff --git third_party/libwebrtc/video/video_gn/moz.build third_party/libwebrtc/video/video_gn/moz.build -index 5e3d75d621df..a7091e452af6 100644 +index 1106f274c25d..fb1f9c3097d2 100644 --- third_party/libwebrtc/video/video_gn/moz.build +++ third_party/libwebrtc/video/video_gn/moz.build @@ -12,11 +12,21 @@ AllowCompilerWarnings() @@ -95864,7 +96071,7 @@ index 5e3d75d621df..a7091e452af6 100644 FINAL_LIBRARY = "webrtc" -@@ -63,190 +73,32 @@ if not CONFIG["MOZ_DEBUG"]: +@@ -62,190 +72,32 @@ if not CONFIG["MOZ_DEBUG"]: if CONFIG["MOZ_DEBUG"] == "1": DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1" diff --git a/www/firefox/files/patch-rust-1.78.0 b/www/firefox/files/patch-rust-1.78.0 new file mode 100644 index 000000000000..ebad1becefa5 --- /dev/null +++ b/www/firefox/files/patch-rust-1.78.0 @@ -0,0 +1,3562 @@ + +# HG changeset patch +# User Henri Sivonen <hsivonen@hsivonen.fi> +# Date 1714462184 0 +# Node ID 1db2ef126a6a8555dbf50345e16492c977b42e92 +# Parent a545e84b3674c4878f2e618b7bce23058f2ac690 +Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers + +Differential Revision: https://phabricator.services.mozilla.com/D207167 + +diff --git a/.cargo/config.toml.in b/.cargo/config.toml.in +--- .cargo/config.toml.in ++++ .cargo/config.toml.in +@@ -35,16 +35,21 @@ git = "https://github.com/gfx-rs/wgpu" + rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" + replace-with = "vendored-sources" + + [source."git+https://github.com/glandium/mio?rev=9a2ef335c366044ffe73b1c4acabe50a1daefe05"] + git = "https://github.com/glandium/mio" + rev = "9a2ef335c366044ffe73b1c4acabe50a1daefe05" + replace-with = "vendored-sources" + ++[source."git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80"] ++git = "https://github.com/hsivonen/any_all_workaround" ++rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++replace-with = "vendored-sources" ++ + [source."git+https://github.com/hsivonen/chardetng?rev=3484d3e3ebdc8931493aa5df4d7ee9360a90e76b"] + git = "https://github.com/hsivonen/chardetng" + rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" + replace-with = "vendored-sources" + + [source."git+https://github.com/hsivonen/chardetng_c?rev=ed8a4c6f900a90d4dbc1d64b856e61490a1c3570"] + git = "https://github.com/hsivonen/chardetng_c" + rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -87,16 +87,25 @@ dependencies = [ + + [[package]] + name = "anstyle" + version = "1.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b84bf0a05bbb2a83e5eb6fa36bb6e87baa08193c35ff52bbf6b38d8af2890e46" + + [[package]] ++name = "any_all_workaround" ++version = "0.1.0" ++source = "git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80#7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "version_check", ++] ++ ++[[package]] + name = "anyhow" + version = "1.0.69" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + + [[package]] + name = "app_services_logger" + version = "0.1.0" +@@ -1571,22 +1580,22 @@ dependencies = [ + "encoding_rs", + "nserror", + "nsstring", + "xmldecl", + ] + + [[package]] + name = "encoding_rs" +-version = "0.8.33" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +-dependencies = [ ++version = "0.8.34" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" ++dependencies = [ ++ "any_all_workaround", + "cfg-if 1.0.0", +- "packed_simd", + ] + + [[package]] + name = "enum-map" + version = "2.7.3" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" + dependencies = [ +@@ -4321,26 +4330,16 @@ checksum = "8d91edf4fbb970279443471345a4 + name = "oxilangtag-ffi" + version = "0.1.0" + dependencies = [ + "nsstring", + "oxilangtag", + ] + + [[package]] +-name = "packed_simd" +-version = "0.3.9" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1f9f08af0c877571712e2e3e686ad79efad9657dbf0f7c3c8ba943ff6c38932d" +-dependencies = [ +- "cfg-if 1.0.0", +- "num-traits", +-] +- +-[[package]] + name = "parking_lot" + version = "0.12.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" + dependencies = [ + "lock_api", + "parking_lot_core", + ] +diff --git a/Cargo.toml b/Cargo.toml +--- Cargo.toml ++++ Cargo.toml +@@ -188,16 +188,17 @@ moz_asserts = { path = "mozglue/static/r + rure = { path = "third_party/rust/rure" } + + # To-be-published changes. + cssparser = { git = "https://github.com/servo/rust-cssparser", rev = "aaa966d9d6ae70c4b8a62bb5e3a14c068bb7dff0" } + cssparser-macros = { git = "https://github.com/servo/rust-cssparser", rev = "aaa966d9d6ae70c4b8a62bb5e3a14c068bb7dff0" } + unicode-bidi = { git = "https://github.com/servo/unicode-bidi", rev = "ca612daf1c08c53abe07327cb3e6ef6e0a760f0c" } + + # Other overrides ++any_all_workaround = { git = "https://github.com/hsivonen/any_all_workaround", rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" } + chardetng = { git = "https://github.com/hsivonen/chardetng", rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" } + chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" } + coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev = "fc68464b5445caf111e41f643a2e69ccce0b4f83" } + cose = { git = "https://github.com/franziskuskiefer/cose-rust", rev = "43c22248d136c8b38fe42ea709d08da6355cf04b" } + firefox-on-glean = { path = "toolkit/components/glean/api" } + icu_capi = { path = "intl/icu_capi" } + icu_segmenter_data = { path = "intl/icu_segmenter_data" } + libudev-sys = { path = "dom/webauthn/libudev-sys" } +diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk +--- config/makefiles/rust.mk ++++ config/makefiles/rust.mk +@@ -260,17 +260,17 @@ export COREAUDIO_SDK_PATH=$(IPHONEOS_SDK + export IPHONEOS_SDK_DIR + PATH := $(topsrcdir)/build/macosx:$(PATH) + endif + endif + + ifndef RUSTC_BOOTSTRAP + RUSTC_BOOTSTRAP := mozglue_static,qcms + ifdef MOZ_RUST_SIMD +-RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,packed_simd ++RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,any_all_workaround + endif + export RUSTC_BOOTSTRAP + endif + + target_rust_ltoable := force-cargo-library-build $(ADD_RUST_LTOABLE) + target_rust_nonltoable := force-cargo-test-run force-cargo-program-build + + ifdef MOZ_PGO_RUST +diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml +--- supply-chain/audits.toml ++++ supply-chain/audits.toml +@@ -596,16 +596,29 @@ who = "Mike Hommey <mh+mozilla@glandium. + criteria = "safe-to-deploy" + delta = "0.1.2 -> 0.1.4" + + [[audits.android_system_properties]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "0.1.4 -> 0.1.5" + ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++version = "0.1.0" ++notes = "The little code that is in this crate I reviewed and modified from packed_simd (which has previously been vendored in full instead of just this small part)." ++ ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++delta = "0.1.0 -> 0.1.0@git:7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++importable = false ++notes = "This is a trivial workaround copied from elsewhere in m-c, specifically qcms." ++ + [[audits.anyhow]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "1.0.57 -> 1.0.61" + + [[audits.anyhow]] + who = "Bobby Holley <bobbyholley@gmail.com>" + criteria = "safe-to-deploy" +diff --git a/supply-chain/config.toml b/supply-chain/config.toml +--- supply-chain/config.toml ++++ supply-chain/config.toml +@@ -14,16 +14,20 @@ url = "https://raw.githubusercontent.com + url = "https://raw.githubusercontent.com/google/supply-chain/main/audits.toml" + + [imports.isrg] + url = "https://raw.githubusercontent.com/divviup/libprio-rs/main/supply-chain/audits.toml" + + [imports.mozilla] + url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" + ++[policy.any_all_workaround] ++audit-as-crates-io = true ++notes = "This is the upstream code plus the ARM intrinsics workaround from qcms, see bug 1882209." ++ + [policy.autocfg] + audit-as-crates-io = true + notes = "This is the upstream code plus a few local fixes, see bug 1685697." + + [policy.chardetng] + audit-as-crates-io = true + notes = "This is a crate Henri wrote which is also published. We should probably update Firefox to tip and certify that." + +diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock +--- supply-chain/imports.lock ++++ supply-chain/imports.lock +@@ -192,16 +192,23 @@ user-name = "David Tolnay" + + [[publisher.encoding_rs]] + version = "0.8.33" + when = "2023-08-23" + user-id = 4484 + user-login = "hsivonen" + user-name = "Henri Sivonen" + ++[[publisher.encoding_rs]] ++version = "0.8.34" ++when = "2024-04-10" ++user-id = 4484 ++user-login = "hsivonen" ++user-name = "Henri Sivonen" ++ + [[publisher.errno]] + version = "0.3.8" + when = "2023-11-28" + user-id = 6825 + user-login = "sunfishcode" + user-name = "Dan Gohman" + + [[publisher.etagere]] +diff --git a/third_party/rust/any_all_workaround/.cargo-checksum.json b/third_party/rust/any_all_workaround/.cargo-checksum.json +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/.cargo-checksum.json +@@ -0,0 +1,1 @@ ++{"files":{"Cargo.toml":"f8c127449dc9432d404c21c99833e4617ab88a797445af249a7fe3c989985d6d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","LICENSE-MIT-QCMS":"36d847ae882f6574ebc72f56a4f354e4f104fde4a584373496482e97d52d31bc","README.md":"4c617b8ced3a27b7edecf0e5e41ed451c04e88dab529e7a35fccc4e1551efbd7","build.rs":"56b29ab6da3e49075bfd0a7b690267c8016298bf0d332e2e68bbaf19decbbf71","src/lib.rs":"7118106690b9d25c5d0a3e2079feb83d76f1d434d0da36b9d0351806d27c850d"},"package":null} +\ No newline at end of file +diff --git a/third_party/rust/any_all_workaround/Cargo.toml b/third_party/rust/any_all_workaround/Cargo.toml +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/Cargo.toml +@@ -0,0 +1,28 @@ ++# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO ++# ++# When uploading crates to the registry Cargo will automatically ++# "normalize" Cargo.toml files for maximal compatibility ++# with all versions of Cargo and also rewrite `path` dependencies ++# to registry (e.g., crates.io) dependencies. ++# ++# If you are reading this file be aware that the original Cargo.toml ++# will likely look very different (and much more reasonable). ++# See Cargo.toml.orig for the original contents. ++ ++[package] ++edition = "2021" ++name = "any_all_workaround" ++version = "0.1.0" ++authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] ++description = "Workaround for bad LLVM codegen for boolean reductions on 32-bit ARM" ++homepage = "https://docs.rs/any_all_workaround/" ++documentation = "https://docs.rs/any_all_workaround/" ++readme = "README.md" ++license = "MIT OR Apache-2.0" ++repository = "https://github.com/hsivonen/any_all_workaround" ++ ++[dependencies] ++cfg-if = "1.0" ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/third_party/rust/packed_simd/LICENSE-APACHE b/third_party/rust/any_all_workaround/LICENSE-APACHE +rename from third_party/rust/packed_simd/LICENSE-APACHE +rename to third_party/rust/any_all_workaround/LICENSE-APACHE +diff --git a/third_party/rust/packed_simd/LICENSE-MIT b/third_party/rust/any_all_workaround/LICENSE-MIT +rename from third_party/rust/packed_simd/LICENSE-MIT +rename to third_party/rust/any_all_workaround/LICENSE-MIT +diff --git a/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS b/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +@@ -0,0 +1,21 @@ ++qcms ++Copyright (C) 2009-2024 Mozilla Corporation ++Copyright (C) 1998-2007 Marti Maria ++ ++Permission is hereby granted, free of charge, to any person obtaining ++a copy of this software and associated documentation files (the "Software"), ++to deal in the Software without restriction, including without limitation ++the rights to use, copy, modify, merge, publish, distribute, sublicense, ++and/or sell copies of the Software, and to permit persons to whom the Software ++is furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in ++all copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ++THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +diff --git a/third_party/rust/any_all_workaround/README.md b/third_party/rust/any_all_workaround/README.md +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/README.md +@@ -0,0 +1,13 @@ ++# any_all_workaround ++ ++This is a workaround for bad codegen ([Rust bug](https://github.com/rust-lang/portable-simd/issues/146), [LLVM bug](https://github.com/llvm/llvm-project/issues/50466)) for the `any()` and `all()` reductions for NEON-backed SIMD vectors on 32-bit ARM. On other platforms these delegate to `any()` and `all()` in `core::simd`. ++ ++The plan is to abandon this crate once the LLVM bug is fixed or `core::simd` works around the LLVM bug. ++ ++The code is forked from the [`packed_simd` crate](https://raw.githubusercontent.com/hsivonen/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs). ++ ++This crate requires Nightly Rust as it depends on the `portable_simd` feature. ++ ++# License ++ ++`MIT OR Apache-2.0`, since that's how `packed_simd` is licensed. (The ARM intrinsics Rust version workaround is from qcms, see LICENSE-MIT-QCMS.) +diff --git a/third_party/rust/any_all_workaround/build.rs b/third_party/rust/any_all_workaround/build.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/third_party/rust/any_all_workaround/src/lib.rs b/third_party/rust/any_all_workaround/src/lib.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/src/lib.rs +@@ -0,0 +1,110 @@ ++// This code began as a fork of ++// https://raw.githubusercontent.com/rust-lang/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs ++// which didn't have a license header on the file, but Cargo.toml said "MIT OR Apache-2.0". ++// See LICENSE-MIT and LICENSE-APACHE. ++ ++#![no_std] ++#![feature(portable_simd)] ++#![cfg_attr( ++ all( ++ stdsimd_split, ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdarch_arm_neon_intrinsics) ++)] ++#![cfg_attr( ++ all( ++ not(stdsimd_split), ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdsimd) ++)] ++ ++use cfg_if::cfg_if; ++use core::simd::mask16x8; ++use core::simd::mask32x4; ++use core::simd::mask8x16; ++ ++cfg_if! { ++ if #[cfg(all(target_arch = "arm", target_endian = "little", target_feature = "neon", target_feature = "v7"))] { ++ use core::simd::mask8x8; ++ use core::simd::mask16x4; ++ use core::simd::mask32x2; ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline] ++ pub fn $all(s: $id) -> bool { ++ use core::arch::arm::$vpmin; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmin(transmute(halves.0), transmute(halves.1))); ++ h.all() ++ } ++ } ++ #[inline] ++ pub fn $any(s: $id) -> bool { ++ use core::arch::arm::$vpmax; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmax(transmute(halves.0), transmute(halves.1))); ++ h.any() ++ } ++ } ++ } ++ } ++ } else { ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline(always)] ++ pub fn $all(s: $id) -> bool { ++ s.all() ++ } ++ #[inline(always)] ++ pub fn $any(s: $id) -> bool { ++ s.any() ++ } ++ } ++ } ++ } ++} ++ ++arm_128_v7_neon_impl!( ++ all_mask8x16, ++ any_mask8x16, ++ mask8x16, ++ mask8x8, ++ vpmin_u8, ++ vpmax_u8 ++); ++arm_128_v7_neon_impl!( ++ all_mask16x8, ++ any_mask16x8, ++ mask16x8, ++ mask16x4, ++ vpmin_u16, ++ vpmax_u16 ++); ++arm_128_v7_neon_impl!( ++ all_mask32x4, ++ any_mask32x4, ++ mask32x4, ++ mask32x2, ++ vpmin_u32, ++ vpmax_u32 ++); +diff --git a/third_party/rust/encoding_rs/.cargo-checksum.json b/third_party/rust/encoding_rs/.cargo-checksum.json +--- third_party/rust/encoding_rs/.cargo-checksum.json ++++ third_party/rust/encoding_rs/.cargo-checksum.json +@@ -1,1 +1,1 @@ +-{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"42fa83322aa9fd6723b77d35d0cacb92cbb6e7f573ce11c55f5225292866f8f4","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"d938e8ab0b9ab67e74a1a4f48f23fdce956d0ad3a3f6147ae7612a92763c88d5","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"c44c002641adb5ebc4368707a8cc0a076d2f33e6a5c27b1b69988eb515f5653d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"cc83dc0754751d67f5688a65c5e0191cba02f6bacce81a0813a243cba55eef7a","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"1dc07b818e45846b16ddcaf0de46c8862dd7df8099123ec38b95c3f8ad9c91ec","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"0bf34103e0ad1b842a13a082dee2b920b05cf4fb0f145c9ee7f608f4cb4a544f","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"2612aba86e1d201096d7e47a859bc3444f85934cc82d8adc6d39a4304d9eecfc","src/single_byte.rs":"3c9e9c1f946ae622c725ba9421240c1faa9a05e95fa10dd4642a25cb276a1edc","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"c9c010730dfb9f141d4fed19350c08a21af240913a54bb64f5ca89ff93b6b7d1"},"package":"7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"} +\ No newline at end of file ++{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"22a4d210c92dae9f32c6944ef340ee8fdd027f99c081577e8907123e2a93383e","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"1d08aefcb92afa81b18154049c9abbcad4540a23f7172e9f9bbed5af33f1a087","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"588e38b01e666d5e7462617ea7e90a108d608dec9e016f3d273ac0744af2e05d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"b08cef1f5785bb6a4822f2e844c6df1b046b737b7a075e4593eaa8c4208e9fe2","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"834f44b670ec48ee82c0e12223d1567313fdd9f88bca5f4b117c82c1828f559f","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"948571137d3b151df8db4fb2c733e74ae595d055cdf0ad83abcab9341d6adabe","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"05c6e77af74bfe73cd39a752067c11425d6b46e5da419910f54bf75a5c02a984","src/single_byte.rs":"3ad87116fb339434a4b58e8f2b15485f2b66b9f7814d708f16194ed08f6d6ccf","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"9456ca46168ef86c98399a2536f577ef7be3cdde90c0c51392d8ac48519d3fae"},"package":"b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"} +\ No newline at end of file +diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml +--- third_party/rust/encoding_rs/Cargo.toml ++++ third_party/rust/encoding_rs/Cargo.toml +@@ -6,18 +6,19 @@ + # to registry (e.g., crates.io) dependencies. + # + # If you are reading this file be aware that the original Cargo.toml + # will likely look very different (and much more reasonable). + # See Cargo.toml.orig for the original contents. + + [package] + edition = "2018" ++rust-version = "1.36" + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] + description = "A Gecko-oriented implementation of the Encoding Standard" + homepage = "https://docs.rs/encoding_rs/" + documentation = "https://docs.rs/encoding_rs/" + readme = "README.md" + keywords = [ + "encoding", + "web", +@@ -31,23 +32,23 @@ categories = [ + "internationalization", + ] + license = "(Apache-2.0 OR MIT) AND BSD-3-Clause" + repository = "https://github.com/hsivonen/encoding_rs" + + [profile.release] + lto = true + ++[dependencies.any_all_workaround] ++version = "0.1.0" ++optional = true ++ + [dependencies.cfg-if] + version = "1.0" + +-[dependencies.packed_simd] +-version = "0.3.9" +-optional = true +- + [dependencies.serde] + version = "1.0" + optional = true + + [dev-dependencies.bincode] + version = "1.0" + + [dev-dependencies.serde_derive] +@@ -69,15 +70,9 @@ fast-legacy-encode = [ + "fast-hanja-encode", + "fast-kanji-encode", + "fast-gb-hanzi-encode", + "fast-big5-hanzi-encode", + ] + less-slow-big5-hanzi-encode = [] + less-slow-gb-hanzi-encode = [] + less-slow-kanji-encode = [] +-simd-accel = [ +- "packed_simd", +- "packed_simd/into_bits", +-] +- +-[badges.travis-ci] +-repository = "hsivonen/encoding_rs" ++simd-accel = ["any_all_workaround"] +diff --git a/third_party/rust/encoding_rs/README.md b/third_party/rust/encoding_rs/README.md +--- third_party/rust/encoding_rs/README.md ++++ third_party/rust/encoding_rs/README.md +@@ -162,50 +162,36 @@ wrappers. + * [C++](https://github.com/hsivonen/recode_cpp) + + ## Optional features + + There are currently these optional cargo features: + + ### `simd-accel` + +-Enables SIMD acceleration using the nightly-dependent `packed_simd` crate. ++Enables SIMD acceleration using the nightly-dependent `portable_simd` standard ++library feature. + + This is an opt-in feature, because enabling this feature _opts out_ of Rust's + guarantees of future compilers compiling old code (aka. "stability story"). + + Currently, this has not been tested to be an improvement except for these +-targets: ++targets and enabling the `simd-accel` feature is expected to break the build ++on other targets: + + * x86_64 + * i686 + * aarch64 + * thumbv7neon + + If you use nightly Rust, you use targets whose first component is one of the + above, and you are prepared _to have to revise your configuration when updating + Rust_, you should enable this feature. Otherwise, please _do not_ enable this + feature. + +-_Note!_ If you are compiling for a target that does not have 128-bit SIMD +-enabled as part of the target definition and you are enabling 128-bit SIMD +-using `-C target_feature`, you need to enable the `core_arch` Cargo feature +-for `packed_simd` to compile a crates.io snapshot of `core_arch` instead of +-using the standard-library copy of `core::arch`, because the `core::arch` +-module of the pre-compiled standard library has been compiled with the +-assumption that the CPU doesn't have 128-bit SIMD. At present this applies +-mainly to 32-bit ARM targets whose first component does not include the +-substring `neon`. +- +-The encoding_rs side of things has not been properly set up for POWER, +-PowerPC, MIPS, etc., SIMD at this time, so even if you were to follow +-the advice from the previous paragraph, you probably shouldn't use +-the `simd-accel` option on the less mainstream architectures at this +-time. +- + Used by Firefox. + + ### `serde` + + Enables support for serializing and deserializing `&'static Encoding`-typed + struct fields using [Serde][1]. + + [1]: https://serde.rs/ +@@ -376,18 +362,19 @@ It is a goal to support the latest stabl + the version of Rust that's used for Firefox Nightly. + + At this time, there is no firm commitment to support a version older than + what's required by Firefox, and there is no commitment to treat MSRV changes + as semver-breaking, because this crate depends on `cfg-if`, which doesn't + appear to treat MSRV changes as semver-breaking, so it would be useless for + this crate to treat MSRV changes as semver-breaking. + +-As of 2021-02-04, MSRV appears to be Rust 1.36.0 for using the crate and ++As of 2024-04-04, MSRV appears to be Rust 1.36.0 for using the crate and + 1.42.0 for doc tests to pass without errors about the global allocator. ++With the `simd-accel` feature, the MSRV is even higher. + + ## Compatibility with rust-encoding + + A compatibility layer that implements the rust-encoding API on top of + encoding_rs is + [provided as a separate crate](https://github.com/hsivonen/encoding_rs_compat) + (cannot be uploaded to crates.io). The compatibility layer was originally + written with the assuption that Firefox would need it, but it is not currently +@@ -441,20 +428,27 @@ To regenerate the generated code: + - [x] Implement the rust-encoding API in terms of encoding_rs. + - [x] Add SIMD acceleration for Aarch64. + - [x] Investigate the use of NEON on 32-bit ARM. + - [ ] ~Investigate Bj旦rn H旦hrmann's lookup table acceleration for UTF-8 as + adapted to Rust in rust-encoding.~ + - [x] Add actually fast CJK encode options. + - [ ] ~Investigate [Bob Steagall's lookup table acceleration for UTF-8](https://github.com/BobSteagall/CppNow2018/blob/master/FastConversionFromUTF-8/Fast%20Conversion%20From%20UTF-8%20with%20C%2B%2B%2C%20DFAs%2C%20and%20SSE%20Intrinsics%20-%20Bob%20Steagall%20-%20C%2B%2BNow%202018.pdf).~ + - [x] Provide a build mode that works without `alloc` (with lesser API surface). +-- [ ] Migrate to `std::simd` once it is stable and declare 1.0. ++- [x] Migrate to `std::simd` ~once it is stable and declare 1.0.~ ++- [ ] Migrate `unsafe` slice access by larger types than `u8`/`u16` to `align_to`. + + ## Release Notes + ++### 0.8.34 ++ ++* Use the `portable_simd` nightly feature of the standard library instead of the `packed_simd` crate. Only affects the `simd-accel` optional nightly feature. ++* Internal documentation improvements and minor code improvements around `unsafe`. ++* Added `rust-version` to `Cargo.toml`. ++ + ### 0.8.33 + + * Use `packed_simd` instead of `packed_simd_2` again now that updates are back under the `packed_simd` name. Only affects the `simd-accel` optional nightly feature. + + ### 0.8.32 + + * Removed `build.rs`. (This removal should resolve false positives reported by some antivirus products. This may break some build configurations that have opted out of Rust's guarantees against future build breakage.) + * Internal change to what API is used for reinterpreting the lane configuration of SIMD vectors. +diff --git a/third_party/rust/encoding_rs/src/ascii.rs b/third_party/rust/encoding_rs/src/ascii.rs +--- third_party/rust/encoding_rs/src/ascii.rs ++++ third_party/rust/encoding_rs/src/ascii.rs +@@ -46,71 +46,87 @@ cfg_if! { + #[allow(dead_code)] + #[inline(always)] + fn likely(b: bool) -> bool { + b + } + } + } + ++// Safety invariants for masks: data & mask = 0 for valid ASCII or basic latin utf-16 ++ + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const ASCII_MASK: usize = 0x8080_8080_8080_8080u64 as usize; + + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const BASIC_LATIN_MASK: usize = 0xFF80_FF80_FF80_FF80u64 as usize; + + #[allow(unused_macros)] + macro_rules! ascii_naive { + ($name:ident, $src_unit:ty, $dst_unit:ty) => { ++ /// Safety: src and dst must have len_unit elements and be aligned ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + // Yes, manually omitting the bound check here matters + // a lot for perf. + for i in 0..len { ++ // Safety: len invariant used here + let code_unit = *(src.add(i)); ++ // Safety: Upholds safety-usable invariant here + if code_unit > 127 { + return Some((code_unit, i)); + } ++ // Safety: len invariant used here + *(dst.add(i)) = code_unit as $dst_unit; + } + return None; + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_alu { + ($name:ident, ++ // safety invariant: src/dst MUST be u8 + $src_unit:ty, + $dst_unit:ty, ++ // Safety invariant: stride_fn must consume and produce two usizes, and return the index of the first non-ascii when it fails + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr(feature = "cargo-clippy", allow(never_loop, cast_ptr_alignment))] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch until we are aligned to usize + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + let src_alignment = (src as usize) & ALU_ALIGNMENT_MASK; + let dst_alignment = (dst as usize) & ALU_ALIGNMENT_MASK; + if src_alignment != dst_alignment { ++ // Safety: bails early and ends up in the na誰ve branch where usize-alignment doesn't matter + break; + } + (ALU_ALIGNMENT - src_alignment) & ALU_ALIGNMENT_MASK + // } else if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // ascii_to_basic_latin + // let src_until_alignment = (ALIGNMENT - ((src as usize) & ALIGNMENT_MASK)) & ALIGNMENT_MASK; + // if (dst.add(src_until_alignment) as usize) & ALIGNMENT_MASK != 0 { + // break; +@@ -129,74 +145,104 @@ macro_rules! ascii_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: num_ascii is known to be a byte index of a non-ascii byte due to stride_fn's invariant + if let Some(num_ascii) = $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + offset += num_ascii; ++ // Safety: Upholds safety-usable invariant here by indexing into non-ascii byte + return Some((*(src.add(offset)), offset)); + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ ++ // Safety: This is the na誰ve code, same as ascii_naive, and has no requirements ++ // other than src/dst being valid for the the right lens + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_alu { + ($name:ident, ++ // safety invariant: use u8 for src/dest for ascii, and u16 for basic_latin + $src_unit:ty, + $dst_unit:ty, ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure basic-latin has the same alignment as ascii, starting with ascii since it is smaller. + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + // let src_alignment = (src as usize) & ALIGNMENT_MASK; + // let dst_alignment = (dst as usize) & ALIGNMENT_MASK; + // if src_alignment != dst_alignment { +@@ -232,66 +278,89 @@ macro_rules! basic_latin_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + if !$stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + break; + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_alu { ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure the UTF-16 side has the same alignment as the Latin-1 side, starting with Latin-1 since it is smaller. + let mut until_alignment = { + if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // unpack + let src_until_alignment = (ALU_ALIGNMENT + - ((src as usize) & ALU_ALIGNMENT_MASK)) + & ALU_ALIGNMENT_MASK; + if (dst.wrapping_add(src_until_alignment) as usize) & ALU_ALIGNMENT_MASK + != 0 +@@ -308,373 +377,485 @@ macro_rules! latin1_alu { + != 0 + { + break; + } + dst_until_alignment + } + }; + if until_alignment + ALU_STRIDE_SIZE <= len { ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ); ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + // XXX Should we first process one stride unconditionally as unaligned to + // avoid the cost of the branchiness below if the first stride fails anyway? + // XXX Should we just use unaligned SSE2 access unconditionally? It seems that + // on Haswell, it would make sense to just use unaligned and not bother + // checking. Need to benchmark older architectures before deciding. + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Safety: checking whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { ++ // Safety: Checking whether dst is aligned + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_dst_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: upholds safety-usable invariant + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_src_aligned:ident + ) => { +- #[inline(always)] ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; + // This loop is only broken out of as a goto forward without + // actually looping + 'outer: loop { ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned ++ // Safety: this is safe to call since we're valid for this read/write + if !$stride_neither_aligned(src, dst) { + break 'outer; + } + offset = SIMD_STRIDE_SIZE; + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is less that SIMD_ALIGNMENT, which is also SIMD_STRIDE_SIZE (as documented) + let until_alignment = ((SIMD_ALIGNMENT + - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; +- // This addition won't overflow, because even in the 32-bit PAE case the ++ // Safety: This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read/write (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading/writing 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); ++ // Safety: This is whether dst is aligned + let dst_masked = (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK; + if dst_masked == 0 { + loop { ++ // Safety: both are aligned, we can call the aligned function. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_both_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } else { + loop { ++ // Safety: only src is aligned here. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_src_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. ++ + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } + } else { + // At most two iterations, so unroll + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + break 'outer; + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident ++ + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Whether dst is aligned + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { + if dst_masked == 0 { + loop { ++ // Safety: Both were aligned, we can use the aligned function + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: src was aligned, dst was not + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: src was aligned, dst was not + $stride_dst_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: Neither were aligned + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_STRIDE_SIZE. + let mut until_alignment = ((SIMD_STRIDE_SIZE + - ((src as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; + while until_alignment != 0 { ++ // Safety: This is a straightforward copy, since until_alignment is < SIMD_STRIDE_SIZE < len, this is in-bounds + *(dst.add(offset)) = *(src.add(offset)) as $dst_unit; + offset += 1; + until_alignment -= 1; + } ++ // Safety: here offset will be `until_alignment`, i.e. enough to align `src`. + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements. + if offset + SIMD_STRIDE_SIZE * 2 <= len { + let len_minus_stride_times_two = len_minus_stride - SIMD_STRIDE_SIZE; ++ // Safety: at this point src is known to be aligned at offset, dst is not. + if (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK == 0 { + loop { ++ // Safety: We checked alignment of dst above, we can use the alignment functions. We're allowed to read/write 2*SIMD_STRIDE_SIZE elements, which we do. + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } else { + loop { ++ // Safety: we ensured alignment of src already. + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } + } ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we are valid to munch SIMD_STRIDE_SIZE more elements, which we do + if offset < len_minus_stride { + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + // On x86_64, this loop autovectorizes but in the pack + // case there are instructions whose purpose is to make sure + // each u16 in the vector is truncated before packing. However, + // since we don't care about saturating behavior of SSE2 packing + // when the input isn't Latin1, those instructions are useless. + // Unfortunately, using the `assume` intrinsic to lie to the + // optimizer doesn't make LLVM omit the trunctation that we +@@ -688,138 +869,180 @@ macro_rules! latin1_simd_check_align_unr + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for reads/writes of len elements of type src_unit/dst_unit ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for unaligned reads/writes of len elements of type src_unit/dst_unit + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + $store(dst, simd); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_double_stride { ++ // Safety: store must be valid for 32 bytes of write, which may be unaligned (candidates: `store(8|16)_(aligned|unaligned)`) + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 32 bytes of aligned u8x16 read ++ /// dst must be valid for 32 bytes of unaligned write according to ++ /// the $store fn, which may allow for unaligned writes or require ++ /// alignment to either 16x8 or u8x16. ++ /// ++ /// Safety-usable invariant: Returns Some(index) if the element at `index` is invalid ASCII + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + $store(dst, first); + if unlikely(!simd_is_ascii(first | second)) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + return Some(mask_first.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + return Some(SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16/32 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_double_stride { ++ // Safety: store must be valid for 16 bytes of write, which may be unaligned + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned reads, ++ /// aligned to either 16x8 or u8x16. ++ /// dst must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned or unaligned reads + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + let (a, b) = simd_unpack(first); + $store(dst, a); ++ // Safety: divide by 2 since it's a u16 pointer + $store(dst.add(SIMD_STRIDE_SIZE / 2), b); + if unlikely(!simd_is_ascii(first | second)) { + let mask_first = mask_ascii(first); + if mask_first != 0 { + return Some(mask_first.trailing_zeros() as usize); + } + let (c, d) = simd_unpack(second); + $store(dst.add(SIMD_STRIDE_SIZE), c); +@@ -832,47 +1055,59 @@ macro_rules! ascii_to_basic_latin_simd_d + $store(dst.add(SIMD_STRIDE_SIZE + (SIMD_STRIDE_SIZE / 2)), d); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! unpack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) { + let simd = $load(src); + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) -> bool { + let first = $load(src); + let second = $load(src.add(8)); + if simd_is_basic_latin(first | second) { + $store(dst, simd_pack(first, second)); + true + } else { + false + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! pack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) { + let first = $load(src); + let second = $load(src.add(8)); + $store(dst, simd_pack(first, second)); + } + }; + } +@@ -888,24 +1123,28 @@ cfg_if! { + // pub const ALIGNMENT: usize = 8; + + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const ALU_ALIGNMENT: usize = 8; + + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently produce ++ // neither_unaligned variants using only unaligned inputs. + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_neither_aligned, load16_unaligned, store8_unaligned); + unpack_simd_stride!(unpack_stride_neither_aligned, load16_unaligned, store8_unaligned); + + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the unalign macro with unalign functions above. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. + ascii_simd_unalign!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_neither_aligned); + ascii_simd_unalign!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_unalign!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_unalign!(unpack_latin1, u8, u16, unpack_stride_neither_aligned); + latin1_simd_unalign!(pack_latin1, u16, u8, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_endian = "little", target_feature = "neon"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // +@@ -914,16 +1153,19 @@ cfg_if! { + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_dst_aligned, load16_unaligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_both_aligned, load16_aligned, store8_aligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_src_aligned, load16_aligned, store8_unaligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_dst_aligned, load16_unaligned, store8_aligned); +@@ -939,36 +1181,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + pack_simd_stride!(pack_stride_dst_aligned, load8_unaligned, store16_aligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_dst_aligned, ascii_to_ascii_stride_neither_aligned); + ascii_simd_check_align!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_dst_aligned, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // + // Newer microarchitectures are not supposed to have a performance difference between + // aligned and unaligned SSE2 loads and stores when the address is actually aligned, + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + ++ /// Safety-usable invariant: This should be identical to SIMD_STRIDE_SIZE (used by ascii_simd_check_align_unrolled) + pub const SIMD_ALIGNMENT: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_both_aligned, store16_aligned); + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_src_aligned, store16_unaligned); + + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_both_aligned, store8_aligned); + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_src_aligned, store8_unaligned); + + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); +@@ -984,33 +1233,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_both_aligned, load8_aligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_src_aligned, load8_aligned, store16_unaligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither/double_both/double_src here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align_unrolled!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_neither_aligned, ascii_to_ascii_simd_double_stride_both_aligned, ascii_to_ascii_simd_double_stride_src_aligned); + ascii_simd_check_align_unrolled!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_neither_aligned, ascii_to_basic_latin_simd_double_stride_both_aligned, ascii_to_basic_latin_simd_double_stride_src_aligned); + + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align_unrolled!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align_unrolled!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(target_endian = "little", target_pointer_width = "64"))] { + // Aligned ALU word, little-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | + ((0x0000_0000_0000_FF00usize & word) << 8) | + (0x0000_0000_0000_00FFusize & word); + let second = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | +@@ -1019,22 +1278,24 @@ cfg_if! { + let third = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); + let fourth = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000_0000_0000usize & second) << 8) | + ((0x0000_00FF_0000_0000usize & second) << 16) | + ((0x0000_0000_00FF_0000usize & second) << 24) | + ((0x0000_0000_0000_00FFusize & second) << 32) | + ((0x00FF_0000_0000_0000usize & first) >> 24) | + ((0x0000_00FF_0000_0000usize & first) >> 16) | +@@ -1043,70 +1304,88 @@ cfg_if! { + let second_word = ((0x00FF_0000_0000_0000usize & fourth) << 8) | + ((0x0000_00FF_0000_0000usize & fourth) << 16) | + ((0x0000_0000_00FF_0000usize & fourth) << 24) | + ((0x0000_0000_0000_00FFusize & fourth) << 32) | + ((0x00FF_0000_0000_0000usize & third) >> 24) | + ((0x0000_00FF_0000_0000usize & third) >> 16) | + ((0x0000_0000_00FF_0000usize & third) >> 8) | + (0x0000_0000_0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "little", target_pointer_width = "32"))] { + // Aligned ALU word, little-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let second = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let third = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); + let fourth = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & second) << 8) | + ((0x0000_00FFusize & second) << 16) | + ((0x00FF_0000usize & first) >> 8) | + (0x0000_00FFusize & first); + let second_word = ((0x00FF_0000usize & fourth) << 8) | + ((0x0000_00FFusize & fourth) << 16) | + ((0x00FF_0000usize & third) >> 8) | + (0x0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "64"))] { + // Aligned ALU word, big-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | + ((0x0000_FF00_0000_0000usize & word) >> 24) | + ((0x0000_00FF_0000_0000usize & word) >> 32); + let second = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | +@@ -1115,22 +1394,24 @@ cfg_if! { + let third = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); + let fourth = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF0000_00000000usize & first) << 8) | + ((0x000000FF_00000000usize & first) << 16) | + ((0x00000000_00FF0000usize & first) << 24) | + ((0x00000000_000000FFusize & first) << 32) | + ((0x00FF0000_00000000usize & second) >> 24) | + ((0x000000FF_00000000usize & second) >> 16) | +@@ -1139,67 +1420,80 @@ cfg_if! { + let second_word = ((0x00FF0000_00000000usize & third) << 8) | + ((0x000000FF_00000000usize & third) << 16) | + ((0x00000000_00FF0000usize & third) << 24) | + ((0x00000000_000000FFusize & third) << 32) | + ((0x00FF0000_00000000usize & fourth) >> 24) | + ((0x000000FF_00000000usize & fourth) >> 16) | + ((0x00000000_00FF0000usize & fourth) >> 8) | + (0x00000000_000000FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "32"))] { + // Aligned ALU word, big-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let second = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let third = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); + let fourth = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & first) << 8) | + ((0x0000_00FFusize & first) << 16) | + ((0x00FF_0000usize & second) >> 8) | + (0x0000_00FFusize & second); + let second_word = ((0x00FF_0000usize & third) << 8) | + ((0x0000_00FFusize & third) << 16) | + ((0x00FF_0000usize & fourth) >> 8) | + (0x0000_00FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else { + ascii_naive!(ascii_to_ascii, u8, u8); + ascii_naive!(ascii_to_basic_latin, u8, u16); + ascii_naive!(basic_latin_to_ascii, u16, u8); + } + } + + cfg_if! { ++ // Safety-usable invariant: this counts the zeroes from the "first byte" of utf-8 data packed into a usize ++ // with the target endianness + if #[cfg(target_endian = "little")] { + #[allow(dead_code)] + #[inline(always)] + fn count_zeros(word: usize) -> u32 { + word.trailing_zeros() + } + } else { + #[allow(dead_code)] +@@ -1207,208 +1501,272 @@ cfg_if! { + fn count_zeros(word: usize) -> u32 { + word.leading_zeros() + } + } + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", target_endian = "little", target_arch = "disabled"))] { ++ /// Safety-usable invariant: Will return the value and position of the first non-ASCII byte in the slice in a Some if found. ++ /// In other words, the first element of the Some is always `> 127` + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: src at offset is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + if !simd_is_ascii(simd) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety: Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned vector ++ // Safety: src is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset = mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset = SIMD_STRIDE_SIZE; ++ // Safety: Now that offset has changed we don't yet know how much it is valid for + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_ALIGNMENT, which is defined to be equal to SIMD_STRIDE_SIZE. + let until_alignment = unsafe { (SIMD_ALIGNMENT - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) & SIMD_ALIGNMENT_MASK }; + // This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); + loop { ++ // Safety: We were valid for this read, and were aligned. + let first = unsafe { load16_aligned(src.add(offset)) }; + let second = unsafe { load16_aligned(src.add(offset + SIMD_STRIDE_SIZE)) }; + if !simd_is_ascii(first | second) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + offset += mask_first.trailing_zeros() as usize; + } else { + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize; + } ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + let non_ascii = unsafe { *src.add(offset) }; ++ + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { +- let simd = unsafe { load16_aligned(src.add(offset)) }; +- let mask = mask_ascii(simd); ++ // Safety: We were valid for this read, and were aligned. ++ let simd = unsafe { load16_aligned(src.add(offset)) }; ++ // Safety: mask_ascii produces a mask of all the high bits. ++ let mask = mask_ascii(simd); + if mask != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } else { ++ // Safety: this is the unaligned branch + // At most two iterations, so unroll ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = unsafe { *(src.add(offset)) }; + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else { ++ // Safety-usable invariant: returns byte index of first non-ascii byte + #[inline(always)] + fn find_non_ascii(word: usize, second_word: usize) -> Option<usize> { + let word_masked = word & ASCII_MASK; + let second_masked = second_word & ASCII_MASK; + if (word_masked | second_masked) == 0 { ++ // Both are ascii, invariant upheld + return None; + } + if word_masked != 0 { + let zeros = count_zeros(word_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + return Some(num_ascii); + } + let zeros = count_zeros(second_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + Some(ALU_ALIGNMENT + num_ascii) + } + ++ /// Safety: `src` must be valid for the reads of two `usize`s ++ /// ++ /// Safety-usable invariant: will return byte index of first non-ascii byte + #[inline(always)] + unsafe fn validate_ascii_stride(src: *const usize) -> Option<usize> { + let word = *src; + let second_word = *(src.add(1)); + find_non_ascii(word, second_word) + } + ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[cfg_attr(feature = "cargo-clippy", allow(cast_ptr_alignment))] + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; + let mut until_alignment = (ALU_ALIGNMENT - ((src as usize) & ALU_ALIGNMENT_MASK)) & ALU_ALIGNMENT_MASK; ++ // Safety: If this check fails we're valid to read `until_alignment + ALU_STRIDE_SIZE` elements + if until_alignment + ALU_STRIDE_SIZE <= len { + while until_alignment != 0 { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + until_alignment -= 1; + } ++ // Safety: At this point we have read until_alignment elements and ++ // are valid for `ALU_STRIDE_SIZE` more. + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: we were valid for this read + let ptr = unsafe { src.add(offset) as *const usize }; + if let Some(num_ascii) = unsafe { validate_ascii_stride(ptr) } { + offset += num_ascii; ++ // Safety-usable invairant upheld here using the invariant from validate_ascii_stride() + return Some((unsafe { *(src.add(offset)) }, offset)); + } + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > ALU_STRIDE_SIZE` which means we always have at least `2 * ALU_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + + } +@@ -1423,70 +1781,88 @@ cfg_if! { + // vector reads without vector writes. + + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const ALU_ALIGNMENT: usize = 4; + + pub const ALU_ALIGNMENT_MASK: usize = 3; + } else { ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn unpack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + } + ++ // Safety: src points to four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn pack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + } + ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn ascii_to_basic_latin_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); + // Check if the words contains non-ASCII + if (word & ASCII_MASK) | (second_word & ASCII_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + true + } + ++ // Safety: src points four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn basic_latin_to_ascii_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); + if (first & BASIC_LATIN_MASK) | (second & BASIC_LATIN_MASK) | (third & BASIC_LATIN_MASK) | (fourth & BASIC_LATIN_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + true + } + ++ // Safety: src, dst both point to two valid `usize`s each ++ // Safety-usable invariant: Will return byte index of first non-ascii byte. + #[inline(always)] + unsafe fn ascii_to_ascii_stride(src: *const usize, dst: *mut usize) -> Option<usize> { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: src safety invariant used here + *dst = word; + *(dst.add(1)) = second_word; ++ // Relies on safety-usable invariant here + find_non_ascii(word, second_word) + } + + basic_latin_alu!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_alu); + basic_latin_alu!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_alu); + latin1_alu!(unpack_latin1, u8, u16, unpack_latin1_stride_alu); + latin1_alu!(pack_latin1, u16, u8, pack_latin1_stride_alu); ++ // Safety invariant upheld: ascii_to_ascii_stride will return byte index of first non-ascii if found + ascii_alu!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride); + } + } + + pub fn ascii_valid_up_to(bytes: &[u8]) -> usize { + match validate_ascii(bytes) { + None => bytes.len(), + Some((_, num_valid)) => num_valid, +diff --git a/third_party/rust/encoding_rs/src/handles.rs b/third_party/rust/encoding_rs/src/handles.rs +--- third_party/rust/encoding_rs/src/handles.rs ++++ third_party/rust/encoding_rs/src/handles.rs +@@ -29,17 +29,17 @@ use crate::simd_funcs::*; + #[cfg(all( + feature = "simd-accel", + any( + target_feature = "sse2", + all(target_endian = "little", target_arch = "aarch64"), + all(target_endian = "little", target_feature = "neon") + ) + ))] +-use packed_simd::u16x8; ++use core::simd::u16x8; + + use super::DecoderResult; + use super::EncoderResult; + use crate::ascii::*; + use crate::utf_8::convert_utf8_to_utf16_up_to_invalid; + use crate::utf_8::utf8_valid_up_to; + + pub enum Space<T> { +@@ -85,84 +85,100 @@ impl Endian for LittleEndian { + const OPPOSITE_ENDIAN: bool = false; + + #[cfg(target_endian = "big")] + const OPPOSITE_ENDIAN: bool = true; + } + + #[derive(Debug, Copy, Clone)] + struct UnalignedU16Slice { ++ // Safety invariant: ptr must be valid for reading 2*len bytes + ptr: *const u8, + len: usize, + } + + impl UnalignedU16Slice { ++ /// Safety: ptr must be valid for reading 2*len bytes + #[inline(always)] + pub unsafe fn new(ptr: *const u8, len: usize) -> UnalignedU16Slice { ++ // Safety: field invariant passed up to caller here + UnalignedU16Slice { ptr, len } + } + + #[inline(always)] + pub fn trim_last(&mut self) { + assert!(self.len > 0); ++ // Safety: invariant upheld here: a slice is still valid with a shorter len + self.len -= 1; + } + + #[inline(always)] + pub fn at(&self, i: usize) -> u16 { + use core::mem::MaybeUninit; + + assert!(i < self.len); + unsafe { + let mut u: MaybeUninit<u16> = MaybeUninit::uninit(); ++ // Safety: i is at most len - 1, which works here + ::core::ptr::copy_nonoverlapping(self.ptr.add(i * 2), u.as_mut_ptr() as *mut u8, 2); ++ // Safety: valid read above lets us do this + u.assume_init() + } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn simd_at(&self, i: usize) -> u16x8 { ++ // Safety: i/len are on the scale of u16s, each one corresponds to 2 u8s + assert!(i + SIMD_STRIDE_SIZE / 2 <= self.len); + let byte_index = i * 2; ++ // Safety: load16_unaligned needs SIMD_STRIDE_SIZE=16 u8 elements to read, ++ // or 16/2 = 8 u16 elements to read. ++ // We have checked that we have at least that many above. ++ + unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) } + } + + #[inline(always)] + pub fn len(&self) -> usize { + self.len + } + + #[inline(always)] + pub fn tail(&self, from: usize) -> UnalignedU16Slice { + // XXX the return value should be restricted not to + // outlive self. + assert!(from <= self.len); ++ // Safety: This upholds the same invariant: `from` is in bounds and we're returning a shorter slice + unsafe { UnalignedU16Slice::new(self.ptr.add(from * 2), self.len - from) } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn copy_bmp_to<E: Endian>(&self, other: &mut [u16]) -> Option<(u16, usize)> { + assert!(self.len <= other.len()); + let mut offset = 0; ++ // Safety: SIMD_STRIDE_SIZE is measured in bytes, whereas len is in u16s. We check we can ++ // munch SIMD_STRIDE_SIZE / 2 u16s which means we can write SIMD_STRIDE_SIZE u8s + if SIMD_STRIDE_SIZE / 2 <= self.len { + let len_minus_stride = self.len - SIMD_STRIDE_SIZE / 2; + loop { + let mut simd = self.simd_at(offset); + if E::OPPOSITE_ENDIAN { + simd = simd_byte_swap(simd); + } ++ // Safety: we have enough space on the other side to write this + unsafe { + store8_unaligned(other.as_mut_ptr().add(offset), simd); + } + if contains_surrogates(simd) { + break; + } + offset += SIMD_STRIDE_SIZE / 2; ++ // Safety: This ensures we still have space for writing SIMD_STRIDE_SIZE u8s + if offset > len_minus_stride { + break; + } + } + } + while offset < self.len { + let unit = swap_if_opposite_endian::<E>(self.at(offset)); + other[offset] = unit; +@@ -231,33 +247,37 @@ fn copy_unaligned_basic_latin_to_ascii<E + #[cfg(feature = "simd-accel")] + #[inline(always)] + fn copy_unaligned_basic_latin_to_ascii<E: Endian>( + src: UnalignedU16Slice, + dst: &mut [u8], + ) -> CopyAsciiResult<usize, (u16, usize)> { + let len = ::core::cmp::min(src.len(), dst.len()); + let mut offset = 0; ++ // Safety: This check ensures we are able to read/write at least SIMD_STRIDE_SIZE elements + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { + let mut first = src.simd_at(offset); + let mut second = src.simd_at(offset + (SIMD_STRIDE_SIZE / 2)); + if E::OPPOSITE_ENDIAN { + first = simd_byte_swap(first); + second = simd_byte_swap(second); + } + if !simd_is_basic_latin(first | second) { + break; + } + let packed = simd_pack(first, second); ++ // Safety: We are able to write SIMD_STRIDE_SIZE elements in this iteration + unsafe { + store16_unaligned(dst.as_mut_ptr().add(offset), packed); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which ensures that we can write at least SIMD_STRIDE_SIZE elements ++ // in the next iteration + if offset > len_minus_stride { + break; + } + } + } + copy_unaligned_basic_latin_to_ascii_alu::<E>(src.tail(offset), &mut dst[offset..], offset) + } + +@@ -632,94 +652,106 @@ impl<'a> Utf16Destination<'a> { + #[inline(always)] + fn write_astral(&mut self, astral: u32) { + debug_assert!(astral > 0xFFFF); + debug_assert!(astral <= 0x10_FFFF); + self.write_code_unit((0xD7C0 + (astral >> 10)) as u16); + self.write_code_unit((0xDC00 + (astral & 0x3FF)) as u16); + } + #[inline(always)] +- pub fn write_surrogate_pair(&mut self, high: u16, low: u16) { ++ fn write_surrogate_pair(&mut self, high: u16, low: u16) { + self.write_code_unit(high); + self.write_code_unit(low); + } + #[inline(always)] + fn write_big5_combination(&mut self, combined: u16, combining: u16) { + self.write_bmp_excl_ascii(combined); + self.write_bmp_excl_ascii(combining); + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_bmp<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16BmpHandle<'b, 'a>)> { + let non_ascii_ret = { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16BmpHandle::new(self))) + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_astral<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16AstralHandle<'b, 'a>)> { + let non_ascii_ret = { + let dst_len = self.slice.len(); + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + if self.pos + 1 < dst_len { + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } else { + return CopyAsciiResult::Stop(( + DecoderResult::OutputFull, + source.pos, + self.pos, + )); + } + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16AstralHandle::new(self))) + } + #[inline(always)] + pub fn copy_utf8_up_to_invalid_from(&mut self, source: &mut ByteSource) { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (read, written) = convert_utf8_to_utf16_up_to_invalid(src_remaining, dst_remaining); + source.pos += read; +diff --git a/third_party/rust/encoding_rs/src/lib.rs b/third_party/rust/encoding_rs/src/lib.rs +--- third_party/rust/encoding_rs/src/lib.rs ++++ third_party/rust/encoding_rs/src/lib.rs +@@ -684,37 +684,26 @@ + //! <tr><td>TIS-620</td><td>windows-874</td></tr> + //! </tbody> + //! </table> + //! + //! See the section [_UTF-16LE, UTF-16BE and Unicode Encoding Schemes_](#utf-16le-utf-16be-and-unicode-encoding-schemes) + //! for discussion about the UTF-16 family. + + #![no_std] +-#![cfg_attr(feature = "simd-accel", feature(core_intrinsics))] ++#![cfg_attr(feature = "simd-accel", feature(core_intrinsics, portable_simd))] + + #[cfg(feature = "alloc")] + #[cfg_attr(test, macro_use)] + extern crate alloc; + + extern crate core; + #[macro_use] + extern crate cfg_if; + +-#[cfg(all( +- feature = "simd-accel", +- any( +- target_feature = "sse2", +- all(target_endian = "little", target_arch = "aarch64"), +- all(target_endian = "little", target_feature = "neon") +- ) +-))] +-#[macro_use(shuffle)] +-extern crate packed_simd; +- + #[cfg(feature = "serde")] + extern crate serde; + + #[cfg(all(test, feature = "serde"))] + extern crate bincode; + #[cfg(all(test, feature = "serde"))] + #[macro_use] + extern crate serde_derive; +diff --git a/third_party/rust/encoding_rs/src/mem.rs b/third_party/rust/encoding_rs/src/mem.rs +--- third_party/rust/encoding_rs/src/mem.rs ++++ third_party/rust/encoding_rs/src/mem.rs +@@ -111,16 +111,21 @@ macro_rules! by_unit_check_alu { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - ALU_ALIGNMENT / unit_size; + if offset + (4 * (ALU_ALIGNMENT / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length ALU_ALIGNMENT / unit_size. ALU_ALIGNMENT is the size of usize, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four usize reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (ALU_ALIGNMENT / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const usize) } + | unsafe { + *(src.add(offset + (ALU_ALIGNMENT / unit_size)) as *const usize) + } + | unsafe { + *(src.add(offset + (2 * (ALU_ALIGNMENT / unit_size))) +@@ -129,22 +134,24 @@ macro_rules! by_unit_check_alu { + | unsafe { + *(src.add(offset + (3 * (ALU_ALIGNMENT / unit_size))) + as *const usize) + }; + if unroll_accu & $mask != 0 { + return false; + } + offset += 4 * (ALU_ALIGNMENT / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one usize read. + accu |= unsafe { *(src.add(offset) as *const usize) }; + offset += ALU_ALIGNMENT / unit_size; + } + } + } + for &unit in &buffer[offset..] { + accu |= unit as usize; + } +@@ -184,16 +191,21 @@ macro_rules! by_unit_check_simd { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - SIMD_STRIDE_SIZE / unit_size; + if offset + (4 * (SIMD_STRIDE_SIZE / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length SIMD_STRIDE_SIZE / unit_size. SIMD_STRIDE_SIZE is the size of $simd_ty, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four $simd_ty reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (SIMD_STRIDE_SIZE / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const $simd_ty) } + | unsafe { + *(src.add(offset + (SIMD_STRIDE_SIZE / unit_size)) + as *const $simd_ty) + } + | unsafe { +@@ -203,23 +215,25 @@ macro_rules! by_unit_check_simd { + | unsafe { + *(src.add(offset + (3 * (SIMD_STRIDE_SIZE / unit_size))) + as *const $simd_ty) + }; + if !$func(unroll_accu) { + return false; + } + offset += 4 * (SIMD_STRIDE_SIZE / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + let mut simd_accu = $splat; + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one $simd_ty read. + simd_accu = simd_accu | unsafe { *(src.add(offset) as *const $simd_ty) }; + offset += SIMD_STRIDE_SIZE / unit_size; + } + if !$func(simd_accu) { + return false; + } + } + } +@@ -229,18 +243,18 @@ macro_rules! by_unit_check_simd { + accu < $bound + } + }; + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", any(target_feature = "sse2", all(target_endian = "little", target_arch = "aarch64"), all(target_endian = "little", target_feature = "neon"))))] { + use crate::simd_funcs::*; +- use packed_simd::u8x16; +- use packed_simd::u16x8; ++ use core::simd::u8x16; ++ use core::simd::u16x8; + + const SIMD_ALIGNMENT: usize = 16; + + const SIMD_ALIGNMENT_MASK: usize = 15; + + by_unit_check_simd!(is_ascii_impl, u8, u8x16::splat(0), u8x16, 0x80, simd_is_ascii); + by_unit_check_simd!(is_basic_latin_impl, u16, u16x8::splat(0), u16x8, 0x80, simd_is_basic_latin); + by_unit_check_simd!(is_utf16_latin1_impl, u16, u16x8::splat(0), u16x8, 0x100, simd_is_latin1); +diff --git a/third_party/rust/encoding_rs/src/simd_funcs.rs b/third_party/rust/encoding_rs/src/simd_funcs.rs +--- third_party/rust/encoding_rs/src/simd_funcs.rs ++++ third_party/rust/encoding_rs/src/simd_funcs.rs +@@ -2,65 +2,84 @@ + // file at the top-level directory of this distribution. + // + // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or + // https://www.apache.org/licenses/LICENSE-2.0> or the MIT license + // <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your + // option. This file may not be copied, modified, or distributed + // except according to those terms. + +-use packed_simd::u16x8; +-use packed_simd::u8x16; +-use packed_simd::IntoBits; ++use any_all_workaround::all_mask16x8; ++use any_all_workaround::all_mask8x16; ++use any_all_workaround::any_mask16x8; ++use any_all_workaround::any_mask8x16; ++use core::simd::cmp::SimdPartialEq; ++use core::simd::cmp::SimdPartialOrd; ++use core::simd::mask16x8; ++use core::simd::mask8x16; ++use core::simd::simd_swizzle; ++use core::simd::u16x8; ++use core::simd::u8x16; ++use core::simd::ToBytes; + + // TODO: Migrate unaligned access to stdlib code if/when the RFC + // https://github.com/rust-lang/rfcs/pull/1725 is implemented. + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load16_unaligned(ptr: *const u8) -> u8x16 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr, &mut simd as *mut u8x16 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u8x16>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load16_aligned(ptr: *const u8) -> u8x16 { + *(ptr as *const u8x16) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store16_unaligned(ptr: *mut u8, s: u8x16) { + ::core::ptr::copy_nonoverlapping(&s as *const u8x16 as *const u8, ptr, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store16_aligned(ptr: *mut u8, s: u8x16) { + *(ptr as *mut u8x16) = s; + } + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load8_unaligned(ptr: *const u16) -> u16x8 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr as *const u8, &mut simd as *mut u16x8 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u16x8>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr as *const u8, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load8_aligned(ptr: *const u16) -> u16x8 { + *(ptr as *const u16x8) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store8_unaligned(ptr: *mut u16, s: u16x8) { + ::core::ptr::copy_nonoverlapping(&s as *const u16x8 as *const u8, ptr as *mut u8, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store8_aligned(ptr: *mut u16, s: u16x8) { + *(ptr as *mut u16x8) = s; + } + + cfg_if! { + if #[cfg(all(target_feature = "sse2", target_arch = "x86_64"))] { +@@ -95,234 +114,241 @@ cfg_if! { + pub fn simd_byte_swap(s: u16x8) -> u16x8 { + let left = s << 8; + let right = s >> 8; + left | right + } + + #[inline(always)] + pub fn to_u16_lanes(s: u8x16) -> u16x8 { +- s.into_bits() ++ u16x8::from_ne_bytes(s) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + + // Expose low-level mask instead of higher-level conclusion, + // because the non-ASCII case would perform less well otherwise. ++ // Safety-usable invariant: This returned value is whether each high bit is set + #[inline(always)] + pub fn mask_ascii(s: u8x16) -> i32 { + unsafe { +- _mm_movemask_epi8(s.into_bits()) ++ _mm_movemask_epi8(s.into()) + } + } + + } else { + + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- _mm_movemask_epi8(s.into_bits()) == 0 ++ // Safety: We have cfg()d the correct platform ++ _mm_movemask_epi8(s.into()) == 0 + } + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0x80 + } + } + } else { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + // This optimizes better on ARM than + // the lt formulation. + let highest_ascii = u8x16::splat(0x7F); +- !s.gt(highest_ascii).any() ++ !any_mask8x16(s.simd_gt(highest_ascii)) + } + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + if simd_is_ascii(s) { + return true; + } + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ s.simd_lt(above_str_latin1).all() + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0xC4 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0xC4 + } + } + } else { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ all_mask8x16(s.simd_lt(above_str_latin1)) + } + } + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x80 + } + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x100 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x100 + } + } + } else { + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + let above_ascii = u16x8::splat(0x80); +- s.lt(above_ascii).all() ++ all_mask16x8(s.simd_lt(above_ascii)) + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + // For some reason, on SSE2 this formulation + // seems faster in this case while the above + // function is better the other way round... + let highest_latin1 = u16x8::splat(0xFF); +- !s.gt(highest_latin1).any() ++ !any_mask16x8(s.simd_gt(highest_latin1)) + } + } + } + + #[inline(always)] + pub fn contains_surrogates(s: u16x8) -> bool { + let mask = u16x8::splat(0xF800); + let surrogate_bits = u16x8::splat(0xD800); +- (s & mask).eq(surrogate_bits).any() ++ any_mask16x8((s & mask).simd_eq(surrogate_bits)) + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => ({ + unsafe { +- if vmaxvq_u16($s.into_bits()) < 0x0590 { ++ // Safety: We have cfg()d the correct platform ++ if vmaxvq_u16($s.into()) < 0x0590 { + return false; + } + } + }) + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => () + } + } else { + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => () + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => ({ +- if $s.all() { ++ if all_mask16x8($s) { + return false; + } + }) + } + } + } + + macro_rules! in_range16x8 { + ($s:ident, $start:expr, $end:expr) => {{ + // SIMD sub is wrapping +- ($s - u16x8::splat($start)).lt(u16x8::splat($end - $start)) ++ ($s - u16x8::splat($start)).simd_lt(u16x8::splat($end - $start)) + }}; + } + + #[inline(always)] + pub fn is_u16x8_bidi(s: u16x8) -> bool { + // We try to first quickly refute the RTLness of the vector. If that + // fails, we do the real RTL check, so in that case we end up wasting + // the work for the up-front quick checks. Even the quick-check is + // two-fold in order to return `false` ASAP if everything is below + // Hebrew. + + aarch64_return_false_if_below_hebrew!(s); + +- let below_hebrew = s.lt(u16x8::splat(0x0590)); ++ let below_hebrew = s.simd_lt(u16x8::splat(0x0590)); + + non_aarch64_return_false_if_all!(below_hebrew); + +- if (below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802)).all() { ++ if all_mask16x8( ++ below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802), ++ ) { + return false; + } + + // Quick refutation failed. Let's do the full check. + +- (in_range16x8!(s, 0x0590, 0x0900) +- | in_range16x8!(s, 0xFB1D, 0xFE00) +- | in_range16x8!(s, 0xFE70, 0xFEFF) +- | in_range16x8!(s, 0xD802, 0xD804) +- | in_range16x8!(s, 0xD83A, 0xD83C) +- | s.eq(u16x8::splat(0x200F)) +- | s.eq(u16x8::splat(0x202B)) +- | s.eq(u16x8::splat(0x202E)) +- | s.eq(u16x8::splat(0x2067))) +- .any() ++ any_mask16x8( ++ (in_range16x8!(s, 0x0590, 0x0900) ++ | in_range16x8!(s, 0xFB1D, 0xFE00) ++ | in_range16x8!(s, 0xFE70, 0xFEFF) ++ | in_range16x8!(s, 0xD802, 0xD804) ++ | in_range16x8!(s, 0xD83A, 0xD83C) ++ | s.simd_eq(u16x8::splat(0x200F)) ++ | s.simd_eq(u16x8::splat(0x202B)) ++ | s.simd_eq(u16x8::splat(0x202E)) ++ | s.simd_eq(u16x8::splat(0x2067))), ++ ) + } + + #[inline(always)] + pub fn simd_unpack(s: u8x16) -> (u16x8, u16x8) { +- unsafe { +- let first: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] +- ); +- let second: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] +- ); +- (first.into_bits(), second.into_bits()) +- } ++ let first: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] ++ ); ++ let second: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] ++ ); ++ (u16x8::from_ne_bytes(first), u16x8::from_ne_bytes(second)) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { + unsafe { +- _mm_packus_epi16(a.into_bits(), b.into_bits()).into_bits() ++ // Safety: We have cfg()d the correct platform ++ _mm_packus_epi16(a.into(), b.into()).into() + } + } + } else { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { +- unsafe { +- let first: u8x16 = a.into_bits(); +- let second: u8x16 = b.into_bits(); +- shuffle!( +- first, +- second, +- [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] +- ) +- } ++ let first: u8x16 = a.to_ne_bytes(); ++ let second: u8x16 = b.to_ne_bytes(); ++ simd_swizzle!( ++ first, ++ second, ++ [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] ++ ) + } + } + } + + #[cfg(test)] + mod tests { + use super::*; + use alloc::vec::Vec; +diff --git a/third_party/rust/encoding_rs/src/single_byte.rs b/third_party/rust/encoding_rs/src/single_byte.rs +--- third_party/rust/encoding_rs/src/single_byte.rs ++++ third_party/rust/encoding_rs/src/single_byte.rs +@@ -48,16 +48,19 @@ impl SingleByteDecoder { + CopyAsciiResult::GoOn((mut non_ascii, mut handle)) => 'middle: loop { + // Start non-boilerplate + // + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: `non_ascii` is a u8 byte >=0x80, from the invariants ++ // on Utf8Destination::copy_ascii_from_check_space_bmp() + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + source.consumed(), + handle.written(), +@@ -146,82 +149,103 @@ impl SingleByteDecoder { + dst: &mut [u16], + _last: bool, + ) -> (DecoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (DecoderResult::OutputFull, dst.len()) + } else { + (DecoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + ascii_to_basic_latin( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + unsafe { +- // The bound check has already been performed ++ // Safety: As mentioned above, `converted < length` + *(dst.get_unchecked_mut(converted)) = mapped; + } ++ // Safety: `converted <= length` upheld, since `converted < length` before this + converted += 1; + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: We are back to `converted < length` because of the == above ++ // and can perform this check. + let mut b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: `converted < length` is upheld for this loop + 'innermost: loop { + if b > 127 { + non_ascii = b; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: `converted < length` is true for this loop + *(dst.get_unchecked_mut(converted)) = u16::from(b); + } ++ // Safety: We are now at `converted <= length`. We should *not* `continue` ++ // the loop without reverifying + converted += 1; + if b < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted <= length` because of the == above + b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: The loop continues as `converted < length` + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; + } + } + } + } +@@ -229,16 +253,18 @@ impl SingleByteDecoder { + } + + pub fn latin1_byte_compatible_up_to(&self, buffer: &[u8]) -> usize { + let mut bytes = buffer; + let mut total = 0; + loop { + if let Some((non_ascii, offset)) = validate_ascii(bytes) { + total += offset; ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + if mapped != u16::from(non_ascii) { + return total; + } + total += 1; + bytes = &bytes[offset + 1..]; + } else { + return total; +@@ -379,64 +405,89 @@ impl SingleByteEncoder { + dst: &mut [u8], + _last: bool, + ) -> (EncoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (EncoderResult::OutputFull, dst.len()) + } else { + (EncoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + basic_latin_to_ascii( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + match self.encode_u16(non_ascii) { + Some(byte) => { + unsafe { ++ // Safety: we're allowed this access since `converted < length` + *(dst.get_unchecked_mut(converted)) = byte; + } + converted += 1; ++ // `converted <= length` now + } + None => { + // At this point, we need to know if we + // have a surrogate. + let high_bits = non_ascii & 0xFC00u16; + if high_bits == 0xD800u16 { + // high surrogate + if converted + 1 == length { + // End of buffer. This surrogate is unpaired. + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } ++ // Safety: convered < length from outside the match, and `converted + 1 != length`, ++ // So `converted + 1 < length` as well. We're in bounds + let second = + u32::from(unsafe { *src.get_unchecked(converted + 1) }); + if second & 0xFC00u32 != 0xDC00u32 { + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + // The next code unit is a low surrogate. + let astral: char = unsafe { ++ // Safety: We can rely on non_ascii being 0xD800-0xDBFF since the high bits are 0xD800 ++ // Then, (non_ascii << 10 - 0xD800 << 10) becomes between (0 to 0x3FF) << 10, which is between ++ // 0x400 to 0xffc00. Adding the 0x10000 gives a range of 0x10400 to 0x10fc00. Subtracting the 0xDC00 ++ // gives 0x2800 to 0x102000 ++ // The second term is between 0xDC00 and 0xDFFF from the check above. This gives a maximum ++ // possible range of (0x10400 + 0xDC00) to (0x102000 + 0xDFFF) which is 0x1E000 to 0x10ffff. ++ // This is in range. ++ // ++ // From a Unicode principles perspective this can also be verified as we have checked that `non_ascii` is a high surrogate ++ // (0xD800..=0xDBFF), and that `second` is a low surrogate (`0xDC00..=0xDFFF`), and we are applying reverse of the UTC16 transformation ++ // algorithm <https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF>, by applying the high surrogate - 0xD800 to the ++ // high ten bits, and the low surrogate - 0xDc00 to the low ten bits, and then adding 0x10000 + ::core::char::from_u32_unchecked( + (u32::from(non_ascii) << 10) + second + - (((0xD800u32 << 10) - 0x1_0000u32) + 0xDC00u32), + ) + }; + return ( + EncoderResult::Unmappable(astral), + converted + 2, // +2 `for non_ascii` and `second` +@@ -451,52 +502,63 @@ impl SingleByteEncoder { + converted, + ); + } + return ( + EncoderResult::unmappable_from_bmp(non_ascii), + converted + 1, // +1 `for non_ascii` + converted, + ); ++ // Safety: This branch diverges, so no need to uphold invariants on `converted` + } + } + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted < length` due to the == above and can perform ++ // the unchecked read + let mut unit = unsafe { *(src.get_unchecked(converted)) }; + 'innermost: loop { ++ // Safety: This loop always begins with `converted < length`, see ++ // the invariant outside and the comment on the continue below + if unit > 127 { + non_ascii = unit; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: Can rely on converted < length + *(dst.get_unchecked_mut(converted)) = unit as u8; + } + converted += 1; ++ // `converted <= length` here + if unit < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: `converted < length` due to the == above. The read is safe. + unit = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: This only happens if `converted < length`, maintaining it + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; ++ // Safety: All other routes to here diverge so the continue is the only ++ // way to run the innermost loop. + } + } + } + } + } + } + } + +diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs +--- third_party/rust/encoding_rs/src/x_user_defined.rs ++++ third_party/rust/encoding_rs/src/x_user_defined.rs +@@ -9,22 +9,23 @@ + + use super::*; + use crate::handles::*; + use crate::variant::*; + + cfg_if! { + if #[cfg(feature = "simd-accel")] { + use simd_funcs::*; +- use packed_simd::u16x8; ++ use core::simd::u16x8; ++ use core::simd::cmp::SimdPartialOrd; + + #[inline(always)] + fn shift_upper(unpacked: u16x8) -> u16x8 { + let highest_ascii = u16x8::splat(0x7F); +- unpacked + unpacked.gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } ++ unpacked + unpacked.simd_gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } + } else { + } + } + + pub struct UserDefinedDecoder; + + impl UserDefinedDecoder { + pub fn new() -> VariantDecoder { +@@ -111,20 +112,25 @@ impl UserDefinedDecoder { + } else { + (DecoderResult::InputEmpty, src.len()) + }; + // Not bothering with alignment + let tail_start = length & !0xF; + let simd_iterations = length >> 4; + let src_ptr = src.as_ptr(); + let dst_ptr = dst.as_mut_ptr(); ++ // Safety: This is `for i in 0..length / 16` + for i in 0..simd_iterations { ++ // Safety: This is in bounds: length is the minumum valid length for both src/dst ++ // and i ranges to length/16, so multiplying by 16 will always be `< length` and can do ++ // a 16 byte read + let input = unsafe { load16_unaligned(src_ptr.add(i * 16)) }; + let (first, second) = simd_unpack(input); + unsafe { ++ // Safety: same as above, but this is two consecutive 8-byte reads + store8_unaligned(dst_ptr.add(i * 16), shift_upper(first)); + store8_unaligned(dst_ptr.add((i * 16) + 8), shift_upper(second)); + } + } + let src_tail = &src[tail_start..length]; + let dst_tail = &mut dst[tail_start..length]; + src_tail + .iter() diff --git a/www/flexget/Makefile b/www/flexget/Makefile index c619ee94e061..32dcad4de840 100644 --- a/www/flexget/Makefile +++ b/www/flexget/Makefile @@ -1,7 +1,7 @@ PORTNAME= FlexGet DISTVERSIONPREFIX= v DISTVERSION= 3.9.10 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= jbeich@FreeBSD.org @@ -32,7 +32,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlalchemy20>0:databases/py-sqlalchemy20@${P ${PYTHON_PKGNAMEPREFIX}psutil>=5.8.0:sysutils/py-psutil@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}feedparser>=6.0.2:textproc/py-feedparser@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}rich>=9.0.0:textproc/py-rich@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}rss2gen>0:textproc/py-rss2gen@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyrss2gen>0:textproc/py-pyrss2gen@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}beautifulsoup>=4.5:www/py-beautifulsoup@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}cherrypy>=3.7.0:www/py-cherrypy@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}flask>=0.7:www/py-flask@${PY_FLAVOR} \ diff --git a/www/forgejo/Makefile b/www/forgejo/Makefile index 3cfdb6f7b8cd..b9e69c542c3d 100644 --- a/www/forgejo/Makefile +++ b/www/forgejo/Makefile @@ -1,7 +1,6 @@ PORTNAME= forgejo DISTVERSIONPREFIX= v -DISTVERSION= 1.21.10-0 -PORTREVISION= 1 +DISTVERSION= 7.0.2 CATEGORIES= www MASTER_SITES= https://codeberg.org/forgejo/forgejo/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/ DISTNAME= forgejo-src-${DISTVERSION} @@ -15,12 +14,12 @@ LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= git:devel/git -USES= cpe gmake go:1.21,no_targets +USES= cpe gmake go:1.22,no_targets USE_RC_SUBR= forgejo EXTRACT_AFTER_ARGS= --strip-components 1 -SUB_FILES+= app.ini.sample -SUB_LIST+= GITUSER=${USERS} +SUB_FILES= app.ini.sample pkg-message +SUB_LIST= GITUSER=${USERS} NO_WRKSUBDIR= yes @@ -54,10 +53,11 @@ DAEMONARGS= -f SUB_LIST+= DAEMONARGS="${DAEMONARGS}" SSP_UNSAFE= true -# Default LDFLAGS are incompatible with build -MAKE_ENV= LDFLAGS="${LDFLAGS} ${EXTRA_LDFLAGS}" +LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.CustomPath=${PREFIX}/etc/forgejo"'" +LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.AppWorkPath=${PREFIX}/share/forgejo"'" MAKE_ARGS= GOPATH=${WRKDIR} \ - TAGS="${GO_TAGS}" + TAGS="${GO_TAGS}" \ + GOFLAGS="-buildvcs=false" ALL_TARGET= backend MAKE_JOBS_UNSAFE= yes diff --git a/www/forgejo/distinfo b/www/forgejo/distinfo index 35e0c2d393a7..74fb0a430f7e 100644 --- a/www/forgejo/distinfo +++ b/www/forgejo/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712360403 -SHA256 (forgejo-src-1.21.10-0.tar.gz) = 0cc21835404e40355cf7125b479efebb1fecf2cc17d018d4d54521d75943caf5 -SIZE (forgejo-src-1.21.10-0.tar.gz) = 58820868 +TIMESTAMP = 1715265831 +SHA256 (forgejo-src-7.0.2.tar.gz) = 39b2079be7671f2248dcc36377ae20be65f20695d7f968ae227c0fc55dacca06 +SIZE (forgejo-src-7.0.2.tar.gz) = 54862292 diff --git a/www/forgejo/files/forgejo.in b/www/forgejo/files/forgejo.in index ad5aee48f95d..c635f3a9a9b1 100644 --- a/www/forgejo/files/forgejo.in +++ b/www/forgejo/files/forgejo.in @@ -17,8 +17,9 @@ load_rc_config $name : ${forgejo_user:="%%GITUSER%%"} : ${forgejo_enable:="NO"} +: ${forgejo_configcheck_enable:="YES"} : ${forgejo_facility:="daemon"} -: ${forgejo_priority:="debug"} +: ${forgejo_priority:="info"} : ${forgejo_shared:="%%PREFIX%%/share/${name}"} : ${forgejo_custom:="%%PREFIX%%/etc/${name}"} @@ -29,6 +30,7 @@ githome="$(eval echo ~${forgejo_user})" pidfile="/var/run/${name}.pid" start_cmd="${name}_start" +start_precmd="${name}_prestart" forgejo_start() { for d in /var/db/forgejo /var/log/forgejo; do @@ -48,4 +50,16 @@ forgejo_start() { $command } +forgejo_prestart() { + if checkyesno forgejo_configcheck_enable; then + if su -m ${forgejo_user} -c "%%PREFIX%%/sbin/${name} doctor check >/dev/null"; then + else + echo "cannot start ${name} because of configuration errors. Run" >&2 + echo " su -m git -c '${name} doctor check'" >&2 + echo "for further details" + return 1 + fi + fi +} + run_rc_command "$1" diff --git a/www/forgejo/files/pkg-message.in b/www/forgejo/files/pkg-message.in new file mode 100644 index 000000000000..03164efe7264 --- /dev/null +++ b/www/forgejo/files/pkg-message.in @@ -0,0 +1,27 @@ +[ +{ type: install + message: <<EOM +Before starting forgejo for the first time, you must set a number of +secrets in the configuration file. For your convenience, a sample file +has been copied to %%PREFIX%%/etc/forgejo/conf/app.ini. + +You need to replace every occurence of CHANGE_ME in the file with +sensible values. Please refer to the official documentation at +https://forgejo.org for details. + +You will also likely need to create directories for persistent storage. +Run + su -m git -c 'forgejo doctor check' +to check if all prerequisites have been met. +EOM +} +{ type: upgrade + maximum_version: "1.21" + message: <<EOM +Since forgejo version 7, the startup script will run forgejo doctor check +to verify that forgejo can be started successfully. If you are sure that +forgejo will start even if doctor has identified an issue, you can disable +the check by setting forgejo_configcheck_enabled=NO in rc.conf. +EOM +} +] diff --git a/www/forgejo/pkg-message b/www/forgejo/pkg-message deleted file mode 100644 index 5c8f0b5d39b4..000000000000 --- a/www/forgejo/pkg-message +++ /dev/null @@ -1,13 +0,0 @@ -[ -{ type: install - message: <<EOM -Before starting forgejo you must create the main configuration file. - - cp /usr/local/etc/forgejo/conf/app.ini.sample /usr/local/etc/forgejo/conf/app.ini - ${EDITOR} /usr/local/etc/forgejo/conf/app.ini - -You need to replace every occurence of CHANGE_ME in the file with sensitive -values. Please refer to the official documentation for details. -EOM -} -] diff --git a/www/galene/Makefile b/www/galene/Makefile index ba819300fc14..89d968b75d6e 100644 --- a/www/galene/Makefile +++ b/www/galene/Makefile @@ -1,5 +1,6 @@ PORTNAME= galene DISTVERSION= 0.8.2 +PORTREVISION= 1 CATEGORIES= www net-im MAINTAINER= bapt@FreeBSD.org diff --git a/www/galene/distinfo b/www/galene/distinfo index 7a55b34a3e97..897581d291e2 100644 --- a/www/galene/distinfo +++ b/www/galene/distinfo @@ -1,61 +1,61 @@ -TIMESTAMP = 1713266811 +TIMESTAMP = 1714062672 SHA256 (jech-galene-0.8.2-galene-0.8.2_GH0.tar.gz) = d97fa47b6f301396d4ef220cd648099e67471c00793872744e41b908bf898731 SIZE (jech-galene-0.8.2-galene-0.8.2_GH0.tar.gz) = 744541 -SHA256 (at-wat-ebml-go-v0.17.0_GH0.tar.gz) = ebdaa605a117ba86e45a405103435d164d40079dff6f0c3f28d08f4e76ad6c0f -SIZE (at-wat-ebml-go-v0.17.0_GH0.tar.gz) = 69862 +SHA256 (at-wat-ebml-go-v0.17.1_GH0.tar.gz) = f058fcf7f4da9f979531a0ba1f811fc34c8d9d30087ba8d442eef220e726cbe3 +SIZE (at-wat-ebml-go-v0.17.1_GH0.tar.gz) = 69882 SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152 SHA256 (go-yaml-yaml-v3.0.1_GH0.tar.gz) = cf05411540d3e6ef8f1fd88434b34f94cedaceb540329031d80e23b74540c4e5 SIZE (go-yaml-yaml-v3.0.1_GH0.tar.gz) = 91173 -SHA256 (golang-jwt-jwt-v4.5.0_GH0.tar.gz) = 00b1cc127cba09b4e4ea9efa5c0f18a36bb55e08b5eec0a222b8e1599a938077 -SIZE (golang-jwt-jwt-v4.5.0_GH0.tar.gz) = 53049 -SHA256 (golang-crypto-v0.15.0_GH0.tar.gz) = 7cdea3e9567cfb711002588942cf4098b443f62ef1d765acc7ac4d75fddc2fd3 -SIZE (golang-crypto-v0.15.0_GH0.tar.gz) = 1801439 -SHA256 (golang-net-v0.18.0_GH0.tar.gz) = 23ce994aa250e1f0c8c905df78d660d62d5bfdf32b9bfd4668c9f8e354f85ea3 -SIZE (golang-net-v0.18.0_GH0.tar.gz) = 1468569 -SHA256 (golang-sys-v0.14.0_GH0.tar.gz) = e1866095878c2ccf02d0eceff29d2563f7af56b771e7b98248a63d6ab6465771 -SIZE (golang-sys-v0.14.0_GH0.tar.gz) = 1441800 -SHA256 (google-uuid-v1.4.0_GH0.tar.gz) = d0a84f8e465446885550a291321bbf296f680242d53cd442dbb16287abcd777c -SIZE (google-uuid-v1.4.0_GH0.tar.gz) = 17962 +SHA256 (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 76d1c81a7cd38ed03309f770f60ac3417f16c75b4c53a0c01bb783863783fef0 +SIZE (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 61340 +SHA256 (golang-crypto-v0.22.0_GH0.tar.gz) = be0f461ea3ce13349996dca48fbb27537fd738aa6498fb38cfbf87a2ce31e082 +SIZE (golang-crypto-v0.22.0_GH0.tar.gz) = 1813353 +SHA256 (golang-net-v0.24.0_GH0.tar.gz) = 6fbc9f6ddc538c67affd1248d68ca85f69e0abe916181b1cd81323093afa96b9 +SIZE (golang-net-v0.24.0_GH0.tar.gz) = 1509016 +SHA256 (golang-sys-v0.19.0_GH0.tar.gz) = da82f3d99abd964483ec5d622ddf620e2492ec0a18c154475f35d938c4240c7b +SIZE (golang-sys-v0.19.0_GH0.tar.gz) = 1449493 +SHA256 (google-uuid-v1.6.0_GH0.tar.gz) = ee63376b5675376c60e055ed66e5f3651ccc703bd580c022b8ad00cea309252d +SIZE (google-uuid-v1.6.0_GH0.tar.gz) = 20896 SHA256 (gorilla-websocket-v1.5.0_GH0.tar.gz) = 5d86f9e1c76ff7ceca0747f78b79864fbaec9d440f4fdb03197466e5102a86b0 SIZE (gorilla-websocket-v1.5.0_GH0.tar.gz) = 54155 -SHA256 (jech-cert-aca735647728_GH0.tar.gz) = d2b7c711a7925012643cce6c9ee5cc34e667f54eb478d6163601e4ef46d2232e -SIZE (jech-cert-aca735647728_GH0.tar.gz) = 3363 +SHA256 (jech-cert-f491cf43a77d_GH0.tar.gz) = a31c5dc063e19e49e27454e9ffd12fd0895840a768aa030ac6c1ac1d451f2e9b +SIZE (jech-cert-f491cf43a77d_GH0.tar.gz) = 3756 SHA256 (jech-samplebuilder-6cbba09fc1c9_GH0.tar.gz) = 08082afa77f3083c0b15ed09fe27d43c525bc31af3662e13288dd167a609c2ad SIZE (jech-samplebuilder-6cbba09fc1c9_GH0.tar.gz) = 12428 -SHA256 (pion-datachannel-v1.5.5_GH0.tar.gz) = 88dc92b8b83759af29bf744e1a3d708a462966cfa77d9978575a7d6cd96c4766 -SIZE (pion-datachannel-v1.5.5_GH0.tar.gz) = 22496 -SHA256 (pion-dtls-v2.2.8_GH0.tar.gz) = 5e92db0b6705c85bf705b1f7158fca10b12c278d933825da5fe0cd106b063585 -SIZE (pion-dtls-v2.2.8_GH0.tar.gz) = 148922 -SHA256 (pion-ice-v2.3.11_GH0.tar.gz) = 4d4bc0b54b9db4f4361173b186ffc2b3cb368ce599f87416b2127e0e04d7ba30 -SIZE (pion-ice-v2.3.11_GH0.tar.gz) = 100838 -SHA256 (pion-interceptor-v0.1.25_GH0.tar.gz) = fa2293b83610ac22075fe31e91a439128b1bb74303671573ef21f7456fff5b2c -SIZE (pion-interceptor-v0.1.25_GH0.tar.gz) = 88492 +SHA256 (pion-datachannel-v1.5.6_GH0.tar.gz) = 545e3018afaa9f9ade1d11e9227bc536125a4617a5134350842c1c9d1f972e53 +SIZE (pion-datachannel-v1.5.6_GH0.tar.gz) = 19370 +SHA256 (pion-dtls-v2.2.10_GH0.tar.gz) = 2fb439251db981b9f2c61da6042acefb4624af28bd2149ee77c4fd78771eb714 +SIZE (pion-dtls-v2.2.10_GH0.tar.gz) = 150977 +SHA256 (pion-ice-v2.3.14_GH0.tar.gz) = 4abb75aa17e4f2612ddec2ad93c77c1d893b2ccc1cc187a8190fe16b04018291 +SIZE (pion-ice-v2.3.14_GH0.tar.gz) = 102138 +SHA256 (pion-interceptor-v0.1.28_GH0.tar.gz) = cac477d1562c472c9b337982e6927023a7748130ebbb879366138920230055ca +SIZE (pion-interceptor-v0.1.28_GH0.tar.gz) = 94540 SHA256 (pion-logging-v0.2.2_GH0.tar.gz) = 9e06f3dbf6f4fcf0e61e3a6406cac898fe3df86cb906bc9d73c7c4b466f0a9d6 SIZE (pion-logging-v0.2.2_GH0.tar.gz) = 6750 -SHA256 (pion-mdns-v0.0.9_GH0.tar.gz) = 9ae3b050dd2cd78c4cfe6218e4d3d5f624d117ceb8404c429878e85a7d52188c -SIZE (pion-mdns-v0.0.9_GH0.tar.gz) = 15605 +SHA256 (pion-mdns-v0.0.12_GH0.tar.gz) = d291ea4260996731e09103beb498f6e1b9fd3643af9aa8f39e0458f95d3e1c06 +SIZE (pion-mdns-v0.0.12_GH0.tar.gz) = 17490 SHA256 (pion-randutil-v0.1.0_GH0.tar.gz) = 4b0301915ebbfa77c8621cebf99c6c7d71651762a33ce4fa4e6af8994ecd4993 SIZE (pion-randutil-v0.1.0_GH0.tar.gz) = 7521 -SHA256 (pion-rtcp-v1.2.12_GH0.tar.gz) = f5950db45bb50026c32f3c34ce935f13b124740e7d92bfeb1e1da3798eee127b -SIZE (pion-rtcp-v1.2.12_GH0.tar.gz) = 60084 -SHA256 (pion-rtp-v1.8.3_GH0.tar.gz) = 3a37d002aed62e3bdf061709be4e711ba162414cba788b8abef6bc5149000de5 -SIZE (pion-rtp-v1.8.3_GH0.tar.gz) = 53025 -SHA256 (pion-sctp-v1.8.9_GH0.tar.gz) = 0f70a396d3b1fbd17b9c270b2f0d66443bbd77b6fda2d1fa4f436733e53e6389 -SIZE (pion-sctp-v1.8.9_GH0.tar.gz) = 87124 -SHA256 (pion-sdp-v3.0.6_GH0.tar.gz) = ceae9d450b92db03c2dd817213fa39f8bf152e172d51129decfd1a4cd77e42dc -SIZE (pion-sdp-v3.0.6_GH0.tar.gz) = 30415 +SHA256 (pion-rtcp-v1.2.14_GH0.tar.gz) = ab0674ed126edfafc8dcb1c70d269cf04d6498983e5ebe92c9c8ea776234d660 +SIZE (pion-rtcp-v1.2.14_GH0.tar.gz) = 59682 +SHA256 (pion-rtp-v1.8.5_GH0.tar.gz) = d59cb9e7c525c8c3afe92575908e94795443e499577a63145d31a63d74ed10a6 +SIZE (pion-rtp-v1.8.5_GH0.tar.gz) = 57509 +SHA256 (pion-sctp-v1.8.15_GH0.tar.gz) = 77a15e01203763b00bc9a9d978ae4682f88b6bf1e06cdd165fcab90542faf1b5 +SIZE (pion-sctp-v1.8.15_GH0.tar.gz) = 93883 +SHA256 (pion-sdp-v3.0.9_GH0.tar.gz) = d0de98412c90f90379297f00c7b766a8bbf129672d2e896d3bcd780d37f35e60 +SIZE (pion-sdp-v3.0.9_GH0.tar.gz) = 28358 SHA256 (pion-srtp-v2.0.18_GH0.tar.gz) = 74965fdddce4b454d3de78528c761f70696ba30d1e78932c2ab59594a2caf884 SIZE (pion-srtp-v2.0.18_GH0.tar.gz) = 37933 SHA256 (pion-stun-v0.6.1_GH0.tar.gz) = 6abda07e177b9f65412e3b11dae6a35663869ebecd2d6511281850c93d8f9e59 SIZE (pion-stun-v0.6.1_GH0.tar.gz) = 91808 SHA256 (pion-transport-v2.2.4_GH0.tar.gz) = 067589a78036c1f2cd511aa6154a29c4550235fcc365b9040c31c68f805f9781 SIZE (pion-transport-v2.2.4_GH0.tar.gz) = 88277 -SHA256 (pion-turn-v2.1.4_GH0.tar.gz) = 31d0da1bed5132ebbb8e5414fe495aa9bba2ee0c21b1e2f8006d1f7e67e30b49 -SIZE (pion-turn-v2.1.4_GH0.tar.gz) = 131170 -SHA256 (pion-webrtc-v3.2.23_GH0.tar.gz) = 0ca5c3f8ee65687ccbbe801e2ea52f8b4526b8ba7adb333f8bdc2b25a4c3a8e1 -SIZE (pion-webrtc-v3.2.23_GH0.tar.gz) = 375520 +SHA256 (pion-turn-v2.1.5_GH0.tar.gz) = eb0f4033bc55a69657fa8cc30b19ad3746ea4749af270b89aa6afb528d1f96bf +SIZE (pion-turn-v2.1.5_GH0.tar.gz) = 131411 +SHA256 (pion-webrtc-v3.2.37_GH0.tar.gz) = f1a65c4d20798297472266685e915bd1b08c7969bd9bbcaf322c1fe198724da1 +SIZE (pion-webrtc-v3.2.37_GH0.tar.gz) = 378234 SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398 -SHA256 (stretchr-testify-v1.8.4_GH0.tar.gz) = 0d3e82b04a05d9428a2a2aec8776bd0a07f14f5d1b4fa0a3676526ca8259fd62 -SIZE (stretchr-testify-v1.8.4_GH0.tar.gz) = 104427 +SHA256 (stretchr-testify-v1.9.0_GH0.tar.gz) = ee651d4d4427d55096007190398102383498e6b5cf97ea9e89ad6e72b4115fbb +SIZE (stretchr-testify-v1.9.0_GH0.tar.gz) = 108663 diff --git a/www/garage/Makefile b/www/garage/Makefile index 9216e1139014..beb99675f10f 100644 --- a/www/garage/Makefile +++ b/www/garage/Makefile @@ -1,6 +1,6 @@ PORTNAME= garage -DISTVERSION= 0.9.0 -PORTREVISION= 3 +DISTVERSION= 1.0.0 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://git.deuxfleurs.fr/Deuxfleurs/${PORTNAME}/archive/v${PORTVERSION}.tar.gz?dummy=/ DISTFILES= ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} diff --git a/www/garage/Makefile.crates b/www/garage/Makefile.crates index fed964f0b5e1..1023221434c9 100644 --- a/www/garage/Makefile.crates +++ b/www/garage/Makefile.crates @@ -1,239 +1,263 @@ CARGO_CRATES= addr2line-0.21.0 \ adler-1.0.2 \ - ahash-0.8.3 \ - aho-corasick-1.0.4 \ + aead-0.5.2 \ + aes-0.8.4 \ + aes-gcm-0.10.3 \ + ahash-0.8.7 \ + aho-corasick-1.1.2 \ allocator-api2-0.2.16 \ android-tzdata-0.1.1 \ android_system_properties-0.1.5 \ - anstream-0.5.0 \ - anstyle-1.0.2 \ - anstyle-parse-0.2.1 \ - anstyle-query-1.0.0 \ - anstyle-wincon-2.1.0 \ - anyhow-1.0.75 \ + anstream-0.6.11 \ + anstyle-1.0.5 \ + anstyle-parse-0.2.3 \ + anstyle-query-1.0.2 \ + anstyle-wincon-3.0.2 \ + anyhow-1.0.79 \ arc-swap-1.6.0 \ + argon2-0.5.3 \ arrayvec-0.5.2 \ assert-json-diff-2.0.2 \ - async-compression-0.4.1 \ + async-compression-0.4.6 \ async-stream-0.3.5 \ async-stream-impl-0.3.5 \ - async-trait-0.1.73 \ + async-trait-0.1.77 \ autocfg-1.1.0 \ - aws-config-0.55.3 \ - aws-credential-types-0.55.3 \ - aws-endpoint-0.55.3 \ - aws-http-0.55.3 \ - aws-sdk-s3-0.28.0 \ - aws-sdk-sso-0.28.0 \ - aws-sdk-sts-0.28.0 \ - aws-sig-auth-0.55.3 \ - aws-sigv4-0.55.3 \ - aws-smithy-async-0.55.3 \ - aws-smithy-checksums-0.55.3 \ - aws-smithy-client-0.55.3 \ - aws-smithy-eventstream-0.55.3 \ - aws-smithy-http-0.55.3 \ - aws-smithy-http-tower-0.55.3 \ - aws-smithy-json-0.55.3 \ - aws-smithy-query-0.55.3 \ - aws-smithy-types-0.55.3 \ - aws-smithy-xml-0.55.3 \ - aws-types-0.55.3 \ + aws-config-1.1.4 \ + aws-credential-types-1.1.4 \ + aws-runtime-1.1.4 \ + aws-sdk-config-1.13.0 \ + aws-sdk-s3-1.14.0 \ + aws-sdk-sso-1.12.0 \ + aws-sdk-ssooidc-1.12.0 \ + aws-sdk-sts-1.12.0 \ + aws-sigv4-1.1.4 \ + aws-smithy-async-1.1.4 \ + aws-smithy-checksums-0.60.4 \ + aws-smithy-eventstream-0.60.4 \ + aws-smithy-http-0.60.4 \ + aws-smithy-json-0.60.4 \ + aws-smithy-query-0.60.4 \ + aws-smithy-runtime-1.1.4 \ + aws-smithy-runtime-api-1.1.4 \ + aws-smithy-types-1.1.4 \ + aws-smithy-xml-0.60.4 \ + aws-types-1.1.4 \ backoff-0.4.0 \ backtrace-0.3.69 \ + base16ct-0.1.1 \ base64-0.13.1 \ - base64-0.21.3 \ + base64-0.21.7 \ base64-simd-0.8.0 \ + base64ct-1.6.0 \ bincode-1.3.3 \ bitflags-1.3.2 \ - bitflags-2.4.0 \ + bitflags-2.4.2 \ blake2-0.10.6 \ block-buffer-0.10.4 \ - bumpalo-3.13.0 \ - bytemuck-1.13.1 \ - byteorder-1.4.3 \ - bytes-1.4.0 \ - bytes-utils-0.1.3 \ + bumpalo-3.14.0 \ + bytemuck-1.14.1 \ + byteorder-1.5.0 \ + bytes-1.5.0 \ + bytes-utils-0.1.4 \ bytesize-1.3.0 \ cc-1.0.83 \ cfg-if-1.0.0 \ cfg_aliases-0.1.1 \ - chrono-0.4.26 \ + chrono-0.4.33 \ + cipher-0.4.4 \ clap-2.34.0 \ - clap-4.4.0 \ - clap_builder-4.4.0 \ - clap_derive-4.4.0 \ - clap_lex-0.5.1 \ + clap-4.4.18 \ + clap_builder-4.4.18 \ + clap_derive-4.4.7 \ + clap_lex-0.6.0 \ colorchoice-1.0.0 \ - core-foundation-0.9.3 \ - core-foundation-sys-0.8.4 \ - cpufeatures-0.2.9 \ + const-oid-0.9.6 \ + core-foundation-0.9.4 \ + core-foundation-sys-0.8.6 \ + cpufeatures-0.2.12 \ crc32c-0.6.4 \ - crc32fast-1.3.2 \ - crossbeam-channel-0.5.8 \ - crossbeam-epoch-0.9.15 \ - crossbeam-queue-0.3.8 \ - crossbeam-utils-0.8.16 \ + crc32fast-1.4.0 \ + crossbeam-channel-0.5.11 \ + crossbeam-queue-0.3.11 \ + crossbeam-utils-0.8.19 \ + crypto-bigint-0.4.9 \ + crypto-bigint-0.5.5 \ crypto-common-0.1.6 \ - darling-0.14.4 \ - darling_core-0.14.4 \ - darling_macro-0.14.4 \ + ctr-0.9.2 \ + darling-0.20.5 \ + darling_core-0.20.5 \ + darling_macro-0.20.5 \ dashmap-4.0.2 \ - deranged-0.3.8 \ + der-0.6.1 \ + deranged-0.3.11 \ derivative-2.2.0 \ digest-0.10.7 \ - dirs-next-2.0.0 \ - dirs-sys-next-0.1.2 \ - dyn-clone-1.0.13 \ + dyn-clone-1.0.16 \ + ecdsa-0.14.8 \ either-1.9.0 \ + elliptic-curve-0.12.3 \ encoding_rs-0.8.33 \ - env_logger-0.10.0 \ + env_logger-0.10.2 \ equivalent-1.0.1 \ err-derive-0.3.1 \ - errno-0.3.2 \ - errno-dragonfly-0.1.2 \ - fallible-iterator-0.2.0 \ + errno-0.3.8 \ + fallible-iterator-0.3.0 \ fallible-streaming-iterator-0.1.9 \ - fastrand-1.9.0 \ - fastrand-2.0.0 \ + fastrand-2.0.1 \ + ff-0.12.1 \ fixedbitset-0.4.2 \ fnv-1.0.7 \ - form_urlencoded-1.2.0 \ - fs2-0.4.3 \ - futures-0.3.28 \ - futures-channel-0.3.28 \ - futures-core-0.3.28 \ - futures-executor-0.3.28 \ - futures-io-0.3.28 \ - futures-macro-0.3.28 \ - futures-sink-0.3.28 \ - futures-task-0.3.28 \ - futures-util-0.3.28 \ - fxhash-0.2.1 \ + form_urlencoded-1.2.1 \ + futures-0.3.30 \ + futures-channel-0.3.30 \ + futures-core-0.3.30 \ + futures-executor-0.3.30 \ + futures-io-0.3.30 \ + futures-macro-0.3.30 \ + futures-sink-0.3.30 \ + futures-task-0.3.30 \ + futures-util-0.3.30 \ generic-array-0.14.7 \ gethostname-0.4.3 \ - getrandom-0.2.10 \ - gimli-0.28.0 \ - git-version-0.3.5 \ - git-version-macro-0.3.5 \ - h2-0.3.21 \ + getrandom-0.2.12 \ + ghash-0.5.1 \ + gimli-0.28.1 \ + git-version-0.3.9 \ + git-version-macro-0.3.9 \ + group-0.12.1 \ + h2-0.3.24 \ + h2-0.4.2 \ hashbrown-0.12.3 \ - hashbrown-0.14.0 \ - hashlink-0.8.3 \ + hashbrown-0.14.3 \ + hashlink-0.9.0 \ heck-0.3.3 \ heck-0.4.1 \ heed-0.11.0 \ heed-traits-0.8.0 \ heed-types-0.8.0 \ - hermit-abi-0.3.2 \ + hermit-abi-0.3.4 \ hex-0.4.3 \ hexdump-0.1.1 \ hmac-0.12.1 \ - http-0.2.9 \ - http-body-0.4.5 \ + home-0.5.9 \ + http-0.2.11 \ + http-1.0.0 \ + http-body-0.4.6 \ + http-body-1.0.0 \ + http-body-util-0.1.0 \ http-range-0.1.5 \ http-range-header-0.3.1 \ httparse-1.8.0 \ httpdate-1.0.3 \ humantime-2.1.0 \ - hyper-0.14.27 \ - hyper-rustls-0.23.2 \ - hyper-rustls-0.24.1 \ + hyper-0.14.28 \ + hyper-1.1.0 \ + hyper-rustls-0.24.2 \ + hyper-rustls-0.26.0 \ hyper-timeout-0.4.1 \ - hyperlocal-0.8.0 \ - iana-time-zone-0.1.57 \ + hyper-util-0.1.3 \ + iana-time-zone-0.1.60 \ iana-time-zone-haiku-0.1.2 \ ident_case-1.0.1 \ - idna-0.4.0 \ + idna-0.5.0 \ indexmap-1.9.3 \ - indexmap-2.0.0 \ + indexmap-2.2.2 \ + inout-0.1.3 \ instant-0.1.12 \ - ipnet-2.8.0 \ + ipnet-2.9.0 \ ipnetwork-0.20.0 \ - is-terminal-0.4.9 \ + is-terminal-0.4.12 \ itertools-0.4.19 \ itertools-0.10.5 \ - itoa-1.0.9 \ - jobserver-0.1.26 \ - js-sys-0.3.64 \ - json-patch-0.2.7 \ - jsonpath_lib-0.3.0 \ - k8s-openapi-0.16.0 \ - kube-0.75.0 \ - kube-client-0.75.0 \ - kube-core-0.75.0 \ - kube-derive-0.75.0 \ - kube-runtime-0.75.0 \ + itertools-0.12.1 \ + itoa-1.0.10 \ + jobserver-0.1.27 \ + js-sys-0.3.67 \ + json-patch-1.2.0 \ + jsonpath-rust-0.4.0 \ + k8s-openapi-0.21.0 \ + kube-0.88.1 \ + kube-client-0.88.1 \ + kube-core-0.88.1 \ + kube-derive-0.88.1 \ + kube-runtime-0.88.1 \ kuska-handshake-0.2.0 \ kuska-sodiumoxide-0.2.5-0 \ lazy_static-1.4.0 \ - libc-0.2.147 \ + libc-0.2.153 \ libsodium-sys-0.2.7 \ - libsqlite3-sys-0.26.0 \ - linked-hash-map-0.5.6 \ - linux-raw-sys-0.4.5 \ + libsqlite3-sys-0.28.0 \ + linux-raw-sys-0.4.13 \ lmdb-rkv-sys-0.11.2 \ - lock_api-0.4.10 \ + lock_api-0.4.11 \ log-0.4.20 \ matchers-0.1.0 \ - md-5-0.10.5 \ - memchr-2.5.0 \ - memoffset-0.9.0 \ + md-5-0.10.6 \ + memchr-2.7.1 \ mime-0.3.17 \ minimal-lexical-0.2.1 \ - miniz_oxide-0.7.1 \ - mio-0.8.8 \ - mktemp-0.5.0 \ - multer-2.1.0 \ + miniz_oxide-0.7.2 \ + mio-0.8.10 \ + mktemp-0.5.1 \ + multer-3.0.0 \ multimap-0.8.3 \ - netapp-0.10.0 \ nix-0.27.1 \ no-std-net-0.6.0 \ nom-7.1.3 \ - nom8-0.2.0 \ nu-ansi-term-0.46.0 \ num-0.2.1 \ num-bigint-0.2.6 \ num-complex-0.2.4 \ + num-conv-0.1.0 \ num-integer-0.1.45 \ num-iter-0.1.43 \ num-rational-0.2.4 \ - num-traits-0.2.16 \ + num-traits-0.2.17 \ num_cpus-1.16.0 \ - object-0.32.0 \ - once_cell-1.18.0 \ + object-0.32.2 \ + once_cell-1.19.0 \ + opaque-debug-0.3.1 \ openssl-probe-0.1.5 \ opentelemetry-0.17.0 \ opentelemetry-contrib-0.9.0 \ opentelemetry-otlp-0.10.0 \ opentelemetry-prometheus-0.10.0 \ - ordered-float-2.10.0 \ + ordered-float-2.10.1 \ outref-0.5.1 \ overload-0.1.1 \ + p256-0.11.1 \ page_size-0.4.2 \ parking_lot-0.11.2 \ parking_lot-0.12.1 \ parking_lot_core-0.8.6 \ - parking_lot_core-0.9.8 \ + parking_lot_core-0.9.9 \ parse_duration-2.1.1 \ + password-hash-0.5.0 \ paste-1.0.14 \ - pem-1.1.1 \ - percent-encoding-2.3.0 \ + pem-3.0.3 \ + percent-encoding-2.3.1 \ + pest-2.7.7 \ + pest_derive-2.7.7 \ + pest_generator-2.7.7 \ + pest_meta-2.7.7 \ petgraph-0.6.4 \ - pin-project-1.1.3 \ - pin-project-internal-1.1.3 \ + pin-project-1.1.4 \ + pin-project-internal-1.1.4 \ pin-project-lite-0.2.13 \ pin-utils-0.1.0 \ - pkg-config-0.3.27 \ - pnet_base-0.33.0 \ - pnet_datalink-0.33.0 \ - pnet_sys-0.33.0 \ + pkcs8-0.9.0 \ + pkg-config-0.3.29 \ + pnet_base-0.34.0 \ + pnet_datalink-0.34.0 \ + pnet_sys-0.34.0 \ + polyval-0.6.2 \ + powerfmt-0.2.0 \ ppv-lite86-0.2.17 \ pretty_env_logger-0.5.0 \ proc-macro-error-1.0.4 \ proc-macro-error-attr-1.0.4 \ - proc-macro-hack-0.5.20+deprecated \ - proc-macro2-1.0.66 \ + proc-macro2-1.0.78 \ prometheus-0.13.3 \ prost-0.9.0 \ prost-build-0.9.0 \ @@ -241,64 +265,72 @@ CARGO_CRATES= addr2line-0.21.0 \ prost-types-0.9.0 \ protobuf-2.28.0 \ quick-xml-0.26.0 \ - quote-1.0.33 \ + quote-1.0.35 \ + r2d2-0.8.10 \ + r2d2_sqlite-0.24.0 \ rand-0.8.5 \ rand_chacha-0.3.1 \ rand_core-0.6.4 \ redox_syscall-0.2.16 \ - redox_syscall-0.3.5 \ - redox_users-0.4.3 \ - regex-1.9.4 \ + redox_syscall-0.4.1 \ + regex-1.10.3 \ regex-automata-0.1.10 \ - regex-automata-0.3.7 \ + regex-automata-0.4.5 \ + regex-lite-0.1.5 \ regex-syntax-0.6.29 \ - regex-syntax-0.7.5 \ - reqwest-0.11.20 \ - ring-0.16.20 \ + regex-syntax-0.8.2 \ + reqwest-0.11.24 \ + rfc6979-0.3.1 \ + ring-0.17.7 \ rmp-0.8.12 \ rmp-serde-1.1.2 \ - roxmltree-0.18.0 \ - rusqlite-0.29.0 \ + roxmltree-0.19.0 \ + rusqlite-0.31.0 \ rustc-demangle-0.1.23 \ rustc_version-0.4.0 \ - rustix-0.38.9 \ - rustls-0.20.8 \ - rustls-0.21.6 \ + rustix-0.38.31 \ + rustls-0.21.10 \ + rustls-0.22.2 \ rustls-native-certs-0.6.3 \ - rustls-pemfile-1.0.3 \ - rustls-webpki-0.101.4 \ + rustls-native-certs-0.7.0 \ + rustls-pemfile-1.0.4 \ + rustls-pemfile-2.0.0 \ + rustls-pki-types-1.2.0 \ + rustls-webpki-0.101.7 \ + rustls-webpki-0.102.2 \ rustversion-1.0.14 \ - ryu-1.0.15 \ + ryu-1.0.16 \ same-file-1.0.6 \ - schannel-0.1.22 \ - schemars-0.8.12 \ - schemars_derive-0.8.12 \ + schannel-0.1.23 \ + scheduled-thread-pool-0.2.7 \ + schemars-0.8.16 \ + schemars_derive-0.8.16 \ scopeguard-1.2.0 \ - sct-0.7.0 \ + sct-0.7.1 \ + sec1-0.3.0 \ secrecy-0.8.0 \ security-framework-2.9.2 \ security-framework-sys-2.9.1 \ - semver-1.0.18 \ - serde-1.0.188 \ + semver-1.0.21 \ + serde-1.0.196 \ serde-value-0.7.0 \ - serde_bytes-0.11.12 \ - serde_derive-1.0.188 \ + serde_bytes-0.11.14 \ + serde_derive-1.0.196 \ serde_derive_internals-0.26.0 \ - serde_json-1.0.105 \ - serde_spanned-0.6.3 \ + serde_json-1.0.113 \ + serde_spanned-0.6.5 \ serde_urlencoded-0.7.1 \ - serde_yaml-0.8.26 \ - sha1-0.10.5 \ - sha2-0.10.7 \ - sharded-slab-0.1.4 \ + serde_yaml-0.9.31 \ + sha1-0.10.6 \ + sha2-0.10.8 \ + sharded-slab-0.1.7 \ signal-hook-registry-1.4.1 \ + signature-1.6.4 \ slab-0.4.9 \ - sled-0.34.7 \ - smallvec-1.11.0 \ - socket2-0.4.9 \ - socket2-0.5.3 \ - spin-0.5.2 \ + smallvec-1.13.1 \ + socket2-0.5.5 \ spin-0.9.8 \ + spki-0.6.0 \ static_init-1.0.3 \ static_init_macro-1.0.2 \ strsim-0.10.0 \ @@ -306,95 +338,110 @@ CARGO_CRATES= addr2line-0.21.0 \ structopt-derive-0.4.18 \ subtle-2.5.0 \ syn-1.0.109 \ - syn-2.0.29 \ + syn-2.0.48 \ + sync_wrapper-0.1.2 \ synchronoise-1.0.1 \ synstructure-0.12.6 \ - tempfile-3.8.0 \ - termcolor-1.2.0 \ + syslog-tracing-0.3.0 \ + system-configuration-0.5.1 \ + system-configuration-sys-0.5.0 \ + tempfile-3.9.0 \ + termcolor-1.4.1 \ textwrap-0.11.0 \ - thiserror-1.0.47 \ - thiserror-impl-1.0.47 \ + thiserror-1.0.56 \ + thiserror-impl-1.0.56 \ thread_local-1.1.7 \ - time-0.1.45 \ - time-0.3.28 \ - time-core-0.1.1 \ - time-macros-0.2.14 \ - timeago-0.4.1 \ + time-0.3.34 \ + time-core-0.1.2 \ + time-macros-0.2.17 \ + timeago-0.4.2 \ tinyvec-1.6.0 \ tinyvec_macros-0.1.1 \ - tokio-1.32.0 \ + tokio-1.36.0 \ tokio-io-timeout-1.2.0 \ - tokio-macros-2.1.0 \ - tokio-rustls-0.23.4 \ + tokio-macros-2.2.0 \ tokio-rustls-0.24.1 \ + tokio-rustls-0.25.0 \ tokio-stream-0.1.14 \ tokio-util-0.6.10 \ - tokio-util-0.7.8 \ - toml-0.6.0 \ - toml_datetime-0.5.1 \ - toml_edit-0.18.1 \ + tokio-util-0.7.10 \ + toml-0.8.10 \ + toml_datetime-0.6.5 \ + toml_edit-0.22.5 \ tonic-0.6.2 \ tonic-build-0.6.2 \ tower-0.4.13 \ - tower-http-0.3.5 \ + tower-http-0.4.4 \ tower-layer-0.3.2 \ tower-service-0.3.2 \ - tracing-0.1.37 \ - tracing-attributes-0.1.26 \ - tracing-core-0.1.31 \ + tracing-0.1.40 \ + tracing-attributes-0.1.27 \ + tracing-core-0.1.32 \ tracing-futures-0.2.5 \ - tracing-log-0.1.3 \ - tracing-subscriber-0.3.17 \ - treediff-3.0.2 \ - try-lock-0.2.4 \ - typenum-1.16.0 \ - unicode-bidi-0.3.13 \ - unicode-ident-1.0.11 \ + tracing-log-0.2.0 \ + tracing-subscriber-0.3.18 \ + treediff-4.0.3 \ + try-lock-0.2.5 \ + typenum-1.17.0 \ + ucd-trie-0.1.6 \ + unicode-bidi-0.3.15 \ + unicode-ident-1.0.12 \ unicode-normalization-0.1.22 \ unicode-segmentation-1.10.1 \ - unicode-width-0.1.10 \ + unicode-width-0.1.11 \ unicode-xid-0.2.4 \ - untrusted-0.7.1 \ - url-2.4.0 \ + universal-hash-0.5.1 \ + unsafe-libyaml-0.2.10 \ + untrusted-0.9.0 \ + url-2.5.0 \ urlencoding-2.1.3 \ utf8parse-0.2.1 \ - uuid-1.2.2 \ + uuid-1.4.1 \ valuable-0.1.0 \ vcpkg-0.2.15 \ version_check-0.9.4 \ vsimd-0.8.0 \ - walkdir-2.3.3 \ + walkdir-2.4.0 \ want-0.3.1 \ - wasi-0.10.0+wasi-snapshot-preview1 \ wasi-0.11.0+wasi-snapshot-preview1 \ - wasm-bindgen-0.2.87 \ - wasm-bindgen-backend-0.2.87 \ - wasm-bindgen-futures-0.4.37 \ - wasm-bindgen-macro-0.2.87 \ - wasm-bindgen-macro-support-0.2.87 \ - wasm-bindgen-shared-0.2.87 \ - web-sys-0.3.64 \ - webpki-0.22.0 \ - which-4.4.0 \ + wasm-bindgen-0.2.90 \ + wasm-bindgen-backend-0.2.90 \ + wasm-bindgen-futures-0.4.40 \ + wasm-bindgen-macro-0.2.90 \ + wasm-bindgen-macro-support-0.2.90 \ + wasm-bindgen-shared-0.2.90 \ + web-sys-0.3.67 \ + which-4.4.2 \ winapi-0.3.9 \ winapi-i686-pc-windows-gnu-0.4.0 \ - winapi-util-0.1.5 \ + winapi-util-0.1.6 \ winapi-x86_64-pc-windows-gnu-0.4.0 \ - windows-0.48.0 \ + windows-core-0.52.0 \ windows-sys-0.48.0 \ + windows-sys-0.52.0 \ windows-targets-0.48.5 \ + windows-targets-0.52.0 \ windows_aarch64_gnullvm-0.48.5 \ + windows_aarch64_gnullvm-0.52.0 \ windows_aarch64_msvc-0.48.5 \ + windows_aarch64_msvc-0.52.0 \ windows_i686_gnu-0.48.5 \ + windows_i686_gnu-0.52.0 \ windows_i686_msvc-0.48.5 \ + windows_i686_msvc-0.52.0 \ windows_x86_64_gnu-0.48.5 \ + windows_x86_64_gnu-0.52.0 \ windows_x86_64_gnullvm-0.48.5 \ + windows_x86_64_gnullvm-0.52.0 \ windows_x86_64_msvc-0.48.5 \ + windows_x86_64_msvc-0.52.0 \ + winnow-0.6.1 \ winreg-0.50.0 \ - xmlparser-0.13.5 \ - xxhash-rust-0.8.6 \ - yaml-rust-0.4.5 \ - zeroize-1.6.0 \ - zstd-0.12.4 \ - zstd-safe-6.0.6 \ - zstd-sys-2.0.8+zstd.1.5.5 + xmlparser-0.13.6 \ + xxhash-rust-0.8.8 \ + zerocopy-0.7.32 \ + zerocopy-derive-0.7.32 \ + zeroize-1.7.0 \ + zstd-0.13.0 \ + zstd-safe-7.0.0 \ + zstd-sys-2.0.9+zstd.1.5.5 diff --git a/www/garage/distinfo b/www/garage/distinfo index b8522b7f8c1c..d652771df3a1 100644 --- a/www/garage/distinfo +++ b/www/garage/distinfo @@ -1,118 +1,130 @@ -TIMESTAMP = 1703162342 -SHA256 (garage-0.9.0.tar.gz) = 1d0d09053dd0b5bba89c73e11c568ea28aaedd92db7af618a4dd514d3a7e6222 -SIZE (garage-0.9.0.tar.gz) = 25350015 +TIMESTAMP = 1715865289 +SHA256 (garage-1.0.0.tar.gz) = 70fa89f732a3de4bb2d1158a2e89c521a993a734eb24b6bd65e79c207c2e8868 +SIZE (garage-1.0.0.tar.gz) = 42459468 SHA256 (rust/crates/addr2line-0.21.0.crate) = 8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb SIZE (rust/crates/addr2line-0.21.0.crate) = 40807 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe SIZE (rust/crates/adler-1.0.2.crate) = 12778 -SHA256 (rust/crates/ahash-0.8.3.crate) = 2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f -SIZE (rust/crates/ahash-0.8.3.crate) = 42416 -SHA256 (rust/crates/aho-corasick-1.0.4.crate) = 6748e8def348ed4d14996fa801f4122cd763fff530258cdc03f64b25f89d3a5a -SIZE (rust/crates/aho-corasick-1.0.4.crate) = 171175 +SHA256 (rust/crates/aead-0.5.2.crate) = d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0 +SIZE (rust/crates/aead-0.5.2.crate) = 15509 +SHA256 (rust/crates/aes-0.8.4.crate) = b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0 +SIZE (rust/crates/aes-0.8.4.crate) = 124812 +SHA256 (rust/crates/aes-gcm-0.10.3.crate) = 831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1 +SIZE (rust/crates/aes-gcm-0.10.3.crate) = 148991 +SHA256 (rust/crates/ahash-0.8.7.crate) = 77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01 +SIZE (rust/crates/ahash-0.8.7.crate) = 42894 +SHA256 (rust/crates/aho-corasick-1.1.2.crate) = b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0 +SIZE (rust/crates/aho-corasick-1.1.2.crate) = 183136 SHA256 (rust/crates/allocator-api2-0.2.16.crate) = 0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5 SIZE (rust/crates/allocator-api2-0.2.16.crate) = 59025 SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0 SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 -SHA256 (rust/crates/anstream-0.5.0.crate) = b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c -SIZE (rust/crates/anstream-0.5.0.crate) = 19646 -SHA256 (rust/crates/anstyle-1.0.2.crate) = 15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea -SIZE (rust/crates/anstyle-1.0.2.crate) = 13983 -SHA256 (rust/crates/anstyle-parse-0.2.1.crate) = 938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333 -SIZE (rust/crates/anstyle-parse-0.2.1.crate) = 24802 -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-2.1.0.crate) = 58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd -SIZE (rust/crates/anstyle-wincon-2.1.0.crate) = 11757 -SHA256 (rust/crates/anyhow-1.0.75.crate) = a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6 -SIZE (rust/crates/anyhow-1.0.75.crate) = 43901 +SHA256 (rust/crates/anstream-0.6.11.crate) = 6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5 +SIZE (rust/crates/anstream-0.6.11.crate) = 30239 +SHA256 (rust/crates/anstyle-1.0.5.crate) = 2faccea4cc4ab4a667ce676a30e8ec13922a692c99bb8f5b11f1502c72e04220 +SIZE (rust/crates/anstyle-1.0.5.crate) = 14371 +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.79.crate) = 080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca +SIZE (rust/crates/anyhow-1.0.79.crate) = 44931 SHA256 (rust/crates/arc-swap-1.6.0.crate) = bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6 SIZE (rust/crates/arc-swap-1.6.0.crate) = 67342 +SHA256 (rust/crates/argon2-0.5.3.crate) = 3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072 +SIZE (rust/crates/argon2-0.5.3.crate) = 28795 SHA256 (rust/crates/arrayvec-0.5.2.crate) = 23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b SIZE (rust/crates/arrayvec-0.5.2.crate) = 27838 SHA256 (rust/crates/assert-json-diff-2.0.2.crate) = 47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12 SIZE (rust/crates/assert-json-diff-2.0.2.crate) = 10874 -SHA256 (rust/crates/async-compression-0.4.1.crate) = 62b74f44609f0f91493e3082d3734d98497e094777144380ea4db9f9905dd5b6 -SIZE (rust/crates/async-compression-0.4.1.crate) = 97688 +SHA256 (rust/crates/async-compression-0.4.6.crate) = a116f46a969224200a0a97f29cfd4c50e7534e4b4826bd23ea2c3c533039c82c +SIZE (rust/crates/async-compression-0.4.6.crate) = 99437 SHA256 (rust/crates/async-stream-0.3.5.crate) = cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51 SIZE (rust/crates/async-stream-0.3.5.crate) = 11916 SHA256 (rust/crates/async-stream-impl-0.3.5.crate) = 16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193 SIZE (rust/crates/async-stream-impl-0.3.5.crate) = 4173 -SHA256 (rust/crates/async-trait-0.1.73.crate) = bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0 -SIZE (rust/crates/async-trait-0.1.73.crate) = 28654 +SHA256 (rust/crates/async-trait-0.1.77.crate) = c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9 +SIZE (rust/crates/async-trait-0.1.77.crate) = 29986 SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 -SHA256 (rust/crates/aws-config-0.55.3.crate) = bcdcf0d683fe9c23d32cf5b53c9918ea0a500375a9fb20109802552658e576c9 -SIZE (rust/crates/aws-config-0.55.3.crate) = 113897 -SHA256 (rust/crates/aws-credential-types-0.55.3.crate) = 1fcdb2f7acbc076ff5ad05e7864bdb191ca70a6fd07668dc3a1a8bcd051de5ae -SIZE (rust/crates/aws-credential-types-0.55.3.crate) = 18279 -SHA256 (rust/crates/aws-endpoint-0.55.3.crate) = 8cce1c41a6cfaa726adee9ebb9a56fcd2bbfd8be49fd8a04c5e20fd968330b04 -SIZE (rust/crates/aws-endpoint-0.55.3.crate) = 6942 -SHA256 (rust/crates/aws-http-0.55.3.crate) = aadbc44e7a8f3e71c8b374e03ecd972869eb91dd2bc89ed018954a52ba84bc44 -SIZE (rust/crates/aws-http-0.55.3.crate) = 22987 -SHA256 (rust/crates/aws-sdk-s3-0.28.0.crate) = fba197193cbb4bcb6aad8d99796b2291f36fa89562ded5d4501363055b0de89f -SIZE (rust/crates/aws-sdk-s3-0.28.0.crate) = 887780 -SHA256 (rust/crates/aws-sdk-sso-0.28.0.crate) = c8b812340d86d4a766b2ca73f740dfd47a97c2dff0c06c8517a16d88241957e4 -SIZE (rust/crates/aws-sdk-sso-0.28.0.crate) = 54460 -SHA256 (rust/crates/aws-sdk-sts-0.28.0.crate) = 265fac131fbfc188e5c3d96652ea90ecc676a934e3174eaaee523c6cec040b3b -SIZE (rust/crates/aws-sdk-sts-0.28.0.crate) = 113575 -SHA256 (rust/crates/aws-sig-auth-0.55.3.crate) = 3b94acb10af0c879ecd5c7bdf51cda6679a0a4f4643ce630905a77673bfa3c61 -SIZE (rust/crates/aws-sig-auth-0.55.3.crate) = 12433 -SHA256 (rust/crates/aws-sigv4-0.55.3.crate) = 9d2ce6f507be68e968a33485ced670111d1cbad161ddbbab1e313c03d37d8f4c -SIZE (rust/crates/aws-sigv4-0.55.3.crate) = 28037 -SHA256 (rust/crates/aws-smithy-async-0.55.3.crate) = 13bda3996044c202d75b91afeb11a9afae9db9a721c6a7a427410018e286b880 -SIZE (rust/crates/aws-smithy-async-0.55.3.crate) = 12869 -SHA256 (rust/crates/aws-smithy-checksums-0.55.3.crate) = 07ed8b96d95402f3f6b8b57eb4e0e45ee365f78b1a924faf20ff6e97abf1eae6 -SIZE (rust/crates/aws-smithy-checksums-0.55.3.crate) = 11742 -SHA256 (rust/crates/aws-smithy-client-0.55.3.crate) = 0a86aa6e21e86c4252ad6a0e3e74da9617295d8d6e374d552be7d3059c41cedd -SIZE (rust/crates/aws-smithy-client-0.55.3.crate) = 49914 -SHA256 (rust/crates/aws-smithy-eventstream-0.55.3.crate) = 460c8da5110835e3d9a717c61f5556b20d03c32a1dec57f8fc559b360f733bb8 -SIZE (rust/crates/aws-smithy-eventstream-0.55.3.crate) = 16753 -SHA256 (rust/crates/aws-smithy-http-0.55.3.crate) = 2b3b693869133551f135e1f2c77cb0b8277d9e3e17feaf2213f735857c4f0d28 -SIZE (rust/crates/aws-smithy-http-0.55.3.crate) = 54480 -SHA256 (rust/crates/aws-smithy-http-tower-0.55.3.crate) = 3ae4f6c5798a247fac98a867698197d9ac22643596dc3777f0c76b91917616b9 -SIZE (rust/crates/aws-smithy-http-tower-0.55.3.crate) = 8848 -SHA256 (rust/crates/aws-smithy-json-0.55.3.crate) = 23f9f42fbfa96d095194a632fbac19f60077748eba536eb0b9fecc28659807f8 -SIZE (rust/crates/aws-smithy-json-0.55.3.crate) = 22924 -SHA256 (rust/crates/aws-smithy-query-0.55.3.crate) = 98819eb0b04020a1c791903533b638534ae6c12e2aceda3e6e6fba015608d51d -SIZE (rust/crates/aws-smithy-query-0.55.3.crate) = 7301 -SHA256 (rust/crates/aws-smithy-types-0.55.3.crate) = 16a3d0bf4f324f4ef9793b86a1701d9700fbcdbd12a846da45eed104c634c6e8 -SIZE (rust/crates/aws-smithy-types-0.55.3.crate) = 43942 -SHA256 (rust/crates/aws-smithy-xml-0.55.3.crate) = b1b9d12875731bd07e767be7baad95700c3137b56730ec9ddeedb52a5e5ca63b -SIZE (rust/crates/aws-smithy-xml-0.55.3.crate) = 15634 -SHA256 (rust/crates/aws-types-0.55.3.crate) = 6dd209616cc8d7bfb82f87811a5c655dc97537f592689b18743bddf5dc5c4829 -SIZE (rust/crates/aws-types-0.55.3.crate) = 14357 +SHA256 (rust/crates/aws-config-1.1.4.crate) = 8b30c39ebe61f75d1b3785362b1586b41991873c9ab3e317a9181c246fb71d82 +SIZE (rust/crates/aws-config-1.1.4.crate) = 125748 +SHA256 (rust/crates/aws-credential-types-1.1.4.crate) = 33cc49dcdd31c8b6e79850a179af4c367669150c7ac0135f176c61bec81a70f7 +SIZE (rust/crates/aws-credential-types-1.1.4.crate) = 11694 +SHA256 (rust/crates/aws-runtime-1.1.4.crate) = eb031bff99877c26c28895766f7bb8484a05e24547e370768d6cc9db514662aa +SIZE (rust/crates/aws-runtime-1.1.4.crate) = 31598 +SHA256 (rust/crates/aws-sdk-config-1.13.0.crate) = 4af4f5b0f64563ada272e009cc95027effb546110ed85d014611420ac0d97858 +SIZE (rust/crates/aws-sdk-config-1.13.0.crate) = 873779 +SHA256 (rust/crates/aws-sdk-s3-1.14.0.crate) = 951f7730f51a2155c711c85c79f337fbc02a577fa99d2a0a8059acfce5392113 +SIZE (rust/crates/aws-sdk-s3-1.14.0.crate) = 1256161 +SHA256 (rust/crates/aws-sdk-sso-1.12.0.crate) = f486420a66caad72635bc2ce0ff6581646e0d32df02aa39dc983bfe794955a5b +SIZE (rust/crates/aws-sdk-sso-1.12.0.crate) = 68425 +SHA256 (rust/crates/aws-sdk-ssooidc-1.12.0.crate) = 39ddccf01d82fce9b4a15c8ae8608211ee7db8ed13a70b514bbfe41df3d24841 +SIZE (rust/crates/aws-sdk-ssooidc-1.12.0.crate) = 81130 +SHA256 (rust/crates/aws-sdk-sts-1.12.0.crate) = 1a591f8c7e6a621a501b2b5d2e88e1697fcb6274264523a6ad4d5959889a41ce +SIZE (rust/crates/aws-sdk-sts-1.12.0.crate) = 142845 +SHA256 (rust/crates/aws-sigv4-1.1.4.crate) = c371c6b0ac54d4605eb6f016624fb5c7c2925d315fdf600ac1bf21b19d5f1742 +SIZE (rust/crates/aws-sigv4-1.1.4.crate) = 45798 +SHA256 (rust/crates/aws-smithy-async-1.1.4.crate) = 72ee2d09cce0ef3ae526679b522835d63e75fb427aca5413cd371e490d52dcc6 +SIZE (rust/crates/aws-smithy-async-1.1.4.crate) = 18219 +SHA256 (rust/crates/aws-smithy-checksums-0.60.4.crate) = be2acd1b9c6ae5859999250ed5a62423aedc5cf69045b844432de15fa2f31f2b +SIZE (rust/crates/aws-smithy-checksums-0.60.4.crate) = 11736 +SHA256 (rust/crates/aws-smithy-eventstream-0.60.4.crate) = e6363078f927f612b970edf9d1903ef5cef9a64d1e8423525ebb1f0a1633c858 +SIZE (rust/crates/aws-smithy-eventstream-0.60.4.crate) = 17166 +SHA256 (rust/crates/aws-smithy-http-0.60.4.crate) = dab56aea3cd9e1101a0a999447fb346afb680ab1406cebc44b32346e25b4117d +SIZE (rust/crates/aws-smithy-http-0.60.4.crate) = 23646 +SHA256 (rust/crates/aws-smithy-json-0.60.4.crate) = fd3898ca6518f9215f62678870064398f00031912390efd03f1f6ef56d83aa8e +SIZE (rust/crates/aws-smithy-json-0.60.4.crate) = 23037 +SHA256 (rust/crates/aws-smithy-query-0.60.4.crate) = bda4b1dfc9810e35fba8a620e900522cd1bd4f9578c446e82f49d1ce41d2e9f9 +SIZE (rust/crates/aws-smithy-query-0.60.4.crate) = 7403 +SHA256 (rust/crates/aws-smithy-runtime-1.1.4.crate) = fafdab38f40ad7816e7da5dec279400dd505160780083759f01441af1bbb10ea +SIZE (rust/crates/aws-smithy-runtime-1.1.4.crate) = 97050 +SHA256 (rust/crates/aws-smithy-runtime-api-1.1.4.crate) = c18276dd28852f34b3bf501f4f3719781f4999a51c7bff1a5c6dc8c4529adc29 +SIZE (rust/crates/aws-smithy-runtime-api-1.1.4.crate) = 60892 +SHA256 (rust/crates/aws-smithy-types-1.1.4.crate) = bb3e134004170d3303718baa2a4eb4ca64ee0a1c0a7041dca31b38be0fb414f3 +SIZE (rust/crates/aws-smithy-types-1.1.4.crate) = 77923 +SHA256 (rust/crates/aws-smithy-xml-0.60.4.crate) = 8604a11b25e9ecaf32f9aa56b9fe253c5e2f606a3477f0071e96d3155a5ed218 +SIZE (rust/crates/aws-smithy-xml-0.60.4.crate) = 15760 +SHA256 (rust/crates/aws-types-1.1.4.crate) = 789bbe008e65636fe1b6dbbb374c40c8960d1232b96af5ff4aec349f9c4accf4 +SIZE (rust/crates/aws-types-1.1.4.crate) = 17610 SHA256 (rust/crates/backoff-0.4.0.crate) = b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1 SIZE (rust/crates/backoff-0.4.0.crate) = 26738 SHA256 (rust/crates/backtrace-0.3.69.crate) = 2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837 SIZE (rust/crates/backtrace-0.3.69.crate) = 77299 +SHA256 (rust/crates/base16ct-0.1.1.crate) = 349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce +SIZE (rust/crates/base16ct-0.1.1.crate) = 10186 SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8 SIZE (rust/crates/base64-0.13.1.crate) = 61002 -SHA256 (rust/crates/base64-0.21.3.crate) = 414dcefbc63d77c526a76b3afcf6fbb9b5e2791c19c3aa2297733208750c6e53 -SIZE (rust/crates/base64-0.21.3.crate) = 76898 +SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 +SIZE (rust/crates/base64-0.21.7.crate) = 82576 SHA256 (rust/crates/base64-simd-0.8.0.crate) = 339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195 SIZE (rust/crates/base64-simd-0.8.0.crate) = 12531 +SHA256 (rust/crates/base64ct-1.6.0.crate) = 8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b +SIZE (rust/crates/base64ct-1.6.0.crate) = 28870 SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad SIZE (rust/crates/bincode-1.3.3.crate) = 28958 SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 -SHA256 (rust/crates/bitflags-2.4.0.crate) = b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635 -SIZE (rust/crates/bitflags-2.4.0.crate) = 36954 +SHA256 (rust/crates/bitflags-2.4.2.crate) = ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf +SIZE (rust/crates/bitflags-2.4.2.crate) = 42602 SHA256 (rust/crates/blake2-0.10.6.crate) = 46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe SIZE (rust/crates/blake2-0.10.6.crate) = 47234 SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 -SHA256 (rust/crates/bumpalo-3.13.0.crate) = a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1 -SIZE (rust/crates/bumpalo-3.13.0.crate) = 82114 -SHA256 (rust/crates/bytemuck-1.13.1.crate) = 17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea -SIZE (rust/crates/bytemuck-1.13.1.crate) = 42309 -SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610 -SIZE (rust/crates/byteorder-1.4.3.crate) = 22512 -SHA256 (rust/crates/bytes-1.4.0.crate) = 89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be -SIZE (rust/crates/bytes-1.4.0.crate) = 58080 -SHA256 (rust/crates/bytes-utils-0.1.3.crate) = e47d3a8076e283f3acd27400535992edb3ba4b5bb72f8891ad8fbe7932a7d4b9 -SIZE (rust/crates/bytes-utils-0.1.3.crate) = 20252 +SHA256 (rust/crates/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec +SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400 +SHA256 (rust/crates/bytemuck-1.14.1.crate) = ed2490600f404f2b94c167e31d3ed1d5f3c225a0f3b80230053b3e0b7b962bd9 +SIZE (rust/crates/bytemuck-1.14.1.crate) = 46840 +SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b +SIZE (rust/crates/byteorder-1.5.0.crate) = 23288 +SHA256 (rust/crates/bytes-1.5.0.crate) = a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223 +SIZE (rust/crates/bytes-1.5.0.crate) = 58909 +SHA256 (rust/crates/bytes-utils-0.1.4.crate) = 7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35 +SIZE (rust/crates/bytes-utils-0.1.4.crate) = 20703 SHA256 (rust/crates/bytesize-1.3.0.crate) = a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc SIZE (rust/crates/bytesize-1.3.0.crate) = 10164 SHA256 (rust/crates/cc-1.0.83.crate) = f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0 @@ -121,130 +133,140 @@ SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582eb SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 SHA256 (rust/crates/cfg_aliases-0.1.1.crate) = fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e SIZE (rust/crates/cfg_aliases-0.1.1.crate) = 6009 -SHA256 (rust/crates/chrono-0.4.26.crate) = ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5 -SIZE (rust/crates/chrono-0.4.26.crate) = 191501 +SHA256 (rust/crates/chrono-0.4.33.crate) = 9f13690e35a5e4ace198e7beea2895d29f3a9cc55015fcebe6336bd2010af9eb +SIZE (rust/crates/chrono-0.4.33.crate) = 221279 +SHA256 (rust/crates/cipher-0.4.4.crate) = 773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad +SIZE (rust/crates/cipher-0.4.4.crate) = 19073 SHA256 (rust/crates/clap-2.34.0.crate) = a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c SIZE (rust/crates/clap-2.34.0.crate) = 202210 -SHA256 (rust/crates/clap-4.4.0.crate) = 1d5f1946157a96594eb2d2c10eb7ad9a2b27518cb3000209dec700c35df9197d -SIZE (rust/crates/clap-4.4.0.crate) = 54523 -SHA256 (rust/crates/clap_builder-4.4.0.crate) = 78116e32a042dd73c2901f0dc30790d20ff3447f3e3472fad359e8c3d282bcd6 -SIZE (rust/crates/clap_builder-4.4.0.crate) = 162489 -SHA256 (rust/crates/clap_derive-4.4.0.crate) = c9fd1a5729c4548118d7d70ff234a44868d00489a4b6597b0b020918a0e91a1a -SIZE (rust/crates/clap_derive-4.4.0.crate) = 29055 -SHA256 (rust/crates/clap_lex-0.5.1.crate) = cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961 -SIZE (rust/crates/clap_lex-0.5.1.crate) = 11793 +SHA256 (rust/crates/clap-4.4.18.crate) = 1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c +SIZE (rust/crates/clap-4.4.18.crate) = 55269 +SHA256 (rust/crates/clap_builder-4.4.18.crate) = 4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7 +SIZE (rust/crates/clap_builder-4.4.18.crate) = 163538 +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/core-foundation-0.9.3.crate) = 194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146 -SIZE (rust/crates/core-foundation-0.9.3.crate) = 27059 -SHA256 (rust/crates/core-foundation-sys-0.8.4.crate) = e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa -SIZE (rust/crates/core-foundation-sys-0.8.4.crate) = 17725 -SHA256 (rust/crates/cpufeatures-0.2.9.crate) = a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1 -SIZE (rust/crates/cpufeatures-0.2.9.crate) = 11895 +SHA256 (rust/crates/const-oid-0.9.6.crate) = c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8 +SIZE (rust/crates/const-oid-0.9.6.crate) = 45382 +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/cpufeatures-0.2.12.crate) = 53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504 +SIZE (rust/crates/cpufeatures-0.2.12.crate) = 12837 SHA256 (rust/crates/crc32c-0.6.4.crate) = d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74 SIZE (rust/crates/crc32c-0.6.4.crate) = 9661 -SHA256 (rust/crates/crc32fast-1.3.2.crate) = b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d -SIZE (rust/crates/crc32fast-1.3.2.crate) = 38661 -SHA256 (rust/crates/crossbeam-channel-0.5.8.crate) = a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200 -SIZE (rust/crates/crossbeam-channel-0.5.8.crate) = 90455 -SHA256 (rust/crates/crossbeam-epoch-0.9.15.crate) = ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7 -SIZE (rust/crates/crossbeam-epoch-0.9.15.crate) = 48553 -SHA256 (rust/crates/crossbeam-queue-0.3.8.crate) = d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add -SIZE (rust/crates/crossbeam-queue-0.3.8.crate) = 16731 -SHA256 (rust/crates/crossbeam-utils-0.8.16.crate) = 5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294 -SIZE (rust/crates/crossbeam-utils-0.8.16.crate) = 42508 +SHA256 (rust/crates/crc32fast-1.4.0.crate) = b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa +SIZE (rust/crates/crc32fast-1.4.0.crate) = 38665 +SHA256 (rust/crates/crossbeam-channel-0.5.11.crate) = 176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b +SIZE (rust/crates/crossbeam-channel-0.5.11.crate) = 90434 +SHA256 (rust/crates/crossbeam-queue-0.3.11.crate) = df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35 +SIZE (rust/crates/crossbeam-queue-0.3.11.crate) = 15581 +SHA256 (rust/crates/crossbeam-utils-0.8.19.crate) = 248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345 +SIZE (rust/crates/crossbeam-utils-0.8.19.crate) = 42328 +SHA256 (rust/crates/crypto-bigint-0.4.9.crate) = ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef +SIZE (rust/crates/crypto-bigint-0.4.9.crate) = 46826 +SHA256 (rust/crates/crypto-bigint-0.5.5.crate) = 0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76 +SIZE (rust/crates/crypto-bigint-0.5.5.crate) = 83384 SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 -SHA256 (rust/crates/darling-0.14.4.crate) = 7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850 -SIZE (rust/crates/darling-0.14.4.crate) = 25168 -SHA256 (rust/crates/darling_core-0.14.4.crate) = 109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0 -SIZE (rust/crates/darling_core-0.14.4.crate) = 57485 -SHA256 (rust/crates/darling_macro-0.14.4.crate) = a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e -SIZE (rust/crates/darling_macro-0.14.4.crate) = 1896 +SHA256 (rust/crates/ctr-0.9.2.crate) = 0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835 +SIZE (rust/crates/ctr-0.9.2.crate) = 18344 +SHA256 (rust/crates/darling-0.20.5.crate) = fc5d6b04b3fd0ba9926f945895de7d806260a2d7431ba82e7edaecb043c4c6b8 +SIZE (rust/crates/darling-0.20.5.crate) = 27737 +SHA256 (rust/crates/darling_core-0.20.5.crate) = 04e48a959bcd5c761246f5d090ebc2fbf7b9cd527a492b07a67510c108f1e7e3 +SIZE (rust/crates/darling_core-0.20.5.crate) = 61089 +SHA256 (rust/crates/darling_macro-0.20.5.crate) = 1d1545d67a2149e1d93b7e5c7752dce5a7426eb5d1357ddcfd89336b94444f77 +SIZE (rust/crates/darling_macro-0.20.5.crate) = 1857 SHA256 (rust/crates/dashmap-4.0.2.crate) = e77a43b28d0668df09411cb0bc9a8c2adc40f9a048afe863e05fd43251e8e39c SIZE (rust/crates/dashmap-4.0.2.crate) = 21066 -SHA256 (rust/crates/deranged-0.3.8.crate) = f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946 -SIZE (rust/crates/deranged-0.3.8.crate) = 15314 +SHA256 (rust/crates/der-0.6.1.crate) = f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de +SIZE (rust/crates/der-0.6.1.crate) = 74205 +SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4 +SIZE (rust/crates/deranged-0.3.11.crate) = 18043 SHA256 (rust/crates/derivative-2.2.0.crate) = fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b SIZE (rust/crates/derivative-2.2.0.crate) = 48076 SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 SIZE (rust/crates/digest-0.10.7.crate) = 19557 -SHA256 (rust/crates/dirs-next-2.0.0.crate) = b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1 -SIZE (rust/crates/dirs-next-2.0.0.crate) = 11689 -SHA256 (rust/crates/dirs-sys-next-0.1.2.crate) = 4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d -SIZE (rust/crates/dirs-sys-next-0.1.2.crate) = 10681 -SHA256 (rust/crates/dyn-clone-1.0.13.crate) = bbfc4744c1b8f2a09adc0e55242f60b1af195d88596bd8700be74418c056c555 -SIZE (rust/crates/dyn-clone-1.0.13.crate) = 11813 +SHA256 (rust/crates/dyn-clone-1.0.16.crate) = 545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d +SIZE (rust/crates/dyn-clone-1.0.16.crate) = 11766 +SHA256 (rust/crates/ecdsa-0.14.8.crate) = 413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c +SIZE (rust/crates/ecdsa-0.14.8.crate) = 24720 SHA256 (rust/crates/either-1.9.0.crate) = a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07 SIZE (rust/crates/either-1.9.0.crate) = 16660 +SHA256 (rust/crates/elliptic-curve-0.12.3.crate) = e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3 +SIZE (rust/crates/elliptic-curve-0.12.3.crate) = 58374 SHA256 (rust/crates/encoding_rs-0.8.33.crate) = 7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1 SIZE (rust/crates/encoding_rs-0.8.33.crate) = 1370071 -SHA256 (rust/crates/env_logger-0.10.0.crate) = 85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0 -SIZE (rust/crates/env_logger-0.10.0.crate) = 36574 +SHA256 (rust/crates/env_logger-0.10.2.crate) = 4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580 +SIZE (rust/crates/env_logger-0.10.2.crate) = 36402 SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 SHA256 (rust/crates/err-derive-0.3.1.crate) = c34a887c8df3ed90498c1c437ce21f211c8e27672921a8ffa293cb8d6d4caa9e SIZE (rust/crates/err-derive-0.3.1.crate) = 15063 -SHA256 (rust/crates/errno-0.3.2.crate) = 6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f -SIZE (rust/crates/errno-0.3.2.crate) = 10424 -SHA256 (rust/crates/errno-dragonfly-0.1.2.crate) = aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf -SIZE (rust/crates/errno-dragonfly-0.1.2.crate) = 1810 -SHA256 (rust/crates/fallible-iterator-0.2.0.crate) = 4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7 -SIZE (rust/crates/fallible-iterator-0.2.0.crate) = 18509 +SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 +SIZE (rust/crates/errno-0.3.8.crate) = 10645 +SHA256 (rust/crates/fallible-iterator-0.3.0.crate) = 2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649 +SIZE (rust/crates/fallible-iterator-0.3.0.crate) = 19639 SHA256 (rust/crates/fallible-streaming-iterator-0.1.9.crate) = 7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a SIZE (rust/crates/fallible-streaming-iterator-0.1.9.crate) = 9249 -SHA256 (rust/crates/fastrand-1.9.0.crate) = e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be -SIZE (rust/crates/fastrand-1.9.0.crate) = 11910 -SHA256 (rust/crates/fastrand-2.0.0.crate) = 6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764 -SIZE (rust/crates/fastrand-2.0.0.crate) = 14402 +SHA256 (rust/crates/fastrand-2.0.1.crate) = 25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5 +SIZE (rust/crates/fastrand-2.0.1.crate) = 14664 +SHA256 (rust/crates/ff-0.12.1.crate) = d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160 +SIZE (rust/crates/ff-0.12.1.crate) = 12956 SHA256 (rust/crates/fixedbitset-0.4.2.crate) = 0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80 SIZE (rust/crates/fixedbitset-0.4.2.crate) = 15954 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 SIZE (rust/crates/fnv-1.0.7.crate) = 11266 -SHA256 (rust/crates/form_urlencoded-1.2.0.crate) = a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652 -SIZE (rust/crates/form_urlencoded-1.2.0.crate) = 8923 -SHA256 (rust/crates/fs2-0.4.3.crate) = 9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213 -SIZE (rust/crates/fs2-0.4.3.crate) = 13138 -SHA256 (rust/crates/futures-0.3.28.crate) = 23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40 -SIZE (rust/crates/futures-0.3.28.crate) = 53229 -SHA256 (rust/crates/futures-channel-0.3.28.crate) = 955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2 -SIZE (rust/crates/futures-channel-0.3.28.crate) = 32281 -SHA256 (rust/crates/futures-core-0.3.28.crate) = 4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c -SIZE (rust/crates/futures-core-0.3.28.crate) = 14780 -SHA256 (rust/crates/futures-executor-0.3.28.crate) = ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0 -SIZE (rust/crates/futures-executor-0.3.28.crate) = 17743 -SHA256 (rust/crates/futures-io-0.3.28.crate) = 4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964 -SIZE (rust/crates/futures-io-0.3.28.crate) = 8910 -SHA256 (rust/crates/futures-macro-0.3.28.crate) = 89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72 -SIZE (rust/crates/futures-macro-0.3.28.crate) = 11272 -SHA256 (rust/crates/futures-sink-0.3.28.crate) = f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e -SIZE (rust/crates/futures-sink-0.3.28.crate) = 7852 -SHA256 (rust/crates/futures-task-0.3.28.crate) = 76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65 -SIZE (rust/crates/futures-task-0.3.28.crate) = 11848 -SHA256 (rust/crates/futures-util-0.3.28.crate) = 26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533 -SIZE (rust/crates/futures-util-0.3.28.crate) = 158510 -SHA256 (rust/crates/fxhash-0.2.1.crate) = c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c -SIZE (rust/crates/fxhash-0.2.1.crate) = 4102 +SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 +SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 +SHA256 (rust/crates/futures-0.3.30.crate) = 645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0 +SIZE (rust/crates/futures-0.3.30.crate) = 53828 +SHA256 (rust/crates/futures-channel-0.3.30.crate) = eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78 +SIZE (rust/crates/futures-channel-0.3.30.crate) = 31736 +SHA256 (rust/crates/futures-core-0.3.30.crate) = dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d +SIZE (rust/crates/futures-core-0.3.30.crate) = 14071 +SHA256 (rust/crates/futures-executor-0.3.30.crate) = a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d +SIZE (rust/crates/futures-executor-0.3.30.crate) = 17744 +SHA256 (rust/crates/futures-io-0.3.30.crate) = a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1 +SIZE (rust/crates/futures-io-0.3.30.crate) = 8910 +SHA256 (rust/crates/futures-macro-0.3.30.crate) = 87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac +SIZE (rust/crates/futures-macro-0.3.30.crate) = 11278 +SHA256 (rust/crates/futures-sink-0.3.30.crate) = 9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5 +SIZE (rust/crates/futures-sink-0.3.30.crate) = 7852 +SHA256 (rust/crates/futures-task-0.3.30.crate) = 38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004 +SIZE (rust/crates/futures-task-0.3.30.crate) = 11126 +SHA256 (rust/crates/futures-util-0.3.30.crate) = 3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48 +SIZE (rust/crates/futures-util-0.3.30.crate) = 159977 SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 SHA256 (rust/crates/gethostname-0.4.3.crate) = 0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818 SIZE (rust/crates/gethostname-0.4.3.crate) = 9336 -SHA256 (rust/crates/getrandom-0.2.10.crate) = be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427 -SIZE (rust/crates/getrandom-0.2.10.crate) = 34955 -SHA256 (rust/crates/gimli-0.28.0.crate) = 6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0 -SIZE (rust/crates/gimli-0.28.0.crate) = 269277 -SHA256 (rust/crates/git-version-0.3.5.crate) = f6b0decc02f4636b9ccad390dcbe77b722a77efedfa393caf8379a51d5c61899 -SIZE (rust/crates/git-version-0.3.5.crate) = 3203 -SHA256 (rust/crates/git-version-macro-0.3.5.crate) = fe69f1cbdb6e28af2bac214e943b99ce8a0a06b447d15d3e61161b0423139f3f -SIZE (rust/crates/git-version-macro-0.3.5.crate) = 4302 -SHA256 (rust/crates/h2-0.3.21.crate) = 91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833 -SIZE (rust/crates/h2-0.3.21.crate) = 166581 +SHA256 (rust/crates/getrandom-0.2.12.crate) = 190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5 +SIZE (rust/crates/getrandom-0.2.12.crate) = 36163 +SHA256 (rust/crates/ghash-0.5.1.crate) = f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1 +SIZE (rust/crates/ghash-0.5.1.crate) = 9482 +SHA256 (rust/crates/gimli-0.28.1.crate) = 4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253 +SIZE (rust/crates/gimli-0.28.1.crate) = 270497 +SHA256 (rust/crates/git-version-0.3.9.crate) = 1ad568aa3db0fcbc81f2f116137f263d7304f512a1209b35b85150d3ef88ad19 +SIZE (rust/crates/git-version-0.3.9.crate) = 3087 +SHA256 (rust/crates/git-version-macro-0.3.9.crate) = 53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0 +SIZE (rust/crates/git-version-macro-0.3.9.crate) = 5622 +SHA256 (rust/crates/group-0.12.1.crate) = 5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7 +SIZE (rust/crates/group-0.12.1.crate) = 16516 +SHA256 (rust/crates/h2-0.3.24.crate) = bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9 +SIZE (rust/crates/h2-0.3.24.crate) = 167814 +SHA256 (rust/crates/h2-0.4.2.crate) = 31d030e59af851932b72ceebadf4a2b5986dba4c3b99dd2493f8273a0f151943 +SIZE (rust/crates/h2-0.4.2.crate) = 168108 SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888 SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968 -SHA256 (rust/crates/hashbrown-0.14.0.crate) = 2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a -SIZE (rust/crates/hashbrown-0.14.0.crate) = 116103 -SHA256 (rust/crates/hashlink-0.8.3.crate) = 312f66718a2d7789ffef4f4b7b213138ed9f1eb3aa1d0d82fc99f88fb3ffd26f -SIZE (rust/crates/hashlink-0.8.3.crate) = 26438 +SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604 +SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425 +SHA256 (rust/crates/hashlink-0.9.0.crate) = 692eaaf7f7607518dd3cef090f1474b61edc5301d8012f09579920df68b725ee +SIZE (rust/crates/hashlink-0.9.0.crate) = 26390 SHA256 (rust/crates/heck-0.3.3.crate) = 6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c SIZE (rust/crates/heck-0.3.3.crate) = 10260 SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8 @@ -255,18 +277,26 @@ SHA256 (rust/crates/heed-traits-0.8.0.crate) = a53a94e5b2fd60417e83ffdfe136c39af SIZE (rust/crates/heed-traits-0.8.0.crate) = 997 SHA256 (rust/crates/heed-types-0.8.0.crate) = 9a6cf0a6952fcedc992602d5cddd1e3fff091fbe87d38636e3ec23a31f32acbd SIZE (rust/crates/heed-types-0.8.0.crate) = 7043 -SHA256 (rust/crates/hermit-abi-0.3.2.crate) = 443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b -SIZE (rust/crates/hermit-abi-0.3.2.crate) = 13783 +SHA256 (rust/crates/hermit-abi-0.3.4.crate) = 5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f +SIZE (rust/crates/hermit-abi-0.3.4.crate) = 14445 SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 SIZE (rust/crates/hex-0.4.3.crate) = 13299 SHA256 (rust/crates/hexdump-0.1.1.crate) = e40283dadb02f3af778878be1d717b17b4e4ab92e1d935ab03a730b0542905f2 SIZE (rust/crates/hexdump-0.1.1.crate) = 7965 SHA256 (rust/crates/hmac-0.12.1.crate) = 6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e SIZE (rust/crates/hmac-0.12.1.crate) = 42657 -SHA256 (rust/crates/http-0.2.9.crate) = bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482 -SIZE (rust/crates/http-0.2.9.crate) = 100146 -SHA256 (rust/crates/http-body-0.4.5.crate) = d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1 -SIZE (rust/crates/http-body-0.4.5.crate) = 9242 +SHA256 (rust/crates/home-0.5.9.crate) = e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5 +SIZE (rust/crates/home-0.5.9.crate) = 8760 +SHA256 (rust/crates/http-0.2.11.crate) = 8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb +SIZE (rust/crates/http-0.2.11.crate) = 100478 +SHA256 (rust/crates/http-1.0.0.crate) = b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea +SIZE (rust/crates/http-1.0.0.crate) = 100981 +SHA256 (rust/crates/http-body-0.4.6.crate) = 7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2 +SIZE (rust/crates/http-body-0.4.6.crate) = 10773 +SHA256 (rust/crates/http-body-1.0.0.crate) = 1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643 +SIZE (rust/crates/http-body-1.0.0.crate) = 5411 +SHA256 (rust/crates/http-body-util-0.1.0.crate) = 41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840 +SIZE (rust/crates/http-body-util-0.1.0.crate) = 10368 SHA256 (rust/crates/http-range-0.1.5.crate) = 21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573 SIZE (rust/crates/http-range-0.1.5.crate) = 4871 SHA256 (rust/crates/http-range-header-0.3.1.crate) = add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f @@ -277,116 +307,114 @@ SHA256 (rust/crates/httpdate-1.0.3.crate) = df3b46402a9d5adb4c86a0cf463f42e19994 SIZE (rust/crates/httpdate-1.0.3.crate) = 10639 SHA256 (rust/crates/humantime-2.1.0.crate) = 9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4 SIZE (rust/crates/humantime-2.1.0.crate) = 16749 -SHA256 (rust/crates/hyper-0.14.27.crate) = ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468 -SIZE (rust/crates/hyper-0.14.27.crate) = 195700 -SHA256 (rust/crates/hyper-rustls-0.23.2.crate) = 1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c -SIZE (rust/crates/hyper-rustls-0.23.2.crate) = 30993 -SHA256 (rust/crates/hyper-rustls-0.24.1.crate) = 8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97 -SIZE (rust/crates/hyper-rustls-0.24.1.crate) = 30224 +SHA256 (rust/crates/hyper-0.14.28.crate) = bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80 +SIZE (rust/crates/hyper-0.14.28.crate) = 197204 +SHA256 (rust/crates/hyper-1.1.0.crate) = fb5aa53871fc917b1a9ed87b683a5d86db645e23acb32c2e0785a353e522fb75 +SIZE (rust/crates/hyper-1.1.0.crate) = 145893 +SHA256 (rust/crates/hyper-rustls-0.24.2.crate) = ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590 +SIZE (rust/crates/hyper-rustls-0.24.2.crate) = 30195 +SHA256 (rust/crates/hyper-rustls-0.26.0.crate) = a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c +SIZE (rust/crates/hyper-rustls-0.26.0.crate) = 29538 SHA256 (rust/crates/hyper-timeout-0.4.1.crate) = bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1 SIZE (rust/crates/hyper-timeout-0.4.1.crate) = 13805 -SHA256 (rust/crates/hyperlocal-0.8.0.crate) = 0fafdf7b2b2de7c9784f76e02c0935e65a8117ec3b768644379983ab333ac98c -SIZE (rust/crates/hyperlocal-0.8.0.crate) = 11626 -SHA256 (rust/crates/iana-time-zone-0.1.57.crate) = 2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613 -SIZE (rust/crates/iana-time-zone-0.1.57.crate) = 19785 +SHA256 (rust/crates/hyper-util-0.1.3.crate) = ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa +SIZE (rust/crates/hyper-util-0.1.3.crate) = 61647 +SHA256 (rust/crates/iana-time-zone-0.1.60.crate) = e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141 +SIZE (rust/crates/iana-time-zone-0.1.60.crate) = 27074 SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185 SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 SIZE (rust/crates/ident_case-1.0.1.crate) = 3492 -SHA256 (rust/crates/idna-0.4.0.crate) = 7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c -SIZE (rust/crates/idna-0.4.0.crate) = 271429 +SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6 +SIZE (rust/crates/idna-0.5.0.crate) = 271940 SHA256 (rust/crates/indexmap-1.9.3.crate) = bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99 SIZE (rust/crates/indexmap-1.9.3.crate) = 54653 -SHA256 (rust/crates/indexmap-2.0.0.crate) = d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d -SIZE (rust/crates/indexmap-2.0.0.crate) = 64038 +SHA256 (rust/crates/indexmap-2.2.2.crate) = 824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520 +SIZE (rust/crates/indexmap-2.2.2.crate) = 76160 +SHA256 (rust/crates/inout-0.1.3.crate) = a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5 +SIZE (rust/crates/inout-0.1.3.crate) = 10743 SHA256 (rust/crates/instant-0.1.12.crate) = 7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c SIZE (rust/crates/instant-0.1.12.crate) = 6128 -SHA256 (rust/crates/ipnet-2.8.0.crate) = 28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6 -SIZE (rust/crates/ipnet-2.8.0.crate) = 27474 +SHA256 (rust/crates/ipnet-2.9.0.crate) = 8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3 +SIZE (rust/crates/ipnet-2.9.0.crate) = 27627 SHA256 (rust/crates/ipnetwork-0.20.0.crate) = bf466541e9d546596ee94f9f69590f89473455f88372423e0008fc1a7daf100e SIZE (rust/crates/ipnetwork-0.20.0.crate) = 16556 -SHA256 (rust/crates/is-terminal-0.4.9.crate) = cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b -SIZE (rust/crates/is-terminal-0.4.9.crate) = 8109 +SHA256 (rust/crates/is-terminal-0.4.12.crate) = f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b +SIZE (rust/crates/is-terminal-0.4.12.crate) = 7470 SHA256 (rust/crates/itertools-0.4.19.crate) = c4a9b56eb56058f43dc66e58f40a214b2ccbc9f3df51861b63d51dec7b65bc3f SIZE (rust/crates/itertools-0.4.19.crate) = 64212 SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473 SIZE (rust/crates/itertools-0.10.5.crate) = 115354 -SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38 -SIZE (rust/crates/itoa-1.0.9.crate) = 10492 -SHA256 (rust/crates/jobserver-0.1.26.crate) = 936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2 -SIZE (rust/crates/jobserver-0.1.26.crate) = 22645 -SHA256 (rust/crates/js-sys-0.3.64.crate) = c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a -SIZE (rust/crates/js-sys-0.3.64.crate) = 80313 -SHA256 (rust/crates/json-patch-0.2.7.crate) = eb3fa5a61630976fc4c353c70297f2e93f1930e3ccee574d59d618ccbd5154ce -SIZE (rust/crates/json-patch-0.2.7.crate) = 18839 -SHA256 (rust/crates/jsonpath_lib-0.3.0.crate) = eaa63191d68230cccb81c5aa23abd53ed64d83337cacbb25a7b8c7979523774f -SIZE (rust/crates/jsonpath_lib-0.3.0.crate) = 284419 -SHA256 (rust/crates/k8s-openapi-0.16.0.crate) = 6d9455388f4977de4d0934efa9f7d36296295537d774574113a20f6082de03da -SIZE (rust/crates/k8s-openapi-0.16.0.crate) = 5430865 -SHA256 (rust/crates/kube-0.75.0.crate) = 9bb19108692aeafebb108fd0a1c381c06ac4c03859652599420975165e939b8a -SIZE (rust/crates/kube-0.75.0.crate) = 10097 -SHA256 (rust/crates/kube-client-0.75.0.crate) = 97e1a80ecd1b1438a2fc004549e155d47250b9e01fbfcf4cfbe9c8b56a085593 -SIZE (rust/crates/kube-client-0.75.0.crate) = 65623 -SHA256 (rust/crates/kube-core-0.75.0.crate) = f4d780f2bb048eeef64a4c6b2582d26a0fe19e30b4d3cc9e081616e1779c5d47 -SIZE (rust/crates/kube-core-0.75.0.crate) = 39208 -SHA256 (rust/crates/kube-derive-0.75.0.crate) = 98459d53b2841237392cd6959956185b2df15c19d32c3b275ed6ca7b7ee1adae -SIZE (rust/crates/kube-derive-0.75.0.crate) = 13986 -SHA256 (rust/crates/kube-runtime-0.75.0.crate) = 7769af142ee2e46bfa44bd393cf7f40b9d8b80d2e11f6317399551ed17760beb -SIZE (rust/crates/kube-runtime-0.75.0.crate) = 42773 +SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569 +SIZE (rust/crates/itertools-0.12.1.crate) = 137761 +SHA256 (rust/crates/itoa-1.0.10.crate) = b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c +SIZE (rust/crates/itoa-1.0.10.crate) = 10534 +SHA256 (rust/crates/jobserver-0.1.27.crate) = 8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d +SIZE (rust/crates/jobserver-0.1.27.crate) = 24774 +SHA256 (rust/crates/js-sys-0.3.67.crate) = 9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1 +SIZE (rust/crates/js-sys-0.3.67.crate) = 80764 +SHA256 (rust/crates/json-patch-1.2.0.crate) = 55ff1e1486799e3f64129f8ccad108b38290df9cd7015cd31bed17239f0789d6 +SIZE (rust/crates/json-patch-1.2.0.crate) = 21265 +SHA256 (rust/crates/jsonpath-rust-0.4.0.crate) = 96acbc6188d3bd83519d053efec756aa4419de62ec47be7f28dec297f7dc9eb0 +SIZE (rust/crates/jsonpath-rust-0.4.0.crate) = 28881 +SHA256 (rust/crates/k8s-openapi-0.21.0.crate) = 301f367a36090b7dfdaac248ee3ed4f14a6a8292e7bec0f1c5e6e2e1f181cd33 +SIZE (rust/crates/k8s-openapi-0.21.0.crate) = 2846668 +SHA256 (rust/crates/kube-0.88.1.crate) = 462fe330a0617b276ec864c2255810adcdf519ecb6844253c54074b2086a97bc +SIZE (rust/crates/kube-0.88.1.crate) = 11661 +SHA256 (rust/crates/kube-client-0.88.1.crate) = 7fe0d65dd6f3adba29cfb84f19dfe55449c7f6c35425f9d8294bec40313e0b64 +SIZE (rust/crates/kube-client-0.88.1.crate) = 78696 +SHA256 (rust/crates/kube-core-0.88.1.crate) = a6b42844e9172f631b8263ea9ce003b9251da13beb1401580937ad206dd82f4c +SIZE (rust/crates/kube-core-0.88.1.crate) = 49879 +SHA256 (rust/crates/kube-derive-0.88.1.crate) = f5b5a111ee287bd237b8190b8c39543ea9fd22f79e9c32a36c24e08234bcda22 +SIZE (rust/crates/kube-derive-0.88.1.crate) = 15153 +SHA256 (rust/crates/kube-runtime-0.88.1.crate) = 2bc06275064c81056fbb28ea876b3fb339d970e8132282119359afca0835c0ea +SIZE (rust/crates/kube-runtime-0.88.1.crate) = 62751 SHA256 (rust/crates/kuska-handshake-0.2.0.crate) = e33da4b69f23c2ece0b3e729d079cebdc2c0206e493e42f510f500ad81c631d5 SIZE (rust/crates/kuska-handshake-0.2.0.crate) = 32285 SHA256 (rust/crates/kuska-sodiumoxide-0.2.5-0.crate) = ae0f8eafdd240b722243787b51fdaf8df6693fb8621d0f7061cdba574214cf88 SIZE (rust/crates/kuska-sodiumoxide-0.2.5-0.crate) = 2119501 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.147.crate) = b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3 -SIZE (rust/crates/libc-0.2.147.crate) = 686772 +SHA256 (rust/crates/libc-0.2.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd +SIZE (rust/crates/libc-0.2.153.crate) = 740614 SHA256 (rust/crates/libsodium-sys-0.2.7.crate) = 6b779387cd56adfbc02ea4a668e704f729be8d6a6abd2c27ca5ee537849a92fd SIZE (rust/crates/libsodium-sys-0.2.7.crate) = 4595870 -SHA256 (rust/crates/libsqlite3-sys-0.26.0.crate) = afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326 -SIZE (rust/crates/libsqlite3-sys-0.26.0.crate) = 4840390 -SHA256 (rust/crates/linked-hash-map-0.5.6.crate) = 0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f -SIZE (rust/crates/linked-hash-map-0.5.6.crate) = 15049 -SHA256 (rust/crates/linux-raw-sys-0.4.5.crate) = 57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503 -SIZE (rust/crates/linux-raw-sys-0.4.5.crate) = 1274380 +SHA256 (rust/crates/libsqlite3-sys-0.28.0.crate) = 0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f +SIZE (rust/crates/libsqlite3-sys-0.28.0.crate) = 4975624 +SHA256 (rust/crates/linux-raw-sys-0.4.13.crate) = 01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c +SIZE (rust/crates/linux-raw-sys-0.4.13.crate) = 1493855 SHA256 (rust/crates/lmdb-rkv-sys-0.11.2.crate) = 61b9ce6b3be08acefa3003c57b7565377432a89ec24476bbe72e11d101f852fe SIZE (rust/crates/lmdb-rkv-sys-0.11.2.crate) = 164681 -SHA256 (rust/crates/lock_api-0.4.10.crate) = c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16 -SIZE (rust/crates/lock_api-0.4.10.crate) = 26713 +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/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558 SIZE (rust/crates/matchers-0.1.0.crate) = 6948 -SHA256 (rust/crates/md-5-0.10.5.crate) = 6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca -SIZE (rust/crates/md-5-0.10.5.crate) = 14573 -SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d -SIZE (rust/crates/memchr-2.5.0.crate) = 65812 -SHA256 (rust/crates/memoffset-0.9.0.crate) = 5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c -SIZE (rust/crates/memoffset-0.9.0.crate) = 9033 +SHA256 (rust/crates/md-5-0.10.6.crate) = d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf +SIZE (rust/crates/md-5-0.10.6.crate) = 16161 +SHA256 (rust/crates/memchr-2.7.1.crate) = 523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149 +SIZE (rust/crates/memchr-2.7.1.crate) = 96307 SHA256 (rust/crates/mime-0.3.17.crate) = 6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a SIZE (rust/crates/mime-0.3.17.crate) = 15712 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.7.1.crate) = e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7 -SIZE (rust/crates/miniz_oxide-0.7.1.crate) = 55194 -SHA256 (rust/crates/mio-0.8.8.crate) = 927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2 -SIZE (rust/crates/mio-0.8.8.crate) = 94264 -SHA256 (rust/crates/mktemp-0.5.0.crate) = 4bdc1f74dd7bb717d39f784f844e490d935b3aa7e383008006dbbf29c1f7820a -SIZE (rust/crates/mktemp-0.5.0.crate) = 8752 -SHA256 (rust/crates/multer-2.1.0.crate) = 01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2 -SIZE (rust/crates/multer-2.1.0.crate) = 23976 +SHA256 (rust/crates/miniz_oxide-0.7.2.crate) = 9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7 +SIZE (rust/crates/miniz_oxide-0.7.2.crate) = 55731 +SHA256 (rust/crates/mio-0.8.10.crate) = 8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09 +SIZE (rust/crates/mio-0.8.10.crate) = 102345 +SHA256 (rust/crates/mktemp-0.5.1.crate) = 69fed8fbcd01affec44ac226784c6476a6006d98d13e33bc0ca7977aaf046bd8 +SIZE (rust/crates/mktemp-0.5.1.crate) = 8822 +SHA256 (rust/crates/multer-3.0.0.crate) = a15d522be0a9c3e46fd2632e272d178f56387bdb5c9fbb3a36c649062e9b5219 +SIZE (rust/crates/multer-3.0.0.crate) = 25772 SHA256 (rust/crates/multimap-0.8.3.crate) = e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a SIZE (rust/crates/multimap-0.8.3.crate) = 13518 -SHA256 (rust/crates/netapp-0.10.0.crate) = 0a00b76cec93e3ae68c9ed5f08e27a1507424987ee23d5ec961ebd4da820a265 -SIZE (rust/crates/netapp-0.10.0.crate) = 43846 SHA256 (rust/crates/nix-0.27.1.crate) = 2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053 SIZE (rust/crates/nix-0.27.1.crate) = 286494 SHA256 (rust/crates/no-std-net-0.6.0.crate) = 43794a0ace135be66a25d3ae77d41b91615fb68ae937f904090203e81f755b65 SIZE (rust/crates/no-std-net-0.6.0.crate) = 30191 SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a SIZE (rust/crates/nom-7.1.3.crate) = 117570 -SHA256 (rust/crates/nom8-0.2.0.crate) = ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8 -SIZE (rust/crates/nom8-0.2.0.crate) = 162020 SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84 SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311 SHA256 (rust/crates/num-0.2.1.crate) = b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36 @@ -395,20 +423,24 @@ SHA256 (rust/crates/num-bigint-0.2.6.crate) = 090c7f9998ee0ff65aa5b723e4009f7b21 SIZE (rust/crates/num-bigint-0.2.6.crate) = 87275 SHA256 (rust/crates/num-complex-0.2.4.crate) = b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95 SIZE (rust/crates/num-complex-0.2.4.crate) = 24679 +SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9 +SIZE (rust/crates/num-conv-0.1.0.crate) = 7444 SHA256 (rust/crates/num-integer-0.1.45.crate) = 225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9 SIZE (rust/crates/num-integer-0.1.45.crate) = 22529 SHA256 (rust/crates/num-iter-0.1.43.crate) = 7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252 SIZE (rust/crates/num-iter-0.1.43.crate) = 10655 SHA256 (rust/crates/num-rational-0.2.4.crate) = 5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef SIZE (rust/crates/num-rational-0.2.4.crate) = 21694 -SHA256 (rust/crates/num-traits-0.2.16.crate) = f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2 -SIZE (rust/crates/num-traits-0.2.16.crate) = 50130 +SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c +SIZE (rust/crates/num-traits-0.2.17.crate) = 50190 SHA256 (rust/crates/num_cpus-1.16.0.crate) = 4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43 SIZE (rust/crates/num_cpus-1.16.0.crate) = 15713 -SHA256 (rust/crates/object-0.32.0.crate) = 77ac5bbd07aea88c60a577a1ce218075ffd59208b2d7ca97adf9bfc5aeb21ebe -SIZE (rust/crates/object-0.32.0.crate) = 275335 -SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d -SIZE (rust/crates/once_cell-1.18.0.crate) = 32969 +SHA256 (rust/crates/object-0.32.2.crate) = a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441 +SIZE (rust/crates/object-0.32.2.crate) = 286994 +SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 +SIZE (rust/crates/once_cell-1.19.0.crate) = 33046 +SHA256 (rust/crates/opaque-debug-0.3.1.crate) = c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381 +SIZE (rust/crates/opaque-debug-0.3.1.crate) = 7066 SHA256 (rust/crates/openssl-probe-0.1.5.crate) = ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf SIZE (rust/crates/openssl-probe-0.1.5.crate) = 7227 SHA256 (rust/crates/opentelemetry-0.17.0.crate) = 6105e89802af13fdf48c49d7646d3b533a70e536d818aae7e78ba0433d01acb8 @@ -419,12 +451,14 @@ SHA256 (rust/crates/opentelemetry-otlp-0.10.0.crate) = 9d1a6ca9de4c8b00aa7f1a153 SIZE (rust/crates/opentelemetry-otlp-0.10.0.crate) = 86499 SHA256 (rust/crates/opentelemetry-prometheus-0.10.0.crate) = 9328977e479cebe12ce0d3fcecdaea4721d234895a9440c5b5dfd113f0594ac6 SIZE (rust/crates/opentelemetry-prometheus-0.10.0.crate) = 12401 -SHA256 (rust/crates/ordered-float-2.10.0.crate) = 7940cf2ca942593318d07fcf2596cdca60a85c9e7fab408a5e21a4f9dcd40d87 -SIZE (rust/crates/ordered-float-2.10.0.crate) = 15589 +SHA256 (rust/crates/ordered-float-2.10.1.crate) = 68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c +SIZE (rust/crates/ordered-float-2.10.1.crate) = 16029 SHA256 (rust/crates/outref-0.5.1.crate) = 4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a SIZE (rust/crates/outref-0.5.1.crate) = 3957 SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39 SIZE (rust/crates/overload-0.1.1.crate) = 24439 +SHA256 (rust/crates/p256-0.11.1.crate) = 51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594 +SIZE (rust/crates/p256-0.11.1.crate) = 67282 SHA256 (rust/crates/page_size-0.4.2.crate) = eebde548fbbf1ea81a99b128872779c437752fb99f217c45245e1a61dcd9edcd SIZE (rust/crates/page_size-0.4.2.crate) = 8386 SHA256 (rust/crates/parking_lot-0.11.2.crate) = 7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99 @@ -433,34 +467,50 @@ SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff49129 SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967 SHA256 (rust/crates/parking_lot_core-0.8.6.crate) = 60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc SIZE (rust/crates/parking_lot_core-0.8.6.crate) = 32567 -SHA256 (rust/crates/parking_lot_core-0.9.8.crate) = 93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447 -SIZE (rust/crates/parking_lot_core-0.9.8.crate) = 32383 +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/parse_duration-2.1.1.crate) = 7037e5e93e0172a5a96874380bf73bc6ecef022e26fa25f2be26864d6b3ba95d SIZE (rust/crates/parse_duration-2.1.1.crate) = 9451 +SHA256 (rust/crates/password-hash-0.5.0.crate) = 346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166 +SIZE (rust/crates/password-hash-0.5.0.crate) = 26884 SHA256 (rust/crates/paste-1.0.14.crate) = de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c SIZE (rust/crates/paste-1.0.14.crate) = 18157 -SHA256 (rust/crates/pem-1.1.1.crate) = a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8 -SIZE (rust/crates/pem-1.1.1.crate) = 11352 -SHA256 (rust/crates/percent-encoding-2.3.0.crate) = 9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94 -SIZE (rust/crates/percent-encoding-2.3.0.crate) = 10196 +SHA256 (rust/crates/pem-3.0.3.crate) = 1b8fcc794035347fb64beda2d3b462595dd2753e3f268d89c5aae77e8cf2c310 +SIZE (rust/crates/pem-3.0.3.crate) = 13035 +SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e +SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 +SHA256 (rust/crates/pest-2.7.7.crate) = 219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546 +SIZE (rust/crates/pest-2.7.7.crate) = 118478 +SHA256 (rust/crates/pest_derive-2.7.7.crate) = 22e1288dbd7786462961e69bfd4df7848c1e37e8b74303dbdab82c3a9cdd2809 +SIZE (rust/crates/pest_derive-2.7.7.crate) = 35839 +SHA256 (rust/crates/pest_generator-2.7.7.crate) = 1381c29a877c6d34b8c176e734f35d7f7f5b3adaefe940cb4d1bb7af94678e2e +SIZE (rust/crates/pest_generator-2.7.7.crate) = 18184 +SHA256 (rust/crates/pest_meta-2.7.7.crate) = d0934d6907f148c22a3acbda520c7eed243ad7487a30f51f6ce52b58b7077a8a +SIZE (rust/crates/pest_meta-2.7.7.crate) = 41562 SHA256 (rust/crates/petgraph-0.6.4.crate) = e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9 SIZE (rust/crates/petgraph-0.6.4.crate) = 185895 -SHA256 (rust/crates/pin-project-1.1.3.crate) = fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422 -SIZE (rust/crates/pin-project-1.1.3.crate) = 57740 -SHA256 (rust/crates/pin-project-internal-1.1.3.crate) = 4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405 -SIZE (rust/crates/pin-project-internal-1.1.3.crate) = 27824 +SHA256 (rust/crates/pin-project-1.1.4.crate) = 0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0 +SIZE (rust/crates/pin-project-1.1.4.crate) = 54230 +SHA256 (rust/crates/pin-project-internal-1.1.4.crate) = 266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690 +SIZE (rust/crates/pin-project-internal-1.1.4.crate) = 28249 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/pkg-config-0.3.27.crate) = 26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964 -SIZE (rust/crates/pkg-config-0.3.27.crate) = 18838 -SHA256 (rust/crates/pnet_base-0.33.0.crate) = 872e46346144ebf35219ccaa64b1dffacd9c6f188cd7d012bd6977a2a838f42e -SIZE (rust/crates/pnet_base-0.33.0.crate) = 10228 -SHA256 (rust/crates/pnet_datalink-0.33.0.crate) = c302da22118d2793c312a35fb3da6846cb0fab6c3ad53fd67e37809b06cdafce -SIZE (rust/crates/pnet_datalink-0.33.0.crate) = 28267 -SHA256 (rust/crates/pnet_sys-0.33.0.crate) = faf7a58b2803d818a374be9278a1fe8f88fce14b936afbe225000cfcd9c73f16 -SIZE (rust/crates/pnet_sys-0.33.0.crate) = 11600 +SHA256 (rust/crates/pkcs8-0.9.0.crate) = 9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba +SIZE (rust/crates/pkcs8-0.9.0.crate) = 26214 +SHA256 (rust/crates/pkg-config-0.3.29.crate) = 2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb +SIZE (rust/crates/pkg-config-0.3.29.crate) = 20563 +SHA256 (rust/crates/pnet_base-0.34.0.crate) = fe4cf6fb3ab38b68d01ab2aea03ed3d1132b4868fa4e06285f29f16da01c5f4c +SIZE (rust/crates/pnet_base-0.34.0.crate) = 10239 +SHA256 (rust/crates/pnet_datalink-0.34.0.crate) = ad5854abf0067ebbd3967f7d45ebc8976ff577ff0c7bd101c4973ae3c70f98fe +SIZE (rust/crates/pnet_datalink-0.34.0.crate) = 28287 +SHA256 (rust/crates/pnet_sys-0.34.0.crate) = 417c0becd1b573f6d544f73671070b039051e5ad819cc64aa96377b536128d00 +SIZE (rust/crates/pnet_sys-0.34.0.crate) = 11592 +SHA256 (rust/crates/polyval-0.6.2.crate) = 9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25 +SIZE (rust/crates/polyval-0.6.2.crate) = 18425 +SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391 +SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165 SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 SHA256 (rust/crates/pretty_env_logger-0.5.0.crate) = 865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c @@ -469,10 +519,8 @@ SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08c 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.66.crate) = 18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9 -SIZE (rust/crates/proc-macro2-1.0.66.crate) = 43575 +SHA256 (rust/crates/proc-macro2-1.0.78.crate) = e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae +SIZE (rust/crates/proc-macro2-1.0.78.crate) = 47158 SHA256 (rust/crates/prometheus-0.13.3.crate) = 449811d15fbdf5ceb5c1144416066429cf82316e2ec8ce0c1f6f8a02e7bbcf8c SIZE (rust/crates/prometheus-0.13.3.crate) = 82457 SHA256 (rust/crates/prost-0.9.0.crate) = 444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001 @@ -487,8 +535,12 @@ SHA256 (rust/crates/protobuf-2.28.0.crate) = 106dd99e98437432fed6519dedecfade6a0 SIZE (rust/crates/protobuf-2.28.0.crate) = 167541 SHA256 (rust/crates/quick-xml-0.26.0.crate) = 7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd SIZE (rust/crates/quick-xml-0.26.0.crate) = 116260 -SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae -SIZE (rust/crates/quote-1.0.33.crate) = 28090 +SHA256 (rust/crates/quote-1.0.35.crate) = 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef +SIZE (rust/crates/quote-1.0.35.crate) = 28136 +SHA256 (rust/crates/r2d2-0.8.10.crate) = 51de85fb3fb6524929c8a2eb85e6b6d363de4e8c48f9e2c2eac4944abc181c93 +SIZE (rust/crates/r2d2-0.8.10.crate) = 17888 +SHA256 (rust/crates/r2d2_sqlite-0.24.0.crate) = 6a982edf65c129796dba72f8775b292ef482b40d035e827a9825b3bc07ccc5f2 +SIZE (rust/crates/r2d2_sqlite-0.24.0.crate) = 5522 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 @@ -497,112 +549,124 @@ SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9ba SIZE (rust/crates/rand_core-0.6.4.crate) = 22666 SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012 -SHA256 (rust/crates/redox_syscall-0.3.5.crate) = 567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29 -SIZE (rust/crates/redox_syscall-0.3.5.crate) = 23404 -SHA256 (rust/crates/redox_users-0.4.3.crate) = b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b -SIZE (rust/crates/redox_users-0.4.3.crate) = 15353 -SHA256 (rust/crates/regex-1.9.4.crate) = 12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29 -SIZE (rust/crates/regex-1.9.4.crate) = 253112 +SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa +SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858 +SHA256 (rust/crates/regex-1.10.3.crate) = b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15 +SIZE (rust/crates/regex-1.10.3.crate) = 253101 SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 -SHA256 (rust/crates/regex-automata-0.3.7.crate) = 49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629 -SIZE (rust/crates/regex-automata-0.3.7.crate) = 607421 +SHA256 (rust/crates/regex-automata-0.4.5.crate) = 5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd +SIZE (rust/crates/regex-automata-0.4.5.crate) = 617406 +SHA256 (rust/crates/regex-lite-0.1.5.crate) = 30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e +SIZE (rust/crates/regex-lite-0.1.5.crate) = 95262 SHA256 (rust/crates/regex-syntax-0.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1 SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752 -SHA256 (rust/crates/regex-syntax-0.7.5.crate) = dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da -SIZE (rust/crates/regex-syntax-0.7.5.crate) = 343366 -SHA256 (rust/crates/reqwest-0.11.20.crate) = 3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1 -SIZE (rust/crates/reqwest-0.11.20.crate) = 155122 -SHA256 (rust/crates/ring-0.16.20.crate) = 3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc -SIZE (rust/crates/ring-0.16.20.crate) = 5082615 +SHA256 (rust/crates/regex-syntax-0.8.2.crate) = c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f +SIZE (rust/crates/regex-syntax-0.8.2.crate) = 347228 +SHA256 (rust/crates/reqwest-0.11.24.crate) = c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251 +SIZE (rust/crates/reqwest-0.11.24.crate) = 160972 +SHA256 (rust/crates/rfc6979-0.3.1.crate) = 7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb +SIZE (rust/crates/rfc6979-0.3.1.crate) = 8460 +SHA256 (rust/crates/ring-0.17.7.crate) = 688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74 +SIZE (rust/crates/ring-0.17.7.crate) = 4146482 SHA256 (rust/crates/rmp-0.8.12.crate) = 7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20 SIZE (rust/crates/rmp-0.8.12.crate) = 28844 SHA256 (rust/crates/rmp-serde-1.1.2.crate) = bffea85eea980d8a74453e5d02a8d93028f3c34725de143085a844ebe953258a SIZE (rust/crates/rmp-serde-1.1.2.crate) = 30388 -SHA256 (rust/crates/roxmltree-0.18.0.crate) = d8f595a457b6b8c6cda66a48503e92ee8d19342f905948f29c383200ec9eb1d8 -SIZE (rust/crates/roxmltree-0.18.0.crate) = 42463 -SHA256 (rust/crates/rusqlite-0.29.0.crate) = 549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2 -SIZE (rust/crates/rusqlite-0.29.0.crate) = 137156 +SHA256 (rust/crates/roxmltree-0.19.0.crate) = 3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f +SIZE (rust/crates/roxmltree-0.19.0.crate) = 53547 +SHA256 (rust/crates/rusqlite-0.31.0.crate) = b838eba278d213a8beaf485bd313fd580ca4505a00d5871caeb1457c55322cae +SIZE (rust/crates/rusqlite-0.31.0.crate) = 152252 SHA256 (rust/crates/rustc-demangle-0.1.23.crate) = d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76 SIZE (rust/crates/rustc-demangle-0.1.23.crate) = 28970 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.38.9.crate) = 9bfe0f2582b4931a45d1fa608f8a8722e8b3c7ac54dd6d5f3b3212791fedef49 -SIZE (rust/crates/rustix-0.38.9.crate) = 340102 -SHA256 (rust/crates/rustls-0.20.8.crate) = fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f -SIZE (rust/crates/rustls-0.20.8.crate) = 270142 -SHA256 (rust/crates/rustls-0.21.6.crate) = 1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb -SIZE (rust/crates/rustls-0.21.6.crate) = 282907 +SHA256 (rust/crates/rustix-0.38.31.crate) = 6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949 +SIZE (rust/crates/rustix-0.38.31.crate) = 375443 +SHA256 (rust/crates/rustls-0.21.10.crate) = f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba +SIZE (rust/crates/rustls-0.21.10.crate) = 284920 +SHA256 (rust/crates/rustls-0.22.2.crate) = e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41 +SIZE (rust/crates/rustls-0.22.2.crate) = 332080 SHA256 (rust/crates/rustls-native-certs-0.6.3.crate) = a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00 SIZE (rust/crates/rustls-native-certs-0.6.3.crate) = 24438 -SHA256 (rust/crates/rustls-pemfile-1.0.3.crate) = 2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2 -SIZE (rust/crates/rustls-pemfile-1.0.3.crate) = 20432 -SHA256 (rust/crates/rustls-webpki-0.101.4.crate) = 7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d -SIZE (rust/crates/rustls-webpki-0.101.4.crate) = 164324 +SHA256 (rust/crates/rustls-native-certs-0.7.0.crate) = 8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792 +SIZE (rust/crates/rustls-native-certs-0.7.0.crate) = 25071 +SHA256 (rust/crates/rustls-pemfile-1.0.4.crate) = 1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c +SIZE (rust/crates/rustls-pemfile-1.0.4.crate) = 22092 +SHA256 (rust/crates/rustls-pemfile-2.0.0.crate) = 35e4980fa29e4c4b212ffb3db068a564cbf560e51d3944b7c88bd8bf5bec64f4 +SIZE (rust/crates/rustls-pemfile-2.0.0.crate) = 23799 +SHA256 (rust/crates/rustls-pki-types-1.2.0.crate) = 0a716eb65e3158e90e17cd93d855216e27bde02745ab842f2cab4a39dba1bacf +SIZE (rust/crates/rustls-pki-types-1.2.0.crate) = 21303 +SHA256 (rust/crates/rustls-webpki-0.101.7.crate) = 8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765 +SIZE (rust/crates/rustls-webpki-0.101.7.crate) = 168808 +SHA256 (rust/crates/rustls-webpki-0.102.2.crate) = faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610 +SIZE (rust/crates/rustls-webpki-0.102.2.crate) = 196881 SHA256 (rust/crates/rustversion-1.0.14.crate) = 7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4 SIZE (rust/crates/rustversion-1.0.14.crate) = 17261 -SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741 -SIZE (rust/crates/ryu-1.0.15.crate) = 46906 +SHA256 (rust/crates/ryu-1.0.16.crate) = f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c +SIZE (rust/crates/ryu-1.0.16.crate) = 47351 SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 SIZE (rust/crates/same-file-1.0.6.crate) = 10183 -SHA256 (rust/crates/schannel-0.1.22.crate) = 0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88 -SIZE (rust/crates/schannel-0.1.22.crate) = 41642 -SHA256 (rust/crates/schemars-0.8.12.crate) = 02c613288622e5f0c3fdc5dbd4db1c5fbe752746b1d1a56a0630b78fd00de44f -SIZE (rust/crates/schemars-0.8.12.crate) = 54931 -SHA256 (rust/crates/schemars_derive-0.8.12.crate) = 109da1e6b197438deb6db99952990c7f959572794b80ff93707d55a232545e7c -SIZE (rust/crates/schemars_derive-0.8.12.crate) = 18331 +SHA256 (rust/crates/schannel-0.1.23.crate) = fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534 +SIZE (rust/crates/schannel-0.1.23.crate) = 41667 +SHA256 (rust/crates/scheduled-thread-pool-0.2.7.crate) = 3cbc66816425a074528352f5789333ecff06ca41b36b0b0efdfbb29edc391a19 +SIZE (rust/crates/scheduled-thread-pool-0.2.7.crate) = 10554 +SHA256 (rust/crates/schemars-0.8.16.crate) = 45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29 +SIZE (rust/crates/schemars-0.8.16.crate) = 57072 +SHA256 (rust/crates/schemars_derive-0.8.16.crate) = c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967 +SIZE (rust/crates/schemars_derive-0.8.16.crate) = 19064 SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 -SHA256 (rust/crates/sct-0.7.0.crate) = d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4 -SIZE (rust/crates/sct-0.7.0.crate) = 27502 +SHA256 (rust/crates/sct-0.7.1.crate) = da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414 +SIZE (rust/crates/sct-0.7.1.crate) = 27501 +SHA256 (rust/crates/sec1-0.3.0.crate) = 3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928 +SIZE (rust/crates/sec1-0.3.0.crate) = 17615 SHA256 (rust/crates/secrecy-0.8.0.crate) = 9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e SIZE (rust/crates/secrecy-0.8.0.crate) = 11916 SHA256 (rust/crates/security-framework-2.9.2.crate) = 05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de SIZE (rust/crates/security-framework-2.9.2.crate) = 79295 SHA256 (rust/crates/security-framework-sys-2.9.1.crate) = e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a SIZE (rust/crates/security-framework-sys-2.9.1.crate) = 18284 -SHA256 (rust/crates/semver-1.0.18.crate) = b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918 -SIZE (rust/crates/semver-1.0.18.crate) = 29703 -SHA256 (rust/crates/serde-1.0.188.crate) = cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e -SIZE (rust/crates/serde-1.0.188.crate) = 76230 +SHA256 (rust/crates/semver-1.0.21.crate) = b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0 +SIZE (rust/crates/semver-1.0.21.crate) = 30445 +SHA256 (rust/crates/serde-1.0.196.crate) = 870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32 +SIZE (rust/crates/serde-1.0.196.crate) = 77097 SHA256 (rust/crates/serde-value-0.7.0.crate) = f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c SIZE (rust/crates/serde-value-0.7.0.crate) = 10249 -SHA256 (rust/crates/serde_bytes-0.11.12.crate) = ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff -SIZE (rust/crates/serde_bytes-0.11.12.crate) = 10910 -SHA256 (rust/crates/serde_derive-1.0.188.crate) = 4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2 -SIZE (rust/crates/serde_derive-1.0.188.crate) = 55563 +SHA256 (rust/crates/serde_bytes-0.11.14.crate) = 8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734 +SIZE (rust/crates/serde_bytes-0.11.14.crate) = 12018 +SHA256 (rust/crates/serde_derive-1.0.196.crate) = 33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67 +SIZE (rust/crates/serde_derive-1.0.196.crate) = 55775 SHA256 (rust/crates/serde_derive_internals-0.26.0.crate) = 85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c SIZE (rust/crates/serde_derive_internals-0.26.0.crate) = 25382 -SHA256 (rust/crates/serde_json-1.0.105.crate) = 693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360 -SIZE (rust/crates/serde_json-1.0.105.crate) = 146316 -SHA256 (rust/crates/serde_spanned-0.6.3.crate) = 96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186 -SIZE (rust/crates/serde_spanned-0.6.3.crate) = 7737 +SHA256 (rust/crates/serde_json-1.0.113.crate) = 69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79 +SIZE (rust/crates/serde_json-1.0.113.crate) = 146970 +SHA256 (rust/crates/serde_spanned-0.6.5.crate) = eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1 +SIZE (rust/crates/serde_spanned-0.6.5.crate) = 8349 SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822 -SHA256 (rust/crates/serde_yaml-0.8.26.crate) = 578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b -SIZE (rust/crates/serde_yaml-0.8.26.crate) = 40670 -SHA256 (rust/crates/sha1-0.10.5.crate) = f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3 -SIZE (rust/crates/sha1-0.10.5.crate) = 12146 -SHA256 (rust/crates/sha2-0.10.7.crate) = 479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8 -SIZE (rust/crates/sha2-0.10.7.crate) = 22541 -SHA256 (rust/crates/sharded-slab-0.1.4.crate) = 900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31 -SIZE (rust/crates/sharded-slab-0.1.4.crate) = 52479 +SHA256 (rust/crates/serde_yaml-0.9.31.crate) = adf8a49373e98a4c5f0ceb5d05aa7c648d75f63774981ed95b7c7443bbd50c6e +SIZE (rust/crates/serde_yaml-0.9.31.crate) = 65200 +SHA256 (rust/crates/sha1-0.10.6.crate) = e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba +SIZE (rust/crates/sha1-0.10.6.crate) = 13517 +SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8 +SIZE (rust/crates/sha2-0.10.8.crate) = 26357 +SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6 +SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227 SHA256 (rust/crates/signal-hook-registry-1.4.1.crate) = d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1 SIZE (rust/crates/signal-hook-registry-1.4.1.crate) = 17987 +SHA256 (rust/crates/signature-1.6.4.crate) = 74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c +SIZE (rust/crates/signature-1.6.4.crate) = 16012 SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67 SIZE (rust/crates/slab-0.4.9.crate) = 17108 -SHA256 (rust/crates/sled-0.34.7.crate) = 7f96b4737c2ce5987354855aed3797279def4ebf734436c6aa4552cf8e169935 -SIZE (rust/crates/sled-0.34.7.crate) = 485296 -SHA256 (rust/crates/smallvec-1.11.0.crate) = 62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9 -SIZE (rust/crates/smallvec-1.11.0.crate) = 34680 -SHA256 (rust/crates/socket2-0.4.9.crate) = 64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662 -SIZE (rust/crates/socket2-0.4.9.crate) = 45421 -SHA256 (rust/crates/socket2-0.5.3.crate) = 2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877 -SIZE (rust/crates/socket2-0.5.3.crate) = 52588 -SHA256 (rust/crates/spin-0.5.2.crate) = 6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d -SIZE (rust/crates/spin-0.5.2.crate) = 12004 +SHA256 (rust/crates/smallvec-1.13.1.crate) = e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7 +SIZE (rust/crates/smallvec-1.13.1.crate) = 34952 +SHA256 (rust/crates/socket2-0.5.5.crate) = 7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9 +SIZE (rust/crates/socket2-0.5.5.crate) = 54863 SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 SIZE (rust/crates/spin-0.9.8.crate) = 38958 +SHA256 (rust/crates/spki-0.6.0.crate) = 67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b +SIZE (rust/crates/spki-0.6.0.crate) = 14791 SHA256 (rust/crates/static_init-1.0.3.crate) = 8a2a1c578e98c1c16fc3b8ec1328f7659a500737d7a0c6d625e73e830ff9c1f6 SIZE (rust/crates/static_init-1.0.3.crate) = 78543 SHA256 (rust/crates/static_init_macro-1.0.2.crate) = 70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf @@ -617,112 +681,124 @@ SHA256 (rust/crates/subtle-2.5.0.crate) = 81cdd64d312baedb58e21336b31bc043b77e01 SIZE (rust/crates/subtle-2.5.0.crate) = 13909 SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 SIZE (rust/crates/syn-1.0.109.crate) = 237611 -SHA256 (rust/crates/syn-2.0.29.crate) = c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a -SIZE (rust/crates/syn-2.0.29.crate) = 241664 +SHA256 (rust/crates/syn-2.0.48.crate) = 0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f +SIZE (rust/crates/syn-2.0.48.crate) = 250566 +SHA256 (rust/crates/sync_wrapper-0.1.2.crate) = 2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160 +SIZE (rust/crates/sync_wrapper-0.1.2.crate) = 6933 SHA256 (rust/crates/synchronoise-1.0.1.crate) = 3dbc01390fc626ce8d1cffe3376ded2b72a11bb70e1c75f404a210e4daa4def2 SIZE (rust/crates/synchronoise-1.0.1.crate) = 15084 SHA256 (rust/crates/synstructure-0.12.6.crate) = f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f SIZE (rust/crates/synstructure-0.12.6.crate) = 18429 -SHA256 (rust/crates/tempfile-3.8.0.crate) = cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef -SIZE (rust/crates/tempfile-3.8.0.crate) = 31720 -SHA256 (rust/crates/termcolor-1.2.0.crate) = be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6 -SIZE (rust/crates/termcolor-1.2.0.crate) = 17917 +SHA256 (rust/crates/syslog-tracing-0.3.0.crate) = 340b1540dcdb6b066bc2966e7974f977ab1a38f21b2be189014ffb0cc2405768 +SIZE (rust/crates/syslog-tracing-0.3.0.crate) = 7932 +SHA256 (rust/crates/system-configuration-0.5.1.crate) = ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7 +SIZE (rust/crates/system-configuration-0.5.1.crate) = 12618 +SHA256 (rust/crates/system-configuration-sys-0.5.0.crate) = a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9 +SIZE (rust/crates/system-configuration-sys-0.5.0.crate) = 6730 +SHA256 (rust/crates/tempfile-3.9.0.crate) = 01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa +SIZE (rust/crates/tempfile-3.9.0.crate) = 32182 +SHA256 (rust/crates/termcolor-1.4.1.crate) = 06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755 +SIZE (rust/crates/termcolor-1.4.1.crate) = 18773 SHA256 (rust/crates/textwrap-0.11.0.crate) = d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060 SIZE (rust/crates/textwrap-0.11.0.crate) = 17322 -SHA256 (rust/crates/thiserror-1.0.47.crate) = 97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f -SIZE (rust/crates/thiserror-1.0.47.crate) = 18811 -SHA256 (rust/crates/thiserror-impl-1.0.47.crate) = 6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b -SIZE (rust/crates/thiserror-impl-1.0.47.crate) = 15080 +SHA256 (rust/crates/thiserror-1.0.56.crate) = d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad +SIZE (rust/crates/thiserror-1.0.56.crate) = 20592 +SHA256 (rust/crates/thiserror-impl-1.0.56.crate) = fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471 +SIZE (rust/crates/thiserror-impl-1.0.56.crate) = 15367 SHA256 (rust/crates/thread_local-1.1.7.crate) = 3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152 SIZE (rust/crates/thread_local-1.1.7.crate) = 13585 -SHA256 (rust/crates/time-0.1.45.crate) = 1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a -SIZE (rust/crates/time-0.1.45.crate) = 28911 -SHA256 (rust/crates/time-0.3.28.crate) = 17f6bb557fd245c28e6411aa56b6403c689ad95061f50e4be16c274e70a17e48 -SIZE (rust/crates/time-0.3.28.crate) = 117447 -SHA256 (rust/crates/time-core-0.1.1.crate) = 7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb -SIZE (rust/crates/time-core-0.1.1.crate) = 7197 -SHA256 (rust/crates/time-macros-0.2.14.crate) = 1a942f44339478ef67935ab2bbaec2fb0322496cf3cbe84b261e06ac3814c572 -SIZE (rust/crates/time-macros-0.2.14.crate) = 23766 -SHA256 (rust/crates/timeago-0.4.1.crate) = 5082dc942361cdfb74eab98bf995762d6015e5bb3a20bf7c5c71213778b4fcb4 -SIZE (rust/crates/timeago-0.4.1.crate) = 15419 +SHA256 (rust/crates/time-0.3.34.crate) = c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749 +SIZE (rust/crates/time-0.3.34.crate) = 118430 +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.17.crate) = 7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774 +SIZE (rust/crates/time-macros-0.2.17.crate) = 24443 +SHA256 (rust/crates/timeago-0.4.2.crate) = a1710e589de0a76aaf295cd47a6699f6405737dbfd3cf2b75c92d000b548d0e6 +SIZE (rust/crates/timeago-0.4.2.crate) = 18821 SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50 SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991 SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 -SHA256 (rust/crates/tokio-1.32.0.crate) = 17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9 -SIZE (rust/crates/tokio-1.32.0.crate) = 725004 +SHA256 (rust/crates/tokio-1.36.0.crate) = 61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931 +SIZE (rust/crates/tokio-1.36.0.crate) = 757286 SHA256 (rust/crates/tokio-io-timeout-1.2.0.crate) = 30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf SIZE (rust/crates/tokio-io-timeout-1.2.0.crate) = 8993 -SHA256 (rust/crates/tokio-macros-2.1.0.crate) = 630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e -SIZE (rust/crates/tokio-macros-2.1.0.crate) = 11472 -SHA256 (rust/crates/tokio-rustls-0.23.4.crate) = c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59 -SIZE (rust/crates/tokio-rustls-0.23.4.crate) = 27024 +SHA256 (rust/crates/tokio-macros-2.2.0.crate) = 5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b +SIZE (rust/crates/tokio-macros-2.2.0.crate) = 11520 SHA256 (rust/crates/tokio-rustls-0.24.1.crate) = c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081 SIZE (rust/crates/tokio-rustls-0.24.1.crate) = 33049 +SHA256 (rust/crates/tokio-rustls-0.25.0.crate) = 775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f +SIZE (rust/crates/tokio-rustls-0.25.0.crate) = 30541 SHA256 (rust/crates/tokio-stream-0.1.14.crate) = 397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842 SIZE (rust/crates/tokio-stream-0.1.14.crate) = 35881 SHA256 (rust/crates/tokio-util-0.6.10.crate) = 36943ee01a6d67977dd3f84a5a1d2efeb4ada3a1ae771cadfaa535d9d9fc6507 SIZE (rust/crates/tokio-util-0.6.10.crate) = 71140 -SHA256 (rust/crates/tokio-util-0.7.8.crate) = 806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d -SIZE (rust/crates/tokio-util-0.7.8.crate) = 101644 -SHA256 (rust/crates/toml-0.6.0.crate) = 4fb9d890e4dc9298b70f740f615f2e05b9db37dce531f6b24fb77ac993f9f217 -SIZE (rust/crates/toml-0.6.0.crate) = 47246 -SHA256 (rust/crates/toml_datetime-0.5.1.crate) = 4553f467ac8e3d374bc9a177a26801e5d0f9b211aa1673fb137a403afd1c9cf5 -SIZE (rust/crates/toml_datetime-0.5.1.crate) = 10593 -SHA256 (rust/crates/toml_edit-0.18.1.crate) = 56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b -SIZE (rust/crates/toml_edit-0.18.1.crate) = 102542 +SHA256 (rust/crates/tokio-util-0.7.10.crate) = 5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15 +SIZE (rust/crates/tokio-util-0.7.10.crate) = 110508 +SHA256 (rust/crates/toml-0.8.10.crate) = 9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290 +SIZE (rust/crates/toml-0.8.10.crate) = 50667 +SHA256 (rust/crates/toml_datetime-0.6.5.crate) = 3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1 +SIZE (rust/crates/toml_datetime-0.6.5.crate) = 10910 +SHA256 (rust/crates/toml_edit-0.22.5.crate) = 99e68c159e8f5ba8a28c4eb7b0c0c190d77bb479047ca713270048145a9ad28a +SIZE (rust/crates/toml_edit-0.22.5.crate) = 103292 SHA256 (rust/crates/tonic-0.6.2.crate) = ff08f4649d10a70ffa3522ca559031285d8e421d727ac85c60825761818f5d0a SIZE (rust/crates/tonic-0.6.2.crate) = 83750 SHA256 (rust/crates/tonic-build-0.6.2.crate) = 9403f1bafde247186684b230dc6f38b5cd514584e8bec1dd32514be4745fa757 SIZE (rust/crates/tonic-build-0.6.2.crate) = 12516 SHA256 (rust/crates/tower-0.4.13.crate) = b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c SIZE (rust/crates/tower-0.4.13.crate) = 106906 -SHA256 (rust/crates/tower-http-0.3.5.crate) = f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858 -SIZE (rust/crates/tower-http-0.3.5.crate) = 107116 +SHA256 (rust/crates/tower-http-0.4.4.crate) = 61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140 +SIZE (rust/crates/tower-http-0.4.4.crate) = 115612 SHA256 (rust/crates/tower-layer-0.3.2.crate) = c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0 SIZE (rust/crates/tower-layer-0.3.2.crate) = 6023 SHA256 (rust/crates/tower-service-0.3.2.crate) = b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52 SIZE (rust/crates/tower-service-0.3.2.crate) = 6847 -SHA256 (rust/crates/tracing-0.1.37.crate) = 8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8 -SIZE (rust/crates/tracing-0.1.37.crate) = 73888 -SHA256 (rust/crates/tracing-attributes-0.1.26.crate) = 5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab -SIZE (rust/crates/tracing-attributes-0.1.26.crate) = 32060 -SHA256 (rust/crates/tracing-core-0.1.31.crate) = 0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a -SIZE (rust/crates/tracing-core-0.1.31.crate) = 61263 +SHA256 (rust/crates/tracing-0.1.40.crate) = c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef +SIZE (rust/crates/tracing-0.1.40.crate) = 79459 +SHA256 (rust/crates/tracing-attributes-0.1.27.crate) = 34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7 +SIZE (rust/crates/tracing-attributes-0.1.27.crate) = 32241 +SHA256 (rust/crates/tracing-core-0.1.32.crate) = c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54 +SIZE (rust/crates/tracing-core-0.1.32.crate) = 61221 SHA256 (rust/crates/tracing-futures-0.2.5.crate) = 97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2 SIZE (rust/crates/tracing-futures-0.2.5.crate) = 11637 -SHA256 (rust/crates/tracing-log-0.1.3.crate) = 78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922 -SIZE (rust/crates/tracing-log-0.1.3.crate) = 20549 -SHA256 (rust/crates/tracing-subscriber-0.3.17.crate) = 30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77 -SIZE (rust/crates/tracing-subscriber-0.3.17.crate) = 191711 -SHA256 (rust/crates/treediff-3.0.2.crate) = 761e8d5ad7ce14bb82b7e61ccc0ca961005a275a060b9644a2431aa11553c2ff -SIZE (rust/crates/treediff-3.0.2.crate) = 8205 -SHA256 (rust/crates/try-lock-0.2.4.crate) = 3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed -SIZE (rust/crates/try-lock-0.2.4.crate) = 4467 -SHA256 (rust/crates/typenum-1.16.0.crate) = 497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba -SIZE (rust/crates/typenum-1.16.0.crate) = 42477 -SHA256 (rust/crates/unicode-bidi-0.3.13.crate) = 92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460 -SIZE (rust/crates/unicode-bidi-0.3.13.crate) = 44477 -SHA256 (rust/crates/unicode-ident-1.0.11.crate) = 301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c -SIZE (rust/crates/unicode-ident-1.0.11.crate) = 42067 +SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3 +SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561 +SHA256 (rust/crates/tracing-subscriber-0.3.18.crate) = ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b +SIZE (rust/crates/tracing-subscriber-0.3.18.crate) = 196312 +SHA256 (rust/crates/treediff-4.0.3.crate) = 4d127780145176e2b5d16611cc25a900150e86e9fd79d3bde6ff3a37359c9cb5 +SIZE (rust/crates/treediff-4.0.3.crate) = 19968 +SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b +SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 +SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825 +SIZE (rust/crates/typenum-1.17.0.crate) = 42849 +SHA256 (rust/crates/ucd-trie-0.1.6.crate) = ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9 +SIZE (rust/crates/ucd-trie-0.1.6.crate) = 45790 +SHA256 (rust/crates/unicode-bidi-0.3.15.crate) = 08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75 +SIZE (rust/crates/unicode-bidi-0.3.15.crate) = 56811 +SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b +SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921 SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604 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.10.crate) = c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b -SIZE (rust/crates/unicode-width-0.1.10.crate) = 18968 +SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85 +SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187 SHA256 (rust/crates/unicode-xid-0.2.4.crate) = f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c SIZE (rust/crates/unicode-xid-0.2.4.crate) = 15352 -SHA256 (rust/crates/untrusted-0.7.1.crate) = a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a -SIZE (rust/crates/untrusted-0.7.1.crate) = 7924 -SHA256 (rust/crates/url-2.4.0.crate) = 50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb -SIZE (rust/crates/url-2.4.0.crate) = 75670 +SHA256 (rust/crates/universal-hash-0.5.1.crate) = fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea +SIZE (rust/crates/universal-hash-0.5.1.crate) = 9146 +SHA256 (rust/crates/unsafe-libyaml-0.2.10.crate) = ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b +SIZE (rust/crates/unsafe-libyaml-0.2.10.crate) = 61964 +SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 +SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 +SHA256 (rust/crates/url-2.5.0.crate) = 31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633 +SIZE (rust/crates/url-2.5.0.crate) = 78605 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/uuid-1.2.2.crate) = 422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c -SIZE (rust/crates/uuid-1.2.2.crate) = 53669 +SHA256 (rust/crates/uuid-1.4.1.crate) = 79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d +SIZE (rust/crates/uuid-1.4.1.crate) = 55291 SHA256 (rust/crates/valuable-0.1.0.crate) = 830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d SIZE (rust/crates/valuable-0.1.0.crate) = 27718 SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 @@ -731,73 +807,91 @@ SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7 SIZE (rust/crates/version_check-0.9.4.crate) = 14895 SHA256 (rust/crates/vsimd-0.8.0.crate) = 5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64 SIZE (rust/crates/vsimd-0.8.0.crate) = 21377 -SHA256 (rust/crates/walkdir-2.3.3.crate) = 36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698 -SIZE (rust/crates/walkdir-2.3.3.crate) = 23125 +SHA256 (rust/crates/walkdir-2.4.0.crate) = d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee +SIZE (rust/crates/walkdir-2.4.0.crate) = 23550 SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e SIZE (rust/crates/want-0.3.1.crate) = 6398 -SHA256 (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f -SIZE (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 26964 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.87.crate) = 7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342 -SIZE (rust/crates/wasm-bindgen-0.2.87.crate) = 175052 -SHA256 (rust/crates/wasm-bindgen-backend-0.2.87.crate) = 5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd -SIZE (rust/crates/wasm-bindgen-backend-0.2.87.crate) = 26821 -SHA256 (rust/crates/wasm-bindgen-futures-0.4.37.crate) = c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03 -SIZE (rust/crates/wasm-bindgen-futures-0.4.37.crate) = 15193 -SHA256 (rust/crates/wasm-bindgen-macro-0.2.87.crate) = dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d -SIZE (rust/crates/wasm-bindgen-macro-0.2.87.crate) = 13897 -SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.87.crate) = 54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b -SIZE (rust/crates/wasm-bindgen-macro-support-0.2.87.crate) = 20006 -SHA256 (rust/crates/wasm-bindgen-shared-0.2.87.crate) = ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1 -SIZE (rust/crates/wasm-bindgen-shared-0.2.87.crate) = 7248 -SHA256 (rust/crates/web-sys-0.3.64.crate) = 9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b -SIZE (rust/crates/web-sys-0.3.64.crate) = 725584 -SHA256 (rust/crates/webpki-0.22.0.crate) = f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd -SIZE (rust/crates/webpki-0.22.0.crate) = 58663 -SHA256 (rust/crates/which-4.4.0.crate) = 2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269 -SIZE (rust/crates/which-4.4.0.crate) = 10889 +SHA256 (rust/crates/wasm-bindgen-0.2.90.crate) = b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406 +SIZE (rust/crates/wasm-bindgen-0.2.90.crate) = 182529 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.90.crate) = fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd +SIZE (rust/crates/wasm-bindgen-backend-0.2.90.crate) = 28348 +SHA256 (rust/crates/wasm-bindgen-futures-0.4.40.crate) = bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461 +SIZE (rust/crates/wasm-bindgen-futures-0.4.40.crate) = 15375 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.90.crate) = 3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999 +SIZE (rust/crates/wasm-bindgen-macro-0.2.90.crate) = 13904 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.90.crate) = bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7 +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.90.crate) = 20008 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.90.crate) = 4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b +SIZE (rust/crates/wasm-bindgen-shared-0.2.90.crate) = 7264 +SHA256 (rust/crates/web-sys-0.3.67.crate) = 58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed +SIZE (rust/crates/web-sys-0.3.67.crate) = 725967 +SHA256 (rust/crates/which-4.4.2.crate) = 87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7 +SIZE (rust/crates/which-4.4.2.crate) = 15953 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-util-0.1.6.crate) = f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596 +SIZE (rust/crates/winapi-util-0.1.6.crate) = 12234 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-0.48.0.crate) = e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f -SIZE (rust/crates/windows-0.48.0.crate) = 11864177 +SHA256 (rust/crates/windows-core-0.52.0.crate) = 33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9 +SIZE (rust/crates/windows-core-0.52.0.crate) = 42154 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-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904 +SHA256 (rust/crates/windows-targets-0.52.0.crate) = 8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd +SIZE (rust/crates/windows-targets-0.52.0.crate) = 6229 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.0.crate) = cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.0.crate) = 430182 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.0.crate) = bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef +SIZE (rust/crates/windows_aarch64_msvc-0.52.0.crate) = 821663 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.0.crate) = a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313 +SIZE (rust/crates/windows_i686_gnu-0.52.0.crate) = 870285 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.0.crate) = ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a +SIZE (rust/crates/windows_i686_msvc-0.52.0.crate) = 888693 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.0.crate) = 3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd +SIZE (rust/crates/windows_x86_64_gnu-0.52.0.crate) = 826213 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.0.crate) = 1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.0.crate) = 430165 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.0.crate) = dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04 +SIZE (rust/crates/windows_x86_64_msvc-0.52.0.crate) = 821600 +SHA256 (rust/crates/winnow-0.6.1.crate) = d90f4e0f530c4c69f62b80d839e9ef3855edc9cba471a160c4d692deed62b401 +SIZE (rust/crates/winnow-0.6.1.crate) = 157139 SHA256 (rust/crates/winreg-0.50.0.crate) = 524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1 SIZE (rust/crates/winreg-0.50.0.crate) = 29703 -SHA256 (rust/crates/xmlparser-0.13.5.crate) = 4d25c75bf9ea12c4040a97f829154768bbbce366287e2dc044af160cd79a13fd -SIZE (rust/crates/xmlparser-0.13.5.crate) = 26225 -SHA256 (rust/crates/xxhash-rust-0.8.6.crate) = 735a71d46c4d68d71d4b24d03fdc2b98e38cea81730595801db779c04fe80d70 -SIZE (rust/crates/xxhash-rust-0.8.6.crate) = 18569 -SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85 -SIZE (rust/crates/yaml-rust-0.4.5.crate) = 47783 -SHA256 (rust/crates/zeroize-1.6.0.crate) = 2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9 -SIZE (rust/crates/zeroize-1.6.0.crate) = 19049 -SHA256 (rust/crates/zstd-0.12.4.crate) = 1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c -SIZE (rust/crates/zstd-0.12.4.crate) = 30434 -SHA256 (rust/crates/zstd-safe-6.0.6.crate) = ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581 -SIZE (rust/crates/zstd-safe-6.0.6.crate) = 20828 -SHA256 (rust/crates/zstd-sys-2.0.8+zstd.1.5.5.crate) = 5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c -SIZE (rust/crates/zstd-sys-2.0.8+zstd.1.5.5.crate) = 736270 +SHA256 (rust/crates/xmlparser-0.13.6.crate) = 66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4 +SIZE (rust/crates/xmlparser-0.13.6.crate) = 26718 +SHA256 (rust/crates/xxhash-rust-0.8.8.crate) = 53be06678ed9e83edb1745eb72efc0bbcd7b5c3c35711a860906aed827a13d61 +SIZE (rust/crates/xxhash-rust-0.8.8.crate) = 18515 +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 (rust/crates/zeroize-1.7.0.crate) = 525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d +SIZE (rust/crates/zeroize-1.7.0.crate) = 19039 +SHA256 (rust/crates/zstd-0.13.0.crate) = bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110 +SIZE (rust/crates/zstd-0.13.0.crate) = 28911 +SHA256 (rust/crates/zstd-safe-7.0.0.crate) = 43747c7422e2924c11144d5229878b98180ef8b06cca4ab5af37afc8a8d8ea3e +SIZE (rust/crates/zstd-safe-7.0.0.crate) = 20463 +SHA256 (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656 +SIZE (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 728791 diff --git a/www/garage/files/garage.in b/www/garage/files/garage.in index 450497a37c4a..ebce1977d547 100644 --- a/www/garage/files/garage.in +++ b/www/garage/files/garage.in @@ -19,13 +19,14 @@ rcvar=${name}_enable load_rc_config $name : ${garage_enable="NO"} : ${garage_config="%%PREFIX%%/etc/garage.toml"} +: ${garage_log_file="/var/log/garage.log"} -command="%%PREFIX%%/bin/${name}" +command=/usr/sbin/daemon +procname="%%PREFIX%%/bin/${name}" required_files=${garage_config} -command_args="-c ${garage_config} server" +pidfile=/var/run/${name}.pid +command_args="-p $pidfile -H -o ${garage_log_file} -f $procname -c ${garage_config} server" -start_cmd="${command} -c ${garage_config} server" -stop_cmd="pkill -15 ${name}" -status_cmd="${command} status" +status_cmd="$procname -c ${garage_config} status" run_rc_command "$1" diff --git a/www/geckodriver/Makefile b/www/geckodriver/Makefile index bb23a5055fa1..bacece792c29 100644 --- a/www/geckodriver/Makefile +++ b/www/geckodriver/Makefile @@ -1,6 +1,6 @@ PORTNAME= geckodriver DISTVERSION= 0.26.0 -PORTREVISION= 42 +PORTREVISION= 43 CATEGORIES= www MASTER_SITES= https://hg.mozilla.org/mozilla-central/archive/${DISTNAME}.zip/testing/geckodriver/?dummy=/ DISTNAME= e9783a644016aa9b317887076618425586730d73 diff --git a/www/ghostunnel/Makefile b/www/ghostunnel/Makefile index 71007d6b9268..3c31db39a871 100644 --- a/www/ghostunnel/Makefile +++ b/www/ghostunnel/Makefile @@ -1,7 +1,7 @@ PORTNAME= ghostunnel DISTVERSIONPREFIX= v DISTVERSION= 1.7.3 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/gitea/Makefile b/www/gitea/Makefile index 3cf76ed025e7..388256b0a2ad 100644 --- a/www/gitea/Makefile +++ b/www/gitea/Makefile @@ -1,6 +1,6 @@ PORTNAME= gitea DISTVERSIONPREFIX= v -DISTVERSION= 1.21.10 +DISTVERSION= 1.21.11 PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://github.com/go-gitea/gitea/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/ \ @@ -54,9 +54,9 @@ DAEMONARGS= -f SUB_LIST+= DAEMONARGS="${DAEMONARGS}" SSP_UNSAFE= true -# Default LDFLAGS are incompatible with build -MAKE_ENV= LDFLAGS="${LDFLAGS} ${EXTRA_LDFLAGS}" -MAKE_ARGS= GOPATH=${WRKDIR} TAGS="${GO_TAGS}" +LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.CustomPath=${PREFIX}/etc/gitea"'" +LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.AppWorkPath=${PREFIX}/share/gitea"'" +MAKE_ARGS= GOPATH=${WRKDIR} TAGS="${GO_TAGS}" GOFLAGS="-buildvcs=false" ALL_TARGET= backend MAKE_JOBS_UNSAFE= yes diff --git a/www/gitea/distinfo b/www/gitea/distinfo index dc9d1ba1ea14..def33049cfee 100644 --- a/www/gitea/distinfo +++ b/www/gitea/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712013611 -SHA256 (gitea-src-1.21.10.tar.gz) = 83f68344800a68f8bc0165892f837c099b763781c11162bbc5206f8eb70f0c3f -SIZE (gitea-src-1.21.10.tar.gz) = 53972181 +TIMESTAMP = 1715269556 +SHA256 (gitea-src-1.21.11.tar.gz) = 4f1cac5f0de555d57f86520bced33e0fbc08a5ea977e0940cbb024d80c679443 +SIZE (gitea-src-1.21.11.tar.gz) = 54029294 diff --git a/www/gitea/files/app.ini.sample.in b/www/gitea/files/app.ini.sample.in index f0e6c811ee60..71cccbf31650 100644 --- a/www/gitea/files/app.ini.sample.in +++ b/www/gitea/files/app.ini.sample.in @@ -10,10 +10,10 @@ # JWT_SECRET, and SECRET_KEY variables. SECRET_KEY is a password of your # choosing, INTERNAL_TOKEN is a 64-byte random number in BASE64 encoding, # JWT_SECRET is a 32-byte random number in BASE64 encoding. -# +# # You can generate the token using for example: # openssl rand -base64 64 -# +# # You can let Gitea add these to the config for you; you need to make # app.ini writeable by the git user. # @@ -24,15 +24,15 @@ # If you'd rather use the web-based installer, remove this conf/app.ini file # and make %%PREFIX%%/etc/gitea/conf writeable to the git user. -APP_NAME = Gitea: Git with a cup of tea -RUN_USER = %%GITUSER%% +APP_NAME = Gitea: A self-hosted lightweight software forge RUN_MODE = prod +RUN_USER = %%GITUSER%% [database] DB_TYPE = sqlite3 HOST = 127.0.0.1:3306 NAME = gitea -PASSWD = +PASSWD = PATH = /var/db/gitea/gitea.db SSL_MODE = disable USER = root @@ -41,19 +41,19 @@ USER = root ISSUE_INDEXER_PATH = /var/db/gitea/indexers/issues.bleve [log] -ROOT_PATH = /var/log/gitea -MODE = file LEVEL = Info +MODE = file +ROOT_PATH = /var/log/gitea [mailer] ENABLED = false [oauth2] -JWT_SECRET = D56bmu6xCtEKs9vKKgMKnsa4X9FDwo64HVyaS4fQ4mY +JWT_SECRET = CHANGE_ME [picture] AVATAR_UPLOAD_PATH = /var/db/gitea/data/avatars -DISABLE_GRAVATAR = false +DISABLE_GRAVATAR = true ENABLE_FEDERATED_AVATAR = false [repository] @@ -66,28 +66,28 @@ SCRIPT_TYPE = sh TEMP_PATH = /var/db/gitea/data/tmp/uploads [security] -INSTALL_LOCK = true -INTERNAL_TOKEN = 1FFhAklka01JhgJTRUrFujWYiv4ijqcTIfXJ9o4n1fWxz+XVQdXhrqDTlsnD7fvz7gugdhgkx0FY2Lx6IBdPQw== -SECRET_KEY = ChangeMeBeforeRunning +INSTALL_LOCK = true +INTERNAL_TOKEN = CHANGE_ME +SECRET_KEY = CHANGE_ME [session] -PROVIDER = file +PROVIDER = file PROVIDER_CONFIG = /var/db/gitea/data/sessions [server] -DOMAIN = localhost -HTTP_ADDR = 127.0.0.1 -HTTP_PORT = 3000 -ROOT_URL = http://localhost:3000/ -DISABLE_SSH = false -SSH_DOMAIN = %(DOMAIN)s -SSH_PORT = 22 -OFFLINE_MODE = false APP_DATA_PATH = /var/db/gitea/data +DISABLE_SSH = false +DOMAIN = localhost +HTTP_ADDR = 127.0.0.1 +HTTP_PORT = 3000 +OFFLINE_MODE = false +ROOT_URL = http://localhost:3000/ +SSH_DOMAIN = %(DOMAIN)s +SSH_PORT = 22 [service] -REGISTER_EMAIL_CONFIRM = false -ENABLE_NOTIFY_MAIL = false DISABLE_REGISTRATION = false ENABLE_CAPTCHA = true +ENABLE_NOTIFY_MAIL = false +REGISTER_EMAIL_CONFIRM = false REQUIRE_SIGNIN_VIEW = false diff --git a/www/gitea/files/gitea.in b/www/gitea/files/gitea.in index 5e75ad5d5143..566a4b46ef93 100644 --- a/www/gitea/files/gitea.in +++ b/www/gitea/files/gitea.in @@ -17,8 +17,9 @@ load_rc_config $name : ${gitea_user:="%%GITUSER%%"} : ${gitea_enable:="NO"} +: ${gitea_configcheck_enable:="YES"} : ${gitea_facility:="daemon"} -: ${gitea_priority:="debug"} +: ${gitea_priority:="info"} : ${gitea_shared:="%%PREFIX%%/share/${name}"} : ${gitea_custom:="%%PREFIX%%/etc/${name}"} @@ -29,6 +30,7 @@ githome="$(eval echo ~${gitea_user})" pidfile="/var/run/${name}.pid" start_cmd="${name}_start" +start_precmd="${name}_prestart" gitea_start() { for d in /var/db/gitea /var/log/gitea; do @@ -48,4 +50,16 @@ gitea_start() { $command } +gitea_prestart() { + if checkyesno gitea_configcheck_enable; then + if su -m ${gitea_user} -c "%%PREFIX%%/sbin/${name} doctor check >/dev/null"; then + else + echo "cannot start ${name} because of configuration errors. Run" >&2 + echo " su -m git -c '${name} doctor check'" >&2 + echo "for further details" + return 1 + fi + fi +} + run_rc_command "$1" diff --git a/www/gitlab-pages/Makefile b/www/gitlab-pages/Makefile index 3e2e381a9b8e..a18542f43cfa 100644 --- a/www/gitlab-pages/Makefile +++ b/www/gitlab-pages/Makefile @@ -1,7 +1,6 @@ PORTNAME= gitlab-pages -PORTVERSION= 16.11.0 +PORTVERSION= 17.0.0 DISTVERSIONPREFIX= v -PORTREVISION= 1 CATEGORIES= www MASTER_SITES+= https://gitlab.com/gitlab-org/gitlab-pages/-/raw/v${DISTVERSION}/ DISTFILES+= go.mod diff --git a/www/gitlab-pages/distinfo b/www/gitlab-pages/distinfo index 1acd35b85cba..372f6cb8936a 100644 --- a/www/gitlab-pages/distinfo +++ b/www/gitlab-pages/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1713633989 -SHA256 (go/www_gitlab-pages/gitlab-pages-v16.11.0/go.mod) = de0926d06d56e5cdb84c2c4fd4bc05bb9c8c3724a8e1cf8c0f775856958540ba -SIZE (go/www_gitlab-pages/gitlab-pages-v16.11.0/go.mod) = 3328 -SHA256 (go/www_gitlab-pages/gitlab-pages-v16.11.0/gitlab-pages-v16.11.0.tar.bz2) = d9180a31353be2e9c41d22e2a9d91cad62cc4ef00ef7ae202170fde0aea2c9fc -SIZE (go/www_gitlab-pages/gitlab-pages-v16.11.0/gitlab-pages-v16.11.0.tar.bz2) = 212557 +TIMESTAMP = 1716142216 +SHA256 (go/www_gitlab-pages/gitlab-pages-v17.0.0/go.mod) = de0926d06d56e5cdb84c2c4fd4bc05bb9c8c3724a8e1cf8c0f775856958540ba +SIZE (go/www_gitlab-pages/gitlab-pages-v17.0.0/go.mod) = 3328 +SHA256 (go/www_gitlab-pages/gitlab-pages-v17.0.0/gitlab-pages-v17.0.0.tar.bz2) = cc73f2d8055c117bce32a7e4927e9f24b400e75949351764438dbd394e5929d8 +SIZE (go/www_gitlab-pages/gitlab-pages-v17.0.0/gitlab-pages-v17.0.0.tar.bz2) = 212538 diff --git a/www/gitlab-workhorse/Makefile b/www/gitlab-workhorse/Makefile index edd5eea933ed..9367d2cdedc0 100644 --- a/www/gitlab-workhorse/Makefile +++ b/www/gitlab-workhorse/Makefile @@ -1,5 +1,5 @@ PORTNAME= gitlab-workhorse -PORTVERSION= 16.11.0 +PORTVERSION= 17.0.0 DISTVERSIONPREFIX= v CATEGORIES= www diff --git a/www/gitlab-workhorse/distinfo b/www/gitlab-workhorse/distinfo index 9012462a1600..035ced8802a7 100644 --- a/www/gitlab-workhorse/distinfo +++ b/www/gitlab-workhorse/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1713633714 -SHA256 (go/www_gitlab-workhorse/gitlab-foss-v16.11.0/go.mod) = 2c1ff4ba288aa4bf72cc93438b6dda7660257f50eeb7823f9acc0dde5412c499 -SIZE (go/www_gitlab-workhorse/gitlab-foss-v16.11.0/go.mod) = 7010 -SHA256 (go/www_gitlab-workhorse/gitlab-foss-v16.11.0/gitlab-foss-v16.11.0.tar.bz2) = f37af6af67c0d281000098519dec8b62acd678c633c121cf6135d4874f6319c8 -SIZE (go/www_gitlab-workhorse/gitlab-foss-v16.11.0/gitlab-foss-v16.11.0.tar.bz2) = 102630775 +TIMESTAMP = 1716138943 +SHA256 (go/www_gitlab-workhorse/gitlab-foss-v17.0.0/go.mod) = 01accf76d651c177faba180d5d544c1509d3af644af5acb5a7c40268b744f99e +SIZE (go/www_gitlab-workhorse/gitlab-foss-v17.0.0/go.mod) = 7030 +SHA256 (go/www_gitlab-workhorse/gitlab-foss-v17.0.0/gitlab-foss-v17.0.0.tar.bz2) = b4c809cf09846f3dff3c55cba6a6e6a7d16c0e790b2f2c86bf3cf89a67b7bd9f +SIZE (go/www_gitlab-workhorse/gitlab-foss-v17.0.0/gitlab-foss-v17.0.0.tar.bz2) = 103670734 diff --git a/www/gitlab/Makefile b/www/gitlab/Makefile index 106abedfe63a..2b4b3be37543 100644 --- a/www/gitlab/Makefile +++ b/www/gitlab/Makefile @@ -1,6 +1,7 @@ PORTNAME= gitlab-${FLAVOR:Uce} -PORTVERSION= 16.11.0 +PORTVERSION= 17.0.0 DISTVERSIONPREFIX= v +PORTREVISION= 1 .if ${FLAVOR:U} == ee DISTVERSIONSUFFIX= -ee .endif @@ -8,9 +9,9 @@ DISTVERSIONSUFFIX= -ee CATEGORIES= www devel # include patch to fix database migration -#https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138018.patch -#PATCH_SITES= https://gitlab.com/gitlab-org/gitlab/-/merge_requests/ -#PATCHFILES+= 138018.patch:-p1 # https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138018 +#https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153560.patch +PATCH_SITES= https://gitlab.com/gitlab-org/gitlab/-/merge_requests/ +PATCHFILES+= 153560.patch:-p1 # https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153560 MAINTAINER= mfechner@FreeBSD.org COMMENT= Web GUI for managing git repositories @@ -29,7 +30,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE MY_DEPENDS= git>=2.41.0:devel/git \ gitaly>=${PORTVERSION}:devel/gitaly \ gitlab-elasticsearch-indexer>=4.8.0:textproc/gitlab-elasticsearch-indexer \ - gitlab-agent>=16.10.1:net/gitlab-agent \ + gitlab-agent>=${PORTVERSION}:net/gitlab-agent \ gitlab-pages>=${PORTVERSION}:www/gitlab-pages \ gitlab-shell>=14.35.0:devel/gitlab-shell \ gitlab-workhorse>=${PORTVERSION}:www/gitlab-workhorse \ @@ -46,7 +47,7 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-ipaddr>=1.2.5<1.3:net/rubygem-ipaddr \ rubygem-responders-rails70>=3.0<4.0:www/rubygem-responders-rails70 \ rubygem-sprockets3>=3.7<3.8:devel/rubygem-sprockets3 \ - rubygem-view_component-rails70>=3.11.0<3.12:devel/rubygem-view_component-rails70 \ + rubygem-view_component-rails70>=3.12.1<3.13:devel/rubygem-view_component-rails70 \ rubygem-pg>=1.5.6<1.6:databases/rubygem-pg \ rubygem-neighbor>=0.2.3<0.3:databases/rubygem-neighbor \ rubygem-rugged>=1.6<2:devel/rubygem-rugged \ @@ -62,15 +63,12 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-omniauth>=2.1.0<3:security/rubygem-omniauth \ rubygem-omniauth-auth0>=3.1.0<3.2.0:net/rubygem-omniauth-auth0 \ rubygem-omniauth-azure-activedirectory-v2>=2.0<3:net/rubygem-omniauth-azure-activedirectory-v2 \ - rubygem-omniauth-dingtalk-oauth2>=1.0.1<2:security/rubygem-omniauth-dingtalk-oauth2 \ rubygem-omniauth-alicloud>=3.0.0<3.1:security/rubygem-omniauth-alicloud \ - rubygem-omniauth-facebook>=4.0.0:net/rubygem-omniauth-facebook \ rubygem-omniauth-github>=2.0.1<2.1:net/rubygem-omniauth-github \ rubygem-omniauth-google-oauth2>=1.1<2:net/rubygem-omniauth-google-oauth2 \ rubygem-omniauth-oauth2-generic>=0.2.2<0.3.0:security/rubygem-omniauth-oauth2-generic \ rubygem-omniauth-saml>=2.1.0<3:security/rubygem-omniauth-saml \ rubygem-omniauth-shibboleth-redux>=2.0<3:security/rubygem-omniauth-shibboleth-redux \ - rubygem-omniauth-twitter>=1.4<2.0:net/rubygem-omniauth-twitter \ rubygem-omniauth_openid_connect>=0.6.1<0.7.0:net/rubygem-omniauth_openid_connect \ rubygem-openid_connect>=1.3.1<1.3.2:net/rubygem-openid_connect \ rubygem-omniauth-atlassian-oauth2>=0.2.0<0.3:security/rubygem-omniauth-atlassian-oauth2 \ @@ -85,18 +83,18 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-validates_hostname>=1.0.13<1.1.0:dns/rubygem-validates_hostname \ rubygem-rubyzip>=2.3.2<2.4:archivers/rubygem-rubyzip \ rubygem-acme-client>=2.0.9<3:security/rubygem-acme-client \ - rubygem-browser>=5.3.1<5.4:www/rubygem-browser \ + rubygem-browser5>=5.3.1<5.4:www/rubygem-browser5 \ rubygem-ohai>=18.1<19:sysutils/rubygem-ohai \ rubygem-gpgme>=2.0.23<2.1.0:security/rubygem-gpgme \ rubygem-gitlab_omniauth-ldap>=2.2.0<2.3.0:net/rubygem-gitlab_omniauth-ldap \ rubygem-net-ldap017>=0.17.1<0.18:net/rubygem-net-ldap017 \ rubygem-grape>=2.0.0<2.1:devel/rubygem-grape \ - rubygem-grape-entity>=0.10.2<0.11.0,1:devel/rubygem-grape-entity \ - rubygem-grape-swagger>=2.0.2<2.1:devel/rubygem-grape-swagger \ + rubygem-grape-entity>=1.0.1<1.1,1:devel/rubygem-grape-entity \ + rubygem-grape-swagger20>=2.0.2<2.1:devel/rubygem-grape-swagger20 \ rubygem-grape-swagger-entity>=0.5.1<0.6:devel/rubygem-grape-swagger-entity \ rubygem-grape-path-helpers>=2.0.1<2.1:devel/rubygem-grape-path-helpers \ rubygem-rack-cors>=2.0.1<2.1:www/rubygem-rack-cors \ - rubygem-graphql>=2.2.5<2.3:devel/rubygem-graphql \ + rubygem-graphql>=2.3.2<2.4:devel/rubygem-graphql \ rubygem-graphql-docs>=4.0.0<4.1.0:devel/rubygem-graphql-docs \ rubygem-graphiql-rails>=1.8.0<1.9:devel/rubygem-graphiql-rails \ rubygem-apollo_upload_server>=2.1.5<2.2:net/rubygem-apollo_upload_server \ @@ -109,7 +107,7 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-mini_magick>=4.12<5:graphics/rubygem-mini_magick \ rubygem-fog-aws>=3.18<4:net/rubygem-fog-aws \ rubygem-fog-core210>=2.1.0<2.1.1:devel/rubygem-fog-core210 \ - rubygem-fog-google>=1.19<2:net/rubygem-fog-google \ + rubygem-fog-google>=1.24.1<1.25:net/rubygem-fog-google \ rubygem-fog-local>=0.8<1.0:net/rubygem-fog-local \ rubygem-fog-aliyun>=0.4<1.0:net/rubygem-fog-aliyun \ rubygem-gitlab-fog-azure-rm>=1.9.1<1.10:net/rubygem-gitlab-fog-azure-rm \ @@ -132,9 +130,9 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-elasticsearch-model713>=7.2<8:textproc/rubygem-elasticsearch-model713 \ rubygem-elasticsearch-rails>=7.2<8:textproc/rubygem-elasticsearch-rails \ rubygem-elasticsearch-api713>=7.13.3<7.13.4:textproc/rubygem-elasticsearch-api713 \ - rubygem-aws-sdk-core>=3.191.6<4:devel/rubygem-aws-sdk-core \ + rubygem-aws-sdk-core>=3.194.2<4:devel/rubygem-aws-sdk-core \ rubygem-aws-sdk-cloudformation>=1<2:devel/rubygem-aws-sdk-cloudformation \ - rubygem-aws-sdk-s3>=1.146.1<2:devel/rubygem-aws-sdk-s3 \ + rubygem-aws-sdk-s3>=1.149.1<2:devel/rubygem-aws-sdk-s3 \ rubygem-faraday_middleware-aws-sigv403>=0.3.0<0.4:devel/rubygem-faraday_middleware-aws-sigv403 \ rubygem-typhoeus>=1.4.0<1.5:www/rubygem-typhoeus \ rubygem-html-pipeline>=2.14.3<2.15:textproc/rubygem-html-pipeline \ @@ -153,7 +151,7 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-rouge>=4.2.0<4.3:textproc/rubygem-rouge \ rubygem-truncato>=0.7.12<0.8.0:textproc/rubygem-truncato \ rubygem-nokogiri>=1.16<2:textproc/rubygem-nokogiri \ - rubygem-gitlab-glfm-markdown>=0.0.14<0.1:textproc/rubygem-gitlab-glfm-markdown \ + rubygem-gitlab-glfm-markdown>=0.0.16<0.1:textproc/rubygem-gitlab-glfm-markdown \ rubygem-icalendar>=0:devel/rubygem-icalendar \ rubygem-diffy>=3.4<4:textproc/rubygem-diffy \ rubygem-rack22>=2.2.8.1,3<2.3,3:www/rubygem-rack22 \ @@ -165,17 +163,17 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-sidekiq71>=7.1.6<7.2:devel/rubygem-sidekiq71 \ rubygem-sidekiq-cron-rails70>=1.12.0<1.13:devel/rubygem-sidekiq-cron-rails70 \ rubygem-fugit18>=1.8.1<1.9:devel/rubygem-fugit18 \ - rubygem-httparty>=0.21.0<0.22:www/rubygem-httparty \ + rubygem-httparty021>=0.21.0<0.22:www/rubygem-httparty021 \ rubygem-rainbow>=3.1.1<4.0:devel/rubygem-rainbow \ rubygem-ruby-progressbar>=1.11<2:devel/rubygem-ruby-progressbar \ rubygem-re2>=2.7.0<2.8:devel/rubygem-re2 \ - rubygem-semver_dialects>=2.0.2<3:devel/rubygem-semver_dialects \ + rubygem-semver_dialects2>=2.0.2<3:devel/rubygem-semver_dialects2 \ rubygem-version_sorter>=2.3<3:textproc/rubygem-version_sorter \ rubygem-js_regex>=3.8<4.0:textproc/rubygem-js_regex \ rubygem-device_detector>=0:devel/rubygem-device_detector \ - rubygem-redis-namespace110>=1.10.0<1.11:databases/rubygem-redis-namespace110 \ - rubygem-redis50>=5.0.0<5.1:databases/rubygem-redis50 \ - rubygem-redis-clustering50>=5.0.0<5.1:databases/rubygem-redis-clustering50 \ + rubygem-redis-namespace>=1.11.0<1.12:databases/rubygem-redis-namespace \ + rubygem-redis>=5.2.0<5.3:databases/rubygem-redis \ + rubygem-redis-clustering>=5.2.0<5.3:databases/rubygem-redis-clustering \ rubygem-connection_pool>=2.4.1<3.0:net/rubygem-connection_pool \ rubygem-redis-actionpack-rails70>=5.4.0<5.5:databases/rubygem-redis-actionpack-rails70 \ rubygem-discordrb-webhooks>=3.5<4.0:net-im/rubygem-discordrb-webhooks \ @@ -205,22 +203,44 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-base32>=0.3.0<0.4.0:converters/rubygem-base32 \ rubygem-gitlab-license>=2.4<3:devel/rubygem-gitlab-license \ rubygem-rack-attack>=6.7.0<6.8:www/rubygem-rack-attack \ - rubygem-sentry-raven>=3.1<4.0:devel/rubygem-sentry-raven \ - rubygem-sentry-ruby>=5.10.0<5.11:devel/rubygem-sentry-ruby \ - rubygem-sentry-rails>=5.10.0<5.11:devel/rubygem-sentry-rails \ - rubygem-sentry-sidekiq>=5.10.0<5.11:devel/rubygem-sentry-sidekiq \ + rubygem-sentry-ruby>=5.17.3<5.18:devel/rubygem-sentry-ruby \ + rubygem-sentry-rails>=5.17.3<5.18:devel/rubygem-sentry-rails \ + rubygem-sentry-sidekiq>=5.17.3<5.18:devel/rubygem-sentry-sidekiq \ rubygem-pg_query>=5.1.0<5.2:databases/rubygem-pg_query \ rubygem-premailer-rails110-rails70>=1.10.3<1.11:mail/rubygem-premailer-rails110-rails70 \ - rubygem-gitlab-labkit>=0.35.1<0.36:devel/rubygem-gitlab-labkit \ + rubygem-gitlab-labkit>=0.36.0<0.37:devel/rubygem-gitlab-labkit \ rubygem-thrift>=0.16.0:devel/rubygem-thrift \ - rubygem-rails-i18n-rails70>=7.0<8:devel/rubygem-rails-i18n-rails70 \ + rubygem-rails-i18n-rails70>=7.0.9<8:devel/rubygem-rails-i18n-rails70 \ rubygem-gettext_i18n_rails>=1.12.0<1.13:devel/rubygem-gettext_i18n_rails \ rubygem-gettext>=3.4<4:devel/rubygem-gettext \ - rubygem-batch-loader>=2.0.1<2.1:devel/rubygem-batch-loader \ + rubygem-batch-loader>=2.0.5<2.1:devel/rubygem-batch-loader \ rubygem-peek-rails70>=1.1<2.0:devel/rubygem-peek-rails70 \ rubygem-snowplow-tracker>=0.8.0<1:devel/rubygem-snowplow-tracker \ rubygem-webrick>=1.8.1<1.9:www/rubygem-webrick \ rubygem-prometheus-client-mmap>=1.1.1<2:devel/rubygem-prometheus-client-mmap \ + rubygem-opentelemetry-sdk>=1.4.0:devel/rubygem-opentelemetry-sdk \ + rubygem-opentelemetry-exporter-otlp>=0.26.3:devel/rubygem-opentelemetry-exporter-otlp \ + rubygem-opentelemetry-instrumentation-active_support>=0.5.1:devel/rubygem-opentelemetry-instrumentation-active_support \ + rubygem-opentelemetry-instrumentation-action_pack>=0.9.0:devel/rubygem-opentelemetry-instrumentation-action_pack \ + rubygem-opentelemetry-instrumentation-active_job>=0.7.1:devel/rubygem-opentelemetry-instrumentation-active_job \ + rubygem-opentelemetry-instrumentation-active_record>=0.7.0:devel/rubygem-opentelemetry-instrumentation-active_record \ + rubygem-opentelemetry-instrumentation-action_view>=0.7.0:devel/rubygem-opentelemetry-instrumentation-action_view \ + rubygem-opentelemetry-instrumentation-aws_sdk>=0.5.1:devel/rubygem-opentelemetry-instrumentation-aws_sdk \ + rubygem-opentelemetry-instrumentation-http>=0.23.2:devel/rubygem-opentelemetry-instrumentation-http \ + rubygem-opentelemetry-instrumentation-concurrent_ruby>=0.21.2:devel/rubygem-opentelemetry-instrumentation-concurrent_ruby \ + rubygem-opentelemetry-instrumentation-ethon>=0.21.3:devel/rubygem-opentelemetry-instrumentation-ethon \ + rubygem-opentelemetry-instrumentation-excon>=0.22.0:devel/rubygem-opentelemetry-instrumentation-excon \ + rubygem-opentelemetry-instrumentation-faraday>=0.24.0:devel/rubygem-opentelemetry-instrumentation-faraday \ + rubygem-opentelemetry-instrumentation-grape>=0.1.6:devel/rubygem-opentelemetry-instrumentation-grape \ + rubygem-opentelemetry-instrumentation-graphql>=0.28.0:devel/rubygem-opentelemetry-instrumentation-graphql \ + rubygem-opentelemetry-instrumentation-http_client>=0.22.3:devel/rubygem-opentelemetry-instrumentation-http_client \ + rubygem-opentelemetry-instrumentation-net_http>=0.22.4:devel/rubygem-opentelemetry-instrumentation-net_http \ + rubygem-opentelemetry-instrumentation-pg>=0.27.1:devel/rubygem-opentelemetry-instrumentation-pg \ + rubygem-opentelemetry-instrumentation-rack>=0.24.0:devel/rubygem-opentelemetry-instrumentation-rack \ + rubygem-opentelemetry-instrumentation-rails>=0.30.0:devel/rubygem-opentelemetry-instrumentation-rails \ + rubygem-opentelemetry-instrumentation-rake>=0.2.1:devel/rubygem-opentelemetry-instrumentation-rake \ + rubygem-opentelemetry-instrumentation-redis>=0.25.3:devel/rubygem-opentelemetry-instrumentation-redis \ + rubygem-opentelemetry-instrumentation-sidekiq>=0.25.2:devel/rubygem-opentelemetry-instrumentation-sidekiq \ rubygem-warning>=1.3.0<1.4:devel/rubygem-warning \ rubygem-gitlab-dangerfiles>=4.7.0<4.8:devel/rubygem-gitlab-dangerfiles \ rubygem-license_finder>=7.0.0<8:devel/rubygem-license_finder \ @@ -240,9 +260,9 @@ MY_DEPENDS= git>=2.41.0:devel/git \ rubygem-net-ntp>0:net/rubygem-net-ntp \ rubygem-ssh_data>=1.3<2:security/rubygem-ssh_data \ rubygem-spamcheck>=1.3.0<1.4:net/rubygem-spamcheck \ - rubygem-gitaly>=16.11.0.pre.rc1<16.12.0:net/rubygem-gitaly \ - rubygem-kas-grpc>=0.4.0,1<0.5.0,1:net/rubygem-kas-grpc \ - rubygem-grpc>=1.60.0<2:net/rubygem-grpc \ + rubygem-gitaly>=17.0.0.pre.rc2<17.1:net/rubygem-gitaly \ + rubygem-kas-grpc>=0.5.0,1<0.6.0,1:net/rubygem-kas-grpc \ + rubygem-grpc>=1.63.0<2:net/rubygem-grpc \ rubygem-google-protobuf>=3.25.3<4:devel/rubygem-google-protobuf \ rubygem-toml-rb>=2.2.0<3:www/rubygem-toml-rb \ rubygem-flipper026>=0.26.2<0.27:devel/rubygem-flipper026 \ diff --git a/www/gitlab/distinfo b/www/gitlab/distinfo index 88ec868535d7..b0bc52a92852 100644 --- a/www/gitlab/distinfo +++ b/www/gitlab/distinfo @@ -1,6 +1,10 @@ -TIMESTAMP = 1713633902 -SHA256 (gitlab-foss-v16.11.0.tar.bz2) = f37af6af67c0d281000098519dec8b62acd678c633c121cf6135d4874f6319c8 -SIZE (gitlab-foss-v16.11.0.tar.bz2) = 102630775 -TIMESTAMP = 1713633967 -SHA256 (gitlab-v16.11.0-ee.tar.bz2) = 93d25af24702d173e52eee9ef2437c0b5faf688b675d9e8358d0f496e7fb960f -SIZE (gitlab-v16.11.0-ee.tar.bz2) = 110296983 +TIMESTAMP = 1716264608 +SHA256 (gitlab-foss-v17.0.0.tar.bz2) = b4c809cf09846f3dff3c55cba6a6e6a7d16c0e790b2f2c86bf3cf89a67b7bd9f +SIZE (gitlab-foss-v17.0.0.tar.bz2) = 103670734 +SHA256 (153560.patch) = 1303cf562fac571b092395cae264544156547ad15a99a9fdac3b27e7083b2027 +SIZE (153560.patch) = 1404 +TIMESTAMP = 1716264608 +SHA256 (gitlab-v17.0.0-ee.tar.bz2) = a83518a3edc711a91b9941f96365b2f869d8db411db4ee5bd5b1f27f42555672 +SIZE (gitlab-v17.0.0-ee.tar.bz2) = 111194012 +SHA256 (153560.patch) = 1303cf562fac571b092395cae264544156547ad15a99a9fdac3b27e7083b2027 +SIZE (153560.patch) = 1404 diff --git a/www/gitlab/files/patch-Gemfile b/www/gitlab/files/patch-Gemfile index 19e303a3e6a7..cb36ba55d06e 100644 --- a/www/gitlab/files/patch-Gemfile +++ b/www/gitlab/files/patch-Gemfile @@ -1,4 +1,4 @@ ---- Gemfile.orig 2024-04-17 11:47:15 UTC +--- Gemfile.orig 2024-05-15 08:00:50 UTC +++ Gemfile @@ -58,7 +58,7 @@ gem 'rugged', '~> 1.6' # rubocop:todo Gemfile/MissingF @@ -9,18 +9,16 @@ gem 'marginalia', '~> 1.11.1' # rubocop:todo Gemfile/MissingFeatureCategory # Authorization -@@ -78,8 +78,8 @@ gem 'omniauth-alicloud', '~> 3.0.0' # rubocop:todo Gem - gem 'omniauth-azure-oauth2', '~> 0.0.9', path: 'vendor/gems/omniauth-azure-oauth2' # See gem README.md # rubocop:todo Gemfile/MissingFeatureCategory - gem 'omniauth-dingtalk-oauth2', '~> 1.0' # rubocop:todo Gemfile/MissingFeatureCategory +@@ -76,7 +76,7 @@ gem 'omniauth-alicloud', '~> 3.0.0' # rubocop:todo Gem + gem 'omniauth-auth0', '~> 3.1' # rubocop:todo Gemfile/MissingFeatureCategory + gem 'omniauth-azure-activedirectory-v2', '~> 2.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'omniauth-alicloud', '~> 3.0.0' # rubocop:todo Gemfile/MissingFeatureCategory --gem 'omniauth-facebook', '~> 4.0.0' # rubocop:todo Gemfile/MissingFeatureCategory -gem 'omniauth-github', '2.0.1' # rubocop:todo Gemfile/MissingFeatureCategory -+gem 'omniauth-facebook', '>= 4.0.0' # rubocop:todo Gemfile/MissingFeatureCategory +gem 'omniauth-github', '~> 2.0.1' # rubocop:todo Gemfile/MissingFeatureCategory gem 'omniauth-gitlab', '~> 4.0.0', path: 'vendor/gems/omniauth-gitlab' # See vendor/gems/omniauth-gitlab/README.md # rubocop:todo Gemfile/MissingFeatureCategory gem 'omniauth-google-oauth2', '~> 1.1' # rubocop:todo Gemfile/MissingFeatureCategory gem 'omniauth-oauth2-generic', '~> 0.2.2' # rubocop:todo Gemfile/MissingFeatureCategory -@@ -90,7 +90,7 @@ gem 'omniauth_openid_connect', '~> 0.6.1' # rubocop:to +@@ -86,7 +86,7 @@ gem 'omniauth_openid_connect', '~> 0.6.1' # rubocop:to gem 'omniauth_openid_connect', '~> 0.6.1' # rubocop:todo Gemfile/MissingFeatureCategory # Locked until Ruby 3.0 upgrade since upgrading will pull in an updated net-smtp gem. # See https://docs.gitlab.com/ee/development/emails.html#rationale. @@ -29,7 +27,7 @@ gem 'omniauth-salesforce', '~> 1.0.5', path: 'vendor/gems/omniauth-salesforce' # See gem README.md # rubocop:todo Gemfile/MissingFeatureCategory gem 'omniauth-atlassian-oauth2', '~> 0.2.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'rack-oauth2', '~> 1.21.3' # rubocop:todo Gemfile/MissingFeatureCategory -@@ -185,7 +185,7 @@ gem 'google-cloud-storage', '~> 1.45.0' # rubocop:todo +@@ -181,7 +181,7 @@ gem 'google-cloud-storage', '~> 1.45.0' # rubocop:todo gem 'google-apis-storage_v1', '~> 0.29' # rubocop:todo Gemfile/MissingFeatureCategory gem 'google-cloud-storage', '~> 1.45.0' # rubocop:todo Gemfile/MissingFeatureCategory # We need >= 0.11.1 because that's when match_glob support is added to list_objects @@ -38,7 +36,7 @@ gem 'google-apis-compute_v1', '~> 0.57.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'google-apis-container_v1', '~> 0.43.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'google-apis-container_v1beta1', '~> 0.43.0' # rubocop:todo Gemfile/MissingFeatureCategory -@@ -196,7 +196,7 @@ gem 'google-apis-androidpublisher_v3', '~> 0.34.0' # r +@@ -192,7 +192,7 @@ gem 'google-apis-androidpublisher_v3', '~> 0.34.0' # r gem 'google-apis-sqladmin_v1beta4', '~> 0.41.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'google-apis-androidpublisher_v3', '~> 0.34.0' # rubocop:todo Gemfile/MissingFeatureCategory @@ -47,19 +45,19 @@ gem 'google-cloud-artifact_registry-v1', '~> 0.11.0', feature_category: :shared gem 'google-cloud-compute-v1', '~> 2.6.0', feature_category: :shared -@@ -207,9 +207,9 @@ gem 'elasticsearch-api', '7.13.3' # rubocop:todo Gem +@@ -203,9 +203,9 @@ gem 'elasticsearch-api', '7.13.3' # rubocop:todo Gem gem 'elasticsearch-model', '~> 7.2' # rubocop:todo Gemfile/MissingFeatureCategory gem 'elasticsearch-rails', '~> 7.2', require: 'elasticsearch/rails/instrumentation' # rubocop:todo Gemfile/MissingFeatureCategory gem 'elasticsearch-api', '7.13.3' # rubocop:todo Gemfile/MissingFeatureCategory --gem 'aws-sdk-core', '~> 3.191.6' # rubocop:todo Gemfile/MissingFeatureCategory -+gem 'aws-sdk-core', '~> 3.191' # rubocop:todo Gemfile/MissingFeatureCategory +-gem 'aws-sdk-core', '~> 3.194.2' # rubocop:todo Gemfile/MissingFeatureCategory ++gem 'aws-sdk-core', '~> 3.194' # rubocop:todo Gemfile/MissingFeatureCategory gem 'aws-sdk-cloudformation', '~> 1' # rubocop:todo Gemfile/MissingFeatureCategory --gem 'aws-sdk-s3', '~> 1.146.1' # rubocop:todo Gemfile/MissingFeatureCategory -+gem 'aws-sdk-s3', '~> 1.146' # rubocop:todo Gemfile/MissingFeatureCategory +-gem 'aws-sdk-s3', '~> 1.149.1' # rubocop:todo Gemfile/MissingFeatureCategory ++gem 'aws-sdk-s3', '~> 1.149' # rubocop:todo Gemfile/MissingFeatureCategory gem 'faraday_middleware-aws-sigv4', '~>0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'typhoeus', '~> 1.4.0' # Used with Elasticsearch to support http keep-alive connections # rubocop:todo Gemfile/MissingFeatureCategory -@@ -240,12 +240,12 @@ gem 'diff_match_patch', '~> 0.1.0', path: 'vendor/gems +@@ -236,12 +236,12 @@ gem 'diff_match_patch', '~> 0.1.0', path: 'vendor/gems gem 'diff_match_patch', '~> 0.1.0', path: 'vendor/gems/diff_match_patch', feature_category: :team_planning # Application server @@ -74,7 +72,7 @@ gem 'sd_notify', '~> 0.1.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory end -@@ -256,7 +256,7 @@ gem 'acts-as-taggable-on', '~> 10.0' # rubocop:todo Ge +@@ -252,7 +252,7 @@ gem 'acts-as-taggable-on', '~> 10.0' # rubocop:todo Ge gem 'acts-as-taggable-on', '~> 10.0' # rubocop:todo Gemfile/MissingFeatureCategory # Background jobs @@ -83,7 +81,7 @@ gem 'sidekiq-cron', '~> 1.12.0', feature_category: :shared gem 'gitlab-sidekiq-fetcher', path: 'vendor/gems/sidekiq-reliable-fetch', require: 'sidekiq-reliable-fetch' # rubocop:todo Gemfile/MissingFeatureCategory -@@ -401,95 +401,10 @@ gem 'warning', '~> 1.3.0' # rubocop:todo Gemfile/Missi +@@ -425,95 +425,10 @@ gem 'warning', '~> 1.3.0' # rubocop:todo Gemfile/Missi gem 'warning', '~> 1.3.0' # rubocop:todo Gemfile/MissingFeatureCategory @@ -93,7 +91,7 @@ - gem 'solargraph', '~> 0.47.2', require: false # rubocop:todo Gemfile/MissingFeatureCategory - - gem 'letter_opener_web', '~> 2.0.0' # rubocop:todo Gemfile/MissingFeatureCategory -- gem 'lookbook', '~> 2.2', '>= 2.2.2' # rubocop:todo Gemfile/MissingFeatureCategory +- gem 'lookbook', '~> 2.3' # rubocop:todo Gemfile/MissingFeatureCategory - - # Better errors handler - gem 'better_errors', '~> 2.10.1' # rubocop:todo Gemfile/MissingFeatureCategory @@ -102,7 +100,7 @@ - - gem 'listen', '~> 3.7' # rubocop:todo Gemfile/MissingFeatureCategory - -- gem 'ruby-lsp', "~> 0.14.6", require: false, feature_category: :tooling +- gem 'ruby-lsp', "~> 0.16.6", require: false, feature_category: :tooling - - gem 'ruby-lsp-rails', "~> 0.3.3", feature_category: :tooling - @@ -132,7 +130,7 @@ - gem 'spring-commands-rspec', '~> 1.0.4' # rubocop:todo Gemfile/MissingFeatureCategory - - gem 'gitlab-styles', '~> 11.0.0', feature_category: :tooling -- gem 'haml_lint', '~> 0.53', feature_category: :tooling +- gem 'haml_lint', '~> 0.57', feature_category: :tooling - - gem 'bundler-audit', '~> 0.9.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory - @@ -179,7 +177,7 @@ # Gems required in omnibus-gitlab pipeline group :development, :test, :omnibus do gem 'license_finder', '~> 7.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory -@@ -501,36 +416,6 @@ end +@@ -525,36 +440,6 @@ end gem 'gitlab-rspec_flaky', path: 'gems/gitlab-rspec_flaky', feature_category: :tooling end @@ -202,7 +200,7 @@ - gem 'webmock', '~> 3.23.0', feature_category: :shared - gem 'rails-controller-testing' # rubocop:todo Gemfile/MissingFeatureCategory - gem 'concurrent-ruby', '~> 1.1' # rubocop:todo Gemfile/MissingFeatureCategory -- gem 'test-prof', '~> 1.3.2', feature_category: :tooling +- gem 'test-prof', '~> 1.3.3', feature_category: :tooling - gem 'rspec_junit_formatter' # rubocop:todo Gemfile/MissingFeatureCategory - gem 'guard-rspec' # rubocop:todo Gemfile/MissingFeatureCategory - gem 'axe-core-rspec', '~> 4.9.0', feature_category: :tooling @@ -210,22 +208,13 @@ - # Moved in `test` because https://gitlab.com/gitlab-org/gitlab/-/issues/217527 - gem 'derailed_benchmarks', require: false # rubocop:todo Gemfile/MissingFeatureCategory - -- gem 'gitlab_quality-test_tooling', '~> 1.21.1', require: false, feature_category: :tooling +- gem 'gitlab_quality-test_tooling', '~> 1.24.0', require: false, feature_category: :tooling -end - gem 'octokit', '~> 8.1', feature_category: :importers gem 'gitlab-mail_room', '~> 0.0.24', require: 'mail_room', feature_category: :shared -@@ -568,7 +453,7 @@ gem 'kas-grpc', '~> 0.4.0', feature_category: :deploym - # KAS GRPC protocol definitions - gem 'kas-grpc', '~> 0.4.0', feature_category: :deployment_management - --gem 'grpc', '~> 1.60.0' # rubocop:todo Gemfile/MissingFeatureCategory -+gem 'grpc', '~> 1.60' # rubocop:todo Gemfile/MissingFeatureCategory - - gem 'google-protobuf', '~> 3.25', '>= 3.25.3' # rubocop:todo Gemfile/MissingFeatureCategory - -@@ -589,7 +474,7 @@ gem 'gitlab-net-dns', '~> 0.9.2' # rubocop:todo Gemfil +@@ -613,7 +498,7 @@ gem 'gitlab-net-dns', '~> 0.9.2' # rubocop:todo Gemfil gem 'gitlab-net-dns', '~> 0.9.2' # rubocop:todo Gemfile/MissingFeatureCategory # Countries list @@ -234,7 +223,7 @@ gem 'retriable', '~> 3.1.2' # rubocop:todo Gemfile/MissingFeatureCategory -@@ -655,6 +540,7 @@ gem 'telesignenterprise', '~> 2.2' # rubocop:todo Gemf +@@ -679,6 +564,7 @@ gem 'telesignenterprise', '~> 2.2' # rubocop:todo Gemf gem 'telesignenterprise', '~> 2.2' # rubocop:todo Gemfile/MissingFeatureCategory # BufferedIO patch @@ -242,7 +231,7 @@ # Updating this version will require updating scripts/allowed_warnings.txt gem 'net-protocol', '~> 0.1.3' # rubocop:todo Gemfile/MissingFeatureCategory # Lock this until we make DNS rebinding work with the updated net-http: -@@ -662,5 +548,11 @@ gem 'duo_api', '~> 1.3' # rubocop:todo Gemfile/Missing +@@ -686,5 +572,11 @@ gem 'duo_api', '~> 1.3' # rubocop:todo Gemfile/Missing gem 'net-http', '= 0.1.1' # rubocop:todo Gemfile/MissingFeatureCategory gem 'duo_api', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory diff --git a/www/gitlab/files/patch-config_gitlab.yml.example b/www/gitlab/files/patch-config_gitlab.yml.example index 45a8c89d5209..15a9fb52c93c 100644 --- a/www/gitlab/files/patch-config_gitlab.yml.example +++ b/www/gitlab/files/patch-config_gitlab.yml.example @@ -1,4 +1,4 @@ ---- config/gitlab.yml.example.orig 2024-04-17 11:47:15 UTC +--- config/gitlab.yml.example.orig 2024-05-15 08:00:50 UTC +++ config/gitlab.yml.example @@ -463,7 +463,7 @@ production: &base ## GitLab Pages @@ -22,7 +22,7 @@ # File that contains the shared secret key for verifying access for gitlab-pages. # Default is '.gitlab_pages_secret' relative to Rails.root (i.e. root of the GitLab app). -@@ -1209,13 +1209,13 @@ production: &base +@@ -1200,13 +1200,13 @@ production: &base repositories: storages: # You must have at least a `default` storage path. default: @@ -38,7 +38,7 @@ # archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600) # keep_time: 604800 # default: 0 (forever) (in seconds) # pg_schema: public # default: nil, it means that all schemas will be backed up -@@ -1250,12 +1250,12 @@ production: &base +@@ -1241,12 +1241,12 @@ production: &base ## GitLab Shell settings gitlab_shell: @@ -54,7 +54,7 @@ # Git over HTTP upload_pack: true -@@ -1270,13 +1270,13 @@ production: &base +@@ -1261,13 +1261,13 @@ production: &base workhorse: # File that contains the secret key for verifying access for gitlab-workhorse. # Default is '.gitlab_workhorse_secret' relative to Rails.root (i.e. root of the GitLab app). @@ -70,7 +70,7 @@ # The URL to the external KAS API (used by the Kubernetes agents) # external_url: wss://kas.example.com -@@ -1300,13 +1300,13 @@ production: &base +@@ -1291,13 +1291,13 @@ production: &base ## GitLab Elasticsearch settings elasticsearch: @@ -86,7 +86,7 @@ ## Webpack settings # If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running -@@ -1327,18 +1327,18 @@ production: &base +@@ -1318,18 +1318,18 @@ production: &base # Sidekiq exporter is a dedicated Prometheus metrics server optionally running alongside Sidekiq. sidekiq_exporter: @@ -112,7 +112,7 @@ # Web exporter is a dedicated Prometheus metrics server optionally running alongside Puma. web_exporter: -@@ -1565,13 +1565,13 @@ test: +@@ -1556,13 +1556,13 @@ test: gitaly_address: unix:tmp/tests/gitaly/praefect.socket gitaly: diff --git a/www/gitlab/pkg-message b/www/gitlab/pkg-message index 039c61ef5679..edbd599c11e6 100644 --- a/www/gitlab/pkg-message +++ b/www/gitlab/pkg-message @@ -6,7 +6,7 @@ Gitlab was installed successfully. You now need to set up the various components of Gitlab, so please follow the instructions in the guide at: -https://gitlab.fechner.net/mfechner/Gitlab-docu/blob/master/install/16.10-freebsd.md +https://gitlab.fechner.net/mfechner/Gitlab-docu/blob/master/install/17.0-freebsd.md EOM type: install } @@ -20,7 +20,7 @@ EOM If you just installed an major upgrade of GitLab, for example you switched from 14.5.x to 14.6.x, please follow the instructions in the guide at: -https://gitlab.fechner.net/mfechner/Gitlab-docu/blob/master/update/16.10-16.11-freebsd.md +https://gitlab.fechner.net/mfechner/Gitlab-docu/blob/master/update/16.11-17.0-freebsd.md If you just installed an minor upgrade of GitLab please follow the instructions in the guide at: diff --git a/www/glpi/Makefile b/www/glpi/Makefile index 7aa869f641ba..1d47a1ea29cf 100644 --- a/www/glpi/Makefile +++ b/www/glpi/Makefile @@ -1,5 +1,6 @@ PORTNAME= glpi -PORTVERSION= 10.0.14 +PORTVERSION= 10.0.15 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= https://github.com/glpi-project/glpi/releases/download/${PORTVERSION}/ diff --git a/www/glpi/distinfo b/www/glpi/distinfo index 0b85cf397454..729d25574dea 100644 --- a/www/glpi/distinfo +++ b/www/glpi/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711956961 -SHA256 (glpi-10.0.14.tgz) = 69c7503c453a85ef47b47cbf08d3ebe8cb8bfe0d45f6aeb32d58c10321e911f5 -SIZE (glpi-10.0.14.tgz) = 59541870 +TIMESTAMP = 1714325306 +SHA256 (glpi-10.0.15.tgz) = 8ce94c1403c1143a5b503f18f7b7b9a5d29e83489fc81cc7287b719df0b97236 +SIZE (glpi-10.0.15.tgz) = 59757265 diff --git a/www/glpi/pkg-plist b/www/glpi/pkg-plist index 2833fd3d9738..f8fefb667c40 100644 --- a/www/glpi/pkg-plist +++ b/www/glpi/pkg-plist @@ -711,6 +711,7 @@ %%WWWDIR%%/front/item_device.common.form.php %%WWWDIR%%/front/item_device.php %%WWWDIR%%/front/item_devicebattery.form.php +%%WWWDIR%%/front/item_devicecamera.form.php %%WWWDIR%%/front/item_devicecase.form.php %%WWWDIR%%/front/item_devicecontrol.form.php %%WWWDIR%%/front/item_devicedrive.form.php @@ -1187,6 +1188,8 @@ %%WWWDIR%%/install/migrations/update_10.0.12_to_10.0.13.php %%WWWDIR%%/install/migrations/update_10.0.12_to_10.0.13/configs.php %%WWWDIR%%/install/migrations/update_10.0.12_to_10.0.13/location.php +%%WWWDIR%%/install/migrations/update_10.0.14_to_10.0.15.php +%%WWWDIR%%/install/migrations/update_10.0.14_to_10.0.15/user.php %%WWWDIR%%/install/migrations/update_10.0.1_to_10.0.2.php %%WWWDIR%%/install/migrations/update_10.0.1_to_10.0.2/agent.php %%WWWDIR%%/install/migrations/update_10.0.1_to_10.0.2/configs.php @@ -1203,6 +1206,7 @@ %%WWWDIR%%/install/migrations/update_10.0.3_to_10.0.4/inventory.php %%WWWDIR%%/install/migrations/update_10.0.3_to_10.0.4/ticket.php %%WWWDIR%%/install/migrations/update_10.0.4_to_10.0.5.php +%%WWWDIR%%/install/migrations/update_10.0.4_to_10.0.5/items_disks.php %%WWWDIR%%/install/migrations/update_10.0.5_to_10.0.6.php %%WWWDIR%%/install/migrations/update_10.0.5_to_10.0.6/appliance.php %%WWWDIR%%/install/migrations/update_10.0.5_to_10.0.6/blacklist.php @@ -1360,6 +1364,7 @@ %%WWWDIR%%/install/mysql/glpi-10.0.11-empty.sql %%WWWDIR%%/install/mysql/glpi-10.0.12-empty.sql %%WWWDIR%%/install/mysql/glpi-10.0.13-empty.sql +%%WWWDIR%%/install/mysql/glpi-10.0.14-empty.sql %%WWWDIR%%/install/mysql/glpi-10.0.2-empty.sql %%WWWDIR%%/install/mysql/glpi-10.0.3-empty.sql %%WWWDIR%%/install/mysql/glpi-10.0.4-empty.sql @@ -2544,49 +2549,93 @@ %%WWWDIR%%/public/lib/tinymce.js.map %%WWWDIR%%/public/lib/tinymce.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/dark/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/dark/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/dark/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/dark/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/default/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/default/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/default/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/default/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/document/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/document/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/document/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/document/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5-dark/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5-dark/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5-dark/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5-dark/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/tinymce-5/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/content/writer/content.css +%%WWWDIR%%/public/lib/tinymce/skins/content/writer/content.js %%WWWDIR%%/public/lib/tinymce/skins/content/writer/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/content/writer/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.css %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.inline.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.inline.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.inline.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.inline.min.js +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.shadowdom.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.shadowdom.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.css %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.inline.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.inline.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.inline.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.inline.min.js +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.shadowdom.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.shadowdom.js %%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.shadowdom.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/oxide/skin.shadowdom.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.css %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.inline.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.inline.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.inline.min.js +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.css %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.inline.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.inline.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.inline.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.inline.min.js +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/content.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.min.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.shadowdom.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.shadowdom.js %%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +%%WWWDIR%%/public/lib/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.js %%WWWDIR%%/resources/.htaccess %%WWWDIR%%/resources/Rules/RuleAsset.xml %%WWWDIR%%/resources/Rules/RuleDictionnaryOperatingSystem.xml @@ -3099,6 +3148,7 @@ %%WWWDIR%%/src/Lockedfield.php %%WWWDIR%%/src/Log.php %%WWWDIR%%/src/Mail/Protocol/ProtocolInterface.php +%%WWWDIR%%/src/Mail/SMTP/OAuthTokenProvider.php %%WWWDIR%%/src/Mail/SMTP/OauthConfig.php %%WWWDIR%%/src/Mail/SMTP/OauthProvider/Azure.php %%WWWDIR%%/src/Mail/SMTP/OauthProvider/Google.php @@ -6617,7 +6667,7 @@ %%WWWDIR%%/vendor/webmozart/assert/src/Assert.php %%WWWDIR%%/vendor/webmozart/assert/src/InvalidArgumentException.php %%WWWDIR%%/vendor/webmozart/assert/src/Mixin.php -%%WWWDIR%%/version/10.0.14 +%%WWWDIR%%/version/10.0.15 @dir %%WWWDIR%%/ajax @dir %%WWWDIR%%/bin @dir %%WWWDIR%%/config @@ -6694,6 +6744,7 @@ @dir %%WWWDIR%%/install/migrations/update_10.0.10_to_10.0.11 @dir %%WWWDIR%%/install/migrations/update_10.0.11_to_10.0.12 @dir %%WWWDIR%%/install/migrations/update_10.0.12_to_10.0.13 +@dir %%WWWDIR%%/install/migrations/update_10.0.14_to_10.0.15 @dir %%WWWDIR%%/install/migrations/update_10.0.1_to_10.0.2 @dir %%WWWDIR%%/install/migrations/update_10.0.2_to_10.0.3 @dir %%WWWDIR%%/install/migrations/update_10.0.3_to_10.0.4 diff --git a/www/go-www/Makefile b/www/go-www/Makefile index 1d9690005ed4..93f54e5a2d38 100644 --- a/www/go-www/Makefile +++ b/www/go-www/Makefile @@ -1,6 +1,6 @@ PORTNAME= www PORTVERSION= 2.0.0 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www PKGNAMEPREFIX= go- diff --git a/www/gobuffalo/Makefile b/www/gobuffalo/Makefile index abe8caf3d0c5..1db082ec3b37 100644 --- a/www/gobuffalo/Makefile +++ b/www/gobuffalo/Makefile @@ -1,7 +1,7 @@ PORTNAME= gobuffalo PORTVERSION= 0.16.27 DISTVERSIONPREFIX= v -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= dmgk@FreeBSD.org diff --git a/www/gohugo/Makefile b/www/gohugo/Makefile index 6a4a7efd8047..13a3f691fdab 100644 --- a/www/gohugo/Makefile +++ b/www/gohugo/Makefile @@ -1,7 +1,7 @@ PORTNAME= hugo DISTVERSIONPREFIX= v -DISTVERSION= 0.123.8 -PORTREVISION= 2 +DISTVERSION= 0.125.6 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www PKGNAMEPREFIX= go diff --git a/www/gohugo/distinfo b/www/gohugo/distinfo index 07eb84091818..493718533275 100644 --- a/www/gohugo/distinfo +++ b/www/gohugo/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1709855822 -SHA256 (go/www_gohugo/hugo-v0.123.8/v0.123.8.mod) = 81a7eee5d34f8455314128b97011d64fa566c1be5e9b6f23a2ccee6f0c3c81f8 -SIZE (go/www_gohugo/hugo-v0.123.8/v0.123.8.mod) = 7313 -SHA256 (go/www_gohugo/hugo-v0.123.8/v0.123.8.zip) = 58c69812e6e44128e4c86f0159a66ebc8a4c5a123fc9923addb75358c978c2e6 -SIZE (go/www_gohugo/hugo-v0.123.8/v0.123.8.zip) = 6547715 +TIMESTAMP = 1715012845 +SHA256 (go/www_gohugo/hugo-v0.125.6/v0.125.6.mod) = 9bba37eddf4a9ddd4d29594e94cf4a12f1655295f1f693227abdafda6772cb90 +SIZE (go/www_gohugo/hugo-v0.125.6/v0.125.6.mod) = 7311 +SHA256 (go/www_gohugo/hugo-v0.125.6/v0.125.6.zip) = 8b3159e0a3d562cad5e45e96cf7993cc931e47be065c1858266592b659d76d50 +SIZE (go/www_gohugo/hugo-v0.125.6/v0.125.6.zip) = 6571800 diff --git a/www/goose/Makefile b/www/goose/Makefile index ecbbc3f920ed..256c95c3f244 100644 --- a/www/goose/Makefile +++ b/www/goose/Makefile @@ -9,6 +9,10 @@ MAINTAINER= ports@FreeBSD.org COMMENT= Command line Google search utility WWW= https://goose-search.sourceforge.net/ +BROKEN= Relies on Google API serivce from 2003 +DEPRECATED= Abandonware, last update in 2003 and upstream is dead +EXPIRATION_DATE=2024-05-31 + RUN_DEPENDS= p5-SOAP-Lite>=0:net/p5-SOAP-Lite \ p5-HTML-Tree>=0:www/p5-HTML-Tree \ p5-HTML-Format>=0:textproc/p5-HTML-Format \ diff --git a/www/gotty/Makefile b/www/gotty/Makefile index 26b8755c335e..08d5c29ee3b8 100644 --- a/www/gotty/Makefile +++ b/www/gotty/Makefile @@ -1,7 +1,7 @@ PORTNAME= gotty PORTVERSION= 1.5.0 DISTVERSIONPREFIX= v -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= www net MAINTAINER= ehaupt@FreeBSD.org diff --git a/www/grafana/Makefile b/www/grafana/Makefile index 5a4d3578c094..3c412d76d568 100644 --- a/www/grafana/Makefile +++ b/www/grafana/Makefile @@ -1,7 +1,7 @@ PORTNAME= grafana DISTVERSIONPREFIX= v DISTVERSION= 10.4.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://dl.grafana.com/oss/release/:public \ https://raw.githubusercontent.com/${GH_ACCOUNT}/${GH_PROJECT}/${DISTVERSIONFULL}/:gomod diff --git a/www/grafana9/Makefile b/www/grafana9/Makefile index a2cfc74cdfbf..f9311a6bced1 100644 --- a/www/grafana9/Makefile +++ b/www/grafana9/Makefile @@ -1,7 +1,7 @@ PORTNAME= grafana DISTVERSIONPREFIX= v DISTVERSION= 9.5.17 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://dl.grafana.com/oss/release/:public \ https://raw.githubusercontent.com/${GH_ACCOUNT}/${GH_PROJECT}/${DISTVERSIONFULL}/:gomod diff --git a/www/gurl/Makefile b/www/gurl/Makefile index d96b50321db5..7cdfadf3643c 100644 --- a/www/gurl/Makefile +++ b/www/gurl/Makefile @@ -1,7 +1,7 @@ PORTNAME= gurl DISTVERSIONPREFIX= v DISTVERSION= 0.2.3 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= dch@FreeBSD.org diff --git a/www/h2o/Makefile b/www/h2o/Makefile index 80e0fa4ae240..9c8001bcca77 100644 --- a/www/h2o/Makefile +++ b/www/h2o/Makefile @@ -1,6 +1,6 @@ PORTNAME= h2o DISTVERSIONPREFIX= v -DISTVERSION= 2.3.0-dev.20240314 +DISTVERSION= 2.3.0-dev.20240411 CATEGORIES= www MAINTAINER= dch@FreeBSD.org @@ -13,23 +13,24 @@ LICENSE_COMB= multi BROKEN_armv6= fails to compile: asm_arm.inc:139:36: '.syntax divided' arm assembly not supported BROKEN_armv7= fails to compile: asm_arm.inc:139:36: '.syntax divided' arm assembly not supported -BUILD_DEPENDS= rubygem-rake>=0:devel/rubygem-rake -LIB_DEPENDS= libuv.so:devel/libuv +LIB_DEPENDS= libhiredis.so:databases/hiredis \ + libyaml.so:textproc/libyaml -USES= cmake:noninja compiler:c11 cpe perl5 pkgconfig shebangfix ssl +USES= cmake compiler:c11 cpe pathfix perl5 pkgconfig shebangfix ssl CPE_VENDOR= dena USE_GITHUB= yes -GH_TAGNAME= 7545f5f - -USE_LDCONFIG= yes +GH_TAGNAME= 222b36d +USE_LDCONFIG= YES USE_RC_SUBR= ${PORTNAME} SHEBANG_FILES= share/h2o/start_server -CMAKE_ARGS+= -DBUILD_SHARED_LIBS=OFF +CMAKE_ON= BUILD_SHARED_LIBS + +EXTRACT_AFTER_ARGS= --exclude deps/hiredis --exclude deps/yaml/include SUB_FILES= ${PORTNAME} ${PORTNAME}.conf.sample -SUB_LIST+= H2O_GROUP=${H2O_GROUP} \ +SUB_LIST= H2O_GROUP=${H2O_GROUP} \ H2O_LOGDIR=${H2O_LOGDIR} \ H2O_USER=${H2O_USER} @@ -49,26 +50,28 @@ OPTIONS_DEFINE= DOCS MRUBY OPTIONS_DEFAULT= MRUBY OPTIONS_SUB= yes MRUBY_DESC= Build with embedded mruby handler support -MRUBY_USES= bison ruby:build +MRUBY_BUILD_DEPENDS+= rubygem-rake>=0:devel/rubygem-rake +MRUBY_USES= bison libtool ruby:build MRUBY_CMAKE_BOOL= WITH_MRUBY -.include <bsd.port.pre.mk> +.include <bsd.port.options.mk> -.if ${ARCH} == i386 -CMAKE_ARGS+= -DWITH_FUSION=OFF +.if ${ARCH} == amd64 && defined(CPUTYPE) && ${MACHINE_CPU:Mavx2} +EXTRA_PATCHES= ${PATCHDIR}/extra-patch-cputype-defined +CMAKE_ON+= WITH_FUSION +.else +CMAKE_OFF+= WITH_FUSION .endif -.include <bsd.port.options.mk> - post-install: ${MKDIR} ${STAGEDIR}${ETCDIR} \ ${STAGEDIR}${H2O_LOGDIR} - ${INSTALL_DATA} \ - ${WRKDIR}/${PORTNAME}.conf.sample \ + ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}.conf.sample \ ${STAGEDIR}${ETCDIR}/${PORTNAME}.conf.sample post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/README.md \ + ${STAGEDIR}${DOCSDIR} -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/www/h2o/distinfo b/www/h2o/distinfo index 5aa371be9f97..2d4da3317841 100644 --- a/www/h2o/distinfo +++ b/www/h2o/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711233165 -SHA256 (h2o-h2o-v2.3.0-dev.20240314-7545f5f_GH0.tar.gz) = e7fd874375b735e30eeea96539f37db5f10de64d797ea8b5269d9f1969784f68 -SIZE (h2o-h2o-v2.3.0-dev.20240314-7545f5f_GH0.tar.gz) = 30755375 +TIMESTAMP = 1714564834 +SHA256 (h2o-h2o-v2.3.0-dev.20240411-222b36d_GH0.tar.gz) = dc8db25dab7d009718c2309f5bfaa1c666900a6d574324170d68f39a26b2977b +SIZE (h2o-h2o-v2.3.0-dev.20240411-222b36d_GH0.tar.gz) = 30763238 diff --git a/www/h2o/files/extra-patch-cputype-defined b/www/h2o/files/extra-patch-cputype-defined new file mode 100644 index 000000000000..519c98f2a50a --- /dev/null +++ b/www/h2o/files/extra-patch-cputype-defined @@ -0,0 +1,11 @@ +--- CMakeLists.txt.orig 2024-03-27 17:04:02 UTC ++++ CMakeLists.txt +@@ -776,7 +776,7 @@ IF (WITH_FUSION) + IF (WITH_FUSION) + SET(STANDALONE_COMPILE_FLAGS "${STANDALONE_COMPILE_FLAGS} -DH2O_USE_FUSION=1") + LIST(APPEND STANDALONE_SOURCE_FILES deps/picotls/lib/fusion.c) +- SET_SOURCE_FILES_PROPERTIES(deps/picotls/lib/fusion.c PROPERTIES COMPILE_FLAGS "-mavx2 -maes -mpclmul -mvaes -mvpclmulqdq") ++ SET_SOURCE_FILES_PROPERTIES(deps/picotls/lib/fusion.c PROPERTIES COMPILE_FLAGS "") + ENDIF () + IF (WITH_KTLS) + SET(STANDALONE_COMPILE_FLAGS "${STANDALONE_COMPILE_FLAGS} -DH2O_USE_KTLS=1") diff --git a/www/h2o/files/patch-CMakeLists.txt b/www/h2o/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..42fe23553092 --- /dev/null +++ b/www/h2o/files/patch-CMakeLists.txt @@ -0,0 +1,98 @@ +--- CMakeLists.txt.orig 2024-03-14 06:01:10 UTC ++++ CMakeLists.txt +@@ -174,7 +174,6 @@ INCLUDE_DIRECTORIES( + deps/cloexec + deps/brotli/c/include + deps/golombset +- deps/hiredis + deps/libgkc + deps/libyrmcds + deps/klib +@@ -186,7 +185,6 @@ INCLUDE_DIRECTORIES( + deps/picotls/deps/micro-ecc + deps/picotls/include + deps/quicly/include +- deps/yaml/include + deps/yoml + ${CMAKE_CURRENT_BINARY_DIR}) + +@@ -257,6 +255,23 @@ ENDIF (PKG_CONFIG_FOUND) + ENDIF (LIBCAP_FOUND) + ENDIF (PKG_CONFIG_FOUND) + ++IF (PKG_CONFIG_FOUND) ++ PKG_CHECK_MODULES(HIREDIS hiredis) ++ IF (HIREDIS_FOUND) ++ INCLUDE_DIRECTORIES(${HIREDIS_INCLUDE_DIRS}) ++ LINK_DIRECTORIES(${HIREDIS_LIBRARY_DIRS}) ++ ENDIF (HIREDIS_FOUND) ++ENDIF (PKG_CONFIG_FOUND) ++ ++IF (PKG_CONFIG_FOUND) ++ PKG_CHECK_MODULES(LIBYAML yaml-0.1) ++ IF (LIBYAML_FOUND) ++ INCLUDE_DIRECTORIES(${LIBYAML_INCLUDE_DIRS}) ++ LINK_DIRECTORIES(${LIBYAML_LIBRARY_DIRS}) ++ ENDIF (LIBYAML_FOUND) ++ENDIF (PKG_CONFIG_FOUND) ++ ++ + SET(CC_WARNING_FLAGS "-Wall -Wno-unused-value -Wno-unused-function -Wno-nullability-completeness -Wno-expansion-to-defined -Werror=implicit-function-declaration -Werror=incompatible-pointer-types") + + IF ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU") +@@ -269,7 +284,7 @@ ENDIF () + ENDIF () + + # setup compile flags +-SET(CMAKE_C_FLAGS "-g3 ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS} -DH2O_ROOT=\"${CMAKE_INSTALL_PREFIX}\" -DH2O_CONFIG_PATH=\"${CMAKE_INSTALL_FULL_SYSCONFDIR}/h2o.conf\"") ++SET(CMAKE_C_FLAGS "${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS} -DH2O_ROOT=\"${CMAKE_INSTALL_PREFIX}\" -DH2O_CONFIG_PATH=\"${CMAKE_INSTALL_FULL_SYSCONFDIR}/h2o.conf\"") + IF (WITH_DTRACE) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DPICOTLS_USE_DTRACE=1 -DQUICLY_USE_DTRACE=1 -DH2O_USE_DTRACE=1") + ENDIF () +@@ -339,11 +354,6 @@ SET(LIB_SOURCE_FILES + + SET(LIB_SOURCE_FILES + deps/cloexec/cloexec.c +- deps/hiredis/async.c +- deps/hiredis/hiredis.c +- deps/hiredis/net.c +- deps/hiredis/read.c +- deps/hiredis/sds.c + deps/libgkc/gkc.c + deps/libyrmcds/close.c + deps/libyrmcds/connect.c +@@ -497,7 +507,6 @@ SET(UNIT_TEST_SOURCE_FILES + + SET(UNIT_TEST_SOURCE_FILES + ${LIB_SOURCE_FILES} +- ${LIBYAML_SOURCE_FILES} + ${BROTLI_SOURCE_FILES} + deps/picotest/picotest.c + t/00unit/test.c +@@ -710,6 +719,10 @@ TARGET_LINK_LIBRARIES(h2o-httpclient libh2o-evloop ${E + COMPILE_FLAGS "-DH2O_USE_LIBUV=0") + TARGET_LINK_LIBRARIES(h2o-httpclient libh2o-evloop ${EXTRA_LIBS}) + ++IF (HIREDIS_FOUND) ++ TARGET_LINK_LIBRARIES(h2o-httpclient ${HIREDIS_LIBRARIES}) ++ENDIF (HIREDIS_FOUND) ++ + SET_TARGET_PROPERTIES(examples-socket-client-evloop PROPERTIES + COMPILE_FLAGS "-DH2O_USE_LIBUV=0" + EXCLUDE_FROM_ALL 1) +@@ -788,6 +801,15 @@ TARGET_LINK_LIBRARIES(h2o ${OPENSSL_LIBRARIES} ${CMAKE + SET_TARGET_PROPERTIES(h2o PROPERTIES COMPILE_FLAGS "${STANDALONE_COMPILE_FLAGS}") + TARGET_INCLUDE_DIRECTORIES(h2o PUBLIC ${OPENSSL_INCLUDE_DIR}) + TARGET_LINK_LIBRARIES(h2o ${OPENSSL_LIBRARIES} ${CMAKE_DL_LIBS}) ++IF (HIREDIS_FOUND) ++ TARGET_INCLUDE_DIRECTORIES(h2o PUBLIC ${HIREDIS_INCLUDE_DIRS}) ++ TARGET_LINK_LIBRARIES(h2o ${HIREDIS_LIBRARIES}) ++ENDIF (HIREDIS_FOUND) ++ ++IF (LIBYAML_FOUND) ++ TARGET_INCLUDE_DIRECTORIES(h2o PUBLIC ${LIBYXML_INCLUDE_DIRS}) ++ TARGET_LINK_LIBRARIES(h2o ${LIBYAML_LIBRARIES}) ++ENDIF (LIBYAML_FOUND) + IF (WITH_MRUBY) + TARGET_INCLUDE_DIRECTORIES(h2o BEFORE PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/deps/mruby/include ${CMAKE_CURRENT_SOURCE_DIR}/deps/mruby-input-stream/src) + # note: the paths need to be determined before libmruby.flags.mak is generated diff --git a/www/h2o/files/patch-src_ssl.c b/www/h2o/files/patch-src_ssl.c index 938c96e1e7ee..23ef45f0b28c 100644 --- a/www/h2o/files/patch-src_ssl.c +++ b/www/h2o/files/patch-src_ssl.c @@ -1,6 +1,6 @@ ---- src/ssl.c.orig 2023-08-08 09:33:37 UTC +--- src/ssl.c.orig 2024-03-14 06:01:10 UTC +++ src/ssl.c -@@ -1182,7 +1182,9 @@ void init_openssl(void) +@@ -1185,7 +1185,9 @@ void init_openssl(void) SSL_library_init(); OpenSSL_add_all_algorithms(); #if H2O_CAN_OSSL_ASYNC diff --git a/www/h2o/pkg-plist b/www/h2o/pkg-plist index d67651f52feb..b46446ec6e86 100644 --- a/www/h2o/pkg-plist +++ b/www/h2o/pkg-plist @@ -1,4 +1,3 @@ -@comment bin/h2o-httpclient @dir(%%H2O_USER%%,%%H2O_GROUP%%,0750) %%H2O_LOGDIR%% @sample %%ETCDIR%%/h2o.conf.sample %%DATADIR%%/annotate-backtrace-symbols @@ -126,6 +125,35 @@ include/h2o/token.h include/h2o/url.h include/h2o/version.h include/h2o/websocket.h +include/picotls.h +include/picotls/asn1.h +include/picotls/certificate_compression.h +include/picotls/ffx.h +include/picotls/fusion.h +include/picotls/mbedtls.h +include/picotls/minicrypto.h +include/picotls/openssl.h +include/picotls/pembase64.h +include/picotls/ptlsbcrypt.h +include/quicly.h +include/quicly/cc.h +include/quicly/cid.h +include/quicly/constants.h +include/quicly/defaults.h +include/quicly/frame.h +include/quicly/linklist.h +include/quicly/local_cid.h +include/quicly/loss.h +include/quicly/maxsender.h +include/quicly/pacer.h +include/quicly/ranges.h +include/quicly/rate.h +include/quicly/recvstate.h +include/quicly/remote_cid.h +include/quicly/retire_cid.h +include/quicly/sendstate.h +include/quicly/sentmap.h +include/quicly/streambuf.h libdata/pkgconfig/libh2o-evloop.pc libdata/pkgconfig/libh2o.pc share/man/man5/h2o.conf.5.gz diff --git a/www/hotcrp/Makefile b/www/hotcrp/Makefile index 625638719171..2c68fa2bdafc 100644 --- a/www/hotcrp/Makefile +++ b/www/hotcrp/Makefile @@ -1,27 +1,24 @@ PORTNAME= hotcrp -PORTVERSION= 2.102 -PORTREVISION= 18 +PORTVERSION= 3.0.0 CATEGORIES= www -MASTER_SITES= http://www.read.seas.harvard.edu/~kohler/hotcrp/ +MASTER_SITES= ${WWW} MAINTAINER= ports@FreeBSD.org -COMMENT= Web based conference management software +COMMENT= Web-based conference management software WWW= https://www.read.seas.harvard.edu/~kohler/hotcrp/ -RUN_DEPENDS= pdftohtml:graphics/poppler-utils \ - zip:archivers/zip +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= pdftohtml:graphics/poppler-utils USES= php mysql:server -USE_PHP= mysqli gd session ctype +USE_PHP= ctype gd mysqli session zlib NO_BUILD= yes SUB_FILES= pkg-message -LICENSE= MIT -LICENSE_FILE= ${WRKSRC}/LICENSE - do-install: - ${MKDIR} ${STAGEDIR}${WWWDIR} - @cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR} + cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR} .include <bsd.port.mk> diff --git a/www/hotcrp/distinfo b/www/hotcrp/distinfo index 0f47bb038199..8de017870f7d 100644 --- a/www/hotcrp/distinfo +++ b/www/hotcrp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1615566556 -SHA256 (hotcrp-2.102.tar.gz) = 09be01f2e427cb7f424871c619925e19db03e058b6de4b7321960e31c5e31eaf -SIZE (hotcrp-2.102.tar.gz) = 1571868 +TIMESTAMP = 1710434900 +SHA256 (hotcrp-3.0.0.tar.gz) = 4cc2664677303a009e46fa60e06ee2c9e6d51192a2059af4b6d41aa60db9eb09 +SIZE (hotcrp-3.0.0.tar.gz) = 1983729 diff --git a/www/hotcrp/pkg-descr b/www/hotcrp/pkg-descr index 479f78ac66a9..e9d444737d3c 100644 --- a/www/hotcrp/pkg-descr +++ b/www/hotcrp/pkg-descr @@ -1,2 +1,5 @@ HotCRP is conference management software: it accepts paper submissions -and manages the review process. +and manages the review process. Many conference management packages are +available, including EasyChair. HotCRP is especially good at navigating +from paper to paper, searching for papers, tagging papers, and managing +complex submission and review policies. diff --git a/www/hotcrp/pkg-plist b/www/hotcrp/pkg-plist index 78a9a1830c81..12082db3fc2c 100644 --- a/www/hotcrp/pkg-plist +++ b/www/hotcrp/pkg-plist @@ -5,23 +5,30 @@ %%WWWDIR%%/README.md %%WWWDIR%%/api.php %%WWWDIR%%/assign.php +%%WWWDIR%%/authorize.php %%WWWDIR%%/autoassign.php %%WWWDIR%%/batch/.htaccess -%%WWWDIR%%/batch/addusers.php +%%WWWDIR%%/batch/assign.php +%%WWWDIR%%/batch/autoassign.php +%%WWWDIR%%/batch/backupdb.php %%WWWDIR%%/batch/checkinvariants.php %%WWWDIR%%/batch/deletepapers.php %%WWWDIR%%/batch/fixdelegation.php %%WWWDIR%%/batch/killinactivedoc.php +%%WWWDIR%%/batch/paperjson.php +%%WWWDIR%%/batch/reviewcsv.php %%WWWDIR%%/batch/s3test.php %%WWWDIR%%/batch/s3transfer.php %%WWWDIR%%/batch/s3verifyall.php %%WWWDIR%%/batch/savepapers.php +%%WWWDIR%%/batch/saveusers.php +%%WWWDIR%%/batch/search.php +%%WWWDIR%%/batch/settings.php %%WWWDIR%%/batch/updatecontactdb.php %%WWWDIR%%/bulkassign.php %%WWWDIR%%/buzzer.php %%WWWDIR%%/cacheable.php %%WWWDIR%%/checkupdates.php -%%WWWDIR%%/comment.php %%WWWDIR%%/conf/.htaccess %%WWWDIR%%/conflictassign.php %%WWWDIR%%/deadlines.php @@ -31,20 +38,29 @@ %%WWWDIR%%/etc/affiliationmatchers.json %%WWWDIR%%/etc/apifunctions.json %%WWWDIR%%/etc/assignmentparsers.json -%%WWWDIR%%/etc/emojicodes.json +%%WWWDIR%%/etc/autoassigners.json +%%WWWDIR%%/etc/capabilityhandlers.json +%%WWWDIR%%/etc/distoptions.php %%WWWDIR%%/etc/formulafunctions.json %%WWWDIR%%/etc/helptopics.json +%%WWWDIR%%/etc/intrinsicoptions.json %%WWWDIR%%/etc/listactions.json %%WWWDIR%%/etc/mailkeywords.json +%%WWWDIR%%/etc/mailtemplates.json %%WWWDIR%%/etc/msgs.json %%WWWDIR%%/etc/optiontypes.json +%%WWWDIR%%/etc/pages.json %%WWWDIR%%/etc/papercolumns.json %%WWWDIR%%/etc/profilegroups.json -%%WWWDIR%%/etc/reviewformlibrary.json +%%WWWDIR%%/etc/reviewfieldlibrary.json +%%WWWDIR%%/etc/reviewfieldtypes.json +%%WWWDIR%%/etc/sample.pdf %%WWWDIR%%/etc/searchkeywords.json +%%WWWDIR%%/etc/settingdescriptions.md %%WWWDIR%%/etc/settinggroups.json -%%WWWDIR%%/etc/settings.json -%%WWWDIR%%/etc/submissioneditgroups.json +%%WWWDIR%%/etc/settinginfo.json +%%WWWDIR%%/etc/submissionfieldlibrary.json +%%WWWDIR%%/forgotpassword.php %%WWWDIR%%/graph.php %%WWWDIR%%/help.php %%WWWDIR%%/images/.htaccess @@ -67,11 +83,7 @@ %%WWWDIR%%/images/generic24.png %%WWWDIR%%/images/genericf.png %%WWWDIR%%/images/genericf24.png -%%WWWDIR%%/images/headgrad.png -%%WWWDIR%%/images/homegrad.png %%WWWDIR%%/images/info45.png -%%WWWDIR%%/images/next.png -%%WWWDIR%%/images/override24.png %%WWWDIR%%/images/pageresultsex.png %%WWWDIR%%/images/pdf.png %%WWWDIR%%/images/pdf24.png @@ -85,12 +97,9 @@ %%WWWDIR%%/images/postscript24.png %%WWWDIR%%/images/postscriptf.png %%WWWDIR%%/images/postscriptf24.png -%%WWWDIR%%/images/prev.png %%WWWDIR%%/images/quicksearchex.png %%WWWDIR%%/images/review24.png %%WWWDIR%%/images/review48.png -%%WWWDIR%%/images/sortdown.png -%%WWWDIR%%/images/sortup.png %%WWWDIR%%/images/stophand45.png %%WWWDIR%%/images/txt.png %%WWWDIR%%/images/txt24.png @@ -103,49 +112,66 @@ %%WWWDIR%%/lib/backupdb.sh %%WWWDIR%%/lib/base.php %%WWWDIR%%/lib/cleanhtml.php +%%WWWDIR%%/lib/collatorshim.php %%WWWDIR%%/lib/column.php %%WWWDIR%%/lib/countmatcher.php %%WWWDIR%%/lib/countries.php %%WWWDIR%%/lib/createdb.sh %%WWWDIR%%/lib/csv.php -%%WWWDIR%%/lib/curls3document.php +%%WWWDIR%%/lib/curls3result.php %%WWWDIR%%/lib/dbhelper.sh %%WWWDIR%%/lib/dbl.php +%%WWWDIR%%/lib/diff_match_patch.php +%%WWWDIR%%/lib/dkimsigner.php +%%WWWDIR%%/lib/downloader.php %%WWWDIR%%/lib/filer.php +%%WWWDIR%%/lib/fmt.php +%%WWWDIR%%/lib/ftext.php %%WWWDIR%%/lib/getopt.php +%%WWWDIR%%/lib/gmpshim.php +%%WWWDIR%%/lib/hashanalysis.php +%%WWWDIR%%/lib/hclcolor.php %%WWWDIR%%/lib/ht.php %%WWWDIR%%/lib/icons.php -%%WWWDIR%%/lib/intlmsgset.php +%%WWWDIR%%/lib/isovideomimetype.php %%WWWDIR%%/lib/json.php +%%WWWDIR%%/lib/jsonexception.php +%%WWWDIR%%/lib/jsonparser.php +%%WWWDIR%%/lib/jwtparser.php +%%WWWDIR%%/lib/labcolor.php %%WWWDIR%%/lib/ldaplogin.php %%WWWDIR%%/lib/login.php %%WWWDIR%%/lib/mailer.php -%%WWWDIR%%/lib/message.php +%%WWWDIR%%/lib/mailpreparation.php %%WWWDIR%%/lib/messageset.php %%WWWDIR%%/lib/mime.types +%%WWWDIR%%/lib/mimetext.php %%WWWDIR%%/lib/mimetype.php %%WWWDIR%%/lib/mincostmaxflow.php %%WWWDIR%%/lib/navigation.php -%%WWWDIR%%/lib/qobject.php +%%WWWDIR%%/lib/oklabcolor.php +%%WWWDIR%%/lib/oklchcolor.php +%%WWWDIR%%/lib/phpqsession.php +%%WWWDIR%%/lib/polyfills.php %%WWWDIR%%/lib/qrequest.php +%%WWWDIR%%/lib/qsession.php %%WWWDIR%%/lib/redirect.php %%WWWDIR%%/lib/restoredb.sh %%WWWDIR%%/lib/runsql.sh -%%WWWDIR%%/lib/s3document.php +%%WWWDIR%%/lib/s3client.php +%%WWWDIR%%/lib/s3result.php %%WWWDIR%%/lib/scoreinfo.php %%WWWDIR%%/lib/tagger.php %%WWWDIR%%/lib/text.php %%WWWDIR%%/lib/unicodehelper.php %%WWWDIR%%/lib/xlsx.php -%%WWWDIR%%/lib/zipdocument.php %%WWWDIR%%/log.php %%WWWDIR%%/mail.php %%WWWDIR%%/manualassign.php %%WWWDIR%%/mergeaccounts.php +%%WWWDIR%%/newaccount.php +%%WWWDIR%%/oauth.php %%WWWDIR%%/offline.php -%%WWWDIR%%/pages/.htaccess -%%WWWDIR%%/pages/adminhome.php -%%WWWDIR%%/pages/home.php %%WWWDIR%%/paper.php %%WWWDIR%%/profile.php %%WWWDIR%%/resetpassword.php @@ -155,51 +181,121 @@ %%WWWDIR%%/scripts/.htaccess %%WWWDIR%%/scripts/buzzer.js %%WWWDIR%%/scripts/d3-hotcrp.min.js -%%WWWDIR%%/scripts/d3.min.js +%%WWWDIR%%/scripts/emojicodes.json %%WWWDIR%%/scripts/graph.js %%WWWDIR%%/scripts/jquery-1.12.4.min.js -%%WWWDIR%%/scripts/jquery-1.12.4.min.map -%%WWWDIR%%/scripts/jquery-3.3.1.min.js +%%WWWDIR%%/scripts/jquery-3.7.1.min.js %%WWWDIR%%/scripts/script.js %%WWWDIR%%/scripts/settings.js %%WWWDIR%%/search.php %%WWWDIR%%/settings.php +%%WWWDIR%%/signin.php +%%WWWDIR%%/signout.php %%WWWDIR%%/src/.htaccess %%WWWDIR%%/src/api/api_alltags.php +%%WWWDIR%%/src/api/api_assign.php +%%WWWDIR%%/src/api/api_comment.php +%%WWWDIR%%/src/api/api_completion.php +%%WWWDIR%%/src/api/api_decision.php %%WWWDIR%%/src/api/api_error.php +%%WWWDIR%%/src/api/api_events.php +%%WWWDIR%%/src/api/api_follow.php +%%WWWDIR%%/src/api/api_formatcheck.php +%%WWWDIR%%/src/api/api_graphdata.php +%%WWWDIR%%/src/api/api_job.php +%%WWWDIR%%/src/api/api_mail.php +%%WWWDIR%%/src/api/api_paper.php +%%WWWDIR%%/src/api/api_paperpc.php +%%WWWDIR%%/src/api/api_preference.php %%WWWDIR%%/src/api/api_requestreview.php +%%WWWDIR%%/src/api/api_review.php +%%WWWDIR%%/src/api/api_reviewtoken.php %%WWWDIR%%/src/api/api_search.php %%WWWDIR%%/src/api/api_searchconfig.php +%%WWWDIR%%/src/api/api_session.php +%%WWWDIR%%/src/api/api_settings.php %%WWWDIR%%/src/api/api_taganno.php +%%WWWDIR%%/src/api/api_tags.php +%%WWWDIR%%/src/api/api_upload.php %%WWWDIR%%/src/api/api_user.php +%%WWWDIR%%/src/apihelpers.php %%WWWDIR%%/src/assigners/a_conflict.php +%%WWWDIR%%/src/assigners/a_copytag.php %%WWWDIR%%/src/assigners/a_decision.php +%%WWWDIR%%/src/assigners/a_error.php +%%WWWDIR%%/src/assigners/a_follow.php %%WWWDIR%%/src/assigners/a_lead.php %%WWWDIR%%/src/assigners/a_preference.php +%%WWWDIR%%/src/assigners/a_review.php %%WWWDIR%%/src/assigners/a_status.php %%WWWDIR%%/src/assigners/a_tag.php +%%WWWDIR%%/src/assigners/a_taganno.php +%%WWWDIR%%/src/assigners/a_unsubmitreview.php +%%WWWDIR%%/src/assignmentcountset.php %%WWWDIR%%/src/assignmentset.php %%WWWDIR%%/src/author.php %%WWWDIR%%/src/authormatcher.php %%WWWDIR%%/src/autoassigner.php +%%WWWDIR%%/src/autoassigners/aa_clear.php +%%WWWDIR%%/src/autoassigners/aa_discussionorder.php +%%WWWDIR%%/src/autoassigners/aa_paperpc.php +%%WWWDIR%%/src/autoassigners/aa_prefconflict.php +%%WWWDIR%%/src/autoassigners/aa_review.php +%%WWWDIR%%/src/backuppattern.php %%WWWDIR%%/src/banal -%%WWWDIR%%/src/capability.php +%%WWWDIR%%/src/capabilities/cap_authorview.php +%%WWWDIR%%/src/capabilities/cap_bearer.php +%%WWWDIR%%/src/capabilities/cap_job.php +%%WWWDIR%%/src/capabilities/cap_reviewaccept.php %%WWWDIR%%/src/checkformat.php %%WWWDIR%%/src/commentinfo.php +%%WWWDIR%%/src/componentset.php %%WWWDIR%%/src/conference.php +%%WWWDIR%%/src/confinvariants.php %%WWWDIR%%/src/conflict.php %%WWWDIR%%/src/contact.php +%%WWWDIR%%/src/contactcounter.php +%%WWWDIR%%/src/contactcountmatcher.php %%WWWDIR%%/src/contactlist.php %%WWWDIR%%/src/contactsearch.php -%%WWWDIR%%/src/distoptions.php +%%WWWDIR%%/src/contactset.php +%%WWWDIR%%/src/decisioninfo.php +%%WWWDIR%%/src/decisionset.php +%%WWWDIR%%/src/documentfiletree.php +%%WWWDIR%%/src/documenthashmatcher.php %%WWWDIR%%/src/documentinfo.php +%%WWWDIR%%/src/documentinfoset.php +%%WWWDIR%%/src/documentrequest.php +%%WWWDIR%%/src/fieldchangeset.php +%%WWWDIR%%/src/fieldrender.php %%WWWDIR%%/src/filefilter.php %%WWWDIR%%/src/formatspec.php %%WWWDIR%%/src/formula.php %%WWWDIR%%/src/formulagraph.php -%%WWWDIR%%/src/groupedextensions.php +%%WWWDIR%%/src/formulas/f_author.php +%%WWWDIR%%/src/formulas/f_conflict.php +%%WWWDIR%%/src/formulas/f_decision.php +%%WWWDIR%%/src/formulas/f_now.php +%%WWWDIR%%/src/formulas/f_optionpresent.php +%%WWWDIR%%/src/formulas/f_optionvalue.php +%%WWWDIR%%/src/formulas/f_pdfsize.php +%%WWWDIR%%/src/formulas/f_pref.php +%%WWWDIR%%/src/formulas/f_realnumberoption.php +%%WWWDIR%%/src/formulas/f_reviewer.php +%%WWWDIR%%/src/formulas/f_reviewermatch.php +%%WWWDIR%%/src/formulas/f_reviewround.php +%%WWWDIR%%/src/formulas/f_reviewwordcount.php +%%WWWDIR%%/src/formulas/f_revtype.php +%%WWWDIR%%/src/formulas/f_submittedat.php +%%WWWDIR%%/src/formulas/f_tag.php +%%WWWDIR%%/src/formulas/f_timefield.php +%%WWWDIR%%/src/formulas/f_topic.php +%%WWWDIR%%/src/formulas/f_topicscore.php +%%WWWDIR%%/src/help/h_bulkassign.php %%WWWDIR%%/src/help/h_chairsguide.php +%%WWWDIR%%/src/help/h_developer.php %%WWWDIR%%/src/help/h_formulas.php +%%WWWDIR%%/src/help/h_jsonsettings.php %%WWWDIR%%/src/help/h_keywords.php %%WWWDIR%%/src/help/h_ranking.php %%WWWDIR%%/src/help/h_revrate.php @@ -209,31 +305,90 @@ %%WWWDIR%%/src/help/h_tags.php %%WWWDIR%%/src/help/h_votetags.php %%WWWDIR%%/src/helpers.php +%%WWWDIR%%/src/helprenderer.php %%WWWDIR%%/src/hotcrpmailer.php %%WWWDIR%%/src/init.php -%%WWWDIR%%/src/initweb.php %%WWWDIR%%/src/listaction.php %%WWWDIR%%/src/listactions/la_assign.php %%WWWDIR%%/src/listactions/la_decide.php -%%WWWDIR%%/src/listactions/la_get_rev.php +%%WWWDIR%%/src/listactions/la_get.php %%WWWDIR%%/src/listactions/la_get_sub.php +%%WWWDIR%%/src/listactions/la_getabstracts.php %%WWWDIR%%/src/listactions/la_getallrevpref.php +%%WWWDIR%%/src/listactions/la_getauthors.php %%WWWDIR%%/src/listactions/la_getdocument.php %%WWWDIR%%/src/listactions/la_getjson.php %%WWWDIR%%/src/listactions/la_getjsonrqc.php -%%WWWDIR%%/src/listactions/la_getrevpref.php +%%WWWDIR%%/src/listactions/la_getlead.php +%%WWWDIR%%/src/listactions/la_getpcassignments.php +%%WWWDIR%%/src/listactions/la_getrank.php +%%WWWDIR%%/src/listactions/la_getreviewbase.php +%%WWWDIR%%/src/listactions/la_getreviewcsv.php +%%WWWDIR%%/src/listactions/la_getreviewforms.php +%%WWWDIR%%/src/listactions/la_getreviews.php +%%WWWDIR%%/src/listactions/la_getscores.php %%WWWDIR%%/src/listactions/la_mail.php +%%WWWDIR%%/src/listactions/la_revpref.php %%WWWDIR%%/src/listactions/la_tag.php -%%WWWDIR%%/src/listsorter.php -%%WWWDIR%%/src/mailclasses.php -%%WWWDIR%%/src/mailtemplate.php +%%WWWDIR%%/src/logentry.php +%%WWWDIR%%/src/logentryfilter.php +%%WWWDIR%%/src/mailrecipients.php +%%WWWDIR%%/src/mailsender.php %%WWWDIR%%/src/meetingtracker.php +%%WWWDIR%%/src/mentionparser.php %%WWWDIR%%/src/mergecontacts.php -%%WWWDIR%%/src/messages.csv %%WWWDIR%%/src/multiconference.php -%%WWWDIR%%/src/paperapi.php +%%WWWDIR%%/src/notificationinfo.php +%%WWWDIR%%/src/options/o_abstract.php +%%WWWDIR%%/src/options/o_attachments.php +%%WWWDIR%%/src/options/o_authors.php +%%WWWDIR%%/src/options/o_checkboxes.php +%%WWWDIR%%/src/options/o_checkboxesbase.php +%%WWWDIR%%/src/options/o_collaborators.php +%%WWWDIR%%/src/options/o_contacts.php +%%WWWDIR%%/src/options/o_nonblind.php +%%WWWDIR%%/src/options/o_numeric.php +%%WWWDIR%%/src/options/o_pcconflicts.php +%%WWWDIR%%/src/options/o_realnumber.php +%%WWWDIR%%/src/options/o_title.php +%%WWWDIR%%/src/options/o_topics.php +%%WWWDIR%%/src/pages/p_adminhome.php +%%WWWDIR%%/src/pages/p_api.php +%%WWWDIR%%/src/pages/p_assign.php +%%WWWDIR%%/src/pages/p_authorize.php +%%WWWDIR%%/src/pages/p_autoassign.php +%%WWWDIR%%/src/pages/p_bulkassign.php +%%WWWDIR%%/src/pages/p_buzzer.php +%%WWWDIR%%/src/pages/p_cacheable.php +%%WWWDIR%%/src/pages/p_changeemail.php +%%WWWDIR%%/src/pages/p_checkupdates.php +%%WWWDIR%%/src/pages/p_conflictassign.php +%%WWWDIR%%/src/pages/p_deadlines.php +%%WWWDIR%%/src/pages/p_doc.php +%%WWWDIR%%/src/pages/p_graph.php +%%WWWDIR%%/src/pages/p_graph_formula.php +%%WWWDIR%%/src/pages/p_graph_procrastination.php +%%WWWDIR%%/src/pages/p_help.php +%%WWWDIR%%/src/pages/p_home.php +%%WWWDIR%%/src/pages/p_log.php +%%WWWDIR%%/src/pages/p_mail.php +%%WWWDIR%%/src/pages/p_manualassign.php +%%WWWDIR%%/src/pages/p_mergeaccounts.php +%%WWWDIR%%/src/pages/p_oauth.php +%%WWWDIR%%/src/pages/p_offline.php +%%WWWDIR%%/src/pages/p_paper.php +%%WWWDIR%%/src/pages/p_profile.php +%%WWWDIR%%/src/pages/p_review.php +%%WWWDIR%%/src/pages/p_reviewprefs.php +%%WWWDIR%%/src/pages/p_scorechart.php +%%WWWDIR%%/src/pages/p_search.php +%%WWWDIR%%/src/pages/p_settings.php +%%WWWDIR%%/src/pages/p_signin.php +%%WWWDIR%%/src/pages/p_users.php %%WWWDIR%%/src/papercolumn.php %%WWWDIR%%/src/papercolumns/pc_administrator.php +%%WWWDIR%%/src/papercolumns/pc_assignreview.php +%%WWWDIR%%/src/papercolumns/pc_color.php %%WWWDIR%%/src/papercolumns/pc_commenters.php %%WWWDIR%%/src/papercolumns/pc_conflict.php %%WWWDIR%%/src/papercolumns/pc_conflictmatch.php @@ -243,68 +398,140 @@ %%WWWDIR%%/src/papercolumns/pc_lead.php %%WWWDIR%%/src/papercolumns/pc_option.php %%WWWDIR%%/src/papercolumns/pc_pagecount.php +%%WWWDIR%%/src/papercolumns/pc_paperidorder.php %%WWWDIR%%/src/papercolumns/pc_pcconflicts.php %%WWWDIR%%/src/papercolumns/pc_preference.php +%%WWWDIR%%/src/papercolumns/pc_preferencelist.php %%WWWDIR%%/src/papercolumns/pc_reviewdelegation.php +%%WWWDIR%%/src/papercolumns/pc_reviewerlist.php %%WWWDIR%%/src/papercolumns/pc_shepherd.php +%%WWWDIR%%/src/papercolumns/pc_tag.php %%WWWDIR%%/src/papercolumns/pc_tagreport.php %%WWWDIR%%/src/papercolumns/pc_timestamp.php %%WWWDIR%%/src/papercolumns/pc_topics.php %%WWWDIR%%/src/papercolumns/pc_topicscore.php +%%WWWDIR%%/src/papercolumns/pc_wordcount.php %%WWWDIR%%/src/paperevents.php +%%WWWDIR%%/src/paperexport.php %%WWWDIR%%/src/paperinfo.php %%WWWDIR%%/src/paperlist.php %%WWWDIR%%/src/paperoption.php +%%WWWDIR%%/src/paperoptionlist.php %%WWWDIR%%/src/paperrank.php -%%WWWDIR%%/src/papersaver.php +%%WWWDIR%%/src/paperrequest.php %%WWWDIR%%/src/papersearch.php %%WWWDIR%%/src/paperstatus.php %%WWWDIR%%/src/papertable.php -%%WWWDIR%%/src/review.php +%%WWWDIR%%/src/papervalue.php +%%WWWDIR%%/src/permissionproblem.php +%%WWWDIR%%/src/quicklinksrenderer.php +%%WWWDIR%%/src/responseround.php %%WWWDIR%%/src/reviewdiffinfo.php +%%WWWDIR%%/src/reviewfield.php +%%WWWDIR%%/src/reviewfields/rf_checkbox.php +%%WWWDIR%%/src/reviewfields/rf_checkboxes.php +%%WWWDIR%%/src/reviewfields/rf_discrete.php +%%WWWDIR%%/src/reviewfields/rf_text.php +%%WWWDIR%%/src/reviewfieldsearch.php +%%WWWDIR%%/src/reviewform.php +%%WWWDIR%%/src/reviewhistoryinfo.php %%WWWDIR%%/src/reviewinfo.php -%%WWWDIR%%/src/reviewtable.php +%%WWWDIR%%/src/reviewrefusalinfo.php +%%WWWDIR%%/src/reviewrequestinfo.php +%%WWWDIR%%/src/reviewsearchmatcher.php %%WWWDIR%%/src/reviewtimes.php -%%WWWDIR%%/src/sample.pdf %%WWWDIR%%/src/schema.sql +%%WWWDIR%%/src/search/st_admin.php %%WWWDIR%%/src/search/st_author.php +%%WWWDIR%%/src/search/st_authormatch.php +%%WWWDIR%%/src/search/st_badge.php +%%WWWDIR%%/src/search/st_color.php %%WWWDIR%%/src/search/st_comment.php %%WWWDIR%%/src/search/st_conflict.php %%WWWDIR%%/src/search/st_decision.php +%%WWWDIR%%/src/search/st_documentcount.php +%%WWWDIR%%/src/search/st_documentname.php %%WWWDIR%%/src/search/st_editfinal.php +%%WWWDIR%%/src/search/st_emoji.php %%WWWDIR%%/src/search/st_formula.php %%WWWDIR%%/src/search/st_option.php +%%WWWDIR%%/src/search/st_optionpresent.php +%%WWWDIR%%/src/search/st_optiontext.php +%%WWWDIR%%/src/search/st_optionvalue.php +%%WWWDIR%%/src/search/st_optionvaluein.php %%WWWDIR%%/src/search/st_paperpc.php %%WWWDIR%%/src/search/st_paperstatus.php %%WWWDIR%%/src/search/st_pdf.php +%%WWWDIR%%/src/search/st_perm.php +%%WWWDIR%%/src/search/st_phase.php +%%WWWDIR%%/src/search/st_proposal.php +%%WWWDIR%%/src/search/st_realnumberoption.php +%%WWWDIR%%/src/search/st_reconflict.php %%WWWDIR%%/src/search/st_review.php %%WWWDIR%%/src/search/st_reviewtoken.php %%WWWDIR%%/src/search/st_revpref.php +%%WWWDIR%%/src/search/st_sclass.php %%WWWDIR%%/src/search/st_tag.php %%WWWDIR%%/src/search/st_topic.php +%%WWWDIR%%/src/searchatom.php +%%WWWDIR%%/src/searchexample.php +%%WWWDIR%%/src/searchoperator.php %%WWWDIR%%/src/searchselection.php +%%WWWDIR%%/src/searchsplitter.php +%%WWWDIR%%/src/searchterm.php +%%WWWDIR%%/src/searchviewcommand.php +%%WWWDIR%%/src/searchword.php %%WWWDIR%%/src/sessionlist.php +%%WWWDIR%%/src/settinginfoset.php +%%WWWDIR%%/src/settingparser.php +%%WWWDIR%%/src/settings/s_automatictag.php +%%WWWDIR%%/src/settings/s_banal.php %%WWWDIR%%/src/settings/s_basics.php -%%WWWDIR%%/src/settings/s_decisions.php +%%WWWDIR%%/src/settings/s_decision.php %%WWWDIR%%/src/settings/s_decisionvisibility.php %%WWWDIR%%/src/settings/s_finalversions.php +%%WWWDIR%%/src/settings/s_json.php %%WWWDIR%%/src/settings/s_messages.php +%%WWWDIR%%/src/settings/s_namedsearch.php %%WWWDIR%%/src/settings/s_options.php -%%WWWDIR%%/src/settings/s_responses.php +%%WWWDIR%%/src/settings/s_preference.php +%%WWWDIR%%/src/settings/s_response.php +%%WWWDIR%%/src/settings/s_review.php +%%WWWDIR%%/src/settings/s_reviewfieldcondition.php %%WWWDIR%%/src/settings/s_reviewform.php -%%WWWDIR%%/src/settings/s_reviews.php %%WWWDIR%%/src/settings/s_reviewvisibility.php +%%WWWDIR%%/src/settings/s_rf.php +%%WWWDIR%%/src/settings/s_sf.php +%%WWWDIR%%/src/settings/s_shepherds.php +%%WWWDIR%%/src/settings/s_sitecontact.php +%%WWWDIR%%/src/settings/s_sround.php +%%WWWDIR%%/src/settings/s_subfieldcondition.php %%WWWDIR%%/src/settings/s_subform.php %%WWWDIR%%/src/settings/s_submissions.php %%WWWDIR%%/src/settings/s_tags.php -%%WWWDIR%%/src/settings/s_topics.php -%%WWWDIR%%/src/settings/s_tracks.php +%%WWWDIR%%/src/settings/s_tagstyle.php +%%WWWDIR%%/src/settings/s_topic.php +%%WWWDIR%%/src/settings/s_track.php %%WWWDIR%%/src/settings/s_users.php %%WWWDIR%%/src/settingvalues.php +%%WWWDIR%%/src/si.php +%%WWWDIR%%/src/siteloader.php +%%WWWDIR%%/src/sitype.php +%%WWWDIR%%/src/submissionround.php +%%WWWDIR%%/src/tagmessagereport.php +%%WWWDIR%%/src/tagrankparser.php +%%WWWDIR%%/src/tagsearchmatcher.php %%WWWDIR%%/src/textformat.php +%%WWWDIR%%/src/tokeninfo.php +%%WWWDIR%%/src/topicset.php +%%WWWDIR%%/src/track.php %%WWWDIR%%/src/updateschema.php +%%WWWDIR%%/src/updatesession.php %%WWWDIR%%/src/useractions.php +%%WWWDIR%%/src/userinfo/u_developer.php +%%WWWDIR%%/src/userinfo/u_security.php %%WWWDIR%%/src/userstatus.php +%%WWWDIR%%/src/xtparams.php %%WWWDIR%%/stylesheets/.htaccess %%WWWDIR%%/stylesheets/mobile.css %%WWWDIR%%/stylesheets/style.css diff --git a/www/hurl/Makefile b/www/hurl/Makefile index 91fe26a2faeb..66fbf0c46942 100644 --- a/www/hurl/Makefile +++ b/www/hurl/Makefile @@ -1,6 +1,5 @@ PORTNAME= hurl -DISTVERSION= 4.2.0 -PORTREVISION= 2 +DISTVERSION= 4.3.0 CATEGORIES= www MAINTAINER= rodrigo@FreeBSD.org diff --git a/www/hurl/Makefile.crates b/www/hurl/Makefile.crates index 6bc627bf2f27..74ab007a5260 100644 --- a/www/hurl/Makefile.crates +++ b/www/hurl/Makefile.crates @@ -1,40 +1,40 @@ CARGO_CRATES= adler32-1.2.0 \ - ahash-0.8.7 \ - aho-corasick-1.1.2 \ + ahash-0.8.11 \ + aho-corasick-1.1.3 \ alloc-no-stdlib-2.0.4 \ alloc-stdlib-0.2.2 \ android-tzdata-0.1.1 \ android_system_properties-0.1.5 \ - anstream-0.6.5 \ - anstyle-1.0.4 \ + anstream-0.6.13 \ + anstyle-1.0.6 \ anstyle-parse-0.2.3 \ anstyle-query-1.0.2 \ anstyle-wincon-3.0.2 \ - autocfg-1.1.0 \ - base64-0.21.6 \ + autocfg-1.2.0 \ + base64-0.22.0 \ bit-set-0.5.3 \ bit-vec-0.6.3 \ bitflags-1.3.2 \ - bitflags-2.4.1 \ + bitflags-2.5.0 \ block-buffer-0.10.4 \ - brotli-3.4.0 \ - brotli-decompressor-2.5.1 \ - bumpalo-3.14.0 \ - cc-1.0.83 \ + brotli-5.0.0 \ + brotli-decompressor-4.0.0 \ + bumpalo-3.16.0 \ + cc-1.0.95 \ cfg-if-1.0.0 \ - chrono-0.4.31 \ - clap-4.4.14 \ - clap_builder-4.4.14 \ - clap_lex-0.6.0 \ + chrono-0.4.38 \ + clap-4.5.4 \ + clap_builder-4.5.2 \ + clap_lex-0.7.0 \ colorchoice-1.0.0 \ colored-2.1.0 \ core-foundation-sys-0.8.6 \ core2-0.4.0 \ cpufeatures-0.2.12 \ - crc32fast-1.3.2 \ + crc32fast-1.4.0 \ crypto-common-0.1.6 \ - curl-0.4.44 \ - curl-sys-0.4.70+curl-8.5.0 \ + curl-0.4.46 \ + curl-sys-0.4.72+curl-8.6.0 \ dary_heap-0.3.6 \ digest-0.10.7 \ encoding-0.2.33 \ @@ -45,68 +45,68 @@ CARGO_CRATES= adler32-1.2.0 \ encoding-index-tradchinese-1.20141219.5 \ encoding_index_tests-0.1.4 \ errno-0.3.8 \ - fastrand-2.0.1 \ + fastrand-2.0.2 \ float-cmp-0.9.0 \ fnv-1.0.7 \ form_urlencoded-1.2.1 \ generic-array-0.14.7 \ - getrandom-0.2.12 \ + getrandom-0.2.14 \ glob-0.3.1 \ hashbrown-0.13.2 \ hex-0.4.3 \ hex-literal-0.4.1 \ - iana-time-zone-0.1.59 \ + iana-time-zone-0.1.60 \ iana-time-zone-haiku-0.1.2 \ idna-0.5.0 \ - itoa-1.0.10 \ - js-sys-0.3.66 \ + itoa-1.0.11 \ + js-sys-0.3.69 \ lazy_static-1.4.0 \ - libc-0.2.152 \ + libc-0.2.153 \ libflate-2.0.0 \ libflate_lz77-2.0.0 \ libm-0.2.8 \ libredox-0.0.2 \ libxml-0.3.3 \ - libz-sys-1.1.14 \ - linux-raw-sys-0.4.12 \ - log-0.4.20 \ + libz-sys-1.1.16 \ + linux-raw-sys-0.4.13 \ + log-0.4.21 \ md5-0.7.0 \ - memchr-2.7.1 \ - num-traits-0.2.17 \ + memchr-2.7.2 \ + num-traits-0.2.18 \ numtoa-0.1.0 \ once_cell-1.19.0 \ openssl-probe-0.1.5 \ - openssl-src-300.2.1+3.2.0 \ - openssl-sys-0.9.98 \ + openssl-src-300.2.3+3.2.1 \ + openssl-sys-0.9.102 \ percent-encoding-2.3.1 \ - pkg-config-0.3.28 \ + pkg-config-0.3.30 \ ppv-lite86-0.2.17 \ - proc-macro2-1.0.76 \ + proc-macro2-1.0.81 \ proptest-1.4.0 \ quick-error-1.2.3 \ - quote-1.0.35 \ + quote-1.0.36 \ rand-0.8.5 \ rand_chacha-0.3.1 \ rand_core-0.6.4 \ rand_xorshift-0.3.0 \ redox_syscall-0.4.1 \ redox_termios-0.1.3 \ - regex-1.10.2 \ - regex-automata-0.4.3 \ - regex-syntax-0.8.2 \ + regex-1.10.4 \ + regex-automata-0.4.6 \ + regex-syntax-0.8.3 \ rle-decode-fast-1.0.3 \ - rustix-0.38.28 \ + rustix-0.38.34 \ rusty-fork-0.3.0 \ - ryu-1.0.16 \ + ryu-1.0.17 \ schannel-0.1.23 \ - serde-1.0.195 \ - serde_derive-1.0.195 \ - serde_json-1.0.111 \ + serde-1.0.198 \ + serde_derive-1.0.198 \ + serde_json-1.0.116 \ sha2-0.10.8 \ - socket2-0.4.10 \ - strsim-0.10.0 \ - syn-2.0.48 \ - tempfile-3.9.0 \ + socket2-0.5.6 \ + strsim-0.11.1 \ + syn-2.0.60 \ + tempfile-3.10.1 \ terminal_size-0.3.0 \ termion-3.0.0 \ tinyvec-1.6.0 \ @@ -114,44 +114,42 @@ CARGO_CRATES= adler32-1.2.0 \ toml-0.5.11 \ typenum-1.17.0 \ unarray-0.1.4 \ - unicode-bidi-0.3.14 \ + unicode-bidi-0.3.15 \ unicode-ident-1.0.12 \ - unicode-normalization-0.1.22 \ + unicode-normalization-0.1.23 \ url-2.5.0 \ utf8parse-0.2.1 \ - uuid-1.6.1 \ + uuid-1.8.0 \ vcpkg-0.2.15 \ version_check-0.9.4 \ wait-timeout-0.2.0 \ wasi-0.11.0+wasi-snapshot-preview1 \ - wasm-bindgen-0.2.89 \ - wasm-bindgen-backend-0.2.89 \ - wasm-bindgen-macro-0.2.89 \ - wasm-bindgen-macro-support-0.2.89 \ - wasm-bindgen-shared-0.2.89 \ - winapi-0.3.9 \ - winapi-i686-pc-windows-gnu-0.4.0 \ - winapi-x86_64-pc-windows-gnu-0.4.0 \ + wasm-bindgen-0.2.92 \ + wasm-bindgen-backend-0.2.92 \ + wasm-bindgen-macro-0.2.92 \ + wasm-bindgen-macro-support-0.2.92 \ + wasm-bindgen-shared-0.2.92 \ windows-core-0.52.0 \ windows-sys-0.48.0 \ windows-sys-0.52.0 \ windows-targets-0.48.5 \ - windows-targets-0.52.0 \ + windows-targets-0.52.5 \ windows_aarch64_gnullvm-0.48.5 \ - windows_aarch64_gnullvm-0.52.0 \ + windows_aarch64_gnullvm-0.52.5 \ windows_aarch64_msvc-0.48.5 \ - windows_aarch64_msvc-0.52.0 \ + windows_aarch64_msvc-0.52.5 \ windows_i686_gnu-0.48.5 \ - windows_i686_gnu-0.52.0 \ + windows_i686_gnu-0.52.5 \ + windows_i686_gnullvm-0.52.5 \ windows_i686_msvc-0.48.5 \ - windows_i686_msvc-0.52.0 \ + windows_i686_msvc-0.52.5 \ windows_x86_64_gnu-0.48.5 \ - windows_x86_64_gnu-0.52.0 \ + windows_x86_64_gnu-0.52.5 \ windows_x86_64_gnullvm-0.48.5 \ - windows_x86_64_gnullvm-0.52.0 \ + windows_x86_64_gnullvm-0.52.5 \ windows_x86_64_msvc-0.48.5 \ - windows_x86_64_msvc-0.52.0 \ + windows_x86_64_msvc-0.52.5 \ winres-0.1.12 \ - xml-rs-0.8.19 \ + xml-rs-0.8.20 \ zerocopy-0.7.32 \ zerocopy-derive-0.7.32 diff --git a/www/hurl/distinfo b/www/hurl/distinfo index 4abe2fb101de..f9598b057cb8 100644 --- a/www/hurl/distinfo +++ b/www/hurl/distinfo @@ -1,10 +1,10 @@ -TIMESTAMP = 1706434672 +TIMESTAMP = 1714509876 SHA256 (rust/crates/adler32-1.2.0.crate) = aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234 SIZE (rust/crates/adler32-1.2.0.crate) = 6411 -SHA256 (rust/crates/ahash-0.8.7.crate) = 77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01 -SIZE (rust/crates/ahash-0.8.7.crate) = 42894 -SHA256 (rust/crates/aho-corasick-1.1.2.crate) = b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0 -SIZE (rust/crates/aho-corasick-1.1.2.crate) = 183136 +SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011 +SIZE (rust/crates/ahash-0.8.11.crate) = 43607 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 SHA256 (rust/crates/alloc-no-stdlib-2.0.4.crate) = cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3 SIZE (rust/crates/alloc-no-stdlib-2.0.4.crate) = 10105 SHA256 (rust/crates/alloc-stdlib-0.2.2.crate) = 94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece @@ -13,48 +13,48 @@ SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 -SHA256 (rust/crates/anstream-0.6.5.crate) = d664a92ecae85fd0a7392615844904654d1d5f5514837f471ddef4a057aba1b6 -SIZE (rust/crates/anstream-0.6.5.crate) = 30004 -SHA256 (rust/crates/anstyle-1.0.4.crate) = 7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87 -SIZE (rust/crates/anstyle-1.0.4.crate) = 13998 +SHA256 (rust/crates/anstream-0.6.13.crate) = d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb +SIZE (rust/crates/anstream-0.6.13.crate) = 30928 +SHA256 (rust/crates/anstyle-1.0.6.crate) = 8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc +SIZE (rust/crates/anstyle-1.0.6.crate) = 14604 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/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa -SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 -SHA256 (rust/crates/base64-0.21.6.crate) = c79fed4cdb43e993fcdadc7e58a09fd0e3e649c4436fa11da71c9f1f3ee7feb9 -SIZE (rust/crates/base64-0.21.6.crate) = 82448 +SHA256 (rust/crates/autocfg-1.2.0.crate) = f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80 +SIZE (rust/crates/autocfg-1.2.0.crate) = 14808 +SHA256 (rust/crates/base64-0.22.0.crate) = 9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51 +SIZE (rust/crates/base64-0.22.0.crate) = 81568 SHA256 (rust/crates/bit-set-0.5.3.crate) = 0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1 SIZE (rust/crates/bit-set-0.5.3.crate) = 14470 SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb SIZE (rust/crates/bit-vec-0.6.3.crate) = 19927 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/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1 +SIZE (rust/crates/bitflags-2.5.0.crate) = 43821 SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 -SHA256 (rust/crates/brotli-3.4.0.crate) = 516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f -SIZE (rust/crates/brotli-3.4.0.crate) = 1362057 -SHA256 (rust/crates/brotli-decompressor-2.5.1.crate) = 4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f -SIZE (rust/crates/brotli-decompressor-2.5.1.crate) = 193087 -SHA256 (rust/crates/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec -SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400 -SHA256 (rust/crates/cc-1.0.83.crate) = f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0 -SIZE (rust/crates/cc-1.0.83.crate) = 68343 +SHA256 (rust/crates/brotli-5.0.0.crate) = 19483b140a7ac7174d34b5a581b406c64f84da5409d3e09cf4fff604f9270e67 +SIZE (rust/crates/brotli-5.0.0.crate) = 1388774 +SHA256 (rust/crates/brotli-decompressor-4.0.0.crate) = e6221fe77a248b9117d431ad93761222e1cf8ff282d9d1d5d9f53d6299a1cf76 +SIZE (rust/crates/brotli-decompressor-4.0.0.crate) = 193192 +SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c +SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677 +SHA256 (rust/crates/cc-1.0.95.crate) = d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b +SIZE (rust/crates/cc-1.0.95.crate) = 76485 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 -SHA256 (rust/crates/chrono-0.4.31.crate) = 7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38 -SIZE (rust/crates/chrono-0.4.31.crate) = 214513 -SHA256 (rust/crates/clap-4.4.14.crate) = 33e92c5c1a78c62968ec57dbc2440366a2d6e5a23faf829970ff1585dc6b18e2 -SIZE (rust/crates/clap-4.4.14.crate) = 55522 -SHA256 (rust/crates/clap_builder-4.4.14.crate) = f4323769dc8a61e2c39ad7dc26f6f2800524691a44d74fe3d1071a5c24db6370 -SIZE (rust/crates/clap_builder-4.4.14.crate) = 163339 -SHA256 (rust/crates/clap_lex-0.6.0.crate) = 702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1 -SIZE (rust/crates/clap_lex-0.6.0.crate) = 12272 +SHA256 (rust/crates/chrono-0.4.38.crate) = a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401 +SIZE (rust/crates/chrono-0.4.38.crate) = 220559 +SHA256 (rust/crates/clap-4.5.4.crate) = 90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0 +SIZE (rust/crates/clap-4.5.4.crate) = 55401 +SHA256 (rust/crates/clap_builder-4.5.2.crate) = ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4 +SIZE (rust/crates/clap_builder-4.5.2.crate) = 163566 +SHA256 (rust/crates/clap_lex-0.7.0.crate) = 98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce +SIZE (rust/crates/clap_lex-0.7.0.crate) = 11915 SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7 SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857 SHA256 (rust/crates/colored-2.1.0.crate) = cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8 @@ -65,14 +65,14 @@ SHA256 (rust/crates/core2-0.4.0.crate) = b49ba7ef1ad6107f8824dbe97de947cbaac53c4 SIZE (rust/crates/core2-0.4.0.crate) = 37075 SHA256 (rust/crates/cpufeatures-0.2.12.crate) = 53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504 SIZE (rust/crates/cpufeatures-0.2.12.crate) = 12837 -SHA256 (rust/crates/crc32fast-1.3.2.crate) = b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d -SIZE (rust/crates/crc32fast-1.3.2.crate) = 38661 +SHA256 (rust/crates/crc32fast-1.4.0.crate) = b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa +SIZE (rust/crates/crc32fast-1.4.0.crate) = 38665 SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 -SHA256 (rust/crates/curl-0.4.44.crate) = 509bd11746c7ac09ebd19f0b17782eae80aadee26237658a6b4808afb5c11a22 -SIZE (rust/crates/curl-0.4.44.crate) = 91415 -SHA256 (rust/crates/curl-sys-0.4.70+curl-8.5.0.crate) = 3c0333d8849afe78a4c8102a429a446bfdd055832af071945520e835ae2d841e -SIZE (rust/crates/curl-sys-0.4.70+curl-8.5.0.crate) = 3254512 +SHA256 (rust/crates/curl-0.4.46.crate) = 1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6 +SIZE (rust/crates/curl-0.4.46.crate) = 94864 +SHA256 (rust/crates/curl-sys-0.4.72+curl-8.6.0.crate) = 29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea +SIZE (rust/crates/curl-sys-0.4.72+curl-8.6.0.crate) = 3269599 SHA256 (rust/crates/dary_heap-0.3.6.crate) = 7762d17f1241643615821a8455a0b2c3e803784b058693d990b11f2dce25a0ca SIZE (rust/crates/dary_heap-0.3.6.crate) = 23683 SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 @@ -93,8 +93,8 @@ SHA256 (rust/crates/encoding_index_tests-0.1.4.crate) = a246d82be1c9d791c5dfde9a SIZE (rust/crates/encoding_index_tests-0.1.4.crate) = 1631 SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 SIZE (rust/crates/errno-0.3.8.crate) = 10645 -SHA256 (rust/crates/fastrand-2.0.1.crate) = 25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5 -SIZE (rust/crates/fastrand-2.0.1.crate) = 14664 +SHA256 (rust/crates/fastrand-2.0.2.crate) = 658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984 +SIZE (rust/crates/fastrand-2.0.2.crate) = 14674 SHA256 (rust/crates/float-cmp-0.9.0.crate) = 98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4 SIZE (rust/crates/float-cmp-0.9.0.crate) = 10102 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 @@ -103,8 +103,8 @@ SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 -SHA256 (rust/crates/getrandom-0.2.12.crate) = 190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5 -SIZE (rust/crates/getrandom-0.2.12.crate) = 36163 +SHA256 (rust/crates/getrandom-0.2.14.crate) = 94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c +SIZE (rust/crates/getrandom-0.2.14.crate) = 37307 SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b SIZE (rust/crates/glob-0.3.1.crate) = 18880 SHA256 (rust/crates/hashbrown-0.13.2.crate) = 43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e @@ -113,20 +113,20 @@ SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486 SIZE (rust/crates/hex-0.4.3.crate) = 13299 SHA256 (rust/crates/hex-literal-0.4.1.crate) = 6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46 SIZE (rust/crates/hex-literal-0.4.1.crate) = 8559 -SHA256 (rust/crates/iana-time-zone-0.1.59.crate) = b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539 -SIZE (rust/crates/iana-time-zone-0.1.59.crate) = 27033 +SHA256 (rust/crates/iana-time-zone-0.1.60.crate) = e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141 +SIZE (rust/crates/iana-time-zone-0.1.60.crate) = 27074 SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185 SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6 SIZE (rust/crates/idna-0.5.0.crate) = 271940 -SHA256 (rust/crates/itoa-1.0.10.crate) = b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c -SIZE (rust/crates/itoa-1.0.10.crate) = 10534 -SHA256 (rust/crates/js-sys-0.3.66.crate) = cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca -SIZE (rust/crates/js-sys-0.3.66.crate) = 80765 +SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b +SIZE (rust/crates/itoa-1.0.11.crate) = 10563 +SHA256 (rust/crates/js-sys-0.3.69.crate) = 29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d +SIZE (rust/crates/js-sys-0.3.69.crate) = 81083 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.152.crate) = 13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7 -SIZE (rust/crates/libc-0.2.152.crate) = 740278 +SHA256 (rust/crates/libc-0.2.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd +SIZE (rust/crates/libc-0.2.153.crate) = 740614 SHA256 (rust/crates/libflate-2.0.0.crate) = 9f7d5654ae1795afc7ff76f4365c2c8791b0feb18e8996a96adad8ffd7c3b2bf SIZE (rust/crates/libflate-2.0.0.crate) = 42505 SHA256 (rust/crates/libflate_lz77-2.0.0.crate) = be5f52fb8c451576ec6b79d3f4deb327398bc05bbdbd99021a6e77a4c855d524 @@ -137,42 +137,42 @@ SHA256 (rust/crates/libredox-0.0.2.crate) = 3af92c55d7d839293953fcd0fda5ecfe9329 SIZE (rust/crates/libredox-0.0.2.crate) = 4538 SHA256 (rust/crates/libxml-0.3.3.crate) = 5fe73cdec2bcb36d25a9fe3f607ffcd44bb8907ca0100c4098d1aa342d1e7bec SIZE (rust/crates/libxml-0.3.3.crate) = 124388 -SHA256 (rust/crates/libz-sys-1.1.14.crate) = 295c17e837573c8c821dbaeb3cceb3d745ad082f7572191409e69cbc1b3fd050 -SIZE (rust/crates/libz-sys-1.1.14.crate) = 3939803 -SHA256 (rust/crates/linux-raw-sys-0.4.12.crate) = c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456 -SIZE (rust/crates/linux-raw-sys-0.4.12.crate) = 1465800 -SHA256 (rust/crates/log-0.4.20.crate) = b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f -SIZE (rust/crates/log-0.4.20.crate) = 38307 +SHA256 (rust/crates/libz-sys-1.1.16.crate) = 5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9 +SIZE (rust/crates/libz-sys-1.1.16.crate) = 3958920 +SHA256 (rust/crates/linux-raw-sys-0.4.13.crate) = 01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c +SIZE (rust/crates/linux-raw-sys-0.4.13.crate) = 1493855 +SHA256 (rust/crates/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c +SIZE (rust/crates/log-0.4.21.crate) = 43442 SHA256 (rust/crates/md5-0.7.0.crate) = 490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771 SIZE (rust/crates/md5-0.7.0.crate) = 6671 -SHA256 (rust/crates/memchr-2.7.1.crate) = 523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149 -SIZE (rust/crates/memchr-2.7.1.crate) = 96307 -SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c -SIZE (rust/crates/num-traits-0.2.17.crate) = 50190 +SHA256 (rust/crates/memchr-2.7.2.crate) = 6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d +SIZE (rust/crates/memchr-2.7.2.crate) = 96220 +SHA256 (rust/crates/num-traits-0.2.18.crate) = da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a +SIZE (rust/crates/num-traits-0.2.18.crate) = 51930 SHA256 (rust/crates/numtoa-0.1.0.crate) = b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef SIZE (rust/crates/numtoa-0.1.0.crate) = 8999 SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 SIZE (rust/crates/once_cell-1.19.0.crate) = 33046 SHA256 (rust/crates/openssl-probe-0.1.5.crate) = ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf SIZE (rust/crates/openssl-probe-0.1.5.crate) = 7227 -SHA256 (rust/crates/openssl-src-300.2.1+3.2.0.crate) = 3fe476c29791a5ca0d1273c697e96085bbabbbea2ef7afd5617e78a4b40332d3 -SIZE (rust/crates/openssl-src-300.2.1+3.2.0.crate) = 9571211 -SHA256 (rust/crates/openssl-sys-0.9.98.crate) = c1665caf8ab2dc9aef43d1c0023bd904633a6a05cb30b0ad59bec2ae986e57a7 -SIZE (rust/crates/openssl-sys-0.9.98.crate) = 68035 +SHA256 (rust/crates/openssl-src-300.2.3+3.2.1.crate) = 5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843 +SIZE (rust/crates/openssl-src-300.2.3+3.2.1.crate) = 9584245 +SHA256 (rust/crates/openssl-sys-0.9.102.crate) = c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2 +SIZE (rust/crates/openssl-sys-0.9.102.crate) = 68622 SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 -SHA256 (rust/crates/pkg-config-0.3.28.crate) = 69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a -SIZE (rust/crates/pkg-config-0.3.28.crate) = 20330 +SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec +SIZE (rust/crates/pkg-config-0.3.30.crate) = 20613 SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 -SHA256 (rust/crates/proc-macro2-1.0.76.crate) = 95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c -SIZE (rust/crates/proc-macro2-1.0.76.crate) = 45660 +SHA256 (rust/crates/proc-macro2-1.0.81.crate) = 3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba +SIZE (rust/crates/proc-macro2-1.0.81.crate) = 48233 SHA256 (rust/crates/proptest-1.4.0.crate) = 31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf SIZE (rust/crates/proptest-1.4.0.crate) = 198527 SHA256 (rust/crates/quick-error-1.2.3.crate) = a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0 SIZE (rust/crates/quick-error-1.2.3.crate) = 15066 -SHA256 (rust/crates/quote-1.0.35.crate) = 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef -SIZE (rust/crates/quote-1.0.35.crate) = 28136 +SHA256 (rust/crates/quote-1.0.36.crate) = 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7 +SIZE (rust/crates/quote-1.0.36.crate) = 28507 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 @@ -185,38 +185,38 @@ SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858 SHA256 (rust/crates/redox_termios-0.1.3.crate) = 20145670ba436b55d91fc92d25e71160fbfbdd57831631c8d7d36377a476f1cb SIZE (rust/crates/redox_termios-0.1.3.crate) = 3240 -SHA256 (rust/crates/regex-1.10.2.crate) = 380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343 -SIZE (rust/crates/regex-1.10.2.crate) = 252839 -SHA256 (rust/crates/regex-automata-0.4.3.crate) = 5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f -SIZE (rust/crates/regex-automata-0.4.3.crate) = 617011 -SHA256 (rust/crates/regex-syntax-0.8.2.crate) = c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f -SIZE (rust/crates/regex-syntax-0.8.2.crate) = 347228 +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/rle-decode-fast-1.0.3.crate) = 3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422 SIZE (rust/crates/rle-decode-fast-1.0.3.crate) = 62086 -SHA256 (rust/crates/rustix-0.38.28.crate) = 72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316 -SIZE (rust/crates/rustix-0.38.28.crate) = 365398 +SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f +SIZE (rust/crates/rustix-0.38.34.crate) = 365160 SHA256 (rust/crates/rusty-fork-0.3.0.crate) = cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f SIZE (rust/crates/rusty-fork-0.3.0.crate) = 19881 -SHA256 (rust/crates/ryu-1.0.16.crate) = f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c -SIZE (rust/crates/ryu-1.0.16.crate) = 47351 +SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1 +SIZE (rust/crates/ryu-1.0.17.crate) = 47537 SHA256 (rust/crates/schannel-0.1.23.crate) = fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534 SIZE (rust/crates/schannel-0.1.23.crate) = 41667 -SHA256 (rust/crates/serde-1.0.195.crate) = 63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02 -SIZE (rust/crates/serde-1.0.195.crate) = 76856 -SHA256 (rust/crates/serde_derive-1.0.195.crate) = 46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c -SIZE (rust/crates/serde_derive-1.0.195.crate) = 55687 -SHA256 (rust/crates/serde_json-1.0.111.crate) = 176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4 -SIZE (rust/crates/serde_json-1.0.111.crate) = 146447 +SHA256 (rust/crates/serde-1.0.198.crate) = 9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc +SIZE (rust/crates/serde-1.0.198.crate) = 77577 +SHA256 (rust/crates/serde_derive-1.0.198.crate) = e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9 +SIZE (rust/crates/serde_derive-1.0.198.crate) = 55787 +SHA256 (rust/crates/serde_json-1.0.116.crate) = 3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813 +SIZE (rust/crates/serde_json-1.0.116.crate) = 146790 SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8 SIZE (rust/crates/sha2-0.10.8.crate) = 26357 -SHA256 (rust/crates/socket2-0.4.10.crate) = 9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d -SIZE (rust/crates/socket2-0.4.10.crate) = 45697 -SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 -SIZE (rust/crates/strsim-0.10.0.crate) = 11355 -SHA256 (rust/crates/syn-2.0.48.crate) = 0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f -SIZE (rust/crates/syn-2.0.48.crate) = 250566 -SHA256 (rust/crates/tempfile-3.9.0.crate) = 01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa -SIZE (rust/crates/tempfile-3.9.0.crate) = 32182 +SHA256 (rust/crates/socket2-0.5.6.crate) = 05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871 +SIZE (rust/crates/socket2-0.5.6.crate) = 55270 +SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f +SIZE (rust/crates/strsim-0.11.1.crate) = 14266 +SHA256 (rust/crates/syn-2.0.60.crate) = 909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3 +SIZE (rust/crates/syn-2.0.60.crate) = 255808 +SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1 +SIZE (rust/crates/tempfile-3.10.1.crate) = 33653 SHA256 (rust/crates/terminal_size-0.3.0.crate) = 21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7 SIZE (rust/crates/terminal_size-0.3.0.crate) = 10096 SHA256 (rust/crates/termion-3.0.0.crate) = 417813675a504dfbbf21bfde32c03e5bf9f2413999962b479023c02848c1c7a5 @@ -231,18 +231,18 @@ SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e SIZE (rust/crates/typenum-1.17.0.crate) = 42849 SHA256 (rust/crates/unarray-0.1.4.crate) = eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94 SIZE (rust/crates/unarray-0.1.4.crate) = 12895 -SHA256 (rust/crates/unicode-bidi-0.3.14.crate) = 6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416 -SIZE (rust/crates/unicode-bidi-0.3.14.crate) = 56429 +SHA256 (rust/crates/unicode-bidi-0.3.15.crate) = 08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75 +SIZE (rust/crates/unicode-bidi-0.3.15.crate) = 56811 SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 -SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921 -SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604 +SHA256 (rust/crates/unicode-normalization-0.1.23.crate) = a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5 +SIZE (rust/crates/unicode-normalization-0.1.23.crate) = 122649 SHA256 (rust/crates/url-2.5.0.crate) = 31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633 SIZE (rust/crates/url-2.5.0.crate) = 78605 SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435 -SHA256 (rust/crates/uuid-1.6.1.crate) = 5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560 -SIZE (rust/crates/uuid-1.6.1.crate) = 55554 +SHA256 (rust/crates/uuid-1.8.0.crate) = a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0 +SIZE (rust/crates/uuid-1.8.0.crate) = 44043 SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735 SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f @@ -251,22 +251,16 @@ SHA256 (rust/crates/wait-timeout-0.2.0.crate) = 9f200f5b12eb75f8c1ed65abd4b2db8a SIZE (rust/crates/wait-timeout-0.2.0.crate) = 12441 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.89.crate) = 0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e -SIZE (rust/crates/wasm-bindgen-0.2.89.crate) = 181935 -SHA256 (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826 -SIZE (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 28205 -SHA256 (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2 -SIZE (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 13906 -SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283 -SIZE (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = 20008 -SHA256 (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f -SIZE (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7265 -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/wasm-bindgen-0.2.92.crate) = 4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8 +SIZE (rust/crates/wasm-bindgen-0.2.92.crate) = 184119 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da +SIZE (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 28348 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.92.crate) = a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726 +SIZE (rust/crates/wasm-bindgen-macro-0.2.92.crate) = 13835 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7 +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = 20092 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.92.crate) = af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96 +SIZE (rust/crates/wasm-bindgen-shared-0.2.92.crate) = 7263 SHA256 (rust/crates/windows-core-0.52.0.crate) = 33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9 SIZE (rust/crates/windows-core-0.52.0.crate) = 42154 SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9 @@ -275,43 +269,45 @@ SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9b SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877 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.0.crate) = 8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd -SIZE (rust/crates/windows-targets-0.52.0.crate) = 6229 +SHA256 (rust/crates/windows-targets-0.52.5.crate) = 6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb +SIZE (rust/crates/windows-targets-0.52.5.crate) = 6376 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.0.crate) = cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea -SIZE (rust/crates/windows_aarch64_gnullvm-0.52.0.crate) = 430182 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 433266 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.0.crate) = bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef -SIZE (rust/crates/windows_aarch64_msvc-0.52.0.crate) = 821663 +SHA256 (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6 +SIZE (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 827944 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.0.crate) = a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313 -SIZE (rust/crates/windows_i686_gnu-0.52.0.crate) = 870285 +SHA256 (rust/crates/windows_i686_gnu-0.52.5.crate) = 88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670 +SIZE (rust/crates/windows_i686_gnu-0.52.5.crate) = 875699 +SHA256 (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9 +SIZE (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 473064 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.0.crate) = ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a -SIZE (rust/crates/windows_i686_msvc-0.52.0.crate) = 888693 +SHA256 (rust/crates/windows_i686_msvc-0.52.5.crate) = db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf +SIZE (rust/crates/windows_i686_msvc-0.52.5.crate) = 895404 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.0.crate) = 3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd -SIZE (rust/crates/windows_x86_64_gnu-0.52.0.crate) = 826213 +SHA256 (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9 +SIZE (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 831539 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.0.crate) = 1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e -SIZE (rust/crates/windows_x86_64_gnullvm-0.52.0.crate) = 430165 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596 +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 433246 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.0.crate) = dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04 -SIZE (rust/crates/windows_x86_64_msvc-0.52.0.crate) = 821600 +SHA256 (rust/crates/windows_x86_64_msvc-0.52.5.crate) = bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0 +SIZE (rust/crates/windows_x86_64_msvc-0.52.5.crate) = 827905 SHA256 (rust/crates/winres-0.1.12.crate) = b68db261ef59e9e52806f688020631e987592bd83619edccda9c47d42cde4f6c SIZE (rust/crates/winres-0.1.12.crate) = 19772 -SHA256 (rust/crates/xml-rs-0.8.19.crate) = 0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a -SIZE (rust/crates/xml-rs-0.8.19.crate) = 54051 +SHA256 (rust/crates/xml-rs-0.8.20.crate) = 791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193 +SIZE (rust/crates/xml-rs-0.8.20.crate) = 54443 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 (Orange-OpenSource-hurl-4.2.0_GH0.tar.gz) = 8ede2b3e9e1e1fb80000362750814b0fd07911506c1ea13e38e6c2fe80f447f0 -SIZE (Orange-OpenSource-hurl-4.2.0_GH0.tar.gz) = 5261133 +SHA256 (Orange-OpenSource-hurl-4.3.0_GH0.tar.gz) = 499f2430ee6b73b0414ab8aa3c9298be8276e7b404b13c76e4c02a86eb1db9cd +SIZE (Orange-OpenSource-hurl-4.3.0_GH0.tar.gz) = 5280666 diff --git a/www/icapeg/Makefile b/www/icapeg/Makefile index b073c875a3e7..c5bf8aba25c0 100644 --- a/www/icapeg/Makefile +++ b/www/icapeg/Makefile @@ -1,7 +1,7 @@ PORTNAME= icapeg DISTVERSIONPREFIX= v DISTVERSION= 1.0.0 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= support@egirna.com diff --git a/www/ikiwiki/Makefile b/www/ikiwiki/Makefile index 24f387f77ca2..a22a4785aec2 100644 --- a/www/ikiwiki/Makefile +++ b/www/ikiwiki/Makefile @@ -1,6 +1,5 @@ PORTNAME= ikiwiki -DISTVERSION= 3.20200202.3 -PORTREVISION= 1 +DISTVERSION= 3.20200202.4 CATEGORIES= www MASTER_SITES= DEBIAN_POOL \ LOCAL/mat/${PORTNAME} @@ -100,7 +99,5 @@ post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/ikiwiki.setup ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/wikilist ${STAGEDIR}${EXAMPLESDIR} - @${RMDIR} ${STAGEDIR}${EXAMPLESDIR}/doc/examples - @${RMDIR} ${STAGEDIR}${EXAMPLESDIR}/doc .include <bsd.port.mk> diff --git a/www/ikiwiki/distinfo b/www/ikiwiki/distinfo index 0ba43fc1e813..469f47a08b49 100644 --- a/www/ikiwiki/distinfo +++ b/www/ikiwiki/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1581933496 -SHA256 (ikiwiki_3.20200202.3.orig.tar.xz) = 594f13bcee8959356376a42eed6c5a8e295d325724b1c09f9395404e3262796a -SIZE (ikiwiki_3.20200202.3.orig.tar.xz) = 2689636 +TIMESTAMP = 1714205232 +SHA256 (ikiwiki_3.20200202.4.orig.tar.xz) = be61813068b6c5f5b77f2b346e41efac59d9f0574b6a361154851f735412fe8f +SIZE (ikiwiki_3.20200202.4.orig.tar.xz) = 2733060 diff --git a/www/ilias/Makefile b/www/ilias/Makefile index 2575f7ee060e..55b4519edf16 100644 --- a/www/ilias/Makefile +++ b/www/ilias/Makefile @@ -1,6 +1,6 @@ PORTNAME= ilias DISTVERSIONPREFIX= v -DISTVERSION= 9.0_beta3 +DISTVERSION= 9.1 CATEGORIES= www education PKGNAMEPREFIX= ${PHP_PKGNAMEPREFIX} @@ -15,18 +15,20 @@ RUN_DEPENDS= ${LOCALBASE}/share/pear/Auth/Auth.php:security/pear-Auth@${PHP_FLAV ${LOCALBASE}/share/pear/HTML/Template/IT.php:devel/pear-HTML_Template_IT@${PHP_FLAVOR} \ ${LOCALBASE}/share/pear/MDB2.php:databases/pear-MDB2@${PHP_FLAVOR} \ ${LOCALBASE}/share/pear/PEAR.php:devel/pear@${PHP_FLAVOR} \ + ${PECL_PKGNAMEPREFIX}imagick>=0:graphics/pecl-imagick@${PHP_FLAVOR} \ ${UNZIP_CMD}:archivers/unzip \ composer:devel/php-composer@${PHP_FLAVOR} \ sudo:security/sudo \ zip:archivers/zip -USES= cpe jpeg magick:6,run php:flavors +USES= cpe jpeg magick:7,run php:flavors USE_GITHUB= yes GH_ACCOUNT= ILIAS-eLearning GH_PROJECT= ILIAS -USE_PHP= curl dom gd ldap fileinfo \ +USE_PHP= curl dom gd ldap fileinfo iconv \ pdo_mysql session simplexml soap \ - tokenizer xmlrpc xmlwriter xsl zlib + tokenizer xmlrpc xmlwriter xmlreader \ + xsl zip zlib CONFLICTS= ilias6 diff --git a/www/ilias/distinfo b/www/ilias/distinfo index 713aa50e4301..9d47a25328a4 100644 --- a/www/ilias/distinfo +++ b/www/ilias/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708003481 -SHA256 (ILIAS-eLearning-ILIAS-v9.0_beta3_GH0.tar.gz) = 6306641696e0e9710dee63c038ac85c14729736ffe2eaa7d8450c48f90848e8f -SIZE (ILIAS-eLearning-ILIAS-v9.0_beta3_GH0.tar.gz) = 31634375 +TIMESTAMP = 1716199466 +SHA256 (ILIAS-eLearning-ILIAS-v9.1_GH0.tar.gz) = 7a3c98f278d17b757e2a8cee070b68cc5159b47d63c7f9ccfe0a288b9353e60d +SIZE (ILIAS-eLearning-ILIAS-v9.1_GH0.tar.gz) = 31891914 diff --git a/www/interchange/Makefile b/www/interchange/Makefile index e72cb3f604c5..931100be35fb 100644 --- a/www/interchange/Makefile +++ b/www/interchange/Makefile @@ -11,6 +11,9 @@ WWW= https://www.icdevgroup.org/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/LICENSE +DEPRECATED= Outdated, current version was released in 2010 is unsupported upstream +EXPIRATION_DATE=2024-06-30 + BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= p5-Safe-Hole>=0.10:security/p5-Safe-Hole \ p5-URI>=1.37:net/p5-URI \ diff --git a/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn b/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn new file mode 100644 index 000000000000..dcfd5a407511 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn @@ -0,0 +1,10 @@ +--- chrome/browser/devtools/BUILD.gn.orig 2024-01-25 17:18:37 UTC ++++ chrome/browser/devtools/BUILD.gn +@@ -121,6 +121,7 @@ static_library("devtools") { + "//chrome/browser/autofill:autofill", + "//components/autofill/content/browser:browser", + "//components/autofill/core/browser:browser", ++ "//components/enterprise/buildflags", + "//components/paint_preview/buildflags:buildflags", + "//content/public/browser", + "//net", diff --git a/www/iridium/files/patch-chrome_browser_safe__browsing_BUILD.gn b/www/iridium/files/patch-chrome_browser_safe__browsing_BUILD.gn new file mode 100644 index 000000000000..a5b1c7875a14 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_safe__browsing_BUILD.gn @@ -0,0 +1,10 @@ +--- chrome/browser/safe_browsing/BUILD.gn.orig 2024-01-25 17:18:38 UTC ++++ chrome/browser/safe_browsing/BUILD.gn +@@ -144,6 +144,7 @@ static_library("safe_browsing") { + "//chrome/browser/profiles:profile", + "//chrome/common/safe_browsing:proto", + "//components/autofill/core/browser", ++ "//components/compose:buildflags", + "//components/content_settings/core/browser", + "//components/no_state_prefetch/browser", + "//components/omnibox/browser", diff --git a/www/iridium/files/patch-components_BUILD.gn b/www/iridium/files/patch-components_BUILD.gn new file mode 100644 index 000000000000..5ad595adf643 --- /dev/null +++ b/www/iridium/files/patch-components_BUILD.gn @@ -0,0 +1,22 @@ +--- components/BUILD.gn.orig 2024-01-25 17:18:39 UTC ++++ components/BUILD.gn +@@ -812,8 +812,7 @@ test("components_unittests") { + # Since //chrome depends on //extensions, we also only assert_no_deps on + # extensions targets for non-lacros builds. + if (!is_chromeos_lacros) { +- assert_no_deps = [ "//chrome/*" ] +- assert_no_deps += disallowed_extension_deps_ ++ assert_no_deps = disallowed_extension_deps_ + } + + if (is_ios) { +@@ -1100,8 +1099,7 @@ if (use_blink) { + # Since //chrome depends on //extensions, we also only assert_no_deps on + # extensions targets for non-lacros builds. + if (!is_chromeos_lacros) { +- assert_no_deps = [ "//chrome/*" ] +- assert_no_deps += disallowed_extension_deps_ ++ assert_no_deps = disallowed_extension_deps_ + } + + if (is_fuchsia) { diff --git a/www/iridium/files/patch-content_browser_BUILD.gn b/www/iridium/files/patch-content_browser_BUILD.gn index ecbab49cb8cc..ef9136e8dc3e 100644 --- a/www/iridium/files/patch-content_browser_BUILD.gn +++ b/www/iridium/files/patch-content_browser_BUILD.gn @@ -1,16 +1,57 @@ ---- content/browser/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- content/browser/BUILD.gn.orig 2024-01-25 17:18:41 UTC +++ content/browser/BUILD.gn -@@ -2474,6 +2474,13 @@ source_set("browser") { +@@ -12,6 +12,7 @@ import("//chromeos/ash/components/assistant/assistant. + import("//build/config/ozone.gni") + import("//build/config/ui.gni") + import("//chromeos/ash/components/assistant/assistant.gni") ++import("//components/supervised_user/buildflags.gni") + import("//components/viz/common/debugger/viz_debugger.gni") + import("//content/common/features.gni") + import("//content/public/common/zygote/features.gni") +@@ -66,11 +67,13 @@ source_set("browser") { + "//build:branding_buildflags", + "//build:chromecast_buildflags", + "//build:chromeos_buildflags", ++ "//build/config/chromebox_for_meetings:buildflags", + "//build/config/compiler:compiler_buildflags", + "//cc", + "//cc/animation", + "//cc/mojo_embedder", + "//cc/paint", ++ "//chrome/common:buildflags", + "//components/attribution_reporting:mojom", + "//components/back_forward_cache:enum", + "//components/browsing_topics/common:common", +@@ -91,6 +94,7 @@ source_set("browser") { + "//components/offline_pages/buildflags", + "//components/offline_pages/core/request_header", + "//components/os_crypt/sync", ++ "//components/paint_preview/buildflags:buildflags", + "//components/payments/content/icon", + "//components/payments/mojom", + "//components/power_monitor", +@@ -103,8 +107,10 @@ source_set("browser") { + "//components/services/storage/public/cpp", + "//components/services/storage/public/mojom", + "//components/sqlite_proto", ++ "//components/supervised_user/core/common:buildflags", + "//components/system_media_controls", + "//components/tracing:startup_tracing", ++ "//components/translate/content/common", + "//components/ui_devtools", + "//components/ukm", + "//components/ukm/debug:util", +@@ -2472,6 +2478,13 @@ source_set("browser") { + if (allow_oop_video_decoder) { + sources += [ "media/stable_video_decoder_factory.cc" ] deps += [ "//media/mojo/mojom/stable:stable_video_decoder" ] - } - ++ } ++ + if (is_bsd) { + sources -= [ + "sandbox_ipc_linux.cc", + "sandbox_ipc_linux.h", + ] -+ } -+ + } + if (is_chromeos) { - sources += [ - "handwriting/handwriting_recognition_service_impl_cros.cc", diff --git a/www/iridium/files/patch-net_BUILD.gn b/www/iridium/files/patch-net_BUILD.gn index c905001584c7..a2d622107922 100644 --- a/www/iridium/files/patch-net_BUILD.gn +++ b/www/iridium/files/patch-net_BUILD.gn @@ -1,4 +1,4 @@ ---- net/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- net/BUILD.gn.orig 2024-01-25 17:17:56 UTC +++ net/BUILD.gn @@ -122,7 +122,7 @@ net_configs = [ "//build/config/compiler:wexit_time_destructors", @@ -9,7 +9,15 @@ net_configs += [ "//build/config/linux:libresolv" ] } -@@ -1240,6 +1240,19 @@ component("net") { +@@ -1095,6 +1095,7 @@ component("net") { + ":net_deps", + "//build:chromeos_buildflags", + "//components/miracle_parameter/common", ++ "//media:media_buildflags", + "//net/http:transport_security_state_generated_files", + ] + +@@ -1240,6 +1241,19 @@ component("net") { ] } @@ -29,7 +37,7 @@ if (is_mac) { sources += [ "base/network_notification_thread_mac.cc", -@@ -1396,7 +1409,7 @@ component("net") { +@@ -1396,7 +1410,7 @@ component("net") { } # Use getifaddrs() on POSIX platforms, except Linux. @@ -38,7 +46,7 @@ sources += [ "base/network_interfaces_getifaddrs.cc", "base/network_interfaces_getifaddrs.h", -@@ -2886,7 +2899,7 @@ test("net_unittests") { +@@ -2886,7 +2900,7 @@ test("net_unittests") { ] } @@ -47,7 +55,7 @@ sources += [ "base/address_tracker_linux_unittest.cc", "base/network_interfaces_linux_unittest.cc", -@@ -2974,6 +2987,10 @@ test("net_unittests") { +@@ -2974,6 +2988,10 @@ test("net_unittests") { ] } @@ -58,7 +66,7 @@ if (enable_websockets) { deps += [ "//net/server:tests" ] } -@@ -3044,7 +3061,7 @@ test("net_unittests") { +@@ -3044,7 +3062,7 @@ test("net_unittests") { ] } @@ -67,7 +75,7 @@ sources += [ "tools/quic/quic_simple_server_test.cc" ] } -@@ -3179,7 +3196,7 @@ test("net_unittests") { +@@ -3179,7 +3197,7 @@ test("net_unittests") { } # Use getifaddrs() on POSIX platforms, except Linux. diff --git a/www/iridium/files/patch-net_dns_BUILD.gn b/www/iridium/files/patch-net_dns_BUILD.gn index 064fead49a33..f30aaac0dd85 100644 --- a/www/iridium/files/patch-net_dns_BUILD.gn +++ b/www/iridium/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2023-08-28 20:17:35 UTC +--- net/dns/BUILD.gn.orig 2024-01-25 17:17:56 UTC +++ net/dns/BUILD.gn @@ -128,7 +128,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -169,6 +169,7 @@ source_set("dns") { +@@ -162,6 +162,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//components/services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -169,6 +172,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -434,9 +435,9 @@ source_set("tests") { +@@ -434,9 +438,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/www/iridium/files/patch-tools_gn_bootstrap_bootstrap.py b/www/iridium/files/patch-tools_gn_bootstrap_bootstrap.py new file mode 100644 index 000000000000..8f51d62c3310 --- /dev/null +++ b/www/iridium/files/patch-tools_gn_bootstrap_bootstrap.py @@ -0,0 +1,11 @@ +--- tools/gn/bootstrap/bootstrap.py.orig 2024-04-19 13:02:56 UTC ++++ tools/gn/bootstrap/bootstrap.py +@@ -122,7 +122,7 @@ def main(argv): + + shutil.copy2( + os.path.join(BOOTSTRAP_DIR, 'last_commit_position.h'), gn_build_dir) +- cmd = [ninja_binary, '-C', gn_build_dir, '-w', 'dupbuild=err', 'gn'] ++ cmd = [ninja_binary, '-C', gn_build_dir, 'gn'] + if options.jobs: + cmd += ['-j', str(options.jobs)] + subprocess.check_call(cmd) diff --git a/www/itop/Makefile b/www/itop/Makefile index eab0891af7b7..d999fcf302df 100644 --- a/www/itop/Makefile +++ b/www/itop/Makefile @@ -6,11 +6,14 @@ DISTNAME= iTop-${PORTVERSION}-4463 MAINTAINER= ports@FreeBSD.org COMMENT= Simple, web based IT Service Management tool -WWW= https://www.combodo.com/ +WWW= https://github.com/Combodo/iTop LICENSE= AGPLv3 LICENSE_FILE= ${WRKDIR}/LICENSE +DEPRECATED= Outdated, current version is 5 years old and unsupported upstream +EXPIRATION_DATE=2024-06-30 + RUN_DEPENDS= ${LOCALBASE}/bin/dot:graphics/graphviz USES= cpe shebangfix php zip diff --git a/www/jira-cli/Makefile b/www/jira-cli/Makefile index c8808debb055..ad92bfde5548 100644 --- a/www/jira-cli/Makefile +++ b/www/jira-cli/Makefile @@ -1,7 +1,7 @@ PORTNAME= jira-cli DISTVERSIONPREFIX= v DISTVERSION= 1.5.1 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www DIST_SUBDIR= jira-cli diff --git a/www/jmeter/Makefile b/www/jmeter/Makefile index ff67cb1b3dbe..fc6d9ceb274d 100644 --- a/www/jmeter/Makefile +++ b/www/jmeter/Makefile @@ -1,10 +1,10 @@ PORTNAME= apache-jmeter PORTVERSION= 2.11 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www benchmarks java MASTER_SITES= https://archive.apache.org/dist/jmeter/binaries/ -MAINTAINER= mi@aldan.algebra.com +MAINTAINER= ports@virtual-estates.net COMMENT= Functional behaviour load and performance test application WWW= https://jmeter.apache.org/ diff --git a/www/jwt-cli/Makefile b/www/jwt-cli/Makefile index aa92eecd7f3e..ae0eacac32fc 100644 --- a/www/jwt-cli/Makefile +++ b/www/jwt-cli/Makefile @@ -1,6 +1,6 @@ PORTNAME= jwt-cli PORTVERSION= 6.0.0 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= www MAINTAINER= osa@FreeBSD.org diff --git a/www/kanboard/Makefile b/www/kanboard/Makefile index f6fbc20513e3..2b78a1cc1cb4 100644 --- a/www/kanboard/Makefile +++ b/www/kanboard/Makefile @@ -1,6 +1,6 @@ PORTNAME= kanboard DISTVERSIONPREFIX= v -DISTVERSION= 1.2.35 +DISTVERSION= 1.2.36 CATEGORIES= www PKGNAMEPREFIX= ${PHP_PKGNAMEPREFIX} diff --git a/www/kanboard/distinfo b/www/kanboard/distinfo index e4280837c7a2..2c8ceb805274 100644 --- a/www/kanboard/distinfo +++ b/www/kanboard/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1710743070 -SHA256 (kanboard-kanboard-v1.2.35_GH0.tar.gz) = 3c6a4175fe31c50aea68e5a252d9e3f36e98fc0948f93583dfbfacf570171c64 -SIZE (kanboard-kanboard-v1.2.35_GH0.tar.gz) = 3389625 +TIMESTAMP = 1714926826 +SHA256 (kanboard-kanboard-v1.2.36_GH0.tar.gz) = 51a0e84e3f7eaf1d4efb16ac994568aabad47b47551f487ca17d46c47ca905e2 +SIZE (kanboard-kanboard-v1.2.36_GH0.tar.gz) = 3395786 diff --git a/www/kanboard/pkg-plist b/www/kanboard/pkg-plist index 0b41f79204fa..aa7ff656e66a 100644 --- a/www/kanboard/pkg-plist +++ b/www/kanboard/pkg-plist @@ -1067,6 +1067,8 @@ %%WWWDIR%%/assets/js/vendor.min.js %%WWWDIR%%/cli %%WWWDIR%%/config.default.php +%%WWWDIR%%/custom-hooks/install-custom-hooks.sh +%%WWWDIR%%/custom-hooks/post-checkout %%WWWDIR%%/data/.htaccess %%WWWDIR%%/data/web.config %%WWWDIR%%/favicon.ico @@ -2066,6 +2068,7 @@ %%WWWDIR%%/vendor/symfony/service-contracts/ServiceSubscriberInterface.php %%WWWDIR%%/vendor/symfony/service-contracts/ServiceSubscriberTrait.php %%WWWDIR%%/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php +%%WWWDIR%%/vendor/symfony/service-contracts/Test/ServiceLocatorTestCase.php %%WWWDIR%%/vendor/symfony/string/AbstractString.php %%WWWDIR%%/vendor/symfony/string/AbstractUnicodeString.php %%WWWDIR%%/vendor/symfony/string/ByteString.php diff --git a/www/kineto/Makefile b/www/kineto/Makefile index a4b7bdf5e15b..e8fd463eb167 100644 --- a/www/kineto/Makefile +++ b/www/kineto/Makefile @@ -1,6 +1,6 @@ PORTNAME= kineto DISTVERSION= g20211104 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= corey@electrickite.org diff --git a/www/kiwix-tools/Makefile b/www/kiwix-tools/Makefile index 6f4bd42e2e4f..1806294fb12a 100644 --- a/www/kiwix-tools/Makefile +++ b/www/kiwix-tools/Makefile @@ -1,6 +1,5 @@ PORTNAME= kiwix-tools -DISTVERSION= 3.5.0 -PORTREVISION= 2 +DISTVERSION= 3.7.0 CATEGORIES= www MAINTAINER= olce.freebsd.ports@certner.fr @@ -13,7 +12,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libkiwix.so:devel/libkiwix \ libzim.so:devel/libzim -USES= compiler:c++11-lang meson pkgconfig +USES= compiler:c++17-lang meson pkgconfig USE_GITHUB= yes GH_ACCOUNT= kiwix USE_RC_SUBR= kiwix_serve diff --git a/www/kiwix-tools/distinfo b/www/kiwix-tools/distinfo index 46157bfd787f..6c8edab5c109 100644 --- a/www/kiwix-tools/distinfo +++ b/www/kiwix-tools/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686583949 -SHA256 (kiwix-kiwix-tools-3.5.0_GH0.tar.gz) = b15e69dd0ae690cb7a000ad815e5037db5276d92310e0b44832b960a51bfaeac -SIZE (kiwix-kiwix-tools-3.5.0_GH0.tar.gz) = 538400 +TIMESTAMP = 1716231298 +SHA256 (kiwix-kiwix-tools-3.7.0_GH0.tar.gz) = 7367400dab80fcf0702657b2d5324ec29f344581318659c106f5b7fca30fa0db +SIZE (kiwix-kiwix-tools-3.7.0_GH0.tar.gz) = 539897 diff --git a/www/ladybird/Makefile b/www/ladybird/Makefile index 3ce387acce00..203a1400b6ca 100644 --- a/www/ladybird/Makefile +++ b/www/ladybird/Makefile @@ -1,5 +1,5 @@ PORTNAME= ladybird -PORTVERSION= g20240226 +PORTVERSION= g20240505 CATEGORIES= www MASTER_SITES= https://github.com/unicode-org/cldr-json/releases/download/${CLDRVERSION}/:cldr \ https://www.unicode.org/Public/${UCDVERSION}/ucd/:ucd \ @@ -34,7 +34,7 @@ USES= cmake:testing compiler:c++20-lang gl localbase:ldflags python:build qt:6 USE_GITHUB= yes GH_ACCOUNT= SerenityOS GH_PROJECT= serenity -GH_TAGNAME= a8a1d8746e28e743a7d86e6e660140fc28949e4f +GH_TAGNAME= 3a7bea7402e879f731c9f4802cec84921f496942 USE_GL= egl USE_LDCONFIG= yes USE_QT= base tools:build wayland multimedia diff --git a/www/ladybird/distinfo b/www/ladybird/distinfo index 75e532cdafd1..5eb55390f0ec 100644 --- a/www/ladybird/distinfo +++ b/www/ladybird/distinfo @@ -1,13 +1,13 @@ -TIMESTAMP = 1708984390 -SHA256 (ladybird-g20240226/cldr-44.0.1-json-modern.zip) = 6daf783158fb3b09aa026a048e1f5ed5773148387b1edadfad33f303371f332a -SIZE (ladybird-g20240226/cldr-44.0.1-json-modern.zip) = 47935704 -SHA256 (ladybird-g20240226/UCD.zip) = cb1c663d053926500cd501229736045752713a066bd75802098598b7a7056177 -SIZE (ladybird-g20240226/UCD.zip) = 8248819 -SHA256 (ladybird-g20240226/emoji-test.txt) = d876ee249aa28eaa76cfa6dfaa702847a8d13b062aa488d465d0395ee8137ed9 -SIZE (ladybird-g20240226/emoji-test.txt) = 639405 -SHA256 (ladybird-g20240226/IdnaMappingTable.txt) = 402cbd285f1f952fcd0834b63541d54f69d3d8f1b8f8599bf71a1a14935f82c4 -SIZE (ladybird-g20240226/IdnaMappingTable.txt) = 874566 -SHA256 (ladybird-g20240226/cacert-2023-08-22.pem) = 23c2469e2a568362a62eecf1b49ed90a15621e6fa30e29947ded3436422de9b9 -SIZE (ladybird-g20240226/cacert-2023-08-22.pem) = 221470 -SHA256 (ladybird-g20240226/SerenityOS-serenity-g20240226-a8a1d8746e28e743a7d86e6e660140fc28949e4f_GH0.tar.gz) = 72fc9689259489600d117cb5bd7463b7635b11e4e7ff795dfea15f0be68686d5 -SIZE (ladybird-g20240226/SerenityOS-serenity-g20240226-a8a1d8746e28e743a7d86e6e660140fc28949e4f_GH0.tar.gz) = 69356886 +TIMESTAMP = 1714913472 +SHA256 (ladybird-g20240505/cldr-44.0.1-json-modern.zip) = 6daf783158fb3b09aa026a048e1f5ed5773148387b1edadfad33f303371f332a +SIZE (ladybird-g20240505/cldr-44.0.1-json-modern.zip) = 47935704 +SHA256 (ladybird-g20240505/UCD.zip) = cb1c663d053926500cd501229736045752713a066bd75802098598b7a7056177 +SIZE (ladybird-g20240505/UCD.zip) = 8248819 +SHA256 (ladybird-g20240505/emoji-test.txt) = d876ee249aa28eaa76cfa6dfaa702847a8d13b062aa488d465d0395ee8137ed9 +SIZE (ladybird-g20240505/emoji-test.txt) = 639405 +SHA256 (ladybird-g20240505/IdnaMappingTable.txt) = 402cbd285f1f952fcd0834b63541d54f69d3d8f1b8f8599bf71a1a14935f82c4 +SIZE (ladybird-g20240505/IdnaMappingTable.txt) = 874566 +SHA256 (ladybird-g20240505/cacert-2023-08-22.pem) = 23c2469e2a568362a62eecf1b49ed90a15621e6fa30e29947ded3436422de9b9 +SIZE (ladybird-g20240505/cacert-2023-08-22.pem) = 221470 +SHA256 (ladybird-g20240505/SerenityOS-serenity-g20240505-3a7bea7402e879f731c9f4802cec84921f496942_GH0.tar.gz) = 167bccf09e4d3325e5dd292559f6b6179922d410b8aec481ab8853d816592d31 +SIZE (ladybird-g20240505/SerenityOS-serenity-g20240505-3a7bea7402e879f731c9f4802cec84921f496942_GH0.tar.gz) = 69958563 diff --git a/www/ladybird/files/patch-Meta_Lagom_CMakeLists.txt b/www/ladybird/files/patch-Meta_Lagom_CMakeLists.txt deleted file mode 100644 index 14228ffaa662..000000000000 --- a/www/ladybird/files/patch-Meta_Lagom_CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ ---- Meta/Lagom/CMakeLists.txt.orig 2024-02-26 22:01:50 UTC -+++ Meta/Lagom/CMakeLists.txt -@@ -350,6 +350,7 @@ lagom_lib(AK ak SOURCES ${AK_SOURCES}) - # AK - add_serenity_subdirectory(AK) - lagom_lib(AK ak SOURCES ${AK_SOURCES}) -+target_link_libraries(AK PRIVATE execinfo) - - # LibCore - add_serenity_subdirectory(Userland/Libraries/LibCore) diff --git a/www/ladybird/files/patch-Userland_Libraries_LibCore_Environment.cpp b/www/ladybird/files/patch-Userland_Libraries_LibCore_Environment.cpp new file mode 100644 index 000000000000..b1582a11e36a --- /dev/null +++ b/www/ladybird/files/patch-Userland_Libraries_LibCore_Environment.cpp @@ -0,0 +1,34 @@ +--- Userland/Libraries/LibCore/Environment.cpp.orig 2024-05-05 05:45:42 UTC ++++ Userland/Libraries/LibCore/Environment.cpp +@@ -13,7 +13,7 @@ + #if defined(AK_OS_MACOS) || defined(AK_OS_IOS) + # include <crt_externs.h> + #else +-extern char** environ; ++extern "C" char** environ; + #endif + + namespace Core::Environment { +@@ -93,7 +93,7 @@ Optional<StringView> get(StringView name, [[maybe_unus + builder.append('\0'); + // Note the explicit null terminators above. + +-#if defined(AK_OS_MACOS) || defined(AK_OS_ANDROID) ++#if defined(AK_OS_MACOS) || defined(AK_OS_ANDROID) || defined(__FreeBSD__) && __FreeBSD__ < 14 + char* result = ::getenv(builder.string_view().characters_without_null_termination()); + #else + char* result; +@@ -158,10 +158,12 @@ ErrorOr<void> clear() + for (size_t environ_size = 0; environment[environ_size]; ++environ_size) { + environment[environ_size] = NULL; + } +-#else ++#elif __FreeBSD__ >= 14 + auto rc = ::clearenv(); + if (rc < 0) + return Error::from_errno(errno); ++#else ++ environ = NULL; + #endif + return {}; + } diff --git a/www/ladybird/files/patch-Userland_Libraries_LibJS_Heap_BlockAllocator.cpp b/www/ladybird/files/patch-Userland_Libraries_LibJS_Heap_BlockAllocator.cpp new file mode 100644 index 000000000000..90fbf0f8152c --- /dev/null +++ b/www/ladybird/files/patch-Userland_Libraries_LibJS_Heap_BlockAllocator.cpp @@ -0,0 +1,23 @@ +mmap() with MAP_ANONYMOUS requires that -1 be passed for the fd argument. +See https://github.com/SerenityOS/serenity/issues/23375. + +--- Userland/Libraries/LibJS/Heap/BlockAllocator.cpp.orig 2024-05-05 13:48:53 UTC ++++ Userland/Libraries/LibJS/Heap/BlockAllocator.cpp +@@ -57,7 +57,7 @@ void* BlockAllocator::allocate_block([[maybe_unused]] + #ifdef AK_OS_SERENITY + auto* block = (HeapBlock*)serenity_mmap(nullptr, HeapBlock::block_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_RANDOMIZED | MAP_PRIVATE, 0, 0, HeapBlock::block_size, name); + #else +- auto* block = (HeapBlock*)mmap(nullptr, HeapBlock::block_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); ++ auto* block = (HeapBlock*)mmap(nullptr, HeapBlock::block_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + #endif + VERIFY(block != MAP_FAILED); + LSAN_REGISTER_ROOT_REGION(block, HeapBlock::block_size); +@@ -74,7 +74,7 @@ void BlockAllocator::deallocate_block(void* block) + perror("munmap"); + VERIFY_NOT_REACHED(); + } +- if (mmap(block, HeapBlock::block_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE | MAP_FIXED, 0, 0) != block) { ++ if (mmap(block, HeapBlock::block_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE | MAP_FIXED, -1, 0) != block) { + perror("mmap"); + VERIFY_NOT_REACHED(); + } diff --git a/www/ladybird/pkg-plist b/www/ladybird/pkg-plist index d2f607c1d55f..f9e6189e8c46 100644 --- a/www/ladybird/pkg-plist +++ b/www/ladybird/pkg-plist @@ -17,12 +17,12 @@ lib/liblagom-compress.so.0.0.0 lib/liblagom-core.so lib/liblagom-core.so.0 lib/liblagom-core.so.0.0.0 +lib/liblagom-coreminimal.so +lib/liblagom-coreminimal.so.0 +lib/liblagom-coreminimal.so.0.0.0 lib/liblagom-crypto.so lib/liblagom-crypto.so.0 lib/liblagom-crypto.so.0.0.0 -lib/liblagom-diff.so -lib/liblagom-diff.so.0 -lib/liblagom-diff.so.0.0.0 lib/liblagom-filesystem.so lib/liblagom-filesystem.so.0 lib/liblagom-filesystem.so.0.0.0 @@ -86,6 +86,9 @@ lib/liblagom-tls.so.0.0.0 lib/liblagom-unicode.so lib/liblagom-unicode.so.0 lib/liblagom-unicode.so.0.0.0 +lib/liblagom-url.so +lib/liblagom-url.so.0 +lib/liblagom-url.so.0.0.0 lib/liblagom-video.so lib/liblagom-video.so.0 lib/liblagom-video.so.0.0.0 @@ -108,14 +111,2013 @@ libexec/ImageDecoder libexec/RequestServer libexec/SQLServer libexec/WebContent -libexec/WebDriver -libexec/WebSocket libexec/WebWorker -libexec/headless-browser share/Ladybird/LadybirdConfig.cmake share/Ladybird/LadybirdConfigVersion.cmake share/Ladybird/ladybirdTargets-%%CMAKE_BUILD_TYPE%%.cmake share/Ladybird/ladybirdTargets.cmake +share/Lagom/emoji/U+10CD00.png +share/Lagom/emoji/U+10CD01.png +share/Lagom/emoji/U+10CD02.png +share/Lagom/emoji/U+10CD03.png +share/Lagom/emoji/U+10CD04.png +share/Lagom/emoji/U+10CD05.png +share/Lagom/emoji/U+10CD06.png +share/Lagom/emoji/U+10CD07.png +share/Lagom/emoji/U+10CD08.png +share/Lagom/emoji/U+10CD09.png +share/Lagom/emoji/U+10CD0A.png +share/Lagom/emoji/U+10CD0B.png +share/Lagom/emoji/U+10CD0C.png +share/Lagom/emoji/U+10CD0D.png +share/Lagom/emoji/U+10CD0E.png +share/Lagom/emoji/U+10CD0F.png +share/Lagom/emoji/U+10CD10.png +share/Lagom/emoji/U+10CD11.png +share/Lagom/emoji/U+10CD12.png +share/Lagom/emoji/U+10CD13.png +share/Lagom/emoji/U+10CD14.png +share/Lagom/emoji/U+10CD15.png +share/Lagom/emoji/U+10CD16.png +share/Lagom/emoji/U+10CD17.png +share/Lagom/emoji/U+10CD18.png +share/Lagom/emoji/U+10CD19.png +share/Lagom/emoji/U+10CD1A.png +share/Lagom/emoji/U+10CD1B.png +share/Lagom/emoji/U+10CD1C.png +share/Lagom/emoji/U+10CD1D.png +share/Lagom/emoji/U+10CD1E.png +share/Lagom/emoji/U+10CD1F.png +share/Lagom/emoji/U+10CD20.png +share/Lagom/emoji/U+10CD21.png +share/Lagom/emoji/U+10CD22.png +share/Lagom/emoji/U+10CD23.png +share/Lagom/emoji/U+10CD24.png +share/Lagom/emoji/U+10CD25.png +share/Lagom/emoji/U+10CD26.png +share/Lagom/emoji/U+10CD60.png +share/Lagom/emoji/U+10CD61.png +share/Lagom/emoji/U+10CD62.png +share/Lagom/emoji/U+10CD63.png +share/Lagom/emoji/U+10CD64.png +share/Lagom/emoji/U+10CD65.png +share/Lagom/emoji/U+10CD66.png +share/Lagom/emoji/U+10CD67.png +share/Lagom/emoji/U+10CD68.png +share/Lagom/emoji/U+10CD69.png +share/Lagom/emoji/U+10CD6A.png +share/Lagom/emoji/U+10CD6B.png +share/Lagom/emoji/U+10CD90.png +share/Lagom/emoji/U+10CD91.png +share/Lagom/emoji/U+10CD92.png +share/Lagom/emoji/U+10CD93.png +share/Lagom/emoji/U+10CDB0.png +share/Lagom/emoji/U+10CDB1.png +share/Lagom/emoji/U+10CDD0.png +share/Lagom/emoji/U+10CDE0.png +share/Lagom/emoji/U+10CDE1.png +share/Lagom/emoji/U+10CDE2.png +share/Lagom/emoji/U+10CDE3.png +share/Lagom/emoji/U+10CDE4.png +share/Lagom/emoji/U+10CDE5.png +share/Lagom/emoji/U+1F004.png +share/Lagom/emoji/U+1F0CF.png +share/Lagom/emoji/U+1F170.png +share/Lagom/emoji/U+1F171.png +share/Lagom/emoji/U+1F17E.png +share/Lagom/emoji/U+1F17F.png +share/Lagom/emoji/U+1F18E.png +share/Lagom/emoji/U+1F191.png +share/Lagom/emoji/U+1F192.png +share/Lagom/emoji/U+1F193.png +share/Lagom/emoji/U+1F194.png +share/Lagom/emoji/U+1F195.png +share/Lagom/emoji/U+1F196.png +share/Lagom/emoji/U+1F197.png +share/Lagom/emoji/U+1F198.png +share/Lagom/emoji/U+1F199.png +share/Lagom/emoji/U+1F19A.png +share/Lagom/emoji/U+1F1E6_U+1F1E8.png +share/Lagom/emoji/U+1F1E6_U+1F1E9.png +share/Lagom/emoji/U+1F1E6_U+1F1EA.png +share/Lagom/emoji/U+1F1E6_U+1F1EB.png +share/Lagom/emoji/U+1F1E6_U+1F1EC.png +share/Lagom/emoji/U+1F1E6_U+1F1EE.png +share/Lagom/emoji/U+1F1E6_U+1F1F1.png +share/Lagom/emoji/U+1F1E6_U+1F1F2.png +share/Lagom/emoji/U+1F1E6_U+1F1F4.png +share/Lagom/emoji/U+1F1E6_U+1F1F6.png +share/Lagom/emoji/U+1F1E6_U+1F1F7.png +share/Lagom/emoji/U+1F1E6_U+1F1F8.png +share/Lagom/emoji/U+1F1E6_U+1F1F9.png +share/Lagom/emoji/U+1F1E6_U+1F1FA.png +share/Lagom/emoji/U+1F1E6_U+1F1FC.png +share/Lagom/emoji/U+1F1E6_U+1F1FD.png +share/Lagom/emoji/U+1F1E6_U+1F1FF.png +share/Lagom/emoji/U+1F1E7_U+1F1E6.png +share/Lagom/emoji/U+1F1E7_U+1F1E7.png +share/Lagom/emoji/U+1F1E7_U+1F1E9.png +share/Lagom/emoji/U+1F1E7_U+1F1EA.png +share/Lagom/emoji/U+1F1E7_U+1F1EB.png +share/Lagom/emoji/U+1F1E7_U+1F1EC.png +share/Lagom/emoji/U+1F1E7_U+1F1ED.png +share/Lagom/emoji/U+1F1E7_U+1F1EE.png +share/Lagom/emoji/U+1F1E7_U+1F1EF.png +share/Lagom/emoji/U+1F1E7_U+1F1F1.png +share/Lagom/emoji/U+1F1E7_U+1F1F2.png +share/Lagom/emoji/U+1F1E7_U+1F1F3.png +share/Lagom/emoji/U+1F1E7_U+1F1F4.png +share/Lagom/emoji/U+1F1E7_U+1F1F6.png +share/Lagom/emoji/U+1F1E7_U+1F1F7.png +share/Lagom/emoji/U+1F1E7_U+1F1F8.png +share/Lagom/emoji/U+1F1E7_U+1F1F9.png +share/Lagom/emoji/U+1F1E7_U+1F1FB.png +share/Lagom/emoji/U+1F1E7_U+1F1FC.png +share/Lagom/emoji/U+1F1E7_U+1F1FE.png +share/Lagom/emoji/U+1F1E7_U+1F1FF.png +share/Lagom/emoji/U+1F1E8_U+1F1E6.png +share/Lagom/emoji/U+1F1E8_U+1F1E8.png +share/Lagom/emoji/U+1F1E8_U+1F1E9.png +share/Lagom/emoji/U+1F1E8_U+1F1EB.png +share/Lagom/emoji/U+1F1E8_U+1F1EC.png +share/Lagom/emoji/U+1F1E8_U+1F1ED.png +share/Lagom/emoji/U+1F1E8_U+1F1EE.png +share/Lagom/emoji/U+1F1E8_U+1F1F0.png +share/Lagom/emoji/U+1F1E8_U+1F1F1.png +share/Lagom/emoji/U+1F1E8_U+1F1F2.png +share/Lagom/emoji/U+1F1E8_U+1F1F3.png +share/Lagom/emoji/U+1F1E8_U+1F1F4.png +share/Lagom/emoji/U+1F1E8_U+1F1F5.png +share/Lagom/emoji/U+1F1E8_U+1F1F7.png +share/Lagom/emoji/U+1F1E8_U+1F1FA.png +share/Lagom/emoji/U+1F1E8_U+1F1FB.png +share/Lagom/emoji/U+1F1E8_U+1F1FC.png +share/Lagom/emoji/U+1F1E8_U+1F1FD.png +share/Lagom/emoji/U+1F1E8_U+1F1FE.png +share/Lagom/emoji/U+1F1E8_U+1F1FF.png +share/Lagom/emoji/U+1F1E9_U+1F1EA.png +share/Lagom/emoji/U+1F1E9_U+1F1EC.png +share/Lagom/emoji/U+1F1E9_U+1F1EF.png +share/Lagom/emoji/U+1F1E9_U+1F1F0.png +share/Lagom/emoji/U+1F1E9_U+1F1F2.png +share/Lagom/emoji/U+1F1E9_U+1F1F4.png +share/Lagom/emoji/U+1F1E9_U+1F1FF.png +share/Lagom/emoji/U+1F1EA_U+1F1E6.png +share/Lagom/emoji/U+1F1EA_U+1F1E8.png +share/Lagom/emoji/U+1F1EA_U+1F1EA.png +share/Lagom/emoji/U+1F1EA_U+1F1EC.png +share/Lagom/emoji/U+1F1EA_U+1F1ED.png +share/Lagom/emoji/U+1F1EA_U+1F1F7.png +share/Lagom/emoji/U+1F1EA_U+1F1F8.png +share/Lagom/emoji/U+1F1EA_U+1F1F9.png +share/Lagom/emoji/U+1F1EA_U+1F1FA.png +share/Lagom/emoji/U+1F1EB_U+1F1EE.png +share/Lagom/emoji/U+1F1EB_U+1F1EF.png +share/Lagom/emoji/U+1F1EB_U+1F1F0.png +share/Lagom/emoji/U+1F1EB_U+1F1F2.png +share/Lagom/emoji/U+1F1EB_U+1F1F4.png +share/Lagom/emoji/U+1F1EB_U+1F1F7.png +share/Lagom/emoji/U+1F1EC_U+1F1E6.png +share/Lagom/emoji/U+1F1EC_U+1F1E7.png +share/Lagom/emoji/U+1F1EC_U+1F1E9.png +share/Lagom/emoji/U+1F1EC_U+1F1EA.png +share/Lagom/emoji/U+1F1EC_U+1F1EB.png +share/Lagom/emoji/U+1F1EC_U+1F1EC.png +share/Lagom/emoji/U+1F1EC_U+1F1ED.png +share/Lagom/emoji/U+1F1EC_U+1F1EE.png +share/Lagom/emoji/U+1F1EC_U+1F1F1.png +share/Lagom/emoji/U+1F1EC_U+1F1F2.png +share/Lagom/emoji/U+1F1EC_U+1F1F3.png +share/Lagom/emoji/U+1F1EC_U+1F1F5.png +share/Lagom/emoji/U+1F1EC_U+1F1F6.png +share/Lagom/emoji/U+1F1EC_U+1F1F7.png +share/Lagom/emoji/U+1F1EC_U+1F1F8.png +share/Lagom/emoji/U+1F1EC_U+1F1F9.png +share/Lagom/emoji/U+1F1EC_U+1F1FA.png +share/Lagom/emoji/U+1F1EC_U+1F1FC.png +share/Lagom/emoji/U+1F1EC_U+1F1FE.png +share/Lagom/emoji/U+1F1ED_U+1F1F0.png +share/Lagom/emoji/U+1F1ED_U+1F1F2.png +share/Lagom/emoji/U+1F1ED_U+1F1F3.png +share/Lagom/emoji/U+1F1ED_U+1F1F7.png +share/Lagom/emoji/U+1F1ED_U+1F1F9.png +share/Lagom/emoji/U+1F1ED_U+1F1FA.png +share/Lagom/emoji/U+1F1EE_U+1F1E8.png +share/Lagom/emoji/U+1F1EE_U+1F1E9.png +share/Lagom/emoji/U+1F1EE_U+1F1EA.png +share/Lagom/emoji/U+1F1EE_U+1F1F1.png +share/Lagom/emoji/U+1F1EE_U+1F1F2.png +share/Lagom/emoji/U+1F1EE_U+1F1F3.png +share/Lagom/emoji/U+1F1EE_U+1F1F4.png +share/Lagom/emoji/U+1F1EE_U+1F1F6.png +share/Lagom/emoji/U+1F1EE_U+1F1F7.png +share/Lagom/emoji/U+1F1EE_U+1F1F8.png +share/Lagom/emoji/U+1F1EE_U+1F1F9.png +share/Lagom/emoji/U+1F1EF_U+1F1EA.png +share/Lagom/emoji/U+1F1EF_U+1F1F2.png +share/Lagom/emoji/U+1F1EF_U+1F1F4.png +share/Lagom/emoji/U+1F1EF_U+1F1F5.png +share/Lagom/emoji/U+1F1F0_U+1F1EA.png +share/Lagom/emoji/U+1F1F0_U+1F1EC.png +share/Lagom/emoji/U+1F1F0_U+1F1ED.png +share/Lagom/emoji/U+1F1F0_U+1F1EE.png +share/Lagom/emoji/U+1F1F0_U+1F1F2.png +share/Lagom/emoji/U+1F1F0_U+1F1F3.png +share/Lagom/emoji/U+1F1F0_U+1F1F5.png +share/Lagom/emoji/U+1F1F0_U+1F1F7.png +share/Lagom/emoji/U+1F1F0_U+1F1FC.png +share/Lagom/emoji/U+1F1F0_U+1F1FE.png +share/Lagom/emoji/U+1F1F0_U+1F1FF.png +share/Lagom/emoji/U+1F1F1_U+1F1E6.png +share/Lagom/emoji/U+1F1F1_U+1F1E7.png +share/Lagom/emoji/U+1F1F1_U+1F1E8.png +share/Lagom/emoji/U+1F1F1_U+1F1EE.png +share/Lagom/emoji/U+1F1F1_U+1F1F0.png +share/Lagom/emoji/U+1F1F1_U+1F1F7.png +share/Lagom/emoji/U+1F1F1_U+1F1F8.png +share/Lagom/emoji/U+1F1F1_U+1F1F9.png +share/Lagom/emoji/U+1F1F1_U+1F1FA.png +share/Lagom/emoji/U+1F1F1_U+1F1FB.png +share/Lagom/emoji/U+1F1F1_U+1F1FE.png +share/Lagom/emoji/U+1F1F2_U+1F1E6.png +share/Lagom/emoji/U+1F1F2_U+1F1E8.png +share/Lagom/emoji/U+1F1F2_U+1F1E9.png +share/Lagom/emoji/U+1F1F2_U+1F1EA.png +share/Lagom/emoji/U+1F1F2_U+1F1EB.png +share/Lagom/emoji/U+1F1F2_U+1F1EC.png +share/Lagom/emoji/U+1F1F2_U+1F1ED.png +share/Lagom/emoji/U+1F1F2_U+1F1F0.png +share/Lagom/emoji/U+1F1F2_U+1F1F1.png +share/Lagom/emoji/U+1F1F2_U+1F1F2.png +share/Lagom/emoji/U+1F1F2_U+1F1F3.png +share/Lagom/emoji/U+1F1F2_U+1F1F4.png +share/Lagom/emoji/U+1F1F2_U+1F1F5.png +share/Lagom/emoji/U+1F1F2_U+1F1F6.png +share/Lagom/emoji/U+1F1F2_U+1F1F7.png +share/Lagom/emoji/U+1F1F2_U+1F1F8.png +share/Lagom/emoji/U+1F1F2_U+1F1F9.png +share/Lagom/emoji/U+1F1F2_U+1F1FA.png +share/Lagom/emoji/U+1F1F2_U+1F1FB.png +share/Lagom/emoji/U+1F1F2_U+1F1FC.png +share/Lagom/emoji/U+1F1F2_U+1F1FD.png +share/Lagom/emoji/U+1F1F2_U+1F1FE.png +share/Lagom/emoji/U+1F1F2_U+1F1FF.png +share/Lagom/emoji/U+1F1F3_U+1F1E6.png +share/Lagom/emoji/U+1F1F3_U+1F1E8.png +share/Lagom/emoji/U+1F1F3_U+1F1EA.png +share/Lagom/emoji/U+1F1F3_U+1F1EB.png +share/Lagom/emoji/U+1F1F3_U+1F1EC.png +share/Lagom/emoji/U+1F1F3_U+1F1EE.png +share/Lagom/emoji/U+1F1F3_U+1F1F1.png +share/Lagom/emoji/U+1F1F3_U+1F1F4.png +share/Lagom/emoji/U+1F1F3_U+1F1F5.png +share/Lagom/emoji/U+1F1F3_U+1F1F7.png +share/Lagom/emoji/U+1F1F3_U+1F1FA.png +share/Lagom/emoji/U+1F1F3_U+1F1FF.png +share/Lagom/emoji/U+1F1F4_U+1F1F2.png +share/Lagom/emoji/U+1F1F5_U+1F1E6.png +share/Lagom/emoji/U+1F1F5_U+1F1EA.png +share/Lagom/emoji/U+1F1F5_U+1F1EB.png +share/Lagom/emoji/U+1F1F5_U+1F1EC.png +share/Lagom/emoji/U+1F1F5_U+1F1ED.png +share/Lagom/emoji/U+1F1F5_U+1F1F0.png +share/Lagom/emoji/U+1F1F5_U+1F1F1.png +share/Lagom/emoji/U+1F1F5_U+1F1F2.png +share/Lagom/emoji/U+1F1F5_U+1F1F3.png +share/Lagom/emoji/U+1F1F5_U+1F1F7.png +share/Lagom/emoji/U+1F1F5_U+1F1F8.png +share/Lagom/emoji/U+1F1F5_U+1F1F9.png +share/Lagom/emoji/U+1F1F5_U+1F1FC.png +share/Lagom/emoji/U+1F1F5_U+1F1FE.png +share/Lagom/emoji/U+1F1F6_U+1F1E6.png +share/Lagom/emoji/U+1F1F7_U+1F1EA.png +share/Lagom/emoji/U+1F1F7_U+1F1F4.png +share/Lagom/emoji/U+1F1F7_U+1F1F8.png +share/Lagom/emoji/U+1F1F7_U+1F1FA.png +share/Lagom/emoji/U+1F1F7_U+1F1FC.png +share/Lagom/emoji/U+1F1F8_U+1F1E6.png +share/Lagom/emoji/U+1F1F8_U+1F1E7.png +share/Lagom/emoji/U+1F1F8_U+1F1E8.png +share/Lagom/emoji/U+1F1F8_U+1F1E9.png +share/Lagom/emoji/U+1F1F8_U+1F1EA.png +share/Lagom/emoji/U+1F1F8_U+1F1EC.png +share/Lagom/emoji/U+1F1F8_U+1F1ED.png +share/Lagom/emoji/U+1F1F8_U+1F1EE.png +share/Lagom/emoji/U+1F1F8_U+1F1EF.png +share/Lagom/emoji/U+1F1F8_U+1F1F0.png +share/Lagom/emoji/U+1F1F8_U+1F1F1.png +share/Lagom/emoji/U+1F1F8_U+1F1F2.png +share/Lagom/emoji/U+1F1F8_U+1F1F3.png +share/Lagom/emoji/U+1F1F8_U+1F1F4.png +share/Lagom/emoji/U+1F1F8_U+1F1F7.png +share/Lagom/emoji/U+1F1F8_U+1F1F8.png +share/Lagom/emoji/U+1F1F8_U+1F1F9.png +share/Lagom/emoji/U+1F1F8_U+1F1FB.png +share/Lagom/emoji/U+1F1F8_U+1F1FD.png +share/Lagom/emoji/U+1F1F8_U+1F1FE.png +share/Lagom/emoji/U+1F1F8_U+1F1FF.png +share/Lagom/emoji/U+1F1F9_U+1F1E6.png +share/Lagom/emoji/U+1F1F9_U+1F1E8.png +share/Lagom/emoji/U+1F1F9_U+1F1E9.png +share/Lagom/emoji/U+1F1F9_U+1F1EB.png +share/Lagom/emoji/U+1F1F9_U+1F1EC.png +share/Lagom/emoji/U+1F1F9_U+1F1ED.png +share/Lagom/emoji/U+1F1F9_U+1F1EF.png +share/Lagom/emoji/U+1F1F9_U+1F1F0.png +share/Lagom/emoji/U+1F1F9_U+1F1F1.png +share/Lagom/emoji/U+1F1F9_U+1F1F2.png +share/Lagom/emoji/U+1F1F9_U+1F1F3.png +share/Lagom/emoji/U+1F1F9_U+1F1F4.png +share/Lagom/emoji/U+1F1F9_U+1F1F7.png +share/Lagom/emoji/U+1F1F9_U+1F1F9.png +share/Lagom/emoji/U+1F1F9_U+1F1FB.png +share/Lagom/emoji/U+1F1F9_U+1F1FC.png +share/Lagom/emoji/U+1F1F9_U+1F1FF.png +share/Lagom/emoji/U+1F1FA_U+1F1E6.png +share/Lagom/emoji/U+1F1FA_U+1F1EC.png +share/Lagom/emoji/U+1F1FA_U+1F1F2.png +share/Lagom/emoji/U+1F1FA_U+1F1F3.png +share/Lagom/emoji/U+1F1FA_U+1F1F8.png +share/Lagom/emoji/U+1F1FA_U+1F1FE.png +share/Lagom/emoji/U+1F1FA_U+1F1FF.png +share/Lagom/emoji/U+1F1FB_U+1F1E6.png +share/Lagom/emoji/U+1F1FB_U+1F1E8.png +share/Lagom/emoji/U+1F1FB_U+1F1EA.png +share/Lagom/emoji/U+1F1FB_U+1F1EC.png +share/Lagom/emoji/U+1F1FB_U+1F1EE.png +share/Lagom/emoji/U+1F1FB_U+1F1F3.png +share/Lagom/emoji/U+1F1FB_U+1F1FA.png +share/Lagom/emoji/U+1F1FC_U+1F1EB.png +share/Lagom/emoji/U+1F1FC_U+1F1F8.png +share/Lagom/emoji/U+1F1FD_U+1F1F0.png +share/Lagom/emoji/U+1F1FE_U+1F1EA.png +share/Lagom/emoji/U+1F1FE_U+1F1F9.png +share/Lagom/emoji/U+1F1FF_U+1F1E6.png +share/Lagom/emoji/U+1F1FF_U+1F1F2.png +share/Lagom/emoji/U+1F1FF_U+1F1FC.png +share/Lagom/emoji/U+1F201.png +share/Lagom/emoji/U+1F202.png +share/Lagom/emoji/U+1F21A.png +share/Lagom/emoji/U+1F22F.png +share/Lagom/emoji/U+1F232.png +share/Lagom/emoji/U+1F233.png +share/Lagom/emoji/U+1F234.png +share/Lagom/emoji/U+1F235.png +share/Lagom/emoji/U+1F236.png +share/Lagom/emoji/U+1F237.png +share/Lagom/emoji/U+1F238.png +share/Lagom/emoji/U+1F239.png +share/Lagom/emoji/U+1F23A.png +share/Lagom/emoji/U+1F250.png +share/Lagom/emoji/U+1F251.png +share/Lagom/emoji/U+1F300.png +share/Lagom/emoji/U+1F301.png +share/Lagom/emoji/U+1F302.png +share/Lagom/emoji/U+1F303.png +share/Lagom/emoji/U+1F304.png +share/Lagom/emoji/U+1F305.png +share/Lagom/emoji/U+1F306.png +share/Lagom/emoji/U+1F307.png +share/Lagom/emoji/U+1F308.png +share/Lagom/emoji/U+1F309.png +share/Lagom/emoji/U+1F30A.png +share/Lagom/emoji/U+1F30B.png +share/Lagom/emoji/U+1F30C.png +share/Lagom/emoji/U+1F30D.png +share/Lagom/emoji/U+1F30E.png +share/Lagom/emoji/U+1F30F.png +share/Lagom/emoji/U+1F310.png +share/Lagom/emoji/U+1F311.png +share/Lagom/emoji/U+1F312.png +share/Lagom/emoji/U+1F313.png +share/Lagom/emoji/U+1F314.png +share/Lagom/emoji/U+1F315.png +share/Lagom/emoji/U+1F316.png +share/Lagom/emoji/U+1F317.png +share/Lagom/emoji/U+1F318.png +share/Lagom/emoji/U+1F319.png +share/Lagom/emoji/U+1F31A.png +share/Lagom/emoji/U+1F31B.png +share/Lagom/emoji/U+1F31C.png +share/Lagom/emoji/U+1F31D.png +share/Lagom/emoji/U+1F31E.png +share/Lagom/emoji/U+1F31F.png +share/Lagom/emoji/U+1F320.png +share/Lagom/emoji/U+1F321.png +share/Lagom/emoji/U+1F324.png +share/Lagom/emoji/U+1F325.png +share/Lagom/emoji/U+1F326.png +share/Lagom/emoji/U+1F327.png +share/Lagom/emoji/U+1F328.png +share/Lagom/emoji/U+1F329.png +share/Lagom/emoji/U+1F32A.png +share/Lagom/emoji/U+1F32B.png +share/Lagom/emoji/U+1F32C.png +share/Lagom/emoji/U+1F32D.png +share/Lagom/emoji/U+1F32E.png +share/Lagom/emoji/U+1F32F.png +share/Lagom/emoji/U+1F330.png +share/Lagom/emoji/U+1F331.png +share/Lagom/emoji/U+1F332.png +share/Lagom/emoji/U+1F333.png +share/Lagom/emoji/U+1F334.png +share/Lagom/emoji/U+1F335.png +share/Lagom/emoji/U+1F336.png +share/Lagom/emoji/U+1F337.png +share/Lagom/emoji/U+1F338.png +share/Lagom/emoji/U+1F339.png +share/Lagom/emoji/U+1F33A.png +share/Lagom/emoji/U+1F33B.png +share/Lagom/emoji/U+1F33C.png +share/Lagom/emoji/U+1F33D.png +share/Lagom/emoji/U+1F33E.png +share/Lagom/emoji/U+1F33F.png +share/Lagom/emoji/U+1F340.png +share/Lagom/emoji/U+1F341.png +share/Lagom/emoji/U+1F342.png +share/Lagom/emoji/U+1F343.png +share/Lagom/emoji/U+1F344.png +share/Lagom/emoji/U+1F344_U+200D_U+1F7EB.png +share/Lagom/emoji/U+1F345.png +share/Lagom/emoji/U+1F346.png +share/Lagom/emoji/U+1F347.png +share/Lagom/emoji/U+1F348.png +share/Lagom/emoji/U+1F349.png +share/Lagom/emoji/U+1F34A.png +share/Lagom/emoji/U+1F34B.png +share/Lagom/emoji/U+1F34B_U+200D_U+1F7E9.png +share/Lagom/emoji/U+1F34C.png +share/Lagom/emoji/U+1F34D.png +share/Lagom/emoji/U+1F34E.png +share/Lagom/emoji/U+1F34F.png +share/Lagom/emoji/U+1F350.png +share/Lagom/emoji/U+1F351.png +share/Lagom/emoji/U+1F352.png +share/Lagom/emoji/U+1F353.png +share/Lagom/emoji/U+1F354.png +share/Lagom/emoji/U+1F355.png +share/Lagom/emoji/U+1F356.png +share/Lagom/emoji/U+1F357.png +share/Lagom/emoji/U+1F358.png +share/Lagom/emoji/U+1F359.png +share/Lagom/emoji/U+1F35A.png +share/Lagom/emoji/U+1F35B.png +share/Lagom/emoji/U+1F35C.png +share/Lagom/emoji/U+1F35D.png +share/Lagom/emoji/U+1F35E.png +share/Lagom/emoji/U+1F35F.png +share/Lagom/emoji/U+1F360.png +share/Lagom/emoji/U+1F361.png +share/Lagom/emoji/U+1F362.png +share/Lagom/emoji/U+1F363.png +share/Lagom/emoji/U+1F364.png +share/Lagom/emoji/U+1F365.png +share/Lagom/emoji/U+1F366.png +share/Lagom/emoji/U+1F367.png +share/Lagom/emoji/U+1F368.png +share/Lagom/emoji/U+1F369.png +share/Lagom/emoji/U+1F36A.png +share/Lagom/emoji/U+1F36B.png +share/Lagom/emoji/U+1F36C.png +share/Lagom/emoji/U+1F36D.png +share/Lagom/emoji/U+1F36E.png +share/Lagom/emoji/U+1F36F.png +share/Lagom/emoji/U+1F370.png +share/Lagom/emoji/U+1F371.png +share/Lagom/emoji/U+1F372.png +share/Lagom/emoji/U+1F373.png +share/Lagom/emoji/U+1F374.png +share/Lagom/emoji/U+1F375.png +share/Lagom/emoji/U+1F376.png +share/Lagom/emoji/U+1F377.png +share/Lagom/emoji/U+1F378.png +share/Lagom/emoji/U+1F379.png +share/Lagom/emoji/U+1F37A.png +share/Lagom/emoji/U+1F37B.png +share/Lagom/emoji/U+1F37C.png +share/Lagom/emoji/U+1F37D.png +share/Lagom/emoji/U+1F37E.png +share/Lagom/emoji/U+1F37F.png +share/Lagom/emoji/U+1F380.png +share/Lagom/emoji/U+1F381.png +share/Lagom/emoji/U+1F382.png +share/Lagom/emoji/U+1F383.png +share/Lagom/emoji/U+1F384.png +share/Lagom/emoji/U+1F385.png +share/Lagom/emoji/U+1F386.png +share/Lagom/emoji/U+1F387.png +share/Lagom/emoji/U+1F388.png +share/Lagom/emoji/U+1F389.png +share/Lagom/emoji/U+1F38A.png +share/Lagom/emoji/U+1F38B.png +share/Lagom/emoji/U+1F38C.png +share/Lagom/emoji/U+1F38D.png +share/Lagom/emoji/U+1F38F.png +share/Lagom/emoji/U+1F390.png +share/Lagom/emoji/U+1F391.png +share/Lagom/emoji/U+1F392.png +share/Lagom/emoji/U+1F393.png +share/Lagom/emoji/U+1F396.png +share/Lagom/emoji/U+1F397.png +share/Lagom/emoji/U+1F399.png +share/Lagom/emoji/U+1F39A.png +share/Lagom/emoji/U+1F39B.png +share/Lagom/emoji/U+1F39E.png +share/Lagom/emoji/U+1F39F.png +share/Lagom/emoji/U+1F3A0.png +share/Lagom/emoji/U+1F3A1.png +share/Lagom/emoji/U+1F3A2.png +share/Lagom/emoji/U+1F3A3.png +share/Lagom/emoji/U+1F3A4.png +share/Lagom/emoji/U+1F3A5.png +share/Lagom/emoji/U+1F3A6.png +share/Lagom/emoji/U+1F3A7.png +share/Lagom/emoji/U+1F3A8.png +share/Lagom/emoji/U+1F3A9.png +share/Lagom/emoji/U+1F3AA.png +share/Lagom/emoji/U+1F3AB.png +share/Lagom/emoji/U+1F3AC.png +share/Lagom/emoji/U+1F3AD.png +share/Lagom/emoji/U+1F3AE.png +share/Lagom/emoji/U+1F3AF.png +share/Lagom/emoji/U+1F3B0.png +share/Lagom/emoji/U+1F3B1.png +share/Lagom/emoji/U+1F3B2.png +share/Lagom/emoji/U+1F3B3.png +share/Lagom/emoji/U+1F3B4.png +share/Lagom/emoji/U+1F3B5.png +share/Lagom/emoji/U+1F3B6.png +share/Lagom/emoji/U+1F3B7.png +share/Lagom/emoji/U+1F3B8.png +share/Lagom/emoji/U+1F3B9.png +share/Lagom/emoji/U+1F3BA.png +share/Lagom/emoji/U+1F3BB.png +share/Lagom/emoji/U+1F3BC.png +share/Lagom/emoji/U+1F3BD.png +share/Lagom/emoji/U+1F3BE.png +share/Lagom/emoji/U+1F3BF.png +share/Lagom/emoji/U+1F3C0.png +share/Lagom/emoji/U+1F3C1.png +share/Lagom/emoji/U+1F3C2.png +share/Lagom/emoji/U+1F3C3.png +share/Lagom/emoji/U+1F3C3_U+200D_U+2640.png +share/Lagom/emoji/U+1F3C3_U+200D_U+2642.png +share/Lagom/emoji/U+1F3C4.png +share/Lagom/emoji/U+1F3C4_U+200D_U+2640.png +share/Lagom/emoji/U+1F3C4_U+200D_U+2642.png +share/Lagom/emoji/U+1F3C5.png +share/Lagom/emoji/U+1F3C6.png +share/Lagom/emoji/U+1F3C7.png +share/Lagom/emoji/U+1F3C8.png +share/Lagom/emoji/U+1F3C9.png +share/Lagom/emoji/U+1F3CA.png +share/Lagom/emoji/U+1F3CA_U+200D_U+2640.png +share/Lagom/emoji/U+1F3CA_U+200D_U+2642.png +share/Lagom/emoji/U+1F3CB.png +share/Lagom/emoji/U+1F3CB_U+200D_U+2640.png +share/Lagom/emoji/U+1F3CB_U+200D_U+2642.png +share/Lagom/emoji/U+1F3CC.png +share/Lagom/emoji/U+1F3CC_U+200D_U+2640.png +share/Lagom/emoji/U+1F3CC_U+200D_U+2642.png +share/Lagom/emoji/U+1F3CE.png +share/Lagom/emoji/U+1F3CF.png +share/Lagom/emoji/U+1F3D0.png +share/Lagom/emoji/U+1F3D1.png +share/Lagom/emoji/U+1F3D2.png +share/Lagom/emoji/U+1F3D3.png +share/Lagom/emoji/U+1F3D4.png +share/Lagom/emoji/U+1F3D5.png +share/Lagom/emoji/U+1F3D6.png +share/Lagom/emoji/U+1F3D7.png +share/Lagom/emoji/U+1F3D8.png +share/Lagom/emoji/U+1F3D9.png +share/Lagom/emoji/U+1F3DA.png +share/Lagom/emoji/U+1F3DB.png +share/Lagom/emoji/U+1F3DC.png +share/Lagom/emoji/U+1F3DD.png +share/Lagom/emoji/U+1F3DE.png +share/Lagom/emoji/U+1F3DF.png +share/Lagom/emoji/U+1F3E0.png +share/Lagom/emoji/U+1F3E1.png +share/Lagom/emoji/U+1F3E2.png +share/Lagom/emoji/U+1F3E4.png +share/Lagom/emoji/U+1F3E5.png +share/Lagom/emoji/U+1F3E6.png +share/Lagom/emoji/U+1F3E7.png +share/Lagom/emoji/U+1F3EA.png +share/Lagom/emoji/U+1F3EB.png +share/Lagom/emoji/U+1F3ED.png +share/Lagom/emoji/U+1F3EE.png +share/Lagom/emoji/U+1F3EF.png +share/Lagom/emoji/U+1F3F0.png +share/Lagom/emoji/U+1F3F3.png +share/Lagom/emoji/U+1F3F3_U+200D_U+1F308.png +share/Lagom/emoji/U+1F3F3_U+200D_U+1F41E.png +share/Lagom/emoji/U+1F3F3_U+200D_U+1F596.png +share/Lagom/emoji/U+1F3F3_U+200D_U+26A7.png +share/Lagom/emoji/U+1F3F3_U+200D_U+F8FF.png +share/Lagom/emoji/U+1F3F4.png +share/Lagom/emoji/U+1F3F4_U+200D_U+2620.png +share/Lagom/emoji/U+1F3F4_U+E0062_U+E0071_U+E0062_U+E006F_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0062_U+E0071_U+E0073_U+E0061_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0062_U+E0071_U+E0073_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0063_U+E0061_U+E0071_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0062_U+E0062_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0062_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0062_U+E0077_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0062_U+E0079_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0068_U+E0062_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0068_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0068_U+E0068_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E006D_U+E0076_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E006E_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E006E_U+E0077_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0072_U+E0070_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0073_U+E0068_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0073_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0073_U+E006E_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0073_U+E0074_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0064_U+E0065_U+E0074_U+E0068_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0065_U+E0073_U+E0063_U+E0074_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0065_U+E0073_U+E0070_U+E0076_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0030_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0031_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0031_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0031_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0031_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0069_U+E0031_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0061_U+E0072_U+E0061_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0062_U+E0066_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0062_U+E0072_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0063_U+E006F_U+E0072_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0063_U+E0076_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E006E_U+E0061_U+E0071_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E006E_U+E006F_U+E0072_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E006F_U+E0063_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0070_U+E0061_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0066_U+E0072_U+E0070_U+E0064_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0067_U+E0062_U+E0065_U+E006E_U+E0067_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0067_U+E0062_U+E0073_U+E0063_U+E0074_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0067_U+E0062_U+E0077_U+E006C_U+E0073_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0069_U+E0065_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0069_U+E0065_U+E006D_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0069_U+E0065_U+E0075_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0031_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0032_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0033_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0034_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0034_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0034_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0034_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006B_U+E0072_U+E0034_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0062_U+E0067_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0062_U+E006D_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0063_U+E006D_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0062_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0067_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0067_U+E006B_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0070_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E006C_U+E006F_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E006D_U+E0067_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E006D_U+E006F_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E006D_U+E0079_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E006E_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0072_U+E0067_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0072_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006C_U+E0072_U+E0073_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0062_U+E0071_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0062_U+E0071_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0062_U+E0071_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0064_U+E0072_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0066_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0066_U+E0072_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0067_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0067_U+E0072_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E006C_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E006E_U+E0062_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E006E_U+E0068_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E006F_U+E0076_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E0075_U+E0074_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E007A_U+E0065_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006C_U+E007A_U+E0068_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0030_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0031_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0032_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0032_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0032_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0032_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0033_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0033_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0033_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0034_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0034_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0035_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E006F_U+E0035_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E007A_U+E0061_U+E0075_U+E006B_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E007A_U+E006E_U+E0073_U+E006E_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E007A_U+E006F_U+E0074_U+E0061_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E006E_U+E007A_U+E0077_U+E0067_U+E006E_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0031_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E006B_U+E0079_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0070_U+E0061_U+E006E_U+E0062_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E0065_U+E006D_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E0062_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E0062_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E006B_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E006E_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E0070_U+E0076_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E0074_U+E0061_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E0074_U+E0063_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0073_U+E006B_U+E007A_U+E0069_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0030_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0030_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0030_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0031_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0031_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0031_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0032_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0032_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0032_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0033_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0033_U+E0032_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0033_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0034_U+E0030_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0034_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0034_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0034_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0035_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0035_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0035_U+E0036_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0035_U+E0039_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0036_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0036_U+E0033_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0036_U+E0035_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0036_U+E0038_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0037_U+E0031_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0037_U+E0034_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0061_U+E0037_U+E0037_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0073_U+E0061_U+E006C_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0073_U+E0061_U+E007A_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E0075_U+E0073_U+E0074_U+E0078_U+E007F.png +share/Lagom/emoji/U+1F3F4_U+E007A_U+E0077_U+E0068_U+E0061_U+E007F.png +share/Lagom/emoji/U+1F3F5.png +share/Lagom/emoji/U+1F3F7.png +share/Lagom/emoji/U+1F3F8.png +share/Lagom/emoji/U+1F3F9.png +share/Lagom/emoji/U+1F3FA.png +share/Lagom/emoji/U+1F3FB.png +share/Lagom/emoji/U+1F3FC.png +share/Lagom/emoji/U+1F3FD.png +share/Lagom/emoji/U+1F3FE.png +share/Lagom/emoji/U+1F3FF.png +share/Lagom/emoji/U+1F400.png +share/Lagom/emoji/U+1F401.png +share/Lagom/emoji/U+1F402.png +share/Lagom/emoji/U+1F403.png +share/Lagom/emoji/U+1F404.png +share/Lagom/emoji/U+1F405.png +share/Lagom/emoji/U+1F406.png +share/Lagom/emoji/U+1F407.png +share/Lagom/emoji/U+1F408.png +share/Lagom/emoji/U+1F408_U+200D_U+2B1B.png +share/Lagom/emoji/U+1F409.png +share/Lagom/emoji/U+1F40A.png +share/Lagom/emoji/U+1F40B.png +share/Lagom/emoji/U+1F40C.png +share/Lagom/emoji/U+1F40D.png +share/Lagom/emoji/U+1F40E.png +share/Lagom/emoji/U+1F40F.png +share/Lagom/emoji/U+1F410.png +share/Lagom/emoji/U+1F411.png +share/Lagom/emoji/U+1F412.png +share/Lagom/emoji/U+1F413.png +share/Lagom/emoji/U+1F414.png +share/Lagom/emoji/U+1F415.png +share/Lagom/emoji/U+1F415_U+200D_U+1F9BA.png +share/Lagom/emoji/U+1F416.png +share/Lagom/emoji/U+1F417.png +share/Lagom/emoji/U+1F418.png +share/Lagom/emoji/U+1F419.png +share/Lagom/emoji/U+1F41A.png +share/Lagom/emoji/U+1F41B.png +share/Lagom/emoji/U+1F41C.png +share/Lagom/emoji/U+1F41D.png +share/Lagom/emoji/U+1F41E.png +share/Lagom/emoji/U+1F41F.png +share/Lagom/emoji/U+1F420.png +share/Lagom/emoji/U+1F421.png +share/Lagom/emoji/U+1F422.png +share/Lagom/emoji/U+1F423.png +share/Lagom/emoji/U+1F424.png +share/Lagom/emoji/U+1F425.png +share/Lagom/emoji/U+1F426.png +share/Lagom/emoji/U+1F426_U+200D_U+1F525.png +share/Lagom/emoji/U+1F426_U+200D_U+2B1B.png +share/Lagom/emoji/U+1F427.png +share/Lagom/emoji/U+1F428.png +share/Lagom/emoji/U+1F429.png +share/Lagom/emoji/U+1F42A.png +share/Lagom/emoji/U+1F42B.png +share/Lagom/emoji/U+1F42C.png +share/Lagom/emoji/U+1F42D.png +share/Lagom/emoji/U+1F42E.png +share/Lagom/emoji/U+1F42F.png +share/Lagom/emoji/U+1F430.png +share/Lagom/emoji/U+1F431.png +share/Lagom/emoji/U+1F431_U+200D_U+1F436.png +share/Lagom/emoji/U+1F432.png +share/Lagom/emoji/U+1F433.png +share/Lagom/emoji/U+1F434.png +share/Lagom/emoji/U+1F435.png +share/Lagom/emoji/U+1F436.png +share/Lagom/emoji/U+1F437.png +share/Lagom/emoji/U+1F438.png +share/Lagom/emoji/U+1F439.png +share/Lagom/emoji/U+1F43A.png +share/Lagom/emoji/U+1F43B.png +share/Lagom/emoji/U+1F43B_U+200D_U+2744.png +share/Lagom/emoji/U+1F43C.png +share/Lagom/emoji/U+1F43D.png +share/Lagom/emoji/U+1F43E.png +share/Lagom/emoji/U+1F43F.png +share/Lagom/emoji/U+1F440.png +share/Lagom/emoji/U+1F441.png +share/Lagom/emoji/U+1F441_U+200D_U+1F5E8.png +share/Lagom/emoji/U+1F442.png +share/Lagom/emoji/U+1F443.png +share/Lagom/emoji/U+1F444.png +share/Lagom/emoji/U+1F445.png +share/Lagom/emoji/U+1F446.png +share/Lagom/emoji/U+1F447.png +share/Lagom/emoji/U+1F448.png +share/Lagom/emoji/U+1F449.png +share/Lagom/emoji/U+1F44A.png +share/Lagom/emoji/U+1F44B.png +share/Lagom/emoji/U+1F44C.png +share/Lagom/emoji/U+1F44D.png +share/Lagom/emoji/U+1F44E.png +share/Lagom/emoji/U+1F44F.png +share/Lagom/emoji/U+1F450.png +share/Lagom/emoji/U+1F451.png +share/Lagom/emoji/U+1F452.png +share/Lagom/emoji/U+1F453.png +share/Lagom/emoji/U+1F454.png +share/Lagom/emoji/U+1F455.png +share/Lagom/emoji/U+1F456.png +share/Lagom/emoji/U+1F457.png +share/Lagom/emoji/U+1F458.png +share/Lagom/emoji/U+1F459.png +share/Lagom/emoji/U+1F45A.png +share/Lagom/emoji/U+1F45B.png +share/Lagom/emoji/U+1F45C.png +share/Lagom/emoji/U+1F45D.png +share/Lagom/emoji/U+1F45E.png +share/Lagom/emoji/U+1F45F.png +share/Lagom/emoji/U+1F460.png +share/Lagom/emoji/U+1F461.png +share/Lagom/emoji/U+1F462.png +share/Lagom/emoji/U+1F463.png +share/Lagom/emoji/U+1F464.png +share/Lagom/emoji/U+1F465.png +share/Lagom/emoji/U+1F468.png +share/Lagom/emoji/U+1F468_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F466_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F467_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F467_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F468_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F468_U+200D_U+1F466_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F468_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F468_U+200D_U+1F467_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F468_U+200D_U+1F467_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F469_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F469_U+200D_U+1F466_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F469_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F469_U+200D_U+1F467_U+200D_U+1F466.png +share/Lagom/emoji/U+1F468_U+200D_U+1F469_U+200D_U+1F467_U+200D_U+1F467.png +share/Lagom/emoji/U+1F468_U+200D_U+1F4BB.png +share/Lagom/emoji/U+1F468_U+200D_U+1F4BC.png +share/Lagom/emoji/U+1F468_U+200D_U+1F527.png +share/Lagom/emoji/U+1F468_U+200D_U+1F52C.png +share/Lagom/emoji/U+1F468_U+200D_U+1F680.png +share/Lagom/emoji/U+1F468_U+200D_U+1F692.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9AF.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9B0.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9B1.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9B2.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9B3.png +share/Lagom/emoji/U+1F468_U+200D_U+1F9BD.png +share/Lagom/emoji/U+1F468_U+200D_U+2695.png +share/Lagom/emoji/U+1F468_U+200D_U+2696.png +share/Lagom/emoji/U+1F468_U+200D_U+2764_U+200D_U+1F468.png +share/Lagom/emoji/U+1F469.png +share/Lagom/emoji/U+1F469_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F466_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F467.png +share/Lagom/emoji/U+1F469_U+200D_U+1F467_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F467_U+200D_U+1F467.png +share/Lagom/emoji/U+1F469_U+200D_U+1F469_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F469_U+200D_U+1F466_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F469_U+200D_U+1F467.png +share/Lagom/emoji/U+1F469_U+200D_U+1F469_U+200D_U+1F467_U+200D_U+1F466.png +share/Lagom/emoji/U+1F469_U+200D_U+1F469_U+200D_U+1F467_U+200D_U+1F467.png +share/Lagom/emoji/U+1F469_U+200D_U+1F4BB.png +share/Lagom/emoji/U+1F469_U+200D_U+1F4BC.png +share/Lagom/emoji/U+1F469_U+200D_U+1F527.png +share/Lagom/emoji/U+1F469_U+200D_U+1F52C.png +share/Lagom/emoji/U+1F469_U+200D_U+1F680.png +share/Lagom/emoji/U+1F469_U+200D_U+1F692.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9AF.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9B0.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9B1.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9B2.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9B3.png +share/Lagom/emoji/U+1F469_U+200D_U+1F9BD.png +share/Lagom/emoji/U+1F469_U+200D_U+2695.png +share/Lagom/emoji/U+1F469_U+200D_U+2696.png +share/Lagom/emoji/U+1F469_U+200D_U+2764_U+200D_U+1F468.png +share/Lagom/emoji/U+1F469_U+200D_U+2764_U+200D_U+1F469.png +share/Lagom/emoji/U+1F46F.png +share/Lagom/emoji/U+1F471.png +share/Lagom/emoji/U+1F471_U+200D_U+2640.png +share/Lagom/emoji/U+1F471_U+200D_U+2642.png +share/Lagom/emoji/U+1F473.png +share/Lagom/emoji/U+1F473_U+200D_U+2640.png +share/Lagom/emoji/U+1F473_U+200D_U+2642.png +share/Lagom/emoji/U+1F478.png +share/Lagom/emoji/U+1F479.png +share/Lagom/emoji/U+1F47A.png +share/Lagom/emoji/U+1F47B.png +share/Lagom/emoji/U+1F47C.png +share/Lagom/emoji/U+1F47D.png +share/Lagom/emoji/U+1F47E.png +share/Lagom/emoji/U+1F47F.png +share/Lagom/emoji/U+1F480.png +share/Lagom/emoji/U+1F481.png +share/Lagom/emoji/U+1F481_U+200D_U+2640.png +share/Lagom/emoji/U+1F481_U+200D_U+2642.png +share/Lagom/emoji/U+1F482.png +share/Lagom/emoji/U+1F482_U+200D_U+2640.png +share/Lagom/emoji/U+1F482_U+200D_U+2642.png +share/Lagom/emoji/U+1F483.png +share/Lagom/emoji/U+1F484.png +share/Lagom/emoji/U+1F485.png +share/Lagom/emoji/U+1F486.png +share/Lagom/emoji/U+1F486_U+200D_U+2640.png +share/Lagom/emoji/U+1F486_U+200D_U+2642.png +share/Lagom/emoji/U+1F487.png +share/Lagom/emoji/U+1F487_U+200D_U+2640.png +share/Lagom/emoji/U+1F487_U+200D_U+2642.png +share/Lagom/emoji/U+1F488.png +share/Lagom/emoji/U+1F489.png +share/Lagom/emoji/U+1F48A.png +share/Lagom/emoji/U+1F48B.png +share/Lagom/emoji/U+1F48C.png +share/Lagom/emoji/U+1F48D.png +share/Lagom/emoji/U+1F48E.png +share/Lagom/emoji/U+1F490.png +share/Lagom/emoji/U+1F492.png +share/Lagom/emoji/U+1F493.png +share/Lagom/emoji/U+1F494.png +share/Lagom/emoji/U+1F495.png +share/Lagom/emoji/U+1F496.png +share/Lagom/emoji/U+1F497.png +share/Lagom/emoji/U+1F498.png +share/Lagom/emoji/U+1F499.png +share/Lagom/emoji/U+1F49A.png +share/Lagom/emoji/U+1F49B.png +share/Lagom/emoji/U+1F49C.png +share/Lagom/emoji/U+1F49D.png +share/Lagom/emoji/U+1F49E.png +share/Lagom/emoji/U+1F49F.png +share/Lagom/emoji/U+1F4A0.png +share/Lagom/emoji/U+1F4A1.png +share/Lagom/emoji/U+1F4A2.png +share/Lagom/emoji/U+1F4A3.png +share/Lagom/emoji/U+1F4A4.png +share/Lagom/emoji/U+1F4A5.png +share/Lagom/emoji/U+1F4A6.png +share/Lagom/emoji/U+1F4A7.png +share/Lagom/emoji/U+1F4A8.png +share/Lagom/emoji/U+1F4A9.png +share/Lagom/emoji/U+1F4AA.png +share/Lagom/emoji/U+1F4AB.png +share/Lagom/emoji/U+1F4AC.png +share/Lagom/emoji/U+1F4AD.png +share/Lagom/emoji/U+1F4AE.png +share/Lagom/emoji/U+1F4AF.png +share/Lagom/emoji/U+1F4B0.png +share/Lagom/emoji/U+1F4B1.png +share/Lagom/emoji/U+1F4B2.png +share/Lagom/emoji/U+1F4B3.png +share/Lagom/emoji/U+1F4B4.png +share/Lagom/emoji/U+1F4B5.png +share/Lagom/emoji/U+1F4B6.png +share/Lagom/emoji/U+1F4B7.png +share/Lagom/emoji/U+1F4B8.png +share/Lagom/emoji/U+1F4B9.png +share/Lagom/emoji/U+1F4BA.png +share/Lagom/emoji/U+1F4BB.png +share/Lagom/emoji/U+1F4BC.png +share/Lagom/emoji/U+1F4BD.png +share/Lagom/emoji/U+1F4BE.png +share/Lagom/emoji/U+1F4BF.png +share/Lagom/emoji/U+1F4C0.png +share/Lagom/emoji/U+1F4C1.png +share/Lagom/emoji/U+1F4C2.png +share/Lagom/emoji/U+1F4C3.png +share/Lagom/emoji/U+1F4C4.png +share/Lagom/emoji/U+1F4C5.png +share/Lagom/emoji/U+1F4C6.png +share/Lagom/emoji/U+1F4C7.png +share/Lagom/emoji/U+1F4C8.png +share/Lagom/emoji/U+1F4C9.png +share/Lagom/emoji/U+1F4CA.png +share/Lagom/emoji/U+1F4CB.png +share/Lagom/emoji/U+1F4CC.png +share/Lagom/emoji/U+1F4CD.png +share/Lagom/emoji/U+1F4CE.png +share/Lagom/emoji/U+1F4CF.png +share/Lagom/emoji/U+1F4D0.png +share/Lagom/emoji/U+1F4D1.png +share/Lagom/emoji/U+1F4D2.png +share/Lagom/emoji/U+1F4D3.png +share/Lagom/emoji/U+1F4D4.png +share/Lagom/emoji/U+1F4D5.png +share/Lagom/emoji/U+1F4D6.png +share/Lagom/emoji/U+1F4D7.png +share/Lagom/emoji/U+1F4D8.png +share/Lagom/emoji/U+1F4D9.png +share/Lagom/emoji/U+1F4DA.png +share/Lagom/emoji/U+1F4DB.png +share/Lagom/emoji/U+1F4DC.png +share/Lagom/emoji/U+1F4DD.png +share/Lagom/emoji/U+1F4DE.png +share/Lagom/emoji/U+1F4DF.png +share/Lagom/emoji/U+1F4E0.png +share/Lagom/emoji/U+1F4E1.png +share/Lagom/emoji/U+1F4E2.png +share/Lagom/emoji/U+1F4E3.png +share/Lagom/emoji/U+1F4E4.png +share/Lagom/emoji/U+1F4E5.png +share/Lagom/emoji/U+1F4E6.png +share/Lagom/emoji/U+1F4E7.png +share/Lagom/emoji/U+1F4E8.png +share/Lagom/emoji/U+1F4E9.png +share/Lagom/emoji/U+1F4EA.png +share/Lagom/emoji/U+1F4EB.png +share/Lagom/emoji/U+1F4EC.png +share/Lagom/emoji/U+1F4ED.png +share/Lagom/emoji/U+1F4EE.png +share/Lagom/emoji/U+1F4EF.png +share/Lagom/emoji/U+1F4F0.png +share/Lagom/emoji/U+1F4F1.png +share/Lagom/emoji/U+1F4F2.png +share/Lagom/emoji/U+1F4F3.png +share/Lagom/emoji/U+1F4F4.png +share/Lagom/emoji/U+1F4F5.png +share/Lagom/emoji/U+1F4F6.png +share/Lagom/emoji/U+1F4F7.png +share/Lagom/emoji/U+1F4F8.png +share/Lagom/emoji/U+1F4F9.png +share/Lagom/emoji/U+1F4FA.png +share/Lagom/emoji/U+1F4FB.png +share/Lagom/emoji/U+1F4FC.png +share/Lagom/emoji/U+1F4FD.png +share/Lagom/emoji/U+1F500.png +share/Lagom/emoji/U+1F501.png +share/Lagom/emoji/U+1F502.png +share/Lagom/emoji/U+1F503.png +share/Lagom/emoji/U+1F504.png +share/Lagom/emoji/U+1F505.png +share/Lagom/emoji/U+1F506.png +share/Lagom/emoji/U+1F507.png +share/Lagom/emoji/U+1F508.png +share/Lagom/emoji/U+1F509.png +share/Lagom/emoji/U+1F50A.png +share/Lagom/emoji/U+1F50B.png +share/Lagom/emoji/U+1F50C.png +share/Lagom/emoji/U+1F50D.png +share/Lagom/emoji/U+1F50E.png +share/Lagom/emoji/U+1F50F.png +share/Lagom/emoji/U+1F510.png +share/Lagom/emoji/U+1F511.png +share/Lagom/emoji/U+1F512.png +share/Lagom/emoji/U+1F513.png +share/Lagom/emoji/U+1F514.png +share/Lagom/emoji/U+1F515.png +share/Lagom/emoji/U+1F516.png +share/Lagom/emoji/U+1F517.png +share/Lagom/emoji/U+1F517_U+200D_U+1F4A5.png +share/Lagom/emoji/U+1F518.png +share/Lagom/emoji/U+1F519.png +share/Lagom/emoji/U+1F51A.png +share/Lagom/emoji/U+1F51B.png +share/Lagom/emoji/U+1F51C.png +share/Lagom/emoji/U+1F51D.png +share/Lagom/emoji/U+1F51E.png +share/Lagom/emoji/U+1F51F.png +share/Lagom/emoji/U+1F520.png +share/Lagom/emoji/U+1F521.png +share/Lagom/emoji/U+1F522.png +share/Lagom/emoji/U+1F523.png +share/Lagom/emoji/U+1F524.png +share/Lagom/emoji/U+1F525.png +share/Lagom/emoji/U+1F526.png +share/Lagom/emoji/U+1F527.png +share/Lagom/emoji/U+1F528.png +share/Lagom/emoji/U+1F529.png +share/Lagom/emoji/U+1F52A.png +share/Lagom/emoji/U+1F52B.png +share/Lagom/emoji/U+1F52C.png +share/Lagom/emoji/U+1F52D.png +share/Lagom/emoji/U+1F52E.png +share/Lagom/emoji/U+1F52F.png +share/Lagom/emoji/U+1F530.png +share/Lagom/emoji/U+1F531.png +share/Lagom/emoji/U+1F532.png +share/Lagom/emoji/U+1F533.png +share/Lagom/emoji/U+1F534.png +share/Lagom/emoji/U+1F535.png +share/Lagom/emoji/U+1F536.png +share/Lagom/emoji/U+1F537.png +share/Lagom/emoji/U+1F538.png +share/Lagom/emoji/U+1F539.png +share/Lagom/emoji/U+1F53A.png +share/Lagom/emoji/U+1F53B.png +share/Lagom/emoji/U+1F53C.png +share/Lagom/emoji/U+1F53D.png +share/Lagom/emoji/U+1F549.png +share/Lagom/emoji/U+1F54A.png +share/Lagom/emoji/U+1F54B.png +share/Lagom/emoji/U+1F54D.png +share/Lagom/emoji/U+1F54E.png +share/Lagom/emoji/U+1F550.png +share/Lagom/emoji/U+1F551.png +share/Lagom/emoji/U+1F552.png +share/Lagom/emoji/U+1F553.png +share/Lagom/emoji/U+1F554.png +share/Lagom/emoji/U+1F555.png +share/Lagom/emoji/U+1F556.png +share/Lagom/emoji/U+1F557.png +share/Lagom/emoji/U+1F558.png +share/Lagom/emoji/U+1F559.png +share/Lagom/emoji/U+1F55A.png +share/Lagom/emoji/U+1F55B.png +share/Lagom/emoji/U+1F55C.png +share/Lagom/emoji/U+1F55D.png +share/Lagom/emoji/U+1F55E.png +share/Lagom/emoji/U+1F55F.png +share/Lagom/emoji/U+1F560.png +share/Lagom/emoji/U+1F561.png +share/Lagom/emoji/U+1F562.png +share/Lagom/emoji/U+1F563.png +share/Lagom/emoji/U+1F564.png +share/Lagom/emoji/U+1F565.png +share/Lagom/emoji/U+1F566.png +share/Lagom/emoji/U+1F567.png +share/Lagom/emoji/U+1F56F.png +share/Lagom/emoji/U+1F570.png +share/Lagom/emoji/U+1F573.png +share/Lagom/emoji/U+1F574.png +share/Lagom/emoji/U+1F575.png +share/Lagom/emoji/U+1F576.png +share/Lagom/emoji/U+1F577.png +share/Lagom/emoji/U+1F578.png +share/Lagom/emoji/U+1F579.png +share/Lagom/emoji/U+1F57A.png +share/Lagom/emoji/U+1F587.png +share/Lagom/emoji/U+1F58A.png +share/Lagom/emoji/U+1F58B.png +share/Lagom/emoji/U+1F58C.png +share/Lagom/emoji/U+1F58D.png +share/Lagom/emoji/U+1F590.png +share/Lagom/emoji/U+1F595.png +share/Lagom/emoji/U+1F596.png +share/Lagom/emoji/U+1F5A4.png +share/Lagom/emoji/U+1F5A5.png +share/Lagom/emoji/U+1F5A8.png +share/Lagom/emoji/U+1F5B1.png +share/Lagom/emoji/U+1F5B2.png +share/Lagom/emoji/U+1F5BC.png +share/Lagom/emoji/U+1F5C2.png +share/Lagom/emoji/U+1F5C3.png +share/Lagom/emoji/U+1F5C4.png +share/Lagom/emoji/U+1F5D1.png +share/Lagom/emoji/U+1F5D2.png +share/Lagom/emoji/U+1F5D3.png +share/Lagom/emoji/U+1F5DC.png +share/Lagom/emoji/U+1F5DD.png +share/Lagom/emoji/U+1F5DE.png +share/Lagom/emoji/U+1F5E1.png +share/Lagom/emoji/U+1F5E3.png +share/Lagom/emoji/U+1F5E8.png +share/Lagom/emoji/U+1F5EF.png +share/Lagom/emoji/U+1F5F3.png +share/Lagom/emoji/U+1F5FA.png +share/Lagom/emoji/U+1F5FB.png +share/Lagom/emoji/U+1F5FC.png +share/Lagom/emoji/U+1F5FD.png +share/Lagom/emoji/U+1F5FE.png +share/Lagom/emoji/U+1F5FF.png +share/Lagom/emoji/U+1F600.png +share/Lagom/emoji/U+1F601.png +share/Lagom/emoji/U+1F602.png +share/Lagom/emoji/U+1F603.png +share/Lagom/emoji/U+1F604.png +share/Lagom/emoji/U+1F605.png +share/Lagom/emoji/U+1F606.png +share/Lagom/emoji/U+1F607.png +share/Lagom/emoji/U+1F608.png +share/Lagom/emoji/U+1F609.png +share/Lagom/emoji/U+1F60A.png +share/Lagom/emoji/U+1F60B.png +share/Lagom/emoji/U+1F60C.png +share/Lagom/emoji/U+1F60D.png +share/Lagom/emoji/U+1F60E.png +share/Lagom/emoji/U+1F60F.png +share/Lagom/emoji/U+1F610.png +share/Lagom/emoji/U+1F611.png +share/Lagom/emoji/U+1F612.png +share/Lagom/emoji/U+1F613.png +share/Lagom/emoji/U+1F614.png +share/Lagom/emoji/U+1F615.png +share/Lagom/emoji/U+1F616.png +share/Lagom/emoji/U+1F617.png +share/Lagom/emoji/U+1F618.png +share/Lagom/emoji/U+1F619.png +share/Lagom/emoji/U+1F61A.png +share/Lagom/emoji/U+1F61B.png +share/Lagom/emoji/U+1F61C.png +share/Lagom/emoji/U+1F61D.png +share/Lagom/emoji/U+1F61E.png +share/Lagom/emoji/U+1F61F.png +share/Lagom/emoji/U+1F620.png +share/Lagom/emoji/U+1F621.png +share/Lagom/emoji/U+1F622.png +share/Lagom/emoji/U+1F623.png +share/Lagom/emoji/U+1F624.png +share/Lagom/emoji/U+1F625.png +share/Lagom/emoji/U+1F626.png +share/Lagom/emoji/U+1F627.png +share/Lagom/emoji/U+1F628.png +share/Lagom/emoji/U+1F629.png +share/Lagom/emoji/U+1F62A.png +share/Lagom/emoji/U+1F62B.png +share/Lagom/emoji/U+1F62C.png +share/Lagom/emoji/U+1F62D.png +share/Lagom/emoji/U+1F62E.png +share/Lagom/emoji/U+1F62E_U+200D_U+1F4A8.png +share/Lagom/emoji/U+1F62F.png +share/Lagom/emoji/U+1F630.png +share/Lagom/emoji/U+1F631.png +share/Lagom/emoji/U+1F632.png +share/Lagom/emoji/U+1F633.png +share/Lagom/emoji/U+1F634.png +share/Lagom/emoji/U+1F635.png +share/Lagom/emoji/U+1F635_U+200D_U+1F4AB.png +share/Lagom/emoji/U+1F636.png +share/Lagom/emoji/U+1F636_U+200D_U+1F32B.png +share/Lagom/emoji/U+1F637.png +share/Lagom/emoji/U+1F638.png +share/Lagom/emoji/U+1F639.png +share/Lagom/emoji/U+1F63A.png +share/Lagom/emoji/U+1F63B.png +share/Lagom/emoji/U+1F63C.png +share/Lagom/emoji/U+1F63D.png +share/Lagom/emoji/U+1F63E.png +share/Lagom/emoji/U+1F63F.png +share/Lagom/emoji/U+1F640.png +share/Lagom/emoji/U+1F641.png +share/Lagom/emoji/U+1F642.png +share/Lagom/emoji/U+1F642_U+200D_U+2194.png +share/Lagom/emoji/U+1F642_U+200D_U+2195.png +share/Lagom/emoji/U+1F643.png +share/Lagom/emoji/U+1F644.png +share/Lagom/emoji/U+1F645.png +share/Lagom/emoji/U+1F645_U+200D_U+2640.png +share/Lagom/emoji/U+1F645_U+200D_U+2642.png +share/Lagom/emoji/U+1F646.png +share/Lagom/emoji/U+1F646_U+200D_U+2640.png +share/Lagom/emoji/U+1F646_U+200D_U+2642.png +share/Lagom/emoji/U+1F647.png +share/Lagom/emoji/U+1F647_U+200D_U+2640.png +share/Lagom/emoji/U+1F647_U+200D_U+2642.png +share/Lagom/emoji/U+1F648.png +share/Lagom/emoji/U+1F649.png +share/Lagom/emoji/U+1F64A.png +share/Lagom/emoji/U+1F64B.png +share/Lagom/emoji/U+1F64B_U+200D_U+2640.png +share/Lagom/emoji/U+1F64B_U+200D_U+2642.png +share/Lagom/emoji/U+1F64C.png +share/Lagom/emoji/U+1F64F.png +share/Lagom/emoji/U+1F680.png +share/Lagom/emoji/U+1F681.png +share/Lagom/emoji/U+1F682.png +share/Lagom/emoji/U+1F683.png +share/Lagom/emoji/U+1F684.png +share/Lagom/emoji/U+1F685.png +share/Lagom/emoji/U+1F686.png +share/Lagom/emoji/U+1F687.png +share/Lagom/emoji/U+1F689.png +share/Lagom/emoji/U+1F68E.png +share/Lagom/emoji/U+1F68F.png +share/Lagom/emoji/U+1F690.png +share/Lagom/emoji/U+1F691.png +share/Lagom/emoji/U+1F692.png +share/Lagom/emoji/U+1F693.png +share/Lagom/emoji/U+1F694.png +share/Lagom/emoji/U+1F695.png +share/Lagom/emoji/U+1F696.png +share/Lagom/emoji/U+1F697.png +share/Lagom/emoji/U+1F698.png +share/Lagom/emoji/U+1F699.png +share/Lagom/emoji/U+1F69A.png +share/Lagom/emoji/U+1F69B.png +share/Lagom/emoji/U+1F69C.png +share/Lagom/emoji/U+1F69D.png +share/Lagom/emoji/U+1F6A0.png +share/Lagom/emoji/U+1F6A1.png +share/Lagom/emoji/U+1F6A2.png +share/Lagom/emoji/U+1F6A3.png +share/Lagom/emoji/U+1F6A3_U+200D_U+2640.png +share/Lagom/emoji/U+1F6A3_U+200D_U+2642.png +share/Lagom/emoji/U+1F6A4.png +share/Lagom/emoji/U+1F6A5.png +share/Lagom/emoji/U+1F6A6.png +share/Lagom/emoji/U+1F6A7.png +share/Lagom/emoji/U+1F6A8.png +share/Lagom/emoji/U+1F6A9.png +share/Lagom/emoji/U+1F6AA.png +share/Lagom/emoji/U+1F6AB.png +share/Lagom/emoji/U+1F6AC.png +share/Lagom/emoji/U+1F6AD.png +share/Lagom/emoji/U+1F6AE.png +share/Lagom/emoji/U+1F6AF.png +share/Lagom/emoji/U+1F6B0.png +share/Lagom/emoji/U+1F6B1.png +share/Lagom/emoji/U+1F6B2.png +share/Lagom/emoji/U+1F6B3.png +share/Lagom/emoji/U+1F6B4.png +share/Lagom/emoji/U+1F6B4_U+200D_U+2640.png +share/Lagom/emoji/U+1F6B4_U+200D_U+2642.png +share/Lagom/emoji/U+1F6B5.png +share/Lagom/emoji/U+1F6B5_U+200D_U+2640.png +share/Lagom/emoji/U+1F6B5_U+200D_U+2642.png +share/Lagom/emoji/U+1F6B6.png +share/Lagom/emoji/U+1F6B6_U+200D_U+2640.png +share/Lagom/emoji/U+1F6B6_U+200D_U+2642.png +share/Lagom/emoji/U+1F6B7.png +share/Lagom/emoji/U+1F6B8.png +share/Lagom/emoji/U+1F6B9.png +share/Lagom/emoji/U+1F6BA.png +share/Lagom/emoji/U+1F6BB.png +share/Lagom/emoji/U+1F6BC.png +share/Lagom/emoji/U+1F6BD.png +share/Lagom/emoji/U+1F6BE.png +share/Lagom/emoji/U+1F6BF.png +share/Lagom/emoji/U+1F6C0.png +share/Lagom/emoji/U+1F6C1.png +share/Lagom/emoji/U+1F6C2.png +share/Lagom/emoji/U+1F6C3.png +share/Lagom/emoji/U+1F6C4.png +share/Lagom/emoji/U+1F6C5.png +share/Lagom/emoji/U+1F6CB.png +share/Lagom/emoji/U+1F6CC.png +share/Lagom/emoji/U+1F6CD.png +share/Lagom/emoji/U+1F6CE.png +share/Lagom/emoji/U+1F6CF.png +share/Lagom/emoji/U+1F6D0.png +share/Lagom/emoji/U+1F6D1.png +share/Lagom/emoji/U+1F6D2.png +share/Lagom/emoji/U+1F6D6.png +share/Lagom/emoji/U+1F6D7.png +share/Lagom/emoji/U+1F6DC.png +share/Lagom/emoji/U+1F6DD.png +share/Lagom/emoji/U+1F6DE.png +share/Lagom/emoji/U+1F6DF.png +share/Lagom/emoji/U+1F6E0.png +share/Lagom/emoji/U+1F6E1.png +share/Lagom/emoji/U+1F6E2.png +share/Lagom/emoji/U+1F6E3.png +share/Lagom/emoji/U+1F6E4.png +share/Lagom/emoji/U+1F6E5.png +share/Lagom/emoji/U+1F6E9.png +share/Lagom/emoji/U+1F6EB.png +share/Lagom/emoji/U+1F6EC.png +share/Lagom/emoji/U+1F6F0.png +share/Lagom/emoji/U+1F6F3.png +share/Lagom/emoji/U+1F6F4.png +share/Lagom/emoji/U+1F6F5.png +share/Lagom/emoji/U+1F6F6.png +share/Lagom/emoji/U+1F6F7.png +share/Lagom/emoji/U+1F6F8.png +share/Lagom/emoji/U+1F6F9.png +share/Lagom/emoji/U+1F6FA.png +share/Lagom/emoji/U+1F6FB.png +share/Lagom/emoji/U+1F7E0.png +share/Lagom/emoji/U+1F7E1.png +share/Lagom/emoji/U+1F7E2.png +share/Lagom/emoji/U+1F7E3.png +share/Lagom/emoji/U+1F7E4.png +share/Lagom/emoji/U+1F7E5.png +share/Lagom/emoji/U+1F7E6.png +share/Lagom/emoji/U+1F7E7.png +share/Lagom/emoji/U+1F7E8.png +share/Lagom/emoji/U+1F7E9.png +share/Lagom/emoji/U+1F7EA.png +share/Lagom/emoji/U+1F7EB.png +share/Lagom/emoji/U+1F7F0.png +share/Lagom/emoji/U+1F90C.png +share/Lagom/emoji/U+1F90D.png +share/Lagom/emoji/U+1F90E.png +share/Lagom/emoji/U+1F90F.png +share/Lagom/emoji/U+1F910.png +share/Lagom/emoji/U+1F911.png +share/Lagom/emoji/U+1F912.png +share/Lagom/emoji/U+1F913.png +share/Lagom/emoji/U+1F914.png +share/Lagom/emoji/U+1F915.png +share/Lagom/emoji/U+1F916.png +share/Lagom/emoji/U+1F917.png +share/Lagom/emoji/U+1F918.png +share/Lagom/emoji/U+1F919.png +share/Lagom/emoji/U+1F91A.png +share/Lagom/emoji/U+1F91B.png +share/Lagom/emoji/U+1F91C.png +share/Lagom/emoji/U+1F91D.png +share/Lagom/emoji/U+1F91E.png +share/Lagom/emoji/U+1F91F.png +share/Lagom/emoji/U+1F920.png +share/Lagom/emoji/U+1F921.png +share/Lagom/emoji/U+1F922.png +share/Lagom/emoji/U+1F923.png +share/Lagom/emoji/U+1F924.png +share/Lagom/emoji/U+1F925.png +share/Lagom/emoji/U+1F926.png +share/Lagom/emoji/U+1F927.png +share/Lagom/emoji/U+1F928.png +share/Lagom/emoji/U+1F929.png +share/Lagom/emoji/U+1F92A.png +share/Lagom/emoji/U+1F92B.png +share/Lagom/emoji/U+1F92C.png +share/Lagom/emoji/U+1F92D.png +share/Lagom/emoji/U+1F92E.png +share/Lagom/emoji/U+1F92F.png +share/Lagom/emoji/U+1F930.png +share/Lagom/emoji/U+1F931.png +share/Lagom/emoji/U+1F933.png +share/Lagom/emoji/U+1F938.png +share/Lagom/emoji/U+1F938_U+200D_U+2640.png +share/Lagom/emoji/U+1F938_U+200D_U+2642.png +share/Lagom/emoji/U+1F939.png +share/Lagom/emoji/U+1F939_U+200D_U+2640.png +share/Lagom/emoji/U+1F939_U+200D_U+2642.png +share/Lagom/emoji/U+1F93A.png +share/Lagom/emoji/U+1F93E.png +share/Lagom/emoji/U+1F93E_U+200D_U+2640.png +share/Lagom/emoji/U+1F93E_U+200D_U+2642.png +share/Lagom/emoji/U+1F93F.png +share/Lagom/emoji/U+1F940.png +share/Lagom/emoji/U+1F941.png +share/Lagom/emoji/U+1F942.png +share/Lagom/emoji/U+1F943.png +share/Lagom/emoji/U+1F944.png +share/Lagom/emoji/U+1F945.png +share/Lagom/emoji/U+1F947.png +share/Lagom/emoji/U+1F948.png +share/Lagom/emoji/U+1F949.png +share/Lagom/emoji/U+1F94A.png +share/Lagom/emoji/U+1F94B.png +share/Lagom/emoji/U+1F94C.png +share/Lagom/emoji/U+1F94D.png +share/Lagom/emoji/U+1F94E.png +share/Lagom/emoji/U+1F94F.png +share/Lagom/emoji/U+1F950.png +share/Lagom/emoji/U+1F951.png +share/Lagom/emoji/U+1F952.png +share/Lagom/emoji/U+1F953.png +share/Lagom/emoji/U+1F954.png +share/Lagom/emoji/U+1F955.png +share/Lagom/emoji/U+1F956.png +share/Lagom/emoji/U+1F957.png +share/Lagom/emoji/U+1F958.png +share/Lagom/emoji/U+1F959.png +share/Lagom/emoji/U+1F95A.png +share/Lagom/emoji/U+1F95B.png +share/Lagom/emoji/U+1F95C.png +share/Lagom/emoji/U+1F95D.png +share/Lagom/emoji/U+1F95E.png +share/Lagom/emoji/U+1F95F.png +share/Lagom/emoji/U+1F960.png +share/Lagom/emoji/U+1F961.png +share/Lagom/emoji/U+1F962.png +share/Lagom/emoji/U+1F963.png +share/Lagom/emoji/U+1F964.png +share/Lagom/emoji/U+1F965.png +share/Lagom/emoji/U+1F966.png +share/Lagom/emoji/U+1F967.png +share/Lagom/emoji/U+1F968.png +share/Lagom/emoji/U+1F969.png +share/Lagom/emoji/U+1F96A.png +share/Lagom/emoji/U+1F96B.png +share/Lagom/emoji/U+1F96C.png +share/Lagom/emoji/U+1F96D.png +share/Lagom/emoji/U+1F96F.png +share/Lagom/emoji/U+1F970.png +share/Lagom/emoji/U+1F971.png +share/Lagom/emoji/U+1F972.png +share/Lagom/emoji/U+1F973.png +share/Lagom/emoji/U+1F974.png +share/Lagom/emoji/U+1F975.png +share/Lagom/emoji/U+1F976.png +share/Lagom/emoji/U+1F977.png +share/Lagom/emoji/U+1F978.png +share/Lagom/emoji/U+1F979.png +share/Lagom/emoji/U+1F97A.png +share/Lagom/emoji/U+1F97B.png +share/Lagom/emoji/U+1F97C.png +share/Lagom/emoji/U+1F97D.png +share/Lagom/emoji/U+1F97E.png +share/Lagom/emoji/U+1F97F.png +share/Lagom/emoji/U+1F980.png +share/Lagom/emoji/U+1F981.png +share/Lagom/emoji/U+1F982.png +share/Lagom/emoji/U+1F983.png +share/Lagom/emoji/U+1F984.png +share/Lagom/emoji/U+1F985.png +share/Lagom/emoji/U+1F986.png +share/Lagom/emoji/U+1F987.png +share/Lagom/emoji/U+1F988.png +share/Lagom/emoji/U+1F989.png +share/Lagom/emoji/U+1F98A.png +share/Lagom/emoji/U+1F98B.png +share/Lagom/emoji/U+1F98C.png +share/Lagom/emoji/U+1F98E.png +share/Lagom/emoji/U+1F990.png +share/Lagom/emoji/U+1F991.png +share/Lagom/emoji/U+1F992.png +share/Lagom/emoji/U+1F993.png +share/Lagom/emoji/U+1F994.png +share/Lagom/emoji/U+1F995.png +share/Lagom/emoji/U+1F996.png +share/Lagom/emoji/U+1F997.png +share/Lagom/emoji/U+1F998.png +share/Lagom/emoji/U+1F999.png +share/Lagom/emoji/U+1F99A.png +share/Lagom/emoji/U+1F99C.png +share/Lagom/emoji/U+1F99D.png +share/Lagom/emoji/U+1F99E.png +share/Lagom/emoji/U+1F9A0.png +share/Lagom/emoji/U+1F9A1.png +share/Lagom/emoji/U+1F9A2.png +share/Lagom/emoji/U+1F9A3.png +share/Lagom/emoji/U+1F9A4.png +share/Lagom/emoji/U+1F9A5.png +share/Lagom/emoji/U+1F9A6.png +share/Lagom/emoji/U+1F9A7.png +share/Lagom/emoji/U+1F9A9.png +share/Lagom/emoji/U+1F9AA.png +share/Lagom/emoji/U+1F9AB.png +share/Lagom/emoji/U+1F9AC.png +share/Lagom/emoji/U+1F9AD.png +share/Lagom/emoji/U+1F9AE.png +share/Lagom/emoji/U+1F9AF.png +share/Lagom/emoji/U+1F9B0.png +share/Lagom/emoji/U+1F9B1.png +share/Lagom/emoji/U+1F9B2.png +share/Lagom/emoji/U+1F9B3.png +share/Lagom/emoji/U+1F9B4.png +share/Lagom/emoji/U+1F9B5.png +share/Lagom/emoji/U+1F9B6.png +share/Lagom/emoji/U+1F9B7.png +share/Lagom/emoji/U+1F9B8.png +share/Lagom/emoji/U+1F9B9.png +share/Lagom/emoji/U+1F9BA.png +share/Lagom/emoji/U+1F9BB.png +share/Lagom/emoji/U+1F9BE.png +share/Lagom/emoji/U+1F9BF.png +share/Lagom/emoji/U+1F9C0.png +share/Lagom/emoji/U+1F9C1.png +share/Lagom/emoji/U+1F9C2.png +share/Lagom/emoji/U+1F9C3.png +share/Lagom/emoji/U+1F9C4.png +share/Lagom/emoji/U+1F9C5.png +share/Lagom/emoji/U+1F9C6.png +share/Lagom/emoji/U+1F9C7.png +share/Lagom/emoji/U+1F9C8.png +share/Lagom/emoji/U+1F9C9.png +share/Lagom/emoji/U+1F9CA.png +share/Lagom/emoji/U+1F9CB.png +share/Lagom/emoji/U+1F9CC.png +share/Lagom/emoji/U+1F9CD.png +share/Lagom/emoji/U+1F9CD_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CD_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE.png +share/Lagom/emoji/U+1F9CE_U+1F3FB.png +share/Lagom/emoji/U+1F9CE_U+1F3FB_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+1F3FB_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE_U+1F3FC.png +share/Lagom/emoji/U+1F9CE_U+1F3FC_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+1F3FC_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE_U+1F3FD.png +share/Lagom/emoji/U+1F9CE_U+1F3FD_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+1F3FD_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE_U+1F3FE.png +share/Lagom/emoji/U+1F9CE_U+1F3FE_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+1F3FE_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE_U+1F3FF.png +share/Lagom/emoji/U+1F9CE_U+1F3FF_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+1F3FF_U+200D_U+2642.png +share/Lagom/emoji/U+1F9CE_U+200D_U+2640.png +share/Lagom/emoji/U+1F9CE_U+200D_U+2642.png +share/Lagom/emoji/U+1F9D0.png +share/Lagom/emoji/U+1F9D1.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F33E.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F373.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F393.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F4BB.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F4BC.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F527.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F52C.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F680.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F692.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9AF.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9B0.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9B1.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9B2.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9B3.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9BD.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9D1_U+200D_U+1F9D2.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9D1_U+200D_U+1F9D2_U+200D_U+1F9D2.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9D2.png +share/Lagom/emoji/U+1F9D1_U+200D_U+1F9D2_U+200D_U+1F9D2.png +share/Lagom/emoji/U+1F9D1_U+200D_U+2695.png +share/Lagom/emoji/U+1F9D1_U+200D_U+2696.png +share/Lagom/emoji/U+1F9D4.png +share/Lagom/emoji/U+1F9D4_U+200D_U+2640.png +share/Lagom/emoji/U+1F9D4_U+200D_U+2642.png +share/Lagom/emoji/U+1F9D7.png +share/Lagom/emoji/U+1F9D7_U+200D_U+2640.png +share/Lagom/emoji/U+1F9D7_U+200D_U+2642.png +share/Lagom/emoji/U+1F9DC_U+200D_U+2640.png +share/Lagom/emoji/U+1F9DD_U+200D_U+2642.png +share/Lagom/emoji/U+1F9DE.png +share/Lagom/emoji/U+1F9DF.png +share/Lagom/emoji/U+1F9E0.png +share/Lagom/emoji/U+1F9E1.png +share/Lagom/emoji/U+1F9E3.png +share/Lagom/emoji/U+1F9E4.png +share/Lagom/emoji/U+1F9E5.png +share/Lagom/emoji/U+1F9E6.png +share/Lagom/emoji/U+1F9E7.png +share/Lagom/emoji/U+1F9E8.png +share/Lagom/emoji/U+1F9E9.png +share/Lagom/emoji/U+1F9EA.png +share/Lagom/emoji/U+1F9EB.png +share/Lagom/emoji/U+1F9EC.png +share/Lagom/emoji/U+1F9ED.png +share/Lagom/emoji/U+1F9EE.png +share/Lagom/emoji/U+1F9EF.png +share/Lagom/emoji/U+1F9F0.png +share/Lagom/emoji/U+1F9F1.png +share/Lagom/emoji/U+1F9F2.png +share/Lagom/emoji/U+1F9F3.png +share/Lagom/emoji/U+1F9F4.png +share/Lagom/emoji/U+1F9F5.png +share/Lagom/emoji/U+1F9F6.png +share/Lagom/emoji/U+1F9F7.png +share/Lagom/emoji/U+1F9F8.png +share/Lagom/emoji/U+1F9F9.png +share/Lagom/emoji/U+1F9FA.png +share/Lagom/emoji/U+1F9FB.png +share/Lagom/emoji/U+1F9FC.png +share/Lagom/emoji/U+1F9FD.png +share/Lagom/emoji/U+1F9FE.png +share/Lagom/emoji/U+1F9FF.png +share/Lagom/emoji/U+1FA71.png +share/Lagom/emoji/U+1FA72.png +share/Lagom/emoji/U+1FA73.png +share/Lagom/emoji/U+1FA74.png +share/Lagom/emoji/U+1FA75.png +share/Lagom/emoji/U+1FA76.png +share/Lagom/emoji/U+1FA77.png +share/Lagom/emoji/U+1FA78.png +share/Lagom/emoji/U+1FA79.png +share/Lagom/emoji/U+1FA7A.png +share/Lagom/emoji/U+1FA7B.png +share/Lagom/emoji/U+1FA7C.png +share/Lagom/emoji/U+1FA80.png +share/Lagom/emoji/U+1FA81.png +share/Lagom/emoji/U+1FA82.png +share/Lagom/emoji/U+1FA83.png +share/Lagom/emoji/U+1FA84.png +share/Lagom/emoji/U+1FA85.png +share/Lagom/emoji/U+1FA87.png +share/Lagom/emoji/U+1FA88.png +share/Lagom/emoji/U+1FA90.png +share/Lagom/emoji/U+1FA91.png +share/Lagom/emoji/U+1FA92.png +share/Lagom/emoji/U+1FA93.png +share/Lagom/emoji/U+1FA94.png +share/Lagom/emoji/U+1FA95.png +share/Lagom/emoji/U+1FA96.png +share/Lagom/emoji/U+1FA97.png +share/Lagom/emoji/U+1FA98.png +share/Lagom/emoji/U+1FA99.png +share/Lagom/emoji/U+1FA9A.png +share/Lagom/emoji/U+1FA9B.png +share/Lagom/emoji/U+1FA9C.png +share/Lagom/emoji/U+1FA9D.png +share/Lagom/emoji/U+1FA9E.png +share/Lagom/emoji/U+1FA9F.png +share/Lagom/emoji/U+1FAA0.png +share/Lagom/emoji/U+1FAA1.png +share/Lagom/emoji/U+1FAA2.png +share/Lagom/emoji/U+1FAA3.png +share/Lagom/emoji/U+1FAA4.png +share/Lagom/emoji/U+1FAA5.png +share/Lagom/emoji/U+1FAA6.png +share/Lagom/emoji/U+1FAA7.png +share/Lagom/emoji/U+1FAA8.png +share/Lagom/emoji/U+1FAA9.png +share/Lagom/emoji/U+1FAAA.png +share/Lagom/emoji/U+1FAAB.png +share/Lagom/emoji/U+1FAAD.png +share/Lagom/emoji/U+1FAAE.png +share/Lagom/emoji/U+1FAAF.png +share/Lagom/emoji/U+1FAB0.png +share/Lagom/emoji/U+1FAB1.png +share/Lagom/emoji/U+1FAB2.png +share/Lagom/emoji/U+1FAB3.png +share/Lagom/emoji/U+1FAB4.png +share/Lagom/emoji/U+1FAB5.png +share/Lagom/emoji/U+1FAB6.png +share/Lagom/emoji/U+1FAB7.png +share/Lagom/emoji/U+1FAB8.png +share/Lagom/emoji/U+1FAB9.png +share/Lagom/emoji/U+1FABA.png +share/Lagom/emoji/U+1FABB.png +share/Lagom/emoji/U+1FABC.png +share/Lagom/emoji/U+1FABD.png +share/Lagom/emoji/U+1FABF.png +share/Lagom/emoji/U+1FAC0.png +share/Lagom/emoji/U+1FAC1.png +share/Lagom/emoji/U+1FAC2.png +share/Lagom/emoji/U+1FAC3.png +share/Lagom/emoji/U+1FAC4.png +share/Lagom/emoji/U+1FAC5.png +share/Lagom/emoji/U+1FACE.png +share/Lagom/emoji/U+1FACF.png +share/Lagom/emoji/U+1FAD0.png +share/Lagom/emoji/U+1FAD1.png +share/Lagom/emoji/U+1FAD2.png +share/Lagom/emoji/U+1FAD3.png +share/Lagom/emoji/U+1FAD4.png +share/Lagom/emoji/U+1FAD5.png +share/Lagom/emoji/U+1FAD6.png +share/Lagom/emoji/U+1FAD7.png +share/Lagom/emoji/U+1FAD8.png +share/Lagom/emoji/U+1FAD9.png +share/Lagom/emoji/U+1FADA.png +share/Lagom/emoji/U+1FADB.png +share/Lagom/emoji/U+1FAE0.png +share/Lagom/emoji/U+1FAE1.png +share/Lagom/emoji/U+1FAE2.png +share/Lagom/emoji/U+1FAE3.png +share/Lagom/emoji/U+1FAE4.png +share/Lagom/emoji/U+1FAE5.png +share/Lagom/emoji/U+1FAE6.png +share/Lagom/emoji/U+1FAE7.png +share/Lagom/emoji/U+1FAE8.png +share/Lagom/emoji/U+1FAF0.png +share/Lagom/emoji/U+1FAF1.png +share/Lagom/emoji/U+1FAF2.png +share/Lagom/emoji/U+1FAF3.png +share/Lagom/emoji/U+1FAF4.png +share/Lagom/emoji/U+1FAF5.png +share/Lagom/emoji/U+1FAF6.png +share/Lagom/emoji/U+1FAF6_U+1F3FB.png +share/Lagom/emoji/U+1FAF6_U+1F3FC.png +share/Lagom/emoji/U+1FAF6_U+1F3FD.png +share/Lagom/emoji/U+1FAF6_U+1F3FE.png +share/Lagom/emoji/U+1FAF6_U+1F3FF.png +share/Lagom/emoji/U+1FAF7.png +share/Lagom/emoji/U+1FAF8.png +share/Lagom/emoji/U+203C.png +share/Lagom/emoji/U+2049.png +share/Lagom/emoji/U+2122.png +share/Lagom/emoji/U+2139.png +share/Lagom/emoji/U+2194.png +share/Lagom/emoji/U+2195.png +share/Lagom/emoji/U+2196.png +share/Lagom/emoji/U+2197.png +share/Lagom/emoji/U+2198.png +share/Lagom/emoji/U+2199.png +share/Lagom/emoji/U+21A9.png +share/Lagom/emoji/U+21AA.png +share/Lagom/emoji/U+231A.png +share/Lagom/emoji/U+231B.png +share/Lagom/emoji/U+2328.png +share/Lagom/emoji/U+23CF.png +share/Lagom/emoji/U+23E9.png +share/Lagom/emoji/U+23EA.png +share/Lagom/emoji/U+23EB.png +share/Lagom/emoji/U+23EC.png +share/Lagom/emoji/U+23ED.png +share/Lagom/emoji/U+23EE.png +share/Lagom/emoji/U+23EF.png +share/Lagom/emoji/U+23F0.png +share/Lagom/emoji/U+23F1.png +share/Lagom/emoji/U+23F2.png +share/Lagom/emoji/U+23F3.png +share/Lagom/emoji/U+23F8.png +share/Lagom/emoji/U+23F9.png +share/Lagom/emoji/U+23FA.png +share/Lagom/emoji/U+23_U+20E3.png +share/Lagom/emoji/U+24C2.png +share/Lagom/emoji/U+25AA.png +share/Lagom/emoji/U+25AB.png +share/Lagom/emoji/U+25B6.png +share/Lagom/emoji/U+25C0.png +share/Lagom/emoji/U+25FB.png +share/Lagom/emoji/U+25FC.png +share/Lagom/emoji/U+25FD.png +share/Lagom/emoji/U+25FE.png +share/Lagom/emoji/U+2600.png +share/Lagom/emoji/U+2601.png +share/Lagom/emoji/U+2602.png +share/Lagom/emoji/U+2603.png +share/Lagom/emoji/U+2604.png +share/Lagom/emoji/U+260E.png +share/Lagom/emoji/U+2611.png +share/Lagom/emoji/U+2614.png +share/Lagom/emoji/U+2615.png +share/Lagom/emoji/U+2618.png +share/Lagom/emoji/U+261D.png +share/Lagom/emoji/U+2620.png +share/Lagom/emoji/U+2622.png +share/Lagom/emoji/U+2623.png +share/Lagom/emoji/U+2626.png +share/Lagom/emoji/U+262A.png +share/Lagom/emoji/U+262E.png +share/Lagom/emoji/U+262F.png +share/Lagom/emoji/U+2638.png +share/Lagom/emoji/U+2639.png +share/Lagom/emoji/U+263A.png +share/Lagom/emoji/U+2640.png +share/Lagom/emoji/U+2642.png +share/Lagom/emoji/U+2648.png +share/Lagom/emoji/U+2649.png +share/Lagom/emoji/U+264A.png +share/Lagom/emoji/U+264B.png +share/Lagom/emoji/U+264C.png +share/Lagom/emoji/U+264D.png +share/Lagom/emoji/U+264E.png +share/Lagom/emoji/U+264F.png +share/Lagom/emoji/U+2650.png +share/Lagom/emoji/U+2651.png +share/Lagom/emoji/U+2652.png +share/Lagom/emoji/U+2653.png +share/Lagom/emoji/U+265F.png +share/Lagom/emoji/U+2660.png +share/Lagom/emoji/U+2663.png +share/Lagom/emoji/U+2665.png +share/Lagom/emoji/U+2666.png +share/Lagom/emoji/U+2668.png +share/Lagom/emoji/U+267B.png +share/Lagom/emoji/U+267E.png +share/Lagom/emoji/U+267F.png +share/Lagom/emoji/U+2692.png +share/Lagom/emoji/U+2693.png +share/Lagom/emoji/U+2694.png +share/Lagom/emoji/U+2695.png +share/Lagom/emoji/U+2696.png +share/Lagom/emoji/U+2697.png +share/Lagom/emoji/U+2699.png +share/Lagom/emoji/U+269B.png +share/Lagom/emoji/U+269C.png +share/Lagom/emoji/U+26A0.png +share/Lagom/emoji/U+26A1.png +share/Lagom/emoji/U+26A7.png +share/Lagom/emoji/U+26AA.png +share/Lagom/emoji/U+26AB.png +share/Lagom/emoji/U+26B0.png +share/Lagom/emoji/U+26B1.png +share/Lagom/emoji/U+26BD.png +share/Lagom/emoji/U+26BE.png +share/Lagom/emoji/U+26C4.png +share/Lagom/emoji/U+26C5.png +share/Lagom/emoji/U+26C8.png +share/Lagom/emoji/U+26CE.png +share/Lagom/emoji/U+26CF.png +share/Lagom/emoji/U+26D1.png +share/Lagom/emoji/U+26D3.png +share/Lagom/emoji/U+26D4.png +share/Lagom/emoji/U+26E9.png +share/Lagom/emoji/U+26EA.png +share/Lagom/emoji/U+26F0.png +share/Lagom/emoji/U+26F1.png +share/Lagom/emoji/U+26F2.png +share/Lagom/emoji/U+26F3.png +share/Lagom/emoji/U+26F4.png +share/Lagom/emoji/U+26F5.png +share/Lagom/emoji/U+26F7.png +share/Lagom/emoji/U+26F8.png +share/Lagom/emoji/U+26F9.png +share/Lagom/emoji/U+26F9_U+200D_U+2640.png +share/Lagom/emoji/U+26F9_U+200D_U+2642.png +share/Lagom/emoji/U+26FA.png +share/Lagom/emoji/U+26FD.png +share/Lagom/emoji/U+2702.png +share/Lagom/emoji/U+2705.png +share/Lagom/emoji/U+2708.png +share/Lagom/emoji/U+2709.png +share/Lagom/emoji/U+270A.png +share/Lagom/emoji/U+270B.png +share/Lagom/emoji/U+270C.png +share/Lagom/emoji/U+270D.png +share/Lagom/emoji/U+270F.png +share/Lagom/emoji/U+2712.png +share/Lagom/emoji/U+2714.png +share/Lagom/emoji/U+2716.png +share/Lagom/emoji/U+271D.png +share/Lagom/emoji/U+2721.png +share/Lagom/emoji/U+2728.png +share/Lagom/emoji/U+2733.png +share/Lagom/emoji/U+2734.png +share/Lagom/emoji/U+2744.png +share/Lagom/emoji/U+2747.png +share/Lagom/emoji/U+274C.png +share/Lagom/emoji/U+274E.png +share/Lagom/emoji/U+2753.png +share/Lagom/emoji/U+2754.png +share/Lagom/emoji/U+2755.png +share/Lagom/emoji/U+2757.png +share/Lagom/emoji/U+2763.png +share/Lagom/emoji/U+2764.png +share/Lagom/emoji/U+2764_U+200D_U+1F525.png +share/Lagom/emoji/U+2764_U+200D_U+1FA79.png +share/Lagom/emoji/U+2795.png +share/Lagom/emoji/U+2796.png +share/Lagom/emoji/U+2797.png +share/Lagom/emoji/U+27A1.png +share/Lagom/emoji/U+27B0.png +share/Lagom/emoji/U+27BF.png +share/Lagom/emoji/U+2934.png +share/Lagom/emoji/U+2935.png +share/Lagom/emoji/U+2A_U+20E3.png +share/Lagom/emoji/U+2B05.png +share/Lagom/emoji/U+2B06.png +share/Lagom/emoji/U+2B07.png +share/Lagom/emoji/U+2B1B.png +share/Lagom/emoji/U+2B1C.png +share/Lagom/emoji/U+2B50.png +share/Lagom/emoji/U+2B55.png +share/Lagom/emoji/U+3030.png +share/Lagom/emoji/U+303D.png +share/Lagom/emoji/U+30_U+20E3.png +share/Lagom/emoji/U+31_U+20E3.png +share/Lagom/emoji/U+3297.png +share/Lagom/emoji/U+32_U+20E3.png +share/Lagom/emoji/U+33_U+20E3.png +share/Lagom/emoji/U+34_U+20E3.png +share/Lagom/emoji/U+35_U+20E3.png +share/Lagom/emoji/U+36_U+20E3.png +share/Lagom/emoji/U+37_U+20E3.png +share/Lagom/emoji/U+38_U+20E3.png +share/Lagom/emoji/U+39_U+20E3.png +share/Lagom/emoji/U+A9.png +share/Lagom/emoji/U+AE.png share/Lagom/fonts/CsillaBold10.font share/Lagom/fonts/CsillaBold12.font share/Lagom/fonts/CsillaRegular10.font @@ -128,6 +2130,7 @@ share/Lagom/fonts/KaticaRegular10.font share/Lagom/fonts/KaticaRegular12.font share/Lagom/fonts/SerenitySans-Regular.ttf share/Lagom/icons/16x16/app-browser.png +share/Lagom/icons/16x16/app-system-monitor.png share/Lagom/icons/16x16/audio-volume-high.png share/Lagom/icons/16x16/audio-volume-muted.png share/Lagom/icons/16x16/close-tab.png @@ -145,6 +2148,7 @@ share/Lagom/icons/16x16/layers.png share/Lagom/icons/16x16/layout.png share/Lagom/icons/16x16/new-tab.png share/Lagom/icons/16x16/open-parent-directory.png +share/Lagom/icons/16x16/paste.png share/Lagom/icons/16x16/pause.png share/Lagom/icons/16x16/play.png share/Lagom/icons/16x16/select-all.png @@ -155,6 +2159,7 @@ share/Lagom/icons/16x16/zoom-in.png share/Lagom/icons/16x16/zoom-out.png share/Lagom/icons/16x16/zoom-reset.png share/Lagom/icons/32x32/app-browser.png +share/Lagom/icons/32x32/app-system-monitor.png share/Lagom/icons/32x32/filetype-folder.png share/Lagom/icons/32x32/filetype-unknown.png share/Lagom/icons/32x32/msgbox-warning.png diff --git a/www/larbin/Makefile b/www/larbin/Makefile index 1306badd5d16..30284c2449b2 100644 --- a/www/larbin/Makefile +++ b/www/larbin/Makefile @@ -11,6 +11,9 @@ WWW= http://www.ailleret.com/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING +DEPRECATED= Abandonware, obsolete web crawler +EXPIRATION_DATE=2024-05-31 + BUILD_DEPENDS= bash:shells/bash \ makedepend:devel/makedepend diff --git a/www/libdatachannel/Makefile b/www/libdatachannel/Makefile index d1c7c630bb02..3ce1985ff362 100644 --- a/www/libdatachannel/Makefile +++ b/www/libdatachannel/Makefile @@ -1,6 +1,6 @@ PORTNAME= libdatachannel DISTVERSIONPREFIX= v -DISTVERSION= 0.20.3 +DISTVERSION= 0.21.1 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/libdatachannel/distinfo b/www/libdatachannel/distinfo index a1680f25392b..49b3d9e2bf2a 100644 --- a/www/libdatachannel/distinfo +++ b/www/libdatachannel/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1713502180 -SHA256 (paullouisageneau-libdatachannel-v0.20.3_GH0.tar.gz) = 31274df211173bec5b3c104559fed25b5466b53f438c050fb71719d53a12c8e7 -SIZE (paullouisageneau-libdatachannel-v0.20.3_GH0.tar.gz) = 52630159 +TIMESTAMP = 1715832106 +SHA256 (paullouisageneau-libdatachannel-v0.21.1_GH0.tar.gz) = 0f43577037db2093031b7dce882ce83f3c47769292aba1ac995ba594a0849ce0 +SIZE (paullouisageneau-libdatachannel-v0.21.1_GH0.tar.gz) = 52635317 SHA256 (SergiusTheBest-plog-e21baecd4753f14da64ede979c5a19302618b752_GH0.tar.gz) = 658e037fe999036cca8b91a61ac07171980aeeaf2e3421b87c71454fdff07ce2 SIZE (SergiusTheBest-plog-e21baecd4753f14da64ede979c5a19302618b752_GH0.tar.gz) = 132465 SHA256 (sctplab-usrsctp-ebb18adac6501bad4501b1f6dccb67a1c85cc299_GH0.tar.gz) = 1281cb1acd159e359aa52285de83fa00e5c1fdf4d2edcb02f7535b9550885f1c diff --git a/www/libdatachannel/pkg-plist b/www/libdatachannel/pkg-plist index 2daa9d74706b..87a9e9662640 100644 --- a/www/libdatachannel/pkg-plist +++ b/www/libdatachannel/pkg-plist @@ -5,13 +5,16 @@ include/rtc/common.hpp include/rtc/configuration.hpp include/rtc/datachannel.hpp include/rtc/description.hpp +include/rtc/frameinfo.hpp include/rtc/global.hpp +include/rtc/h264rtpdepacketizer.hpp include/rtc/h264rtppacketizer.hpp include/rtc/h265nalunit.hpp include/rtc/h265rtppacketizer.hpp include/rtc/mediahandler.hpp include/rtc/message.hpp include/rtc/nalunit.hpp +include/rtc/pacinghandler.hpp include/rtc/peerconnection.hpp include/rtc/plihandler.hpp include/rtc/reliability.hpp @@ -21,10 +24,12 @@ include/rtc/rtcpnackresponder.hpp include/rtc/rtcpreceivingsession.hpp include/rtc/rtcpsrreporter.hpp include/rtc/rtp.hpp +include/rtc/rtpdepacketizer.hpp include/rtc/rtppacketizationconfig.hpp include/rtc/rtppacketizer.hpp include/rtc/track.hpp include/rtc/utils.hpp +include/rtc/version.h include/rtc/websocket.hpp include/rtc/websocketserver.hpp lib/cmake/LibDataChannel/LibDataChannelConfig.cmake @@ -32,5 +37,5 @@ lib/cmake/LibDataChannel/LibDataChannelConfigVersion.cmake lib/cmake/LibDataChannel/LibDataChannelTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/LibDataChannel/LibDataChannelTargets.cmake lib/libdatachannel.so -lib/libdatachannel.so.0.20 -lib/libdatachannel.so.0.20.3 +lib/libdatachannel.so.0.21 +lib/libdatachannel.so.0.21.1 diff --git a/www/libjwt/Makefile b/www/libjwt/Makefile index 8cdfed93c813..6a3287566887 100644 --- a/www/libjwt/Makefile +++ b/www/libjwt/Makefile @@ -1,5 +1,5 @@ PORTNAME= libjwt -PORTVERSION= 1.17.0 +PORTVERSION= 1.17.1 MASTER_SITES= https://github.com/benmcollins/libjwt/releases/download/v${PORTVERSION}/ CATEGORIES= www diff --git a/www/libjwt/distinfo b/www/libjwt/distinfo index 88234fe867a7..4cc004c890d4 100644 --- a/www/libjwt/distinfo +++ b/www/libjwt/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708448966 -SHA256 (libjwt-1.17.0.tar.bz2) = b8b257da9b64ba9075fce3a3f670ae02dee7fc95ab7009a2e1ad60905e3f8d48 -SIZE (libjwt-1.17.0.tar.bz2) = 407710 +TIMESTAMP = 1716142054 +SHA256 (libjwt-1.17.1.tar.bz2) = 1db8ffcd2fc5e0ee750aee8d90aaecf467282a4836c88524f04bb068b1a06d72 +SIZE (libjwt-1.17.1.tar.bz2) = 404481 diff --git a/www/libjwt/pkg-plist b/www/libjwt/pkg-plist index 25cceef44d80..c17190bae8ff 100644 --- a/www/libjwt/pkg-plist +++ b/www/libjwt/pkg-plist @@ -4,5 +4,5 @@ include/jwt.h lib/libjwt.a lib/libjwt.so lib/libjwt.so.2 -lib/libjwt.so.2.10.0 +lib/libjwt.so.2.10.1 libdata/pkgconfig/libjwt.pc diff --git a/www/libnghttp2/Makefile b/www/libnghttp2/Makefile index 1e669cdffb16..5fb6931fb024 100644 --- a/www/libnghttp2/Makefile +++ b/www/libnghttp2/Makefile @@ -1,5 +1,5 @@ PORTNAME= nghttp2 -PORTVERSION= 1.61.0 +PORTVERSION= 1.62.1 CATEGORIES= www net MASTER_SITES= https://github.com/nghttp2/nghttp2/releases/download/v${PORTVERSION}/ PKGNAMEPREFIX= lib @@ -12,12 +12,12 @@ WWW= https://nghttp2.org/ \ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -USES= compiler:c++14-lang cpe libtool pathfix pkgconfig tar:xz +USES= compiler:c++20-lang cpe libtool pathfix pkgconfig tar:xz CONFIGURE_ARGS= --enable-lib-only GNU_CONFIGURE= yes INSTALL_TARGET= install-strip -USE_CXXSTD= c++14 +USE_CXXSTD= c++20 USE_LDCONFIG= yes .include <bsd.port.mk> diff --git a/www/libnghttp2/distinfo b/www/libnghttp2/distinfo index 8579be1c53e4..91ec4a354b3f 100644 --- a/www/libnghttp2/distinfo +++ b/www/libnghttp2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712261836 -SHA256 (nghttp2-1.61.0.tar.xz) = c0e660175b9dc429f11d25b9507a834fb752eea9135ab420bb7cb7e9dbcc9654 -SIZE (nghttp2-1.61.0.tar.xz) = 1645808 +TIMESTAMP = 1716142056 +SHA256 (nghttp2-1.62.1.tar.xz) = 2345d4dc136fda28ce243e0bb21f2e7e8ef6293d62c799abbf6f633a6887af72 +SIZE (nghttp2-1.62.1.tar.xz) = 1606084 diff --git a/www/libnghttp2/pkg-plist b/www/libnghttp2/pkg-plist index e6e6a7de5732..1afc3abca0e9 100644 --- a/www/libnghttp2/pkg-plist +++ b/www/libnghttp2/pkg-plist @@ -3,5 +3,5 @@ include/nghttp2/nghttp2ver.h lib/libnghttp2.a lib/libnghttp2.so lib/libnghttp2.so.14 -lib/libnghttp2.so.14.28.0 +lib/libnghttp2.so.14.28.1 libdata/pkgconfig/libnghttp2.pc diff --git a/www/libnghttp3/Makefile b/www/libnghttp3/Makefile index 2598406e1086..ec31e881245a 100644 --- a/www/libnghttp3/Makefile +++ b/www/libnghttp3/Makefile @@ -1,5 +1,5 @@ PORTNAME= nghttp3 -PORTVERSION= 1.2.0 +PORTVERSION= 1.3.0 CATEGORIES= www net MASTER_SITES= https://github.com/ngtcp2/nghttp3/releases/download/v${PORTVERSION}/ PKGNAMEPREFIX= lib diff --git a/www/libnghttp3/distinfo b/www/libnghttp3/distinfo index 5f16776ebf0a..04b98100afcc 100644 --- a/www/libnghttp3/distinfo +++ b/www/libnghttp3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708448968 -SHA256 (nghttp3-1.2.0.tar.xz) = d2e216bae7bd7362f850922e4237a5caa204853b3594b22adccab4c1e1c1d1aa -SIZE (nghttp3-1.2.0.tar.xz) = 387592 +TIMESTAMP = 1715842554 +SHA256 (nghttp3-1.3.0.tar.xz) = 450525981d302f23832b18edd1a62cf58019392ca6402408d0eb1a7f3fd92ecf +SIZE (nghttp3-1.3.0.tar.xz) = 390176 diff --git a/www/libnghttp3/pkg-plist b/www/libnghttp3/pkg-plist index 8fbd9026ecbc..c2e591154dd4 100644 --- a/www/libnghttp3/pkg-plist +++ b/www/libnghttp3/pkg-plist @@ -3,5 +3,5 @@ include/nghttp3/version.h lib/libnghttp3.a lib/libnghttp3.so lib/libnghttp3.so.9 -lib/libnghttp3.so.9.2.0 +lib/libnghttp3.so.9.2.1 libdata/pkgconfig/libnghttp3.pc diff --git a/www/librespeed/Makefile b/www/librespeed/Makefile index 510b4fda1d8d..22e7b6cc6757 100644 --- a/www/librespeed/Makefile +++ b/www/librespeed/Makefile @@ -1,5 +1,5 @@ PORTNAME= librespeed -DISTVERSION= 5.3.0 +DISTVERSION= 5.3.2 CATEGORIES= www net PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} diff --git a/www/librespeed/distinfo b/www/librespeed/distinfo index 990f551c55e8..3022fb60de45 100644 --- a/www/librespeed/distinfo +++ b/www/librespeed/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1701029291 -SHA256 (librespeed-speedtest-5.3.0_GH0.tar.gz) = c43a1682caffdb2102eee89e8440d426cd627a79d0106458105be37c6064f935 -SIZE (librespeed-speedtest-5.3.0_GH0.tar.gz) = 2132374 +TIMESTAMP = 1716206651 +SHA256 (librespeed-speedtest-5.3.2_GH0.tar.gz) = 00afd688e7616b5083752269b840fc59628b776be115930bcb3ea02498c92d90 +SIZE (librespeed-speedtest-5.3.2_GH0.tar.gz) = 2132667 diff --git a/www/librewolf/Makefile b/www/librewolf/Makefile index 652a61847ef9..2fc6440cd509 100644 --- a/www/librewolf/Makefile +++ b/www/librewolf/Makefile @@ -1,5 +1,6 @@ PORTNAME= librewolf DISTVERSION= 124.0.1-1 +PORTREVISION= 1 CATEGORIES= www wayland MASTER_SITES= https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/${DISTVERSION:R}-1/ DISTNAME= ${PORTNAME}-${DISTVERSION:R}-1.source. diff --git a/www/librewolf/files/patch-rust-1.78.0 b/www/librewolf/files/patch-rust-1.78.0 new file mode 100644 index 000000000000..5c34337cb7a6 --- /dev/null +++ b/www/librewolf/files/patch-rust-1.78.0 @@ -0,0 +1,3542 @@ + +# HG changeset patch +# User Henri Sivonen <hsivonen@hsivonen.fi> +# Date 1714462184 0 +# Node ID 1db2ef126a6a8555dbf50345e16492c977b42e92 +# Parent a545e84b3674c4878f2e618b7bce23058f2ac690 +Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers + +Differential Revision: https://phabricator.services.mozilla.com/D207167 + +diff --git a/.cargo/config.toml.in b/.cargo/config.toml.in +--- .cargo/config.in ++++ .cargo/config.in +@@ -40,6 +40,11 @@ replace-with = "vendored-sources" + rev = "9a2ef335c366044ffe73b1c4acabe50a1daefe05" + replace-with = "vendored-sources" + ++[source."git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80"] ++git = "https://github.com/hsivonen/any_all_workaround" ++rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++replace-with = "vendored-sources" ++ + [source."git+https://github.com/hsivonen/chardetng?rev=3484d3e3ebdc8931493aa5df4d7ee9360a90e76b"] + git = "https://github.com/hsivonen/chardetng" + rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -87,16 +87,25 @@ dependencies = [ + + [[package]] + name = "anstyle" + version = "1.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b84bf0a05bbb2a83e5eb6fa36bb6e87baa08193c35ff52bbf6b38d8af2890e46" + + [[package]] ++name = "any_all_workaround" ++version = "0.1.0" ++source = "git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80#7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "version_check", ++] ++ ++[[package]] + name = "anyhow" + version = "1.0.69" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + + [[package]] + name = "app_services_logger" + version = "0.1.0" +@@ -1571,22 +1580,22 @@ dependencies = [ + "encoding_rs", + "nserror", + "nsstring", + "xmldecl", + ] + + [[package]] + name = "encoding_rs" +-version = "0.8.33" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +-dependencies = [ ++version = "0.8.34" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" ++dependencies = [ ++ "any_all_workaround", + "cfg-if 1.0.0", +- "packed_simd", + ] + + [[package]] + name = "enum-map" + version = "2.7.3" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" + dependencies = [ +@@ -4321,26 +4330,16 @@ checksum = "8d91edf4fbb970279443471345a4 + name = "oxilangtag-ffi" + version = "0.1.0" + dependencies = [ + "nsstring", + "oxilangtag", + ] + + [[package]] +-name = "packed_simd" +-version = "0.3.9" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1f9f08af0c877571712e2e3e686ad79efad9657dbf0f7c3c8ba943ff6c38932d" +-dependencies = [ +- "cfg-if 1.0.0", +- "num-traits", +-] +- +-[[package]] + name = "parking_lot" + version = "0.12.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" + dependencies = [ + "lock_api", + "parking_lot_core", + ] +diff --git a/Cargo.toml b/Cargo.toml +--- Cargo.toml ++++ Cargo.toml +@@ -190,6 +190,7 @@ cssparser-macros = { git = "https://github.com/servo/r + cssparser-macros = { git = "https://github.com/servo/rust-cssparser", rev = "aaa966d9d6ae70c4b8a62bb5e3a14c068bb7dff0" } + + # Other overrides ++any_all_workaround = { git = "https://github.com/hsivonen/any_all_workaround", rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" } + chardetng = { git = "https://github.com/hsivonen/chardetng", rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" } + chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" } + coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev = "fc68464b5445caf111e41f643a2e69ccce0b4f83" } +diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk +--- config/makefiles/rust.mk ++++ config/makefiles/rust.mk +@@ -260,17 +260,17 @@ export COREAUDIO_SDK_PATH=$(IPHONEOS_SDK + export IPHONEOS_SDK_DIR + PATH := $(topsrcdir)/build/macosx:$(PATH) + endif + endif + + ifndef RUSTC_BOOTSTRAP + RUSTC_BOOTSTRAP := mozglue_static,qcms + ifdef MOZ_RUST_SIMD +-RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,packed_simd ++RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,any_all_workaround + endif + export RUSTC_BOOTSTRAP + endif + + target_rust_ltoable := force-cargo-library-build $(ADD_RUST_LTOABLE) + target_rust_nonltoable := force-cargo-test-run force-cargo-program-build + + ifdef MOZ_PGO_RUST +diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml +--- supply-chain/audits.toml ++++ supply-chain/audits.toml +@@ -596,16 +596,29 @@ who = "Mike Hommey <mh+mozilla@glandium. + criteria = "safe-to-deploy" + delta = "0.1.2 -> 0.1.4" + + [[audits.android_system_properties]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "0.1.4 -> 0.1.5" + ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++version = "0.1.0" ++notes = "The little code that is in this crate I reviewed and modified from packed_simd (which has previously been vendored in full instead of just this small part)." ++ ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++delta = "0.1.0 -> 0.1.0@git:7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++importable = false ++notes = "This is a trivial workaround copied from elsewhere in m-c, specifically qcms." ++ + [[audits.anyhow]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "1.0.57 -> 1.0.61" + + [[audits.anyhow]] + who = "Bobby Holley <bobbyholley@gmail.com>" + criteria = "safe-to-deploy" +diff --git a/supply-chain/config.toml b/supply-chain/config.toml +--- supply-chain/config.toml ++++ supply-chain/config.toml +@@ -14,16 +14,20 @@ url = "https://raw.githubusercontent.com + url = "https://raw.githubusercontent.com/google/supply-chain/main/audits.toml" + + [imports.isrg] + url = "https://raw.githubusercontent.com/divviup/libprio-rs/main/supply-chain/audits.toml" + + [imports.mozilla] + url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" + ++[policy.any_all_workaround] ++audit-as-crates-io = true ++notes = "This is the upstream code plus the ARM intrinsics workaround from qcms, see bug 1882209." ++ + [policy.autocfg] + audit-as-crates-io = true + notes = "This is the upstream code plus a few local fixes, see bug 1685697." + + [policy.chardetng] + audit-as-crates-io = true + notes = "This is a crate Henri wrote which is also published. We should probably update Firefox to tip and certify that." + +diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock +--- supply-chain/imports.lock ++++ supply-chain/imports.lock +@@ -192,16 +192,23 @@ user-name = "David Tolnay" + + [[publisher.encoding_rs]] + version = "0.8.33" + when = "2023-08-23" + user-id = 4484 + user-login = "hsivonen" + user-name = "Henri Sivonen" + ++[[publisher.encoding_rs]] ++version = "0.8.34" ++when = "2024-04-10" ++user-id = 4484 ++user-login = "hsivonen" ++user-name = "Henri Sivonen" ++ + [[publisher.errno]] + version = "0.3.8" + when = "2023-11-28" + user-id = 6825 + user-login = "sunfishcode" + user-name = "Dan Gohman" + + [[publisher.etagere]] +diff --git a/third_party/rust/any_all_workaround/.cargo-checksum.json b/third_party/rust/any_all_workaround/.cargo-checksum.json +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/.cargo-checksum.json +@@ -0,0 +1,1 @@ ++{"files":{"Cargo.toml":"f8c127449dc9432d404c21c99833e4617ab88a797445af249a7fe3c989985d6d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","LICENSE-MIT-QCMS":"36d847ae882f6574ebc72f56a4f354e4f104fde4a584373496482e97d52d31bc","README.md":"4c617b8ced3a27b7edecf0e5e41ed451c04e88dab529e7a35fccc4e1551efbd7","build.rs":"56b29ab6da3e49075bfd0a7b690267c8016298bf0d332e2e68bbaf19decbbf71","src/lib.rs":"7118106690b9d25c5d0a3e2079feb83d76f1d434d0da36b9d0351806d27c850d"},"package":null} +\ No newline at end of file +diff --git a/third_party/rust/any_all_workaround/Cargo.toml b/third_party/rust/any_all_workaround/Cargo.toml +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/Cargo.toml +@@ -0,0 +1,28 @@ ++# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO ++# ++# When uploading crates to the registry Cargo will automatically ++# "normalize" Cargo.toml files for maximal compatibility ++# with all versions of Cargo and also rewrite `path` dependencies ++# to registry (e.g., crates.io) dependencies. ++# ++# If you are reading this file be aware that the original Cargo.toml ++# will likely look very different (and much more reasonable). ++# See Cargo.toml.orig for the original contents. ++ ++[package] ++edition = "2021" ++name = "any_all_workaround" ++version = "0.1.0" ++authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] ++description = "Workaround for bad LLVM codegen for boolean reductions on 32-bit ARM" ++homepage = "https://docs.rs/any_all_workaround/" ++documentation = "https://docs.rs/any_all_workaround/" ++readme = "README.md" ++license = "MIT OR Apache-2.0" ++repository = "https://github.com/hsivonen/any_all_workaround" ++ ++[dependencies] ++cfg-if = "1.0" ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/third_party/rust/packed_simd/LICENSE-APACHE b/third_party/rust/any_all_workaround/LICENSE-APACHE +rename from third_party/rust/packed_simd/LICENSE-APACHE +rename to third_party/rust/any_all_workaround/LICENSE-APACHE +diff --git a/third_party/rust/packed_simd/LICENSE-MIT b/third_party/rust/any_all_workaround/LICENSE-MIT +rename from third_party/rust/packed_simd/LICENSE-MIT +rename to third_party/rust/any_all_workaround/LICENSE-MIT +diff --git a/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS b/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +@@ -0,0 +1,21 @@ ++qcms ++Copyright (C) 2009-2024 Mozilla Corporation ++Copyright (C) 1998-2007 Marti Maria ++ ++Permission is hereby granted, free of charge, to any person obtaining ++a copy of this software and associated documentation files (the "Software"), ++to deal in the Software without restriction, including without limitation ++the rights to use, copy, modify, merge, publish, distribute, sublicense, ++and/or sell copies of the Software, and to permit persons to whom the Software ++is furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in ++all copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ++THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +diff --git a/third_party/rust/any_all_workaround/README.md b/third_party/rust/any_all_workaround/README.md +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/README.md +@@ -0,0 +1,13 @@ ++# any_all_workaround ++ ++This is a workaround for bad codegen ([Rust bug](https://github.com/rust-lang/portable-simd/issues/146), [LLVM bug](https://github.com/llvm/llvm-project/issues/50466)) for the `any()` and `all()` reductions for NEON-backed SIMD vectors on 32-bit ARM. On other platforms these delegate to `any()` and `all()` in `core::simd`. ++ ++The plan is to abandon this crate once the LLVM bug is fixed or `core::simd` works around the LLVM bug. ++ ++The code is forked from the [`packed_simd` crate](https://raw.githubusercontent.com/hsivonen/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs). ++ ++This crate requires Nightly Rust as it depends on the `portable_simd` feature. ++ ++# License ++ ++`MIT OR Apache-2.0`, since that's how `packed_simd` is licensed. (The ARM intrinsics Rust version workaround is from qcms, see LICENSE-MIT-QCMS.) +diff --git a/third_party/rust/any_all_workaround/build.rs b/third_party/rust/any_all_workaround/build.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/third_party/rust/any_all_workaround/src/lib.rs b/third_party/rust/any_all_workaround/src/lib.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/src/lib.rs +@@ -0,0 +1,110 @@ ++// This code began as a fork of ++// https://raw.githubusercontent.com/rust-lang/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs ++// which didn't have a license header on the file, but Cargo.toml said "MIT OR Apache-2.0". ++// See LICENSE-MIT and LICENSE-APACHE. ++ ++#![no_std] ++#![feature(portable_simd)] ++#![cfg_attr( ++ all( ++ stdsimd_split, ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdarch_arm_neon_intrinsics) ++)] ++#![cfg_attr( ++ all( ++ not(stdsimd_split), ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdsimd) ++)] ++ ++use cfg_if::cfg_if; ++use core::simd::mask16x8; ++use core::simd::mask32x4; ++use core::simd::mask8x16; ++ ++cfg_if! { ++ if #[cfg(all(target_arch = "arm", target_endian = "little", target_feature = "neon", target_feature = "v7"))] { ++ use core::simd::mask8x8; ++ use core::simd::mask16x4; ++ use core::simd::mask32x2; ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline] ++ pub fn $all(s: $id) -> bool { ++ use core::arch::arm::$vpmin; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmin(transmute(halves.0), transmute(halves.1))); ++ h.all() ++ } ++ } ++ #[inline] ++ pub fn $any(s: $id) -> bool { ++ use core::arch::arm::$vpmax; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmax(transmute(halves.0), transmute(halves.1))); ++ h.any() ++ } ++ } ++ } ++ } ++ } else { ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline(always)] ++ pub fn $all(s: $id) -> bool { ++ s.all() ++ } ++ #[inline(always)] ++ pub fn $any(s: $id) -> bool { ++ s.any() ++ } ++ } ++ } ++ } ++} ++ ++arm_128_v7_neon_impl!( ++ all_mask8x16, ++ any_mask8x16, ++ mask8x16, ++ mask8x8, ++ vpmin_u8, ++ vpmax_u8 ++); ++arm_128_v7_neon_impl!( ++ all_mask16x8, ++ any_mask16x8, ++ mask16x8, ++ mask16x4, ++ vpmin_u16, ++ vpmax_u16 ++); ++arm_128_v7_neon_impl!( ++ all_mask32x4, ++ any_mask32x4, ++ mask32x4, ++ mask32x2, ++ vpmin_u32, ++ vpmax_u32 ++); +diff --git a/third_party/rust/encoding_rs/.cargo-checksum.json b/third_party/rust/encoding_rs/.cargo-checksum.json +--- third_party/rust/encoding_rs/.cargo-checksum.json ++++ third_party/rust/encoding_rs/.cargo-checksum.json +@@ -1,1 +1,1 @@ +-{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"42fa83322aa9fd6723b77d35d0cacb92cbb6e7f573ce11c55f5225292866f8f4","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"d938e8ab0b9ab67e74a1a4f48f23fdce956d0ad3a3f6147ae7612a92763c88d5","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"c44c002641adb5ebc4368707a8cc0a076d2f33e6a5c27b1b69988eb515f5653d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"cc83dc0754751d67f5688a65c5e0191cba02f6bacce81a0813a243cba55eef7a","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"1dc07b818e45846b16ddcaf0de46c8862dd7df8099123ec38b95c3f8ad9c91ec","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"0bf34103e0ad1b842a13a082dee2b920b05cf4fb0f145c9ee7f608f4cb4a544f","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"2612aba86e1d201096d7e47a859bc3444f85934cc82d8adc6d39a4304d9eecfc","src/single_byte.rs":"3c9e9c1f946ae622c725ba9421240c1faa9a05e95fa10dd4642a25cb276a1edc","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"c9c010730dfb9f141d4fed19350c08a21af240913a54bb64f5ca89ff93b6b7d1"},"package":"7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"} +\ No newline at end of file ++{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"22a4d210c92dae9f32c6944ef340ee8fdd027f99c081577e8907123e2a93383e","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"1d08aefcb92afa81b18154049c9abbcad4540a23f7172e9f9bbed5af33f1a087","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"588e38b01e666d5e7462617ea7e90a108d608dec9e016f3d273ac0744af2e05d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"b08cef1f5785bb6a4822f2e844c6df1b046b737b7a075e4593eaa8c4208e9fe2","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"834f44b670ec48ee82c0e12223d1567313fdd9f88bca5f4b117c82c1828f559f","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"948571137d3b151df8db4fb2c733e74ae595d055cdf0ad83abcab9341d6adabe","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"05c6e77af74bfe73cd39a752067c11425d6b46e5da419910f54bf75a5c02a984","src/single_byte.rs":"3ad87116fb339434a4b58e8f2b15485f2b66b9f7814d708f16194ed08f6d6ccf","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"9456ca46168ef86c98399a2536f577ef7be3cdde90c0c51392d8ac48519d3fae"},"package":"b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"} +\ No newline at end of file +diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml +--- third_party/rust/encoding_rs/Cargo.toml ++++ third_party/rust/encoding_rs/Cargo.toml +@@ -6,18 +6,19 @@ + # to registry (e.g., crates.io) dependencies. + # + # If you are reading this file be aware that the original Cargo.toml + # will likely look very different (and much more reasonable). + # See Cargo.toml.orig for the original contents. + + [package] + edition = "2018" ++rust-version = "1.36" + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] + description = "A Gecko-oriented implementation of the Encoding Standard" + homepage = "https://docs.rs/encoding_rs/" + documentation = "https://docs.rs/encoding_rs/" + readme = "README.md" + keywords = [ + "encoding", + "web", +@@ -31,23 +32,23 @@ categories = [ + "internationalization", + ] + license = "(Apache-2.0 OR MIT) AND BSD-3-Clause" + repository = "https://github.com/hsivonen/encoding_rs" + + [profile.release] + lto = true + ++[dependencies.any_all_workaround] ++version = "0.1.0" ++optional = true ++ + [dependencies.cfg-if] + version = "1.0" + +-[dependencies.packed_simd] +-version = "0.3.9" +-optional = true +- + [dependencies.serde] + version = "1.0" + optional = true + + [dev-dependencies.bincode] + version = "1.0" + + [dev-dependencies.serde_derive] +@@ -69,15 +70,9 @@ fast-legacy-encode = [ + "fast-hanja-encode", + "fast-kanji-encode", + "fast-gb-hanzi-encode", + "fast-big5-hanzi-encode", + ] + less-slow-big5-hanzi-encode = [] + less-slow-gb-hanzi-encode = [] + less-slow-kanji-encode = [] +-simd-accel = [ +- "packed_simd", +- "packed_simd/into_bits", +-] +- +-[badges.travis-ci] +-repository = "hsivonen/encoding_rs" ++simd-accel = ["any_all_workaround"] +diff --git a/third_party/rust/encoding_rs/README.md b/third_party/rust/encoding_rs/README.md +--- third_party/rust/encoding_rs/README.md ++++ third_party/rust/encoding_rs/README.md +@@ -162,50 +162,36 @@ wrappers. + * [C++](https://github.com/hsivonen/recode_cpp) + + ## Optional features + + There are currently these optional cargo features: + + ### `simd-accel` + +-Enables SIMD acceleration using the nightly-dependent `packed_simd` crate. ++Enables SIMD acceleration using the nightly-dependent `portable_simd` standard ++library feature. + + This is an opt-in feature, because enabling this feature _opts out_ of Rust's + guarantees of future compilers compiling old code (aka. "stability story"). + + Currently, this has not been tested to be an improvement except for these +-targets: ++targets and enabling the `simd-accel` feature is expected to break the build ++on other targets: + + * x86_64 + * i686 + * aarch64 + * thumbv7neon + + If you use nightly Rust, you use targets whose first component is one of the + above, and you are prepared _to have to revise your configuration when updating + Rust_, you should enable this feature. Otherwise, please _do not_ enable this + feature. + +-_Note!_ If you are compiling for a target that does not have 128-bit SIMD +-enabled as part of the target definition and you are enabling 128-bit SIMD +-using `-C target_feature`, you need to enable the `core_arch` Cargo feature +-for `packed_simd` to compile a crates.io snapshot of `core_arch` instead of +-using the standard-library copy of `core::arch`, because the `core::arch` +-module of the pre-compiled standard library has been compiled with the +-assumption that the CPU doesn't have 128-bit SIMD. At present this applies +-mainly to 32-bit ARM targets whose first component does not include the +-substring `neon`. +- +-The encoding_rs side of things has not been properly set up for POWER, +-PowerPC, MIPS, etc., SIMD at this time, so even if you were to follow +-the advice from the previous paragraph, you probably shouldn't use +-the `simd-accel` option on the less mainstream architectures at this +-time. +- + Used by Firefox. + + ### `serde` + + Enables support for serializing and deserializing `&'static Encoding`-typed + struct fields using [Serde][1]. + + [1]: https://serde.rs/ +@@ -376,18 +362,19 @@ It is a goal to support the latest stabl + the version of Rust that's used for Firefox Nightly. + + At this time, there is no firm commitment to support a version older than + what's required by Firefox, and there is no commitment to treat MSRV changes + as semver-breaking, because this crate depends on `cfg-if`, which doesn't + appear to treat MSRV changes as semver-breaking, so it would be useless for + this crate to treat MSRV changes as semver-breaking. + +-As of 2021-02-04, MSRV appears to be Rust 1.36.0 for using the crate and ++As of 2024-04-04, MSRV appears to be Rust 1.36.0 for using the crate and + 1.42.0 for doc tests to pass without errors about the global allocator. ++With the `simd-accel` feature, the MSRV is even higher. + + ## Compatibility with rust-encoding + + A compatibility layer that implements the rust-encoding API on top of + encoding_rs is + [provided as a separate crate](https://github.com/hsivonen/encoding_rs_compat) + (cannot be uploaded to crates.io). The compatibility layer was originally + written with the assuption that Firefox would need it, but it is not currently +@@ -441,20 +428,27 @@ To regenerate the generated code: + - [x] Implement the rust-encoding API in terms of encoding_rs. + - [x] Add SIMD acceleration for Aarch64. + - [x] Investigate the use of NEON on 32-bit ARM. + - [ ] ~Investigate Bj旦rn H旦hrmann's lookup table acceleration for UTF-8 as + adapted to Rust in rust-encoding.~ + - [x] Add actually fast CJK encode options. + - [ ] ~Investigate [Bob Steagall's lookup table acceleration for UTF-8](https://github.com/BobSteagall/CppNow2018/blob/master/FastConversionFromUTF-8/Fast%20Conversion%20From%20UTF-8%20with%20C%2B%2B%2C%20DFAs%2C%20and%20SSE%20Intrinsics%20-%20Bob%20Steagall%20-%20C%2B%2BNow%202018.pdf).~ + - [x] Provide a build mode that works without `alloc` (with lesser API surface). +-- [ ] Migrate to `std::simd` once it is stable and declare 1.0. ++- [x] Migrate to `std::simd` ~once it is stable and declare 1.0.~ ++- [ ] Migrate `unsafe` slice access by larger types than `u8`/`u16` to `align_to`. + + ## Release Notes + ++### 0.8.34 ++ ++* Use the `portable_simd` nightly feature of the standard library instead of the `packed_simd` crate. Only affects the `simd-accel` optional nightly feature. ++* Internal documentation improvements and minor code improvements around `unsafe`. ++* Added `rust-version` to `Cargo.toml`. ++ + ### 0.8.33 + + * Use `packed_simd` instead of `packed_simd_2` again now that updates are back under the `packed_simd` name. Only affects the `simd-accel` optional nightly feature. + + ### 0.8.32 + + * Removed `build.rs`. (This removal should resolve false positives reported by some antivirus products. This may break some build configurations that have opted out of Rust's guarantees against future build breakage.) + * Internal change to what API is used for reinterpreting the lane configuration of SIMD vectors. +diff --git a/third_party/rust/encoding_rs/src/ascii.rs b/third_party/rust/encoding_rs/src/ascii.rs +--- third_party/rust/encoding_rs/src/ascii.rs ++++ third_party/rust/encoding_rs/src/ascii.rs +@@ -46,71 +46,87 @@ cfg_if! { + #[allow(dead_code)] + #[inline(always)] + fn likely(b: bool) -> bool { + b + } + } + } + ++// Safety invariants for masks: data & mask = 0 for valid ASCII or basic latin utf-16 ++ + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const ASCII_MASK: usize = 0x8080_8080_8080_8080u64 as usize; + + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const BASIC_LATIN_MASK: usize = 0xFF80_FF80_FF80_FF80u64 as usize; + + #[allow(unused_macros)] + macro_rules! ascii_naive { + ($name:ident, $src_unit:ty, $dst_unit:ty) => { ++ /// Safety: src and dst must have len_unit elements and be aligned ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + // Yes, manually omitting the bound check here matters + // a lot for perf. + for i in 0..len { ++ // Safety: len invariant used here + let code_unit = *(src.add(i)); ++ // Safety: Upholds safety-usable invariant here + if code_unit > 127 { + return Some((code_unit, i)); + } ++ // Safety: len invariant used here + *(dst.add(i)) = code_unit as $dst_unit; + } + return None; + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_alu { + ($name:ident, ++ // safety invariant: src/dst MUST be u8 + $src_unit:ty, + $dst_unit:ty, ++ // Safety invariant: stride_fn must consume and produce two usizes, and return the index of the first non-ascii when it fails + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr(feature = "cargo-clippy", allow(never_loop, cast_ptr_alignment))] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch until we are aligned to usize + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + let src_alignment = (src as usize) & ALU_ALIGNMENT_MASK; + let dst_alignment = (dst as usize) & ALU_ALIGNMENT_MASK; + if src_alignment != dst_alignment { ++ // Safety: bails early and ends up in the na誰ve branch where usize-alignment doesn't matter + break; + } + (ALU_ALIGNMENT - src_alignment) & ALU_ALIGNMENT_MASK + // } else if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // ascii_to_basic_latin + // let src_until_alignment = (ALIGNMENT - ((src as usize) & ALIGNMENT_MASK)) & ALIGNMENT_MASK; + // if (dst.add(src_until_alignment) as usize) & ALIGNMENT_MASK != 0 { + // break; +@@ -129,74 +145,104 @@ macro_rules! ascii_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: num_ascii is known to be a byte index of a non-ascii byte due to stride_fn's invariant + if let Some(num_ascii) = $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + offset += num_ascii; ++ // Safety: Upholds safety-usable invariant here by indexing into non-ascii byte + return Some((*(src.add(offset)), offset)); + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ ++ // Safety: This is the na誰ve code, same as ascii_naive, and has no requirements ++ // other than src/dst being valid for the the right lens + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_alu { + ($name:ident, ++ // safety invariant: use u8 for src/dest for ascii, and u16 for basic_latin + $src_unit:ty, + $dst_unit:ty, ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure basic-latin has the same alignment as ascii, starting with ascii since it is smaller. + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + // let src_alignment = (src as usize) & ALIGNMENT_MASK; + // let dst_alignment = (dst as usize) & ALIGNMENT_MASK; + // if src_alignment != dst_alignment { +@@ -232,66 +278,89 @@ macro_rules! basic_latin_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + if !$stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + break; + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_alu { ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure the UTF-16 side has the same alignment as the Latin-1 side, starting with Latin-1 since it is smaller. + let mut until_alignment = { + if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // unpack + let src_until_alignment = (ALU_ALIGNMENT + - ((src as usize) & ALU_ALIGNMENT_MASK)) + & ALU_ALIGNMENT_MASK; + if (dst.wrapping_add(src_until_alignment) as usize) & ALU_ALIGNMENT_MASK + != 0 +@@ -308,373 +377,485 @@ macro_rules! latin1_alu { + != 0 + { + break; + } + dst_until_alignment + } + }; + if until_alignment + ALU_STRIDE_SIZE <= len { ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ); ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + // XXX Should we first process one stride unconditionally as unaligned to + // avoid the cost of the branchiness below if the first stride fails anyway? + // XXX Should we just use unaligned SSE2 access unconditionally? It seems that + // on Haswell, it would make sense to just use unaligned and not bother + // checking. Need to benchmark older architectures before deciding. + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Safety: checking whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { ++ // Safety: Checking whether dst is aligned + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_dst_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: upholds safety-usable invariant + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_src_aligned:ident + ) => { +- #[inline(always)] ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; + // This loop is only broken out of as a goto forward without + // actually looping + 'outer: loop { ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned ++ // Safety: this is safe to call since we're valid for this read/write + if !$stride_neither_aligned(src, dst) { + break 'outer; + } + offset = SIMD_STRIDE_SIZE; + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is less that SIMD_ALIGNMENT, which is also SIMD_STRIDE_SIZE (as documented) + let until_alignment = ((SIMD_ALIGNMENT + - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; +- // This addition won't overflow, because even in the 32-bit PAE case the ++ // Safety: This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read/write (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading/writing 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); ++ // Safety: This is whether dst is aligned + let dst_masked = (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK; + if dst_masked == 0 { + loop { ++ // Safety: both are aligned, we can call the aligned function. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_both_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } else { + loop { ++ // Safety: only src is aligned here. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_src_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. ++ + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } + } else { + // At most two iterations, so unroll + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + break 'outer; + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident ++ + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Whether dst is aligned + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { + if dst_masked == 0 { + loop { ++ // Safety: Both were aligned, we can use the aligned function + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: src was aligned, dst was not + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: src was aligned, dst was not + $stride_dst_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: Neither were aligned + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_STRIDE_SIZE. + let mut until_alignment = ((SIMD_STRIDE_SIZE + - ((src as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; + while until_alignment != 0 { ++ // Safety: This is a straightforward copy, since until_alignment is < SIMD_STRIDE_SIZE < len, this is in-bounds + *(dst.add(offset)) = *(src.add(offset)) as $dst_unit; + offset += 1; + until_alignment -= 1; + } ++ // Safety: here offset will be `until_alignment`, i.e. enough to align `src`. + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements. + if offset + SIMD_STRIDE_SIZE * 2 <= len { + let len_minus_stride_times_two = len_minus_stride - SIMD_STRIDE_SIZE; ++ // Safety: at this point src is known to be aligned at offset, dst is not. + if (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK == 0 { + loop { ++ // Safety: We checked alignment of dst above, we can use the alignment functions. We're allowed to read/write 2*SIMD_STRIDE_SIZE elements, which we do. + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } else { + loop { ++ // Safety: we ensured alignment of src already. + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } + } ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we are valid to munch SIMD_STRIDE_SIZE more elements, which we do + if offset < len_minus_stride { + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + // On x86_64, this loop autovectorizes but in the pack + // case there are instructions whose purpose is to make sure + // each u16 in the vector is truncated before packing. However, + // since we don't care about saturating behavior of SSE2 packing + // when the input isn't Latin1, those instructions are useless. + // Unfortunately, using the `assume` intrinsic to lie to the + // optimizer doesn't make LLVM omit the trunctation that we +@@ -688,138 +869,180 @@ macro_rules! latin1_simd_check_align_unr + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for reads/writes of len elements of type src_unit/dst_unit ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for unaligned reads/writes of len elements of type src_unit/dst_unit + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + $store(dst, simd); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_double_stride { ++ // Safety: store must be valid for 32 bytes of write, which may be unaligned (candidates: `store(8|16)_(aligned|unaligned)`) + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 32 bytes of aligned u8x16 read ++ /// dst must be valid for 32 bytes of unaligned write according to ++ /// the $store fn, which may allow for unaligned writes or require ++ /// alignment to either 16x8 or u8x16. ++ /// ++ /// Safety-usable invariant: Returns Some(index) if the element at `index` is invalid ASCII + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + $store(dst, first); + if unlikely(!simd_is_ascii(first | second)) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + return Some(mask_first.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + return Some(SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16/32 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_double_stride { ++ // Safety: store must be valid for 16 bytes of write, which may be unaligned + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned reads, ++ /// aligned to either 16x8 or u8x16. ++ /// dst must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned or unaligned reads + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + let (a, b) = simd_unpack(first); + $store(dst, a); ++ // Safety: divide by 2 since it's a u16 pointer + $store(dst.add(SIMD_STRIDE_SIZE / 2), b); + if unlikely(!simd_is_ascii(first | second)) { + let mask_first = mask_ascii(first); + if mask_first != 0 { + return Some(mask_first.trailing_zeros() as usize); + } + let (c, d) = simd_unpack(second); + $store(dst.add(SIMD_STRIDE_SIZE), c); +@@ -832,47 +1055,59 @@ macro_rules! ascii_to_basic_latin_simd_d + $store(dst.add(SIMD_STRIDE_SIZE + (SIMD_STRIDE_SIZE / 2)), d); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! unpack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) { + let simd = $load(src); + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) -> bool { + let first = $load(src); + let second = $load(src.add(8)); + if simd_is_basic_latin(first | second) { + $store(dst, simd_pack(first, second)); + true + } else { + false + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! pack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) { + let first = $load(src); + let second = $load(src.add(8)); + $store(dst, simd_pack(first, second)); + } + }; + } +@@ -888,24 +1123,28 @@ cfg_if! { + // pub const ALIGNMENT: usize = 8; + + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const ALU_ALIGNMENT: usize = 8; + + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently produce ++ // neither_unaligned variants using only unaligned inputs. + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_neither_aligned, load16_unaligned, store8_unaligned); + unpack_simd_stride!(unpack_stride_neither_aligned, load16_unaligned, store8_unaligned); + + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the unalign macro with unalign functions above. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. + ascii_simd_unalign!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_neither_aligned); + ascii_simd_unalign!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_unalign!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_unalign!(unpack_latin1, u8, u16, unpack_stride_neither_aligned); + latin1_simd_unalign!(pack_latin1, u16, u8, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_endian = "little", target_feature = "neon"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // +@@ -914,16 +1153,19 @@ cfg_if! { + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_dst_aligned, load16_unaligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_both_aligned, load16_aligned, store8_aligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_src_aligned, load16_aligned, store8_unaligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_dst_aligned, load16_unaligned, store8_aligned); +@@ -939,36 +1181,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + pack_simd_stride!(pack_stride_dst_aligned, load8_unaligned, store16_aligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_dst_aligned, ascii_to_ascii_stride_neither_aligned); + ascii_simd_check_align!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_dst_aligned, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // + // Newer microarchitectures are not supposed to have a performance difference between + // aligned and unaligned SSE2 loads and stores when the address is actually aligned, + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + ++ /// Safety-usable invariant: This should be identical to SIMD_STRIDE_SIZE (used by ascii_simd_check_align_unrolled) + pub const SIMD_ALIGNMENT: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_both_aligned, store16_aligned); + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_src_aligned, store16_unaligned); + + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_both_aligned, store8_aligned); + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_src_aligned, store8_unaligned); + + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); +@@ -984,33 +1233,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_both_aligned, load8_aligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_src_aligned, load8_aligned, store16_unaligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither/double_both/double_src here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align_unrolled!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_neither_aligned, ascii_to_ascii_simd_double_stride_both_aligned, ascii_to_ascii_simd_double_stride_src_aligned); + ascii_simd_check_align_unrolled!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_neither_aligned, ascii_to_basic_latin_simd_double_stride_both_aligned, ascii_to_basic_latin_simd_double_stride_src_aligned); + + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align_unrolled!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align_unrolled!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(target_endian = "little", target_pointer_width = "64"))] { + // Aligned ALU word, little-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | + ((0x0000_0000_0000_FF00usize & word) << 8) | + (0x0000_0000_0000_00FFusize & word); + let second = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | +@@ -1019,22 +1278,24 @@ cfg_if! { + let third = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); + let fourth = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000_0000_0000usize & second) << 8) | + ((0x0000_00FF_0000_0000usize & second) << 16) | + ((0x0000_0000_00FF_0000usize & second) << 24) | + ((0x0000_0000_0000_00FFusize & second) << 32) | + ((0x00FF_0000_0000_0000usize & first) >> 24) | + ((0x0000_00FF_0000_0000usize & first) >> 16) | +@@ -1043,70 +1304,88 @@ cfg_if! { + let second_word = ((0x00FF_0000_0000_0000usize & fourth) << 8) | + ((0x0000_00FF_0000_0000usize & fourth) << 16) | + ((0x0000_0000_00FF_0000usize & fourth) << 24) | + ((0x0000_0000_0000_00FFusize & fourth) << 32) | + ((0x00FF_0000_0000_0000usize & third) >> 24) | + ((0x0000_00FF_0000_0000usize & third) >> 16) | + ((0x0000_0000_00FF_0000usize & third) >> 8) | + (0x0000_0000_0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "little", target_pointer_width = "32"))] { + // Aligned ALU word, little-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let second = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let third = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); + let fourth = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & second) << 8) | + ((0x0000_00FFusize & second) << 16) | + ((0x00FF_0000usize & first) >> 8) | + (0x0000_00FFusize & first); + let second_word = ((0x00FF_0000usize & fourth) << 8) | + ((0x0000_00FFusize & fourth) << 16) | + ((0x00FF_0000usize & third) >> 8) | + (0x0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "64"))] { + // Aligned ALU word, big-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | + ((0x0000_FF00_0000_0000usize & word) >> 24) | + ((0x0000_00FF_0000_0000usize & word) >> 32); + let second = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | +@@ -1115,22 +1394,24 @@ cfg_if! { + let third = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); + let fourth = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF0000_00000000usize & first) << 8) | + ((0x000000FF_00000000usize & first) << 16) | + ((0x00000000_00FF0000usize & first) << 24) | + ((0x00000000_000000FFusize & first) << 32) | + ((0x00FF0000_00000000usize & second) >> 24) | + ((0x000000FF_00000000usize & second) >> 16) | +@@ -1139,67 +1420,80 @@ cfg_if! { + let second_word = ((0x00FF0000_00000000usize & third) << 8) | + ((0x000000FF_00000000usize & third) << 16) | + ((0x00000000_00FF0000usize & third) << 24) | + ((0x00000000_000000FFusize & third) << 32) | + ((0x00FF0000_00000000usize & fourth) >> 24) | + ((0x000000FF_00000000usize & fourth) >> 16) | + ((0x00000000_00FF0000usize & fourth) >> 8) | + (0x00000000_000000FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "32"))] { + // Aligned ALU word, big-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let second = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let third = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); + let fourth = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & first) << 8) | + ((0x0000_00FFusize & first) << 16) | + ((0x00FF_0000usize & second) >> 8) | + (0x0000_00FFusize & second); + let second_word = ((0x00FF_0000usize & third) << 8) | + ((0x0000_00FFusize & third) << 16) | + ((0x00FF_0000usize & fourth) >> 8) | + (0x0000_00FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else { + ascii_naive!(ascii_to_ascii, u8, u8); + ascii_naive!(ascii_to_basic_latin, u8, u16); + ascii_naive!(basic_latin_to_ascii, u16, u8); + } + } + + cfg_if! { ++ // Safety-usable invariant: this counts the zeroes from the "first byte" of utf-8 data packed into a usize ++ // with the target endianness + if #[cfg(target_endian = "little")] { + #[allow(dead_code)] + #[inline(always)] + fn count_zeros(word: usize) -> u32 { + word.trailing_zeros() + } + } else { + #[allow(dead_code)] +@@ -1207,208 +1501,272 @@ cfg_if! { + fn count_zeros(word: usize) -> u32 { + word.leading_zeros() + } + } + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", target_endian = "little", target_arch = "disabled"))] { ++ /// Safety-usable invariant: Will return the value and position of the first non-ASCII byte in the slice in a Some if found. ++ /// In other words, the first element of the Some is always `> 127` + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: src at offset is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + if !simd_is_ascii(simd) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety: Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned vector ++ // Safety: src is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset = mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset = SIMD_STRIDE_SIZE; ++ // Safety: Now that offset has changed we don't yet know how much it is valid for + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_ALIGNMENT, which is defined to be equal to SIMD_STRIDE_SIZE. + let until_alignment = unsafe { (SIMD_ALIGNMENT - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) & SIMD_ALIGNMENT_MASK }; + // This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); + loop { ++ // Safety: We were valid for this read, and were aligned. + let first = unsafe { load16_aligned(src.add(offset)) }; + let second = unsafe { load16_aligned(src.add(offset + SIMD_STRIDE_SIZE)) }; + if !simd_is_ascii(first | second) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + offset += mask_first.trailing_zeros() as usize; + } else { + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize; + } ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + let non_ascii = unsafe { *src.add(offset) }; ++ + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { +- let simd = unsafe { load16_aligned(src.add(offset)) }; +- let mask = mask_ascii(simd); ++ // Safety: We were valid for this read, and were aligned. ++ let simd = unsafe { load16_aligned(src.add(offset)) }; ++ // Safety: mask_ascii produces a mask of all the high bits. ++ let mask = mask_ascii(simd); + if mask != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } else { ++ // Safety: this is the unaligned branch + // At most two iterations, so unroll ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = unsafe { *(src.add(offset)) }; + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else { ++ // Safety-usable invariant: returns byte index of first non-ascii byte + #[inline(always)] + fn find_non_ascii(word: usize, second_word: usize) -> Option<usize> { + let word_masked = word & ASCII_MASK; + let second_masked = second_word & ASCII_MASK; + if (word_masked | second_masked) == 0 { ++ // Both are ascii, invariant upheld + return None; + } + if word_masked != 0 { + let zeros = count_zeros(word_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + return Some(num_ascii); + } + let zeros = count_zeros(second_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + Some(ALU_ALIGNMENT + num_ascii) + } + ++ /// Safety: `src` must be valid for the reads of two `usize`s ++ /// ++ /// Safety-usable invariant: will return byte index of first non-ascii byte + #[inline(always)] + unsafe fn validate_ascii_stride(src: *const usize) -> Option<usize> { + let word = *src; + let second_word = *(src.add(1)); + find_non_ascii(word, second_word) + } + ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[cfg_attr(feature = "cargo-clippy", allow(cast_ptr_alignment))] + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; + let mut until_alignment = (ALU_ALIGNMENT - ((src as usize) & ALU_ALIGNMENT_MASK)) & ALU_ALIGNMENT_MASK; ++ // Safety: If this check fails we're valid to read `until_alignment + ALU_STRIDE_SIZE` elements + if until_alignment + ALU_STRIDE_SIZE <= len { + while until_alignment != 0 { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + until_alignment -= 1; + } ++ // Safety: At this point we have read until_alignment elements and ++ // are valid for `ALU_STRIDE_SIZE` more. + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: we were valid for this read + let ptr = unsafe { src.add(offset) as *const usize }; + if let Some(num_ascii) = unsafe { validate_ascii_stride(ptr) } { + offset += num_ascii; ++ // Safety-usable invairant upheld here using the invariant from validate_ascii_stride() + return Some((unsafe { *(src.add(offset)) }, offset)); + } + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > ALU_STRIDE_SIZE` which means we always have at least `2 * ALU_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + + } +@@ -1423,70 +1781,88 @@ cfg_if! { + // vector reads without vector writes. + + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const ALU_ALIGNMENT: usize = 4; + + pub const ALU_ALIGNMENT_MASK: usize = 3; + } else { ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn unpack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + } + ++ // Safety: src points to four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn pack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + } + ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn ascii_to_basic_latin_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); + // Check if the words contains non-ASCII + if (word & ASCII_MASK) | (second_word & ASCII_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + true + } + ++ // Safety: src points four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn basic_latin_to_ascii_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); + if (first & BASIC_LATIN_MASK) | (second & BASIC_LATIN_MASK) | (third & BASIC_LATIN_MASK) | (fourth & BASIC_LATIN_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + true + } + ++ // Safety: src, dst both point to two valid `usize`s each ++ // Safety-usable invariant: Will return byte index of first non-ascii byte. + #[inline(always)] + unsafe fn ascii_to_ascii_stride(src: *const usize, dst: *mut usize) -> Option<usize> { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: src safety invariant used here + *dst = word; + *(dst.add(1)) = second_word; ++ // Relies on safety-usable invariant here + find_non_ascii(word, second_word) + } + + basic_latin_alu!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_alu); + basic_latin_alu!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_alu); + latin1_alu!(unpack_latin1, u8, u16, unpack_latin1_stride_alu); + latin1_alu!(pack_latin1, u16, u8, pack_latin1_stride_alu); ++ // Safety invariant upheld: ascii_to_ascii_stride will return byte index of first non-ascii if found + ascii_alu!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride); + } + } + + pub fn ascii_valid_up_to(bytes: &[u8]) -> usize { + match validate_ascii(bytes) { + None => bytes.len(), + Some((_, num_valid)) => num_valid, +diff --git a/third_party/rust/encoding_rs/src/handles.rs b/third_party/rust/encoding_rs/src/handles.rs +--- third_party/rust/encoding_rs/src/handles.rs ++++ third_party/rust/encoding_rs/src/handles.rs +@@ -29,17 +29,17 @@ use crate::simd_funcs::*; + #[cfg(all( + feature = "simd-accel", + any( + target_feature = "sse2", + all(target_endian = "little", target_arch = "aarch64"), + all(target_endian = "little", target_feature = "neon") + ) + ))] +-use packed_simd::u16x8; ++use core::simd::u16x8; + + use super::DecoderResult; + use super::EncoderResult; + use crate::ascii::*; + use crate::utf_8::convert_utf8_to_utf16_up_to_invalid; + use crate::utf_8::utf8_valid_up_to; + + pub enum Space<T> { +@@ -85,84 +85,100 @@ impl Endian for LittleEndian { + const OPPOSITE_ENDIAN: bool = false; + + #[cfg(target_endian = "big")] + const OPPOSITE_ENDIAN: bool = true; + } + + #[derive(Debug, Copy, Clone)] + struct UnalignedU16Slice { ++ // Safety invariant: ptr must be valid for reading 2*len bytes + ptr: *const u8, + len: usize, + } + + impl UnalignedU16Slice { ++ /// Safety: ptr must be valid for reading 2*len bytes + #[inline(always)] + pub unsafe fn new(ptr: *const u8, len: usize) -> UnalignedU16Slice { ++ // Safety: field invariant passed up to caller here + UnalignedU16Slice { ptr, len } + } + + #[inline(always)] + pub fn trim_last(&mut self) { + assert!(self.len > 0); ++ // Safety: invariant upheld here: a slice is still valid with a shorter len + self.len -= 1; + } + + #[inline(always)] + pub fn at(&self, i: usize) -> u16 { + use core::mem::MaybeUninit; + + assert!(i < self.len); + unsafe { + let mut u: MaybeUninit<u16> = MaybeUninit::uninit(); ++ // Safety: i is at most len - 1, which works here + ::core::ptr::copy_nonoverlapping(self.ptr.add(i * 2), u.as_mut_ptr() as *mut u8, 2); ++ // Safety: valid read above lets us do this + u.assume_init() + } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn simd_at(&self, i: usize) -> u16x8 { ++ // Safety: i/len are on the scale of u16s, each one corresponds to 2 u8s + assert!(i + SIMD_STRIDE_SIZE / 2 <= self.len); + let byte_index = i * 2; ++ // Safety: load16_unaligned needs SIMD_STRIDE_SIZE=16 u8 elements to read, ++ // or 16/2 = 8 u16 elements to read. ++ // We have checked that we have at least that many above. ++ + unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) } + } + + #[inline(always)] + pub fn len(&self) -> usize { + self.len + } + + #[inline(always)] + pub fn tail(&self, from: usize) -> UnalignedU16Slice { + // XXX the return value should be restricted not to + // outlive self. + assert!(from <= self.len); ++ // Safety: This upholds the same invariant: `from` is in bounds and we're returning a shorter slice + unsafe { UnalignedU16Slice::new(self.ptr.add(from * 2), self.len - from) } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn copy_bmp_to<E: Endian>(&self, other: &mut [u16]) -> Option<(u16, usize)> { + assert!(self.len <= other.len()); + let mut offset = 0; ++ // Safety: SIMD_STRIDE_SIZE is measured in bytes, whereas len is in u16s. We check we can ++ // munch SIMD_STRIDE_SIZE / 2 u16s which means we can write SIMD_STRIDE_SIZE u8s + if SIMD_STRIDE_SIZE / 2 <= self.len { + let len_minus_stride = self.len - SIMD_STRIDE_SIZE / 2; + loop { + let mut simd = self.simd_at(offset); + if E::OPPOSITE_ENDIAN { + simd = simd_byte_swap(simd); + } ++ // Safety: we have enough space on the other side to write this + unsafe { + store8_unaligned(other.as_mut_ptr().add(offset), simd); + } + if contains_surrogates(simd) { + break; + } + offset += SIMD_STRIDE_SIZE / 2; ++ // Safety: This ensures we still have space for writing SIMD_STRIDE_SIZE u8s + if offset > len_minus_stride { + break; + } + } + } + while offset < self.len { + let unit = swap_if_opposite_endian::<E>(self.at(offset)); + other[offset] = unit; +@@ -231,33 +247,37 @@ fn copy_unaligned_basic_latin_to_ascii<E + #[cfg(feature = "simd-accel")] + #[inline(always)] + fn copy_unaligned_basic_latin_to_ascii<E: Endian>( + src: UnalignedU16Slice, + dst: &mut [u8], + ) -> CopyAsciiResult<usize, (u16, usize)> { + let len = ::core::cmp::min(src.len(), dst.len()); + let mut offset = 0; ++ // Safety: This check ensures we are able to read/write at least SIMD_STRIDE_SIZE elements + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { + let mut first = src.simd_at(offset); + let mut second = src.simd_at(offset + (SIMD_STRIDE_SIZE / 2)); + if E::OPPOSITE_ENDIAN { + first = simd_byte_swap(first); + second = simd_byte_swap(second); + } + if !simd_is_basic_latin(first | second) { + break; + } + let packed = simd_pack(first, second); ++ // Safety: We are able to write SIMD_STRIDE_SIZE elements in this iteration + unsafe { + store16_unaligned(dst.as_mut_ptr().add(offset), packed); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which ensures that we can write at least SIMD_STRIDE_SIZE elements ++ // in the next iteration + if offset > len_minus_stride { + break; + } + } + } + copy_unaligned_basic_latin_to_ascii_alu::<E>(src.tail(offset), &mut dst[offset..], offset) + } + +@@ -632,94 +652,106 @@ impl<'a> Utf16Destination<'a> { + #[inline(always)] + fn write_astral(&mut self, astral: u32) { + debug_assert!(astral > 0xFFFF); + debug_assert!(astral <= 0x10_FFFF); + self.write_code_unit((0xD7C0 + (astral >> 10)) as u16); + self.write_code_unit((0xDC00 + (astral & 0x3FF)) as u16); + } + #[inline(always)] +- pub fn write_surrogate_pair(&mut self, high: u16, low: u16) { ++ fn write_surrogate_pair(&mut self, high: u16, low: u16) { + self.write_code_unit(high); + self.write_code_unit(low); + } + #[inline(always)] + fn write_big5_combination(&mut self, combined: u16, combining: u16) { + self.write_bmp_excl_ascii(combined); + self.write_bmp_excl_ascii(combining); + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_bmp<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16BmpHandle<'b, 'a>)> { + let non_ascii_ret = { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16BmpHandle::new(self))) + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_astral<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16AstralHandle<'b, 'a>)> { + let non_ascii_ret = { + let dst_len = self.slice.len(); + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + if self.pos + 1 < dst_len { + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } else { + return CopyAsciiResult::Stop(( + DecoderResult::OutputFull, + source.pos, + self.pos, + )); + } + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16AstralHandle::new(self))) + } + #[inline(always)] + pub fn copy_utf8_up_to_invalid_from(&mut self, source: &mut ByteSource) { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (read, written) = convert_utf8_to_utf16_up_to_invalid(src_remaining, dst_remaining); + source.pos += read; +diff --git a/third_party/rust/encoding_rs/src/lib.rs b/third_party/rust/encoding_rs/src/lib.rs +--- third_party/rust/encoding_rs/src/lib.rs ++++ third_party/rust/encoding_rs/src/lib.rs +@@ -684,37 +684,26 @@ + //! <tr><td>TIS-620</td><td>windows-874</td></tr> + //! </tbody> + //! </table> + //! + //! See the section [_UTF-16LE, UTF-16BE and Unicode Encoding Schemes_](#utf-16le-utf-16be-and-unicode-encoding-schemes) + //! for discussion about the UTF-16 family. + + #![no_std] +-#![cfg_attr(feature = "simd-accel", feature(core_intrinsics))] ++#![cfg_attr(feature = "simd-accel", feature(core_intrinsics, portable_simd))] + + #[cfg(feature = "alloc")] + #[cfg_attr(test, macro_use)] + extern crate alloc; + + extern crate core; + #[macro_use] + extern crate cfg_if; + +-#[cfg(all( +- feature = "simd-accel", +- any( +- target_feature = "sse2", +- all(target_endian = "little", target_arch = "aarch64"), +- all(target_endian = "little", target_feature = "neon") +- ) +-))] +-#[macro_use(shuffle)] +-extern crate packed_simd; +- + #[cfg(feature = "serde")] + extern crate serde; + + #[cfg(all(test, feature = "serde"))] + extern crate bincode; + #[cfg(all(test, feature = "serde"))] + #[macro_use] + extern crate serde_derive; +diff --git a/third_party/rust/encoding_rs/src/mem.rs b/third_party/rust/encoding_rs/src/mem.rs +--- third_party/rust/encoding_rs/src/mem.rs ++++ third_party/rust/encoding_rs/src/mem.rs +@@ -111,16 +111,21 @@ macro_rules! by_unit_check_alu { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - ALU_ALIGNMENT / unit_size; + if offset + (4 * (ALU_ALIGNMENT / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length ALU_ALIGNMENT / unit_size. ALU_ALIGNMENT is the size of usize, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four usize reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (ALU_ALIGNMENT / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const usize) } + | unsafe { + *(src.add(offset + (ALU_ALIGNMENT / unit_size)) as *const usize) + } + | unsafe { + *(src.add(offset + (2 * (ALU_ALIGNMENT / unit_size))) +@@ -129,22 +134,24 @@ macro_rules! by_unit_check_alu { + | unsafe { + *(src.add(offset + (3 * (ALU_ALIGNMENT / unit_size))) + as *const usize) + }; + if unroll_accu & $mask != 0 { + return false; + } + offset += 4 * (ALU_ALIGNMENT / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one usize read. + accu |= unsafe { *(src.add(offset) as *const usize) }; + offset += ALU_ALIGNMENT / unit_size; + } + } + } + for &unit in &buffer[offset..] { + accu |= unit as usize; + } +@@ -184,16 +191,21 @@ macro_rules! by_unit_check_simd { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - SIMD_STRIDE_SIZE / unit_size; + if offset + (4 * (SIMD_STRIDE_SIZE / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length SIMD_STRIDE_SIZE / unit_size. SIMD_STRIDE_SIZE is the size of $simd_ty, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four $simd_ty reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (SIMD_STRIDE_SIZE / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const $simd_ty) } + | unsafe { + *(src.add(offset + (SIMD_STRIDE_SIZE / unit_size)) + as *const $simd_ty) + } + | unsafe { +@@ -203,23 +215,25 @@ macro_rules! by_unit_check_simd { + | unsafe { + *(src.add(offset + (3 * (SIMD_STRIDE_SIZE / unit_size))) + as *const $simd_ty) + }; + if !$func(unroll_accu) { + return false; + } + offset += 4 * (SIMD_STRIDE_SIZE / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + let mut simd_accu = $splat; + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one $simd_ty read. + simd_accu = simd_accu | unsafe { *(src.add(offset) as *const $simd_ty) }; + offset += SIMD_STRIDE_SIZE / unit_size; + } + if !$func(simd_accu) { + return false; + } + } + } +@@ -229,18 +243,18 @@ macro_rules! by_unit_check_simd { + accu < $bound + } + }; + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", any(target_feature = "sse2", all(target_endian = "little", target_arch = "aarch64"), all(target_endian = "little", target_feature = "neon"))))] { + use crate::simd_funcs::*; +- use packed_simd::u8x16; +- use packed_simd::u16x8; ++ use core::simd::u8x16; ++ use core::simd::u16x8; + + const SIMD_ALIGNMENT: usize = 16; + + const SIMD_ALIGNMENT_MASK: usize = 15; + + by_unit_check_simd!(is_ascii_impl, u8, u8x16::splat(0), u8x16, 0x80, simd_is_ascii); + by_unit_check_simd!(is_basic_latin_impl, u16, u16x8::splat(0), u16x8, 0x80, simd_is_basic_latin); + by_unit_check_simd!(is_utf16_latin1_impl, u16, u16x8::splat(0), u16x8, 0x100, simd_is_latin1); +diff --git a/third_party/rust/encoding_rs/src/simd_funcs.rs b/third_party/rust/encoding_rs/src/simd_funcs.rs +--- third_party/rust/encoding_rs/src/simd_funcs.rs ++++ third_party/rust/encoding_rs/src/simd_funcs.rs +@@ -2,65 +2,84 @@ + // file at the top-level directory of this distribution. + // + // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or + // https://www.apache.org/licenses/LICENSE-2.0> or the MIT license + // <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your + // option. This file may not be copied, modified, or distributed + // except according to those terms. + +-use packed_simd::u16x8; +-use packed_simd::u8x16; +-use packed_simd::IntoBits; ++use any_all_workaround::all_mask16x8; ++use any_all_workaround::all_mask8x16; ++use any_all_workaround::any_mask16x8; ++use any_all_workaround::any_mask8x16; ++use core::simd::cmp::SimdPartialEq; ++use core::simd::cmp::SimdPartialOrd; ++use core::simd::mask16x8; ++use core::simd::mask8x16; ++use core::simd::simd_swizzle; ++use core::simd::u16x8; ++use core::simd::u8x16; ++use core::simd::ToBytes; + + // TODO: Migrate unaligned access to stdlib code if/when the RFC + // https://github.com/rust-lang/rfcs/pull/1725 is implemented. + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load16_unaligned(ptr: *const u8) -> u8x16 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr, &mut simd as *mut u8x16 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u8x16>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load16_aligned(ptr: *const u8) -> u8x16 { + *(ptr as *const u8x16) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store16_unaligned(ptr: *mut u8, s: u8x16) { + ::core::ptr::copy_nonoverlapping(&s as *const u8x16 as *const u8, ptr, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store16_aligned(ptr: *mut u8, s: u8x16) { + *(ptr as *mut u8x16) = s; + } + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load8_unaligned(ptr: *const u16) -> u16x8 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr as *const u8, &mut simd as *mut u16x8 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u16x8>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr as *const u8, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load8_aligned(ptr: *const u16) -> u16x8 { + *(ptr as *const u16x8) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store8_unaligned(ptr: *mut u16, s: u16x8) { + ::core::ptr::copy_nonoverlapping(&s as *const u16x8 as *const u8, ptr as *mut u8, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store8_aligned(ptr: *mut u16, s: u16x8) { + *(ptr as *mut u16x8) = s; + } + + cfg_if! { + if #[cfg(all(target_feature = "sse2", target_arch = "x86_64"))] { +@@ -95,234 +114,241 @@ cfg_if! { + pub fn simd_byte_swap(s: u16x8) -> u16x8 { + let left = s << 8; + let right = s >> 8; + left | right + } + + #[inline(always)] + pub fn to_u16_lanes(s: u8x16) -> u16x8 { +- s.into_bits() ++ u16x8::from_ne_bytes(s) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + + // Expose low-level mask instead of higher-level conclusion, + // because the non-ASCII case would perform less well otherwise. ++ // Safety-usable invariant: This returned value is whether each high bit is set + #[inline(always)] + pub fn mask_ascii(s: u8x16) -> i32 { + unsafe { +- _mm_movemask_epi8(s.into_bits()) ++ _mm_movemask_epi8(s.into()) + } + } + + } else { + + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- _mm_movemask_epi8(s.into_bits()) == 0 ++ // Safety: We have cfg()d the correct platform ++ _mm_movemask_epi8(s.into()) == 0 + } + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0x80 + } + } + } else { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + // This optimizes better on ARM than + // the lt formulation. + let highest_ascii = u8x16::splat(0x7F); +- !s.gt(highest_ascii).any() ++ !any_mask8x16(s.simd_gt(highest_ascii)) + } + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + if simd_is_ascii(s) { + return true; + } + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ s.simd_lt(above_str_latin1).all() + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0xC4 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0xC4 + } + } + } else { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ all_mask8x16(s.simd_lt(above_str_latin1)) + } + } + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x80 + } + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x100 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x100 + } + } + } else { + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + let above_ascii = u16x8::splat(0x80); +- s.lt(above_ascii).all() ++ all_mask16x8(s.simd_lt(above_ascii)) + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + // For some reason, on SSE2 this formulation + // seems faster in this case while the above + // function is better the other way round... + let highest_latin1 = u16x8::splat(0xFF); +- !s.gt(highest_latin1).any() ++ !any_mask16x8(s.simd_gt(highest_latin1)) + } + } + } + + #[inline(always)] + pub fn contains_surrogates(s: u16x8) -> bool { + let mask = u16x8::splat(0xF800); + let surrogate_bits = u16x8::splat(0xD800); +- (s & mask).eq(surrogate_bits).any() ++ any_mask16x8((s & mask).simd_eq(surrogate_bits)) + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => ({ + unsafe { +- if vmaxvq_u16($s.into_bits()) < 0x0590 { ++ // Safety: We have cfg()d the correct platform ++ if vmaxvq_u16($s.into()) < 0x0590 { + return false; + } + } + }) + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => () + } + } else { + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => () + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => ({ +- if $s.all() { ++ if all_mask16x8($s) { + return false; + } + }) + } + } + } + + macro_rules! in_range16x8 { + ($s:ident, $start:expr, $end:expr) => {{ + // SIMD sub is wrapping +- ($s - u16x8::splat($start)).lt(u16x8::splat($end - $start)) ++ ($s - u16x8::splat($start)).simd_lt(u16x8::splat($end - $start)) + }}; + } + + #[inline(always)] + pub fn is_u16x8_bidi(s: u16x8) -> bool { + // We try to first quickly refute the RTLness of the vector. If that + // fails, we do the real RTL check, so in that case we end up wasting + // the work for the up-front quick checks. Even the quick-check is + // two-fold in order to return `false` ASAP if everything is below + // Hebrew. + + aarch64_return_false_if_below_hebrew!(s); + +- let below_hebrew = s.lt(u16x8::splat(0x0590)); ++ let below_hebrew = s.simd_lt(u16x8::splat(0x0590)); + + non_aarch64_return_false_if_all!(below_hebrew); + +- if (below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802)).all() { ++ if all_mask16x8( ++ below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802), ++ ) { + return false; + } + + // Quick refutation failed. Let's do the full check. + +- (in_range16x8!(s, 0x0590, 0x0900) +- | in_range16x8!(s, 0xFB1D, 0xFE00) +- | in_range16x8!(s, 0xFE70, 0xFEFF) +- | in_range16x8!(s, 0xD802, 0xD804) +- | in_range16x8!(s, 0xD83A, 0xD83C) +- | s.eq(u16x8::splat(0x200F)) +- | s.eq(u16x8::splat(0x202B)) +- | s.eq(u16x8::splat(0x202E)) +- | s.eq(u16x8::splat(0x2067))) +- .any() ++ any_mask16x8( ++ (in_range16x8!(s, 0x0590, 0x0900) ++ | in_range16x8!(s, 0xFB1D, 0xFE00) ++ | in_range16x8!(s, 0xFE70, 0xFEFF) ++ | in_range16x8!(s, 0xD802, 0xD804) ++ | in_range16x8!(s, 0xD83A, 0xD83C) ++ | s.simd_eq(u16x8::splat(0x200F)) ++ | s.simd_eq(u16x8::splat(0x202B)) ++ | s.simd_eq(u16x8::splat(0x202E)) ++ | s.simd_eq(u16x8::splat(0x2067))), ++ ) + } + + #[inline(always)] + pub fn simd_unpack(s: u8x16) -> (u16x8, u16x8) { +- unsafe { +- let first: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] +- ); +- let second: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] +- ); +- (first.into_bits(), second.into_bits()) +- } ++ let first: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] ++ ); ++ let second: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] ++ ); ++ (u16x8::from_ne_bytes(first), u16x8::from_ne_bytes(second)) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { + unsafe { +- _mm_packus_epi16(a.into_bits(), b.into_bits()).into_bits() ++ // Safety: We have cfg()d the correct platform ++ _mm_packus_epi16(a.into(), b.into()).into() + } + } + } else { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { +- unsafe { +- let first: u8x16 = a.into_bits(); +- let second: u8x16 = b.into_bits(); +- shuffle!( +- first, +- second, +- [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] +- ) +- } ++ let first: u8x16 = a.to_ne_bytes(); ++ let second: u8x16 = b.to_ne_bytes(); ++ simd_swizzle!( ++ first, ++ second, ++ [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] ++ ) + } + } + } + + #[cfg(test)] + mod tests { + use super::*; + use alloc::vec::Vec; +diff --git a/third_party/rust/encoding_rs/src/single_byte.rs b/third_party/rust/encoding_rs/src/single_byte.rs +--- third_party/rust/encoding_rs/src/single_byte.rs ++++ third_party/rust/encoding_rs/src/single_byte.rs +@@ -48,16 +48,19 @@ impl SingleByteDecoder { + CopyAsciiResult::GoOn((mut non_ascii, mut handle)) => 'middle: loop { + // Start non-boilerplate + // + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: `non_ascii` is a u8 byte >=0x80, from the invariants ++ // on Utf8Destination::copy_ascii_from_check_space_bmp() + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + source.consumed(), + handle.written(), +@@ -146,82 +149,103 @@ impl SingleByteDecoder { + dst: &mut [u16], + _last: bool, + ) -> (DecoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (DecoderResult::OutputFull, dst.len()) + } else { + (DecoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + ascii_to_basic_latin( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + unsafe { +- // The bound check has already been performed ++ // Safety: As mentioned above, `converted < length` + *(dst.get_unchecked_mut(converted)) = mapped; + } ++ // Safety: `converted <= length` upheld, since `converted < length` before this + converted += 1; + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: We are back to `converted < length` because of the == above ++ // and can perform this check. + let mut b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: `converted < length` is upheld for this loop + 'innermost: loop { + if b > 127 { + non_ascii = b; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: `converted < length` is true for this loop + *(dst.get_unchecked_mut(converted)) = u16::from(b); + } ++ // Safety: We are now at `converted <= length`. We should *not* `continue` ++ // the loop without reverifying + converted += 1; + if b < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted <= length` because of the == above + b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: The loop continues as `converted < length` + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; + } + } + } + } +@@ -229,16 +253,18 @@ impl SingleByteDecoder { + } + + pub fn latin1_byte_compatible_up_to(&self, buffer: &[u8]) -> usize { + let mut bytes = buffer; + let mut total = 0; + loop { + if let Some((non_ascii, offset)) = validate_ascii(bytes) { + total += offset; ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + if mapped != u16::from(non_ascii) { + return total; + } + total += 1; + bytes = &bytes[offset + 1..]; + } else { + return total; +@@ -379,64 +405,89 @@ impl SingleByteEncoder { + dst: &mut [u8], + _last: bool, + ) -> (EncoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (EncoderResult::OutputFull, dst.len()) + } else { + (EncoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + basic_latin_to_ascii( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + match self.encode_u16(non_ascii) { + Some(byte) => { + unsafe { ++ // Safety: we're allowed this access since `converted < length` + *(dst.get_unchecked_mut(converted)) = byte; + } + converted += 1; ++ // `converted <= length` now + } + None => { + // At this point, we need to know if we + // have a surrogate. + let high_bits = non_ascii & 0xFC00u16; + if high_bits == 0xD800u16 { + // high surrogate + if converted + 1 == length { + // End of buffer. This surrogate is unpaired. + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } ++ // Safety: convered < length from outside the match, and `converted + 1 != length`, ++ // So `converted + 1 < length` as well. We're in bounds + let second = + u32::from(unsafe { *src.get_unchecked(converted + 1) }); + if second & 0xFC00u32 != 0xDC00u32 { + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + // The next code unit is a low surrogate. + let astral: char = unsafe { ++ // Safety: We can rely on non_ascii being 0xD800-0xDBFF since the high bits are 0xD800 ++ // Then, (non_ascii << 10 - 0xD800 << 10) becomes between (0 to 0x3FF) << 10, which is between ++ // 0x400 to 0xffc00. Adding the 0x10000 gives a range of 0x10400 to 0x10fc00. Subtracting the 0xDC00 ++ // gives 0x2800 to 0x102000 ++ // The second term is between 0xDC00 and 0xDFFF from the check above. This gives a maximum ++ // possible range of (0x10400 + 0xDC00) to (0x102000 + 0xDFFF) which is 0x1E000 to 0x10ffff. ++ // This is in range. ++ // ++ // From a Unicode principles perspective this can also be verified as we have checked that `non_ascii` is a high surrogate ++ // (0xD800..=0xDBFF), and that `second` is a low surrogate (`0xDC00..=0xDFFF`), and we are applying reverse of the UTC16 transformation ++ // algorithm <https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF>, by applying the high surrogate - 0xD800 to the ++ // high ten bits, and the low surrogate - 0xDc00 to the low ten bits, and then adding 0x10000 + ::core::char::from_u32_unchecked( + (u32::from(non_ascii) << 10) + second + - (((0xD800u32 << 10) - 0x1_0000u32) + 0xDC00u32), + ) + }; + return ( + EncoderResult::Unmappable(astral), + converted + 2, // +2 `for non_ascii` and `second` +@@ -451,52 +502,63 @@ impl SingleByteEncoder { + converted, + ); + } + return ( + EncoderResult::unmappable_from_bmp(non_ascii), + converted + 1, // +1 `for non_ascii` + converted, + ); ++ // Safety: This branch diverges, so no need to uphold invariants on `converted` + } + } + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted < length` due to the == above and can perform ++ // the unchecked read + let mut unit = unsafe { *(src.get_unchecked(converted)) }; + 'innermost: loop { ++ // Safety: This loop always begins with `converted < length`, see ++ // the invariant outside and the comment on the continue below + if unit > 127 { + non_ascii = unit; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: Can rely on converted < length + *(dst.get_unchecked_mut(converted)) = unit as u8; + } + converted += 1; ++ // `converted <= length` here + if unit < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: `converted < length` due to the == above. The read is safe. + unit = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: This only happens if `converted < length`, maintaining it + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; ++ // Safety: All other routes to here diverge so the continue is the only ++ // way to run the innermost loop. + } + } + } + } + } + } + } + +diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs +--- third_party/rust/encoding_rs/src/x_user_defined.rs ++++ third_party/rust/encoding_rs/src/x_user_defined.rs +@@ -9,22 +9,23 @@ + + use super::*; + use crate::handles::*; + use crate::variant::*; + + cfg_if! { + if #[cfg(feature = "simd-accel")] { + use simd_funcs::*; +- use packed_simd::u16x8; ++ use core::simd::u16x8; ++ use core::simd::cmp::SimdPartialOrd; + + #[inline(always)] + fn shift_upper(unpacked: u16x8) -> u16x8 { + let highest_ascii = u16x8::splat(0x7F); +- unpacked + unpacked.gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } ++ unpacked + unpacked.simd_gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } + } else { + } + } + + pub struct UserDefinedDecoder; + + impl UserDefinedDecoder { + pub fn new() -> VariantDecoder { +@@ -111,20 +112,25 @@ impl UserDefinedDecoder { + } else { + (DecoderResult::InputEmpty, src.len()) + }; + // Not bothering with alignment + let tail_start = length & !0xF; + let simd_iterations = length >> 4; + let src_ptr = src.as_ptr(); + let dst_ptr = dst.as_mut_ptr(); ++ // Safety: This is `for i in 0..length / 16` + for i in 0..simd_iterations { ++ // Safety: This is in bounds: length is the minumum valid length for both src/dst ++ // and i ranges to length/16, so multiplying by 16 will always be `< length` and can do ++ // a 16 byte read + let input = unsafe { load16_unaligned(src_ptr.add(i * 16)) }; + let (first, second) = simd_unpack(input); + unsafe { ++ // Safety: same as above, but this is two consecutive 8-byte reads + store8_unaligned(dst_ptr.add(i * 16), shift_upper(first)); + store8_unaligned(dst_ptr.add((i * 16) + 8), shift_upper(second)); + } + } + let src_tail = &src[tail_start..length]; + let dst_tail = &mut dst[tail_start..length]; + src_tail + .iter() diff --git a/www/librewolf/files/patch-rust-1.78.0-arm b/www/librewolf/files/patch-rust-1.78.0-arm new file mode 100644 index 000000000000..8bef1af506f3 --- /dev/null +++ b/www/librewolf/files/patch-rust-1.78.0-arm @@ -0,0 +1,60 @@ +Relevant bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1882291 + + +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -4580,6 +4580,7 @@ dependencies = [ + version = "0.3.0" + dependencies = [ + "libc", ++ "version_check", + ] + + [[package]] +diff --git a/gfx/qcms/Cargo.toml b/gfx/qcms/Cargo.toml +--- gfx/qcms/Cargo.toml ++++ gfx/qcms/Cargo.toml +@@ -18,5 +18,8 @@ + iccv4-enabled = [] + cmyk = [] + + [dependencies] + libc = {version = "0.2", optional = true } ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/gfx/qcms/build.rs b/gfx/qcms/build.rs +new file mode 100644 +--- /dev/null ++++ gfx/qcms/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/gfx/qcms/src/lib.rs b/gfx/qcms/src/lib.rs +--- gfx/qcms/src/lib.rs ++++ gfx/qcms/src/lib.rs +@@ -5,13 +5,15 @@ + #![allow(non_camel_case_types)] + #![allow(non_snake_case)] + #![allow(non_upper_case_globals)] + // These are needed for the neon SIMD code and can be removed once the MSRV supports the + // instrinsics we use +-#![cfg_attr(feature = "neon", feature(stdsimd))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_neon_intrinsics))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_feature_detection))] ++#![cfg_attr(all(not(stdsimd_split), target_arch = "arm", feature = "neon"), feature(stdsimd))] + #![cfg_attr( +- feature = "neon", ++ all(target_arch = "arm", feature = "neon"), + feature(arm_target_feature, raw_ref_op) + + )] + + /// These values match the Rendering Intent values from the ICC spec + diff --git a/www/librtcdcpp/Makefile b/www/librtcdcpp/Makefile index a4f02f46b08c..120ddac8e198 100644 --- a/www/librtcdcpp/Makefile +++ b/www/librtcdcpp/Makefile @@ -10,6 +10,8 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.md BROKEN= build breaks with fmt-9.1.0, see https://github.com/chadnickbok/librtcdcpp/issues/44 +DEPRECATED= Dead upstream fails to build +EXPIRATION_DATE=2024-05-31 BUILD_DEPENDS= spdlog>0:devel/spdlog LIB_DEPENDS= libnice.so:net-im/libnice \ diff --git a/www/links/Makefile b/www/links/Makefile index d52d5f3f0090..9238a6d50b11 100644 --- a/www/links/Makefile +++ b/www/links/Makefile @@ -1,6 +1,6 @@ PORTNAME= links PORTVERSION= 2.29 -PORTREVISION= 4 +PORTREVISION= 5 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= http://links.twibright.com/download/ diff --git a/www/linux-chrome/Makefile b/www/linux-chrome/Makefile new file mode 100644 index 000000000000..ab4d12d21345 --- /dev/null +++ b/www/linux-chrome/Makefile @@ -0,0 +1,58 @@ +PORTNAME= chrome +PORTVERSION= ${CHROME_VER} +PORTREVISION= 1 +CATEGORIES= www linux +MASTER_SITES= https://dl.google.com/linux/chrome/rpm/stable/x86_64/ +DISTNAME= google-${PORTNAME}-stable-${CHROME_VER}-${CHROME_BUILD}.x86_64 +PKGNAMEPREFIX= linux- + +MAINTAINER= chromium@FreeBSD.org +COMMENT= Google web browser based on WebKit +WWW= https://www.chromium.org/Home + +RUN_DEPENDS= linux-rl9-wget>0:ftp/linux-rl9-wget \ + linux-rl9-gnupg2>0:security/linux-rl9-gnupg \ + update-mime-database:misc/shared-mime-info + +USES= cpe desktop-file-utils gnome linux:rl9 shared-mime-info shebangfix +USE_LINUX= alsalib alsa-plugins-oss alsa-plugins-pulseaudio ca-certificates \ + cups-libs curl dbuslibs dri ffmpeg-libs gstreamer1-libav \ + gtk3 libunistring nss p11-kit sqlite3 xorglibs +ONLY_FOR_ARCHS= amd64 + +SHEBANG_FILES= opt/google/chrome/google-chrome + +NO_BUILD= yes +NO_WRKSUBDIR= yes + +EXTRACT_SUFX?= .rpm +EXTRACT_SUFX_aarch64?= .aarch64${EXTRACT_SUFX} +EXTRACT_SUFX_amd64?= .x86_64${EXTRACT_SUFX} +SRC_SUFX?= .src${EXTRACT_SUFX} + +REINPLACE_ARGS= -i "" + +CHROME_VER?= 121.0.6167.160 +CHROME_BUILD?= 1 + +DATADIR= ${PREFIX}/share/${PORTNAME} +DOCSDIR= ${PREFIX}/share/doc/${PORTNAME} + +OPTIONS_DEFINE= DOCS + +SUB_FILES= google-chrome + +post-extract: + @${REINPLACE_CMD} -e 's|/usr/bin/google-chrome-stable|${LOCALBASE}/bin/google-chrome|' \ + ${WRKSRC}/usr/share/applications/google-chrome.desktop + +do-install: + ${INSTALL_SCRIPT} ${WRKDIR}/google-chrome ${STAGEDIR}${PREFIX}/bin + cd ${WRKSRC}/opt/google && ${CP} -r chrome ${STAGEDIR}${PREFIX}/share + cd ${WRKSRC}/usr/share && ${COPYTREE_SHARE} \* ${STAGEDIR}${PREFIX}/share +.for sz in 16 24 32 48 64 128 256 + ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${sz}x${sz}/apps + ${CP} ${STAGEDIR}${DATADIR}/product_logo_${sz}.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/${sz}x${sz}/apps/google-chrome.png +.endfor + +.include <bsd.port.mk> diff --git a/www/linux-chrome/distinfo b/www/linux-chrome/distinfo new file mode 100644 index 000000000000..ab7664678cc5 --- /dev/null +++ b/www/linux-chrome/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1707749505 +SHA256 (google-chrome-stable-121.0.6167.160-1.x86_64.rpm) = b9917ae1c7d5599e0db295c1abc3c311161577210d84c110d78ff729ecb9560f +SIZE (google-chrome-stable-121.0.6167.160-1.x86_64.rpm) = 108535521 diff --git a/www/linux-chrome/files/google-chrome.in b/www/linux-chrome/files/google-chrome.in new file mode 100644 index 000000000000..557e7ca74a3d --- /dev/null +++ b/www/linux-chrome/files/google-chrome.in @@ -0,0 +1,20 @@ +#!/bin/sh + +get_pa_sock_path() +{ + PA_SOCK_PATH=$(sockstat | awk -v me=$(whoami) -F'[ \t]+' ' + $1 == me && $2 == "pulseaudio" && $6 ~ /native/ { + print $6; + exit 0 + }' + ) +} + +get_pa_sock_path +[ -S "$PA_SOCK_PATH" ] && export PULSE_SERVER=unix:$PA_SOCK_PATH && export PULSE_COOKIE="~/.config/pulse/cookie" + +export CHROME_PATH="%%DATADIR%%/chrome" +export CHROME_WRAPPER="$(readlink -f "$0")" +export LIBGL_DRI3_DISABLE=1 + +exec "$CHROME_PATH" --no-sandbox --no-zygote --test-type --v=0 --password-store=basic "$@" diff --git a/www/linux-chrome/pkg-descr b/www/linux-chrome/pkg-descr new file mode 100644 index 000000000000..68ef078870ec --- /dev/null +++ b/www/linux-chrome/pkg-descr @@ -0,0 +1,6 @@ +Chrome is an open-source browser project that aims to build a safer, +faster, and more stable way for all users to experience the web. + +The Chrome website contains design documents, architecture overviews, +testing information, and more to help you learn to build and work with +the Chrome source code. diff --git a/www/linux-chrome/pkg-plist b/www/linux-chrome/pkg-plist new file mode 100644 index 000000000000..15aa4887f88b --- /dev/null +++ b/www/linux-chrome/pkg-plist @@ -0,0 +1,104 @@ +bin/google-chrome +share/appdata/google-chrome.appdata.xml +share/applications/google-chrome.desktop +%%DATADIR%%/CHROME_VERSION_EXTRA +%%DATADIR%%/MEIPreload/manifest.json +%%DATADIR%%/MEIPreload/preloaded_data.pb +%%DATADIR%%/WidevineCdm/LICENSE +%%DATADIR%%/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so +%%DATADIR%%/WidevineCdm/manifest.json +%%DATADIR%%/chrome +%%DATADIR%%/chrome-management-service +%%DATADIR%%/chrome-sandbox +%%DATADIR%%/chrome_100_percent.pak +%%DATADIR%%/chrome_200_percent.pak +%%DATADIR%%/chrome_crashpad_handler +%%DATADIR%%/default-app-block +%%DATADIR%%/default_apps/external_extensions.json +%%DATADIR%%/google-chrome +%%DATADIR%%/icudtl.dat +%%DATADIR%%/libEGL.so +%%DATADIR%%/libGLESv2.so +%%DATADIR%%/liboptimization_guide_internal.so +%%DATADIR%%/libqt5_shim.so +%%DATADIR%%/libqt6_shim.so +%%DATADIR%%/libvk_swiftshader.so +%%DATADIR%%/libvulkan.so.1 +%%DATADIR%%/locales/af.pak +%%DATADIR%%/locales/am.pak +%%DATADIR%%/locales/ar.pak +%%DATADIR%%/locales/bg.pak +%%DATADIR%%/locales/bn.pak +%%DATADIR%%/locales/ca.pak +%%DATADIR%%/locales/cs.pak +%%DATADIR%%/locales/da.pak +%%DATADIR%%/locales/de.pak +%%DATADIR%%/locales/el.pak +%%DATADIR%%/locales/en-GB.pak +%%DATADIR%%/locales/en-US.pak +%%DATADIR%%/locales/es-419.pak +%%DATADIR%%/locales/es.pak +%%DATADIR%%/locales/et.pak +%%DATADIR%%/locales/fa.pak +%%DATADIR%%/locales/fi.pak +%%DATADIR%%/locales/fil.pak +%%DATADIR%%/locales/fr.pak +%%DATADIR%%/locales/gu.pak +%%DATADIR%%/locales/he.pak +%%DATADIR%%/locales/hi.pak +%%DATADIR%%/locales/hr.pak +%%DATADIR%%/locales/hu.pak +%%DATADIR%%/locales/id.pak +%%DATADIR%%/locales/it.pak +%%DATADIR%%/locales/ja.pak +%%DATADIR%%/locales/kn.pak +%%DATADIR%%/locales/ko.pak +%%DATADIR%%/locales/lt.pak +%%DATADIR%%/locales/lv.pak +%%DATADIR%%/locales/ml.pak +%%DATADIR%%/locales/mr.pak +%%DATADIR%%/locales/ms.pak +%%DATADIR%%/locales/nb.pak +%%DATADIR%%/locales/nl.pak +%%DATADIR%%/locales/pl.pak +%%DATADIR%%/locales/pt-BR.pak +%%DATADIR%%/locales/pt-PT.pak +%%DATADIR%%/locales/ro.pak +%%DATADIR%%/locales/ru.pak +%%DATADIR%%/locales/sk.pak +%%DATADIR%%/locales/sl.pak +%%DATADIR%%/locales/sr.pak +%%DATADIR%%/locales/sv.pak +%%DATADIR%%/locales/sw.pak +%%DATADIR%%/locales/ta.pak +%%DATADIR%%/locales/te.pak +%%DATADIR%%/locales/th.pak +%%DATADIR%%/locales/tr.pak +%%DATADIR%%/locales/uk.pak +%%DATADIR%%/locales/ur.pak +%%DATADIR%%/locales/vi.pak +%%DATADIR%%/locales/zh-CN.pak +%%DATADIR%%/locales/zh-TW.pak +%%DATADIR%%/product_logo_128.png +%%DATADIR%%/product_logo_16.png +%%DATADIR%%/product_logo_24.png +%%DATADIR%%/product_logo_256.png +%%DATADIR%%/product_logo_32.png +%%DATADIR%%/product_logo_32.xpm +%%DATADIR%%/product_logo_48.png +%%DATADIR%%/product_logo_64.png +%%DATADIR%%/resources.pak +%%DATADIR%%/v8_context_snapshot.bin +%%DATADIR%%/vk_swiftshader_icd.json +%%DATADIR%%/xdg-mime +%%DATADIR%%/xdg-settings +share/gnome-control-center/default-apps/google-chrome.xml +share/icons/hicolor/128x128/apps/google-chrome.png +share/icons/hicolor/16x16/apps/google-chrome.png +share/icons/hicolor/24x24/apps/google-chrome.png +share/icons/hicolor/256x256/apps/google-chrome.png +share/icons/hicolor/32x32/apps/google-chrome.png +share/icons/hicolor/48x48/apps/google-chrome.png +share/icons/hicolor/64x64/apps/google-chrome.png +share/man/man1/google-chrome-stable.1.gz +share/man/man1/google-chrome.1.gz diff --git a/www/linux-rl9-libnghttp2/Makefile b/www/linux-rl9-libnghttp2/Makefile new file mode 100644 index 000000000000..4b09fb0f6068 --- /dev/null +++ b/www/linux-rl9-libnghttp2/Makefile @@ -0,0 +1,23 @@ +PORTNAME= libnghttp2 +PORTVERSION= 1.43.0 +DISTVERSIONSUFFIX= -5.el9_3.1 +CATEGORIES= www devel linux + +MAINTAINER= emulation@FreeBSD.org +COMMENT= HTTP/2.0 C Library (Rocky Linux ${LINUX_DIST_VER}) +WWW= https://nghttp2.org/ \ + https://github.com/nghttp2/nghttp2 + +LICENSE= MIT + +USES= linux:rl9 +USE_LDCONFIG= yes +USE_LINUX= icu +USE_LINUX_RPM= yes + +LIB_DISTNAMES= ${PORTNAME}${PKGNAMESUFFIX}-${DISTVERSIONFULL} +SRC_DISTFILES= nghttp2-${DISTVERSIONFULL}${SRC_SUFX}:SOURCE + +DESCR= ${.CURDIR}/../${PORTNAME}/pkg-descr + +.include <bsd.port.mk> diff --git a/www/linux-rl9-libnghttp2/distinfo b/www/linux-rl9-libnghttp2/distinfo new file mode 100644 index 000000000000..c1b415682914 --- /dev/null +++ b/www/linux-rl9-libnghttp2/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1707754379 +SHA256 (rocky/l/libnghttp2-1.43.0-5.el9_3.1.aarch64.rpm) = 7e1f1bab734a2d6f7e01e0d20ac7fddaaf64bb1b8c8beb78d7f78270cb5ccd3c +SIZE (rocky/l/libnghttp2-1.43.0-5.el9_3.1.aarch64.rpm) = 72916 +SHA256 (rocky/l/libnghttp2-1.43.0-5.el9_3.1.x86_64.rpm) = fff8c687acf6662d48fd267ebad37750e2dd015a821a2c1f8d54a47282ff7462 +SIZE (rocky/l/libnghttp2-1.43.0-5.el9_3.1.x86_64.rpm) = 73737 +SHA256 (rocky/n/nghttp2-1.43.0-5.el9_3.1.src.rpm) = 45ae8fd2dad2adaf775eb8eaab1835b2b2099c2412ff3d01b916d08cf0930c78 +SIZE (rocky/n/nghttp2-1.43.0-5.el9_3.1.src.rpm) = 3993941 diff --git a/www/linux-rl9-libnghttp2/pkg-plist.aarch64 b/www/linux-rl9-libnghttp2/pkg-plist.aarch64 new file mode 100644 index 000000000000..7d5506d98520 --- /dev/null +++ b/www/linux-rl9-libnghttp2/pkg-plist.aarch64 @@ -0,0 +1,4 @@ +usr/lib/.build-id/09/4ba311831c03c27d6c64b497e5f0fd69bf97df +usr/lib64/libnghttp2.so.14 +usr/lib64/libnghttp2.so.14.20.1 +usr/share/licenses/libnghttp2/COPYING diff --git a/www/linux-rl9-libnghttp2/pkg-plist.amd64 b/www/linux-rl9-libnghttp2/pkg-plist.amd64 new file mode 100644 index 000000000000..22c783ec30b6 --- /dev/null +++ b/www/linux-rl9-libnghttp2/pkg-plist.amd64 @@ -0,0 +1,4 @@ +usr/lib/.build-id/09/cc864ee59a86b20136c712562f526f1a3ef766 +usr/lib64/libnghttp2.so.14 +usr/lib64/libnghttp2.so.14.20.1 +usr/share/licenses/libnghttp2/COPYING diff --git a/www/loco/Makefile b/www/loco/Makefile index 3c2fb7b784f8..d806b65c9aec 100644 --- a/www/loco/Makefile +++ b/www/loco/Makefile @@ -1,6 +1,6 @@ PORTNAME= loco DISTVERSION= g20240225 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www devel PKGNAMESUFFIX= -web-framework diff --git a/www/luakit-devel/Makefile b/www/luakit-devel/Makefile index 06248d7af171..542a86c39496 100644 --- a/www/luakit-devel/Makefile +++ b/www/luakit-devel/Makefile @@ -1,7 +1,6 @@ PORTNAME= luakit -DISTVERSION= 2.3.3-0 -DISTVERSIONSUFFIX= -g68e4ffc -PORTREVISION= 3 +DISTVERSION= 2.3.6-7 +DISTVERSIONSUFFIX= -g0bc0e39 PORTEPOCH= 2 CATEGORIES= www PKGNAMESUFFIX= -devel @@ -13,17 +12,13 @@ WWW= https://luakit.github.io LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING.GPLv3 -BUILD_DEPENDS= help2man:misc/help2man \ - ${LUA_MODLIBDIR}/lfs.so:devel/luafilesystem@${LUA_FLAVOR} -LIB_DEPENDS= libdbus-glib-1.so:devel/dbus-glib \ - libharfbuzz.so:print/harfbuzz \ +BUILD_DEPENDS= ${LUA_MODLIBDIR}/lfs.so:devel/luafilesystem@${LUA_FLAVOR} +LIB_DEPENDS= libharfbuzz.so:print/harfbuzz \ libsoup-2.4.so:devel/libsoup \ - libfreetype.so:print/freetype2 \ - libwebkit2gtk-4.0.so:www/webkit2-gtk3 \ - libfontconfig.so:x11-fonts/fontconfig + libwebkit2gtk-4.0.so:www/webkit2-gtk3 RUN_DEPENDS= ${LUA_PKGNAMEPREFIX}luafilesystem>=0:devel/luafilesystem@${LUA_FLAVOR} -USES= compiler:c++11-lang desktop-file-utils gettext-runtime gmake \ +USES= compiler:c++11-lang desktop-file-utils gmake \ gnome lua:51 pkgconfig sqlite USE_GITHUB= yes GH_ACCOUNT= luakit @@ -37,6 +32,7 @@ PORTDATA= * PORTDOCS= * OPTIONS_DEFINE= DOCS LUAJIT +OPTIONS_DEFAULT= LUAJIT LUAJIT_DESC= Use the Just-In-Time compiler for lua LUAJIT_LIB_DEPENDS= libluajit-5.1.so:lang/luajit LUAJIT_MAKE_ARGS= USE_LUAJIT=1 @@ -44,9 +40,9 @@ LUAJIT_MAKE_ARGS_OFF= USE_LUAJIT=0 post-extract: @${REINPLACE_CMD} -e \ - 's|share/man|man| ; s|luakit/doc|doc/luakit| ; \ + 's|luakit/doc|doc/luakit| ; \ s|/etc/xdg|${PREFIX}/etc/xdg| ; \ - s|gnu99|gnu11| ; s|-ggdb||' \ + s|-ggdb||' \ ${WRKSRC}/config.mk @${REINPLACE_CMD} -e 's|bin/env lua|&${LUA_VER_STR}|' \ ${WRKSRC}/build-utils/gentokens.lua diff --git a/www/luakit-devel/distinfo b/www/luakit-devel/distinfo index 4227a0757f63..7c837b0275eb 100644 --- a/www/luakit-devel/distinfo +++ b/www/luakit-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1673789816 -SHA256 (luakit-luakit-2.3.3-0-g68e4ffc_GH0.tar.gz) = 7576866112a7a1c3e3162d5e83025088959b8979147e823e87f573997278cbcb -SIZE (luakit-luakit-2.3.3-0-g68e4ffc_GH0.tar.gz) = 507448 +TIMESTAMP = 1711344330 +SHA256 (luakit-luakit-2.3.6-7-g0bc0e39_GH0.tar.gz) = 4a95e772ae1870a8c10fdd6d606636e29a4c7b9bc190f1040df012152a0826fd +SIZE (luakit-luakit-2.3.6-7-g0bc0e39_GH0.tar.gz) = 511284 diff --git a/www/luakit-devel/files/patch-config.mk b/www/luakit-devel/files/patch-config.mk new file mode 100644 index 000000000000..75fd733c4427 --- /dev/null +++ b/www/luakit-devel/files/patch-config.mk @@ -0,0 +1,15 @@ +--- config.mk.orig 2024-03-25 05:36:59 UTC ++++ config.mk +@@ -98,10 +98,10 @@ PKGS += gthread-2.0 + # Packages required to build luakit. + PKGS += gtk+-3.0 + PKGS += gthread-2.0 +-PKGS += webkit2gtk-4.1 ++PKGS += webkit2gtk-4.0 + PKGS += sqlite3 + PKGS += $(LUA_PKG_NAME) +-PKGS += javascriptcoregtk-4.1 ++PKGS += javascriptcoregtk-4.0 + + # Check user has correct packages installed (and found by pkg-config). + PKGS_OK := $(shell $(PKG_CONFIG) --print-errors --exists $(PKGS) && echo 1) diff --git a/www/lux/Makefile b/www/lux/Makefile index 166f97805be9..39179e07d5f6 100644 --- a/www/lux/Makefile +++ b/www/lux/Makefile @@ -1,7 +1,7 @@ PORTNAME= lux DISTVERSIONPREFIX= v DISTVERSION= 0.23.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/lychee/Makefile b/www/lychee/Makefile index bde0f7f6771d..017c2524e6de 100644 --- a/www/lychee/Makefile +++ b/www/lychee/Makefile @@ -1,7 +1,7 @@ PORTNAME= lychee DISTVERSIONPREFIX= v DISTVERSION= 0.13.0 -PORTREVISION= 8 +PORTREVISION= 9 CATEGORIES= www net MAINTAINER= pizzamig@FreeBSD.org diff --git a/www/lynx-current/Makefile b/www/lynx-current/Makefile index 8833e79f4901..b7cb34d555ec 100644 --- a/www/lynx-current/Makefile +++ b/www/lynx-current/Makefile @@ -1,6 +1,5 @@ PORTNAME= lynx -PORTVERSION= 2.9.0d12 -PORTREVISION= 1 +PORTVERSION= 2.9.1 CATEGORIES= www MASTER_SITES= http://invisible-mirror.net/archives/lynx/tarballs/ \ ftp://ftp.invisible-island.net/lynx/tarballs/ diff --git a/www/lynx-current/distinfo b/www/lynx-current/distinfo index 1203abcac003..648ff9172a58 100644 --- a/www/lynx-current/distinfo +++ b/www/lynx-current/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686666300 -SHA256 (lynx2.9.0dev.12.tar.bz2) = a6455b159d00776d8ec1051285c972dc1f0c552d0571a0cff02a23ec146ee8e5 -SIZE (lynx2.9.0dev.12.tar.bz2) = 2762036 +TIMESTAMP = 1714658452 +SHA256 (lynx2.9.1.tar.bz2) = a6db9b22c20df435df3757925a505531ce9a514d134742e935d71aa5c41339c5 +SIZE (lynx2.9.1.tar.bz2) = 2783698 diff --git a/www/lynx-current/files/patch-makefile.in b/www/lynx-current/files/patch-makefile.in index fa6f397b3221..3b178a406f14 100644 --- a/www/lynx-current/files/patch-makefile.in +++ b/www/lynx-current/files/patch-makefile.in @@ -1,15 +1,15 @@ ---- makefile.in.orig 2023-06-13 14:30:49 UTC +--- makefile.in.orig 2024-05-02 14:02:41 UTC +++ makefile.in -@@ -327,7 +327,7 @@ install-doc : $(DOCDIR) $(HELPDIR) - cd $(HELPDIR) && rm -f $$name ;\ - r= ;\ - test "$(LN_S)" = "ln -s" || r=`echo $(helpdir)|sed -e "s%[^/]\+%..%g" -e "s%^.%%"`; \ -- cd $(HELPDIR) && ( $(LN_S) $$r$(docdir)/$$name . || cp $(DOCDIR)/$$name . );\ -+ cd $(HELPDIR) && ( $(LN_S) ../doc/lynx/$$name . || cp $(DOCDIR)/$$name . );\ +@@ -329,7 +329,7 @@ install-doc : $(DOCDIR) $(HELPDIR) + echo ".. relative: $$r"; \ + for name in COPYING COPYHEADER; do \ + cd $(HELPDIR) && rm -f $$name;\ +- cd $(HELPDIR) && ( $(LN_S) $$r/$$name $$name || cp $(DOCDIR)/$$name . );\ ++ cd $(HELPDIR) && ( $(LN_S) ../doc/lynx/$$name $$name || cp $(DOCDIR)/$$name . );\ done';\ - $(SHELL) -c 'set -x; \ - case `id|sed -e "s/(.*//"` in \ -@@ -405,14 +405,10 @@ install-help : htmlized_cfg help_files.sed $(HELPDIR) + $(SHELL) -c '\ + i=`id|sed -e "s/(.*//"`; \ +@@ -409,14 +409,10 @@ install-help : htmlized_cfg help_files.sed $(HELPDIR) if test "$(COMPRESS_PROG)" != "" ; then \ (cd $(HELPDIR) && $(COMPRESS_PROG) $$files ) \ fi' @@ -28,18 +28,18 @@ @ECHO_CC@sed -e '/^HELPFILE:http/s!^!#!' \ -e '/^#HELPFILE:file/s!#!!' \ $(SYSCONFDIR)/lynx.tmp | \ -@@ -420,8 +416,8 @@ install-help : htmlized_cfg help_files.sed $(HELPDIR) +@@ -424,8 +420,8 @@ install-help : htmlized_cfg help_files.sed $(HELPDIR) $(SHELL) $(scripts_dir)/cfg_path.sh lynx_doc $(helpdir) | \ sed -e '/^HELPFILE:file/s!$$!$(COMPRESS_EXT)!' \ -e '/^HELPFILE:file/s!$(COMPRESS_EXT)$(COMPRESS_EXT)$$!$(COMPRESS_EXT)!' \ - >$(SYSCONFDIR)/lynx.cfg ;\ - chmod 644 $(SYSCONFDIR)/lynx.cfg ;\ -+ >$(SYSCONFDIR)/lynx.cfg.sample; \ -+ chmod 644 $(SYSCONFDIR)/lynx.cfg.sample; \ ++ >$(SYSCONFDIR)/lynx.cfg.sample ;\ ++ chmod 644 $(SYSCONFDIR)/lynx.cfg.sample ;\ rm -f $(SYSCONFDIR)/lynx.tmp LYHelp.h : help_files.sed $(srcdir)/LYHelp.hin -@@ -444,17 +440,15 @@ cfg_defs.h : $(scripts_dir)/cfg_defs.sh $(scripts_dir) +@@ -448,17 +444,15 @@ install-cfg : $(SYSCONFDIR) @$(SHELL) -c 'SHELL=$(SHELL) FGREP="$(FGREP)" $(SHELL) $(scripts_dir)/cfg_defs.sh $(srcdir)' install-cfg : $(SYSCONFDIR) diff --git a/www/lynx-current/pkg-plist b/www/lynx-current/pkg-plist index e82e068cc47a..ebb2de2f84e7 100644 --- a/www/lynx-current/pkg-plist +++ b/www/lynx-current/pkg-plist @@ -55,6 +55,7 @@ bin/lynx %%PORTDOCS%%%%DOCSDIR%%/samples/lynxdump %%PORTDOCS%%%%DOCSDIR%%/samples/mailcap %%PORTDOCS%%%%DOCSDIR%%/samples/mailto-form.pl +%%PORTDOCS%%%%DOCSDIR%%/samples/mhtml-tool %%PORTDOCS%%%%DOCSDIR%%/samples/midnight.lss %%PORTDOCS%%%%DOCSDIR%%/samples/mild-colors.lss %%PORTDOCS%%%%DOCSDIR%%/samples/mime.types diff --git a/www/lynx/Makefile b/www/lynx/Makefile index 5ddf23ecd2eb..b9a07252a75b 100644 --- a/www/lynx/Makefile +++ b/www/lynx/Makefile @@ -1,6 +1,6 @@ PORTNAME= lynx PORTVERSION= 2.8.9.1 -PORTREVISION= 2 +PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= http://invisible-mirror.net/archives/lynx/tarballs/ \ diff --git a/www/lzr/Makefile b/www/lzr/Makefile index 21c3c3bbce5f..4ed1c248e85b 100644 --- a/www/lzr/Makefile +++ b/www/lzr/Makefile @@ -1,7 +1,7 @@ PORTNAME= lzr DISTVERSIONPREFIX= v DISTVERSION= 1 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/mattermost-server/Makefile b/www/mattermost-server/Makefile index 27cbc5203ed2..6d361986c695 100644 --- a/www/mattermost-server/Makefile +++ b/www/mattermost-server/Makefile @@ -1,5 +1,5 @@ PORTNAME= mattermost -PORTVERSION= 8.1.12 +PORTVERSION= 9.5.5 CATEGORIES= www MASTER_SITES= LOCAL/decke PKGNAMESUFFIX= -server @@ -17,11 +17,14 @@ ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss \ mattermost-webapp>=${PORTVERSION}:www/mattermost-webapp -USES= go:modules tar:xz +USES= go:1.22,modules tar:xz USE_RC_SUBR= mattermostd GO_TARGET= ./cmd/mattermost ./scripts/config_generator -GO_BUILDFLAGS= -ldflags="-X github.com/mattermost/mattermost/server/public/model.BuildNumber=${PORTVERSION}" +GO_BUILDFLAGS= -ldflags=" \ + -X github.com/mattermost/mattermost/server/public/model.BuildNumber=${PORTVERSION} \ + -X github.com/mattermost/mattermost/server/public/model.BuildHashEnterprise=none \ + -X github.com/mattermost/mattermost/server/public/model.BuildEnterpriseReady=false" WRKSRC_SUBDIR= server WWWDIR= ${PREFIX}/www/mattermost diff --git a/www/mattermost-server/distinfo b/www/mattermost-server/distinfo index 4a4c7068ec05..2de162a3e8fb 100644 --- a/www/mattermost-server/distinfo +++ b/www/mattermost-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713884988 -SHA256 (mattermost-8.1.12.tar.xz) = f4f89d118657a2fd3b3b6c389f9806f69934a6c42b3fafd55f454d42e93dea7b -SIZE (mattermost-8.1.12.tar.xz) = 137143560 +TIMESTAMP = 1716146796 +SHA256 (mattermost-9.5.5.tar.xz) = 91f84ee17f840c3a6d4742afa58f16b61dca49df3329d7dbbb764ad449d946fd +SIZE (mattermost-9.5.5.tar.xz) = 104038592 diff --git a/www/mattermost-server/pkg-plist b/www/mattermost-server/pkg-plist index 5fe1d1d7bdf5..f083b7ba3098 100644 --- a/www/mattermost-server/pkg-plist +++ b/www/mattermost-server/pkg-plist @@ -2,25 +2,66 @@ bin/mattermostd %%ETCDIR%%/config.json.sample %%WWWDIR%%/fonts/OFL.txt %%WWWDIR%%/fonts/nunito-bold.ttf +%%WWWDIR%%/i18n/am.json +%%WWWDIR%%/i18n/be.json %%WWWDIR%%/i18n/bg.json +%%WWWDIR%%/i18n/bn.json +%%WWWDIR%%/i18n/br.json +%%WWWDIR%%/i18n/ca.json +%%WWWDIR%%/i18n/cs.json +%%WWWDIR%%/i18n/da.json %%WWWDIR%%/i18n/de.json +%%WWWDIR%%/i18n/el.json %%WWWDIR%%/i18n/en.json %%WWWDIR%%/i18n/en_AU.json %%WWWDIR%%/i18n/es.json +%%WWWDIR%%/i18n/et.json +%%WWWDIR%%/i18n/eu.json %%WWWDIR%%/i18n/fa.json +%%WWWDIR%%/i18n/fi.json +%%WWWDIR%%/i18n/fil.json %%WWWDIR%%/i18n/fr.json +%%WWWDIR%%/i18n/fy.json +%%WWWDIR%%/i18n/gl.json +%%WWWDIR%%/i18n/gu.json +%%WWWDIR%%/i18n/he.json +%%WWWDIR%%/i18n/hi.json +%%WWWDIR%%/i18n/hr.json %%WWWDIR%%/i18n/hu.json +%%WWWDIR%%/i18n/id.json +%%WWWDIR%%/i18n/is.json %%WWWDIR%%/i18n/it.json %%WWWDIR%%/i18n/ja.json +%%WWWDIR%%/i18n/ka.json +%%WWWDIR%%/i18n/kk.json +%%WWWDIR%%/i18n/kk_Latn.json +%%WWWDIR%%/i18n/km.json %%WWWDIR%%/i18n/ko.json +%%WWWDIR%%/i18n/la.json +%%WWWDIR%%/i18n/lo.json +%%WWWDIR%%/i18n/lt.json +%%WWWDIR%%/i18n/lv.json +%%WWWDIR%%/i18n/mk.json +%%WWWDIR%%/i18n/ml.json +%%WWWDIR%%/i18n/mn.json +%%WWWDIR%%/i18n/nb_NO.json +%%WWWDIR%%/i18n/ne.json %%WWWDIR%%/i18n/nl.json %%WWWDIR%%/i18n/pl.json +%%WWWDIR%%/i18n/pr.json %%WWWDIR%%/i18n/pt-BR.json +%%WWWDIR%%/i18n/pt.json %%WWWDIR%%/i18n/ro.json %%WWWDIR%%/i18n/ru.json +%%WWWDIR%%/i18n/si.json +%%WWWDIR%%/i18n/sl.json +%%WWWDIR%%/i18n/sq.json +%%WWWDIR%%/i18n/sr.json %%WWWDIR%%/i18n/sv.json +%%WWWDIR%%/i18n/th.json %%WWWDIR%%/i18n/tr.json %%WWWDIR%%/i18n/uk.json +%%WWWDIR%%/i18n/vi.json %%WWWDIR%%/i18n/zh-CN.json %%WWWDIR%%/i18n/zh-TW.json %%WWWDIR%%/templates/cloud_14_day_arrears.html @@ -28,6 +69,7 @@ bin/mattermostd %%WWWDIR%%/templates/cloud_45_day_arrears.html %%WWWDIR%%/templates/cloud_7_day_arrears.html %%WWWDIR%%/templates/cloud_90_day_arrears.html +%%WWWDIR%%/templates/cloud_renewal_notification.html %%WWWDIR%%/templates/cloud_upgrade_confirmation.html %%WWWDIR%%/templates/cloud_welcome_email.html %%WWWDIR%%/templates/deactivate_body.html @@ -39,6 +81,7 @@ bin/mattermostd %%WWWDIR%%/templates/globalrelay_compliance_export_message.html %%WWWDIR%%/templates/globalrelay_compliance_export_participant_row.html %%WWWDIR%%/templates/invite_body.html +%%WWWDIR%%/templates/ip_filters_changed.html %%WWWDIR%%/templates/license_up_for_renewal.html %%WWWDIR%%/templates/messages_notification.html %%WWWDIR%%/templates/mfa_change_body.html diff --git a/www/mattermost-webapp/Makefile b/www/mattermost-webapp/Makefile index 0f24cbf03616..fa2fa6235921 100644 --- a/www/mattermost-webapp/Makefile +++ b/www/mattermost-webapp/Makefile @@ -1,11 +1,10 @@ PORTNAME= mattermost-webapp -PORTVERSION= 8.1.12 +PORTVERSION= 9.5.5 DISTVERSIONPREFIX= v CATEGORIES= www MASTER_SITES= https://releases.mattermost.com/${PORTVERSION}/ DISTNAME= mattermost-${PORTVERSION}-linux-amd64 -# implicit-approval+ for decke MAINTAINER= bofh@FreeBSD.org COMMENT= Webapp of Mattermost server WWW= https://mattermost.org/ diff --git a/www/mattermost-webapp/distinfo b/www/mattermost-webapp/distinfo index c4daa214f9cf..efdaa5b74e0a 100644 --- a/www/mattermost-webapp/distinfo +++ b/www/mattermost-webapp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713886944 -SHA256 (mattermost-8.1.12-linux-amd64.tar.gz) = b7d4e7da870fbdd2cf8c8e3cc1c8869e1ddfc67157ff7d8ad701d9103ef8d6a8 -SIZE (mattermost-8.1.12-linux-amd64.tar.gz) = 439143345 +TIMESTAMP = 1716147712 +SHA256 (mattermost-9.5.5-linux-amd64.tar.gz) = b6076cf1e4c17a2b2e25c2e0b71eb33a21547152f5a14d0b2db3ea9a1e124145 +SIZE (mattermost-9.5.5-linux-amd64.tar.gz) = 451567672 diff --git a/www/mattermost-webapp/pkg-plist b/www/mattermost-webapp/pkg-plist index 04602c9456f3..3ef11193d35a 100644 --- a/www/mattermost-webapp/pkg-plist +++ b/www/mattermost-webapp/pkg-plist @@ -1,42 +1,43 @@ %%WWWDIR%%/client/1006.a82445890753b4cda610.js %%WWWDIR%%/client/1006.a82445890753b4cda610.js.map -%%WWWDIR%%/client/1295.4663738ed2b0ad59d067.css -%%WWWDIR%%/client/1295.4663738ed2b0ad59d067.css.map -%%WWWDIR%%/client/1295.f3200db42031cf83e89e.js -%%WWWDIR%%/client/1295.f3200db42031cf83e89e.js.map +%%WWWDIR%%/client/1011.3697a3888d12721cc558.js +%%WWWDIR%%/client/1011.3697a3888d12721cc558.js.map +%%WWWDIR%%/client/1011.b1f74ced71fa30073208.css +%%WWWDIR%%/client/1011.b1f74ced71fa30073208.css.map +%%WWWDIR%%/client/1072.150c7307f540483e0d8b.js +%%WWWDIR%%/client/1072.150c7307f540483e0d8b.js.map +%%WWWDIR%%/client/1191.43e6892f50bec3fc61fc.js +%%WWWDIR%%/client/1191.43e6892f50bec3fc61fc.js.LICENSE.txt +%%WWWDIR%%/client/1191.43e6892f50bec3fc61fc.js.map %%WWWDIR%%/client/131.27d015a613d464e45cfd.js %%WWWDIR%%/client/131.27d015a613d464e45cfd.js.map -%%WWWDIR%%/client/1393.2d889049b98aa657e508.js -%%WWWDIR%%/client/1393.2d889049b98aa657e508.js.map -%%WWWDIR%%/client/145.e00c004887ff14c77ba9.js -%%WWWDIR%%/client/145.e00c004887ff14c77ba9.js.map -%%WWWDIR%%/client/1467.02379b50da469d81f9ae.js -%%WWWDIR%%/client/1467.02379b50da469d81f9ae.js.map +%%WWWDIR%%/client/145.693f451cda1d3e15542a.js +%%WWWDIR%%/client/145.693f451cda1d3e15542a.js.map %%WWWDIR%%/client/1542.c90979dfc4aadbe945ba.js %%WWWDIR%%/client/1542.c90979dfc4aadbe945ba.js.LICENSE.txt %%WWWDIR%%/client/1542.c90979dfc4aadbe945ba.js.map %%WWWDIR%%/client/1599.c7c1807216b6490de5aa.js %%WWWDIR%%/client/1599.c7c1807216b6490de5aa.js.map +%%WWWDIR%%/client/1618.239b9912fb0a1e337f80.js +%%WWWDIR%%/client/1618.239b9912fb0a1e337f80.js.map %%WWWDIR%%/client/1728.da8582ec621992f97025.js %%WWWDIR%%/client/1728.da8582ec621992f97025.js.map %%WWWDIR%%/client/1741.531ae5dec955fbb092cd.js %%WWWDIR%%/client/1741.531ae5dec955fbb092cd.js.map -%%WWWDIR%%/client/1861.9fb4d14e6ddb7ccc2119.js -%%WWWDIR%%/client/1861.9fb4d14e6ddb7ccc2119.js.map %%WWWDIR%%/client/1929.4193052cf92a19393983.js %%WWWDIR%%/client/1929.4193052cf92a19393983.js.map %%WWWDIR%%/client/201.0d4bc4fb8306ec35595c.js %%WWWDIR%%/client/201.0d4bc4fb8306ec35595c.js.map -%%WWWDIR%%/client/2028.b5459e053877ad1a916d.js -%%WWWDIR%%/client/2028.b5459e053877ad1a916d.js.map -%%WWWDIR%%/client/209.6f4e1c4e53db70c63ffa.js -%%WWWDIR%%/client/209.6f4e1c4e53db70c63ffa.js.map -%%WWWDIR%%/client/2109.adbf6a20ab738d62c319.js -%%WWWDIR%%/client/2109.adbf6a20ab738d62c319.js.map -%%WWWDIR%%/client/2118.e59f41ec7122cc36df1c.js -%%WWWDIR%%/client/2118.e59f41ec7122cc36df1c.js.map -%%WWWDIR%%/client/2118.f8b28f6ca4b971c7a494.css -%%WWWDIR%%/client/2118.f8b28f6ca4b971c7a494.css.map +%%WWWDIR%%/client/2028.f513ca3163413ae6627e.js +%%WWWDIR%%/client/2028.f513ca3163413ae6627e.js.map +%%WWWDIR%%/client/209.e76e5510ceab7e286194.js +%%WWWDIR%%/client/209.e76e5510ceab7e286194.js.map +%%WWWDIR%%/client/2109.ccabb35de84e4671eecb.js +%%WWWDIR%%/client/2109.ccabb35de84e4671eecb.js.map +%%WWWDIR%%/client/2118.b0801b8c3c81bd54fb81.css +%%WWWDIR%%/client/2118.b0801b8c3c81bd54fb81.css.map +%%WWWDIR%%/client/2118.ce006e2b56da639a873e.js +%%WWWDIR%%/client/2118.ce006e2b56da639a873e.js.map %%WWWDIR%%/client/2193.54f570a10f45d153ebf7.js %%WWWDIR%%/client/2193.54f570a10f45d153ebf7.js.map %%WWWDIR%%/client/2195.f438052250f30dbfb459.js @@ -47,79 +48,76 @@ %%WWWDIR%%/client/2264.08eaae74afc2b4d47777.js.map %%WWWDIR%%/client/2277.175fe154198888acaca1.js %%WWWDIR%%/client/2277.175fe154198888acaca1.js.map -%%WWWDIR%%/client/2337.0c099202a718222b75ac.js -%%WWWDIR%%/client/2337.0c099202a718222b75ac.js.LICENSE.txt -%%WWWDIR%%/client/2337.0c099202a718222b75ac.js.map -%%WWWDIR%%/client/2440.38a9bfb3a4a3b8c951c1.css -%%WWWDIR%%/client/2440.38a9bfb3a4a3b8c951c1.css.map -%%WWWDIR%%/client/2445.e35742b66fb16166ac40.js -%%WWWDIR%%/client/2445.e35742b66fb16166ac40.js.map -%%WWWDIR%%/client/2462.38f46cd7f5f9088e4ae9.js -%%WWWDIR%%/client/2462.38f46cd7f5f9088e4ae9.js.LICENSE.txt -%%WWWDIR%%/client/2462.38f46cd7f5f9088e4ae9.js.map +%%WWWDIR%%/client/2317.a53bd586bb268ad8665e.css +%%WWWDIR%%/client/2317.a53bd586bb268ad8665e.css.map +%%WWWDIR%%/client/2317.b1ffec884ba46ebdaa7b.js +%%WWWDIR%%/client/2317.b1ffec884ba46ebdaa7b.js.map +%%WWWDIR%%/client/2440.f2ca37b5963eb47df25b.css +%%WWWDIR%%/client/2440.f2ca37b5963eb47df25b.css.map %%WWWDIR%%/client/2509.2f0b8f15a33fe2ab4335.js %%WWWDIR%%/client/2509.2f0b8f15a33fe2ab4335.js.map +%%WWWDIR%%/client/2514.41b4f83d1eb1943bb302.css +%%WWWDIR%%/client/2514.41b4f83d1eb1943bb302.css.map +%%WWWDIR%%/client/2514.6157291101610c9adbb5.js +%%WWWDIR%%/client/2514.6157291101610c9adbb5.js.LICENSE.txt +%%WWWDIR%%/client/2514.6157291101610c9adbb5.js.map %%WWWDIR%%/client/2534.9cd47e7cf931cba451f2.js %%WWWDIR%%/client/2534.9cd47e7cf931cba451f2.js.map -%%WWWDIR%%/client/2544.6228cbd0b218d6da6c40.js -%%WWWDIR%%/client/2544.6228cbd0b218d6da6c40.js.map -%%WWWDIR%%/client/2544.9e39cde7e84ffe6dc526.css -%%WWWDIR%%/client/2544.9e39cde7e84ffe6dc526.css.map -%%WWWDIR%%/client/2565.660102a98dc89c001be2.js -%%WWWDIR%%/client/2565.660102a98dc89c001be2.js.LICENSE.txt -%%WWWDIR%%/client/2565.660102a98dc89c001be2.js.map +%%WWWDIR%%/client/2565.5c6f9bd11886f9819fcb.js +%%WWWDIR%%/client/2565.5c6f9bd11886f9819fcb.js.LICENSE.txt +%%WWWDIR%%/client/2565.5c6f9bd11886f9819fcb.js.map %%WWWDIR%%/client/2648.b2c800aad003450a190e.js %%WWWDIR%%/client/2648.b2c800aad003450a190e.js.map -%%WWWDIR%%/client/2698.0d91b02def32badbf45e.js -%%WWWDIR%%/client/2698.0d91b02def32badbf45e.js.map -%%WWWDIR%%/client/2701.dedd2d266c675c253811.js -%%WWWDIR%%/client/2701.dedd2d266c675c253811.js.map -%%WWWDIR%%/client/2824.9893892e55f343f8dea2.css -%%WWWDIR%%/client/2824.9893892e55f343f8dea2.css.map -%%WWWDIR%%/client/2824.fe027eaaa28ab2255af5.js -%%WWWDIR%%/client/2824.fe027eaaa28ab2255af5.js.map -%%WWWDIR%%/client/283.bd81b87f02c7ccba9609.js -%%WWWDIR%%/client/283.bd81b87f02c7ccba9609.js.LICENSE.txt -%%WWWDIR%%/client/283.bd81b87f02c7ccba9609.js.map +%%WWWDIR%%/client/2698.8f6dcb10f659c6a5f520.js +%%WWWDIR%%/client/2698.8f6dcb10f659c6a5f520.js.map +%%WWWDIR%%/client/2701.a1afd4bd90d4a81c27cd.js +%%WWWDIR%%/client/2701.a1afd4bd90d4a81c27cd.js.map +%%WWWDIR%%/client/2826.a88496eacdc2f0dd40c5.js +%%WWWDIR%%/client/2826.a88496eacdc2f0dd40c5.js.map %%WWWDIR%%/client/2830.dbc77abe83a4ed3b2f13.js %%WWWDIR%%/client/2830.dbc77abe83a4ed3b2f13.js.map -%%WWWDIR%%/client/2903.6690015bb01f80dbea7e.js -%%WWWDIR%%/client/2903.6690015bb01f80dbea7e.js.LICENSE.txt -%%WWWDIR%%/client/2903.6690015bb01f80dbea7e.js.map %%WWWDIR%%/client/3.50a9a10e8f904c178fb5.js %%WWWDIR%%/client/3.50a9a10e8f904c178fb5.js.map -%%WWWDIR%%/client/3117.7185a33399b59fe133c8.js -%%WWWDIR%%/client/3117.7185a33399b59fe133c8.js.map -%%WWWDIR%%/client/3117.b04846d55e8798763ee6.css -%%WWWDIR%%/client/3117.b04846d55e8798763ee6.css.map +%%WWWDIR%%/client/3001.2b71c3f7d4c60f46f16b.js +%%WWWDIR%%/client/3001.2b71c3f7d4c60f46f16b.js.map +%%WWWDIR%%/client/3001.ac2faa13aa08f0d0fe98.css +%%WWWDIR%%/client/3001.ac2faa13aa08f0d0fe98.css.map +%%WWWDIR%%/client/3117.95b220093cb5c5d82a8a.js +%%WWWDIR%%/client/3117.95b220093cb5c5d82a8a.js.map +%%WWWDIR%%/client/3117.c7750661ce94e8be41bf.css +%%WWWDIR%%/client/3117.c7750661ce94e8be41bf.css.map %%WWWDIR%%/client/3126.848bc87347e4a2d29c99.js %%WWWDIR%%/client/3126.848bc87347e4a2d29c99.js.map -%%WWWDIR%%/client/3389.c3fcdd2c53758c5a12d0.js -%%WWWDIR%%/client/3389.c3fcdd2c53758c5a12d0.js.map +%%WWWDIR%%/client/3272.9f7f5ecb6a905182ee70.js +%%WWWDIR%%/client/3272.9f7f5ecb6a905182ee70.js.LICENSE.txt +%%WWWDIR%%/client/3272.9f7f5ecb6a905182ee70.js.map +%%WWWDIR%%/client/3294.89356d3bfc84cb9cf509.js +%%WWWDIR%%/client/3294.89356d3bfc84cb9cf509.js.LICENSE.txt +%%WWWDIR%%/client/3294.89356d3bfc84cb9cf509.js.map +%%WWWDIR%%/client/3389.a634cca7a671d4dad982.js +%%WWWDIR%%/client/3389.a634cca7a671d4dad982.js.map +%%WWWDIR%%/client/3389.bd6e91718bcb0e460cda.css +%%WWWDIR%%/client/3389.bd6e91718bcb0e460cda.css.map %%WWWDIR%%/client/3412.a531e664a5e846e2a22e.js -%%WWWDIR%%/client/3458.aad70e5ab892a6521779.js -%%WWWDIR%%/client/3458.aad70e5ab892a6521779.js.map +%%WWWDIR%%/client/3458.7bce940180e8ed6135e1.js +%%WWWDIR%%/client/3458.7bce940180e8ed6135e1.js.map %%WWWDIR%%/client/3487.b2a7aff7bf2b2e8a4d72.js %%WWWDIR%%/client/3487.b2a7aff7bf2b2e8a4d72.js.map -%%WWWDIR%%/client/353.b23721161ee40d78d60b.css -%%WWWDIR%%/client/353.b23721161ee40d78d60b.css.map -%%WWWDIR%%/client/353.fc08a51e8bdc094275e7.js -%%WWWDIR%%/client/353.fc08a51e8bdc094275e7.js.map +%%WWWDIR%%/client/353.2e36507828e19f41dcf5.css +%%WWWDIR%%/client/353.2e36507828e19f41dcf5.css.map +%%WWWDIR%%/client/353.9404a5a3e40a2b46c255.js +%%WWWDIR%%/client/353.9404a5a3e40a2b46c255.js.map %%WWWDIR%%/client/3539.4a5fd24ace7522fe4ef7.js %%WWWDIR%%/client/3539.4a5fd24ace7522fe4ef7.js.map -%%WWWDIR%%/client/3615.b061098af92a41d3ee68.js -%%WWWDIR%%/client/3615.b061098af92a41d3ee68.js.map -%%WWWDIR%%/client/3618.08d4b16ac734569e551b.js -%%WWWDIR%%/client/3618.08d4b16ac734569e551b.js.map -%%WWWDIR%%/client/3639.6441bc756774b3362581.js -%%WWWDIR%%/client/3639.6441bc756774b3362581.js.map -%%WWWDIR%%/client/3639.ad8af65ecfa629c5b75e.css -%%WWWDIR%%/client/3639.ad8af65ecfa629c5b75e.css.map -%%WWWDIR%%/client/3676.c9fa075cea4e632489d5.js -%%WWWDIR%%/client/3676.c9fa075cea4e632489d5.js.map -%%WWWDIR%%/client/368.501020eb3a84dcb78e5e.js -%%WWWDIR%%/client/368.501020eb3a84dcb78e5e.js.LICENSE.txt -%%WWWDIR%%/client/368.501020eb3a84dcb78e5e.js.map +%%WWWDIR%%/client/3577.7ae35657cb3e001e2052.js +%%WWWDIR%%/client/3577.7ae35657cb3e001e2052.js.map +%%WWWDIR%%/client/3639.48ec22b6135b04a6883e.css +%%WWWDIR%%/client/3639.48ec22b6135b04a6883e.css.map +%%WWWDIR%%/client/3639.a4b332dc659321fd5afa.js +%%WWWDIR%%/client/3639.a4b332dc659321fd5afa.js.map +%%WWWDIR%%/client/368.21e7eb9195a96904ed87.js +%%WWWDIR%%/client/368.21e7eb9195a96904ed87.js.LICENSE.txt +%%WWWDIR%%/client/368.21e7eb9195a96904ed87.js.map %%WWWDIR%%/client/3937.844b09f50594ca2613b4.js %%WWWDIR%%/client/3937.844b09f50594ca2613b4.js.map %%WWWDIR%%/client/4038.acec16d411c00eb00a85.js @@ -128,134 +126,123 @@ %%WWWDIR%%/client/4040.193a7d0fdd91f49aa851.js.map %%WWWDIR%%/client/4104.9744c21a1ff43afc6965.js %%WWWDIR%%/client/4104.9744c21a1ff43afc6965.js.map -%%WWWDIR%%/client/4181.839b45e0558a4a5f4357.js -%%WWWDIR%%/client/4181.839b45e0558a4a5f4357.js.map -%%WWWDIR%%/client/4181.ad6cb5fd1cfcb7c323d4.css -%%WWWDIR%%/client/4181.ad6cb5fd1cfcb7c323d4.css.map -%%WWWDIR%%/client/42.5e7996ab7c3944b40267.js -%%WWWDIR%%/client/42.5e7996ab7c3944b40267.js.LICENSE.txt -%%WWWDIR%%/client/42.5e7996ab7c3944b40267.js.map -%%WWWDIR%%/client/4217.17e9bb431f6e24daa9ca.js -%%WWWDIR%%/client/4217.17e9bb431f6e24daa9ca.js.map -%%WWWDIR%%/client/4231.f9372ddf5363e41aa9a0.js -%%WWWDIR%%/client/4231.f9372ddf5363e41aa9a0.js.map -%%WWWDIR%%/client/4404.89777b503a3ddf14ebee.js -%%WWWDIR%%/client/4404.89777b503a3ddf14ebee.js.LICENSE.txt -%%WWWDIR%%/client/4404.89777b503a3ddf14ebee.js.map -%%WWWDIR%%/client/4557.325cd3b5c3fd16de59d4.js -%%WWWDIR%%/client/4557.325cd3b5c3fd16de59d4.js.map -%%WWWDIR%%/client/4617.edf7898712324c636e94.js -%%WWWDIR%%/client/4617.edf7898712324c636e94.js.LICENSE.txt -%%WWWDIR%%/client/4617.edf7898712324c636e94.js.map -%%WWWDIR%%/client/4666.12d01864e7e43d525284.js -%%WWWDIR%%/client/4666.12d01864e7e43d525284.js.map -%%WWWDIR%%/client/4666.9e35a6c3f41e66e58e02.css -%%WWWDIR%%/client/4666.9e35a6c3f41e66e58e02.css.map +%%WWWDIR%%/client/4205.0391bb7f211b6b88f177.js +%%WWWDIR%%/client/4205.0391bb7f211b6b88f177.js.map +%%WWWDIR%%/client/4205.673ad6a051df400f0e6f.css +%%WWWDIR%%/client/4205.673ad6a051df400f0e6f.css.map +%%WWWDIR%%/client/4217.81ae56f2da4d2d4ee9a6.js +%%WWWDIR%%/client/4217.81ae56f2da4d2d4ee9a6.js.map +%%WWWDIR%%/client/4217.b02454b009c376f7a9a1.css +%%WWWDIR%%/client/4217.b02454b009c376f7a9a1.css.map +%%WWWDIR%%/client/4231.27b0c37fcf4ddc51a033.js +%%WWWDIR%%/client/4231.27b0c37fcf4ddc51a033.js.map +%%WWWDIR%%/client/4404.b87614c5f140f1ac7ba6.js +%%WWWDIR%%/client/4404.b87614c5f140f1ac7ba6.js.LICENSE.txt +%%WWWDIR%%/client/4404.b87614c5f140f1ac7ba6.js.map +%%WWWDIR%%/client/4557.0e7fa704a3d33c07c4f8.js +%%WWWDIR%%/client/4557.0e7fa704a3d33c07c4f8.js.map +%%WWWDIR%%/client/4617.88e5428809e56688db84.js +%%WWWDIR%%/client/4617.88e5428809e56688db84.js.LICENSE.txt +%%WWWDIR%%/client/4617.88e5428809e56688db84.js.map %%WWWDIR%%/client/4825.b609e889593929ac6969.js %%WWWDIR%%/client/4825.b609e889593929ac6969.js.map %%WWWDIR%%/client/4841.253ec7bae8963b3060c1.js %%WWWDIR%%/client/4841.253ec7bae8963b3060c1.js.map -%%WWWDIR%%/client/5006.0eb611dbdeb2e90c45e1.js -%%WWWDIR%%/client/5006.0eb611dbdeb2e90c45e1.js.map -%%WWWDIR%%/client/5006.5b7832d3e1167baf2385.css -%%WWWDIR%%/client/5006.5b7832d3e1167baf2385.css.map -%%WWWDIR%%/client/5095.15abe01bfc1f5a45c4f5.js -%%WWWDIR%%/client/5095.15abe01bfc1f5a45c4f5.js.map -%%WWWDIR%%/client/5215.7381e5810fd574a6a946.js -%%WWWDIR%%/client/5215.7381e5810fd574a6a946.js.map +%%WWWDIR%%/client/5010.9562ceddef72c8cac3fe.js +%%WWWDIR%%/client/5010.9562ceddef72c8cac3fe.js.map +%%WWWDIR%%/client/5095.dc185b1dfa8d4470099d.js +%%WWWDIR%%/client/5095.dc185b1dfa8d4470099d.js.map +%%WWWDIR%%/client/516.94567bc0b03a72922071.js +%%WWWDIR%%/client/516.94567bc0b03a72922071.js.map +%%WWWDIR%%/client/516.fe1aa5e514ec90cd2b87.css +%%WWWDIR%%/client/516.fe1aa5e514ec90cd2b87.css.map +%%WWWDIR%%/client/5215.48db9473baee83d3fed5.js +%%WWWDIR%%/client/5215.48db9473baee83d3fed5.js.map %%WWWDIR%%/client/5397.51f992ceddd104d60013.js %%WWWDIR%%/client/5397.51f992ceddd104d60013.js.map -%%WWWDIR%%/client/5431.4f5c673ca71ee53d77f6.js -%%WWWDIR%%/client/5431.4f5c673ca71ee53d77f6.js.map -%%WWWDIR%%/client/5453.5fe75e88659e8abc9b0d.css -%%WWWDIR%%/client/5453.5fe75e88659e8abc9b0d.css.map -%%WWWDIR%%/client/5453.adcfc8a4056cfe3d3c0e.js -%%WWWDIR%%/client/5453.adcfc8a4056cfe3d3c0e.js.map -%%WWWDIR%%/client/5456.b72ae06f637f90691468.js -%%WWWDIR%%/client/5456.b72ae06f637f90691468.js.LICENSE.txt -%%WWWDIR%%/client/5456.b72ae06f637f90691468.js.map -%%WWWDIR%%/client/5620.e2040c29c61d86292907.js -%%WWWDIR%%/client/5620.e2040c29c61d86292907.js.map +%%WWWDIR%%/client/5413.bb820edc74086d97deee.js +%%WWWDIR%%/client/5413.bb820edc74086d97deee.js.map +%%WWWDIR%%/client/5431.65e34fec1095099b99b0.js +%%WWWDIR%%/client/5431.65e34fec1095099b99b0.js.map +%%WWWDIR%%/client/5453.550dc2e484c3e3327e2d.js +%%WWWDIR%%/client/5453.550dc2e484c3e3327e2d.js.map +%%WWWDIR%%/client/5453.5b926c472a6f7dffe95f.css +%%WWWDIR%%/client/5453.5b926c472a6f7dffe95f.css.map +%%WWWDIR%%/client/5456.ca0399a90e8f1ea6885d.js +%%WWWDIR%%/client/5456.ca0399a90e8f1ea6885d.js.LICENSE.txt +%%WWWDIR%%/client/5456.ca0399a90e8f1ea6885d.js.map +%%WWWDIR%%/client/5581.05ed603aab310f909178.js +%%WWWDIR%%/client/5581.05ed603aab310f909178.js.map +%%WWWDIR%%/client/5620.0332d780b6bdcb1ab953.js +%%WWWDIR%%/client/5620.0332d780b6bdcb1ab953.js.map +%%WWWDIR%%/client/5631.f3a3fc7ee90bb709ab2d.js +%%WWWDIR%%/client/5631.f3a3fc7ee90bb709ab2d.js.LICENSE.txt +%%WWWDIR%%/client/5631.f3a3fc7ee90bb709ab2d.js.map +%%WWWDIR%%/client/5716.500cc70027b6dc8026a8.js +%%WWWDIR%%/client/5716.500cc70027b6dc8026a8.js.map %%WWWDIR%%/client/5749.00714fb1bbd4aa16095b.js %%WWWDIR%%/client/5749.00714fb1bbd4aa16095b.js.map -%%WWWDIR%%/client/5803.0a37a7b89255cab6b437.js -%%WWWDIR%%/client/5803.0a37a7b89255cab6b437.js.map -%%WWWDIR%%/client/5847.2e0800fb2f8c542a8504.css -%%WWWDIR%%/client/5847.2e0800fb2f8c542a8504.css.map -%%WWWDIR%%/client/5847.f7262fc3bc8e58c873a8.js -%%WWWDIR%%/client/5847.f7262fc3bc8e58c873a8.js.map -%%WWWDIR%%/client/5904.b41af8d748e61010165f.js -%%WWWDIR%%/client/5904.b41af8d748e61010165f.js.map +%%WWWDIR%%/client/5803.42464ec368de384f719e.js +%%WWWDIR%%/client/5803.42464ec368de384f719e.js.map %%WWWDIR%%/client/5912.742b2d37ae6c1e3b78e4.js %%WWWDIR%%/client/5912.742b2d37ae6c1e3b78e4.js.map -%%WWWDIR%%/client/5960.13c43b09e5d97980d3b5.css -%%WWWDIR%%/client/5960.13c43b09e5d97980d3b5.css.map -%%WWWDIR%%/client/5960.a56e9d95006edabd0c30.js -%%WWWDIR%%/client/5960.a56e9d95006edabd0c30.js.map %%WWWDIR%%/client/5973.361dc56f46e44ad8905b.js %%WWWDIR%%/client/5973.361dc56f46e44ad8905b.js.map -%%WWWDIR%%/client/6005.784b932f04c4d952c2bb.js -%%WWWDIR%%/client/6005.784b932f04c4d952c2bb.js.map +%%WWWDIR%%/client/6005.1fe7461d1a3f03f7dcc0.js +%%WWWDIR%%/client/6005.1fe7461d1a3f03f7dcc0.js.map %%WWWDIR%%/client/6012.a980859271e0c9b01f20.js %%WWWDIR%%/client/6012.a980859271e0c9b01f20.js.map %%WWWDIR%%/client/6016.81cc505f48c20cbda7eb.js %%WWWDIR%%/client/6016.81cc505f48c20cbda7eb.js.map -%%WWWDIR%%/client/6106.3e7b689bfbe6fd123ef8.js -%%WWWDIR%%/client/6106.3e7b689bfbe6fd123ef8.js.map +%%WWWDIR%%/client/6106.c804a70a8db73b02329f.js +%%WWWDIR%%/client/6106.c804a70a8db73b02329f.js.map %%WWWDIR%%/client/6106.ef104656b8bd072b2c15.css %%WWWDIR%%/client/6106.ef104656b8bd072b2c15.css.map -%%WWWDIR%%/client/6114.05f51a5236dd57ec0691.css -%%WWWDIR%%/client/6114.05f51a5236dd57ec0691.css.map -%%WWWDIR%%/client/6114.5f12e1fcda7391c7ad21.js -%%WWWDIR%%/client/6114.5f12e1fcda7391c7ad21.js.map +%%WWWDIR%%/client/6114.15f967a07273e4f4b262.js +%%WWWDIR%%/client/6114.15f967a07273e4f4b262.js.map +%%WWWDIR%%/client/6114.7ad285f8d8a58332f6ad.css +%%WWWDIR%%/client/6114.7ad285f8d8a58332f6ad.css.map %%WWWDIR%%/client/6145.53a44b9ff76c964ced3f.js %%WWWDIR%%/client/6145.53a44b9ff76c964ced3f.js.map %%WWWDIR%%/client/615.1c172a6fd034294e3a4b.js %%WWWDIR%%/client/615.1c172a6fd034294e3a4b.js.map -%%WWWDIR%%/client/6228.4c6307cb7f056a387b4a.js -%%WWWDIR%%/client/6228.4c6307cb7f056a387b4a.js.map +%%WWWDIR%%/client/6228.138c61c54a03cb6b0239.js +%%WWWDIR%%/client/6228.138c61c54a03cb6b0239.js.map %%WWWDIR%%/client/6323.973e387bd4d9fc46f764.js %%WWWDIR%%/client/6323.973e387bd4d9fc46f764.js.map %%WWWDIR%%/client/6339.f6949d38611b5c11ef37.js %%WWWDIR%%/client/6339.f6949d38611b5c11ef37.js.map %%WWWDIR%%/client/6487.3a9ac675e79a51a666ae.js %%WWWDIR%%/client/6487.3a9ac675e79a51a666ae.js.map -%%WWWDIR%%/client/6640.2badf0e09b393fe70fc3.js -%%WWWDIR%%/client/6640.2badf0e09b393fe70fc3.js.map +%%WWWDIR%%/client/6640.bc2ba4f3b3017547c8f6.js +%%WWWDIR%%/client/6640.bc2ba4f3b3017547c8f6.js.map %%WWWDIR%%/client/6644.c0a6de97a7bf084a3f4d.js %%WWWDIR%%/client/6644.c0a6de97a7bf084a3f4d.js.map %%WWWDIR%%/client/6645.f299a1ef0e7956d27df0.css %%WWWDIR%%/client/6645.f299a1ef0e7956d27df0.css.map -%%WWWDIR%%/client/6666.8ac3926abad3cb565d20.js -%%WWWDIR%%/client/6666.8ac3926abad3cb565d20.js.LICENSE.txt -%%WWWDIR%%/client/6666.8ac3926abad3cb565d20.js.map -%%WWWDIR%%/client/6760.dd030aca80841e50a500.js -%%WWWDIR%%/client/6760.dd030aca80841e50a500.js.map -%%WWWDIR%%/client/6778.79187f316fb89d710ae0.js -%%WWWDIR%%/client/6778.79187f316fb89d710ae0.js.map +%%WWWDIR%%/client/6778.99c8dc14c9da163c609b.js +%%WWWDIR%%/client/6778.99c8dc14c9da163c609b.js.map %%WWWDIR%%/client/6796.243e9d8ba29f680107ba.js %%WWWDIR%%/client/6796.243e9d8ba29f680107ba.js.map %%WWWDIR%%/client/680.4da078dab52828997dac.js %%WWWDIR%%/client/680.4da078dab52828997dac.js.map %%WWWDIR%%/client/6891.1b1c37acadfa9bc7bffb.js %%WWWDIR%%/client/6891.1b1c37acadfa9bc7bffb.js.map -%%WWWDIR%%/client/6903.647a1390eb5f127eb52b.js -%%WWWDIR%%/client/6903.647a1390eb5f127eb52b.js.map -%%WWWDIR%%/client/7055.46cd540a5eabf823c9fc.js -%%WWWDIR%%/client/7055.46cd540a5eabf823c9fc.js.map -%%WWWDIR%%/client/7055.8515bd6692df2f594e52.css -%%WWWDIR%%/client/7055.8515bd6692df2f594e52.css.map -%%WWWDIR%%/client/7107.08702a1ce20384545e09.css -%%WWWDIR%%/client/7107.08702a1ce20384545e09.css.map -%%WWWDIR%%/client/7107.1a19b79613707d8ec371.js -%%WWWDIR%%/client/7107.1a19b79613707d8ec371.js.map -%%WWWDIR%%/client/7119.be83b74094ac6efebaec.css -%%WWWDIR%%/client/7119.be83b74094ac6efebaec.css.map +%%WWWDIR%%/client/7055.191d2202b344b8126d98.js +%%WWWDIR%%/client/7055.191d2202b344b8126d98.js.map +%%WWWDIR%%/client/7055.23d1d4a70f5b26fe6e36.css +%%WWWDIR%%/client/7055.23d1d4a70f5b26fe6e36.css.map +%%WWWDIR%%/client/7107.546d3f7103c576bf17d6.js +%%WWWDIR%%/client/7107.546d3f7103c576bf17d6.js.map +%%WWWDIR%%/client/7107.9dee87d1c4f156016e4e.css +%%WWWDIR%%/client/7107.9dee87d1c4f156016e4e.css.map +%%WWWDIR%%/client/7119.2e43b30c3a228a8f763e.css +%%WWWDIR%%/client/7119.2e43b30c3a228a8f763e.css.map %%WWWDIR%%/client/7207.24e02b07ac1c46fab178.js %%WWWDIR%%/client/7207.24e02b07ac1c46fab178.js.map -%%WWWDIR%%/client/7274.babf8f880f7bde664305.js -%%WWWDIR%%/client/7274.babf8f880f7bde664305.js.LICENSE.txt -%%WWWDIR%%/client/7274.babf8f880f7bde664305.js.map +%%WWWDIR%%/client/7274.ada8accfd73d61857b45.js +%%WWWDIR%%/client/7274.ada8accfd73d61857b45.js.LICENSE.txt +%%WWWDIR%%/client/7274.ada8accfd73d61857b45.js.map %%WWWDIR%%/client/7307.5f0817a9a98465dc3d15.js %%WWWDIR%%/client/7307.5f0817a9a98465dc3d15.js.map %%WWWDIR%%/client/7313.87c900eb71eed795ba50.js @@ -263,62 +250,61 @@ %%WWWDIR%%/client/7378.0b94e714d0e252a84cc0.js %%WWWDIR%%/client/7378.0b94e714d0e252a84cc0.js.LICENSE.txt %%WWWDIR%%/client/7378.0b94e714d0e252a84cc0.js.map +%%WWWDIR%%/client/7430.89ee9940d1b94015d891.js +%%WWWDIR%%/client/7430.89ee9940d1b94015d891.js.map +%%WWWDIR%%/client/7430.bb4505cc48c2049a1b7b.css +%%WWWDIR%%/client/7430.bb4505cc48c2049a1b7b.css.map %%WWWDIR%%/client/7509.9f4eb8df4b95f9c62be4.js %%WWWDIR%%/client/7509.9f4eb8df4b95f9c62be4.js.map -%%WWWDIR%%/client/7566.5a9deeacc9b268265305.js -%%WWWDIR%%/client/7566.5a9deeacc9b268265305.js.LICENSE.txt -%%WWWDIR%%/client/7566.5a9deeacc9b268265305.js.map %%WWWDIR%%/client/7586.dbda09a33338ee29e554.js %%WWWDIR%%/client/7586.dbda09a33338ee29e554.js.map +%%WWWDIR%%/client/7685.538ff07feb805739d12f.js +%%WWWDIR%%/client/7685.538ff07feb805739d12f.js.map %%WWWDIR%%/client/7703.d9ed98e201401c2beb22.js %%WWWDIR%%/client/7703.d9ed98e201401c2beb22.js.map +%%WWWDIR%%/client/7710.1db03372130a7ca6925f.js +%%WWWDIR%%/client/7710.1db03372130a7ca6925f.js.map %%WWWDIR%%/client/7761.01d225bcc0b5e6c41f7b.js %%WWWDIR%%/client/7761.01d225bcc0b5e6c41f7b.js.map -%%WWWDIR%%/client/7803.801afef902be3ae0f8ef.js -%%WWWDIR%%/client/7803.801afef902be3ae0f8ef.js.LICENSE.txt -%%WWWDIR%%/client/7803.801afef902be3ae0f8ef.js.map -%%WWWDIR%%/client/7858.82bdb5aa2110101b80d4.css -%%WWWDIR%%/client/7858.82bdb5aa2110101b80d4.css.map -%%WWWDIR%%/client/7858.8417b70d7712cc9520bc.js -%%WWWDIR%%/client/7858.8417b70d7712cc9520bc.js.LICENSE.txt -%%WWWDIR%%/client/7858.8417b70d7712cc9520bc.js.map +%%WWWDIR%%/client/7803.0f2f7375240d3eb97354.js +%%WWWDIR%%/client/7803.0f2f7375240d3eb97354.js.LICENSE.txt +%%WWWDIR%%/client/7803.0f2f7375240d3eb97354.js.map %%WWWDIR%%/client/7882.4836784ab734854bade8.js %%WWWDIR%%/client/7882.4836784ab734854bade8.js.map -%%WWWDIR%%/client/7882.51cde44ffab358545404.css -%%WWWDIR%%/client/7882.51cde44ffab358545404.css.map +%%WWWDIR%%/client/7882.f07e931e4775585fcfa8.css +%%WWWDIR%%/client/7882.f07e931e4775585fcfa8.css.map %%WWWDIR%%/client/7896.2130c6e57d3e690b84ec.js %%WWWDIR%%/client/7896.2130c6e57d3e690b84ec.js.map +%%WWWDIR%%/client/7909.e1ecc45d2750c7778100.js +%%WWWDIR%%/client/7909.e1ecc45d2750c7778100.js.map +%%WWWDIR%%/client/7985.3e74c3ab6ebc0a0713d6.js +%%WWWDIR%%/client/7985.3e74c3ab6ebc0a0713d6.js.map +%%WWWDIR%%/client/8039.de8937287e12968506e8.js +%%WWWDIR%%/client/8039.de8937287e12968506e8.js.LICENSE.txt +%%WWWDIR%%/client/8039.de8937287e12968506e8.js.map %%WWWDIR%%/client/8045.12155cf972f9136b00ac.js %%WWWDIR%%/client/8045.12155cf972f9136b00ac.js.map %%WWWDIR%%/client/8109.c48436210fe343fc3625.js %%WWWDIR%%/client/8109.c48436210fe343fc3625.js.map %%WWWDIR%%/client/8112.5b4fdb639e8ab26cda59.js %%WWWDIR%%/client/8112.5b4fdb639e8ab26cda59.js.map -%%WWWDIR%%/client/8143.f36a638b699431c92dd8.js -%%WWWDIR%%/client/8143.f36a638b699431c92dd8.js.LICENSE.txt -%%WWWDIR%%/client/8143.f36a638b699431c92dd8.js.map %%WWWDIR%%/client/8196.ab3030070696873d8405.js %%WWWDIR%%/client/8196.ab3030070696873d8405.js.map %%WWWDIR%%/client/8221.3c6fcff225a73d120a8a.js %%WWWDIR%%/client/8221.3c6fcff225a73d120a8a.js.map -%%WWWDIR%%/client/8286.2897429f1595cf185f33.js -%%WWWDIR%%/client/8286.2897429f1595cf185f33.js.map -%%WWWDIR%%/client/8286.c2860370172209ddcc0a.css -%%WWWDIR%%/client/8286.c2860370172209ddcc0a.css.map +%%WWWDIR%%/client/8286.0fd2781d8c50433e031f.js +%%WWWDIR%%/client/8286.0fd2781d8c50433e031f.js.map +%%WWWDIR%%/client/8286.89882cc4b83ac335a4aa.css +%%WWWDIR%%/client/8286.89882cc4b83ac335a4aa.css.map %%WWWDIR%%/client/8297.7e11cfb4c56ce60546b7.js %%WWWDIR%%/client/8297.7e11cfb4c56ce60546b7.js.map -%%WWWDIR%%/client/8470.61010c1e0c289b7bf725.js -%%WWWDIR%%/client/8470.61010c1e0c289b7bf725.js.map +%%WWWDIR%%/client/8304.11b203998b518862e4c7.js +%%WWWDIR%%/client/8304.11b203998b518862e4c7.js.LICENSE.txt +%%WWWDIR%%/client/8304.11b203998b518862e4c7.js.map %%WWWDIR%%/client/8473.37b6fbe2a0c19ab2c853.js %%WWWDIR%%/client/8473.37b6fbe2a0c19ab2c853.js.map %%WWWDIR%%/client/8522.f1c9563c3303ec103299.js %%WWWDIR%%/client/8522.f1c9563c3303ec103299.js.map -%%WWWDIR%%/client/8688.3d336ebd5b8d33359a87.js -%%WWWDIR%%/client/8688.3d336ebd5b8d33359a87.js.map -%%WWWDIR%%/client/8718.037afe8c3d6764feec38.css -%%WWWDIR%%/client/8718.037afe8c3d6764feec38.css.map -%%WWWDIR%%/client/8718.757b284d90edcff61adf.js -%%WWWDIR%%/client/8718.757b284d90edcff61adf.js.map %%WWWDIR%%/client/8725.9971cc726db52a178b00.js %%WWWDIR%%/client/8725.9971cc726db52a178b00.js.map %%WWWDIR%%/client/8734.a1d4a5f5820fbc02d123.js @@ -333,21 +319,27 @@ %%WWWDIR%%/client/9231.f2d46eb836c80d18f014.js.map %%WWWDIR%%/client/9269.7bef6e6584c581f5c96d.js %%WWWDIR%%/client/9269.7bef6e6584c581f5c96d.js.map +%%WWWDIR%%/client/927.63303a970be9da2caea9.css +%%WWWDIR%%/client/927.63303a970be9da2caea9.css.map +%%WWWDIR%%/client/927.d6208f1b60c77ce28104.js +%%WWWDIR%%/client/927.d6208f1b60c77ce28104.js.map %%WWWDIR%%/client/9281.ecb21f8529b255fa0986.js %%WWWDIR%%/client/9281.ecb21f8529b255fa0986.js.map -%%WWWDIR%%/client/9287.62f1389de8597859c538.js -%%WWWDIR%%/client/9287.62f1389de8597859c538.js.map -%%WWWDIR%%/client/9287.7cb2a6cfbd8bb9793198.css -%%WWWDIR%%/client/9287.7cb2a6cfbd8bb9793198.css.map +%%WWWDIR%%/client/9287.1ae4b609ddf03369f13b.css +%%WWWDIR%%/client/9287.1ae4b609ddf03369f13b.css.map +%%WWWDIR%%/client/9287.3a5fa59b5d84af37c772.js +%%WWWDIR%%/client/9287.3a5fa59b5d84af37c772.js.map %%WWWDIR%%/client/9410.84b6dce705b5fbbfcf00.js %%WWWDIR%%/client/9410.84b6dce705b5fbbfcf00.js.map %%WWWDIR%%/client/942.f4b26f7f5900cdb7c9f9.js %%WWWDIR%%/client/942.f4b26f7f5900cdb7c9f9.js.map %%WWWDIR%%/client/9604.5d838f221b541a3dc704.js %%WWWDIR%%/client/9604.5d838f221b541a3dc704.js.map +%%WWWDIR%%/client/9614.90a3cfb406f55673777c.js +%%WWWDIR%%/client/9614.90a3cfb406f55673777c.js.map %%WWWDIR%%/client/9707.bd952b6fd79bcf4217f4.js -%%WWWDIR%%/client/9744.92bf2482fecd296070af.js -%%WWWDIR%%/client/9744.92bf2482fecd296070af.js.map +%%WWWDIR%%/client/9744.030b456564d00fd0ce15.js +%%WWWDIR%%/client/9744.030b456564d00fd0ce15.js.map %%WWWDIR%%/client/9849.a59701c695b1ddfc6fd6.js %%WWWDIR%%/client/9849.a59701c695b1ddfc6fd6.js.map %%WWWDIR%%/client/9859.b3147b2a56bc7b39c837.js @@ -3828,7 +3820,6 @@ %%WWWDIR%%/client/emoji/emoji-custom.png %%WWWDIR%%/client/emoji/%%MATTERMOSTD_USER%%.png %%WWWDIR%%/client/files/00301d72e07c55d59df5.svg -%%WWWDIR%%/client/files/0098d1355858d44623fc.png %%WWWDIR%%/client/files/0108e89c9003e8c14ea3.woff %%WWWDIR%%/client/files/015736ac96a0f4b445b5.woff2 %%WWWDIR%%/client/files/02271ec5cb9f5b4588ac.woff @@ -3845,7 +3836,6 @@ %%WWWDIR%%/client/files/18f795b7373cd6fac757.gif %%WWWDIR%%/client/files/1c5c889a1530329dd883.jpg %%WWWDIR%%/client/files/1e59d2330b4c6deb84b3.ttf -%%WWWDIR%%/client/files/20785e8b14e143de1e18.png %%WWWDIR%%/client/files/20b39a15c40e4db238f1.png %%WWWDIR%%/client/files/20f389c4120be058d80a.woff2 %%WWWDIR%%/client/files/20fd1704ea223900efa9.woff2 @@ -3857,10 +3847,8 @@ %%WWWDIR%%/client/files/2a8c0b1b24fe26f9bfcf.svg %%WWWDIR%%/client/files/2c18b373ff146fd8108b.png %%WWWDIR%%/client/files/2c5822f8df09cab9d59c.png -%%WWWDIR%%/client/files/2d4b76f5842974320ed1.eot %%WWWDIR%%/client/files/2f6dbcfa410b96ca2a35.woff2 %%WWWDIR%%/client/files/2f7bc363fc5424ebda59.ttf -%%WWWDIR%%/client/files/3284065c3340b6658cfa.jpg %%WWWDIR%%/client/files/3399e2ee5698233ffe44.png %%WWWDIR%%/client/files/34c82b247a366d047105.png %%WWWDIR%%/client/files/354501bac435c3264834.woff @@ -3868,7 +3856,6 @@ %%WWWDIR%%/client/files/372ee7bbea28f5a75e2a.svg %%WWWDIR%%/client/files/377564d283f9bc35cce9.png %%WWWDIR%%/client/files/39890742bc957b368704.woff2 -%%WWWDIR%%/client/files/3a942d4e6c0dfced4569.svg %%WWWDIR%%/client/files/3a99e70aee4076660d38.woff %%WWWDIR%%/client/files/3b8734f0d193b817f2b3.svg %%WWWDIR%%/client/files/3bd5f5c5dd54ccb0c7c2.woff2 @@ -3880,7 +3867,6 @@ %%WWWDIR%%/client/files/4651fd92bdc643485b9e.jpg %%WWWDIR%%/client/files/4692b9ec53fd5972caa2.ttf %%WWWDIR%%/client/files/46dadbd80fa9043a992a.woff -%%WWWDIR%%/client/files/47828bbc15464edb98e9.png %%WWWDIR%%/client/files/48c8ed225ff4a2f7a4c1.svg %%WWWDIR%%/client/files/4ad7c7e8bb8d10a34bb7.ttf %%WWWDIR%%/client/files/4c6b94fd1d07f8beff7c.woff @@ -3900,6 +3886,7 @@ %%WWWDIR%%/client/files/5b49f4993ae22d7975b4.ttf %%WWWDIR%%/client/files/5be1347c682810f199c7.eot %%WWWDIR%%/client/files/5f87fb0335aa3115cc71.svg +%%WWWDIR%%/client/files/6579929148618fdc0eaf.svg %%WWWDIR%%/client/files/6a2055863ca6d151ebb4.png %%WWWDIR%%/client/files/6a4927c0ce25f392d35e.woff %%WWWDIR%%/client/files/6bf17d5beba5f18915c7.woff @@ -3910,13 +3897,11 @@ %%WWWDIR%%/client/files/6eec866c69313624be60.woff2 %%WWWDIR%%/client/files/6f1462a75cab16ee77c8.woff2 %%WWWDIR%%/client/files/6fdf0ac577be0ba82a4c.woff -%%WWWDIR%%/client/files/711d6ebe91314060556c.png %%WWWDIR%%/client/files/71850e51ea04421286aa.png %%WWWDIR%%/client/files/71ff9ed7909b8a4a57f7.woff %%WWWDIR%%/client/files/72b8660cf48de3073575.woff %%WWWDIR%%/client/files/73ea273a72f4aca30ca5.woff2 %%WWWDIR%%/client/files/7489a2fbfb9bfe704420.ttf -%%WWWDIR%%/client/files/7526d4b6d87095105f45.ttf %%WWWDIR%%/client/files/7654b55b2f3442e91404.css %%WWWDIR%%/client/files/7947224e8a9914fa332b.woff %%WWWDIR%%/client/files/7a26b407c4ec2bbbaecd.png @@ -3931,7 +3916,6 @@ %%WWWDIR%%/client/files/82c53ca565ed83a033df.png %%WWWDIR%%/client/files/82de93c3795437425044.svg %%WWWDIR%%/client/files/853be92419a6c3766b9a.ttf -%%WWWDIR%%/client/files/85dce17e8e940492f690.svg %%WWWDIR%%/client/files/85f92b639485f3804bb1.png %%WWWDIR%%/client/files/86cf650fecf6c2bd8407.woff %%WWWDIR%%/client/files/8a5f936332e8028c7278.ttf @@ -3942,9 +3926,9 @@ %%WWWDIR%%/client/files/8b841a4d47a221fdb5ca.png %%WWWDIR%%/client/files/8d593cfaa96238d5e2f8.woff %%WWWDIR%%/client/files/8d6b6822586eea3d3b20.ttf +%%WWWDIR%%/client/files/8f3d1a4142c906ee1525.svg %%WWWDIR%%/client/files/8f702b9068ad5f14443a.png %%WWWDIR%%/client/files/90de726ce0a2fe9958d3.png -%%WWWDIR%%/client/files/910b16c5b489b359e175.woff %%WWWDIR%%/client/files/91a3a29ed2f93ba44792.png %%WWWDIR%%/client/files/925aafc8b6d54b579a4e.svg %%WWWDIR%%/client/files/931d67ea207ab37ee693.woff2 @@ -3953,7 +3937,6 @@ %%WWWDIR%%/client/files/95591a929f0d32aa282a.woff2 %%WWWDIR%%/client/files/96759856b4e70f3a8338.woff %%WWWDIR%%/client/files/96bef01ba855a3b50904.woff -%%WWWDIR%%/client/files/9777b4d58f156d2c1388.woff2 %%WWWDIR%%/client/files/9777bf12a1f691f71268.png %%WWWDIR%%/client/files/99ec979441ce5d5c1e4d.mp3 %%WWWDIR%%/client/files/9b0519e1f5fbf82b0548.png @@ -3961,10 +3944,14 @@ %%WWWDIR%%/client/files/9ea8998d9c0389f02c43.png %%WWWDIR%%/client/files/9eba1d77abcf2aa6e94e.ttf %%WWWDIR%%/client/files/a1abf90dfd72792a577a.woff2 +%%WWWDIR%%/client/files/a24b7eb0471f64ebf576.woff %%WWWDIR%%/client/files/a37832275fd33b01dc27.jpg +%%WWWDIR%%/client/files/a39df65f30bbf5ec1bcf.woff2 %%WWWDIR%%/client/files/a3bb00b98342a6b88a72.gif %%WWWDIR%%/client/files/a628e83945502338cace.mp3 +%%WWWDIR%%/client/files/a8b2077e566cb6bf7f11.eot %%WWWDIR%%/client/files/ab8aa80cba445eb0fb75.png +%%WWWDIR%%/client/files/acd3c17c4859bf16e105.ttf %%WWWDIR%%/client/files/ad02dc088755e3884a5b.png %%WWWDIR%%/client/files/ae5bb38e37a452ff91c8.mp3 %%WWWDIR%%/client/files/aeffd8025cba3647f1a6.woff @@ -3981,16 +3968,17 @@ %%WWWDIR%%/client/files/bf2d440b3a42ea78a998.ttf %%WWWDIR%%/client/files/bf7df14bc351bc131de2.svg %%WWWDIR%%/client/files/c01e2180eeaf3ec6fc96.png -%%WWWDIR%%/client/files/c1a25e53f866b24a6c36.png %%WWWDIR%%/client/files/c295e7f71970f03c0549.woff2 %%WWWDIR%%/client/files/c5c02d763c89380dcb4e.ttf %%WWWDIR%%/client/files/c7106e4ab743a4136ded.woff2 %%WWWDIR%%/client/files/c768bfe69b3d4a980e7b.svg %%WWWDIR%%/client/files/c7abbdc345c701433289.svg %%WWWDIR%%/client/files/c81d1b2a4b75d3eded60.woff2 +%%WWWDIR%%/client/files/ccf665b8d863ca98e36d.jpg %%WWWDIR%%/client/files/cd5e231e0cc53b2cb2c0.woff2 %%WWWDIR%%/client/files/cd8cb8b2332ebb5e7a6d.png %%WWWDIR%%/client/files/d02184525b86d72d3825.mp3 +%%WWWDIR%%/client/files/d2bf744fa2303f13660a.svg %%WWWDIR%%/client/files/d562e886c52f12660a41.woff %%WWWDIR%%/client/files/d5daf742611b86ea2649.woff2 %%WWWDIR%%/client/files/d6484fce1ef428d5bd94.woff2 @@ -4008,7 +3996,6 @@ %%WWWDIR%%/client/files/eb9c9ed586eda5e79e42.png %%WWWDIR%%/client/files/ed305b5434865e06ffde.ttf %%WWWDIR%%/client/files/f0ed40c1c7c4d880a63e.svg -%%WWWDIR%%/client/files/f2b29bd9b1060d4e066b.png %%WWWDIR%%/client/files/f356182e1dc28ee0d654.woff2 %%WWWDIR%%/client/files/f650f111a3b890d116f1.woff2 %%WWWDIR%%/client/files/f691f37e57f04c152e23.woff @@ -4023,26 +4010,28 @@ %%WWWDIR%%/client/files/fc9ba5249878cd8f8d88.ttf %%WWWDIR%%/client/files/fd947498bc16392e76c2.woff %%WWWDIR%%/client/files/fe2176f79edaa716e621.woff2 -%%WWWDIR%%/client/i18n/bg.ff5849b28c011978967e.json -%%WWWDIR%%/client/i18n/de.8667fb104e4897c79ba7.json -%%WWWDIR%%/client/i18n/en_AU.358ad982d61af5ea84cb.json -%%WWWDIR%%/client/i18n/es.076c18ccfd76f26b42bd.json -%%WWWDIR%%/client/i18n/fa.a3a106464a159f63a247.json -%%WWWDIR%%/client/i18n/fr.d524dc5c2c2f5a0f35be.json -%%WWWDIR%%/client/i18n/hu.46e93339b7dbc41a957d.json -%%WWWDIR%%/client/i18n/it.8939b4d7167d021ac5e2.json -%%WWWDIR%%/client/i18n/ja.de19a2c6f0edf2198100.json -%%WWWDIR%%/client/i18n/ko.290af13f75e745637e5e.json -%%WWWDIR%%/client/i18n/nl.2a39bfcd3e8b52942363.json -%%WWWDIR%%/client/i18n/pl.781eeadf4474887f249c.json -%%WWWDIR%%/client/i18n/pt-BR.14390eb3a1637e1ee782.json -%%WWWDIR%%/client/i18n/ro.5f4e4e8ead9bf079e8a3.json -%%WWWDIR%%/client/i18n/ru.2adfb04a6bcb31ef64ce.json -%%WWWDIR%%/client/i18n/sv.34f9fb56a24634eccda6.json -%%WWWDIR%%/client/i18n/tr.544b47361996965e4b54.json -%%WWWDIR%%/client/i18n/uk.ae1262e3a655d57b306a.json -%%WWWDIR%%/client/i18n/zh-CN.5a185e20a9a6eda53a08.json -%%WWWDIR%%/client/i18n/zh-TW.00e96559ba9cef1d213a.json +%%WWWDIR%%/client/files/ff54773341517ad8040e.svg +%%WWWDIR%%/client/i18n/bg.880c82092f0194cf3ac2.json +%%WWWDIR%%/client/i18n/de.222382299aed199aef04.json +%%WWWDIR%%/client/i18n/en_AU.c8e07b32a67e96dc01df.json +%%WWWDIR%%/client/i18n/es.616f0a203236dbc62f1c.json +%%WWWDIR%%/client/i18n/fa.83844e77ec7ddc94812d.json +%%WWWDIR%%/client/i18n/fr.75be81dfe3a847ddd54a.json +%%WWWDIR%%/client/i18n/hu.15f6f11876272c92873d.json +%%WWWDIR%%/client/i18n/it.af68bee80a2d7e6ef203.json +%%WWWDIR%%/client/i18n/ja.01af69de2d9c48cbc61f.json +%%WWWDIR%%/client/i18n/ko.65ea228d04fc837d7275.json +%%WWWDIR%%/client/i18n/nl.86d9023f6f06ff97b41f.json +%%WWWDIR%%/client/i18n/pl.7a79d8c7c03d8ee8ef5a.json +%%WWWDIR%%/client/i18n/pt-BR.67695b7aa7977f07256e.json +%%WWWDIR%%/client/i18n/ro.010178bc006a1a2dc447.json +%%WWWDIR%%/client/i18n/ru.dd4b26a78332df723817.json +%%WWWDIR%%/client/i18n/sv.6c5c6d942ee87df1385c.json +%%WWWDIR%%/client/i18n/tr.173b7ae534defdc2ed1a.json +%%WWWDIR%%/client/i18n/uk.f153053d2811aab53c67.json +%%WWWDIR%%/client/i18n/vi.8fa515754ddb1c9ccf83.json +%%WWWDIR%%/client/i18n/zh-CN.fc9548e8486ee2cb8bf6.json +%%WWWDIR%%/client/i18n/zh-TW.a3aa38ccaa3dc2444680.json %%WWWDIR%%/client/icon_120x120.png %%WWWDIR%%/client/icon_144x144.png %%WWWDIR%%/client/icon_152x152.png @@ -4054,12 +4043,8 @@ %%WWWDIR%%/client/icon_72x72.png %%WWWDIR%%/client/icon_76x76.png %%WWWDIR%%/client/icon_96x96.png -%%WWWDIR%%/client/images/add_payment_method.png -%%WWWDIR%%/client/images/add_subscription.png %%WWWDIR%%/client/images/admin-onboarding-background.jpg %%WWWDIR%%/client/images/appIcons.png -%%WWWDIR%%/client/images/blue-lower.svg -%%WWWDIR%%/client/images/blue.svg %%WWWDIR%%/client/images/browser-icons/chrome.svg %%WWWDIR%%/client/images/browser-icons/edge.svg %%WWWDIR%%/client/images/browser-icons/firefox.svg @@ -4076,13 +4061,10 @@ %%WWWDIR%%/client/images/cards/mastercard.png %%WWWDIR%%/client/images/cards/visa.jpg %%WWWDIR%%/client/images/channel_icon.png -%%WWWDIR%%/client/images/circles.png %%WWWDIR%%/client/images/cloud-laptop-error.png %%WWWDIR%%/client/images/cloud-laptop-warning.png %%WWWDIR%%/client/images/cloud-laptop.png %%WWWDIR%%/client/images/cloud-upgrade-person-hand-to-face.png -%%WWWDIR%%/client/images/computer-with-alert.svg -%%WWWDIR%%/client/images/credit-card-empty-state.png %%WWWDIR%%/client/images/favicon/android-chrome-192x192.png %%WWWDIR%%/client/images/favicon/apple-touch-icon-120x120.png %%WWWDIR%%/client/images/favicon/apple-touch-icon-144x144.png @@ -4116,11 +4098,11 @@ %%WWWDIR%%/client/images/logo_email_blue.png %%WWWDIR%%/client/images/logo_email_dark.png %%WWWDIR%%/client/images/logo_email_gray.png -%%WWWDIR%%/client/images/payment-method-illustration.png -%%WWWDIR%%/client/images/warning.png +%%WWWDIR%%/client/images/payment_processing.png +%%WWWDIR%%/client/images/purchase_alert.png %%WWWDIR%%/client/images/welcome_illustration_new.png -%%WWWDIR%%/client/main.cc2eb97b4b3e260a6bb5.js -%%WWWDIR%%/client/main.cc2eb97b4b3e260a6bb5.js.map +%%WWWDIR%%/client/main.14f438a37b63d34e4fda.js +%%WWWDIR%%/client/main.14f438a37b63d34e4fda.js.map %%WWWDIR%%/client/manifest.json %%WWWDIR%%/client/remote_entry.js %%WWWDIR%%/client/remote_entry.js.map diff --git a/www/microbin/Makefile b/www/microbin/Makefile index cc8602fbe985..19ce8e635010 100644 --- a/www/microbin/Makefile +++ b/www/microbin/Makefile @@ -1,7 +1,7 @@ PORTNAME= microbin DISTVERSIONPREFIX= v DISTVERSION= 2.0.4 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/miniflux/Makefile b/www/miniflux/Makefile index f0b79bb20860..a49e892b91ea 100644 --- a/www/miniflux/Makefile +++ b/www/miniflux/Makefile @@ -1,5 +1,5 @@ PORTNAME= miniflux -DISTVERSION= 2.1.2 +DISTVERSION= 2.1.3 PORTREVISION= 1 CATEGORIES= www @@ -19,6 +19,7 @@ GH_PROJECT= v2 GH_TUPLE= \ PuerkitoBio:goquery:v1.9.1:puerkitobio_goquery/vendor/github.com/PuerkitoBio/goquery \ abadojack:whatlanggo:v1.0.1:abadojack_whatlanggo/vendor/github.com/abadojack/whatlanggo \ + andybalholm:brotli:v1.1.0:andybalholm_brotli/vendor/github.com/andybalholm/brotli \ andybalholm:cascadia:v1.3.2:andybalholm_cascadia/vendor/github.com/andybalholm/cascadia \ beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \ cespare:xxhash:v2.2.0:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \ @@ -28,13 +29,11 @@ GH_TUPLE= \ go-webauthn:webauthn:v0.10.2:go_webauthn_webauthn/vendor/github.com/go-webauthn/webauthn \ go-webauthn:x:v0.1.9:go_webauthn_x/vendor/github.com/go-webauthn/x \ golang-jwt:jwt:v5.2.1:golang_jwt_jwt_v5/vendor/github.com/golang-jwt/jwt/v5 \ - golang:appengine:v1.6.8:golang_appengine/vendor/google.golang.org/appengine \ - golang:crypto:v0.21.0:golang_crypto/vendor/golang.org/x/crypto \ - golang:net:v0.22.0:golang_net/vendor/golang.org/x/net \ - golang:oauth2:v0.18.0:golang_oauth2/vendor/golang.org/x/oauth2 \ - golang:protobuf:v1.5.3:golang_protobuf/vendor/github.com/golang/protobuf \ - golang:sys:v0.18.0:golang_sys/vendor/golang.org/x/sys \ - golang:term:v0.18.0:golang_term/vendor/golang.org/x/term \ + golang:crypto:v0.22.0:golang_crypto/vendor/golang.org/x/crypto \ + golang:net:v0.24.0:golang_net/vendor/golang.org/x/net \ + golang:oauth2:v0.19.0:golang_oauth2/vendor/golang.org/x/oauth2 \ + golang:sys:v0.19.0:golang_sys/vendor/golang.org/x/sys \ + golang:term:v0.19.0:golang_term/vendor/golang.org/x/term \ golang:text:v0.14.0:golang_text/vendor/golang.org/x/text \ google:go-tpm:v0.9.0:google_go_tpm/vendor/github.com/google/go-tpm \ google:uuid:v1.6.0:google_uuid/vendor/github.com/google/uuid \ @@ -47,10 +46,10 @@ GH_TUPLE= \ prometheus:common:v0.48.0:prometheus_common/vendor/github.com/prometheus/common \ prometheus:procfs:v0.12.0:prometheus_procfs/vendor/github.com/prometheus/procfs \ protocolbuffers:protobuf-go:v1.33.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ - tdewolff:minify:v2.20.19:tdewolff_minify_v2/vendor/github.com/tdewolff/minify/v2 \ - tdewolff:parse:v2.7.12:tdewolff_parse_v2/vendor/github.com/tdewolff/parse/v2 \ + tdewolff:minify:v2.20.20:tdewolff_minify_v2/vendor/github.com/tdewolff/minify/v2 \ + tdewolff:parse:v2.7.13:tdewolff_parse_v2/vendor/github.com/tdewolff/parse/v2 \ x448:float16:v0.8.4:x448_float16/vendor/github.com/x448/float16 \ - yuin:goldmark:v1.7.0:yuin_goldmark/vendor/github.com/yuin/goldmark + yuin:goldmark:v1.7.1:yuin_goldmark/vendor/github.com/yuin/goldmark USE_RC_SUBR= miniflux GO_PKGNAME= miniflux.app diff --git a/www/miniflux/distinfo b/www/miniflux/distinfo index 6ffb5afd7c4d..e39379a61ec1 100644 --- a/www/miniflux/distinfo +++ b/www/miniflux/distinfo @@ -1,10 +1,12 @@ -TIMESTAMP = 1711896499 -SHA256 (miniflux-v2-2.1.2_GH0.tar.gz) = 5025c895c24c5636f8e5d3aeed8f9952fe63838c50fbecbcaa51b2837826d68a -SIZE (miniflux-v2-2.1.2_GH0.tar.gz) = 698107 +TIMESTAMP = 1714289655 +SHA256 (miniflux-v2-2.1.3_GH0.tar.gz) = 815f5ecd37c09c7aebbc458c10c2c88843940508eeb628236af05e8c908e89e6 +SIZE (miniflux-v2-2.1.3_GH0.tar.gz) = 710470 SHA256 (PuerkitoBio-goquery-v1.9.1_GH0.tar.gz) = ad303bf30070c34fa0f05d2701b7bd024642e0183708a96ed0d2b837b21f4d1a SIZE (PuerkitoBio-goquery-v1.9.1_GH0.tar.gz) = 107417 SHA256 (abadojack-whatlanggo-v1.0.1_GH0.tar.gz) = 8c9aef03ace03ca11204159b83c8f77c816fc2a71232483d5370817dcbb2c561 SIZE (abadojack-whatlanggo-v1.0.1_GH0.tar.gz) = 148139 +SHA256 (andybalholm-brotli-v1.1.0_GH0.tar.gz) = 63395834ab5ce6ad91f90af79223995f44aacecda3c66ac5700a87b080c0009c +SIZE (andybalholm-brotli-v1.1.0_GH0.tar.gz) = 1829084 SHA256 (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = f30ebb75a9f43a30478c870dd6e372ac7ef64549f621eceb3b13fd91bfde80cb SIZE (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = 35370 SHA256 (beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825 @@ -23,20 +25,16 @@ SHA256 (go-webauthn-x-v0.1.9_GH0.tar.gz) = 52ee591589fc8636e248c1ae9092e03c49e33 SIZE (go-webauthn-x-v0.1.9_GH0.tar.gz) = 10564 SHA256 (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 76d1c81a7cd38ed03309f770f60ac3417f16c75b4c53a0c01bb783863783fef0 SIZE (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 61340 -SHA256 (golang-appengine-v1.6.8_GH0.tar.gz) = 9f0029767e180c64ef42c448f02a247deb2980b2ba6908977ad4c53ebae1abb5 -SIZE (golang-appengine-v1.6.8_GH0.tar.gz) = 628708 -SHA256 (golang-crypto-v0.21.0_GH0.tar.gz) = 4c65ea22c4b0bc7380b4213a294698c517fe3378e0edd30c4d2b6cf7f12fc8bd -SIZE (golang-crypto-v0.21.0_GH0.tar.gz) = 1810887 -SHA256 (golang-net-v0.22.0_GH0.tar.gz) = 01a7906b265d4c562e210926780f7698e8307da296e91c55711066bce453845e -SIZE (golang-net-v0.22.0_GH0.tar.gz) = 1501049 -SHA256 (golang-oauth2-v0.18.0_GH0.tar.gz) = 497458219c1b4c3c44f0acf33a54c68dd723dcc3a1c592f0ac712265008a182a -SIZE (golang-oauth2-v0.18.0_GH0.tar.gz) = 99719 -SHA256 (golang-protobuf-v1.5.3_GH0.tar.gz) = 48457a6a9e8c78a7556ff5ff4a4c77d7df9bf70e882491ee0f3f1ff06db2bfaa -SIZE (golang-protobuf-v1.5.3_GH0.tar.gz) = 171822 -SHA256 (golang-sys-v0.18.0_GH0.tar.gz) = cee1944ab655ddf7eab6301e15cb6d01fdd6cd0a0f0b5896050ee60b124e084c -SIZE (golang-sys-v0.18.0_GH0.tar.gz) = 1448211 -SHA256 (golang-term-v0.18.0_GH0.tar.gz) = d95bb8c95f321f8f1b33bd45c168c17c2e09e932b2e96c15ad5a30b87317eb84 -SIZE (golang-term-v0.18.0_GH0.tar.gz) = 14747 +SHA256 (golang-crypto-v0.22.0_GH0.tar.gz) = be0f461ea3ce13349996dca48fbb27537fd738aa6498fb38cfbf87a2ce31e082 +SIZE (golang-crypto-v0.22.0_GH0.tar.gz) = 1813353 +SHA256 (golang-net-v0.24.0_GH0.tar.gz) = 6fbc9f6ddc538c67affd1248d68ca85f69e0abe916181b1cd81323093afa96b9 +SIZE (golang-net-v0.24.0_GH0.tar.gz) = 1509016 +SHA256 (golang-oauth2-v0.19.0_GH0.tar.gz) = a10e7be03a7d63239c56664da4979577599aca5929aec725b09d3159bfd11637 +SIZE (golang-oauth2-v0.19.0_GH0.tar.gz) = 98361 +SHA256 (golang-sys-v0.19.0_GH0.tar.gz) = da82f3d99abd964483ec5d622ddf620e2492ec0a18c154475f35d938c4240c7b +SIZE (golang-sys-v0.19.0_GH0.tar.gz) = 1449493 +SHA256 (golang-term-v0.19.0_GH0.tar.gz) = 9ef2c212cb48b0736054cfc3556bea414fb526fff877f6c50c30f78fa5c19218 +SIZE (golang-term-v0.19.0_GH0.tar.gz) = 14741 SHA256 (golang-text-v0.14.0_GH0.tar.gz) = c80295e75bda599d17ccf74038139b0957b9915fae4e60d8b46f89454ef171a0 SIZE (golang-text-v0.14.0_GH0.tar.gz) = 8974094 SHA256 (google-go-tpm-v0.9.0_GH0.tar.gz) = 4173733d1c3b82cf935edd35caf4f47dc13efdae835c6225a2f3e66cf64f40a2 @@ -61,11 +59,11 @@ SHA256 (prometheus-procfs-v0.12.0_GH0.tar.gz) = 2e10f60725a5905d6cfaeffd0bc14411 SIZE (prometheus-procfs-v0.12.0_GH0.tar.gz) = 237430 SHA256 (protocolbuffers-protobuf-go-v1.33.0_GH0.tar.gz) = 21661d7634e3f783b015b93ceafc0261f2f02a270799bac871602c3a2172cfbe SIZE (protocolbuffers-protobuf-go-v1.33.0_GH0.tar.gz) = 1482410 -SHA256 (tdewolff-minify-v2.20.19_GH0.tar.gz) = 705356c3d7eb2e773557a280579c1dcbcda5c78378ea77dd346f7a367946f5e1 -SIZE (tdewolff-minify-v2.20.19_GH0.tar.gz) = 7044971 -SHA256 (tdewolff-parse-v2.7.12_GH0.tar.gz) = 6c99569467d9fb6c2f28c0eea0366d2b5b48e5726b4caf3e0a0708dc4a7d304a -SIZE (tdewolff-parse-v2.7.12_GH0.tar.gz) = 108858 +SHA256 (tdewolff-minify-v2.20.20_GH0.tar.gz) = 15027db4d856e72482e0ff7b3cee8bcb9e3dcee44ef3e4462de9c11f4e6066b6 +SIZE (tdewolff-minify-v2.20.20_GH0.tar.gz) = 7734604 +SHA256 (tdewolff-parse-v2.7.13_GH0.tar.gz) = 7797bcffb9e9f8342ecab4f23bc3b2c1bd31106c419f79804e8dcb32de6d2c44 +SIZE (tdewolff-parse-v2.7.13_GH0.tar.gz) = 109407 SHA256 (x448-float16-v0.8.4_GH0.tar.gz) = 2f8f03b3d972f14e1a5a33bab5d1539174e46c696bc91c5b8ac6d7f9036dde15 SIZE (x448-float16-v0.8.4_GH0.tar.gz) = 13098 -SHA256 (yuin-goldmark-v1.7.0_GH0.tar.gz) = 07f887b06809aefe5806af3c33ce6299070f57cb726b1ad0302cc67717808286 -SIZE (yuin-goldmark-v1.7.0_GH0.tar.gz) = 251970 +SHA256 (yuin-goldmark-v1.7.1_GH0.tar.gz) = e1159c456d6d5c8fdfeb61534aa23ef6f4108bbf74a21016199debfdde82590a +SIZE (yuin-goldmark-v1.7.1_GH0.tar.gz) = 252103 diff --git a/www/minio/Makefile b/www/minio/Makefile index 4a94d887d43c..8d4c24acd34e 100644 --- a/www/minio/Makefile +++ b/www/minio/Makefile @@ -1,6 +1,6 @@ PORTNAME= minio PORTVERSION= ${GH_TAGNAME:S/RELEASE.//:S/Z//:S/T/-/:S/-/./g} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www DIST_SUBDIR= minio diff --git a/www/miniserve/Makefile b/www/miniserve/Makefile index bb42f9e32087..8106b0c8b5f2 100644 --- a/www/miniserve/Makefile +++ b/www/miniserve/Makefile @@ -1,7 +1,7 @@ PORTNAME= miniserve DISTVERSIONPREFIX= v DISTVERSION= 0.27.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= mikael@FreeBSD.org diff --git a/www/mirrorselect/Makefile b/www/mirrorselect/Makefile index ccb998c258c2..7b16377d6a86 100644 --- a/www/mirrorselect/Makefile +++ b/www/mirrorselect/Makefile @@ -1,7 +1,7 @@ PORTNAME= mirrorselect DISTVERSIONPREFIX= v DISTVERSION= 0.9.0 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www ports-mgmt MAINTAINER= aly@aaronly.me diff --git a/www/mod_auth_openid/Makefile b/www/mod_auth_openid/Makefile index 27d732746dab..3d2c1b81aa8f 100644 --- a/www/mod_auth_openid/Makefile +++ b/www/mod_auth_openid/Makefile @@ -12,6 +12,9 @@ WWW= https://findingscience.com/mod_auth_openid/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING +DEPRECATED= Depends on expired devel/libopkele +EXPIRATION_DATE=2024-05-24 + LIB_DEPENDS= libopkele.so:devel/libopkele \ libsqlite3.so:databases/sqlite3 diff --git a/www/mod_tidy/Makefile b/www/mod_tidy/Makefile deleted file mode 100644 index 30e90324f06a..000000000000 --- a/www/mod_tidy/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -PORTNAME= mod_tidy -PORTVERSION= 0.5.5 -PORTREVISION= 2 -CATEGORIES= www -MASTER_SITES= http://mod-tidy.sourceforge.net/src/ -DIST_SUBDIR= apache2 - -MAINTAINER= apache@FreeBSD.org -COMMENT= Validates the HTML output of your apache2 web server -WWW= https://mod-tidy.sourceforge.net/ - -DEPRECATED= Last upstream release was in 2005 -EXPIRATION_DATE=2024-04-24 - -LICENSE= APACHE20 MIT -LICENSE_COMB= multi - -LIB_DEPENDS= libtidy5.so:www/tidy-html5 - -WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/src -USES= apache -AP_FAST_BUILD= yes -AP_GENPLIST= yes -AP_INC+= ${LOCALBASE}/include -AP_LIB+= ${LOCALBASE}/lib -ltidy5 - -post-patch: - @${REINPLACE_CMD} -e "s/buffio.h/tidybuffio.h/g" \ - ${WRKSRC}/mod_tidy.c - -.include <bsd.port.mk> diff --git a/www/mod_tidy/distinfo b/www/mod_tidy/distinfo deleted file mode 100644 index b5d285426a03..000000000000 --- a/www/mod_tidy/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (apache2/mod_tidy-0.5.5.tar.gz) = 3c8d3ca0ac67974efc82040bde224068e9b3024e1a2521664716aa2618310392 -SIZE (apache2/mod_tidy-0.5.5.tar.gz) = 312340 diff --git a/www/mod_tidy/pkg-descr b/www/mod_tidy/pkg-descr deleted file mode 100644 index 06660fcc875e..000000000000 --- a/www/mod_tidy/pkg-descr +++ /dev/null @@ -1,6 +0,0 @@ -mod_tidy validates the HTML output of your apache2 web server. So you don't need -a separate application to check your HTML. -It works as a filter that hooks up to HTML output. mod_tidy feeds the HTML -output to TidyLib which validates the HTML output. If TidyLib finds -an error the client receives a HTML page with a list of all found errors. If -TidyLib doesn't complain you will get your HTML data as without mod_tidy. diff --git a/www/monolith/Makefile b/www/monolith/Makefile index ac8daae02a53..dbdd6b038326 100644 --- a/www/monolith/Makefile +++ b/www/monolith/Makefile @@ -1,7 +1,7 @@ PORTNAME= monolith DISTVERSIONPREFIX= v DISTVERSION= 2.8.1 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/moodle41/Makefile b/www/moodle41/Makefile index 5d51b5431d5f..6dfdbe7e0e17 100644 --- a/www/moodle41/Makefile +++ b/www/moodle41/Makefile @@ -1,5 +1,6 @@ PORTNAME= moodle PORTVERSION= 4.1.10 +PORTREVISION= 1 CATEGORIES= www education MASTER_SITES= SF/moodle/Moodle/stable401/ PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}${PHP_PKGNAMESUFFIX} diff --git a/www/moodle42/Makefile b/www/moodle42/Makefile index 44b12bbe8da3..225b4b0df77f 100644 --- a/www/moodle42/Makefile +++ b/www/moodle42/Makefile @@ -1,5 +1,6 @@ PORTNAME= moodle PORTVERSION= 4.2.7 +PORTREVISION= 2 CATEGORIES= www education MASTER_SITES= SF/moodle/Moodle/stable402/ PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}${PHP_PKGNAMESUFFIX} diff --git a/www/moodle43/Makefile b/www/moodle43/Makefile index f53dd5eafd90..cbe53a0a6a86 100644 --- a/www/moodle43/Makefile +++ b/www/moodle43/Makefile @@ -1,5 +1,6 @@ PORTNAME= moodle PORTVERSION= 4.3.4 +PORTREVISION= 2 CATEGORIES= www education MASTER_SITES= SF/moodle/Moodle/stable403/ PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}${PHP_PKGNAMESUFFIX} diff --git a/www/moodle44/Makefile b/www/moodle44/Makefile index 31194662467a..e48a912ce9ed 100644 --- a/www/moodle44/Makefile +++ b/www/moodle44/Makefile @@ -1,5 +1,6 @@ PORTNAME= moodle PORTVERSION= 4.4 +PORTREVISION= 3 CATEGORIES= www education MASTER_SITES= SF/moodle/Moodle/stable404/ PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}${PHP_PKGNAMESUFFIX} diff --git a/www/morty/Makefile b/www/morty/Makefile index a19172e559f3..d8f21c1c8759 100644 --- a/www/morty/Makefile +++ b/www/morty/Makefile @@ -2,7 +2,7 @@ PORTNAME= morty DISTVERSIONPREFIX= v DISTVERSION= 0.2.0-12 DISTVERSIONSUFFIX= -gfe94d9a -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www net MAINTAINER= yuri@FreeBSD.org diff --git a/www/ncgopher/Makefile b/www/ncgopher/Makefile index 3f5a8a2bd2aa..7c8b88dff703 100644 --- a/www/ncgopher/Makefile +++ b/www/ncgopher/Makefile @@ -1,7 +1,7 @@ PORTNAME= ncgopher DISTVERSIONPREFIX= v DISTVERSION= 0.4.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www MAINTAINER= beastieboy@beastieboy.net diff --git a/www/newsboat/Makefile b/www/newsboat/Makefile index 4995beeb50af..2aae4ca5ec72 100644 --- a/www/newsboat/Makefile +++ b/www/newsboat/Makefile @@ -1,6 +1,6 @@ PORTNAME= newsboat DISTVERSION= 2.33 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= www MASTER_SITES= https://newsboat.org/releases/${DISTVERSION}/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} diff --git a/www/nextcloud-appointments/Makefile b/www/nextcloud-appointments/Makefile index f9c7af801489..ba19d6f4adc9 100644 --- a/www/nextcloud-appointments/Makefile +++ b/www/nextcloud-appointments/Makefile @@ -1,5 +1,6 @@ PORTNAME= appointments -PORTVERSION= 2.0.7 +PORTVERSION= 2.1.3 +PORTREVISION= 3 CATEGORIES= www MASTER_SITES= https://github.com/${GH_ACCOUNT}/${PORTNAME}/raw/${DISTVERSIONPREFIX}${DISTVERSION}/build/artifacts/appstore/ DISTVERSIONPREFIX= v @@ -12,13 +13,10 @@ WWW= https://apps.nextcloud.com/apps/appointments LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/COPYING -NEXTCLOUD_RUN_DEPENDS= 26 +NEXTCLOUD_RUN_DEPENDS= 27 USES= nextcloud php:flavors GH_ACCOUNT= SergeyMosin -post-patch: - ${RMDIR} ${WRKSRC}/lib/CalDAV - .include <bsd.port.mk> diff --git a/www/nextcloud-appointments/distinfo b/www/nextcloud-appointments/distinfo index 0e251f0aaa11..0ae6b519d776 100644 --- a/www/nextcloud-appointments/distinfo +++ b/www/nextcloud-appointments/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713718545 -SHA256 (nextcloud/appointments-2.0.7/appointments.tar.gz) = 81b60694d6b01908ab978cdb0d0b3da6da48202aa48e18a200e3e0ab4e49ae28 -SIZE (nextcloud/appointments-2.0.7/appointments.tar.gz) = 1844479 +TIMESTAMP = 1715595612 +SHA256 (nextcloud/appointments-2.1.3/appointments.tar.gz) = a9401458529fc0d357c069eb9a8de4843fc944fff8bd301de992b9d152137af8 +SIZE (nextcloud/appointments-2.1.3/appointments.tar.gz) = 1863497 diff --git a/www/nextcloud-calendar/Makefile b/www/nextcloud-calendar/Makefile index 23a179485ca9..51ad84cab585 100644 --- a/www/nextcloud-calendar/Makefile +++ b/www/nextcloud-calendar/Makefile @@ -1,6 +1,7 @@ PORTNAME= calendar -PORTVERSION= 4.7.0 +PORTVERSION= 4.7.4 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www MAINTAINER= brnrd@FreeBSD.org diff --git a/www/nextcloud-calendar/distinfo b/www/nextcloud-calendar/distinfo index 2db47ff7bce4..e477073423cc 100644 --- a/www/nextcloud-calendar/distinfo +++ b/www/nextcloud-calendar/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713859664 -SHA256 (nextcloud/calendar-v4.7.0.tar.gz) = 62f6a374fd9df2403aa2ded221c5666eccb83f23116a5228b4a25520488dcf8d -SIZE (nextcloud/calendar-v4.7.0.tar.gz) = 18133551 +TIMESTAMP = 1715847935 +SHA256 (nextcloud/calendar-v4.7.4.tar.gz) = 0b70187f5993dda3760cadb721a7e33c898adba36d8351bb1a76394d3ecff9fb +SIZE (nextcloud/calendar-v4.7.4.tar.gz) = 18134366 diff --git a/www/nextcloud-contacts/Makefile b/www/nextcloud-contacts/Makefile index 8b6e66aec7cc..3073492b2c1e 100644 --- a/www/nextcloud-contacts/Makefile +++ b/www/nextcloud-contacts/Makefile @@ -1,13 +1,14 @@ PORTNAME= contacts -PORTVERSION= 5.5.3 +PORTVERSION= 6.0.0 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www MAINTAINER= brnrd@FreeBSD.org COMMENT= Contacts app for Nextcloud WWW= https://apps.nextcloud.com/apps/contacts -NEXTCLOUD_RUN_DEPENDS= 25 +NEXTCLOUD_RUN_DEPENDS= 29 USES= cpe nextcloud php:flavors CPE_VENDOR= nextcloud diff --git a/www/nextcloud-contacts/distinfo b/www/nextcloud-contacts/distinfo index 863ce67f01e5..d58cb5e29950 100644 --- a/www/nextcloud-contacts/distinfo +++ b/www/nextcloud-contacts/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709978955 -SHA256 (nextcloud/contacts-v5.5.3.tar.gz) = cf19a03228b3cd719f45e452f5727e7dbead2512c7fd9e4dbee2e9b296004452 -SIZE (nextcloud/contacts-v5.5.3.tar.gz) = 4990400 +TIMESTAMP = 1713982593 +SHA256 (nextcloud/contacts-v6.0.0.tar.gz) = e3c11127d0d0f70ef57a7713d9756f715695f846ed86013142588a3b5b10fb50 +SIZE (nextcloud/contacts-v6.0.0.tar.gz) = 8599250 diff --git a/www/nextcloud-deck/Makefile b/www/nextcloud-deck/Makefile index 8f57d14f93fc..e5d45231d58b 100644 --- a/www/nextcloud-deck/Makefile +++ b/www/nextcloud-deck/Makefile @@ -1,6 +1,7 @@ PORTNAME= deck -PORTVERSION= 1.12.2 +PORTVERSION= 1.13.0 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www #MASTER_SITES= https://github.com/nextcloud-releases/${PORTNAME}/releases/download/${DISTVERSIONPREFIX}${PORTVERSION}/ @@ -10,7 +11,7 @@ WWW= https://apps.nextcloud.com/apps/deck LICENSE_FILE= ${WRKSRC}/LICENSE -NEXTCLOUD_RUN_DEPENDS= 28 +NEXTCLOUD_RUN_DEPENDS= 29 USES= cpe nextcloud php:flavors diff --git a/www/nextcloud-deck/distinfo b/www/nextcloud-deck/distinfo index fd7ebd61b937..e989987e8938 100644 --- a/www/nextcloud-deck/distinfo +++ b/www/nextcloud-deck/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708080834 -SHA256 (nextcloud/deck-v1.12.2.tar.gz) = 2bd646dcf73d75fac5de1162dc508aa195b2c1751ab9e42ec06a5992cba64e80 -SIZE (nextcloud/deck-v1.12.2.tar.gz) = 16103927 +TIMESTAMP = 1713982267 +SHA256 (nextcloud/deck-v1.13.0.tar.gz) = 1b27f2ab8ac9bf86a52e17485bc4bcc0250039dc69e941bb5205161f40a4551e +SIZE (nextcloud/deck-v1.13.0.tar.gz) = 15062066 diff --git a/www/nextcloud-forms/Makefile b/www/nextcloud-forms/Makefile index 08da73683a7e..3c17c3c4da08 100644 --- a/www/nextcloud-forms/Makefile +++ b/www/nextcloud-forms/Makefile @@ -1,6 +1,7 @@ PORTNAME= forms PORTVERSION= 4.2.3 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www MAINTAINER= brnrd@FreeBSD.org diff --git a/www/nextcloud-groupfolders/Makefile b/www/nextcloud-groupfolders/Makefile index 25a2436ac291..d2cfecdbcc19 100644 --- a/www/nextcloud-groupfolders/Makefile +++ b/www/nextcloud-groupfolders/Makefile @@ -1,6 +1,7 @@ PORTNAME= groupfolders -PORTVERSION= 16.0.6 +PORTVERSION= 17.0.0 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www MASTER_SITES= https://github.com/nextcloud-releases/${PORTNAME}/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/ @@ -8,7 +9,7 @@ MAINTAINER= brnrd@FreeBSD.org COMMENT= Groupfolders app for Nextcloud WWW= https://apps.nextcloud.com/apps/groupfolders -NEXTCLOUD_RUN_DEPENDS= 28 +NEXTCLOUD_RUN_DEPENDS= 29 USES= nextcloud php:flavors diff --git a/www/nextcloud-groupfolders/distinfo b/www/nextcloud-groupfolders/distinfo index 917b996c9653..1c4cd3e223ce 100644 --- a/www/nextcloud-groupfolders/distinfo +++ b/www/nextcloud-groupfolders/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712314061 -SHA256 (nextcloud/groupfolders-v16.0.6.tar.gz) = c0491af687a0398cfac3dc1cac0d6e81d5c0fc44c50e0ba84708c5e83fe2eed2 -SIZE (nextcloud/groupfolders-v16.0.6.tar.gz) = 3129381 +TIMESTAMP = 1716026325 +SHA256 (nextcloud/groupfolders-v17.0.0.tar.gz) = 46c68e0ddc92b1b56adcea4594cafacd48942151b09d62c701347479eae52d04 +SIZE (nextcloud/groupfolders-v17.0.0.tar.gz) = 3350686 diff --git a/www/nextcloud-notes/Makefile b/www/nextcloud-notes/Makefile index 7b9e18765919..20fa9cb71d1c 100644 --- a/www/nextcloud-notes/Makefile +++ b/www/nextcloud-notes/Makefile @@ -1,6 +1,7 @@ PORTNAME= notes -PORTVERSION= 4.9.4 +PORTVERSION= 4.10.0 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www editors MASTER_SITES= https://github.com/nextcloud/${PORTNAME}/releases/download/${DISTVERSIONPREFIX}${PORTVERSION}/ DISTNAME= ${PORTNAME} diff --git a/www/nextcloud-notes/distinfo b/www/nextcloud-notes/distinfo index bb425ec205b4..4e49f5e81540 100644 --- a/www/nextcloud-notes/distinfo +++ b/www/nextcloud-notes/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711798618 -SHA256 (nextcloud/notes-4.9.4/notes.tar.gz) = 2ef524020b08fd0e7bfe6cce9ba7bebdf293b03e9b7f30808a96984b769871b8 -SIZE (nextcloud/notes-4.9.4/notes.tar.gz) = 6349343 +TIMESTAMP = 1713982406 +SHA256 (nextcloud/notes-4.10.0/notes.tar.gz) = 6afeb2e465624f3947b6751bfce203c3ed30740fd94703d840c537c8311b3134 +SIZE (nextcloud/notes-4.10.0/notes.tar.gz) = 6351233 diff --git a/www/nextcloud-tasks/Makefile b/www/nextcloud-tasks/Makefile index 3ff3ebdf7ccf..4e8e77c27b31 100644 --- a/www/nextcloud-tasks/Makefile +++ b/www/nextcloud-tasks/Makefile @@ -1,6 +1,7 @@ PORTNAME= tasks -PORTVERSION= 0.15.0 +PORTVERSION= 0.16.0 DISTVERSIONPREFIX= v +PORTREVISION= 3 CATEGORIES= www MASTER_SITES?= https://github.com/nextcloud/${PORTNAME}/releases/download/${DISTVERSIONPREFIX}${PORTVERSION}/ DISTNAME= ${PORTNAME} @@ -11,7 +12,7 @@ WWW= https://apps.nextcloud.com/apps/tasks LICENSE_FILE= ${WRKSRC}/LICENSE -NEXTCLOUD_RUN_DEPENDS= 25 +NEXTCLOUD_RUN_DEPENDS= 28 USES= nextcloud php:flavors diff --git a/www/nextcloud-tasks/distinfo b/www/nextcloud-tasks/distinfo index 6370caaab692..056d51d63e0d 100644 --- a/www/nextcloud-tasks/distinfo +++ b/www/nextcloud-tasks/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686393351 -SHA256 (nextcloud/tasks-0.15.0/tasks.tar.gz) = 9e2cc95050722bbf0567a28f278cdf394e59f42940c61c2043b77e5f94c69ccf -SIZE (nextcloud/tasks-0.15.0/tasks.tar.gz) = 11127579 +TIMESTAMP = 1715595671 +SHA256 (nextcloud/tasks-0.16.0/tasks.tar.gz) = 1e2b5841c7544541ee8d134c1748ca433bd23bdddb22d8ac2347a6ab4cb0f29e +SIZE (nextcloud/tasks-0.16.0/tasks.tar.gz) = 2592926 diff --git a/www/nextcloud/Makefile b/www/nextcloud/Makefile index ac4b12dcca79..aeaa0bb702ae 100644 --- a/www/nextcloud/Makefile +++ b/www/nextcloud/Makefile @@ -1,5 +1,6 @@ PORTNAME= nextcloud -PORTVERSION= 28.0.4 +PORTVERSION= 29.0.0 +PORTREVISION= 3 CATEGORIES= www MASTER_SITES= https://download.nextcloud.com/server/releases/ PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} diff --git a/www/nextcloud/distinfo b/www/nextcloud/distinfo index 82094b19056e..1a3ecbb26ea0 100644 --- a/www/nextcloud/distinfo +++ b/www/nextcloud/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711627473 -SHA256 (nextcloud/nextcloud-28.0.4.tar.bz2) = 9bfecee1e12fba48c49e9a71caa81c4ba10b2884787fab75d64ccfd122a13019 -SIZE (nextcloud/nextcloud-28.0.4.tar.bz2) = 189242050 +TIMESTAMP = 1713982058 +SHA256 (nextcloud/nextcloud-29.0.0.tar.bz2) = e9b53f6432b6f664487d3869645fa121a64cf0ed6aee83aa560903daf86b52bd +SIZE (nextcloud/nextcloud-29.0.0.tar.bz2) = 207504265 diff --git a/www/nghttp2/Makefile b/www/nghttp2/Makefile index 1be233b90a06..cde21d14801d 100644 --- a/www/nghttp2/Makefile +++ b/www/nghttp2/Makefile @@ -1,5 +1,5 @@ PORTNAME= nghttp2 -PORTVERSION= 1.61.0 +PORTVERSION= 1.62.1 CATEGORIES= www net MASTER_SITES= https://github.com/nghttp2/nghttp2/releases/download/v${PORTVERSION}/ @@ -13,27 +13,29 @@ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= libnghttp2>=${PORTVERSION}:www/libnghttp2 LIB_DEPENDS= libnghttp2.so:www/libnghttp2 -USES= cmake compiler:c++14-lang cpe localbase:ldflags pathfix pkgconfig python:env shebangfix ssl tar:xz +USES= cmake compiler:c++20-lang cpe localbase:ldflags pathfix pkgconfig python:env shebangfix ssl tar:xz CMAKE_ARGS= -DCMAKE_INSTALL_MANDIR=share/man -CMAKE_OFF= ENABLE_DEBUG ENABLE_HTTP3 ENABLE_LIB_ONLY ENABLE_STATIC_CRT ENABLE_WERROR WITH_LIBBPF WITH_MRUBY WITH_NEVERBLEED -CMAKE_ON= ENABLE_DOC ENABLE_FAILMALLOC ENABLE_THREADS +CMAKE_OFF= BUILD_SHARED_LIBS BUILD_STATIC_LIBS BUILD_TESTING ENABLE_DEBUG ENABLE_HTTP3 ENABLE_LIB_ONLY ENABLE_STATIC_CRT ENABLE_WERROR WITH_LIBBPF WITH_MRUBY WITH_NEVERBLEED +CMAKE_ON= ENABLE_FAILMALLOC ENABLE_THREADS WITH_JEMALLOC +USE_CXXSTD= c++20 USE_RC_SUBR= nghttpx SHEBANG_FILES= script/fetch-ocsp-response -OPTIONS_DEFINE= APP EXAMPLES HPACK +OPTIONS_DEFINE= APP DOCS EXAMPLES HPACK OPTIONS_DEFAULT=APP HPACK OPTIONS_SUB= yes APP_DESC= Build h2load, nghttp, nghttpd and nghttpx APP_BUILD_DEPENDS= c-ares>=1.7.5:dns/c-ares \ libev>=4.11:devel/libev -APP_CMAKE_BOOL= ENABLE_APP +APP_CMAKE_BOOL= ENABLE_APP WITH_LIBXML2 APP_LIB_DEPENDS= libcares.so:dns/c-ares \ libev.so:devel/libev APP_USE= GNOME=libxml2 APP_USES= gnome +DOCS_CMAKE_BOOL= ENABLE_DOC EXAMPLES_BUILD_DEPENDS= libevent>=2.0.8:devel/libevent EXAMPLES_CMAKE_BOOL= ENABLE_EXAMPLES EXAMPLES_LIB_DEPENDS= libevent_openssl.so:devel/libevent diff --git a/www/nghttp2/distinfo b/www/nghttp2/distinfo index 8579be1c53e4..2791d0cdcc6a 100644 --- a/www/nghttp2/distinfo +++ b/www/nghttp2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712261836 -SHA256 (nghttp2-1.61.0.tar.xz) = c0e660175b9dc429f11d25b9507a834fb752eea9135ab420bb7cb7e9dbcc9654 -SIZE (nghttp2-1.61.0.tar.xz) = 1645808 +TIMESTAMP = 1716142058 +SHA256 (nghttp2-1.62.1.tar.xz) = 2345d4dc136fda28ce243e0bb21f2e7e8ef6293d62c799abbf6f633a6887af72 +SIZE (nghttp2-1.62.1.tar.xz) = 1606084 diff --git a/www/nghttp2/pkg-plist b/www/nghttp2/pkg-plist index 54550692d97e..8b844d00e47f 100644 --- a/www/nghttp2/pkg-plist +++ b/www/nghttp2/pkg-plist @@ -5,6 +5,7 @@ %%APP%%bin/nghttpd %%APP%%bin/nghttpx @sample etc/nghttpx/nghttpx.conf.sample +%%PORTDOCS%%%%DOCSDIR%%/README.rst %%PORTEXAMPLES%%%%EXAMPLESDIR%%/client %%PORTEXAMPLES%%%%EXAMPLESDIR%%/client.c %%PORTEXAMPLES%%%%EXAMPLESDIR%%/deflate diff --git a/www/nginx-devel/Makefile b/www/nginx-devel/Makefile index 9a244c1c123f..cd7f337b85b5 100644 --- a/www/nginx-devel/Makefile +++ b/www/nginx-devel/Makefile @@ -1,5 +1,6 @@ PORTNAME?= nginx -PORTVERSION= 1.25.5 +PORTVERSION= 1.26.0 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://nginx.org/download/ \ LOCAL/osa @@ -15,7 +16,7 @@ LICENSE_FILE?= ${WRKSRC}/LICENSE CONFLICTS_INSTALL= nginx -PORTSCOUT= limit:^1\.2[4-5]\.[0-9]* +PORTSCOUT= limit:^1\.2[6-7]\.[0-9]* USES= cpe diff --git a/www/nginx-devel/Makefile.extmod b/www/nginx-devel/Makefile.extmod index 503e676388ff..4d51f8530bf2 100644 --- a/www/nginx-devel/Makefile.extmod +++ b/www/nginx-devel/Makefile.extmod @@ -231,7 +231,7 @@ NAXSI_VARS= DSO_EXTMODS+=naxsi NAXSI_SUBDIR=/naxsi_src NAXSI_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-naxsi-libinjection__sqli_c \ ${PATCHDIR}/extra-patch-naxsi_config -NJS_GH_TUPLE= nginx:njs:0.8.3:njs +NJS_GH_TUPLE= nginx:njs:0.8.4:njs NJS_VARS= DSO_EXTMODS+=njs NJS_SUBDIR=/nginx NJS_XML_IMPLIES= NJS diff --git a/www/nginx-devel/distinfo b/www/nginx-devel/distinfo index 39a6daca4441..ce61e4e583bb 100644 --- a/www/nginx-devel/distinfo +++ b/www/nginx-devel/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1713445894 -SHA256 (nginx-1.25.5.tar.gz) = 2fe2294f8af4144e7e842eaea884182a84ee7970e11046ba98194400902bbec0 -SIZE (nginx-1.25.5.tar.gz) = 1244060 +TIMESTAMP = 1714506394 +SHA256 (nginx-1.26.0.tar.gz) = d2e6c8439d6c6db5015d8eaab2470ab52aef85a7bf363182879977e084370497 +SIZE (nginx-1.26.0.tar.gz) = 1244118 SHA256 (nginx_mogilefs_module-1.0.4.tar.gz) = 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae SIZE (nginx_mogilefs_module-1.0.4.tar.gz) = 11208 SHA256 (ngx_http_redis-0.3.9.tar.gz) = 21f87540f0a44b23ffa5df16fb3d788bc90803b255ef14f9c26e3847a6f26f46 @@ -103,8 +103,8 @@ SHA256 (wargio-naxsi-1.6_GH0.tar.gz) = e5920fdd09cae155b89eb21a94a21c029ebfdb056 SIZE (wargio-naxsi-1.6_GH0.tar.gz) = 1116227 SHA256 (libinjection-libinjection-4aa3894_GH0.tar.gz) = ededea133e89e238ef2e60d0d62ef7ef9e741449eed8c5d856007132505bcd5b SIZE (libinjection-libinjection-4aa3894_GH0.tar.gz) = 2218294 -SHA256 (nginx-njs-0.8.3_GH0.tar.gz) = 5e1341ee8c1dfce420ea6456475dafa7d5f4b9aed310faca32597cf4d221cfe0 -SIZE (nginx-njs-0.8.3_GH0.tar.gz) = 735235 +SHA256 (nginx-njs-0.8.4_GH0.tar.gz) = fe197e254204c15e9f1df0acf375add57be3416901ec8d7b87319dccb490f90d +SIZE (nginx-njs-0.8.4_GH0.tar.gz) = 743910 SHA256 (osokin-nginx-otel-8f0857d_GH0.tar.gz) = bbf93813928460bdaf78f752f74ecc6c34d13078e97fdffcaa29dbd8689314fc SIZE (osokin-nginx-otel-8f0857d_GH0.tar.gz) = 30197 SHA256 (konstruxi-ngx_postgres-8aa7359_GH0.tar.gz) = c69ad4495de7c7883ebc23e1e6c4cc83a4ac6a7fddd4d5c12e49d33b65f7c50b diff --git a/www/nginx-prometheus-exporter/Makefile b/www/nginx-prometheus-exporter/Makefile index 091e303c7a14..ed61b528247e 100644 --- a/www/nginx-prometheus-exporter/Makefile +++ b/www/nginx-prometheus-exporter/Makefile @@ -1,7 +1,7 @@ PORTNAME= nginx-prometheus-exporter DISTVERSIONPREFIX= v DISTVERSION= 1.1.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= arcade@b1t.name diff --git a/www/nginx-vts-exporter/Makefile b/www/nginx-vts-exporter/Makefile index 0716584809ec..e4ca98ce6dfd 100644 --- a/www/nginx-vts-exporter/Makefile +++ b/www/nginx-vts-exporter/Makefile @@ -1,7 +1,7 @@ PORTNAME= nginx-vts-exporter DISTVERSIONPREFIX= v DISTVERSION= 0.10.7 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= joneum@FreeBSD.org diff --git a/www/nginx/Makefile b/www/nginx/Makefile index 4d92fc92c11e..b720743e02ba 100644 --- a/www/nginx/Makefile +++ b/www/nginx/Makefile @@ -1,6 +1,6 @@ PORTNAME= nginx PORTVERSION= 1.24.0 -PORTREVISION?= 16 +PORTREVISION?= 17 PORTEPOCH= 3 CATEGORIES= www MASTER_SITES= https://nginx.org/download/ \ diff --git a/www/nginx/Makefile.extmod b/www/nginx/Makefile.extmod index 2f68a38b8462..8e1ec1dd0b48 100644 --- a/www/nginx/Makefile.extmod +++ b/www/nginx/Makefile.extmod @@ -10,7 +10,7 @@ OPTIONS_GROUP_THIRDPARTYGRP= AJP AWS_AUTH BROTLI CACHE_PURGE CLOJURE COOKIE_FLAG HTTP_JSON_STATUS HTTP_MOGILEFS HTTP_MP4_H264 HTTP_NOTICE HTTP_PROXY_CONNECT HTTP_PUSH \ HTTP_PUSH_STREAM HTTP_REDIS HTTP_SLICE_AHEAD HTTP_SUBS_FILTER HTTP_TARANTOOL \ HTTP_UPLOAD HTTP_UPLOAD_PROGRESS HTTP_UPSTREAM_CHECK HTTP_UPSTREAM_FAIR \ - HTTP_UPSTREAM_STICKY HTTP_VIDEO_THUMBEXTRACTOR HTTP_ZIP ICONV LET LINK LUA MEMC \ + HTTP_UPSTREAM_STICKY HTTP_VIDEO_THUMBEXTRACTOR HTTP_ZIP ICONV LET LINK LUA LUASTREAM MEMC \ MODSECURITY3 NAXSI PASSENGER POSTGRES RDS_CSV RDS_JSON REDIS2\ RTMP SET_MISC SFLOW SHIBBOLETH SLOWFS_CACHE SRCACHE STS VOD VTS \ XSS WEBSOCKIFY @@ -229,6 +229,14 @@ LUA_CONFIGURE_ENV= LUAJIT_INC=${LOCALBASE}/include/luajit-2.1 \ LUA_GH_TUPLE= openresty:lua-nginx-module:v0.10.26:lua LUA_VARS= DSO_EXTMODS+=lua +LUASTREAM_IMPLIES= DEVEL_KIT +LUASTREAM_LIB_DEPENDS= libluajit-5.1.so:lang/luajit-openresty +LUASTREAM_RUN_DEPENDS= lua-resty-core>0:www/lua-resty-core +LUASTREAM_CONFIGURE_ENV=LUAJIT_INC=${LOCALBASE}/include/luajit-2.1 \ + LUAJIT_LIB=${LOCALBASE}/lib +LUASTREAM_GH_TUPLE= openresty:stream-lua-nginx-module:v0.0.14:luastream +LUASTREAM_VARS= DSO_EXTMODS+=luastream + LINK_GH_TUPLE= Taymindis:nginx-link-function:3.2.4:link LINK_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-nginx-link-function-config \ ${PATCHDIR}/extra-patch-ngx_link_func_module.c diff --git a/www/nginx/Makefile.options.desc b/www/nginx/Makefile.options.desc index 598e1f75a83f..d299cc6b3607 100644 --- a/www/nginx/Makefile.options.desc +++ b/www/nginx/Makefile.options.desc @@ -82,6 +82,7 @@ IPV6_DESC= Enable IPv6 support LET_DESC= 3rd party let module LINK_DESC= 3rd party link function module LUA_DESC= 3rd party lua module +LUASTREAM_DESC= 3rd party lua stream module MAILGRP_DESC= Modules that require MAIL module MAIL_DESC= Enable IMAP4/POP3/SMTP proxy module MAIL_IMAP_DESC= Enable IMAP4 proxy module diff --git a/www/nginx/distinfo b/www/nginx/distinfo index 3e48677696fc..c038036d9d0a 100644 --- a/www/nginx/distinfo +++ b/www/nginx/distinfo @@ -143,3 +143,5 @@ SHA256 (tg123-websockify-nginx-module-c11bc9a_GH0.tar.gz) = aca454bffcee2476dc92 SIZE (tg123-websockify-nginx-module-c11bc9a_GH0.tar.gz) = 14646 SHA256 (openresty-xss-nginx-module-v0.06_GH0.tar.gz) = 0b12bbc53a41f3e3d6df419c173b8c87434be3e6cd255a8193aa91345a2de6cf SIZE (openresty-xss-nginx-module-v0.06_GH0.tar.gz) = 12448 +SHA256 (openresty-stream-lua-nginx-module-v0.0.14_GH0.tar.gz) = 8e2ff6ad5f91127da3c01757e7e654f1addf9769450d9159601d2cc153953c47 +SIZE (openresty-stream-lua-nginx-module-v0.0.14_GH0.tar.gz) = 381313 diff --git a/www/nginx/pkg-plist b/www/nginx/pkg-plist index 94e0cd5e7946..35d8f66bfad8 100644 --- a/www/nginx/pkg-plist +++ b/www/nginx/pkg-plist @@ -63,6 +63,7 @@ %%DSO%%%%LET%%libexec/nginx/ngx_http_let_module.so %%DSO%%%%LINK%%libexec/nginx/ngx_http_link_func_module.so %%DSO%%%%LUA%%libexec/nginx/ngx_http_lua_module.so +%%DSO%%%%LUASTREAM%%libexec/nginx/ngx_stream_lua_module.so %%DSO%%%%MAIL%%libexec/nginx/ngx_mail_module.so %%DSO%%%%MAIL%%%%CT%%libexec/nginx/ngx_mail_ssl_ct_module.so %%DSO%%%%MEMC%%libexec/nginx/ngx_http_memc_module.so diff --git a/www/node20/Makefile.version b/www/node20/Makefile.version index e7769912e8d4..55b4a96ad539 100644 --- a/www/node20/Makefile.version +++ b/www/node20/Makefile.version @@ -1 +1 @@ -NODEJS_PORTVERSION= 20.12.2 +NODEJS_PORTVERSION= 20.13.1 diff --git a/www/node20/distinfo b/www/node20/distinfo index e52b7562b5a0..412ca8a90956 100644 --- a/www/node20/distinfo +++ b/www/node20/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712886412 -SHA256 (node-v20.12.2.tar.xz) = d7cbcc5fbfb31e9001f3f0150bbeda59abe5dd7137aaa6273958cd59ce35ced7 -SIZE (node-v20.12.2.tar.xz) = 41634476 +TIMESTAMP = 1715842558 +SHA256 (node-v20.13.1.tar.xz) = 791786a09023241cb7e4f7d65ec90aa924bb39141ff7bb6d5a1dedf7def4b4e7 +SIZE (node-v20.13.1.tar.xz) = 41770976 diff --git a/www/node20/files/patch-tools_install.py b/www/node20/files/patch-tools_install.py deleted file mode 100644 index 4cb60f5a219a..000000000000 --- a/www/node20/files/patch-tools_install.py +++ /dev/null @@ -1,11 +0,0 @@ ---- tools/install.py.orig 2024-03-26 14:14:20 UTC -+++ tools/install.py -@@ -182,7 +182,7 @@ def files(options, action): - action(options, [os.path.join(options.v8_dir, 'tools/gdbinit')], 'share/doc/node/') - action(options, [os.path.join(options.v8_dir, 'tools/lldb_commands.py')], 'share/doc/node/') - -- if 'freebsd' in sys.platform or 'openbsd' in sys.platform: -+ if 'openbsd' in sys.platform: - action(options, ['doc/node.1'], 'man/man1/') - else: - action(options, ['doc/node.1'], 'share/man/man1/') diff --git a/www/node20/pkg-descr b/www/node20/pkg-descr index 4920df91f200..aed88d828d57 100644 --- a/www/node20/pkg-descr +++ b/www/node20/pkg-descr @@ -1,4 +1,2 @@ -Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js -uses an event-driven, non-blocking I/O model that makes it lightweight and -efficient. Node.js' package ecosystem, npm, is the largest ecosystem of open -source libraries in the world. +Node.js is a free, open-source, cross-platform JavaScript runtime environment +that lets developers create servers, web apps, command line tools and scripts. diff --git a/www/node21/Makefile b/www/node21/Makefile index fc883ba47750..58b2001248fa 100644 --- a/www/node21/Makefile +++ b/www/node21/Makefile @@ -17,6 +17,9 @@ BROKEN_SSL= libressl libressl-devel BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le +DEPRECATED= Node.js 21.* will reach its EoL on 2024-06-01. Use Node.js 22.* (www/node22) instead +EXPIRATION_DATE=2024-06-30 + BUILD_DEPENDS= brotli>=1.0.9,1:archivers/brotli \ c-ares>=1.17.2:dns/c-ares \ libnghttp2>=1.45.1:www/libnghttp2 \ diff --git a/www/node22/Makefile b/www/node22/Makefile new file mode 100644 index 000000000000..10668cd56718 --- /dev/null +++ b/www/node22/Makefile @@ -0,0 +1,88 @@ +PORTNAME= node +PORTVERSION= ${NODEJS_PORTVERSION} +DISTVERSIONPREFIX= v +CATEGORIES= www +MASTER_SITES= https://nodejs.org/dist/v${PORTVERSION}/ +PKGNAMESUFFIX= 22 + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= V8 JavaScript for client and server +WWW= https://nodejs.org/ \ + https://github.com/nodejs/node + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BROKEN_SSL= libressl libressl-devel +BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled +ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le + +BUILD_DEPENDS= brotli>=1.0.9,1:archivers/brotli \ + c-ares>=1.17.2:dns/c-ares \ + libnghttp2>=1.45.1:www/libnghttp2 \ + libuv>=1.42.0:devel/libuv \ + objdump:devel/binutils +LIB_DEPENDS= libbrotlidec.so:archivers/brotli \ + libcares.so:dns/c-ares \ + libnghttp2.so:www/libnghttp2 \ + libuv.so:devel/libuv + +USES= compiler:c++11-lib gmake localbase pkgconfig python:build shebangfix tar:xz + +CONFIGURE_ARGS= --prefix=${PREFIX:S|^${DESTDIR}||} \ + --shared-brotli \ + --shared-cares \ + --shared-libuv \ + --shared-nghttp2 \ + --shared-zlib \ + --without-npm +HAS_CONFIGURE= yes +MAKE_ENV= CC.host="${CCACHE_BIN} ${CC}" \ + CFLAGS.host="${CFLAGS}" \ + CXX.host="${CCACHE_BIN} ${CXX}" \ + CXXFLAGS.host="${CXXFLAGS}" \ + LDFLAGS.host="${LDFLAGS}" \ + LINK.host="${CXX}" +REINPLACE_ARGS= -i '' + +CONFLICTS_INSTALL= node[0-9][0-9] + +SHEBANG_FILES= deps/v8/third_party/inspector_protocol/*.py \ + deps/v8/tools/*.py \ + tools/*.py \ + tools/inspector_protocol/*.py + +OPTIONS_DEFINE= BUNDLED_SSL DOCS NLS +OPTIONS_SUB= yes +BUNDLED_SSL_DESC= Use bundled OpenSSL implementation from node.js + +BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store --shared-openssl +BUNDLED_SSL_RUN_DEPENDS_OFF= ca_root_nss>=0:security/ca_root_nss +BUNDLED_SSL_USES_OFF= ssl +NLS_BUILD_DEPENDS= icu>=69.1:devel/icu +NLS_CONFIGURE_ON= --with-intl=system-icu +NLS_LIB_DEPENDS= libicui18n.so:devel/icu + +.include "Makefile.version" +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MBUNDLED_SSL} && ${ARCH} != amd64 +CONFIGURE_ARGS+=--openssl-no-asm +.endif + +post-patch: + @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/tools/v8_gypfiles/v8.gyp + +post-configure: + # Post-process Makefile and *.mk files created by node-gyp and remove + # all occurrences of -I${LOCALBASE}/include. C*FLAGS include this + # before all -I../deps/* for bundled code. This can cause build + # breakages if the dependency is installed in ${LOCALBASE}. The + # USES+=localbase # above will ensure that we pick up includes for real + # external dependencies. + ${FIND} ${WRKSRC}/out -type f -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e "s|-I${LOCALBASE}/include||g" + +post-install: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node + +.include <bsd.port.mk> diff --git a/www/node22/Makefile.version b/www/node22/Makefile.version new file mode 100644 index 000000000000..dfa161297fb6 --- /dev/null +++ b/www/node22/Makefile.version @@ -0,0 +1 @@ +NODEJS_PORTVERSION= 22.2.0 diff --git a/www/node22/distinfo b/www/node22/distinfo new file mode 100644 index 000000000000..25d2ecae5472 --- /dev/null +++ b/www/node22/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1715842560 +SHA256 (node-v22.2.0.tar.xz) = 889908a8828d1484910d7e659b6aa57ade8d528ff0e390e9a77ef659a7628474 +SIZE (node-v22.2.0.tar.xz) = 44334460 diff --git a/www/node22/files/patch-common.gypi b/www/node22/files/patch-common.gypi new file mode 100644 index 000000000000..c1a1298912e1 --- /dev/null +++ b/www/node22/files/patch-common.gypi @@ -0,0 +1,20 @@ +--- common.gypi.orig 2023-07-20 18:27:37 UTC ++++ common.gypi +@@ -426,7 +426,7 @@ + 'ldflags': [ '-m32' ], + }], + [ 'host_arch=="ppc64" and OS not in "aix os400"', { +- 'cflags': [ '-m64', '-mminimal-toc' ], ++ 'cflags': [ '-m64' ], + 'ldflags': [ '-m64' ], + }], + [ 'host_arch=="s390x" and OS=="linux"', { +@@ -450,7 +450,7 @@ + 'ldflags': [ '-m32' ], + }], + [ 'target_arch=="ppc64" and OS not in "aix os400"', { +- 'cflags': [ '-m64', '-mminimal-toc' ], ++ 'cflags': [ '-m64' ], + 'ldflags': [ '-m64' ], + }], + [ 'target_arch=="s390x" and OS=="linux"', { diff --git a/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl-cl.gypi b/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl-cl.gypi new file mode 100644 index 000000000000..281de6be8ee2 --- /dev/null +++ b/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl-cl.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/config/archs/linux-elf/no-asm/openssl-cl.gypi.orig 2023-05-16 06:58:19 UTC ++++ deps/openssl/config/archs/linux-elf/no-asm/openssl-cl.gypi +@@ -13,7 +13,7 @@ + '-Wall -O3 -fomit-frame-pointer', + ], + 'openssl_ex_libs_linux-elf': [ +- '-ldl -pthread', ++ '-pthread', + ], + 'openssl_cli_srcs_linux-elf': [ + 'openssl/apps/lib/cmp_mock_srv.c', diff --git a/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl.gypi b/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl.gypi new file mode 100644 index 000000000000..5a7ce627e099 --- /dev/null +++ b/www/node22/files/patch-deps-openssl-config-archs-linux-elf-no-asm-openssl.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi.orig 2023-05-16 06:58:19 UTC ++++ deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi +@@ -977,7 +977,7 @@ + '-Wall -O3 -fomit-frame-pointer', + ], + 'openssl_ex_libs_linux-elf': [ +- '-ldl -pthread', ++ '-pthread', + ], + }, + 'include_dirs': [ diff --git a/www/node22/files/patch-deps-openssl-openssl-cl_no_asm.gypi b/www/node22/files/patch-deps-openssl-openssl-cl_no_asm.gypi new file mode 100644 index 000000000000..2670843ea933 --- /dev/null +++ b/www/node22/files/patch-deps-openssl-openssl-cl_no_asm.gypi @@ -0,0 +1,17 @@ +--- deps/openssl/openssl-cl_no_asm.gypi.orig 2023-10-24 10:04:40 UTC ++++ deps/openssl/openssl-cl_no_asm.gypi +@@ -1,4 +1,5 @@ + { ++ 'defines': ['OPENSSL_NO_ASM'], + 'conditions': [ + ['target_arch=="ppc64" and OS in ("aix", "os400")', { + 'includes': ['config/archs/aix64-gcc-as/no-asm/openssl-cl.gypi'], +@@ -45,7 +46,7 @@ + 'includes': ['config/archs/linux64-loongarch64/no-asm/openssl-cl.gypi'], + }, { + # Other architectures don't use assembly +- 'includes': ['config/archs/linux-x86_64/no-asm/openssl-cl.gypi'], ++ 'includes': ['config/archs/linux-elf/no-asm/openssl-cl.gypi'], + }], + ], + } diff --git a/www/node22/files/patch-deps-openssl-openssl_no_asm.gypi b/www/node22/files/patch-deps-openssl-openssl_no_asm.gypi new file mode 100644 index 000000000000..f7fb266e350c --- /dev/null +++ b/www/node22/files/patch-deps-openssl-openssl_no_asm.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/openssl_no_asm.gypi.orig 2023-05-16 06:58:20 UTC ++++ deps/openssl/openssl_no_asm.gypi +@@ -44,7 +44,7 @@ + 'includes': ['config/archs/linux64-riscv64/no-asm/openssl.gypi'], + }, { + # Other architectures don't use assembly +- 'includes': ['config/archs/linux-x86_64/no-asm/openssl.gypi'], ++ 'includes': ['config/archs/linux-elf/no-asm/openssl.gypi'], + }], + ], + } diff --git a/www/node22/files/patch-deps-v8-src-base-platform-platform-freebsd.cc b/www/node22/files/patch-deps-v8-src-base-platform-platform-freebsd.cc new file mode 100644 index 000000000000..be89ded1df8d --- /dev/null +++ b/www/node22/files/patch-deps-v8-src-base-platform-platform-freebsd.cc @@ -0,0 +1,13 @@ +--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2023-05-16 06:58:20 UTC ++++ deps/v8/src/base/platform/platform-freebsd.cc +@@ -82,8 +82,8 @@ std::vector<OS::SharedLibraryAddress> OS::GetSharedLib + lib_name = std::string(path); + } + result.push_back(SharedLibraryAddress( +- lib_name, reinterpret_cast<uintptr_t>(map->kve_start), +- reinterpret_cast<uintptr_t>(map->kve_end))); ++ lib_name, static_cast<uintptr_t>(map->kve_start), ++ static_cast<uintptr_t>(map->kve_end))); + } + + start += ssize; diff --git a/www/node22/files/patch-deps-v8-src-base-small-vector.h b/www/node22/files/patch-deps-v8-src-base-small-vector.h new file mode 100644 index 000000000000..7e362808330c --- /dev/null +++ b/www/node22/files/patch-deps-v8-src-base-small-vector.h @@ -0,0 +1,10 @@ +--- deps/v8/src/base/small-vector.h.orig 2024-04-24 14:03:50 UTC ++++ deps/v8/src/base/small-vector.h +@@ -22,7 +22,6 @@ class SmallVector { + class SmallVector { + // Currently only support trivially copyable and trivially destructible data + // types, as it uses memcpy to copy elements and never calls destructors. +- ASSERT_TRIVIALLY_COPYABLE(T); + static_assert(std::is_trivially_destructible<T>::value); + + public: diff --git a/www/node22/files/patch-deps-v8-src-codegen-arm-cpu-arm.cc b/www/node22/files/patch-deps-v8-src-codegen-arm-cpu-arm.cc new file mode 100644 index 000000000000..42fd70bfd7ca --- /dev/null +++ b/www/node22/files/patch-deps-v8-src-codegen-arm-cpu-arm.cc @@ -0,0 +1,18 @@ +--- deps/v8/src/codegen/arm/cpu-arm.cc.orig 2023-05-16 06:58:20 UTC ++++ deps/v8/src/codegen/arm/cpu-arm.cc +@@ -2,12 +2,15 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include "include/v8config.h" ++ + // CPU specific code for arm independent of OS goes here. + #ifdef __arm__ + #ifdef __QNXNTO__ + #include <sys/mman.h> // for cache flushing. + #undef MAP_TYPE + #elif V8_OS_FREEBSD ++#include <sys/cdefs.h> + #include <machine/sysarch.h> // for cache flushing + #include <sys/types.h> + #elif V8_OS_STARBOARD diff --git a/www/node22/files/patch-deps-v8-src-codegen-ppc-constants-ppc.h b/www/node22/files/patch-deps-v8-src-codegen-ppc-constants-ppc.h new file mode 100644 index 000000000000..c6269ea752d6 --- /dev/null +++ b/www/node22/files/patch-deps-v8-src-codegen-ppc-constants-ppc.h @@ -0,0 +1,20 @@ +--- deps/v8/src/codegen/ppc/constants-ppc.h.orig 2023-05-16 06:58:20 UTC ++++ deps/v8/src/codegen/ppc/constants-ppc.h +@@ -36,7 +36,7 @@ + #endif + + #if !(V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64) || !V8_TARGET_ARCH_PPC64 || \ +- V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2) ++ (defined(_CALL_ELF) && _CALL_ELF == 2) + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1 + #else + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0 +@@ -44,7 +44,7 @@ + + #if !(V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64) || \ + (V8_TARGET_ARCH_PPC64 && \ +- (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))) ++ (defined(_CALL_ELF) && _CALL_ELF == 2)) + #define ABI_CALL_VIA_IP 1 + #else + #define ABI_CALL_VIA_IP 0 diff --git a/www/node22/files/patch-deps-v8-src-libsampler-sampler.cc b/www/node22/files/patch-deps-v8-src-libsampler-sampler.cc new file mode 100644 index 000000000000..dd19d75d8196 --- /dev/null +++ b/www/node22/files/patch-deps-v8-src-libsampler-sampler.cc @@ -0,0 +1,13 @@ +--- deps/v8/src/libsampler/sampler.cc.orig 2023-05-16 06:58:20 UTC ++++ deps/v8/src/libsampler/sampler.cc +@@ -511,6 +511,10 @@ void SignalHandler::FillRegisterState(void* context, R + state->pc = reinterpret_cast<void*>(mcontext.__gregs[_REG_PC]); + state->sp = reinterpret_cast<void*>(mcontext.__gregs[_REG_SP]); + state->fp = reinterpret_cast<void*>(mcontext.__gregs[_REG_FP]); ++#elif V8_TARGET_ARCH_PPC64 ++ state->pc = reinterpret_cast<void*>(mcontext.mc_srr0); ++ state->sp = reinterpret_cast<void*>(mcontext.mc_frame[1]); ++ state->fp = reinterpret_cast<void*>(mcontext.mc_frame[31]); + #endif // V8_HOST_ARCH_* + #elif V8_OS_NETBSD + #if V8_HOST_ARCH_IA32 diff --git a/www/node22/files/patch-node.gypi b/www/node22/files/patch-node.gypi new file mode 100644 index 000000000000..c1f4c867c303 --- /dev/null +++ b/www/node22/files/patch-node.gypi @@ -0,0 +1,12 @@ +--- node.gypi.orig 2023-05-16 06:58:21 UTC ++++ node.gypi +@@ -349,6 +349,9 @@ + [ 'node_use_openssl=="true"', { + 'defines': [ 'HAVE_OPENSSL=1' ], + 'conditions': [ ++ ['openssl_no_asm==1', { ++ 'defines': [ 'OPENSSL_NO_ASM' ], ++ }], + [ 'node_shared_openssl=="false"', { + 'defines': [ 'OPENSSL_API_COMPAT=0x10100000L', ], + 'dependencies': [ diff --git a/www/node22/files/patch-openssl3 b/www/node22/files/patch-openssl3 new file mode 100644 index 000000000000..0e80424bd33c --- /dev/null +++ b/www/node22/files/patch-openssl3 @@ -0,0 +1,15 @@ +--- src/crypto/crypto_util.cc.orig 2023-05-16 06:58:21 UTC ++++ src/crypto/crypto_util.cc +@@ -205,10 +205,12 @@ void InitCryptoOnce() { + // No-op with OPENSSL_NO_COMP builds of OpenSSL. + sk_SSL_COMP_zero(SSL_COMP_get_compression_methods()); + ++#if OPENSSL_VERSION_MAJOR < 3 + #ifndef OPENSSL_NO_ENGINE + ERR_load_ENGINE_strings(); + ENGINE_load_builtin_engines(); + #endif // !OPENSSL_NO_ENGINE ++#endif + } + + void GetFipsCrypto(const FunctionCallbackInfo<Value>& args) { diff --git a/www/node22/files/patch-src-cares_wrap.h b/www/node22/files/patch-src-cares_wrap.h new file mode 100644 index 000000000000..7bac6f049408 --- /dev/null +++ b/www/node22/files/patch-src-cares_wrap.h @@ -0,0 +1,11 @@ +--- src/cares_wrap.h.orig 2023-05-16 06:58:21 UTC ++++ src/cares_wrap.h +@@ -23,7 +23,7 @@ + # include <netdb.h> + #endif // __POSIX__ + +-# include <ares_nameser.h> ++# include <arpa/nameser.h> + + namespace node { + namespace cares_wrap { diff --git a/www/node22/files/patch-tools-v8_gypfiles-v8.gyp b/www/node22/files/patch-tools-v8_gypfiles-v8.gyp new file mode 100644 index 000000000000..61657d4c24a1 --- /dev/null +++ b/www/node22/files/patch-tools-v8_gypfiles-v8.gyp @@ -0,0 +1,11 @@ +--- tools/v8_gypfiles/v8.gyp.orig 2023-05-16 06:58:22 UTC ++++ tools/v8_gypfiles/v8.gyp +@@ -1091,7 +1091,7 @@ + }], + # Platforms that don't have Compare-And-Swap (CAS) support need to link atomic library + # to implement atomic memory access +- ['v8_current_cpu in ["mips64", "mips64el", "ppc", "arm", "riscv64", "loong64"]', { ++ ['v8_current_cpu in ["mips64", "mips64el", "ppc", "riscv64", "loong64"]', { + 'link_settings': { + 'libraries': ['-latomic', ], + }, diff --git a/www/node22/pkg-descr b/www/node22/pkg-descr new file mode 100644 index 000000000000..aed88d828d57 --- /dev/null +++ b/www/node22/pkg-descr @@ -0,0 +1,2 @@ +Node.js is a free, open-source, cross-platform JavaScript runtime environment +that lets developers create servers, web apps, command line tools and scripts. diff --git a/www/node22/pkg-message b/www/node22/pkg-message new file mode 100644 index 000000000000..ddea08386149 --- /dev/null +++ b/www/node22/pkg-message @@ -0,0 +1,7 @@ +[ +{ type: install + message: <<EOM +Note: If you need npm (Node Package Manager), please install www/npm. +EOM +} +] diff --git a/www/node22/pkg-plist b/www/node22/pkg-plist new file mode 100644 index 000000000000..c26599edfe88 --- /dev/null +++ b/www/node22/pkg-plist @@ -0,0 +1,2375 @@ +bin/corepack +bin/node +include/node/common.gypi +include/node/config.gypi +include/node/cppgc/allocation.h +include/node/cppgc/common.h +include/node/cppgc/cross-thread-persistent.h +include/node/cppgc/custom-space.h +include/node/cppgc/default-platform.h +include/node/cppgc/ephemeron-pair.h +include/node/cppgc/explicit-management.h +include/node/cppgc/garbage-collected.h +include/node/cppgc/heap-consistency.h +include/node/cppgc/heap-handle.h +include/node/cppgc/heap-state.h +include/node/cppgc/heap-statistics.h +include/node/cppgc/heap.h +include/node/cppgc/internal/api-constants.h +include/node/cppgc/internal/atomic-entry-flag.h +include/node/cppgc/internal/base-page-handle.h +include/node/cppgc/internal/caged-heap-local-data.h +include/node/cppgc/internal/caged-heap.h +include/node/cppgc/internal/compiler-specific.h +include/node/cppgc/internal/finalizer-trait.h +include/node/cppgc/internal/gc-info.h +include/node/cppgc/internal/logging.h +include/node/cppgc/internal/member-storage.h +include/node/cppgc/internal/name-trait.h +include/node/cppgc/internal/persistent-node.h +include/node/cppgc/internal/pointer-policies.h +include/node/cppgc/internal/write-barrier.h +include/node/cppgc/liveness-broker.h +include/node/cppgc/macros.h +include/node/cppgc/member.h +include/node/cppgc/name-provider.h +include/node/cppgc/object-size-trait.h +include/node/cppgc/persistent.h +include/node/cppgc/platform.h +include/node/cppgc/prefinalizer.h +include/node/cppgc/process-heap-statistics.h +include/node/cppgc/sentinel-pointer.h +include/node/cppgc/source-location.h +include/node/cppgc/testing.h +include/node/cppgc/trace-trait.h +include/node/cppgc/type-traits.h +include/node/cppgc/visitor.h +include/node/js_native_api.h +include/node/js_native_api_types.h +include/node/libplatform/libplatform-export.h +include/node/libplatform/libplatform.h +include/node/libplatform/v8-tracing.h +include/node/node.h +include/node/node_api.h +include/node/node_api_types.h +include/node/node_buffer.h +include/node/node_object_wrap.h +include/node/node_version.h +%%BUNDLED_SSL%%include/node/openssl/aes.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/BSD-x86_64/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN32/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64-ARM/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/VC-WIN64A/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/aix64-gcc-as/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin-i386-cc/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-arm64-cc/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/darwin64-x86_64-cc/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-aarch64/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-armv4/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-elf/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-ppc64le/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux-x86_64/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux32-s390x/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-mips64/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-riscv64/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/linux64-s390x/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris-x86-gcc/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/crypto/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/crypto/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/progs.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_digests.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_dsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_ec.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_ecx.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_rsa.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_sm2.h +%%BUNDLED_SSL%%include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/providers/common/include/prov/der_wrap.h +%%BUNDLED_SSL%%include/node/openssl/asn1.h +%%BUNDLED_SSL%%include/node/openssl/asn1_asm.h +%%BUNDLED_SSL%%include/node/openssl/asn1_mac.h +%%BUNDLED_SSL%%include/node/openssl/asn1_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/asn1err.h +%%BUNDLED_SSL%%include/node/openssl/asn1t.h +%%BUNDLED_SSL%%include/node/openssl/asn1t_asm.h +%%BUNDLED_SSL%%include/node/openssl/asn1t_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/async.h +%%BUNDLED_SSL%%include/node/openssl/asyncerr.h +%%BUNDLED_SSL%%include/node/openssl/bio.h +%%BUNDLED_SSL%%include/node/openssl/bio_asm.h +%%BUNDLED_SSL%%include/node/openssl/bio_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/bioerr.h +%%BUNDLED_SSL%%include/node/openssl/blowfish.h +%%BUNDLED_SSL%%include/node/openssl/bn.h +%%BUNDLED_SSL%%include/node/openssl/bn_conf.h +%%BUNDLED_SSL%%include/node/openssl/bn_conf_asm.h +%%BUNDLED_SSL%%include/node/openssl/bn_conf_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/bnerr.h +%%BUNDLED_SSL%%include/node/openssl/buffer.h +%%BUNDLED_SSL%%include/node/openssl/buffererr.h +%%BUNDLED_SSL%%include/node/openssl/camellia.h +%%BUNDLED_SSL%%include/node/openssl/cast.h +%%BUNDLED_SSL%%include/node/openssl/cmac.h +%%BUNDLED_SSL%%include/node/openssl/cmp.h +%%BUNDLED_SSL%%include/node/openssl/cmp_asm.h +%%BUNDLED_SSL%%include/node/openssl/cmp_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/cmp_util.h +%%BUNDLED_SSL%%include/node/openssl/cmperr.h +%%BUNDLED_SSL%%include/node/openssl/cms.h +%%BUNDLED_SSL%%include/node/openssl/cms_asm.h +%%BUNDLED_SSL%%include/node/openssl/cms_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/cmserr.h +%%BUNDLED_SSL%%include/node/openssl/comp.h +%%BUNDLED_SSL%%include/node/openssl/comperr.h +%%BUNDLED_SSL%%include/node/openssl/conf.h +%%BUNDLED_SSL%%include/node/openssl/conf_api.h +%%BUNDLED_SSL%%include/node/openssl/conf_asm.h +%%BUNDLED_SSL%%include/node/openssl/conf_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/conferr.h +%%BUNDLED_SSL%%include/node/openssl/configuration.h +%%BUNDLED_SSL%%include/node/openssl/configuration_asm.h +%%BUNDLED_SSL%%include/node/openssl/configuration_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/conftypes.h +%%BUNDLED_SSL%%include/node/openssl/core.h +%%BUNDLED_SSL%%include/node/openssl/core_dispatch.h +%%BUNDLED_SSL%%include/node/openssl/core_names.h +%%BUNDLED_SSL%%include/node/openssl/core_object.h +%%BUNDLED_SSL%%include/node/openssl/crmf.h +%%BUNDLED_SSL%%include/node/openssl/crmf_asm.h +%%BUNDLED_SSL%%include/node/openssl/crmf_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/crmferr.h +%%BUNDLED_SSL%%include/node/openssl/crypto.h +%%BUNDLED_SSL%%include/node/openssl/crypto_asm.h +%%BUNDLED_SSL%%include/node/openssl/crypto_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/cryptoerr.h +%%BUNDLED_SSL%%include/node/openssl/cryptoerr_legacy.h +%%BUNDLED_SSL%%include/node/openssl/ct.h +%%BUNDLED_SSL%%include/node/openssl/ct_asm.h +%%BUNDLED_SSL%%include/node/openssl/ct_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/cterr.h +%%BUNDLED_SSL%%include/node/openssl/decoder.h +%%BUNDLED_SSL%%include/node/openssl/decodererr.h +%%BUNDLED_SSL%%include/node/openssl/des.h +%%BUNDLED_SSL%%include/node/openssl/dh.h +%%BUNDLED_SSL%%include/node/openssl/dherr.h +%%BUNDLED_SSL%%include/node/openssl/dsa.h +%%BUNDLED_SSL%%include/node/openssl/dsaerr.h +%%BUNDLED_SSL%%include/node/openssl/dso_conf.h +%%BUNDLED_SSL%%include/node/openssl/dso_conf_asm.h +%%BUNDLED_SSL%%include/node/openssl/dso_conf_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/dtls1.h +%%BUNDLED_SSL%%include/node/openssl/e_os2.h +%%BUNDLED_SSL%%include/node/openssl/ebcdic.h +%%BUNDLED_SSL%%include/node/openssl/ec.h +%%BUNDLED_SSL%%include/node/openssl/ecdh.h +%%BUNDLED_SSL%%include/node/openssl/ecdsa.h +%%BUNDLED_SSL%%include/node/openssl/ecerr.h +%%BUNDLED_SSL%%include/node/openssl/encoder.h +%%BUNDLED_SSL%%include/node/openssl/encodererr.h +%%BUNDLED_SSL%%include/node/openssl/engine.h +%%BUNDLED_SSL%%include/node/openssl/engineerr.h +%%BUNDLED_SSL%%include/node/openssl/err.h +%%BUNDLED_SSL%%include/node/openssl/err_asm.h +%%BUNDLED_SSL%%include/node/openssl/err_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/ess.h +%%BUNDLED_SSL%%include/node/openssl/ess_asm.h +%%BUNDLED_SSL%%include/node/openssl/ess_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/esserr.h +%%BUNDLED_SSL%%include/node/openssl/evp.h +%%BUNDLED_SSL%%include/node/openssl/evperr.h +%%BUNDLED_SSL%%include/node/openssl/fips_names.h +%%BUNDLED_SSL%%include/node/openssl/fipskey.h +%%BUNDLED_SSL%%include/node/openssl/fipskey_asm.h +%%BUNDLED_SSL%%include/node/openssl/fipskey_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/hmac.h +%%BUNDLED_SSL%%include/node/openssl/http.h +%%BUNDLED_SSL%%include/node/openssl/httperr.h +%%BUNDLED_SSL%%include/node/openssl/idea.h +%%BUNDLED_SSL%%include/node/openssl/kdf.h +%%BUNDLED_SSL%%include/node/openssl/kdferr.h +%%BUNDLED_SSL%%include/node/openssl/lhash.h +%%BUNDLED_SSL%%include/node/openssl/lhash_asm.h +%%BUNDLED_SSL%%include/node/openssl/lhash_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/macros.h +%%BUNDLED_SSL%%include/node/openssl/md2.h +%%BUNDLED_SSL%%include/node/openssl/md4.h +%%BUNDLED_SSL%%include/node/openssl/md5.h +%%BUNDLED_SSL%%include/node/openssl/mdc2.h +%%BUNDLED_SSL%%include/node/openssl/modes.h +%%BUNDLED_SSL%%include/node/openssl/obj_mac.h +%%BUNDLED_SSL%%include/node/openssl/objects.h +%%BUNDLED_SSL%%include/node/openssl/objectserr.h +%%BUNDLED_SSL%%include/node/openssl/ocsp.h +%%BUNDLED_SSL%%include/node/openssl/ocsp_asm.h +%%BUNDLED_SSL%%include/node/openssl/ocsp_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/ocsperr.h +%%BUNDLED_SSL%%include/node/openssl/opensslconf.h +%%BUNDLED_SSL%%include/node/openssl/opensslconf_asm.h +%%BUNDLED_SSL%%include/node/openssl/opensslv.h +%%BUNDLED_SSL%%include/node/openssl/opensslv_asm.h +%%BUNDLED_SSL%%include/node/openssl/opensslv_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/ossl_typ.h +%%BUNDLED_SSL%%include/node/openssl/param_build.h +%%BUNDLED_SSL%%include/node/openssl/params.h +%%BUNDLED_SSL%%include/node/openssl/pem.h +%%BUNDLED_SSL%%include/node/openssl/pem2.h +%%BUNDLED_SSL%%include/node/openssl/pemerr.h +%%BUNDLED_SSL%%include/node/openssl/pkcs12.h +%%BUNDLED_SSL%%include/node/openssl/pkcs12_asm.h +%%BUNDLED_SSL%%include/node/openssl/pkcs12_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/pkcs12err.h +%%BUNDLED_SSL%%include/node/openssl/pkcs7.h +%%BUNDLED_SSL%%include/node/openssl/pkcs7_asm.h +%%BUNDLED_SSL%%include/node/openssl/pkcs7_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/pkcs7err.h +%%BUNDLED_SSL%%include/node/openssl/prov_ssl.h +%%BUNDLED_SSL%%include/node/openssl/proverr.h +%%BUNDLED_SSL%%include/node/openssl/provider.h +%%BUNDLED_SSL%%include/node/openssl/quic.h +%%BUNDLED_SSL%%include/node/openssl/rand.h +%%BUNDLED_SSL%%include/node/openssl/randerr.h +%%BUNDLED_SSL%%include/node/openssl/rc2.h +%%BUNDLED_SSL%%include/node/openssl/rc4.h +%%BUNDLED_SSL%%include/node/openssl/rc5.h +%%BUNDLED_SSL%%include/node/openssl/ripemd.h +%%BUNDLED_SSL%%include/node/openssl/rsa.h +%%BUNDLED_SSL%%include/node/openssl/rsaerr.h +%%BUNDLED_SSL%%include/node/openssl/safestack.h +%%BUNDLED_SSL%%include/node/openssl/safestack_asm.h +%%BUNDLED_SSL%%include/node/openssl/safestack_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/seed.h +%%BUNDLED_SSL%%include/node/openssl/self_test.h +%%BUNDLED_SSL%%include/node/openssl/sha.h +%%BUNDLED_SSL%%include/node/openssl/srp.h +%%BUNDLED_SSL%%include/node/openssl/srp_asm.h +%%BUNDLED_SSL%%include/node/openssl/srp_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/srtp.h +%%BUNDLED_SSL%%include/node/openssl/ssl.h +%%BUNDLED_SSL%%include/node/openssl/ssl2.h +%%BUNDLED_SSL%%include/node/openssl/ssl3.h +%%BUNDLED_SSL%%include/node/openssl/ssl_asm.h +%%BUNDLED_SSL%%include/node/openssl/ssl_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/sslerr.h +%%BUNDLED_SSL%%include/node/openssl/sslerr_legacy.h +%%BUNDLED_SSL%%include/node/openssl/stack.h +%%BUNDLED_SSL%%include/node/openssl/store.h +%%BUNDLED_SSL%%include/node/openssl/storeerr.h +%%BUNDLED_SSL%%include/node/openssl/symhacks.h +%%BUNDLED_SSL%%include/node/openssl/tls1.h +%%BUNDLED_SSL%%include/node/openssl/trace.h +%%BUNDLED_SSL%%include/node/openssl/ts.h +%%BUNDLED_SSL%%include/node/openssl/tserr.h +%%BUNDLED_SSL%%include/node/openssl/txt_db.h +%%BUNDLED_SSL%%include/node/openssl/types.h +%%BUNDLED_SSL%%include/node/openssl/ui.h +%%BUNDLED_SSL%%include/node/openssl/ui_asm.h +%%BUNDLED_SSL%%include/node/openssl/ui_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/uierr.h +%%BUNDLED_SSL%%include/node/openssl/whrlpool.h +%%BUNDLED_SSL%%include/node/openssl/x509.h +%%BUNDLED_SSL%%include/node/openssl/x509_asm.h +%%BUNDLED_SSL%%include/node/openssl/x509_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/x509_vfy.h +%%BUNDLED_SSL%%include/node/openssl/x509_vfy_asm.h +%%BUNDLED_SSL%%include/node/openssl/x509_vfy_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/x509err.h +%%BUNDLED_SSL%%include/node/openssl/x509v3.h +%%BUNDLED_SSL%%include/node/openssl/x509v3_asm.h +%%BUNDLED_SSL%%include/node/openssl/x509v3_no-asm.h +%%BUNDLED_SSL%%include/node/openssl/x509v3err.h +include/node/v8-array-buffer.h +include/node/v8-callbacks.h +include/node/v8-container.h +include/node/v8-context.h +include/node/v8-cppgc.h +include/node/v8-data.h +include/node/v8-date.h +include/node/v8-debug.h +include/node/v8-embedder-heap.h +include/node/v8-embedder-state-scope.h +include/node/v8-exception.h +include/node/v8-extension.h +include/node/v8-external.h +include/node/v8-forward.h +include/node/v8-function-callback.h +include/node/v8-function.h +include/node/v8-handle-base.h +include/node/v8-initialization.h +include/node/v8-internal.h +include/node/v8-isolate.h +include/node/v8-json.h +include/node/v8-local-handle.h +include/node/v8-locker.h +include/node/v8-maybe.h +include/node/v8-memory-span.h +include/node/v8-message.h +include/node/v8-microtask-queue.h +include/node/v8-microtask.h +include/node/v8-object.h +include/node/v8-persistent-handle.h +include/node/v8-platform.h +include/node/v8-primitive-object.h +include/node/v8-primitive.h +include/node/v8-profiler.h +include/node/v8-promise.h +include/node/v8-proxy.h +include/node/v8-regexp.h +include/node/v8-script.h +include/node/v8-snapshot.h +include/node/v8-source-location.h +include/node/v8-statistics.h +include/node/v8-template.h +include/node/v8-traced-handle.h +include/node/v8-typed-array.h +include/node/v8-unwinder.h +include/node/v8-value-serializer.h +include/node/v8-value.h +include/node/v8-version.h +include/node/v8-wasm.h +include/node/v8-weak-callback-info.h +include/node/v8.h +include/node/v8config.h +lib/node_modules/corepack/CHANGELOG.md +lib/node_modules/corepack/LICENSE.md +lib/node_modules/corepack/README.md +lib/node_modules/corepack/dist/corepack.js +lib/node_modules/corepack/dist/lib/corepack.cjs +lib/node_modules/corepack/dist/npm.js +lib/node_modules/corepack/dist/npx.js +lib/node_modules/corepack/dist/pnpm.js +lib/node_modules/corepack/dist/pnpx.js +lib/node_modules/corepack/dist/yarn.js +lib/node_modules/corepack/dist/yarnpkg.js +lib/node_modules/corepack/package.json +lib/node_modules/corepack/shims/corepack +lib/node_modules/corepack/shims/corepack.cmd +lib/node_modules/corepack/shims/corepack.ps1 +lib/node_modules/corepack/shims/nodewin/corepack +lib/node_modules/corepack/shims/nodewin/corepack.cmd +lib/node_modules/corepack/shims/nodewin/corepack.ps1 +lib/node_modules/corepack/shims/nodewin/npm +lib/node_modules/corepack/shims/nodewin/npm.cmd +lib/node_modules/corepack/shims/nodewin/npm.ps1 +lib/node_modules/corepack/shims/nodewin/npx +lib/node_modules/corepack/shims/nodewin/npx.cmd +lib/node_modules/corepack/shims/nodewin/npx.ps1 +lib/node_modules/corepack/shims/nodewin/pnpm +lib/node_modules/corepack/shims/nodewin/pnpm.cmd +lib/node_modules/corepack/shims/nodewin/pnpm.ps1 +lib/node_modules/corepack/shims/nodewin/pnpx +lib/node_modules/corepack/shims/nodewin/pnpx.cmd +lib/node_modules/corepack/shims/nodewin/pnpx.ps1 +lib/node_modules/corepack/shims/nodewin/yarn +lib/node_modules/corepack/shims/nodewin/yarn.cmd +lib/node_modules/corepack/shims/nodewin/yarn.ps1 +lib/node_modules/corepack/shims/nodewin/yarnpkg +lib/node_modules/corepack/shims/nodewin/yarnpkg.cmd +lib/node_modules/corepack/shims/nodewin/yarnpkg.ps1 +lib/node_modules/corepack/shims/npm +lib/node_modules/corepack/shims/npm.cmd +lib/node_modules/corepack/shims/npm.ps1 +lib/node_modules/corepack/shims/npx +lib/node_modules/corepack/shims/npx.cmd +lib/node_modules/corepack/shims/npx.ps1 +lib/node_modules/corepack/shims/pnpm +lib/node_modules/corepack/shims/pnpm.cmd +lib/node_modules/corepack/shims/pnpm.ps1 +lib/node_modules/corepack/shims/pnpx +lib/node_modules/corepack/shims/pnpx.cmd +lib/node_modules/corepack/shims/pnpx.ps1 +lib/node_modules/corepack/shims/yarn +lib/node_modules/corepack/shims/yarn.cmd +lib/node_modules/corepack/shims/yarn.ps1 +lib/node_modules/corepack/shims/yarnpkg +lib/node_modules/corepack/shims/yarnpkg.cmd +lib/node_modules/corepack/shims/yarnpkg.ps1 +%%PORTDOCS%%%%DOCSDIR%%/gdbinit +%%PORTDOCS%%%%DOCSDIR%%/lldb_commands.py +@(,,444) share/man/man1/node.1.gz diff --git a/www/npm-node22/Makefile b/www/npm-node22/Makefile new file mode 100644 index 000000000000..a95ca153555b --- /dev/null +++ b/www/npm-node22/Makefile @@ -0,0 +1,5 @@ +USES= nodejs:22,run + +MASTERDIR= ${.CURDIR}/../npm-node20 + +.include "${MASTERDIR}/Makefile" diff --git a/www/oauth2-proxy/Makefile b/www/oauth2-proxy/Makefile index 29d9e5edb8ed..ee0285ec98f4 100644 --- a/www/oauth2-proxy/Makefile +++ b/www/oauth2-proxy/Makefile @@ -1,7 +1,7 @@ PORTNAME= oauth2-proxy -PORTVERSION= 7.5.1 +PORTVERSION= 7.6.0 DISTVERSIONPREFIX= v -PORTREVISION= 4 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= freebsd@rheinwolf.de @@ -13,88 +13,96 @@ LICENSE_FILE= ${WRKSRC}/LICENSE USES= go:modules -USE_RC_SUBR= oauth2-proxy +USE_RC_SUBR= oauth2_proxy USE_GITHUB= yes GH_TUPLE= \ Bose:minisentinel:917c5a9223bb:bose_minisentinel/vendor/github.com/Bose/minisentinel \ - alicebob:gopher-json:a9ecdc9d1d3a:alicebob_gopher_json/vendor/github.com/alicebob/gopher-json \ - alicebob:miniredis:v2.23.0:alicebob_miniredis_v2/vendor/github.com/alicebob/miniredis/v2 \ - benbjohnson:clock:v1.3.0:benbjohnson_clock/vendor/github.com/benbjohnson/clock \ + a8m:envsubst:v1.4.2:a8m_envsubst/vendor/github.com/a8m/envsubst \ + alicebob:gopher-json:906a9b012302:alicebob_gopher_json/vendor/github.com/alicebob/gopher-json \ + alicebob:miniredis:v2.31.1:alicebob_miniredis_v2/vendor/github.com/alicebob/miniredis/v2 \ + benbjohnson:clock:v1.3.5:benbjohnson_clock/vendor/github.com/benbjohnson/clock \ beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \ - bitly:go-simplejson:v0.5.0:bitly_go_simplejson/vendor/github.com/bitly/go-simplejson \ + bitly:go-simplejson:v0.5.1:bitly_go_simplejson/vendor/github.com/bitly/go-simplejson \ bmizerany:assert:b7ed37b82869:bmizerany_assert/vendor/github.com/bmizerany/assert \ - bsm:redislock:v0.9.1:bsm_redislock/vendor/github.com/bsm/redislock \ + bsm:redislock:v0.9.4:bsm_redislock/vendor/github.com/bsm/redislock \ census-instrumentation:opencensus-go:v0.24.0:census_instrumentation_opencensus_go/vendor/go.opencensus.io \ cespare:xxhash:v2.2.0:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \ - coreos:go-oidc:v3.5.0:coreos_go_oidc_v3/vendor/github.com/coreos/go-oidc/v3 \ - davecgh:go-spew:v1.1.1:davecgh_go_spew/vendor/github.com/davecgh/go-spew \ + coreos:go-oidc:v3.9.0:coreos_go_oidc_v3/vendor/github.com/coreos/go-oidc/v3 \ + davecgh:go-spew:d8f796af33cc:davecgh_go_spew/vendor/github.com/davecgh/go-spew \ dgryski:go-rendezvous:9f7001d12a5f:dgryski_go_rendezvous/vendor/github.com/dgryski/go-rendezvous \ - fsnotify:fsnotify:v1.6.0:fsnotify_fsnotify/vendor/github.com/fsnotify/fsnotify \ - ghodss:yaml:25d852aebe32:ghodss_yaml/vendor/github.com/ghodss/yaml \ + felixge:httpsnoop:v1.0.4:felixge_httpsnoop/vendor/github.com/felixge/httpsnoop \ + fsnotify:fsnotify:v1.7.0:fsnotify_fsnotify/vendor/github.com/fsnotify/fsnotify \ + ghodss:yaml:d8423dcdf344:ghodss_yaml/vendor/github.com/ghodss/yaml \ go-ini:ini:v1.67.0:go_ini_ini/vendor/gopkg.in/ini.v1 \ - go-jose:go-jose:v3.0.0:go_jose_go_jose_v3/vendor/github.com/go-jose/go-jose/v3 \ - go-logr:logr:v1.2.3:go_logr_logr/vendor/github.com/go-logr/logr \ + go-jose:go-jose:v3.0.1:go_jose_go_jose_v3/vendor/github.com/go-jose/go-jose/v3 \ + go-logr:logr:v1.4.1:go_logr_logr/vendor/github.com/go-logr/logr \ + go-logr:stdr:v1.2.2:go_logr_stdr/vendor/github.com/go-logr/stdr \ go-tomb:tomb:dd632973f1e7:go_tomb_tomb/vendor/gopkg.in/tomb.v1 \ go-yaml:yaml:v2.4.0:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \ go-yaml:yaml:v3.0.1:go_yaml_yaml_1/vendor/gopkg.in/yaml.v3 \ golang-jwt:jwt:v3.2.2:golang_jwt_jwt/vendor/github.com/golang-jwt/jwt \ - golang:appengine:v1.6.7:golang_appengine/vendor/google.golang.org/appengine \ - golang:crypto:v0.7.0:golang_crypto/vendor/golang.org/x/crypto \ - golang:exp:47ecfdc1ba53:golang_exp/vendor/golang.org/x/exp \ + golang:appengine:v1.6.8:golang_appengine/vendor/google.golang.org/appengine \ + golang:crypto:v0.18.0:golang_crypto/vendor/golang.org/x/crypto \ + golang:exp:be819d1f06fc:golang_exp/vendor/golang.org/x/exp \ golang:groupcache:41bb18bfe9da:golang_groupcache/vendor/github.com/golang/groupcache \ - golang:net:v0.8.0:golang_net/vendor/golang.org/x/net \ - golang:oauth2:v0.6.0:golang_oauth2/vendor/golang.org/x/oauth2 \ + golang:net:v0.20.0:golang_net/vendor/golang.org/x/net \ + golang:oauth2:v0.16.0:golang_oauth2/vendor/golang.org/x/oauth2 \ golang:protobuf:v1.5.3:golang_protobuf/vendor/github.com/golang/protobuf \ - golang:sync:v0.1.0:golang_sync/vendor/golang.org/x/sync \ - golang:sys:v0.6.0:golang_sys/vendor/golang.org/x/sys \ - golang:text:v0.8.0:golang_text/vendor/golang.org/x/text \ - google:go-cmp:v0.5.9:google_go_cmp/vendor/github.com/google/go-cmp \ - google:go-genproto:7f2fa6fef1f4:google_go_genproto/vendor/google.golang.org/genproto \ - google:uuid:v1.3.0:google_uuid/vendor/github.com/google/uuid \ - googleapis:enterprise-certificate-proxy:v0.2.3:googleapis_enterprise_certificate_proxy/vendor/github.com/googleapis/enterprise-certificate-proxy \ - googleapis:gax-go:v2.7.0:googleapis_gax_go_v2/vendor/github.com/googleapis/gax-go \ - googleapis:google-api-go-client:v0.111.0:googleapis_google_api_go_client/vendor/google.golang.org/api \ - googleapis:google-cloud-go:compute/v1.18.0:googleapis_google_cloud_go_compute/vendor/cloud.google.com/go \ - gorilla:mux:v1.8.0:gorilla_mux/vendor/github.com/gorilla/mux \ - grpc:grpc-go:v1.53.0:grpc_grpc_go/vendor/google.golang.org/grpc \ + golang:sync:v0.6.0:golang_sync/vendor/golang.org/x/sync \ + golang:sys:v0.16.0:golang_sys/vendor/golang.org/x/sys \ + golang:text:v0.14.0:golang_text/vendor/golang.org/x/text \ + google:go-cmp:v0.6.0:google_go_cmp/vendor/github.com/google/go-cmp \ + google:s2a-go:v0.1.7:google_s2a_go/vendor/github.com/google/s2a-go \ + google:uuid:v1.6.0:google_uuid/vendor/github.com/google/uuid \ + googleapis:enterprise-certificate-proxy:v0.3.2:googleapis_enterprise_certificate_proxy/vendor/github.com/googleapis/enterprise-certificate-proxy \ + googleapis:gax-go:v2.12.0:googleapis_gax_go_v2/vendor/github.com/googleapis/gax-go \ + googleapis:go-genproto:a9fa1716bcac:googleapis_go_genproto/vendor/google.golang.org/genproto \ + googleapis:google-api-go-client:v0.158.0:googleapis_google_api_go_client/vendor/google.golang.org/api \ + googleapis:google-cloud-go:compute/v1.23.3:googleapis_google_cloud_go_compute/vendor/cloud.google.com/go \ + gorilla:mux:v1.8.1:gorilla_mux/vendor/github.com/gorilla/mux \ + grpc:grpc-go:v1.60.1:grpc_grpc_go/vendor/google.golang.org/grpc \ hashicorp:hcl:v1.0.0:hashicorp_hcl/vendor/github.com/hashicorp/hcl \ justinas:alice:v1.2.0:justinas_alice/vendor/github.com/justinas/alice \ - kubernetes:apimachinery:v0.26.2:kubernetes_apimachinery/vendor/k8s.io/apimachinery \ + kubernetes:apimachinery:v0.29.1:kubernetes_apimachinery/vendor/k8s.io/apimachinery \ kubernetes:gengo:83324d819ded:kubernetes_gengo/vendor/k8s.io/gengo \ - kubernetes:klog:v2.80.1:kubernetes_klog/vendor/k8s.io/klog/v2 \ + kubernetes:klog:v2.110.1:kubernetes_klog/vendor/k8s.io/klog/v2 \ magiconair:properties:v1.8.7:magiconair_properties/vendor/github.com/magiconair/properties \ - matttproud:golang_protobuf_extensions:v1.0.4:matttproud_golang_protobuf_extensions/vendor/github.com/matttproud/golang_protobuf_extensions \ + matttproud:golang_protobuf_extensions:v2.0.0:matttproud_golang_protobuf_extensions_v2/vendor/github.com/matttproud/golang_protobuf_extensions/v2 \ mbland:hmacauth:44256dfd4bfa:mbland_hmacauth/vendor/github.com/mbland/hmacauth \ - mitchellh:mapstructure:v1.1.2:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \ + mitchellh:mapstructure:v1.5.0:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \ natefinch:lumberjack:v2.2.1:natefinch_lumberjack/vendor/gopkg.in/natefinch/lumberjack.v2 \ - nxadm:tail:v1.4.8:nxadm_tail/vendor/github.com/nxadm/tail \ - oauth2-proxy:mockoidc:e3afe97dec43:oauth2_proxy_mockoidc/vendor/github.com/oauth2-proxy/mockoidc \ + nxadm:tail:v1.4.11:nxadm_tail/vendor/github.com/nxadm/tail \ + oauth2-proxy:mockoidc:b9169deeb282:oauth2_proxy_mockoidc/vendor/github.com/oauth2-proxy/mockoidc \ oauth2-proxy:tools:56ffd7384404:oauth2_proxy_tools_reference_gen/vendor/github.com/oauth2-proxy/tools \ - ohler55:ojg:v1.14.5:ohler55_ojg/vendor/github.com/ohler55/ojg \ + ohler55:ojg:v1.21.0:ohler55_ojg/vendor/github.com/ohler55/ojg \ onsi:ginkgo:v1.16.5:onsi_ginkgo/vendor/github.com/onsi/ginkgo \ - onsi:gomega:v1.27.6:onsi_gomega/vendor/github.com/onsi/gomega \ - pelletier:go-toml:v1.2.0:pelletier_go_toml/vendor/github.com/pelletier/go-toml \ - pelletier:go-toml:v2.0.7:pelletier_go_toml_v2/vendor/github.com/pelletier/go-toml/v2 \ - pierrec:lz4:v4.1.17:pierrec_lz4_v4/vendor/github.com/pierrec/lz4/v4 \ - pmezard:go-difflib:v1.0.0:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \ - prometheus:client_golang:v1.14.0:prometheus_client_golang/vendor/github.com/prometheus/client_golang \ - prometheus:client_model:v0.3.0:prometheus_client_model/vendor/github.com/prometheus/client_model \ - prometheus:common:v0.42.0:prometheus_common/vendor/github.com/prometheus/common \ - prometheus:procfs:v0.9.0:prometheus_procfs/vendor/github.com/prometheus/procfs \ - protocolbuffers:protobuf-go:v1.28.1:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ - redis:go-redis:v9.0.2:redis_go_redis_v9/vendor/github.com/redis/go-redis/v9 \ - spf13:afero:v1.1.2:spf13_afero/vendor/github.com/spf13/afero \ - spf13:cast:v1.5.0:spf13_cast/vendor/github.com/spf13/cast \ - spf13:jwalterweatherman:v1.0.0:spf13_jwalterweatherman/vendor/github.com/spf13/jwalterweatherman \ + onsi:gomega:v1.30.0:onsi_gomega/vendor/github.com/onsi/gomega \ + open-telemetry:opentelemetry-go-contrib:v1.22.0:open_telemetry_opentelemetry_go_contrib/vendor/go.opentelemetry.io/contrib \ + open-telemetry:opentelemetry-go:v1.22.0:open_telemetry_opentelemetry_go/vendor/go.opentelemetry.io/otel \ + pelletier:go-toml:v2.1.1:pelletier_go_toml_v2/vendor/github.com/pelletier/go-toml/v2 \ + pierrec:lz4:v4.1.19:pierrec_lz4_v4/vendor/github.com/pierrec/lz4/v4 \ + pmezard:go-difflib:5d4384ee4fb2:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \ + prometheus:client_golang:v1.18.0:prometheus_client_golang/vendor/github.com/prometheus/client_golang \ + prometheus:client_model:v0.5.0:prometheus_client_model/vendor/github.com/prometheus/client_model \ + prometheus:common:v0.45.0:prometheus_common/vendor/github.com/prometheus/common \ + prometheus:procfs:v0.12.0:prometheus_procfs/vendor/github.com/prometheus/procfs \ + protocolbuffers:protobuf-go:v1.32.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ + redis:go-redis:v9.4.0:redis_go_redis_v9/vendor/github.com/redis/go-redis/v9 \ + sagikazarmark:locafero:v0.4.0:sagikazarmark_locafero/vendor/github.com/sagikazarmark/locafero \ + sagikazarmark:slog-shim:v0.1.0:sagikazarmark_slog_shim/vendor/github.com/sagikazarmark/slog-shim \ + sourcegraph:conc:v0.3.0:sourcegraph_conc/vendor/github.com/sourcegraph/conc \ + spf13:afero:v1.11.0:spf13_afero/vendor/github.com/spf13/afero \ + spf13:cast:v1.6.0:spf13_cast/vendor/github.com/spf13/cast \ spf13:pflag:v1.0.5:spf13_pflag/vendor/github.com/spf13/pflag \ - spf13:viper:v1.6.3:spf13_viper/vendor/github.com/spf13/viper \ + spf13:viper:v1.18.2:spf13_viper/vendor/github.com/spf13/viper \ square:go-jose:v2.6.0:square_go_jose/vendor/gopkg.in/square/go-jose.v2 \ - stretchr:testify:v1.8.1:stretchr_testify/vendor/github.com/stretchr/testify \ - subosito:gotenv:v1.4.2:subosito_gotenv/vendor/github.com/subosito/gotenv \ - vmihailenco:msgpack:v5.3.5:vmihailenco_msgpack_v5/vendor/github.com/vmihailenco/msgpack/v5 \ + stretchr:testify:v1.8.4:stretchr_testify/vendor/github.com/stretchr/testify \ + subosito:gotenv:v1.6.0:subosito_gotenv/vendor/github.com/subosito/gotenv \ + uber-go:multierr:v1.11.0:uber_go_multierr/vendor/go.uber.org/multierr \ + vmihailenco:msgpack:v5.4.1:vmihailenco_msgpack_v5/vendor/github.com/vmihailenco/msgpack/v5 \ vmihailenco:tagparser:v2.0.0:vmihailenco_tagparser_v2/vendor/github.com/vmihailenco/tagparser/v2 \ - yuin:gopher-lua:f4c35e4016d9:yuin_gopher_lua/vendor/github.com/yuin/gopher-lua + yuin:gopher-lua:v1.1.1:yuin_gopher_lua/vendor/github.com/yuin/gopher-lua GO_BUILDFLAGS= -ldflags="-s -X main.VERSION=${PORTVERSION}" diff --git a/www/oauth2-proxy/distinfo b/www/oauth2-proxy/distinfo index f4112a427591..fda578d3f4d7 100644 --- a/www/oauth2-proxy/distinfo +++ b/www/oauth2-proxy/distinfo @@ -1,42 +1,48 @@ -TIMESTAMP = 1695629050 -SHA256 (oauth2-proxy-oauth2-proxy-v7.5.1_GH0.tar.gz) = 97de086ba98ce884da77d4031537f72496a059d14c60977c46824c24010096c8 -SIZE (oauth2-proxy-oauth2-proxy-v7.5.1_GH0.tar.gz) = 1283412 +TIMESTAMP = 1709746851 +SHA256 (oauth2-proxy-oauth2-proxy-v7.6.0_GH0.tar.gz) = 2beac9e817d59b37f2277efefeda68447418355792a60da709a80c278628fcd8 +SIZE (oauth2-proxy-oauth2-proxy-v7.6.0_GH0.tar.gz) = 1231670 SHA256 (Bose-minisentinel-917c5a9223bb_GH0.tar.gz) = c765c12a0ed631ae864f74ee606279a0962f3a87c4274cea6e8d922b0ad8a98e SIZE (Bose-minisentinel-917c5a9223bb_GH0.tar.gz) = 8352 -SHA256 (alicebob-gopher-json-a9ecdc9d1d3a_GH0.tar.gz) = ce51bf794d26ef3a8a4d0e4e8a4b477ce4e78bbad6d317fd7c839af9ebfcc68a -SIZE (alicebob-gopher-json-a9ecdc9d1d3a_GH0.tar.gz) = 3630 -SHA256 (alicebob-miniredis-v2.23.0_GH0.tar.gz) = 4fd067da97a974e4fe6ab2996e62f3b6c8c99700aa803918a961cc751475428d -SIZE (alicebob-miniredis-v2.23.0_GH0.tar.gz) = 166328 -SHA256 (benbjohnson-clock-v1.3.0_GH0.tar.gz) = 5d3b9240f6e03499de38515ce7eeff033c2e09df2a1ef3b8e07bba665b8872a3 -SIZE (benbjohnson-clock-v1.3.0_GH0.tar.gz) = 8173 +SHA256 (a8m-envsubst-v1.4.2_GH0.tar.gz) = 3692eb658657ffdec5725ae2accd96a05ac6097d770a7bdfd622410983962387 +SIZE (a8m-envsubst-v1.4.2_GH0.tar.gz) = 12316 +SHA256 (alicebob-gopher-json-906a9b012302_GH0.tar.gz) = 5899fe9fd1e1401062ef8330e63be498cfbfeabe2efb4394610c1062b1a73e1d +SIZE (alicebob-gopher-json-906a9b012302_GH0.tar.gz) = 3634 +SHA256 (alicebob-miniredis-v2.31.1_GH0.tar.gz) = 135ca0b40eb8aacecf81f459845a55e500d00496aaf68d15e7e2837e94c85508 +SIZE (alicebob-miniredis-v2.31.1_GH0.tar.gz) = 184286 +SHA256 (benbjohnson-clock-v1.3.5_GH0.tar.gz) = d26928c5301d8f7feedebeda0506599fa8c9aeb0b724de619b9d468df441a33c +SIZE (benbjohnson-clock-v1.3.5_GH0.tar.gz) = 9183 SHA256 (beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825 SIZE (beorn7-perks-v1.0.1_GH0.tar.gz) = 10867 -SHA256 (bitly-go-simplejson-v0.5.0_GH0.tar.gz) = 44196c95263e74277372319e5a6cb7f53b29ef7ddab8c7fed6ce6fc80144d465 -SIZE (bitly-go-simplejson-v0.5.0_GH0.tar.gz) = 5994 +SHA256 (bitly-go-simplejson-v0.5.1_GH0.tar.gz) = ef4c1cc5aa25a5d681b7cc22c6eac7d60efd705a1ac4da60e5d8fd7ab942db48 +SIZE (bitly-go-simplejson-v0.5.1_GH0.tar.gz) = 6177 SHA256 (bmizerany-assert-b7ed37b82869_GH0.tar.gz) = f7dc11f10c5e52a94c836e15e7aff05ad4afba7436f66e5f4506806627c4635e SIZE (bmizerany-assert-b7ed37b82869_GH0.tar.gz) = 1469 -SHA256 (bsm-redislock-v0.9.1_GH0.tar.gz) = b54cd475f0ceb8398f6a84cac00ddee5fbe04794aa8c54dbbe59b7ceb044a168 -SIZE (bsm-redislock-v0.9.1_GH0.tar.gz) = 7550 +SHA256 (bsm-redislock-v0.9.4_GH0.tar.gz) = b77a6f71c12dc6d3aa3ad17aa634b01542aae352da2e2ae6c24a9b9ba85f3f92 +SIZE (bsm-redislock-v0.9.4_GH0.tar.gz) = 7326 SHA256 (census-instrumentation-opencensus-go-v0.24.0_GH0.tar.gz) = 048708914541817193330ce052026deb0c617c9d953ac15ae601ab2bde5788d1 SIZE (census-instrumentation-opencensus-go-v0.24.0_GH0.tar.gz) = 176752 SHA256 (cespare-xxhash-v2.2.0_GH0.tar.gz) = b8c684b9e5e136510913727e6a845b28f8176e55db827b11f17769fba970fe13 SIZE (cespare-xxhash-v2.2.0_GH0.tar.gz) = 12334 -SHA256 (coreos-go-oidc-v3.5.0_GH0.tar.gz) = 848eb135d3a6b6dcee99a09be7eb1514dc55cc0e497bb9a4200689043994c081 -SIZE (coreos-go-oidc-v3.5.0_GH0.tar.gz) = 32229 -SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e -SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152 +SHA256 (coreos-go-oidc-v3.9.0_GH0.tar.gz) = c644f0d98dd8f62c4332402682d6c369b73033aae6b6a43db6083d3f94d227da +SIZE (coreos-go-oidc-v3.9.0_GH0.tar.gz) = 32500 +SHA256 (davecgh-go-spew-d8f796af33cc_GH0.tar.gz) = 21505c2cb5cb4e2b8ae3007f3f6db6edb9f1c28511f98975b6b0dedf0e3fa24e +SIZE (davecgh-go-spew-d8f796af33cc_GH0.tar.gz) = 42183 SHA256 (dgryski-go-rendezvous-9f7001d12a5f_GH0.tar.gz) = 29584550745fd4b8fce2e2f3def7b9d9ffe2b86cf9b6596b53a660c9bbfe27b6 SIZE (dgryski-go-rendezvous-9f7001d12a5f_GH0.tar.gz) = 1699 -SHA256 (fsnotify-fsnotify-v1.6.0_GH0.tar.gz) = 583b2b399709d04807c5c3185e7d4dc0543d532af91fdeb85eeaf803a0b7703b -SIZE (fsnotify-fsnotify-v1.6.0_GH0.tar.gz) = 46044 -SHA256 (ghodss-yaml-25d852aebe32_GH0.tar.gz) = 52ad2f9939d39cd22a4267ad385eeef1ae6ae329929bb4117181f87af1689c27 -SIZE (ghodss-yaml-25d852aebe32_GH0.tar.gz) = 14351 +SHA256 (felixge-httpsnoop-v1.0.4_GH0.tar.gz) = ffb63ba081e4c2360342dea2079d08b8560c315b2f458885fd34639786a1aa3d +SIZE (felixge-httpsnoop-v1.0.4_GH0.tar.gz) = 11954 +SHA256 (fsnotify-fsnotify-v1.7.0_GH0.tar.gz) = ca8175ba6bd3d0cc992200c2f44acabec05367575dc0478c5902971fe7453f35 +SIZE (fsnotify-fsnotify-v1.7.0_GH0.tar.gz) = 57502 +SHA256 (ghodss-yaml-d8423dcdf344_GH0.tar.gz) = 1595e11cd70d828f1fab36d2d6569df0f852f464d812f903692f9cabc03974fc +SIZE (ghodss-yaml-d8423dcdf344_GH0.tar.gz) = 14394 SHA256 (go-ini-ini-v1.67.0_GH0.tar.gz) = 06ba51234140118d1b6064f1817aa89cc971c6e7ce04cb9d286e6660d89296c8 SIZE (go-ini-ini-v1.67.0_GH0.tar.gz) = 53531 -SHA256 (go-jose-go-jose-v3.0.0_GH0.tar.gz) = 06fe2a7dbc16f27993a979eeb3a20c2608a02ea2d04480ed3141056be98c279c -SIZE (go-jose-go-jose-v3.0.0_GH0.tar.gz) = 315103 -SHA256 (go-logr-logr-v1.2.3_GH0.tar.gz) = c5e27e7dcd864e17b3187739fea1c2f149a0e1a9c53e54d8a242db24443c3667 -SIZE (go-logr-logr-v1.2.3_GH0.tar.gz) = 38564 +SHA256 (go-jose-go-jose-v3.0.1_GH0.tar.gz) = 14bfdae88d8b0dda027d066c9ae92d0832fe90f08eb18c5749273b3ce18d58f7 +SIZE (go-jose-go-jose-v3.0.1_GH0.tar.gz) = 315497 +SHA256 (go-logr-logr-v1.4.1_GH0.tar.gz) = 8eae286ca6e69e82f22cdde7464f4e5530e624b2da486b09cd0ec46b745c0d0e +SIZE (go-logr-logr-v1.4.1_GH0.tar.gz) = 56957 +SHA256 (go-logr-stdr-v1.2.2_GH0.tar.gz) = 37d975b280d884ca0d55a800bc6e47314b6e86268e56254f9d15d19ca9404eb8 +SIZE (go-logr-stdr-v1.2.2_GH0.tar.gz) = 9098 SHA256 (go-tomb-tomb-dd632973f1e7_GH0.tar.gz) = b67f4ee9324a78176bc3196fe262388696aeb3f31d9879d498200219f9c4c554 SIZE (go-tomb-tomb-dd632973f1e7_GH0.tar.gz) = 3631 SHA256 (go-yaml-yaml-v2.4.0_GH0.tar.gz) = d8e94679e5fff6bd1a35e10241543929a5f3da44f701755babf99b3daf0faac0 @@ -45,115 +51,125 @@ SHA256 (go-yaml-yaml-v3.0.1_GH0.tar.gz) = cf05411540d3e6ef8f1fd88434b34f94cedace SIZE (go-yaml-yaml-v3.0.1_GH0.tar.gz) = 91173 SHA256 (golang-jwt-jwt-v3.2.2_GH0.tar.gz) = 4cd18a4bb5d949244f137fed0884f93695ff268cb9efaba71ddcf4c50b17efe0 SIZE (golang-jwt-jwt-v3.2.2_GH0.tar.gz) = 39887 -SHA256 (golang-appengine-v1.6.7_GH0.tar.gz) = c623d81235f7c9699e299b328191d813337dd57dcc800d7afdb5130e8c321a8f -SIZE (golang-appengine-v1.6.7_GH0.tar.gz) = 333007 -SHA256 (golang-crypto-v0.7.0_GH0.tar.gz) = a7e73081a33f1bf496753a0cfd374052fb52da16d00600ca411d086a23da6178 -SIZE (golang-crypto-v0.7.0_GH0.tar.gz) = 1634438 -SHA256 (golang-exp-47ecfdc1ba53_GH0.tar.gz) = f2b18b76b508aad14a64ec635b433c98579426f77f3fc3297a80a69d5b3cf9a6 -SIZE (golang-exp-47ecfdc1ba53_GH0.tar.gz) = 1623283 +SHA256 (golang-appengine-v1.6.8_GH0.tar.gz) = 9f0029767e180c64ef42c448f02a247deb2980b2ba6908977ad4c53ebae1abb5 +SIZE (golang-appengine-v1.6.8_GH0.tar.gz) = 628708 +SHA256 (golang-crypto-v0.18.0_GH0.tar.gz) = 65cc44408170afc3f58d242ec1bf5c2ded68ae9d0847652eb3dca51a86ff7c34 +SIZE (golang-crypto-v0.18.0_GH0.tar.gz) = 1809280 +SHA256 (golang-exp-be819d1f06fc_GH0.tar.gz) = f84031c4cf21c41bb37649cc4f011368f281a1082d05419e16dde14702a7b6f2 +SIZE (golang-exp-be819d1f06fc_GH0.tar.gz) = 1733317 SHA256 (golang-groupcache-41bb18bfe9da_GH0.tar.gz) = 1e89795970d6593affdafe1d09dcf947681ca1ea82528e8e4fb9974a77f2e394 SIZE (golang-groupcache-41bb18bfe9da_GH0.tar.gz) = 26101 -SHA256 (golang-net-v0.8.0_GH0.tar.gz) = f9e2128a2d6861db0595428c7cce62fe5a131348a6c7651b6efa8b03d0b10831 -SIZE (golang-net-v0.8.0_GH0.tar.gz) = 1244302 -SHA256 (golang-oauth2-v0.6.0_GH0.tar.gz) = 9114431a99c6b75b1d0d738dba462edb9ba618b6735710e2d9164cebaadaee77 -SIZE (golang-oauth2-v0.6.0_GH0.tar.gz) = 86646 +SHA256 (golang-net-v0.20.0_GH0.tar.gz) = bae5107274cce60331dbc29301657afd86e5fb92a2e545f159e992eda8a9133d +SIZE (golang-net-v0.20.0_GH0.tar.gz) = 1486820 +SHA256 (golang-oauth2-v0.16.0_GH0.tar.gz) = ff7fdccf5ceeec747740ac75fbeaf06158721aab3d0f057111d3271fbda351ff +SIZE (golang-oauth2-v0.16.0_GH0.tar.gz) = 96077 SHA256 (golang-protobuf-v1.5.3_GH0.tar.gz) = 48457a6a9e8c78a7556ff5ff4a4c77d7df9bf70e882491ee0f3f1ff06db2bfaa SIZE (golang-protobuf-v1.5.3_GH0.tar.gz) = 171822 -SHA256 (golang-sync-v0.1.0_GH0.tar.gz) = 81056c07b5dc1077f2d6ac0f7ce3d4ef199a3ff85c319ab03dcff22fa9ba2183 -SIZE (golang-sync-v0.1.0_GH0.tar.gz) = 19356 -SHA256 (golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54 -SIZE (golang-sys-v0.6.0_GH0.tar.gz) = 1434234 -SHA256 (golang-text-v0.8.0_GH0.tar.gz) = aeaec799a8e0b02523c80fed03383da04bf1b9c9ef431ed4d34b70488fbeaa64 -SIZE (golang-text-v0.8.0_GH0.tar.gz) = 8359526 -SHA256 (google-go-cmp-v0.5.9_GH0.tar.gz) = 41a074c2fcfc72f813736f8ca8e3116e260a6b79af407d9da0d4c5e4c3f61acf -SIZE (google-go-cmp-v0.5.9_GH0.tar.gz) = 104427 -SHA256 (google-go-genproto-7f2fa6fef1f4_GH0.tar.gz) = 15b01bd8312128a59e32a22237ca762afb26a49e2cd47006da242d6d56afe462 -SIZE (google-go-genproto-7f2fa6fef1f4_GH0.tar.gz) = 6129006 -SHA256 (google-uuid-v1.3.0_GH0.tar.gz) = 7f7f37c47980e0afcc178a9ffc390bec29ed2371919b4c07658eb01791a7f921 -SIZE (google-uuid-v1.3.0_GH0.tar.gz) = 16210 -SHA256 (googleapis-enterprise-certificate-proxy-v0.2.3_GH0.tar.gz) = 203c28cf4c29a46962c7508863fc23fab50afbc85d8775dceeb9c935a7022909 -SIZE (googleapis-enterprise-certificate-proxy-v0.2.3_GH0.tar.gz) = 31940 -SHA256 (googleapis-gax-go-v2.7.0_GH0.tar.gz) = 87891c9e72a2482ade4ec60d0ebc4d5fa6a3396e5e3593d5bb060d4a421c9677 -SIZE (googleapis-gax-go-v2.7.0_GH0.tar.gz) = 52950 -SHA256 (googleapis-google-api-go-client-v0.111.0_GH0.tar.gz) = 0873b9e16e4b86153b2b89e5b246629834137ead4a312248a26a63e7b15a3b68 -SIZE (googleapis-google-api-go-client-v0.111.0_GH0.tar.gz) = 31108245 -SHA256 (googleapis-google-cloud-go-compute-v1.18.0_GH0.tar.gz) = 479534541f37ac187391ea4fee29aa5dbbc0b2b0e526f002c97197abb9a72b32 -SIZE (googleapis-google-cloud-go-compute-v1.18.0_GH0.tar.gz) = 19763531 -SHA256 (gorilla-mux-v1.8.0_GH0.tar.gz) = ea2639259d2ce6f402636655e91eb93ba69c139e3cbf80b044ee393ada53757b -SIZE (gorilla-mux-v1.8.0_GH0.tar.gz) = 45517 -SHA256 (grpc-grpc-go-v1.53.0_GH0.tar.gz) = acc2f19f13b778bbc2fe77ce4c6afe51e87793971acc5c0bb1e8e141a5643a3f -SIZE (grpc-grpc-go-v1.53.0_GH0.tar.gz) = 1724906 +SHA256 (golang-sync-v0.6.0_GH0.tar.gz) = 23b8fca95397b2293e64e58d333633051ec942b46318ad8f630318e801658b67 +SIZE (golang-sync-v0.6.0_GH0.tar.gz) = 17605 +SHA256 (golang-sys-v0.16.0_GH0.tar.gz) = 9c17b728aa75f4fc4743c3f5c0dccdc3b7f9ac7c12b3124b666672cc571f657e +SIZE (golang-sys-v0.16.0_GH0.tar.gz) = 1444155 +SHA256 (golang-text-v0.14.0_GH0.tar.gz) = c80295e75bda599d17ccf74038139b0957b9915fae4e60d8b46f89454ef171a0 +SIZE (golang-text-v0.14.0_GH0.tar.gz) = 8974094 +SHA256 (google-go-cmp-v0.6.0_GH0.tar.gz) = d14f7d57b0f6d25771bee3d7d5d038f532539e71bfc934772b1c0467ab90fa86 +SIZE (google-go-cmp-v0.6.0_GH0.tar.gz) = 104784 +SHA256 (google-s2a-go-v0.1.7_GH0.tar.gz) = 671aa97ee51cf7fff4f62a27d659aefb0ba97785c552183a03b25f49197cd028 +SIZE (google-s2a-go-v0.1.7_GH0.tar.gz) = 267117 +SHA256 (google-uuid-v1.6.0_GH0.tar.gz) = ee63376b5675376c60e055ed66e5f3651ccc703bd580c022b8ad00cea309252d +SIZE (google-uuid-v1.6.0_GH0.tar.gz) = 20896 +SHA256 (googleapis-enterprise-certificate-proxy-v0.3.2_GH0.tar.gz) = d01f2349b605a37db615d0a9454970bda9575d8ebe12bdd0c164f4d2717ab2bc +SIZE (googleapis-enterprise-certificate-proxy-v0.3.2_GH0.tar.gz) = 38853 +SHA256 (googleapis-gax-go-v2.12.0_GH0.tar.gz) = 40987741a6ab2c9aa56ee1a498e521d719271b808d25318cf2a602ee8b5f5dbf +SIZE (googleapis-gax-go-v2.12.0_GH0.tar.gz) = 37779 +SHA256 (googleapis-go-genproto-a9fa1716bcac_GH0.tar.gz) = 70778b02cc720c909bef3a7d76c5c076ab269900cebb6ee1a8d270ec835dba1a +SIZE (googleapis-go-genproto-a9fa1716bcac_GH0.tar.gz) = 5919264 +SHA256 (googleapis-google-api-go-client-v0.158.0_GH0.tar.gz) = 385df36f23551f0c1ded5fe31de6ef1e1bbec3020b46cd1ea8a8cb8912c030c0 +SIZE (googleapis-google-api-go-client-v0.158.0_GH0.tar.gz) = 36843908 +SHA256 (googleapis-google-cloud-go-compute-v1.23.3_GH0.tar.gz) = 712f6713c1549d4e150be3de3cd7a1698e309c56b57e08f8b3dc072fdbae33cc +SIZE (googleapis-google-cloud-go-compute-v1.23.3_GH0.tar.gz) = 23101803 +SHA256 (gorilla-mux-v1.8.1_GH0.tar.gz) = c2a09e78d1886abb2d291b472eba3ac9185acb35234c1f5616669664ba893d6d +SIZE (gorilla-mux-v1.8.1_GH0.tar.gz) = 47033 +SHA256 (grpc-grpc-go-v1.60.1_GH0.tar.gz) = a97859fadaa14a0a5e0d91d78ea69f301b07d7d206c9caf8ffebb0bc26c7299b +SIZE (grpc-grpc-go-v1.60.1_GH0.tar.gz) = 2042404 SHA256 (hashicorp-hcl-v1.0.0_GH0.tar.gz) = 50632428210503070fd2fde748c88b7414bf84a6a0eadebf9d8e596a033bead2 SIZE (hashicorp-hcl-v1.0.0_GH0.tar.gz) = 70658 SHA256 (justinas-alice-v1.2.0_GH0.tar.gz) = 12171459da7096e0d34a0972387e15978ad7b0e73c83ce04ba2f89c44a22336b SIZE (justinas-alice-v1.2.0_GH0.tar.gz) = 4568 -SHA256 (kubernetes-apimachinery-v0.26.2_GH0.tar.gz) = c656f032ad32a720b757f9c8c494f3505a17541c8c72c74625912d176d8fec5d -SIZE (kubernetes-apimachinery-v0.26.2_GH0.tar.gz) = 567161 +SHA256 (kubernetes-apimachinery-v0.29.1_GH0.tar.gz) = 384964b9154daf8533d9533c509de3bfa12ae463eb29133012a455fa5b000ce2 +SIZE (kubernetes-apimachinery-v0.29.1_GH0.tar.gz) = 694122 SHA256 (kubernetes-gengo-83324d819ded_GH0.tar.gz) = 3a6a728f65a0b2c48210025e2418c8157a883f629d07d40a567682666be7f058 SIZE (kubernetes-gengo-83324d819ded_GH0.tar.gz) = 93239 -SHA256 (kubernetes-klog-v2.80.1_GH0.tar.gz) = 78730bcf9f801be40f98dc45ed43e942ca168b2bffa1b5d04b05c0aa7de1c95f -SIZE (kubernetes-klog-v2.80.1_GH0.tar.gz) = 89632 +SHA256 (kubernetes-klog-v2.110.1_GH0.tar.gz) = 3d3f029acb93f027bf1efe9473672115fdf43345687e924c462adc4446068a67 +SIZE (kubernetes-klog-v2.110.1_GH0.tar.gz) = 104423 SHA256 (magiconair-properties-v1.8.7_GH0.tar.gz) = 09e950df1970975400edc7f6c2f9e3edace4e1ea49f823006387d130fb0f4f03 SIZE (magiconair-properties-v1.8.7_GH0.tar.gz) = 31425 -SHA256 (matttproud-golang_protobuf_extensions-v1.0.4_GH0.tar.gz) = b64cab9cb9ae8b9162c7197aeedc6ed617b4c93e4f5674c3ec6cd2e9b0d9d09c -SIZE (matttproud-golang_protobuf_extensions-v1.0.4_GH0.tar.gz) = 37510 +SHA256 (matttproud-golang_protobuf_extensions-v2.0.0_GH0.tar.gz) = 69fd83cb3002df3359128c2748c8f319fc63ce0493d43a3dcd7a94a4f487f742 +SIZE (matttproud-golang_protobuf_extensions-v2.0.0_GH0.tar.gz) = 12099 SHA256 (mbland-hmacauth-44256dfd4bfa_GH0.tar.gz) = f5b9d6aff7eba04766d11cdc780d08458324f158f893ba84479f045dde75cb23 SIZE (mbland-hmacauth-44256dfd4bfa_GH0.tar.gz) = 6192 -SHA256 (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 53fbc06b125ff1c9c73a4eb1764346932671a29c67a45a92e2ebc6855635069b -SIZE (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 20980 +SHA256 (mitchellh-mapstructure-v1.5.0_GH0.tar.gz) = 81106cbac93000812c194b4a2069dd32913ec18819b1e99e8436595ce4939413 +SIZE (mitchellh-mapstructure-v1.5.0_GH0.tar.gz) = 30123 SHA256 (natefinch-lumberjack-v2.2.1_GH0.tar.gz) = 935582f3f3377f09604bce4ab0488092d71c0d9ff3e9359a397f00ab6caed658 SIZE (natefinch-lumberjack-v2.2.1_GH0.tar.gz) = 12568 -SHA256 (nxadm-tail-v1.4.8_GH0.tar.gz) = 8208362046819275a0809000dceacbd7b2a7caa07bcd6547dd2ff9b2104fa56c -SIZE (nxadm-tail-v1.4.8_GH0.tar.gz) = 1255770 -SHA256 (oauth2-proxy-mockoidc-e3afe97dec43_GH0.tar.gz) = 9e970562ef07c397b19ccd12b8f87431db410250801ed25ff57c10d67c7de3c7 -SIZE (oauth2-proxy-mockoidc-e3afe97dec43_GH0.tar.gz) = 19642 +SHA256 (nxadm-tail-v1.4.11_GH0.tar.gz) = f20a022655bb5acdb364382418d0481f938e761be7d4233af61b0d4659ae1812 +SIZE (nxadm-tail-v1.4.11_GH0.tar.gz) = 1175268 +SHA256 (oauth2-proxy-mockoidc-b9169deeb282_GH0.tar.gz) = 5b71bc5aeb71b68631e9d3f555f92323349a0125910dcae3238370b75d07d8cd +SIZE (oauth2-proxy-mockoidc-b9169deeb282_GH0.tar.gz) = 20597 SHA256 (oauth2-proxy-tools-56ffd7384404_GH0.tar.gz) = bd43655e4593bc0692f2737cc3abcbd14211fc456479cf33f63fd1e0d3665226 SIZE (oauth2-proxy-tools-56ffd7384404_GH0.tar.gz) = 8481 -SHA256 (ohler55-ojg-v1.14.5_GH0.tar.gz) = 3d64667c15e3ff478273e9da7add9f1e2e43b02bc4c331c00f40d30d2a777b70 -SIZE (ohler55-ojg-v1.14.5_GH0.tar.gz) = 415778 +SHA256 (ohler55-ojg-v1.21.0_GH0.tar.gz) = ccd5fb7f4d01a367823e3fccac9625025bc94199def64abddb2b6b78b4bafb7b +SIZE (ohler55-ojg-v1.21.0_GH0.tar.gz) = 448220 SHA256 (onsi-ginkgo-v1.16.5_GH0.tar.gz) = 0380c81321b764b75e76a7aa8fc8ab1ab361232a88d5b6124ef8b9a9e75d5287 SIZE (onsi-ginkgo-v1.16.5_GH0.tar.gz) = 164965 -SHA256 (onsi-gomega-v1.27.6_GH0.tar.gz) = 45d6cb03201279d052217ff6fe2b411a4308a463b21abe210ddc8d5a69d0fe8c -SIZE (onsi-gomega-v1.27.6_GH0.tar.gz) = 311764 -SHA256 (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 1a5a620f680033f17e34148bee8f26d96d8c27ff1d7f56f0fe1c7253595b5244 -SIZE (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 57496 -SHA256 (pelletier-go-toml-v2.0.7_GH0.tar.gz) = e3add1ec1c2f00af3478d361b36f8ae598fbcca978d04dbd2aa2dfc12904083c -SIZE (pelletier-go-toml-v2.0.7_GH0.tar.gz) = 892190 -SHA256 (pierrec-lz4-v4.1.17_GH0.tar.gz) = 2b8e1b98d4b2f859e27760e9018e9e57396764711f4665ebf0e7a0a9c088e7c2 -SIZE (pierrec-lz4-v4.1.17_GH0.tar.gz) = 40904356 -SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda -SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398 -SHA256 (prometheus-client_golang-v1.14.0_GH0.tar.gz) = e774de79b48fcaf27a5b6bbeb6da0e814fee33c5050550625ef9b33f77835049 -SIZE (prometheus-client_golang-v1.14.0_GH0.tar.gz) = 236318 -SHA256 (prometheus-client_model-v0.3.0_GH0.tar.gz) = c71dc6402fe2414dec82c48173fe8d5aa9fc7c43af2f1f1f48d05c1652b965b9 -SIZE (prometheus-client_model-v0.3.0_GH0.tar.gz) = 14941 -SHA256 (prometheus-common-v0.42.0_GH0.tar.gz) = 156b60f595cab579dc6e5475f4125ebcbd73c25d0f42de1d6442eea73cd4e750 -SIZE (prometheus-common-v0.42.0_GH0.tar.gz) = 130574 -SHA256 (prometheus-procfs-v0.9.0_GH0.tar.gz) = 58e339aeb758e502cea6231f82add4924778b0df4544a918786fcf54de20fa95 -SIZE (prometheus-procfs-v0.9.0_GH0.tar.gz) = 220383 -SHA256 (protocolbuffers-protobuf-go-v1.28.1_GH0.tar.gz) = df0b3dceeff0e1b6d029e60f076edd0d852cb8f3c2fe4fe3fe40164f16ec9b6b -SIZE (protocolbuffers-protobuf-go-v1.28.1_GH0.tar.gz) = 1280756 -SHA256 (redis-go-redis-v9.0.2_GH0.tar.gz) = 8a7e959bdae59f907bb06c9dfeab32e680f9723e1f9e876563bf2de02df35903 -SIZE (redis-go-redis-v9.0.2_GH0.tar.gz) = 268640 -SHA256 (spf13-afero-v1.1.2_GH0.tar.gz) = 66554a6b09b0009340ae77c119d5a14e2460bb3aea56e75e138c87e621f3803b -SIZE (spf13-afero-v1.1.2_GH0.tar.gz) = 45309 -SHA256 (spf13-cast-v1.5.0_GH0.tar.gz) = b5bf72b468a9a9a0509b7d87c984a9b2e653c9b87e9842da385f81c43bd05b9a -SIZE (spf13-cast-v1.5.0_GH0.tar.gz) = 15287 -SHA256 (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 2ece12b964e0d230b10851555185d42d3c81b401efda044265ae716eb1d0bc2d -SIZE (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 6392 +SHA256 (onsi-gomega-v1.30.0_GH0.tar.gz) = fd60dbfac362dd0207fc202152044f6acc9e259c1120173a047f9dc8d7a7fad4 +SIZE (onsi-gomega-v1.30.0_GH0.tar.gz) = 315792 +SHA256 (open-telemetry-opentelemetry-go-contrib-v1.22.0_GH0.tar.gz) = 781d51a0935bb44a7e49d494743ae8dc74778a6eb8c530490ba64f85755a76f6 +SIZE (open-telemetry-opentelemetry-go-contrib-v1.22.0_GH0.tar.gz) = 609707 +SHA256 (open-telemetry-opentelemetry-go-v1.22.0_GH0.tar.gz) = f4000e1ef0078a1ee4bcbf25b1833ff3f56a10e4a9186a9c36766faaa53aa4a0 +SIZE (open-telemetry-opentelemetry-go-v1.22.0_GH0.tar.gz) = 1499182 +SHA256 (pelletier-go-toml-v2.1.1_GH0.tar.gz) = 372ec9b709082b04bafa60e87bbf40585cb7ad5de2cf632387a54ba242a0e825 +SIZE (pelletier-go-toml-v2.1.1_GH0.tar.gz) = 906877 +SHA256 (pierrec-lz4-v4.1.19_GH0.tar.gz) = a4f5f6fbeabf20736ea0539345288d91dd45f178c61850389cc39f973b0f5c7a +SIZE (pierrec-lz4-v4.1.19_GH0.tar.gz) = 40910325 +SHA256 (pmezard-go-difflib-5d4384ee4fb2_GH0.tar.gz) = 8574a5cbc435057352a17ff9e6ad40190f3b9d623cd9ab0cdfa6c1d8f0bea0b2 +SIZE (pmezard-go-difflib-5d4384ee4fb2_GH0.tar.gz) = 11395 +SHA256 (prometheus-client_golang-v1.18.0_GH0.tar.gz) = 7de5d163cb7f18e1a3a0dd40d35e8de7bc2ef85f4a0bc22572bcbcfaa86ff709 +SIZE (prometheus-client_golang-v1.18.0_GH0.tar.gz) = 1081423 +SHA256 (prometheus-client_model-v0.5.0_GH0.tar.gz) = 170873e0b91cab5da6634af1498b88876842ff3e01212e2dabf6b4e6512c948d +SIZE (prometheus-client_model-v0.5.0_GH0.tar.gz) = 17333 +SHA256 (prometheus-common-v0.45.0_GH0.tar.gz) = 775ce5c074b5261d85227d13c61075f9c36e6d3cf9ab2c5a7d90f4006ad24c40 +SIZE (prometheus-common-v0.45.0_GH0.tar.gz) = 133098 +SHA256 (prometheus-procfs-v0.12.0_GH0.tar.gz) = 2e10f60725a5905d6cfaeffd0bc1441171aa694236a6c7031aad5a87ff841495 +SIZE (prometheus-procfs-v0.12.0_GH0.tar.gz) = 237430 +SHA256 (protocolbuffers-protobuf-go-v1.32.0_GH0.tar.gz) = 816e0babc183807928c4ede81999dc1e33bfe6e7eca9ccebe0409974e68559db +SIZE (protocolbuffers-protobuf-go-v1.32.0_GH0.tar.gz) = 1324049 +SHA256 (redis-go-redis-v9.4.0_GH0.tar.gz) = d2bd26be4dcb2368b6d4fbab2759b61385b0b36f8b8ccf80ad211f0594785973 +SIZE (redis-go-redis-v9.4.0_GH0.tar.gz) = 294300 +SHA256 (sagikazarmark-locafero-v0.4.0_GH0.tar.gz) = 9ca93b1d037912d27bbd11689c8a14b15f151df2cd2391648df67465423364c1 +SIZE (sagikazarmark-locafero-v0.4.0_GH0.tar.gz) = 9674 +SHA256 (sagikazarmark-slog-shim-v0.1.0_GH0.tar.gz) = a594ec7e138265768a5c23f8ab460724d8215db45dc1bddde4743bca3373803d +SIZE (sagikazarmark-slog-shim-v0.1.0_GH0.tar.gz) = 10872 +SHA256 (sourcegraph-conc-v0.3.0_GH0.tar.gz) = c20a36ef6e8cd4721b8824d3e0a590d78f56ce72ace53ec7fdd2f7a978e9240f +SIZE (sourcegraph-conc-v0.3.0_GH0.tar.gz) = 23021 +SHA256 (spf13-afero-v1.11.0_GH0.tar.gz) = f83f67c4a03d8bba2b7fe1a496e848b2b1b7d97d0b951d85d2b401e7488a4ed4 +SIZE (spf13-afero-v1.11.0_GH0.tar.gz) = 89257 +SHA256 (spf13-cast-v1.6.0_GH0.tar.gz) = 8eef6bfd96458f061dd738f6e146b7687bdde18f996258c9bab0f574f8c36ae8 +SIZE (spf13-cast-v1.6.0_GH0.tar.gz) = 15616 SHA256 (spf13-pflag-v1.0.5_GH0.tar.gz) = 9a2cae1f8e8ab0d2cc8ebe468e871af28d9ac0962cf0520999e3ba85f0c7b808 SIZE (spf13-pflag-v1.0.5_GH0.tar.gz) = 50796 -SHA256 (spf13-viper-v1.6.3_GH0.tar.gz) = a58703b5a80523d752d67ba1238473ec507e2f752268926f3a4fd79e3cb44e47 -SIZE (spf13-viper-v1.6.3_GH0.tar.gz) = 52318 +SHA256 (spf13-viper-v1.18.2_GH0.tar.gz) = eb9223a46c6319b3add6cfe3e7986fde9919bd441d695169d6f1238d19a0d6d4 +SIZE (spf13-viper-v1.18.2_GH0.tar.gz) = 118481 SHA256 (square-go-jose-v2.6.0_GH0.tar.gz) = 0c1556d9675158342ca7ed875b3b40ea534861b96a5a75b1eb3f6637503b9a76 SIZE (square-go-jose-v2.6.0_GH0.tar.gz) = 310320 -SHA256 (stretchr-testify-v1.8.1_GH0.tar.gz) = 6749fede6c26ae66b7e7500136dbe56913b4e0679099b6c1154d2210a9a1ec00 -SIZE (stretchr-testify-v1.8.1_GH0.tar.gz) = 97670 -SHA256 (subosito-gotenv-v1.4.2_GH0.tar.gz) = b7bafced91bfb64f2f80a78b7c343f0a16099aa0a4049ea6e4d0fa5d62be1741 -SIZE (subosito-gotenv-v1.4.2_GH0.tar.gz) = 10641 -SHA256 (vmihailenco-msgpack-v5.3.5_GH0.tar.gz) = ea944f50da36f44c610e36591b089724fed30414834c9fd1689052c94322d77b -SIZE (vmihailenco-msgpack-v5.3.5_GH0.tar.gz) = 36037 +SHA256 (stretchr-testify-v1.8.4_GH0.tar.gz) = 0d3e82b04a05d9428a2a2aec8776bd0a07f14f5d1b4fa0a3676526ca8259fd62 +SIZE (stretchr-testify-v1.8.4_GH0.tar.gz) = 104427 +SHA256 (subosito-gotenv-v1.6.0_GH0.tar.gz) = 51a5a8e36f30ddd97866779e93c4e93b0d4958a60fabd1d17fc2226bfe7823db +SIZE (subosito-gotenv-v1.6.0_GH0.tar.gz) = 11470 +SHA256 (uber-go-multierr-v1.11.0_GH0.tar.gz) = 8aa599cf7de733306cf8770f854f8a38e6c819b1ae4296f15e44b1e7c6698f34 +SIZE (uber-go-multierr-v1.11.0_GH0.tar.gz) = 16900 +SHA256 (vmihailenco-msgpack-v5.4.1_GH0.tar.gz) = cffb190f68ddf9d248e1587080466981ed911cf08901c6a81f4edc8d66b69f90 +SIZE (vmihailenco-msgpack-v5.4.1_GH0.tar.gz) = 37770 SHA256 (vmihailenco-tagparser-v2.0.0_GH0.tar.gz) = 676b99c051fef68d1b0fb0385103de0e42a3ee556919b2b54ff5d3445bac56dd SIZE (vmihailenco-tagparser-v2.0.0_GH0.tar.gz) = 3683 -SHA256 (yuin-gopher-lua-f4c35e4016d9_GH0.tar.gz) = 4694620cb5ae735933bdd5bb7921de0daa0ed930c0e877cb8f2049d9fbeca16b -SIZE (yuin-gopher-lua-f4c35e4016d9_GH0.tar.gz) = 162941 +SHA256 (yuin-gopher-lua-v1.1.1_GH0.tar.gz) = 9e706d96c11314a4b3e2034eb10726e48cc7e7e7e31d4765a675f901ee6a9a7e +SIZE (yuin-gopher-lua-v1.1.1_GH0.tar.gz) = 170691 diff --git a/www/oauth2-proxy/files/oauth2-proxy.in b/www/oauth2-proxy/files/oauth2_proxy.in index 17122e3eff13..5c8aeab10dcb 100644 --- a/www/oauth2-proxy/files/oauth2-proxy.in +++ b/www/oauth2-proxy/files/oauth2_proxy.in @@ -16,21 +16,35 @@ . /etc/rc.subr -name=oauth2_proxy -rcvar=oauth2_proxy_enable +case $0 in +/etc/rc*) + # during boot (shutdown) $0 is /etc/rc (/etc/rc.shutdown), + # so get the name of the script from $_file + name=$_file + ;; +*) + name=$0 + ;; +esac + +name=${name##*/} +rcvar=${name}_enable desc="OAuth 2.0 proxy server" -load_rc_config $name +load_rc_config "$name" -: ${oauth2_proxy_enable:=NO} -: ${oauth2_proxy_user:=%%USER%%} -: ${oauth2_proxy_group:=%%GROUP%%} -: ${oauth2_proxy_flags:=""} -: ${oauth2_proxy_restart:=60} +eval "${rcvar}=\${${rcvar}:-'NO'}" +eval "_oauth2_proxy_user=\${${name}_user:-'%%USER%%'}" +eval "_oauth2_proxy_group=\${${name}_group:-'%%GROUP%%'}" +eval "_oauth2_proxy_flags=\${${name}_flags:-''}" +eval "_oauth2_proxy_restart=\${${name}_restart:-'60'}" -pidfile=%%RUN_DIR%%/%%PORTNAME%%.pid +configname=$(echo ${name}.cfg | sed -e 's:_:-:g') + +pidfile=%%RUN_DIR%%/${name}.pid +childpidfile=%%RUN_DIR%%/${name}_child.pid command=/usr/sbin/daemon -command_args="-u ${oauth2_proxy_user} -o %%LOG_DIR%%/%%PORTNAME%%.out -t %%PORTNAME%% -R ${oauth2_proxy_restart} -P ${pidfile}" +command_args="-u ${_oauth2_proxy_user} -o %%LOG_DIR%%/${name}.out -t ${name} -R ${_oauth2_proxy_restart} -P ${pidfile} -p ${childpidfile}" start_cmd="oauth2_proxy_start" stop_cmd="oauth2_proxy_stop" @@ -38,19 +52,19 @@ stop_cmd="oauth2_proxy_stop" oauth2_proxy_start() { if [ ! -d "%%LOG_DIR%%" ]; then - install -d -o ${oauth2_proxy_user} %%LOG_DIR%% + install -d -o ${_oauth2_proxy_user} %%LOG_DIR%% fi if [ ! -d "%%RUN_DIR%%" ]; then - install -d -o ${oauth2_proxy_user} %%RUN_DIR%% + install -d -o ${_oauth2_proxy_user} %%RUN_DIR%% fi - chown -R ${oauth2_proxy_user} %%LOG_DIR%% + chown -R ${_oauth2_proxy_user} %%LOG_DIR%% - echo "Starting %%PORTNAME%%." + echo "Starting ${name}." ${command} ${command_args} \ %%PREFIX%%/bin/%%PORTNAME%% \ - --config %%PREFIX%%/etc/%%PORTNAME%%.cfg \ - ${oauth2_proxy_flags} + --config %%PREFIX%%/etc/${configname} \ + ${_oauth2_proxy_flags} } oauth2_proxy_stop() @@ -58,7 +72,7 @@ oauth2_proxy_stop() local pid_daemon local pid_child - echo "Stopping %%PORTNAME%%." + echo "Stopping ${name}." pid_daemon=$(check_pidfile ${pidfile} ${command}) if [ ! -z "${pid_daemon}" ]; then @@ -66,7 +80,7 @@ oauth2_proxy_stop() fi - pid_child=$(pgrep -U ${oauth2_proxy_user} -f %%PREFIX%%/bin/%%PORTNAME%%) + pid_child=$(check_pidfile ${childpidfile} %%PREFIX%%/bin/%%PORTNAME%%) if [ ! -z "${pid_child}" ]; then kill -TERM ${pid_child} fi diff --git a/www/offpunk/Makefile b/www/offpunk/Makefile index 41bd3486fd6b..c50a6a4fe34b 100644 --- a/www/offpunk/Makefile +++ b/www/offpunk/Makefile @@ -1,5 +1,5 @@ PORTNAME= offpunk -PORTVERSION= 1.10 +PORTVERSION= 2.2 DISTVERSIONPREFIX= v CATEGORIES= www python MASTER_SITES= https://git.sr.ht/~lioploum/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/ @@ -11,6 +11,7 @@ WWW= https://sr.ht/~lioploum/offpunk/ LICENSE= BSD2CLAUSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>0:devel/py-flit-core@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beautifulsoup>0:www/py-beautifulsoup@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}cryptography>0:security/py-cryptography@${PY_FLAVOR} \ @@ -21,7 +22,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beautifulsoup>0:www/py-beautifulsoup@${PY_FL USES= python shebangfix USE_PYTHON= autoplist pep517 -SHEBANG_FILES= offpunk.py +SHEBANG_FILES= ansicat.py netcache.py offpunk.py opnk.py NO_ARCH= yes diff --git a/www/offpunk/distinfo b/www/offpunk/distinfo index ad13874c7c73..34bf62cb1ef9 100644 --- a/www/offpunk/distinfo +++ b/www/offpunk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1691366454 -SHA256 (offpunk-v1.10.tar.gz) = 1715e819cbf1475943b16aba18a157a26bc8da5184dc6c5b1f1bbcf8e5455eea -SIZE (offpunk-v1.10.tar.gz) = 210865 +TIMESTAMP = 1714949990 +SHA256 (offpunk-v2.2.tar.gz) = c6afc11bcfc8624f2eb79e97b37987ee3a9b46fe0888a09d86310fd3a7ddb346 +SIZE (offpunk-v2.2.tar.gz) = 231019 diff --git a/www/oneshot/Makefile b/www/oneshot/Makefile index b1046d9d2f1e..2c61785924f6 100644 --- a/www/oneshot/Makefile +++ b/www/oneshot/Makefile @@ -1,7 +1,7 @@ PORTNAME= oneshot DISTVERSIONPREFIX= v DISTVERSION= 1.5.1 -PORTREVISION= 20 +PORTREVISION= 21 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/onionshare-cli/Makefile b/www/onionshare-cli/Makefile index dad116890835..c3a13470cefe 100644 --- a/www/onionshare-cli/Makefile +++ b/www/onionshare-cli/Makefile @@ -1,6 +1,7 @@ PORTNAME= onionshare-cli PORTVERSION= 2.6 DISTNAME= onionshare_cli-${PORTVERSION} +PORTREVISION= 1 CATEGORIES= www security python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/onionshare/Makefile b/www/onionshare/Makefile index af474ab64b89..130cd73619c4 100644 --- a/www/onionshare/Makefile +++ b/www/onionshare/Makefile @@ -1,7 +1,7 @@ PORTNAME= onionshare DISTVERSIONPREFIX=v DISTVERSION= 2.6 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www security python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/openemr/Makefile b/www/openemr/Makefile new file mode 100644 index 000000000000..88c8646f4cde --- /dev/null +++ b/www/openemr/Makefile @@ -0,0 +1,39 @@ +PORTNAME= openemr +PORTVERSION= 7.0.2 +CATEGORIES= www +MASTER_SITES= SF/openemr/OpenEMR%20Current/${PORTVERSION}/ +PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} + +MAINTAINER= wen@FreeBSD.org +COMMENT= Electronic health records and medical practice management application +WWW= https://www.open-emr.org/ + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= cpe php:flavors +USE_PHP= ctype curl gd json ldap mcrypt \ + mbstring openssl pdo pdo_mysql \ + session xml xmlreader xmlrpc xsl zip zlib + +NO_BUILD= yes +PLIST= ${WRKDIR}/plist +SUB_FILES= pkg-message +SUB_LIST= OPENEMRDIR=${OPENEMRDIR} + +OPENEMRDIR?= www/openemr + +post-patch: + @${RM} -rf ${WRKSRC}/.g* + @${RM} -rf ${WRKSRC}/.e* + @${RM} -rf ${WRKSRC}/.s* + +pre-install: + @${FIND} -s -d ${WRKSRC} -type f | ${SED} "s?${WRKSRC}?${OPENEMRDIR}?g" >>${PLIST} + @${FIND} -s -d ${WRKSRC} -type l | ${SED} "s?${WRKSRC}?${OPENEMRDIR}?g" >>${PLIST} + @${FIND} -s -d ${WRKSRC} -type d | ${SED} "s?${WRKSRC}?@dir ${OPENEMRDIR}?g" >> ${PLIST} + +do-install: + @cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${OPENEMRDIR} + +.include <bsd.port.mk> diff --git a/www/openemr/distinfo b/www/openemr/distinfo new file mode 100644 index 000000000000..96f94b2a3a16 --- /dev/null +++ b/www/openemr/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714915935 +SHA256 (openemr-7.0.2.tar.gz) = 70fded3f6f6dc0817b390ff32f442abd915198b8680369b0112b42d54bae1694 +SIZE (openemr-7.0.2.tar.gz) = 209854194 diff --git a/www/openemr/files/pkg-message.in b/www/openemr/files/pkg-message.in new file mode 100644 index 000000000000..1bebbb3aa69c --- /dev/null +++ b/www/openemr/files/pkg-message.in @@ -0,0 +1,26 @@ +[ +{ type: install + message: <<EOM + +1) Add the following to your Apache configuration file + httpd.conf, and restart the server: + + Alias /openemr %%PREFIX%%/%%OPENEMRDIR%%/ + AcceptPathInfo On + <Directory %%PREFIX%%/%%OPENEMRDIR%%/> + AllowOverride None + Require all granted + </Directory> + +2) Visit your OpenEMR site with a browser (i.e., + http://your.server.com/openemr/), and you should + be taken to the install script, which will lead + you through the installation step by step. + +For more information, see the INSTALL DOCUMENTATION: + + https://www.open-emr.org/wiki/index.php/OpenEMR_Installation_Guides + +EOM +} +] diff --git a/www/openemr/pkg-descr b/www/openemr/pkg-descr new file mode 100644 index 000000000000..0d60dbcf617f --- /dev/null +++ b/www/openemr/pkg-descr @@ -0,0 +1,5 @@ +OpenEMR is a Free and Open Source electronic health records and medical +practice management application. It is ONC Certified and it features +fully integrated electronic health records, practice management, scheduling, +electronic billing, internationalization, free support, a vibrant community, +and a whole lot more. diff --git a/www/owncast/Makefile b/www/owncast/Makefile index 30eed7a153e0..9bb99e51008c 100644 --- a/www/owncast/Makefile +++ b/www/owncast/Makefile @@ -1,7 +1,7 @@ PORTNAME= owncast DISTVERSIONPREFIX= v DISTVERSION= 0.1.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www DIST_SUBDIR= ${PORTNAME} diff --git a/www/p5-HTML5-DOM/Makefile b/www/p5-HTML5-DOM/Makefile index fd20dcee12a5..7e5094014390 100644 --- a/www/p5-HTML5-DOM/Makefile +++ b/www/p5-HTML5-DOM/Makefile @@ -1,5 +1,5 @@ PORTNAME= HTML5-DOM -PORTVERSION= 1.25 +PORTVERSION= 1.26 CATEGORIES= www perl5 MASTER_SITES= CPAN MASTER_SITE_SUBDIR= CPAN:ZHUMARIN @@ -7,7 +7,7 @@ PKGNAMEPREFIX= p5- MAINTAINER= wen@FreeBSD.org COMMENT= Super fast html5 DOM library with css selectors -WWW= https://metacpan.org/release/HTML5-DOM +WWW= https://metacpan.org/release/HTML5-DOM LICENSE= MIT diff --git a/www/p5-HTML5-DOM/distinfo b/www/p5-HTML5-DOM/distinfo index c8ba15b50f6e..34ff6d39f790 100644 --- a/www/p5-HTML5-DOM/distinfo +++ b/www/p5-HTML5-DOM/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1625764493 -SHA256 (HTML5-DOM-1.25.tar.gz) = a815c4bd6bada87203628f8e658d78610fdf9bd6b9dacfd10c437819416cee54 -SIZE (HTML5-DOM-1.25.tar.gz) = 1473445 +TIMESTAMP = 1715047555 +SHA256 (HTML5-DOM-1.26.tar.gz) = 0c149680bba16de39839f512007376d31810520cdd824afa7ef218af15db5bd9 +SIZE (HTML5-DOM-1.26.tar.gz) = 1469098 diff --git a/www/p5-HTTP-Tiny/Makefile b/www/p5-HTTP-Tiny/Makefile index bdb68b7d7c3d..791a5fb136bd 100644 --- a/www/p5-HTTP-Tiny/Makefile +++ b/www/p5-HTTP-Tiny/Makefile @@ -1,5 +1,6 @@ PORTNAME= HTTP-Tiny PORTVERSION= 0.088 +PORTREVISION= 1 CATEGORIES= www perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- @@ -19,17 +20,18 @@ NO_ARCH= yes PORTSCOUT= limit:^[0-9\.]*$$ -OPTIONS_DEFINE= COOKIE HTTPS IO_SOCKET_IP -OPTIONS_DEFAULT=COOKIE HTTPS IO_SOCKET_IP +OPTIONS_DEFINE= CERTS COOKIE HTTPS IO_SOCKET_IP +OPTIONS_DEFAULT=CERTS COOKIE HTTPS IO_SOCKET_IP +CERTS_DESC= Install the Mozilla CA cert bundle IO_SOCKET_IP_DESC= Use IO::Socket:IP instead of IO::Socket::INET +CERTS_BUILD_DEPENDS= p5-Mozilla-CA>=20160104:www/p5-Mozilla-CA +CERTS_RUN_DEPENDS= p5-Mozilla-CA>=20160104:www/p5-Mozilla-CA COOKIE_BUILD_DEPENDS= p5-HTTP-CookieJar>=0.001:www/p5-HTTP-CookieJar COOKIE_RUN_DEPENDS= p5-HTTP-CookieJar>=0.001:www/p5-HTTP-CookieJar HTTPS_BUILD_DEPENDS= p5-IO-Socket-SSL>=1.42:security/p5-IO-Socket-SSL \ - p5-Mozilla-CA>=20160104:www/p5-Mozilla-CA \ p5-Net-SSLeay>=1.49:security/p5-Net-SSLeay HTTPS_RUN_DEPENDS= p5-IO-Socket-SSL>=1.42:security/p5-IO-Socket-SSL \ - p5-Mozilla-CA>=20160104:www/p5-Mozilla-CA \ p5-Net-SSLeay>=1.49:security/p5-Net-SSLeay .include <bsd.port.mk> diff --git a/www/p5-Mojolicious/Makefile b/www/p5-Mojolicious/Makefile index deda1ad1770a..244f94db54ff 100644 --- a/www/p5-Mojolicious/Makefile +++ b/www/p5-Mojolicious/Makefile @@ -1,5 +1,5 @@ PORTNAME= Mojolicious -PORTVERSION= 9.36 +PORTVERSION= 9.37 CATEGORIES= www perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- diff --git a/www/p5-Mojolicious/distinfo b/www/p5-Mojolicious/distinfo index 6e3b3c938c0a..7a547ee308d0 100644 --- a/www/p5-Mojolicious/distinfo +++ b/www/p5-Mojolicious/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1710045378 -SHA256 (Mojolicious-9.36.tar.gz) = 517ecf6fd86a0b7c6169d55102238bf9851618db762fb00d4cf0d94c6252015f -SIZE (Mojolicious-9.36.tar.gz) = 938951 +TIMESTAMP = 1715802752 +SHA256 (Mojolicious-9.37.tar.gz) = 4fb8a0882ed17f864f7de96b94fab61706f967f919c572dcccede68e588e9810 +SIZE (Mojolicious-9.37.tar.gz) = 940046 diff --git a/www/p5-Mojolicious/pkg-plist b/www/p5-Mojolicious/pkg-plist index d8af50670429..d7e72618c31a 100644 --- a/www/p5-Mojolicious/pkg-plist +++ b/www/p5-Mojolicious/pkg-plist @@ -6,6 +6,7 @@ bin/morbo %%SITE_PERL%%/Mojo/Asset/File.pm %%SITE_PERL%%/Mojo/Asset/Memory.pm %%SITE_PERL%%/Mojo/Base.pm +%%SITE_PERL%%/Mojo/BaseUtil.pm %%SITE_PERL%%/Mojo/ByteStream.pm %%SITE_PERL%%/Mojo/Cache.pm %%SITE_PERL%%/Mojo/Collection.pm @@ -151,6 +152,7 @@ bin/morbo %%PERL5_MAN3%%/Mojo::Asset::File.3.gz %%PERL5_MAN3%%/Mojo::Asset::Memory.3.gz %%PERL5_MAN3%%/Mojo::Base.3.gz +%%PERL5_MAN3%%/Mojo::BaseUtil.3.gz %%PERL5_MAN3%%/Mojo::ByteStream.3.gz %%PERL5_MAN3%%/Mojo::Cache.3.gz %%PERL5_MAN3%%/Mojo::Collection.3.gz diff --git a/www/p5-REST-Client/Makefile b/www/p5-REST-Client/Makefile index c45a9a35065b..651b07edd6c6 100644 --- a/www/p5-REST-Client/Makefile +++ b/www/p5-REST-Client/Makefile @@ -1,10 +1,10 @@ PORTNAME= REST-Client -PORTVERSION= 273 +DISTVERSION= 281 CATEGORIES= www perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- -MAINTAINER= michelle@sorbs.net +MAINTAINER= ports@FreeBSD.org COMMENT= Simple client for interacting with RESTful http/https resources WWW= https://metacpan.org/release/REST-Client diff --git a/www/p5-REST-Client/distinfo b/www/p5-REST-Client/distinfo index 4263c3cdcbfc..575f4f073e2f 100644 --- a/www/p5-REST-Client/distinfo +++ b/www/p5-REST-Client/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1508317417 -SHA256 (REST-Client-273.tar.gz) = a8652a2214308faff2c68be5ce64c904dcccc5e86be7f32376c1590869d01844 -SIZE (REST-Client-273.tar.gz) = 20405 +TIMESTAMP = 1715681294 +SHA256 (REST-Client-281.tar.gz) = fa10d21a0037e682601efe66738a758ff7521094aa01229e93c888a679b2c8f6 +SIZE (REST-Client-281.tar.gz) = 10292 diff --git a/www/pear-Structures_DataGrid_Renderer_Smarty/Makefile b/www/pear-Structures_DataGrid_Renderer_Smarty/Makefile index 997bd3d9a794..d9cba579748f 100644 --- a/www/pear-Structures_DataGrid_Renderer_Smarty/Makefile +++ b/www/pear-Structures_DataGrid_Renderer_Smarty/Makefile @@ -6,6 +6,9 @@ MAINTAINER= sunpoet@FreeBSD.org COMMENT= Smarty Renderer for pear-Structures_DataGrid WWW= https://pear.php.net/package/Structures_DataGrid_Renderer_Smarty +DEPRECATED= Last release in 2010, depends on expired www/smarty2 +EXPIRATION_DATE=2024-06-04 + RUN_DEPENDS= ${PEARDIR}/Structures/DataGrid.php:devel/pear-Structures_DataGrid@${PHP_FLAVOR} \ ${LOCALBASE}/share/smarty/Smarty.class.php:www/smarty2@${PHP_FLAVOR} \ ${PEARDIR}/Structures/DataGrid/Renderer/Pager.php:www/pear-Structures_DataGrid_Renderer_Pager@${PHP_FLAVOR} diff --git a/www/php83-tidy/Makefile b/www/php83-tidy/Makefile index b7d1a33160c5..e8b8a4b50107 100644 --- a/www/php83-tidy/Makefile +++ b/www/php83-tidy/Makefile @@ -1,4 +1,4 @@ -PORTEVISION= 1 +PORTREVISION= 1 CATEGORIES= www MASTERDIR= ${.CURDIR}/../../lang/php83 diff --git a/www/phpfpmtop/Makefile b/www/phpfpmtop/Makefile index 6236fcbea5fb..21c2bd70c27e 100644 --- a/www/phpfpmtop/Makefile +++ b/www/phpfpmtop/Makefile @@ -1,7 +1,7 @@ PORTNAME= phpfpmtop DISTVERSIONPREFIX= v DISTVERSION= 0.2 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www devel MAINTAINER= mops@punkt.de diff --git a/www/phpsysinfo/Makefile b/www/phpsysinfo/Makefile index e383a6c8889b..8ebc1bbb7380 100644 --- a/www/phpsysinfo/Makefile +++ b/www/phpsysinfo/Makefile @@ -1,8 +1,9 @@ PORTNAME= phpsysinfo DISTVERSIONPREFIX= v DISTVERSION= 3.4.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www +PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} MAINTAINER= tremere@cainites.net COMMENT= PHP script for displaying system information diff --git a/www/piwigo/Makefile b/www/piwigo/Makefile index 88326280cb5b..fd3de60cd6a8 100644 --- a/www/piwigo/Makefile +++ b/www/piwigo/Makefile @@ -1,6 +1,6 @@ PORTNAME= piwigo DISTVERSION= 14.4.0 -PORTREVISION= 0 +PORTREVISION= 3 PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} CATEGORIES= www MASTER_SITES= https://piwigo.org/download/dlcounter.php?code=${PORTVERSION}&/ diff --git a/www/pomerium/Makefile b/www/pomerium/Makefile index 6be718741fa5..7707f19c7b03 100644 --- a/www/pomerium/Makefile +++ b/www/pomerium/Makefile @@ -1,7 +1,7 @@ PORTNAME= pomerium DISTVERSIONPREFIX= v DISTVERSION= 0.8.4 -PORTREVISION= 3 +PORTREVISION= 4 PORTEPOCH= 1 CATEGORIES= www diff --git a/www/privatebin/Makefile b/www/privatebin/Makefile index e1e932894359..cd58be87d537 100644 --- a/www/privatebin/Makefile +++ b/www/privatebin/Makefile @@ -1,5 +1,6 @@ PORTNAME= privatebin -PORTVERSION= 1.7.1 +PORTVERSION= 1.7.3 +PORTREVISION= 1 CATEGORIES= www security MAINTAINER= dvl@FreeBSD.org diff --git a/www/privatebin/distinfo b/www/privatebin/distinfo index d5ad49a165f9..5283ed0b65e1 100644 --- a/www/privatebin/distinfo +++ b/www/privatebin/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1707662300 -SHA256 (privatebin-PrivateBin-1.7.1_GH0.tar.gz) = 136faa5ba0c2d51ace916a2c0b282f5c7d5376265406040c91730e28233367ff -SIZE (privatebin-PrivateBin-1.7.1_GH0.tar.gz) = 657024 +TIMESTAMP = 1715622786 +SHA256 (privatebin-PrivateBin-1.7.3_GH0.tar.gz) = 85b3b8db81e893b684364b12085cd2ee9eef172d96e6d831ebbc021fcb32fb99 +SIZE (privatebin-PrivateBin-1.7.3_GH0.tar.gz) = 762434 diff --git a/www/privatebin/pkg-plist b/www/privatebin/pkg-plist index ea0e37a89489..947dd4b8e719 100644 --- a/www/privatebin/pkg-plist +++ b/www/privatebin/pkg-plist @@ -10,6 +10,8 @@ %%WWWDIR%%/browserconfig.xml %%WWWDIR%%/cfg/.htaccess %%WWWDIR%%/cfg/conf.sample.php +%%WWWDIR%%/composer.json +%%WWWDIR%%/composer.lock %%WWWDIR%%/css/bootstrap/bootstrap-3.4.1.css %%WWWDIR%%/css/bootstrap/bootstrap-theme-3.4.1.css %%WWWDIR%%/css/bootstrap/darkstrap-0.9.3.css @@ -19,6 +21,10 @@ %%WWWDIR%%/css/bootstrap/fonts/glyphicons-halflings-regular.woff %%WWWDIR%%/css/bootstrap/fonts/glyphicons-halflings-regular.woff2 %%WWWDIR%%/css/bootstrap/privatebin.css +%%WWWDIR%%/css/bootstrap5/bootstrap-5.3.3.css +%%WWWDIR%%/css/bootstrap5/bootstrap.rtl-5.3.3.css +%%WWWDIR%%/css/bootstrap5/privatebin.css +%%WWWDIR%%/css/common.css %%WWWDIR%%/css/noscript.css %%WWWDIR%%/css/prettify/desert.css %%WWWDIR%%/css/prettify/doxy.css @@ -62,6 +68,7 @@ %%WWWDIR%%/i18n/tr.json %%WWWDIR%%/i18n/uk.json %%WWWDIR%%/i18n/zh.json +%%WWWDIR%%/img/bootstrap-icons.svg %%WWWDIR%%/img/android-chrome-192x192.png %%WWWDIR%%/img/android-chrome-512x512.png %%WWWDIR%%/img/apple-touch-icon.png @@ -90,9 +97,11 @@ %%WWWDIR%%/js/base-x-4.0.0.js %%WWWDIR%%/js/base64-1.7.js %%WWWDIR%%/js/bootstrap-3.4.1.js +%%WWWDIR%%/js/bootstrap-5.3.3.js %%WWWDIR%%/js/comment.jsonld %%WWWDIR%%/js/commentmeta.jsonld -%%WWWDIR%%/js/jquery-3.7.0.js +%%WWWDIR%%/js/dark-mode-switch.js +%%WWWDIR%%/js/jquery-3.7.1.js %%WWWDIR%%/js/kjua-0.9.0.js %%WWWDIR%%/js/legacy.js %%WWWDIR%%/js/package-lock.json @@ -101,7 +110,7 @@ %%WWWDIR%%/js/pastemeta.jsonld %%WWWDIR%%/js/prettify.js %%WWWDIR%%/js/privatebin.js -%%WWWDIR%%/js/purify-3.0.8.js +%%WWWDIR%%/js/purify-3.1.3.js %%WWWDIR%%/js/rawinflate-0.3.js %%WWWDIR%%/js/showdown-2.1.0.js %%WWWDIR%%/js/types.jsonld @@ -135,6 +144,7 @@ %%WWWDIR%%/robots.txt %%WWWDIR%%/tpl/.htaccess %%WWWDIR%%/tpl/bootstrap.php +%%WWWDIR%%/tpl/bootstrap5.php %%WWWDIR%%/tpl/page.php %%WWWDIR%%/tpl/yourlsproxy.php %%WWWDIR%%/vendor/.htaccess diff --git a/www/proxygen/Makefile b/www/proxygen/Makefile index c30f3cd2f2a1..410678d3c94a 100644 --- a/www/proxygen/Makefile +++ b/www/proxygen/Makefile @@ -1,6 +1,7 @@ PORTNAME= proxygen DISTVERSIONPREFIX= v -DISTVERSION= 2024.04.22.00 +DISTVERSION= 2024.05.06.00 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/proxygen/distinfo b/www/proxygen/distinfo index 340440c8fa3b..e11fa8025178 100644 --- a/www/proxygen/distinfo +++ b/www/proxygen/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713844786 -SHA256 (facebook-proxygen-v2024.04.22.00_GH0.tar.gz) = 931e1721e0f455d8c9ec6027f345db4e30b73cf3c39d162c308a3968ee95e6a8 -SIZE (facebook-proxygen-v2024.04.22.00_GH0.tar.gz) = 1179877 +TIMESTAMP = 1715055836 +SHA256 (facebook-proxygen-v2024.05.06.00_GH0.tar.gz) = dcd618bce64711b39d3ca7c89caa41afb69bd3523e6f7b1c5e8ff3caf0fd90cb +SIZE (facebook-proxygen-v2024.05.06.00_GH0.tar.gz) = 1181280 diff --git a/www/py-adblock/Makefile b/www/py-adblock/Makefile index 5c4130c778a8..a7347e085b69 100644 --- a/www/py-adblock/Makefile +++ b/www/py-adblock/Makefile @@ -1,6 +1,6 @@ PORTNAME= adblock DISTVERSION= 0.6.0 -PORTREVISION= 7 +PORTREVISION= 9 CATEGORIES= www python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-aioh2/Makefile b/www/py-aioh2/Makefile index 6d6470f68d37..70731fd0538b 100644 --- a/www/py-aioh2/Makefile +++ b/www/py-aioh2/Makefile @@ -1,5 +1,6 @@ PORTNAME= aioh2 PORTVERSION= 0.2.3 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/decentfox/aioh2 LICENSE= BSD3CLAUSE 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}h2>=3:www/py-h2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}priority>=1.3.0:www/py-priority@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-aiohttp-session/Makefile b/www/py-aiohttp-session/Makefile index 0ec4cae489a4..d42704bc0f2d 100644 --- a/www/py-aiohttp-session/Makefile +++ b/www/py-aiohttp-session/Makefile @@ -1,5 +1,6 @@ PORTNAME= aiohttp-session DISTVERSION= 2.11.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-aiohttp_cors/Makefile b/www/py-aiohttp_cors/Makefile index cb2777d4d79f..bcad74f7335c 100644 --- a/www/py-aiohttp_cors/Makefile +++ b/www/py-aiohttp_cors/Makefile @@ -1,5 +1,6 @@ PORTNAME= aiohttp_cors PORTVERSION= 0.7.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +13,12 @@ WWW= https://github.com/aio-libs/aiohttp-cors LICENSE= APACHE20 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}aiohttp>=1.1:www/py-aiohttp@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-aiostream/Makefile b/www/py-aiostream/Makefile index b1e1773ad872..2b406fe47773 100644 --- a/www/py-aiostream/Makefile +++ b/www/py-aiostream/Makefile @@ -1,5 +1,5 @@ PORTNAME= aiostream -PORTVERSION= 0.5.2 +PORTVERSION= 0.6.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +12,12 @@ WWW= https://aiostream.readthedocs.io/en/stable/ \ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}typing-extensions>=0:devel/py-typing-extensions@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-aiostream/distinfo b/www/py-aiostream/distinfo index 2f706112f049..c48a0e867c7a 100644 --- a/www/py-aiostream/distinfo +++ b/www/py-aiostream/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1698341089 -SHA256 (aiostream-0.5.2.tar.gz) = b71b519a2d66c38f0872403ab86417955b77352f08d9ad02ad46fc3926b389f4 -SIZE (aiostream-0.5.2.tar.gz) = 35339 +TIMESTAMP = 1715842850 +SHA256 (aiostream-0.6.1.tar.gz) = 7bef8046e56f69b81c2d7cc394893dd9021046c3e02295968d3be0cb9e606196 +SIZE (aiostream-0.6.1.tar.gz) = 66890 diff --git a/www/py-aiostream/files/patch-pyproject.toml b/www/py-aiostream/files/patch-pyproject.toml new file mode 100644 index 000000000000..ba657f88242b --- /dev/null +++ b/www/py-aiostream/files/patch-pyproject.toml @@ -0,0 +1,9 @@ +--- pyproject.toml.orig 2024-05-10 11:10:14 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools >= 69.5"] ++requires = ["setuptools >= 61"] + build-backend = "setuptools.build_meta" + + [project] diff --git a/www/py-arxiv/Makefile b/www/py-arxiv/Makefile index 93c102d80427..456251bf43cd 100644 --- a/www/py-arxiv/Makefile +++ b/www/py-arxiv/Makefile @@ -1,5 +1,6 @@ PORTNAME= arxiv PORTVERSION= 2.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,12 +11,14 @@ WWW= https://github.com/lukasschwab/arxiv.py 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}feedparser>=6.0.10:textproc/py-feedparser@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=2.31.0:www/py-requests@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pdoc>=0:devel/py-pdoc@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes diff --git a/www/py-autobahn/Makefile b/www/py-autobahn/Makefile index 0419396493ae..eb43061ad88c 100644 --- a/www/py-autobahn/Makefile +++ b/www/py-autobahn/Makefile @@ -1,7 +1,7 @@ PORTNAME= autobahn DISTVERSIONPREFIX= v DISTVERSION= 23.6.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-betamax/Makefile b/www/py-betamax/Makefile index 0993fac9390d..1d162721b6f5 100644 --- a/www/py-betamax/Makefile +++ b/www/py-betamax/Makefile @@ -1,5 +1,6 @@ PORTNAME= betamax PORTVERSION= 0.9.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,11 +11,14 @@ WWW= https://betamax.readthedocs.io/en/latest/ \ https://github.com/betamaxpy/betamax LICENSE= APACHE20 +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}requests>=2.0:www/py-requests@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-biscuits/Makefile b/www/py-biscuits/Makefile index 0455b3a970c1..599738e0f8b0 100644 --- a/www/py-biscuits/Makefile +++ b/www/py-biscuits/Makefile @@ -1,5 +1,6 @@ PORTNAME= biscuits PORTVERSION= 0.3.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,8 +11,11 @@ WWW= https://github.com/pyrates/biscuits LICENSE= MIT +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 post-install: ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + diff --git a/www/py-bleach/Makefile b/www/py-bleach/Makefile index 749a55248a87..88a8802c45f1 100644 --- a/www/py-bleach/Makefile +++ b/www/py-bleach/Makefile @@ -1,5 +1,6 @@ PORTNAME= bleach PORTVERSION= 6.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,12 +11,15 @@ WWW= https://bleach.readthedocs.io/en/latest/ \ https://github.com/mozilla/bleach LICENSE= APACHE20 +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}six>=1.9.0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}webencodings>=0:converters/py-webencodings@${PY_FLAVOR} USES= cpe python shebangfix -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes @@ -27,6 +31,6 @@ OPTIONS_DEFINE= CSS OPTIONS_DEFAULT=CSS CSS_DESC= CSS support -CSS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tinycss2>=1.1.0<1.3:textproc/py-tinycss2@${PY_FLAVOR} +CSS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tinycss2>=1.1.0<1.4:textproc/py-tinycss2@${PY_FLAVOR} .include <bsd.port.mk> diff --git a/www/py-bleach/files/patch-setup.py b/www/py-bleach/files/patch-setup.py new file mode 100644 index 000000000000..2d4c434ee708 --- /dev/null +++ b/www/py-bleach/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2023-10-06 16:19:57 UTC ++++ setup.py +@@ -32,7 +32,7 @@ EXTRAS_REQUIRE = { + + EXTRAS_REQUIRE = { + "css": [ +- "tinycss2>=1.1.0,<1.3", ++ "tinycss2>=1.1.0,<1.4", + ], + } + diff --git a/www/py-boto3/Makefile b/www/py-boto3/Makefile index d75bd80eb600..86154996f2a2 100644 --- a/www/py-boto3/Makefile +++ b/www/py-boto3/Makefile @@ -1,5 +1,5 @@ PORTNAME= boto3 -PORTVERSION= 1.34.88 +PORTVERSION= 1.34.108 CATEGORIES= www python devel MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-boto3/distinfo b/www/py-boto3/distinfo index 700f741987c7..2dd3b185ac69 100644 --- a/www/py-boto3/distinfo +++ b/www/py-boto3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713624724 -SHA256 (boto3-1.34.88.tar.gz) = 168894499578a9d69d6f7deb5811952bf4171c51b95749a9aef32cf67bc71f87 -SIZE (boto3-1.34.88.tar.gz) = 108308 +TIMESTAMP = 1716142144 +SHA256 (boto3-1.34.108.tar.gz) = 677723295151d29ff9b363598a20c1997c4e2af7e50669d9e428b757fe586a10 +SIZE (boto3-1.34.108.tar.gz) = 108299 diff --git a/www/py-branca/Makefile b/www/py-branca/Makefile index 585f315c0c21..d603653fca36 100644 --- a/www/py-branca/Makefile +++ b/www/py-branca/Makefile @@ -1,5 +1,5 @@ PORTNAME= branca -PORTVERSION= 0.7.1 +PORTVERSION= 0.7.2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-branca/distinfo b/www/py-branca/distinfo index f9afdd654d9f..16aabd7a91a5 100644 --- a/www/py-branca/distinfo +++ b/www/py-branca/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708449500 -SHA256 (branca-0.7.1.tar.gz) = e6b6f37a37bc0abffd960c68c045a7fe025d628eff87fedf6ab6ca814812110c -SIZE (branca-0.7.1.tar.gz) = 27437 +TIMESTAMP = 1715842854 +SHA256 (branca-0.7.2.tar.gz) = ca4c94643ef31b819987ca5bd19c6009ea17b440baa3aac04628545f7a4da023 +SIZE (branca-0.7.2.tar.gz) = 27015 diff --git a/www/py-caldav/Makefile b/www/py-caldav/Makefile index 157f00b944e1..98008e587068 100644 --- a/www/py-caldav/Makefile +++ b/www/py-caldav/Makefile @@ -1,5 +1,6 @@ PORTNAME= caldav PORTVERSION= 1.2.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,6 +14,8 @@ LICENSE_COMB= dual LICENSE_FILE_APACHE20= ${WRKSRC}/COPYING.APACHE LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING.GPL +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}icalendar>=0:devel/py-icalendar@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}recurring-ical-events>=2.0.0:devel/py-recurring-ical-events@${PY_FLAVOR} \ @@ -25,7 +28,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} ${PYTHON_PKGNAMEPREFIX}xandikos>=0:www/py-xandikos@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes TEST_ENV= TZ=UTC diff --git a/www/py-dj42-channels-redis/Makefile b/www/py-channels-redis/Makefile index b2b4acdae087..a8846f5b752c 100644 --- a/www/py-dj42-channels-redis/Makefile +++ b/www/py-channels-redis/Makefile @@ -2,7 +2,7 @@ PORTNAME= channels-redis PORTVERSION= 4.2.0 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTNAME= ${PORTNAME:S/-/_/}-${PORTVERSION} MAINTAINER= grembo@FreeBSD.org @@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}redis>=5.0.1:databases/py-redis@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}msgpack>=1:devel/py-msgpack@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}asgiref>=3.7.2:www/py-asgiref@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-channels>=4:www/py-dj42-channels@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}channels>=4:www/py-channels@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-dj42-channels-redis/distinfo b/www/py-channels-redis/distinfo index 1512fee23c7a..1512fee23c7a 100644 --- a/www/py-dj42-channels-redis/distinfo +++ b/www/py-channels-redis/distinfo diff --git a/www/py-dj42-channels-redis/pkg-descr b/www/py-channels-redis/pkg-descr index 8cd2d32f3a39..8cd2d32f3a39 100644 --- a/www/py-dj42-channels-redis/pkg-descr +++ b/www/py-channels-redis/pkg-descr diff --git a/www/py-cheroot/Makefile b/www/py-cheroot/Makefile index 83545beb7410..2e5a510e49b0 100644 --- a/www/py-cheroot/Makefile +++ b/www/py-cheroot/Makefile @@ -1,8 +1,8 @@ PORTNAME= cheroot -PORTVERSION= 10.0.0 -PORTREVISION= 1 +PORTVERSION= 10.0.1 CATEGORIES= www python -MASTER_SITES= PYPI +MASTER_SITES= PYPI \ + https://github.com/cherrypy/cheroot/releases/download/v${PORTVERSION}/ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= sunpoet@FreeBSD.org @@ -13,8 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.md BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=34.4:devel/py-setuptools@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.5:devel/py-setuptools-scm@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}setuptools_scm_git_archive>=1.1:devel/py-setuptools_scm_git_archive@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=7.0:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}jaraco.functools>=0:devel/py-jaraco.functools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}more-itertools>=2.6:devel/py-more-itertools@${PY_FLAVOR} diff --git a/www/py-cheroot/distinfo b/www/py-cheroot/distinfo index 17a223886ade..009d99a4c2c3 100644 --- a/www/py-cheroot/distinfo +++ b/www/py-cheroot/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1685162244 -SHA256 (cheroot-10.0.0.tar.gz) = 59c4a1877fef9969b3c3c080caaaf377e2780919437853fc0d32a9df40b311f0 -SIZE (cheroot-10.0.0.tar.gz) = 148461 +TIMESTAMP = 1715842856 +SHA256 (cheroot-10.0.1.tar.gz) = e0b82f797658d26b8613ec8eb563c3b08e6bd6a7921e9d5089bd1175ad1b1740 +SIZE (cheroot-10.0.1.tar.gz) = 167586 diff --git a/www/py-cinemagoer/Makefile b/www/py-cinemagoer/Makefile index 62b5b2b242b4..a62010835d58 100644 --- a/www/py-cinemagoer/Makefile +++ b/www/py-cinemagoer/Makefile @@ -1,5 +1,6 @@ PORTNAME= cinemagoer PORTVERSION= 2023.5.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,13 +13,15 @@ WWW= https://cinemagoer.github.io/ \ LICENSE= GPLv2 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} \ ${PYTHON_PKGNAMEPREFIX}sqlalchemy14>=0:databases/py-sqlalchemy14@${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} USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes diff --git a/www/py-cookies/Makefile b/www/py-cookies/Makefile index d0f482ba2769..175c8552bd23 100644 --- a/www/py-cookies/Makefile +++ b/www/py-cookies/Makefile @@ -1,5 +1,6 @@ PORTNAME= cookies PORTVERSION= 2.2.1 +PORTREVISION= 1 CATEGORIES= www devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,8 +11,11 @@ WWW= https://github.com/sashahart/cookies LICENSE= MIT +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes diff --git a/www/py-cssmin/Makefile b/www/py-cssmin/Makefile index c6a291679091..39a08a1ad86a 100644 --- a/www/py-cssmin/Makefile +++ b/www/py-cssmin/Makefile @@ -1,6 +1,6 @@ PORTNAME= cssmin PORTVERSION= 0.2.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,8 +11,11 @@ WWW= https://github.com/zacharyvoase/cssmin LICENSE= MIT +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-cssutils/Makefile b/www/py-cssutils/Makefile index fc4410125f14..b8edfd19697b 100644 --- a/www/py-cssutils/Makefile +++ b/www/py-cssutils/Makefile @@ -1,5 +1,5 @@ PORTNAME= cssutils -PORTVERSION= 2.10.2 +PORTVERSION= 2.11.0 PORTEPOCH= 1 CATEGORIES= www python MASTER_SITES= PYPI @@ -14,7 +14,7 @@ LICENSE_COMB= dual LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING LICENSE_FILE_LGPL3= ${WRKSRC}/COPYING.LESSER -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=56:devel/py-setuptools@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.4.1:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} diff --git a/www/py-cssutils/distinfo b/www/py-cssutils/distinfo index eee31156e9b0..d6ccb191d25d 100644 --- a/www/py-cssutils/distinfo +++ b/www/py-cssutils/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712084536 -SHA256 (cssutils-2.10.2.tar.gz) = 93cf92a350b1c123b17feff042e212f94d960975a3ed145743d84ebe8ccec7ab -SIZE (cssutils-2.10.2.tar.gz) = 723055 +TIMESTAMP = 1715842858 +SHA256 (cssutils-2.11.0.tar.gz) = cd24a30b9a848ca92d80f0d1b362139c0b69de31394d585dbf1b17a5dc4aa627 +SIZE (cssutils-2.11.0.tar.gz) = 723164 diff --git a/www/py-daphne/Makefile b/www/py-daphne/Makefile index fa13c254f1d7..9941d1eee79b 100644 --- a/www/py-daphne/Makefile +++ b/www/py-daphne/Makefile @@ -1,5 +1,6 @@ PORTNAME= daphne PORTVERSION= 4.1.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-dj-database-url/Makefile b/www/py-dj-database-url/Makefile index 62e601d5a50a..faf1f3a1e17c 100644 --- a/www/py-dj-database-url/Makefile +++ b/www/py-dj-database-url/Makefile @@ -1,5 +1,6 @@ PORTNAME= dj-database-url DISTVERSION= 2.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/jazzband/dj-database-url LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=3.10.0.0:devel/py-typing-extensions@${PY_FLAVOR} USES= python diff --git a/www/py-dj42-django-modelcluster/Makefile b/www/py-dj42-django-modelcluster/Makefile index 5fc30b0a20b7..d3afa07ee9a6 100644 --- a/www/py-dj42-django-modelcluster/Makefile +++ b/www/py-dj42-django-modelcluster/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-modelcluster PORTVERSION= 6.2.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- @@ -11,11 +12,13 @@ WWW= https://github.com/wagtail/django-modelcluster LICENSE= BSD3CLAUSE 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}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=2022.4,1:devel/py-pytz@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-dj42-django-permissionedforms/Makefile b/www/py-dj42-django-permissionedforms/Makefile index 2013906aec95..2e982ac40d3f 100644 --- a/www/py-dj42-django-permissionedforms/Makefile +++ b/www/py-dj42-django-permissionedforms/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-permissionedforms PORTVERSION= 0.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- @@ -11,10 +12,12 @@ WWW= https://github.com/wagtail/django-permissionedforms LICENSE= BSD3CLAUSE 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}django42>=0:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-dj42-drf-spectacular-sidecar/Makefile b/www/py-dj42-drf-spectacular-sidecar/Makefile index a41a608936f9..73dc057800fa 100644 --- a/www/py-dj42-drf-spectacular-sidecar/Makefile +++ b/www/py-dj42-drf-spectacular-sidecar/Makefile @@ -1,8 +1,9 @@ PORTNAME= drf-spectacular-sidecar -DISTVERSION= 2024.4.1 +DISTVERSION= 2024.5.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +DISTNAME= drf_spectacular_sidecar-${DISTVERSION} MAINTAINER= kai@FreeBSD.org COMMENT= Serve self-contained Swagger UI/Redoc distribution builds with Django diff --git a/www/py-dj42-drf-spectacular-sidecar/distinfo b/www/py-dj42-drf-spectacular-sidecar/distinfo index 8837bfa258b6..473947a24813 100644 --- a/www/py-dj42-drf-spectacular-sidecar/distinfo +++ b/www/py-dj42-drf-spectacular-sidecar/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712292833 -SHA256 (drf-spectacular-sidecar-2024.4.1.tar.gz) = 68532dd094714f79c1775c00848f22c10f004826abc856442ff30c3bc9c40bb4 -SIZE (drf-spectacular-sidecar-2024.4.1.tar.gz) = 2345981 +TIMESTAMP = 1714600240 +SHA256 (drf_spectacular_sidecar-2024.5.1.tar.gz) = 1ecfbe86174461e3cf78a9cd49f69aa8d9e0710cb5e8b35107d3f8cc0f380c21 +SIZE (drf_spectacular_sidecar-2024.5.1.tar.gz) = 2380912 diff --git a/www/py-django-allauth/Makefile b/www/py-django-allauth/Makefile index f80a2e28790f..cc6997b1d762 100644 --- a/www/py-django-allauth/Makefile +++ b/www/py-django-allauth/Makefile @@ -1,5 +1,5 @@ PORTNAME= django-allauth -PORTVERSION= 0.61.1 +PORTVERSION= 0.63.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -15,22 +15,26 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=40.8.0:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pyjwt>=1.7:www/py-pyjwt@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}python3-openid>=3.0.8:security/py-python3-openid@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}requests>=2.0.0:www/py-requests@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}requests-oauthlib>=0.3.0:www/py-requests-oauthlib@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes -OPTIONS_DEFINE= MFA SAML -MFA_DESC= Multi-Factor Authentication support -SAML_DESC= Security Assertion Markup Language support +OPTIONS_DEFINE= MFA OPENID SAML SOCIALACCOUNT STEAM +MFA_DESC= Multi-Factor Authentication support +OPENID_DESC= OpenID authentication support +SAML_DESC= Security Assertion Markup Language support +SOCIALACCOUNT_DESC= Social network account support +STEAM_DESC= Steam OpenID authentication support MFA_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}qrcode>=7.0.0:textproc/py-qrcode@${PY_FLAVOR} +OPENID_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python3-openid>=3.0.8:security/py-python3-openid@${PY_FLAVOR} SAML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python3-saml>=1.15.0<2.0.0:security/py-python3-saml@${PY_FLAVOR} +SOCIALACCOUNT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyjwt>=1.7:www/py-pyjwt@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests-oauthlib>=0.3.0:www/py-requests-oauthlib@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=2.0.0:www/py-requests@${PY_FLAVOR} +STEAM_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python3-openid>=3.0.8:security/py-python3-openid@${PY_FLAVOR} .include <bsd.port.mk> diff --git a/www/py-django-allauth/distinfo b/www/py-django-allauth/distinfo index ff0207c42fef..1eb9b1f2d427 100644 --- a/www/py-django-allauth/distinfo +++ b/www/py-django-allauth/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708449504 -SHA256 (django-allauth-0.61.1.tar.gz) = 5b4ae515ea74f54f0041210692eee10c309ad15ddbbd03d3620693c75e3f7945 -SIZE (django-allauth-0.61.1.tar.gz) = 951524 +TIMESTAMP = 1716142146 +SHA256 (django-allauth-0.63.1.tar.gz) = ef52957992ac3dfc57dec4f7c078bb317b7b47bd7bf6b15f2c12a31c9892ad4c +SIZE (django-allauth-0.63.1.tar.gz) = 1076577 diff --git a/www/py-django-annoying/Makefile b/www/py-django-annoying/Makefile index 65c6f1a4b55b..24604cd70fcc 100644 --- a/www/py-django-annoying/Makefile +++ b/www/py-django-annoying/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-annoying PORTVERSION= 0.10.6 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,7 @@ WWW= https://github.com/skorokithakis/django-annoying LICENSE= BSD3CLAUSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-assets/Makefile b/www/py-django-assets/Makefile index e4d97b91c5c4..8c74dfa2edbb 100644 --- a/www/py-django-assets/Makefile +++ b/www/py-django-assets/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-assets PORTVERSION= 2.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,7 @@ WWW= https://github.com/miracle2k/django-assets LICENSE= BSD2CLAUSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.7:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.7:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}webassets>=2.0:www/py-webassets@${PY_FLAVOR} USES= dos2unix python diff --git a/www/py-dj42-django-auditlog/Makefile b/www/py-django-auditlog/Makefile index a72e7813178a..6cdaedc753db 100644 --- a/www/py-dj42-django-auditlog/Makefile +++ b/www/py-django-auditlog/Makefile @@ -3,7 +3,7 @@ PORTVERSION= 2.3.0 PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= grembo@FreeBSD.org COMMENT= Django app that keeps a log of changes made to an object diff --git a/www/py-dj42-django-auditlog/distinfo b/www/py-django-auditlog/distinfo index c4d6ad6233fe..c4d6ad6233fe 100644 --- a/www/py-dj42-django-auditlog/distinfo +++ b/www/py-django-auditlog/distinfo diff --git a/www/py-dj42-django-auditlog/pkg-descr b/www/py-django-auditlog/pkg-descr index 3287e3ab624d..3287e3ab624d 100644 --- a/www/py-dj42-django-auditlog/pkg-descr +++ b/www/py-django-auditlog/pkg-descr diff --git a/www/py-django-auth-ldap/Makefile b/www/py-django-auth-ldap/Makefile index 09a094e9b8b4..e895fa75b22b 100644 --- a/www/py-django-auth-ldap/Makefile +++ b/www/py-django-auth-ldap/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-auth-ldap PORTVERSION= 4.8.0 +PORTREVISION= 1 CATEGORIES= www security python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.4:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}python-ldap>=3.1:net/py-python-ldap@${PY_FLAVOR} USES= python diff --git a/www/py-django-bitfield/Makefile b/www/py-django-bitfield/Makefile index 5d1a8791d47e..dcb3111d9766 100644 --- a/www/py-django-bitfield/Makefile +++ b/www/py-django-bitfield/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-bitfield PORTVERSION= 2.2.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/disqus/django-bitfield LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.11.29:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.11.29:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} USES= python diff --git a/www/py-django-bleach/Makefile b/www/py-django-bleach/Makefile index 981c35d02b3a..10e388aec85d 100644 --- a/www/py-django-bleach/Makefile +++ b/www/py-django-bleach/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-bleach PORTVERSION= 3.1.0 +PORTREVISION= 1 CATEGORIES= www 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}bleach>=5:www/py-bleach@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-bootstrap3/Makefile b/www/py-django-bootstrap3/Makefile index 75cc8dcfa19d..e96f0c5aee11 100644 --- a/www/py-django-bootstrap3/Makefile +++ b/www/py-django-bootstrap3/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-bootstrap3 PORTVERSION= 23.4 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-braces/Makefile b/www/py-django-braces/Makefile index 19fbe01f6415..44e3f8b563e2 100644 --- a/www/py-django-braces/Makefile +++ b/www/py-django-braces/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-braces PORTVERSION= 1.15.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=40.6.6:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-cacheops/Makefile b/www/py-django-cacheops/Makefile index a987ba25ab67..a8e336609f81 100644 --- a/www/py-django-cacheops/Makefile +++ b/www/py-django-cacheops/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-cacheops PORTVERSION= 7.0.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/Suor/django-cacheops LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}redis>=3.0.0:databases/py-redis@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}funcy>=1.8<3.0:devel/py-funcy@${PY_FLAVOR} diff --git a/www/py-dj42-django-celery-results/Makefile b/www/py-django-celery-results/Makefile index 82f507cf6078..921747930fc0 100644 --- a/www/py-dj42-django-celery-results/Makefile +++ b/www/py-django-celery-results/Makefile @@ -2,7 +2,7 @@ PORTNAME= django-celery-results PORTVERSION= 2.5.1 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTNAME= ${PORTNAME:S/-/_/g}-${PORTVERSION} MAINTAINER= grembo@FreeBSD.org diff --git a/www/py-dj42-django-celery-results/distinfo b/www/py-django-celery-results/distinfo index 89582fc7649d..89582fc7649d 100644 --- a/www/py-dj42-django-celery-results/distinfo +++ b/www/py-django-celery-results/distinfo diff --git a/www/py-dj42-django-celery-results/pkg-descr b/www/py-django-celery-results/pkg-descr index da24ab97a379..da24ab97a379 100644 --- a/www/py-dj42-django-celery-results/pkg-descr +++ b/www/py-django-celery-results/pkg-descr diff --git a/www/py-django-choices-field/Makefile b/www/py-django-choices-field/Makefile index 488c8582748a..ea749d189df7 100644 --- a/www/py-django-choices-field/Makefile +++ b/www/py-django-choices-field/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-choices-field DISTVERSION= 2.3.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.0.0:devel/py-typing-extensions@${PY_FLAVOR} USES= python diff --git a/www/py-django-classy-tags/Makefile b/www/py-django-classy-tags/Makefile index d1e72b94b200..13e326d46228 100644 --- a/www/py-django-classy-tags/Makefile +++ b/www/py-django-classy-tags/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-classy-tags PORTVERSION= 4.1.0 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +13,12 @@ WWW= https://django-classy-tags.readthedocs.io/en/latest/ \ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-cms/Makefile b/www/py-django-cms/Makefile index c68ef62febcf..37998e00d3e8 100644 --- a/www/py-django-cms/Makefile +++ b/www/py-django-cms/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-cms PORTVERSION= 4.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://django-cms.org/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}djangocms-admin-style>=1.2:www/py-djangocms-admin-style@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-classy-tags>=0.7.2:www/py-django-classy-tags@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-formtools>=2.1:www/py-django-formtools@${PY_FLAVOR} \ diff --git a/www/py-dj42-django-compression-middleware/Makefile b/www/py-django-compression-middleware/Makefile index 755cc50bc83a..8c428c327ca8 100644 --- a/www/py-dj42-django-compression-middleware/Makefile +++ b/www/py-django-compression-middleware/Makefile @@ -2,7 +2,7 @@ PORTNAME= django-compression-middleware PORTVERSION= 0.5.0 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= grembo@FreeBSD.org COMMENT= Django middleware to compress responses using several algorithms diff --git a/www/py-dj42-django-compression-middleware/distinfo b/www/py-django-compression-middleware/distinfo index 5dd1c04b8ec1..5dd1c04b8ec1 100644 --- a/www/py-dj42-django-compression-middleware/distinfo +++ b/www/py-django-compression-middleware/distinfo diff --git a/www/py-dj42-django-compression-middleware/pkg-descr b/www/py-django-compression-middleware/pkg-descr index fe4861de4bcb..fe4861de4bcb 100644 --- a/www/py-dj42-django-compression-middleware/pkg-descr +++ b/www/py-django-compression-middleware/pkg-descr diff --git a/www/py-django-configurations/Makefile b/www/py-django-configurations/Makefile index 017c318ad50a..70ec2b285d0e 100644 --- a/www/py-django-configurations/Makefile +++ b/www/py-django-configurations/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-configurations PORTVERSION= 2.5 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,9 +12,9 @@ WWW= https://github.com/jazzband/django-configurations LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent distutils diff --git a/www/py-django-constance/Makefile b/www/py-django-constance/Makefile index 912badddce47..a2f3325e01ef 100644 --- a/www/py-django-constance/Makefile +++ b/www/py-django-constance/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-constance PORTVERSION= 3.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django-picklefield>=0:www/py-django-picklefield@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-contact-form/Makefile b/www/py-django-contact-form/Makefile index 9b67e9476a64..bca8bfa00b0f 100644 --- a/www/py-django-contact-form/Makefile +++ b/www/py-django-contact-form/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-contact-form PORTVERSION= 2.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,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}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-contrib-comments/Makefile b/www/py-django-contrib-comments/Makefile index 5c83068cef9d..c1184a220d1a 100644 --- a/www/py-django-contrib-comments/Makefile +++ b/www/py-django-contrib-comments/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-contrib-comments PORTVERSION= 2.2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt # Supports all Django version. Bump when DEFAULT Django is changed -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-cors-headers/Makefile b/www/py-django-cors-headers/Makefile index 300e20fa3e64..6abf829e74e4 100644 --- a/www/py-django-cors-headers/Makefile +++ b/www/py-django-cors-headers/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-cors-headers PORTVERSION= 4.3.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6:www/py-asgiref@${PY_FLAVOR} USES= python diff --git a/www/py-django-crispy-forms/Makefile b/www/py-django-crispy-forms/Makefile index 61fa8b04b967..b0f98c34817b 100644 --- a/www/py-django-crispy-forms/Makefile +++ b/www/py-django-crispy-forms/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-crispy-forms PORTVERSION= 2.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt 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}django32>=0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= dos2unix python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-cron/Makefile b/www/py-django-cron/Makefile index 20cbf33143b5..637e940966ca 100644 --- a/www/py-django-cron/Makefile +++ b/www/py-django-cron/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-cron PORTVERSION= 0.6.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/tivix/django-cron LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-csp/Makefile b/www/py-django-csp/Makefile index 1e1d7116d0ba..2c357cab07cd 100644 --- a/www/py-django-csp/Makefile +++ b/www/py-django-csp/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-csp PORTVERSION= 3.8 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-debreach/Makefile b/www/py-django-debreach/Makefile index ca44116b0fb4..c08b223edb5f 100644 --- a/www/py-django-debreach/Makefile +++ b/www/py-django-debreach/Makefile @@ -11,7 +11,7 @@ WWW= https://github.com/lpomfrey/django-debreach LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>0:www/py-django32@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-debug-toolbar/Makefile b/www/py-django-debug-toolbar/Makefile index 8c0e90bfda91..4d5b504efbd4 100644 --- a/www/py-django-debug-toolbar/Makefile +++ b/www/py-django-debug-toolbar/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-debug-toolbar PORTVERSION= 4.3.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2.4:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2.4:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlparse>=0.2.0:databases/py-sqlparse@${PY_FLAVOR} USES= python diff --git a/www/py-django-dpaste/Makefile b/www/py-django-dpaste/Makefile deleted file mode 100644 index 359e7c9bbdee..000000000000 --- a/www/py-django-dpaste/Makefile +++ /dev/null @@ -1,41 +0,0 @@ -PORTNAME= dpaste -DISTVERSIONPREFIX= v -DISTVERSION= 3.8 -CATEGORIES= www python -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}django- - -MAINTAINER= bofh@FreeBSD.org -COMMENT= Django based pastebin for text and code -WWW= https://github.com/DarrenOfficial/dpaste - -LICENSE= MIT -LICENSE_FILE= ${WRKSRC}/LICENSE - -EXPIRATION_DATE=2024-04-30 -BROKEN= does not work with py-pygments >= 2.12.0 and required static files (css + js), which must be compiled via Node.js, are not packaged. - -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj-database-url>=0.5.0:www/py-dj-database-url@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django-csp>=3.6:www/py-django-csp@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django-staticinline>=1.0:www/py-django-staticinline@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}docutils>0:textproc/py-docutils@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}jsx-lexer>=0.0.8:textproc/py-jsx-lexer@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}misaka>=2.1.0:textproc/py-misaka@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pygments>=1.6:textproc/py-pygments@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}ratelimiter>=1.2.0:devel/py-ratelimiter@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-django>0:devel/py-pytest-django@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} - -USES= python -USE_GITHUB= yes -GH_ACCOUNT= DarrenOfficial -USE_PYTHON= distutils autoplist pytest - -TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - -NO_ARCH= yes - -do-test: - @cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest -v -rs --ds=dpaste.settings.tests -o addopts= - -.include <bsd.port.mk> diff --git a/www/py-django-dpaste/distinfo b/www/py-django-dpaste/distinfo deleted file mode 100644 index 138f0f845d42..000000000000 --- a/www/py-django-dpaste/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -TIMESTAMP = 1701925084 -SHA256 (DarrenOfficial-dpaste-v3.8_GH0.tar.gz) = c22517b909faf02eb1ba32f09471fd0d83e3bfa25bbea0b4f563db54b89bfea4 -SIZE (DarrenOfficial-dpaste-v3.8_GH0.tar.gz) = 46603 diff --git a/www/py-django-dpaste/pkg-descr b/www/py-django-dpaste/pkg-descr deleted file mode 100644 index 29a7e7aaf3ea..000000000000 --- a/www/py-django-dpaste/pkg-descr +++ /dev/null @@ -1,3 +0,0 @@ -dpaste is a Django based pastebin. It's intended to run separately but its -also possible to be installed into an existing Django project like a regular -app. You can find a live example on dpaste.de diff --git a/www/py-django-extensions/Makefile b/www/py-django-extensions/Makefile index b9570fdcc06f..a9df8cdff142 100644 --- a/www/py-django-extensions/Makefile +++ b/www/py-django-extensions/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-extensions PORTVERSION= 3.2.3 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/django-extensions/django-extensions LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-filer/Makefile b/www/py-django-filer/Makefile index ba9c1acdfc19..0602557406b4 100644 --- a/www/py-django-filer/Makefile +++ b/www/py-django-filer/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-filer PORTVERSION= 3.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/stefanfoulis/django-filer LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2<5.1:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2<5.1:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-easy-thumbnails>0:graphics/py-django-easy-thumbnails@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-polymorphic>0:www/py-django-polymorphic@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>0:graphics/py-pillow@${PY_FLAVOR} diff --git a/www/py-django-filter/Makefile b/www/py-django-filter/Makefile index c279d885b9d5..a34ab80fa1cf 100644 --- a/www/py-django-filter/Makefile +++ b/www/py-django-filter/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-filter DISTVERSION= 23.5 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.2<4:devel/py-flit-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-formset-js-improved/Makefile b/www/py-django-formset-js-improved/Makefile index 093e40276581..c6b6c537fc54 100644 --- a/www/py-django-formset-js-improved/Makefile +++ b/www/py-django-formset-js-improved/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-formset-js-improved PORTVERSION= 0.5.0.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +12,7 @@ WWW= https://github.com/pretix/django-formset-js LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.8:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.8:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-jquery-js>=0.:www/py-django-jquery-js@${PY_FLAVOR} USES= python diff --git a/www/py-django-graphiql-debug-toolbar/Makefile b/www/py-django-graphiql-debug-toolbar/Makefile index aabb9d593223..f25e568066e1 100644 --- a/www/py-django-graphiql-debug-toolbar/Makefile +++ b/www/py-django-graphiql-debug-toolbar/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-graphiql-debug-toolbar DISTVERSION= 0.2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +12,7 @@ WWW= https://github.com/flavors/django-graphiql-debug-toolbar LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}graphene-django>=2.0.0:devel/py-graphene-django@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-debug-toolbar>=3.1:www/py-django-debug-toolbar@${PY_FLAVOR} diff --git a/www/py-django-guardian/Makefile b/www/py-django-guardian/Makefile index fbb40b28b93e..48e6bd3e5cd5 100644 --- a/www/py-django-guardian/Makefile +++ b/www/py-django-guardian/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-guardian PORTVERSION= 2.4.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/django-guardian/django-guardian LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent distutils diff --git a/www/py-django-hashid-field/Makefile b/www/py-django-hashid-field/Makefile index 79f534db6212..7120e3105cc6 100644 --- a/www/py-django-hashid-field/Makefile +++ b/www/py-django-hashid-field/Makefile @@ -1,5 +1,5 @@ PORTNAME= django-hashid-field -PORTVERSION= 3.4.0 +PORTVERSION= 3.4.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -9,12 +9,15 @@ COMMENT= Hashids obfuscated Django Model Field WWW= https://github.com/nshafer/django-hashid-field LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.11:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.11:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}hashids>=1.2.0:textproc/py-hashids@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-hashid-field/distinfo b/www/py-django-hashid-field/distinfo index 12bca7b6a502..8e22b6b12b6e 100644 --- a/www/py-django-hashid-field/distinfo +++ b/www/py-django-hashid-field/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708449508 -SHA256 (django-hashid-field-3.4.0.tar.gz) = d8981e4506bd6d75bf1f9cc77360770991d77b19a2ef920a878ac85092e84810 -SIZE (django-hashid-field-3.4.0.tar.gz) = 27441 +TIMESTAMP = 1715842862 +SHA256 (django-hashid-field-3.4.1.tar.gz) = 6ebb1ed7323f2465525b395ed26186cfc66cdec948178ec471ad9b1301073dc7 +SIZE (django-hashid-field-3.4.1.tar.gz) = 28752 diff --git a/www/py-django-haystack/Makefile b/www/py-django-haystack/Makefile index caf937ea9268..ce922a815985 100644 --- a/www/py-django-haystack/Makefile +++ b/www/py-django-haystack/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-haystack PORTVERSION= 3.2.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www databases python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -16,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=42:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.4:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-hijack/Makefile b/www/py-django-hijack/Makefile index 3f902465d191..b4b5a7803917 100644 --- a/www/py-django-hijack/Makefile +++ b/www/py-django-hijack/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-hijack PORTVERSION= 3.4.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI \ https://ports.caomhin.org/:npmcache @@ -17,7 +18,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>0:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-runner>0:devel/py-pytest-runner@${PY_FLAVOR} \ npm:www/npm -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-django>0:devel/py-pytest-django@${PY_FLAVOR} diff --git a/www/py-django-htmx/Makefile b/www/py-django-htmx/Makefile index 78152c2dc770..288d4acef7e6 100644 --- a/www/py-django-htmx/Makefile +++ b/www/py-django-htmx/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-htmx DISTVERSION= 1.17.3 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6:www/py-asgiref@${PY_FLAVOR} USES= python diff --git a/www/py-django-jquery-js/Makefile b/www/py-django-jquery-js/Makefile index 6faed465059b..e6798f2ef27e 100644 --- a/www/py-django-jquery-js/Makefile +++ b/www/py-django-jquery-js/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-jquery-js PORTVERSION= 3.1.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +12,7 @@ WWW= https://pypi.org/project/django-jquery-js/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.4:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.4:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-js-asset/Makefile b/www/py-django-js-asset/Makefile index cd503efcc10b..9e4ffe48bff6 100644 --- a/www/py-django-js-asset/Makefile +++ b/www/py-django-js-asset/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-js-asset DISTVERSION= 2.2.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-jsonview/Makefile b/www/py-django-jsonview/Makefile index 404c2fa7062e..3daf01369b35 100644 --- a/www/py-django-jsonview/Makefile +++ b/www/py-django-jsonview/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-jsonview PORTVERSION= 2.0.0 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,10 +11,12 @@ WWW= https://github.com/jsocol/django-jsonview LICENSE= APACHE20 -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-markdownx/Makefile b/www/py-django-markdownx/Makefile index afb5bcaf361d..c9c317ed6189 100644 --- a/www/py-django-markdownx/Makefile +++ b/www/py-django-markdownx/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-markdownx PORTVERSION= 4.0.7 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,12 +12,14 @@ WWW= https://github.com/neutronX/django-markdownx LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}markdown>=0:textproc/py-markdown@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>=0:graphics/py-pillow@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-model-utils/Makefile b/www/py-django-model-utils/Makefile index 26bf7855b7bc..51c82b935843 100644 --- a/www/py-django-model-utils/Makefile +++ b/www/py-django-model-utils/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-model-utils PORTVERSION= 4.5.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-modelcluster/Makefile b/www/py-django-modelcluster/Makefile index 748ca582bde1..d483297efba9 100644 --- a/www/py-django-modelcluster/Makefile +++ b/www/py-django-modelcluster/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-modelcluster PORTVERSION= 6.2.1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/wagtail/django-modelcluster LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=2022.4,1:devel/py-pytz@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-mptt/Makefile b/www/py-django-mptt/Makefile index 625470fe6ac0..6268ea4b6b07 100644 --- a/www/py-django-mptt/Makefile +++ b/www/py-django-mptt/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-mptt PORTVERSION= 0.16.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR}\ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}django-js-asset>0:www/py-django-js-asset@${PY_FLAVOR} USES= python:3.9+ diff --git a/www/py-dj42-django-multiselectfield/Makefile b/www/py-django-multiselectfield/Makefile index 5af9f71000c5..aef2ee82bc24 100644 --- a/www/py-dj42-django-multiselectfield/Makefile +++ b/www/py-django-multiselectfield/Makefile @@ -2,7 +2,7 @@ PORTNAME= django-multiselectfield PORTVERSION= 0.1.12 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= grembo@FreeBSD.org COMMENT= Django multiple select field diff --git a/www/py-dj42-django-multiselectfield/distinfo b/www/py-django-multiselectfield/distinfo index 98738aa6c5bf..98738aa6c5bf 100644 --- a/www/py-dj42-django-multiselectfield/distinfo +++ b/www/py-django-multiselectfield/distinfo diff --git a/www/py-dj42-django-multiselectfield/pkg-descr b/www/py-django-multiselectfield/pkg-descr index 7a72b1755b70..7a72b1755b70 100644 --- a/www/py-dj42-django-multiselectfield/pkg-descr +++ b/www/py-django-multiselectfield/pkg-descr diff --git a/www/py-django-netfields/Makefile b/www/py-django-netfields/Makefile index 44fbbc080645..f230177a87f8 100644 --- a/www/py-django-netfields/Makefile +++ b/www/py-django-netfields/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-netfields DISTVERSION= 1.3.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/jimfunk/django-postgresql-netfields LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.8:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.8:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}psycopg2>0:databases/py-psycopg2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}netaddr>=0:net/py-netaddr@${PY_FLAVOR} diff --git a/www/py-django-otp-yubikey/Makefile b/www/py-django-otp-yubikey/Makefile index ff6cc2a9c7d9..df93c0f3b5f6 100644 --- a/www/py-django-otp-yubikey/Makefile +++ b/www/py-django-otp-yubikey/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-otp-yubikey PORTVERSION= 1.0.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/django-otp/django-otp-yubikey LICENSE= BSD2CLAUSE 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}django-otp>=1.0.0:www/py-django-otp@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}YubiOTP>=0.2.2:security/py-YubiOTP@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-otp/Makefile b/www/py-django-otp/Makefile index 20116894983d..96cdb1bc7a8f 100644 --- a/www/py-django-otp/Makefile +++ b/www/py-django-otp/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-otp PORTVERSION= 1.5.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI DISTNAME= django_otp-${PORTVERSION} @@ -13,7 +14,7 @@ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-permissionedforms/Makefile b/www/py-django-permissionedforms/Makefile index 572254dd6e15..4d64525ee658 100644 --- a/www/py-django-permissionedforms/Makefile +++ b/www/py-django-permissionedforms/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-permissionedforms PORTVERSION= 0.1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,10 +12,12 @@ WWW= https://github.com/wagtail/django-permissionedforms LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-photologue/Makefile b/www/py-django-photologue/Makefile index 6d0dfd822e58..47036e9230b2 100644 --- a/www/py-django-photologue/Makefile +++ b/www/py-django-photologue/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-photologue PORTVERSION= 3.17 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,7 +11,7 @@ WWW= https://github.com/jdriscoll/django-photologue LICENSE= BSD3CLAUSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-sortedm2m>=3.1.1:www/py-django-sortedm2m@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ExifRead>=3:graphics/py-exifread@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>=9:graphics/py-pillow@${PY_FLAVOR} diff --git a/www/py-django-picklefield/Makefile b/www/py-django-picklefield/Makefile index 80578a8e090e..d1ffde6665b1 100644 --- a/www/py-django-picklefield/Makefile +++ b/www/py-django-picklefield/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-picklefield PORTVERSION= 3.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +13,10 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE # Reminder: www/seahub depends on django, changing django version may break seahub -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-polymorphic/Makefile b/www/py-django-polymorphic/Makefile index 8c59007e6637..992091e9f6e5 100644 --- a/www/py-django-polymorphic/Makefile +++ b/www/py-django-polymorphic/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-polymorphic PORTVERSION= 3.1.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +12,7 @@ WWW= https://github.com/django-polymorphic/django-polymorphic LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.11:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.11:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-post_office/Makefile b/www/py-django-post_office/Makefile index 53e46b508d90..df7865a82494 100644 --- a/www/py-django-post_office/Makefile +++ b/www/py-django-post_office/Makefile @@ -1,6 +1,7 @@ PORTNAME= django-post_office DISTVERSIONPREFIX= v DISTVERSION= 3.7.1 +PORTREVISION= 1 CATEGORIES= www python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/ui/django-post_office LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}bleach>=0:www/py-bleach@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR} diff --git a/www/py-django-prometheus/Makefile b/www/py-django-prometheus/Makefile index 48561a84e348..364301836a51 100644 --- a/www/py-django-prometheus/Makefile +++ b/www/py-django-prometheus/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-prometheus PORTVERSION= 2.3.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/korfuri/django-prometheus LICENSE= APACHE20 BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-runner>0:devel/py-pytest-runner@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}prometheus-client>=0.7:net-mgmt/py-prometheus-client@${PY_FLAVOR} USES= python diff --git a/www/py-django-pyscss/Makefile b/www/py-django-pyscss/Makefile index d625c429c593..a86398b3337b 100644 --- a/www/py-django-pyscss/Makefile +++ b/www/py-django-pyscss/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-pyscss PORTVERSION= 2.0.3 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/fusionbox/django-pyscss LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.4:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=1.4:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyscss>=1.3.4:textproc/py-pyscss@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-ranged-response/Makefile b/www/py-django-ranged-response/Makefile index 7bdced2b831a..5081def96a15 100644 --- a/www/py-django-ranged-response/Makefile +++ b/www/py-django-ranged-response/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-ranged-response DISTVERSION= 0.2.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,7 @@ WWW= https://github.com/i3thuan5/django-ranged-response LICENSE= MIT -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-recaptcha/Makefile b/www/py-django-recaptcha/Makefile index 10916f613c85..6458db9e52cd 100644 --- a/www/py-django-recaptcha/Makefile +++ b/www/py-django-recaptcha/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-recaptcha PORTVERSION= 4.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI @@ -10,7 +11,7 @@ WWW= https://github.com/django-recaptcha/django-recaptcha LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=1.11<4.0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent distutils diff --git a/www/py-django-redis/Makefile b/www/py-django-redis/Makefile index 05aed1045518..2fe1242ae64e 100644 --- a/www/py-django-redis/Makefile +++ b/www/py-django-redis/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-redis PORTVERSION= 5.4.0 +PORTREVISION= 2 CATEGORIES= www databases python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,9 @@ WWW= https://github.com/jazzband/django-redis LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}redis>=3.0.0:databases/py-redis@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-django>=0:devel/py-pytest-django@${PY_FLAVOR} \ @@ -19,7 +22,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \ redis-server:databases/redis USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest # Required for Python 3.11+ as the cgi module is deprecated and slated for removal in Python 3.13 TEST_ARGS= -W ignore::DeprecationWarning diff --git a/www/py-django-registration-redux/Makefile b/www/py-django-registration-redux/Makefile index 1a8a55c764aa..98e2a6652be8 100644 --- a/www/py-django-registration-redux/Makefile +++ b/www/py-django-registration-redux/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-registration-redux PORTVERSION= 2.12 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/macropin/django-registration LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-registration/Makefile b/www/py-django-registration/Makefile index 31fbdf68234b..9853343e096e 100644 --- a/www/py-django-registration/Makefile +++ b/www/py-django-registration/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-registration PORTVERSION= 3.4 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}confusable_homoglyphs>=3.0<4.0:devel/py-confusable_homoglyphs@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-requests-debug-toolbar/Makefile b/www/py-django-requests-debug-toolbar/Makefile index 7254d170029f..8e00e21684eb 100644 --- a/www/py-django-requests-debug-toolbar/Makefile +++ b/www/py-django-requests-debug-toolbar/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-requests-debug-toolbar PORTVERSION= 0.0.7 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,10 +12,12 @@ WWW= https://github.com/marceltschoppch/django-requests-debug-toolbar LICENSE= MIT 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}django-debug-toolbar>=2.2:www/py-django-debug-toolbar@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-reversion/Makefile b/www/py-django-reversion/Makefile index 88927e5df203..8507937d2e29 100644 --- a/www/py-django-reversion/Makefile +++ b/www/py-django-reversion/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-reversion PORTVERSION= 5.0.10 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://pypi.org/project/django-reversion/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent distutils diff --git a/www/py-django-rich/Makefile b/www/py-django-rich/Makefile index 0bdaea7e05f1..fae657082e57 100644 --- a/www/py-django-rich/Makefile +++ b/www/py-django-rich/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-rich PORTVERSION= 1.8.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}rich>=10.0.0:textproc/py-rich@${PY_FLAVOR} USES= python diff --git a/www/py-django-sekizai/Makefile b/www/py-django-sekizai/Makefile index f60e22cdeeeb..37b9f6fb6f31 100644 --- a/www/py-django-sekizai/Makefile +++ b/www/py-django-sekizai/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-sekizai PORTVERSION= 4.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/ojii/django-sekizai LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-classy-tags>=3.0:www/py-django-classy-tags@${PY_FLAVOR} USES= python diff --git a/www/py-django-simple-captcha/Makefile b/www/py-django-simple-captcha/Makefile index 3adf786a9c4a..02a0f7c3dcb6 100644 --- a/www/py-django-simple-captcha/Makefile +++ b/www/py-django-simple-captcha/Makefile @@ -3,6 +3,7 @@ PORTNAME= django-simple-captcha # updating, it should be first checked whether its consumers, e.g. www/seahub, # have been switched to Django 4.2. PORTVERSION= 0.5.20 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +15,7 @@ WWW= https://pypi.org/project/django-simple-captcha/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-ranged-response>=0.2.0<0.2.0_99:www/py-django-ranged-response@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>=6.2.0:graphics/py-pillow@${PY_FLAVOR} diff --git a/www/py-django-simple-history/Makefile b/www/py-django-simple-history/Makefile index 12147e225148..8978fd32c6f6 100644 --- a/www/py-django-simple-history/Makefile +++ b/www/py-django-simple-history/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-simple-history PORTVERSION= 3.5.0 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,12 +12,14 @@ WWW= https://github.com/jazzband/django-simple-history LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6:www/py-asgiref@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-django-smart-selects/Makefile b/www/py-django-smart-selects/Makefile index 8532f565140e..52d21dde8920 100644 --- a/www/py-django-smart-selects/Makefile +++ b/www/py-django-smart-selects/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-smart-selects PORTVERSION= 1.6.0 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>0:devel/py-setuptools-scm@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-solo/Makefile b/www/py-django-solo/Makefile index f6bbeaa858ed..18b931f24da6 100644 --- a/www/py-django-solo/Makefile +++ b/www/py-django-solo/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-solo DISTVERSION= 2.2.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/lazybird/django-solo LICENSE= CC-BY-3.0 LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django-sortedm2m/Makefile b/www/py-django-sortedm2m/Makefile index 8fc11901c0c5..9716f05a7a4c 100644 --- a/www/py-django-sortedm2m/Makefile +++ b/www/py-django-sortedm2m/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-sortedm2m PORTVERSION= 3.1.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MASTER_SITES= PYPI @@ -12,7 +12,7 @@ WWW= https://github.com/gregmuellegger/django-sortedm2m LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-star-ratings/Makefile b/www/py-django-star-ratings/Makefile index 2d69b6bad98c..e8a4395bb6ba 100644 --- a/www/py-django-star-ratings/Makefile +++ b/www/py-django-star-ratings/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-star-ratings PORTVERSION= 0.9.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,7 @@ WWW= https://github.com/wildfish/django-star-ratings LICENSE= BSD3CLAUSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-braces>=0:www/py-django-braces@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-model-utils>=0:www/py-django-model-utils@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}swapper>=0:www/py-swapper@${PY_FLAVOR} diff --git a/www/py-django-statici18n/Makefile b/www/py-django-statici18n/Makefile index b080e5007602..7e7e0e814b24 100644 --- a/www/py-django-statici18n/Makefile +++ b/www/py-django-statici18n/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-statici18n PORTVERSION= 2.4.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/zyegfryed/django-statici18n LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-appconf>=1.0:www/py-django-appconf@${PY_FLAVOR} USES= python diff --git a/www/py-django-storages/Makefile b/www/py-django-storages/Makefile index 1d4cd54915cc..95e544f1d534 100644 --- a/www/py-django-storages/Makefile +++ b/www/py-django-storages/Makefile @@ -1,38 +1,46 @@ PORTNAME= django-storages -PORTVERSION= 1.14.2 +PORTVERSION= 1.14.3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= python@FreeBSD.org COMMENT= Generic storages for Django -WWW= https://github.com/jschneier/django-storages +WWW= https://django-storages.readthedocs.io/en/latest/ \ + https://github.com/jschneier/django-storages LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PY_SETUPTOOLS} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes -# There is also an Azure backend (via AZURE option), but this requires a newer -# version of py-azure-storage-blob. -OPTIONS_DEFINE= DROPBOX GOOGLE LIBCLOUD S3 SFTP - +# AZURE option requires newer devel/py-azure-storage-blob (not yet in the ports tree). +OPTIONS_DEFINE= DROPBOX GOOGLE LIBCLOUD S3 SFTP #AZURE +#AZURE_DESC= Azure backend DROPBOX_DESC= Dropbox backend GOOGLE_DESC= Google Cloud Storage backend LIBCLOUD_DESC= Apache Libcloud backend S3_DESC= Amazon S3 backend SFTP_DESC= SFTP backend -DROPBOX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dropbox>=7.2.1:www/py-dropbox@${PY_FLAVOR} +#AZURE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}azure-core>=1.13:devel/py-azure-core@${PY_FLAVOR} \ +# ${PYTHON_PKGNAMEPREFIX}azure-storage-blob>=12:devel/py-azure-storage-blob@${PY_FLAVOR} GOOGLE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}google-cloud-storage>=1.27:www/py-google-cloud-storage@${PY_FLAVOR} -LIBCLOUD_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}libcloud>0:net/py-libcloud@${PY_FLAVOR} +LIBCLOUD_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}libcloud>=0:net/py-libcloud@${PY_FLAVOR} S3_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>=1.4.4:www/py-boto3@${PY_FLAVOR} SFTP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}paramiko>=1.15:security/py-paramiko@${PY_FLAVOR} -.include <bsd.port.mk> +.include <bsd.port.pre.mk> + +.if ${PORT_OPTIONS:MDROPBOX} && ${PYTHON_REL} < 31200 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}dropbox>=7.2.1:www/py-dropbox@${PY_FLAVOR} +.endif + +.include <bsd.port.post.mk> diff --git a/www/py-django-storages/distinfo b/www/py-django-storages/distinfo index 31d6fcfadf8a..4d91ebfa6562 100644 --- a/www/py-django-storages/distinfo +++ b/www/py-django-storages/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1704627222 -SHA256 (django-storages-1.14.2.tar.gz) = 51b36af28cc5813b98d5f3dfe7459af638d84428c8df4a03990c7d74d1bea4e5 -SIZE (django-storages-1.14.2.tar.gz) = 111090 +TIMESTAMP = 1715843838 +SHA256 (django-storages-1.14.3.tar.gz) = 95a12836cd998d4c7a4512347322331c662d9114c4344f932f5e9c0fce000608 +SIZE (django-storages-1.14.3.tar.gz) = 115310 diff --git a/www/py-django-tables2/Makefile b/www/py-django-tables2/Makefile index 9ee97198a0a5..8ce7a92eae65 100644 --- a/www/py-django-tables2/Makefile +++ b/www/py-django-tables2/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-tables2 DISTVERSION= 2.7.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/jieter/django-tables2 LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-tagging/Makefile b/www/py-django-tagging/Makefile index 9aec9a845d90..ef31b0ee8bf4 100644 --- a/www/py-django-tagging/Makefile +++ b/www/py-django-tagging/Makefile @@ -1,6 +1,6 @@ PORTNAME= django-tagging PORTVERSION= 0.5.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE MIT LICENSE_COMB= multi LICENSE_FILE= ${WRKSRC}/LICENSE.txt -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-taggit/Makefile b/www/py-django-taggit/Makefile index 2acfef5a2e8a..23ceeb09d1c4 100644 --- a/www/py-django-taggit/Makefile +++ b/www/py-django-taggit/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-taggit PORTVERSION= 4.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/jazzband/django-taggit LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}djangorestframework>0:www/py-djangorestframework@${PY_FLAVOR} USES= python diff --git a/www/py-django-tastypie/Makefile b/www/py-django-tastypie/Makefile index 03b3947b7f00..52fe2f362bb3 100644 --- a/www/py-django-tastypie/Makefile +++ b/www/py-django-tastypie/Makefile @@ -1,6 +1,5 @@ PORTNAME= django-tastypie -PORTVERSION= 0.14.6 -PORTREVISION= 1 +PORTVERSION= 0.14.7 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +11,7 @@ WWW= https://github.com/django-tastypie/django-tastypie LICENSE= BSD3CLAUSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.1:devel/py-python-dateutil@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>0:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}python-mimeparse>=0.1.4:devel/py-python-mimeparse@${PY_FLAVOR} USES= python diff --git a/www/py-django-tastypie/distinfo b/www/py-django-tastypie/distinfo index 66784989b3ab..51cc5079f6bb 100644 --- a/www/py-django-tastypie/distinfo +++ b/www/py-django-tastypie/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1694353782 -SHA256 (django-tastypie-0.14.6.tar.gz) = 7f16928ffa5b1b390edd81fa0c15a239cca7fc1134d440ecaa2040b5edc549b8 -SIZE (django-tastypie-0.14.6.tar.gz) = 154751 +TIMESTAMP = 1713932035 +SHA256 (django-tastypie-0.14.7.tar.gz) = 5769e997d66726babb0cbb7643ff278b994b8ca775c5a4c510dfa0f386567d50 +SIZE (django-tastypie-0.14.7.tar.gz) = 155126 diff --git a/www/py-django-templatetag-sugar/Makefile b/www/py-django-templatetag-sugar/Makefile index 0e5fade1178f..dd6cd48f77e9 100644 --- a/www/py-django-templatetag-sugar/Makefile +++ b/www/py-django-templatetag-sugar/Makefile @@ -1,6 +1,6 @@ PORTNAME= templatetag-sugar PORTVERSION= 1.0 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}django- @@ -10,7 +10,7 @@ MAINTAINER= python@FreeBSD.org COMMENT= Library to make writing templatetags in Django sweet WWW= https://github.com/alex/django-templatetag-sugar -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-django-timezone-field/Makefile b/www/py-django-timezone-field/Makefile index f11f5fbfa939..fc2b6be3cdcc 100644 --- a/www/py-django-timezone-field/Makefile +++ b/www/py-django-timezone-field/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-timezone-field DISTVERSION= 6.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-django-tinymce/Makefile b/www/py-django-tinymce/Makefile index 2aee2af31756..a29b2ea425c0 100644 --- a/www/py-django-tinymce/Makefile +++ b/www/py-django-tinymce/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-tinymce PORTVERSION= 4.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-treebeard/Makefile b/www/py-django-treebeard/Makefile index f9dbc044783e..7e968013e54e 100644 --- a/www/py-django-treebeard/Makefile +++ b/www/py-django-treebeard/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-treebeard DISTVERSION= 4.7.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/django-treebeard/django-treebeard LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-django>=4.0:devel/py-pytest-django@${PY_FLAVOR} USES= python @@ -23,7 +24,7 @@ NO_ARCH= yes PORTDOCS= * OPTIONS_DEFINE= DOCS -DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} \ +DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}graphviz>0:graphics/py-graphviz@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} DOCS_VARS= PYDISTUTILS_BUILD_TARGET+="build_sphinx -a -E" diff --git a/www/py-django-unfold/Makefile b/www/py-django-unfold/Makefile index ecc56f245c41..b576a596ba62 100644 --- a/www/py-django-unfold/Makefile +++ b/www/py-django-unfold/Makefile @@ -1,5 +1,5 @@ PORTNAME= django-unfold -PORTVERSION= 0.22.0 +PORTVERSION= 0.23.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,7 +14,7 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.md BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-django-unfold/distinfo b/www/py-django-unfold/distinfo index 9996610e6546..8fae514522e1 100644 --- a/www/py-django-unfold/distinfo +++ b/www/py-django-unfold/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713528558 -SHA256 (django_unfold-0.22.0.tar.gz) = 622995f6ec222d7e16c4ea5bde1f87508d25942e6bcf925ae7ead9f70b77405b -SIZE (django_unfold-0.22.0.tar.gz) = 802861 +TIMESTAMP = 1716142148 +SHA256 (django_unfold-0.23.0.tar.gz) = d757470c35be8b3ab717459ef7b287a2382c9f8bc4b4e4fdb39b400530cf2991 +SIZE (django_unfold-0.23.0.tar.gz) = 802916 diff --git a/www/py-django-webpack-loader/Makefile b/www/py-django-webpack-loader/Makefile index 3a7fecca860b..eb9e3df3f8e0 100644 --- a/www/py-django-webpack-loader/Makefile +++ b/www/py-django-webpack-loader/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-webpack-loader PORTVERSION= 3.0.1 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www python MASTER_SITES= PYPI @@ -12,7 +13,7 @@ WWW= https://pypi.org/project/django-webpack-loader LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.0:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.0:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist concurrent diff --git a/www/py-django-widget-tweaks/Makefile b/www/py-django-widget-tweaks/Makefile index 777f89f4cf01..b9bb3b805c0b 100644 --- a/www/py-django-widget-tweaks/Makefile +++ b/www/py-django-widget-tweaks/Makefile @@ -1,5 +1,6 @@ PORTNAME= django-widget-tweaks PORTVERSION= 1.5.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +13,7 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>0:devel/py-setuptools-scm@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-django32/Makefile b/www/py-django32/Makefile index d09c5c5f6f32..e017a5d022f1 100644 --- a/www/py-django32/Makefile +++ b/www/py-django32/Makefile @@ -59,7 +59,7 @@ MYSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.3.13:databases/py-mysql SQLITE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} post-build-HTMLDOCS-on: - cd ${WRKSRC}/docs && ${GMAKE} html SPHINXBUILD=sphinx-build-${PYTHON_VER} + cd ${WRKSRC}/docs && ${MAKE_CMD} html SPHINXBUILD=sphinx-build-${PYTHON_VER} post-install: ${INSTALL_MAN} ${WRKSRC}/docs/man/* ${STAGEDIR}/${PREFIX}/share/man/man1 diff --git a/www/py-django42/Makefile b/www/py-django42/Makefile index ac2b11be1d3b..63d5ec51b8b4 100644 --- a/www/py-django42/Makefile +++ b/www/py-django42/Makefile @@ -1,6 +1,5 @@ PORTNAME= django -PORTVERSION= 4.2.11 -PORTREVISION= 1 +PORTVERSION= 4.2.13 CATEGORIES= www python MASTER_SITES= PYPI \ https://media.djangoproject.com/releases/${PORTVERSION:R}/ @@ -54,7 +53,7 @@ MYSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.3.13:databases/py-mysql SQLITE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} post-build-HTMLDOCS-on: - cd ${WRKSRC}/docs && ${GMAKE} html SPHINXBUILD=sphinx-build-${PYTHON_VER} + cd ${WRKSRC}/docs && ${MAKE_CMD} html SPHINXBUILD=sphinx-build-${PYTHON_VER} post-install: ${INSTALL_MAN} ${WRKSRC}/docs/man/* ${STAGEDIR}/${PREFIX}/share/man/man1 diff --git a/www/py-django42/distinfo b/www/py-django42/distinfo index 623775d8e046..e407f37d4317 100644 --- a/www/py-django42/distinfo +++ b/www/py-django42/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709552698 -SHA256 (python/Django-4.2.11.tar.gz) = 6e6ff3db2d8dd0c986b4eec8554c8e4f919b5c1ff62a5b4390c17aff2ed6e5c4 -SIZE (python/Django-4.2.11.tar.gz) = 10426858 +TIMESTAMP = 1715127463 +SHA256 (python/Django-4.2.13.tar.gz) = 837e3cf1f6c31347a1396a3f6b65688f2b4bb4a11c580dcb628b5afe527b68a5 +SIZE (python/Django-4.2.13.tar.gz) = 10430886 diff --git a/www/py-django42/files/patch-setup.cfg b/www/py-django42/files/patch-setup.cfg index c57e4e938370..d014f0b13d57 100644 --- a/www/py-django42/files/patch-setup.cfg +++ b/www/py-django42/files/patch-setup.cfg @@ -1,4 +1,4 @@ ---- setup.cfg.orig 2024-03-04 07:44:07 UTC +--- setup.cfg.orig 2024-05-08 00:21:05 UTC +++ setup.cfg @@ -1,5 +1,5 @@ [metadata] diff --git a/www/py-django50/Makefile b/www/py-django50/Makefile index cdcd578a7a46..352410c8aa81 100644 --- a/www/py-django50/Makefile +++ b/www/py-django50/Makefile @@ -1,6 +1,5 @@ PORTNAME= django -PORTVERSION= 5.0.4 -PORTREVISION= 1 +PORTVERSION= 5.0.6 CATEGORIES= www python MASTER_SITES= PYPI \ https://media.djangoproject.com/releases/${PORTVERSION:R}/ @@ -60,7 +59,7 @@ IGNORE= requires Python 3.10 or later .endif post-build-HTMLDOCS-on: - cd ${WRKSRC}/docs && ${GMAKE} html SPHINXBUILD=sphinx-build-${PYTHON_VER} + cd ${WRKSRC}/docs && ${MAKE_CMD} html SPHINXBUILD=sphinx-build-${PYTHON_VER} post-install: ${INSTALL_MAN} ${WRKSRC}/docs/man/* ${STAGEDIR}/${PREFIX}/share/man/man1 diff --git a/www/py-django50/distinfo b/www/py-django50/distinfo index d89531d9b9e4..bcf169e9036e 100644 --- a/www/py-django50/distinfo +++ b/www/py-django50/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712325319 -SHA256 (python/Django-5.0.4.tar.gz) = 4bd01a8c830bb77a8a3b0e7d8b25b887e536ad17a81ba2dce5476135c73312bd -SIZE (python/Django-5.0.4.tar.gz) = 10638006 +TIMESTAMP = 1715126852 +SHA256 (python/Django-5.0.6.tar.gz) = ff1b61005004e476e0aeea47c7f79b85864c70124030e95146315396f1e7951f +SIZE (python/Django-5.0.6.tar.gz) = 10639679 diff --git a/www/py-django50/files/patch-setup.cfg b/www/py-django50/files/patch-setup.cfg index b03c25e3e38d..a9b24986aaf2 100644 --- a/www/py-django50/files/patch-setup.cfg +++ b/www/py-django50/files/patch-setup.cfg @@ -1,4 +1,4 @@ ---- setup.cfg.orig 2024-04-03 14:34:02 UTC +--- setup.cfg.orig 2024-05-08 00:14:53 UTC +++ setup.cfg @@ -1,5 +1,5 @@ [metadata] diff --git a/www/py-djangocms-admin-style/Makefile b/www/py-djangocms-admin-style/Makefile index d5c8db278f8e..5127cd3b4e5d 100644 --- a/www/py-djangocms-admin-style/Makefile +++ b/www/py-djangocms-admin-style/Makefile @@ -1,5 +1,6 @@ PORTNAME= djangocms-admin-style DISTVERSION= 3.3.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,7 +11,7 @@ WWW= https://www.django-cms.org/ LICENSE= BSD3CLAUSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-djangoql/Makefile b/www/py-djangoql/Makefile index 2a34ac04bdc7..263129f10b92 100644 --- a/www/py-djangoql/Makefile +++ b/www/py-djangoql/Makefile @@ -1,5 +1,6 @@ PORTNAME= djangoql PORTVERSION= 0.17.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/ivelum/djangoql LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>0:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>=3.8:devel/py-ply@${PY_FLAVOR} USES= python diff --git a/www/py-dj42-djangorestframework-guardian/Makefile b/www/py-djangorestframework-guardian/Makefile index 9c4dcbc0b8d3..d09409d5958d 100644 --- a/www/py-dj42-djangorestframework-guardian/Makefile +++ b/www/py-djangorestframework-guardian/Makefile @@ -2,7 +2,7 @@ PORTNAME= djangorestframework-guardian PORTVERSION= 0.3.0 CATEGORIES= www python MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= grembo@FreeBSD.org COMMENT= Django Guardian support for Django REST Framework @@ -12,8 +12,8 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-djangorestframework>=3.10.3:www/py-dj42-djangorestframework@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-guardian>=2.4.0:www/py-dj42-django-guardian@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}djangorestframework>=3.10.3:www/py-djangorestframework@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-guardian>=2.4.0:www/py-django-guardian@${PY_FLAVOR} USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-dj42-djangorestframework-guardian/distinfo b/www/py-djangorestframework-guardian/distinfo index eb5b72f6c861..eb5b72f6c861 100644 --- a/www/py-dj42-djangorestframework-guardian/distinfo +++ b/www/py-djangorestframework-guardian/distinfo diff --git a/www/py-dj42-djangorestframework-guardian/pkg-descr b/www/py-djangorestframework-guardian/pkg-descr index 4fd5ed7e7602..4fd5ed7e7602 100644 --- a/www/py-dj42-djangorestframework-guardian/pkg-descr +++ b/www/py-djangorestframework-guardian/pkg-descr diff --git a/www/py-djangorestframework/Makefile b/www/py-djangorestframework/Makefile index 1d365e391fa0..45a03937e72a 100644 --- a/www/py-djangorestframework/Makefile +++ b/www/py-djangorestframework/Makefile @@ -1,5 +1,6 @@ PORTNAME= djangorestframework PORTVERSION= 3.14.0 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www python MASTER_SITES= PYPI @@ -12,7 +13,7 @@ WWW= https://www.django-rest-framework.org/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.md -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.0:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR} USES= python diff --git a/www/py-djangosaml2/Makefile b/www/py-djangosaml2/Makefile index 8f6ad202b0d3..68d3c3342fb2 100644 --- a/www/py-djangosaml2/Makefile +++ b/www/py-djangosaml2/Makefile @@ -1,5 +1,6 @@ PORTNAME= djangosaml2 PORTVERSION= 1.9.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,7 +11,7 @@ WWW= https://github.com/IdentityPython/djangosaml2 LICENSE= APACHE20 -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pysaml2>=6.5.1:security/py-pysaml2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}defusedxml>=0.4.1:devel/py-defusedxml@${PY_FLAVOR} diff --git a/www/py-draftjs-exporter/Makefile b/www/py-draftjs-exporter/Makefile index 106018f56518..50806a8e71a8 100644 --- a/www/py-draftjs-exporter/Makefile +++ b/www/py-draftjs-exporter/Makefile @@ -1,5 +1,6 @@ PORTNAME= draftjs-exporter PORTVERSION= 5.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,8 +13,11 @@ WWW= https://github.com/springload/draftjs_exporter LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-drf-spectacular-sidecar/Makefile b/www/py-drf-spectacular-sidecar/Makefile index 795f93c3cd1c..661434a09e20 100644 --- a/www/py-drf-spectacular-sidecar/Makefile +++ b/www/py-drf-spectacular-sidecar/Makefile @@ -1,8 +1,9 @@ PORTNAME= drf-spectacular-sidecar -DISTVERSION= 2024.4.1 +DISTVERSION= 2024.5.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= drf_spectacular_sidecar-${DISTVERSION} MAINTAINER= kai@FreeBSD.org COMMENT= Serve self-contained Swagger UI/Redoc distribution builds with Django @@ -11,7 +12,7 @@ WWW= https://github.com/tfranzel/drf-spectacular LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist distutils diff --git a/www/py-drf-spectacular-sidecar/distinfo b/www/py-drf-spectacular-sidecar/distinfo index 8837bfa258b6..473947a24813 100644 --- a/www/py-drf-spectacular-sidecar/distinfo +++ b/www/py-drf-spectacular-sidecar/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712292833 -SHA256 (drf-spectacular-sidecar-2024.4.1.tar.gz) = 68532dd094714f79c1775c00848f22c10f004826abc856442ff30c3bc9c40bb4 -SIZE (drf-spectacular-sidecar-2024.4.1.tar.gz) = 2345981 +TIMESTAMP = 1714600240 +SHA256 (drf_spectacular_sidecar-2024.5.1.tar.gz) = 1ecfbe86174461e3cf78a9cd49f69aa8d9e0710cb5e8b35107d3f8cc0f380c21 +SIZE (drf_spectacular_sidecar-2024.5.1.tar.gz) = 2380912 diff --git a/www/py-drf-spectacular/Makefile b/www/py-drf-spectacular/Makefile index 45d126fa9d41..ec1fe26820f0 100644 --- a/www/py-drf-spectacular/Makefile +++ b/www/py-drf-spectacular/Makefile @@ -1,5 +1,6 @@ PORTNAME= drf-spectacular DISTVERSION= 0.27.2 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +12,7 @@ WWW= https://github.com/tfranzel/drf-spectacular LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}djangorestframework>=3.10.3:www/py-djangorestframework@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}inflection>=0.3.1:devel/py-inflection@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}jsonschema>=2.6.0:devel/py-jsonschema@${PY_FLAVOR} \ diff --git a/www/py-dj42-drf-writable-nested/Makefile b/www/py-drf-writable-nested/Makefile index 0c57cfbeb42f..79986ad64489 100644 --- a/www/py-dj42-drf-writable-nested/Makefile +++ b/www/py-drf-writable-nested/Makefile @@ -2,7 +2,7 @@ PORTNAME= drf-writable-nested PORTVERSION= 0.7.0 DISTVERSIONPREFIX= v CATEGORIES= www python -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj42- +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= grembo@FreeBSD.org COMMENT= Writable nested model serializer for Django REST framework @@ -11,7 +11,7 @@ WWW= https://github.com/beda-software/drf-writable-nested LICENSE= BSD2CLAUSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-djangorestframework>0:www/py-dj42-djangorestframework@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}djangorestframework>0:www/py-djangorestframework@${PY_FLAVOR} USES= python USE_GITHUB= yes diff --git a/www/py-dj42-drf-writable-nested/distinfo b/www/py-drf-writable-nested/distinfo index a7fdff392381..a7fdff392381 100644 --- a/www/py-dj42-drf-writable-nested/distinfo +++ b/www/py-drf-writable-nested/distinfo diff --git a/www/py-dj42-drf-writable-nested/pkg-descr b/www/py-drf-writable-nested/pkg-descr index 36f9ed56df82..36f9ed56df82 100644 --- a/www/py-dj42-drf-writable-nested/pkg-descr +++ b/www/py-drf-writable-nested/pkg-descr diff --git a/www/py-drf-yasg/Makefile b/www/py-drf-yasg/Makefile index b1aef32505ef..921e1149f5e9 100644 --- a/www/py-drf-yasg/Makefile +++ b/www/py-drf-yasg/Makefile @@ -1,5 +1,6 @@ PORTNAME= drf-yasg DISTVERSION= 1.21.7 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +13,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.rst BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.0.6:devel/py-setuptools-scm@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2.16:www/py-django32@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2.16:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}djangorestframework>=3.10.3:www/py-djangorestframework@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}inflection>=0.3.1:devel/py-inflection@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=2021.1:devel/py-pytz@${PY_FLAVOR} \ diff --git a/www/py-dropbox/Makefile b/www/py-dropbox/Makefile index 3e8b4a2a870a..900bd80aecb2 100644 --- a/www/py-dropbox/Makefile +++ b/www/py-dropbox/Makefile @@ -1,5 +1,6 @@ PORTNAME= dropbox PORTVERSION= 11.36.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,12 +13,14 @@ WWW= https://dropbox-sdk-python.readthedocs.io/en/latest/ \ LICENSE= MIT 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}requests>=0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}stone>=2.0:devel/py-stone@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-dropbox/files/patch-setup.py b/www/py-dropbox/files/patch-setup.py index f7d8d3b578a1..1a9de4bdd722 100644 --- a/www/py-dropbox/files/patch-setup.py +++ b/www/py-dropbox/files/patch-setup.py @@ -1,6 +1,11 @@ ---- setup.py.orig 2022-07-13 18:09:08 UTC +--- setup.py.orig 2022-11-09 23:21:58 UTC +++ setup.py -@@ -31,9 +31,6 @@ install_reqs = [ +@@ -27,13 +27,10 @@ install_reqs = [ + install_reqs = [ + 'requests >= 2.16.2', + 'six >= 1.12.0', +- 'stone >= 2.*', ++ 'stone >= 2.0', ] setup_requires = [ diff --git a/www/py-enmerkar/Makefile b/www/py-enmerkar/Makefile index c8864c7a4ee9..11652b2176bd 100644 --- a/www/py-enmerkar/Makefile +++ b/www/py-enmerkar/Makefile @@ -1,6 +1,6 @@ PORTNAME= enmerkar PORTVERSION= 0.7.1 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,11 +12,13 @@ WWW= https://github.com/Zegocover/enmerkar LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=1.3:devel/py-babel@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-fastapi/Makefile b/www/py-fastapi/Makefile index f9e49cfd46d7..ff40062566a9 100644 --- a/www/py-fastapi/Makefile +++ b/www/py-fastapi/Makefile @@ -1,5 +1,5 @@ PORTNAME= fastapi -PORTVERSION= 0.110.1 +PORTVERSION= 0.111.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,8 @@ WWW= https://github.com/tiangolo/fastapi LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pdm-backend>=0:devel/py-pdm-backend@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pydantic2>=1.7.4:devel/py-pydantic2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}starlette>=0.26.1:www/py-starlette@${PY_FLAVOR} diff --git a/www/py-fastapi/distinfo b/www/py-fastapi/distinfo index 2fc62136d2f4..80049c9bf0bf 100644 --- a/www/py-fastapi/distinfo +++ b/www/py-fastapi/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712628689 -SHA256 (fastapi-0.110.1.tar.gz) = 6feac43ec359dfe4f45b2c18ec8c94edb8dc2dfc461d417d9e626590c071baad -SIZE (fastapi-0.110.1.tar.gz) = 11977267 +TIMESTAMP = 1714736297 +SHA256 (fastapi-0.111.0.tar.gz) = b9db9dd147c91cb8b769f7183535773d8741dd46f9dc6676cd82eab510228cd7 +SIZE (fastapi-0.111.0.tar.gz) = 288414 diff --git a/www/py-flask-apscheduler/Makefile b/www/py-flask-apscheduler/Makefile index 7ff73acafd01..f8ae7e8fae6f 100644 --- a/www/py-flask-apscheduler/Makefile +++ b/www/py-flask-apscheduler/Makefile @@ -1,6 +1,6 @@ PORTNAME= flask-apscheduler PORTVERSION= 1.13.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI \ https://github.com/viniciuschiele/flask-apscheduler/releases/download/${PORTVERSION}/ @@ -14,12 +14,14 @@ WWW= https://github.com/viniciuschiele/flask-apscheduler LICENSE= APACHE20 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}apscheduler>=3.2.0<4.0.0:devel/py-apscheduler@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}flask>=2.2.5<4.0.0:www/py-flask@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.4.2:devel/py-python-dateutil@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-flask-apscheduler/files/patch-setup.py b/www/py-flask-apscheduler/files/patch-setup.py index 98badf70bdec..70d0779a80a2 100644 --- a/www/py-flask-apscheduler/files/patch-setup.py +++ b/www/py-flask-apscheduler/files/patch-setup.py @@ -1,5 +1,14 @@ --- setup.py.orig 2023-11-07 12:41:21 UTC +++ setup.py +@@ -4,7 +4,7 @@ setup( + long_description = fh.read() + + setup( +- name="Flask-APScheduler", ++ name="flask-apscheduler", + version="1.13.1", + packages=["flask_apscheduler"], + url="https://github.com/viniciuschiele/flask-apscheduler", @@ -17,7 +17,6 @@ setup( keywords=["apscheduler", "scheduler", "scheduling", "cron"], python_requires=">=3.8", diff --git a/www/py-flask-caching/Makefile b/www/py-flask-caching/Makefile index 09ddf4bcb08a..0c090aa8e75f 100644 --- a/www/py-flask-caching/Makefile +++ b/www/py-flask-caching/Makefile @@ -1,9 +1,9 @@ PORTNAME= flask-caching -PORTVERSION= 2.0.2 +PORTVERSION= 2.2.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DISTNAME= Flask-Caching-${PORTVERSION} +DISTNAME= flask_caching-${PORTVERSION} MAINTAINER= acm@FreeBSD.org COMMENT= Flask-Caching is an extension to Flask diff --git a/www/py-flask-caching/distinfo b/www/py-flask-caching/distinfo index 38773bd1abd4..54e21446f3bb 100644 --- a/www/py-flask-caching/distinfo +++ b/www/py-flask-caching/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1682910911 -SHA256 (Flask-Caching-2.0.2.tar.gz) = 24b60c552d59a9605cc1b6a42c56cdb39a82a28dab4532bbedb9222ae54ecb4e -SIZE (Flask-Caching-2.0.2.tar.gz) = 66617 +TIMESTAMP = 1714242424 +SHA256 (flask_caching-2.2.0.tar.gz) = 9d2d30ee02250c47c3650fd6781b79e92d5964d91382a3697e5ebaf77ca0ea4f +SIZE (flask_caching-2.2.0.tar.gz) = 67478 diff --git a/www/py-flask-json/Makefile b/www/py-flask-json/Makefile index 917dfa7a7249..2436f1edf26d 100644 --- a/www/py-flask-json/Makefile +++ b/www/py-flask-json/Makefile @@ -1,5 +1,6 @@ PORTNAME= flask-json PORTVERSION= 0.4.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,12 +13,14 @@ WWW= https://github.com/skozlovf/flask-json LICENSE= BSD3CLAUSE 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}flask>=2.2.0:www/py-flask@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-flask-json/files/patch-setup.py b/www/py-flask-json/files/patch-setup.py new file mode 100644 index 000000000000..531fc63ce7bd --- /dev/null +++ b/www/py-flask-json/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2023-05-03 06:19:42 UTC ++++ setup.py +@@ -17,7 +17,7 @@ setup( + + + setup( +- name='Flask-JSON', ++ name='flask-json', + version=ext_version, + url='https://github.com/skozlovf/flask-json', + license='BSD', diff --git a/www/py-flask-marshmallow/Makefile b/www/py-flask-marshmallow/Makefile index b7bb3b23d201..6fec7382737b 100644 --- a/www/py-flask-marshmallow/Makefile +++ b/www/py-flask-marshmallow/Makefile @@ -1,5 +1,6 @@ PORTNAME= flask-marshmallow PORTVERSION= 0.15.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,12 +12,14 @@ WWW= https://github.com/marshmallow-code/flask-marshmallow LICENSE= MIT 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}flask>=0:www/py-flask@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}marshmallow>=2.0.0:devel/py-marshmallow@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=1.9.0:devel/py-six@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-flask-script/Makefile b/www/py-flask-script/Makefile index f9bff93ebb46..f214866c886a 100644 --- a/www/py-flask-script/Makefile +++ b/www/py-flask-script/Makefile @@ -1,5 +1,6 @@ PORTNAME= flask-script PORTVERSION= 2.0.6 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,10 +14,12 @@ WWW= https://flask-script.readthedocs.io/en/latest/ \ LICENSE= BSD3CLAUSE 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}flask>=0:www/py-flask@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-flask-script/files/patch-setup.py b/www/py-flask-script/files/patch-setup.py new file mode 100644 index 000000000000..a45e7ac395fc --- /dev/null +++ b/www/py-flask-script/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2017-09-06 11:10:04 UTC ++++ setup.py +@@ -28,7 +28,7 @@ setup( + install_requires = ['Flask'] + + setup( +- name='Flask-Script', ++ name='flask-script', + version=version, + url='http://github.com/smurfix/flask-script', + download_url = 'https://github.com/smurfix/flask-script/tarball/v'+version, diff --git a/www/py-flask-smorest/Makefile b/www/py-flask-smorest/Makefile index 6e731f415325..5bae1a849069 100644 --- a/www/py-flask-smorest/Makefile +++ b/www/py-flask-smorest/Makefile @@ -1,5 +1,5 @@ PORTNAME= flask-smorest -DISTVERSION= 0.42.2 +DISTVERSION= 0.44.0 CATEGORIES= www devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-flask-smorest/distinfo b/www/py-flask-smorest/distinfo index e61877ed5746..5e47b7421f7f 100644 --- a/www/py-flask-smorest/distinfo +++ b/www/py-flask-smorest/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1700047928 -SHA256 (flask-smorest-0.42.2.tar.gz) = 85a6c71d3e83ea7b57a3b879f2a2efa1b0bbe3633a0374bf1527997fa950a59d -SIZE (flask-smorest-0.42.2.tar.gz) = 77915 +TIMESTAMP = 1712582631 +SHA256 (flask-smorest-0.44.0.tar.gz) = 13f6e39d807c8847a56dc40656c2bbc0a2b2a430d8a4bb4a21836046757f7cef +SIZE (flask-smorest-0.44.0.tar.gz) = 78610 diff --git a/www/py-forcediphttpsadapter/Makefile b/www/py-forcediphttpsadapter/Makefile index c2839276b5f4..b57b814be355 100644 --- a/www/py-forcediphttpsadapter/Makefile +++ b/www/py-forcediphttpsadapter/Makefile @@ -1,5 +1,6 @@ PORTNAME= forcediphttpsadapter PORTVERSION= 1.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/Roadmaster/forcediphttpsadapter LICENSE= MIT 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}packaging>=0:devel/py-packaging@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-freenit/Makefile b/www/py-freenit/Makefile index 481c8c71072d..0e9ac86de410 100644 --- a/www/py-freenit/Makefile +++ b/www/py-freenit/Makefile @@ -1,11 +1,11 @@ PORTNAME= freenit -DISTVERSION= 0.3.2 +DISTVERSION= 0.3.3 CATEGORIES= www devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= meka@tilda.center -COMMENT= REST API framework based on Flask-Smorest +COMMENT= REST API framework based on FastAPI WWW= https://github.com/freenit-framework/backend LICENSE= BSD2CLAUSE diff --git a/www/py-freenit/distinfo b/www/py-freenit/distinfo index 32254d4dc8de..a4485617285b 100644 --- a/www/py-freenit/distinfo +++ b/www/py-freenit/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713364639 -SHA256 (freenit-0.3.2.tar.gz) = a3fc8b0bf378ca19efb9096e1c698a0651ce4d077c790777fbeaa42f4d67d0ce -SIZE (freenit-0.3.2.tar.gz) = 25470 +TIMESTAMP = 1715669629 +SHA256 (freenit-0.3.3.tar.gz) = bbcadbaa97a8d1bce65ecce062f17acbf6b37eb1bdbd70b32f1c8e87af6f983b +SIZE (freenit-0.3.3.tar.gz) = 25508 diff --git a/www/py-ghp-import/Makefile b/www/py-ghp-import/Makefile index 88c9349a4c81..b423735b82bb 100644 --- a/www/py-ghp-import/Makefile +++ b/www/py-ghp-import/Makefile @@ -1,6 +1,6 @@ PORTNAME= ghp-import PORTVERSION= 2.1.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +12,12 @@ WWW= https://github.com/c-w/ghp-import LICENSE= APACHE20 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}python-dateutil>=2.8.1:devel/py-python-dateutil@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-google-api-core/Makefile b/www/py-google-api-core/Makefile index 6d017cf948e6..780a0615b2bb 100644 --- a/www/py-google-api-core/Makefile +++ b/www/py-google-api-core/Makefile @@ -1,5 +1,5 @@ PORTNAME= google-api-core -PORTVERSION= 2.18.0 +PORTVERSION= 2.19.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-google-api-core/distinfo b/www/py-google-api-core/distinfo index 3f7eabe2df74..dee717a99a8a 100644 --- a/www/py-google-api-core/distinfo +++ b/www/py-google-api-core/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711466230 -SHA256 (google-api-core-2.18.0.tar.gz) = 62d97417bfc674d6cef251e5c4d639a9655e00c45528c4364fbfebb478ce72a9 -SIZE (google-api-core-2.18.0.tar.gz) = 148047 +TIMESTAMP = 1715842864 +SHA256 (google-api-core-2.19.0.tar.gz) = cf1b7c2694047886d2af1128a03ae99e391108a08804f87cfd35970e49c9cd10 +SIZE (google-api-core-2.19.0.tar.gz) = 148403 diff --git a/www/py-google-api-python-client/Makefile b/www/py-google-api-python-client/Makefile index 2233f28820e1..ae5ee3efab49 100644 --- a/www/py-google-api-python-client/Makefile +++ b/www/py-google-api-python-client/Makefile @@ -1,5 +1,5 @@ PORTNAME= google-api-python-client -DISTVERSION= 2.126.0 +DISTVERSION= 2.127.0 PORTREVISION= 0 CATEGORIES= www python MASTER_SITES= PYPI diff --git a/www/py-google-api-python-client/distinfo b/www/py-google-api-python-client/distinfo index db5334930098..71f9d4d48068 100644 --- a/www/py-google-api-python-client/distinfo +++ b/www/py-google-api-python-client/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713358214 -SHA256 (google-api-python-client-2.126.0.tar.gz) = 97c0410630e2bebd194d99e91bd620dab5bc6b6ec0bf033f9a9109b700b83acb -SIZE (google-api-python-client-2.126.0.tar.gz) = 12163106 +TIMESTAMP = 1713964173 +SHA256 (google-api-python-client-2.127.0.tar.gz) = bbb51b0fbccdf40e536c26341e372d7800f09afebb53103bbcc94e08f14b523b +SIZE (google-api-python-client-2.127.0.tar.gz) = 12203690 diff --git a/www/py-google-cloud-aiplatform/Makefile b/www/py-google-cloud-aiplatform/Makefile index 6331b2659577..e0f9306d3e24 100644 --- a/www/py-google-cloud-aiplatform/Makefile +++ b/www/py-google-cloud-aiplatform/Makefile @@ -1,5 +1,5 @@ PORTNAME= google-cloud-aiplatform -DISTVERSION= 1.48.0 +DISTVERSION= 1.49.0 CATEGORIES= www # machine-learning MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-google-cloud-aiplatform/distinfo b/www/py-google-cloud-aiplatform/distinfo index 63b0658b5d53..39c0f04b4efc 100644 --- a/www/py-google-cloud-aiplatform/distinfo +++ b/www/py-google-cloud-aiplatform/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713599669 -SHA256 (google-cloud-aiplatform-1.48.0.tar.gz) = 70fa242247693092412270e26109729e0d2ef3f3fe8caf0ce823208f8dc156c7 -SIZE (google-cloud-aiplatform-1.48.0.tar.gz) = 5658214 +TIMESTAMP = 1714451027 +SHA256 (google-cloud-aiplatform-1.49.0.tar.gz) = e6e6d01079bb5def49e4be4db4d12b13c624b5c661079c869c13c855e5807429 +SIZE (google-cloud-aiplatform-1.49.0.tar.gz) = 5766450 diff --git a/www/py-google-cloud-bigquery/Makefile b/www/py-google-cloud-bigquery/Makefile index d52e2b28e9e7..e3fa6fb7310a 100644 --- a/www/py-google-cloud-bigquery/Makefile +++ b/www/py-google-cloud-bigquery/Makefile @@ -1,5 +1,5 @@ PORTNAME= google-cloud-bigquery -DISTVERSION= 3.21.0 +DISTVERSION= 3.22.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -24,7 +24,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}google-api-core>=1.34.1:www/py-google-api-co TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}google-cloud-testutils>0:www/py-google-cloud-testutils@${PY_FLAVOR} USES= python -USE_PYTHON= distutils autoplist pytest # tests fail to run, see https://github.com/googleapis/python-bigquery/issues/1758 +USE_PYTHON= distutils autoplist pytest # 31 tests fail, tests require missing dependencies like db-tests, etc NO_ARCH= yes diff --git a/www/py-google-cloud-bigquery/distinfo b/www/py-google-cloud-bigquery/distinfo index a4b3f295c5f3..c0882239142d 100644 --- a/www/py-google-cloud-bigquery/distinfo +++ b/www/py-google-cloud-bigquery/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713599501 -SHA256 (google-cloud-bigquery-3.21.0.tar.gz) = 6265c39f9d5bdf50f11cb81a9c2a0605d285df34ac139de0d2333b1250add0ff -SIZE (google-cloud-bigquery-3.21.0.tar.gz) = 447294 +TIMESTAMP = 1715056213 +SHA256 (google-cloud-bigquery-3.22.0.tar.gz) = 957591e6f948d7cb4aa0f7a8e4e47b4617cd7f0269e28a71c37953c39b6e8a4c +SIZE (google-cloud-bigquery-3.22.0.tar.gz) = 449747 diff --git a/www/py-google-cloud-dlp/Makefile b/www/py-google-cloud-dlp/Makefile index 0f2a3cffd658..fba2064361f2 100644 --- a/www/py-google-cloud-dlp/Makefile +++ b/www/py-google-cloud-dlp/Makefile @@ -1,5 +1,5 @@ PORTNAME= google-cloud-dlp -PORTVERSION= 3.16.0 +PORTVERSION= 3.17.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-google-cloud-dlp/distinfo b/www/py-google-cloud-dlp/distinfo index 85e0c72a4eb2..68985ba0e819 100644 --- a/www/py-google-cloud-dlp/distinfo +++ b/www/py-google-cloud-dlp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1710712552 -SHA256 (google-cloud-dlp-3.16.0.tar.gz) = 0d69a1f7a5ef88756c99e56b8af4c39eae40d2106883f0e2794c5cb3642696d5 -SIZE (google-cloud-dlp-3.16.0.tar.gz) = 201332 +TIMESTAMP = 1715842866 +SHA256 (google-cloud-dlp-3.17.0.tar.gz) = 60c504063f1cd79e0a03963f726d606f2a43c647d8e27702ab9c1bca6e6b4bdb +SIZE (google-cloud-dlp-3.17.0.tar.gz) = 229825 diff --git a/www/py-gunicorn/Makefile b/www/py-gunicorn/Makefile index bf9f7bf62a8d..55af03382da3 100644 --- a/www/py-gunicorn/Makefile +++ b/www/py-gunicorn/Makefile @@ -1,5 +1,6 @@ PORTNAME= gunicorn DISTVERSION= 22.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-gunicorn/files/gunicorn.in b/www/py-gunicorn/files/gunicorn.in index f0c995224af2..86d3e2d3cad2 100644 --- a/www/py-gunicorn/files/gunicorn.in +++ b/www/py-gunicorn/files/gunicorn.in @@ -20,7 +20,7 @@ rcvar=gunicorn_enable load_rc_config $name : ${gunicorn_enable:=NO} -: ${gunicorn_config=%%PREFIX%%/gunicorn/gunicorn.conf.py} +: ${gunicorn_config=%%PREFIX%%/etc/gunicorn/gunicorn.conf.py} : ${gunicorn_user=%%USERS%%} : ${gunicorn_group=%%GROUPS%%} diff --git a/www/py-horizon/Makefile b/www/py-horizon/Makefile index 1cfcd05e4218..55d86960df15 100644 --- a/www/py-horizon/Makefile +++ b/www/py-horizon/Makefile @@ -1,5 +1,6 @@ PORTNAME= horizon PORTVERSION= 23.4.0 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,13 +13,15 @@ WWW= https://docs.openstack.org/horizon/latest/ \ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pbr>=2.0.0:devel/py-pbr@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pbr>=2.0.0:devel/py-pbr@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=2.6.0:devel/py-babel@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}debtcollector>=1.2.0:devel/py-debtcollector@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django_compressor>=2.4.1:www/py-django_compressor@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-debreach>=1.4.2:www/py-django-debreach@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-pyscss>=2.0.2:www/py-django-pyscss@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=3.2<4.3:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>=3.2<4.3:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}enmerkar>=0.7.1:www/py-enmerkar@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}futurist>=1.2.0:devel/py-futurist@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}iso8601>=0.1.11:devel/py-iso8601@${PY_FLAVOR} \ @@ -76,7 +79,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=2.6.0:devel/py-babel@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}xstatic-tv4>=1.2.7.0:devel/py-xstatic-tv4@${PY_FLAVOR} USES= cpe python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-hstspreload/Makefile b/www/py-hstspreload/Makefile index c63706aaf1d0..9ebfdec9276e 100644 --- a/www/py-hstspreload/Makefile +++ b/www/py-hstspreload/Makefile @@ -1,5 +1,5 @@ PORTNAME= hstspreload -PORTVERSION= 2024.4.1 +PORTVERSION= 2024.5.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-hstspreload/distinfo b/www/py-hstspreload/distinfo index ef0b3f30e6d4..2108d7adf1dd 100644 --- a/www/py-hstspreload/distinfo +++ b/www/py-hstspreload/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712084540 -SHA256 (hstspreload-2024.4.1.tar.gz) = d379d0593f4b8819bd42e758c697f43a95a8202f8f5412bd8db820b37cdf96ac -SIZE (hstspreload-2024.4.1.tar.gz) = 1132286 +TIMESTAMP = 1715842868 +SHA256 (hstspreload-2024.5.1.tar.gz) = b16c79acc0bd1dc345e4e70c975591ff1ad8ebda3da4356af571b86810c7e0dd +SIZE (hstspreload-2024.5.1.tar.gz) = 1145337 diff --git a/www/py-httptools/Makefile b/www/py-httptools/Makefile index 7d0bc9282450..947b9291922b 100644 --- a/www/py-httptools/Makefile +++ b/www/py-httptools/Makefile @@ -1,5 +1,6 @@ PORTNAME= httptools PORTVERSION= 0.6.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,10 +12,12 @@ WWW= https://github.com/MagicStack/httptools LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} LIB_DEPENDS= libhttp_parser.so:www/http-parser USES= localbase python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 post-patch: @${RM} -r ${WRKSRC}/vendor/http-parser/ diff --git a/www/py-instabot/Makefile b/www/py-instabot/Makefile index 0654caf478b3..148ba743c9f1 100644 --- a/www/py-instabot/Makefile +++ b/www/py-instabot/Makefile @@ -1,6 +1,6 @@ PORTNAME= instabot PORTVERSION= 0.117.0 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,6 +11,8 @@ WWW= https://github.com/instagrambot/instabot LICENSE= APACHE20 +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=2019.11.28:security/py-certifi@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}chardet>=3.0.4,1:textproc/py-chardet@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}future>=0.18.2:devel/py-future@${PY_FLAVOR} \ @@ -30,7 +32,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=2019.11.28:security/py-certifi@${PY ${PYTHON_PKGNAMEPREFIX}urllib3>=1.25.7,1:net/py-urllib3@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-jsonfield/Makefile b/www/py-jsonfield/Makefile index bbd9ad5e3942..a3d544bf1805 100644 --- a/www/py-jsonfield/Makefile +++ b/www/py-jsonfield/Makefile @@ -1,6 +1,6 @@ PORTNAME= jsonfield PORTVERSION= 3.1.0 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +12,12 @@ WWW= https://github.com/rpkilby/jsonfield LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.2:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.2:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-mechanicalsoup/Makefile b/www/py-mechanicalsoup/Makefile index a6056416b70a..2aa0389e59e4 100644 --- a/www/py-mechanicalsoup/Makefile +++ b/www/py-mechanicalsoup/Makefile @@ -1,5 +1,6 @@ PORTNAME= mechanicalsoup PORTVERSION= 1.3.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,6 +13,8 @@ WWW= https://github.com/MechanicalSoup/MechanicalSoup LICENSE= MIT 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}beautifulsoup>=4.7:www/py-beautifulsoup@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=2.22.0:www/py-requests@${PY_FLAVOR} @@ -21,7 +24,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests-mock>=0:www/py-requests-mock@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-mechanicalsoup/files/patch-setup.py b/www/py-mechanicalsoup/files/patch-setup.py new file mode 100644 index 000000000000..e21c791797e4 --- /dev/null +++ b/www/py-mechanicalsoup/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2023-07-04 19:21:51 UTC ++++ setup.py +@@ -42,7 +42,7 @@ setup( + pytest_runner = ['pytest-runner'] if needs_pytest else [] + + setup( +- name=about['__title__'], ++ name='mechanicalsoup', + + # useful: python setup.py sdist bdist_wheel upload + version=about['__version__'], diff --git a/www/py-nh3/Makefile b/www/py-nh3/Makefile index db5c3258a289..31c9ccb8d648 100644 --- a/www/py-nh3/Makefile +++ b/www/py-nh3/Makefile @@ -1,6 +1,7 @@ PORTNAME= nh3 DISTVERSIONPREFIX= v DISTVERSION= 0.2.17 +PORTREVISION= 1 CATEGORIES= www python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-notebook/Makefile b/www/py-notebook/Makefile index 698c6e5e4620..342f8be9bd1a 100644 --- a/www/py-notebook/Makefile +++ b/www/py-notebook/Makefile @@ -1,5 +1,6 @@ PORTNAME= notebook PORTVERSION= 6.4.13 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-paste/Makefile b/www/py-paste/Makefile index 94ffb8a5f099..8a10cf5937d0 100644 --- a/www/py-paste/Makefile +++ b/www/py-paste/Makefile @@ -1,19 +1,21 @@ PORTNAME= Paste -PORTVERSION= 3.9.0 +PORTVERSION= 3.10.1 PORTREVISION= 0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= ${PORTNAME:tl}-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX} MAINTAINER= nivit@FreeBSD.org COMMENT= Tools for using a Web Server Gateway Interface stack -WWW= https://github.com/cdent/paste +WWW= https://github.com/pasteorg/paste LICENSE= MIT LICENSE_FILE= ${WRKSRC}/docs/license.txt RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.4.0:devel/py-six@${PY_FLAVOR} +# 175 passed, 1 skipped TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.4.0:devel/py-six@${PY_FLAVOR} USES= python diff --git a/www/py-paste/distinfo b/www/py-paste/distinfo index 77ff5244529e..a6fdd6f42f30 100644 --- a/www/py-paste/distinfo +++ b/www/py-paste/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712391275 -SHA256 (Paste-3.9.0.tar.gz) = 556e3c24208fcfae269684fc3b888f46783c80208516bcecc410c00c7f678fef -SIZE (Paste-3.9.0.tar.gz) = 637286 +TIMESTAMP = 1714741211 +SHA256 (paste-3.10.1.tar.gz) = 1c3d12065a5e8a7a18c0c7be1653a97cf38cc3e9a5a0c8334a9dd992d3a05e4a +SIZE (paste-3.10.1.tar.gz) = 652629 diff --git a/www/py-planet/Makefile b/www/py-planet/Makefile index 702c4fe726d8..96202e8c96af 100644 --- a/www/py-planet/Makefile +++ b/www/py-planet/Makefile @@ -1,5 +1,6 @@ PORTNAME= planet PORTVERSION= 2.1.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,6 +13,8 @@ WWW= https://planet-sdk-for-python-v2.readthedocs.io/en/latest/ \ LICENSE= APACHE20 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}click>=8.0:devel/py-click@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}geojson>=0:devel/py-geojson@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}httpx>=0.23.0:www/py-httpx@${PY_FLAVOR} \ @@ -21,7 +24,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>=8.0:devel/py-click@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=0:devel/py-typing-extensions@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-postorius/Makefile b/www/py-postorius/Makefile index bde9f092d473..8b695efa44fd 100644 --- a/www/py-postorius/Makefile +++ b/www/py-postorius/Makefile @@ -1,5 +1,6 @@ PORTNAME= postorius PORTVERSION= 1.3.10 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,8 +12,10 @@ WWW= https://gitlab.com/mailman/postorius LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django-mailman3>=1.3.10:mail/py-django-mailman3@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django32>=3.2<4.3:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>=3.2<4.3:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}mailmanclient>=3.3.3:mail/py-mailmanclient@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}readme-renderer>=0:devel/py-readme-renderer@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beautifulsoup>=0:www/py-beautifulsoup@${PY_FLAVOR} \ @@ -21,7 +24,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beautifulsoup>=0:www/py-beautifulsoup@${PY_ ${PYTHON_PKGNAMEPREFIX}isort>=0:devel/py-isort@${PY_FLAVOR} USES= cpe python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-priority/Makefile b/www/py-priority/Makefile index e665f74ad266..c9f1be79267b 100644 --- a/www/py-priority/Makefile +++ b/www/py-priority/Makefile @@ -1,5 +1,6 @@ PORTNAME= priority PORTVERSION= 2.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,8 +12,11 @@ WWW= https://github.com/python-hyper/priority LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-priority1/Makefile b/www/py-priority1/Makefile index 8f094e375e26..87392d12c276 100644 --- a/www/py-priority1/Makefile +++ b/www/py-priority1/Makefile @@ -1,5 +1,6 @@ PORTNAME= priority PORTVERSION= 1.3.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,8 +13,11 @@ WWW= https://github.com/python-hyper/priority LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-pygsheets/Makefile b/www/py-pygsheets/Makefile index db75fa6dda03..e88c726f457a 100644 --- a/www/py-pygsheets/Makefile +++ b/www/py-pygsheets/Makefile @@ -1,5 +1,6 @@ PORTNAME= pygsheets PORTVERSION= 2.0.6 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,11 +11,13 @@ WWW= https://github.com/nithinmurali/pygsheets 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}google-api-python-client>=2.50.0:www/py-google-api-python-client@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}google-auth-oauthlib>=0.7.1:security/py-google-auth-oauthlib@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-pyramid-mako/Makefile b/www/py-pyramid-mako/Makefile index c526e7013976..18f6e1af5a0a 100644 --- a/www/py-pyramid-mako/Makefile +++ b/www/py-pyramid-mako/Makefile @@ -1,6 +1,6 @@ PORTNAME= pyramid-mako PORTVERSION= 1.1.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -15,6 +15,8 @@ LICENSE_NAME= Repoze Public License LICENSE_FILE= ${WRKSRC}/LICENSE.txt LICENSE_PERMS= auto-accept dist-mirror dist-sell pkg-mirror pkg-sell +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mako>=1.1.0:textproc/py-mako@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyramid>=0:www/py-pyramid@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \ @@ -22,7 +24,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} ${PYTHON_PKGNAMEPREFIX}webtest>=1.3.1:www/py-webtest@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-pysmartdl/Makefile b/www/py-pysmartdl/Makefile index 3cd6a6d33ac1..92fde3f822cb 100644 --- a/www/py-pysmartdl/Makefile +++ b/www/py-pysmartdl/Makefile @@ -1,6 +1,6 @@ PORTNAME= pysmartdl PORTVERSION= 1.3.4 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,8 +13,11 @@ WWW= https://github.com/iTaybb/pySmartDL LICENSE= UNLICENSE 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} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-pysmartdl/files/patch-setup.py b/www/py-pysmartdl/files/patch-setup.py index b91914dc6703..907459b84fb8 100644 --- a/www/py-pysmartdl/files/patch-setup.py +++ b/www/py-pysmartdl/files/patch-setup.py @@ -1,6 +1,13 @@ --- setup.py.orig 2020-09-19 15:39:42 UTC +++ setup.py -@@ -11,7 +11,7 @@ setup( +@@ -5,13 +5,13 @@ setup( + release_posttag = "" + + setup( +- name='pySmartDL', ++ name='pysmartdl', + version=pySmartDL.__version__ + release_posttag, + url='http://pypi.python.org/pypi/pySmartDL/', author='Itay Brandes', author_email='brandes.itay+pysmartdl@gmail.com', license='Public Domain', diff --git a/www/py-python-dotenv/Makefile b/www/py-python-dotenv/Makefile index 897e6f88ca41..588f86b11214 100644 --- a/www/py-python-dotenv/Makefile +++ b/www/py-python-dotenv/Makefile @@ -1,5 +1,6 @@ PORTNAME= python-dotenv PORTVERSION= 1.0.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,8 +12,11 @@ WWW= https://github.com/theskumar/python-dotenv LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 CONFLICTS_INSTALL= rubygem-dotenv # bin/dotenv diff --git a/www/py-pywikibot/Makefile b/www/py-pywikibot/Makefile index 7783a92748fd..02adfbbbd7c0 100644 --- a/www/py-pywikibot/Makefile +++ b/www/py-pywikibot/Makefile @@ -1,5 +1,5 @@ PORTNAME= pywikibot -DISTVERSION= 9.0.0 +DISTVERSION= 9.1.2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-pywikibot/distinfo b/www/py-pywikibot/distinfo index 1c0cb20d20e8..d33e12ccc354 100644 --- a/www/py-pywikibot/distinfo +++ b/www/py-pywikibot/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709965245 -SHA256 (pywikibot-9.0.0.tar.gz) = 82120dd4dd275a48c0eaa2a459faad928211e7b43cf6efe4110ad95e805e7317 -SIZE (pywikibot-9.0.0.tar.gz) = 612776 +TIMESTAMP = 1714871872 +SHA256 (pywikibot-9.1.2.tar.gz) = 802eb5da597f17398b23816438578dee918cd31e10e4141d6d1067ad3b950b5d +SIZE (pywikibot-9.1.2.tar.gz) = 610495 diff --git a/www/py-pywry/Makefile b/www/py-pywry/Makefile index 4cb752485fe2..4441c38b452d 100644 --- a/www/py-pywry/Makefile +++ b/www/py-pywry/Makefile @@ -1,6 +1,6 @@ PORTNAME= pywry DISTVERSION= 0.6.2 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-qt6-webengine/Makefile b/www/py-qt6-webengine/Makefile index ba2317eff1da..8a6e942bdb93 100644 --- a/www/py-qt6-webengine/Makefile +++ b/www/py-qt6-webengine/Makefile @@ -12,7 +12,7 @@ COMMENT= Python bindings for the Qt6 toolkit, QtWebEngine module WWW= https://riverbankcomputing.com/software/pyqt USES= gl python pyqt:6 qt:6 -USE_GL= gl +USE_GL= opengl USE_PYQT= sip:build pyqt6 USE_PYTHON= concurrent flavors USE_QT= base declarative positioning webchannel webengine diff --git a/www/py-qt6-webengine/distinfo b/www/py-qt6-webengine/distinfo index a47e084a2044..4e4a1ee59e1d 100644 --- a/www/py-qt6-webengine/distinfo +++ b/www/py-qt6-webengine/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1698900348 -SHA256 (PyQt6_WebEngine-6.6.0.tar.gz) = d50b984c3f85e409e692b156132721522d4e8cf9b6c25e0cf927eea2dfb39487 -SIZE (PyQt6_WebEngine-6.6.0.tar.gz) = 31817 +TIMESTAMP = 1714272046 +SHA256 (PyQt6_WebEngine-6.7.0.tar.gz) = 68edc7adb6d9e275f5de956881e79cca0d71fad439abeaa10d823bff5ac55001 +SIZE (PyQt6_WebEngine-6.7.0.tar.gz) = 32593 diff --git a/www/py-qt6-webengine/pkg-plist b/www/py-qt6-webengine/pkg-plist index c223a7b9147b..d569bcec7b29 100644 --- a/www/py-qt6-webengine/pkg-plist +++ b/www/py-qt6-webengine/pkg-plist @@ -7,6 +7,7 @@ %%PYQT_SIPDIR%%/QtWebEngineCore/qwebengineclientcertificatestore.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginecontextmenurequest.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginecookiestore.sip +%%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginedesktopmediarequest.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginedownloadrequest.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginefilesystemaccessrequest.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginefindtextresult.sip @@ -30,6 +31,7 @@ %%PYQT_SIPDIR%%/QtWebEngineCore/qwebengineurlrequestjob.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebengineurlscheme.sip %%PYQT_SIPDIR%%/QtWebEngineCore/qwebengineurlschemehandler.sip +%%PYQT_SIPDIR%%/QtWebEngineCore/qwebenginewebauthuxrequest.sip %%PYQT_SIPDIR%%/QtWebEngineQuick/QtWebEngineQuick.toml %%PYQT_SIPDIR%%/QtWebEngineQuick/QtWebEngineQuickmod.sip %%PYQT_SIPDIR%%/QtWebEngineQuick/qquickwebengineprofile.sip diff --git a/www/py-quilt3/Makefile b/www/py-quilt3/Makefile index 2ed8e4460717..6d1465e25d6c 100644 --- a/www/py-quilt3/Makefile +++ b/www/py-quilt3/Makefile @@ -1,5 +1,6 @@ PORTNAME= quilt3 PORTVERSION= 5.4.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,6 +12,8 @@ WWW= https://github.com/quiltdata/quilt LICENSE= APACHE20 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}aws-requests-auth>=0.4.2:devel/py-aws-requests-auth@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}boto3>=1.10.0:www/py-boto3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}jsonlines>=1.2.0:devel/py-jsonlines@${PY_FLAVOR} \ @@ -23,7 +26,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aws-requests-auth>=0.4.2:devel/py-aws-reques ${PYTHON_PKGNAMEPREFIX}tqdm>=4.32:misc/py-tqdm@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-requests-aws4auth/Makefile b/www/py-requests-aws4auth/Makefile index 1d8616b9e23a..2e396e7d1b4f 100644 --- a/www/py-requests-aws4auth/Makefile +++ b/www/py-requests-aws4auth/Makefile @@ -1,5 +1,6 @@ PORTNAME= requests-aws4auth PORTVERSION= 1.2.3 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/sam-washington/requests-aws4auth LICENSE= MIT 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}requests>=0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-requests-futures/Makefile b/www/py-requests-futures/Makefile index 34fee72fb971..92f0b3775489 100644 --- a/www/py-requests-futures/Makefile +++ b/www/py-requests-futures/Makefile @@ -1,5 +1,6 @@ PORTNAME= requests-futures PORTVERSION= 1.0.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,10 +11,12 @@ WWW= https://github.com/ross/requests-futures LICENSE= APACHE20 +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>=1.2.0:www/py-requests@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-requests-toolbelt/Makefile b/www/py-requests-toolbelt/Makefile index 5da9d3332cab..a6ef946f5206 100644 --- a/www/py-requests-toolbelt/Makefile +++ b/www/py-requests-toolbelt/Makefile @@ -1,5 +1,6 @@ PORTNAME= requests-toolbelt PORTVERSION= 1.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,10 +13,12 @@ WWW= https://toolbelt.readthedocs.io/en/latest/ \ LICENSE= APACHE20 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}requests>=2.0.1<3.0.0:www/py-requests@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-requests-wsgi-adapter/Makefile b/www/py-requests-wsgi-adapter/Makefile index 7de635f8b316..0af8c9a3f228 100644 --- a/www/py-requests-wsgi-adapter/Makefile +++ b/www/py-requests-wsgi-adapter/Makefile @@ -1,5 +1,6 @@ PORTNAME= requests-wsgi-adapter PORTVERSION= 0.4.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,10 +11,12 @@ WWW= https://github.com/seanbrant/requests-wsgi-adapter LICENSE= BSD3CLAUSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>=1.0:www/py-requests@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-requests/Makefile b/www/py-requests/Makefile index 18b00a66b9ba..5b1d9d56bd5b 100644 --- a/www/py-requests/Makefile +++ b/www/py-requests/Makefile @@ -1,5 +1,6 @@ PORTNAME= requests PORTVERSION= 2.31.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,6 +13,8 @@ WWW= https://docs.python-requests.org/en/latest/ \ LICENSE= APACHE20 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}certifi>=2017.4.17:security/py-certifi@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}charset-normalizer>=2<4:textproc/py-charset-normalizer@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}idna>=2.5<4:dns/py-idna@${PY_FLAVOR} \ @@ -24,7 +27,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pysocks>=1.5.6:net/py-pysocks@${PY_FLAVOR} ${PYTHON_PKGNAMEPREFIX}trustme>=0:security/py-trustme@${PY_FLAVOR} USES= cpe python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes diff --git a/www/py-rfc3987/Makefile b/www/py-rfc3987/Makefile index 1fa0b4f0fbe3..f80869a88ff0 100644 --- a/www/py-rfc3987/Makefile +++ b/www/py-rfc3987/Makefile @@ -1,5 +1,6 @@ PORTNAME= rfc3987 PORTVERSION= 1.3.8 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,8 +12,11 @@ WWW= https://github.com/dgerber/rfc3987 LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING.txt +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-sentinelhub/Makefile b/www/py-sentinelhub/Makefile index dac8e9ee35ca..8d0714351367 100644 --- a/www/py-sentinelhub/Makefile +++ b/www/py-sentinelhub/Makefile @@ -1,6 +1,5 @@ PORTNAME= sentinelhub -PORTVERSION= 3.10.1 -PORTREVISION= 1 +PORTVERSION= 3.10.2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-sentinelhub/distinfo b/www/py-sentinelhub/distinfo index 4ee931967963..1bae4064ac4a 100644 --- a/www/py-sentinelhub/distinfo +++ b/www/py-sentinelhub/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708449538 -SHA256 (sentinelhub-3.10.1.tar.gz) = d67e50d21da965d17c1dcc9538f6dc471d1d5a50e0d463d44c10d24ab5f931b3 -SIZE (sentinelhub-3.10.1.tar.gz) = 213160 +TIMESTAMP = 1715842870 +SHA256 (sentinelhub-3.10.2.tar.gz) = a94d23e7eb1af35c48348e9a9560f9ced109fcab456f8d2e2f020c91ee76e211 +SIZE (sentinelhub-3.10.2.tar.gz) = 213358 diff --git a/www/py-social-auth-app-django/Makefile b/www/py-social-auth-app-django/Makefile index a81634cbc3d8..7b307e9771bb 100644 --- a/www/py-social-auth-app-django/Makefile +++ b/www/py-social-auth-app-django/Makefile @@ -1,5 +1,5 @@ PORTNAME= social-auth-app-django -DISTVERSION= 5.4.0 +DISTVERSION= 5.4.1 CATEGORIES= www security python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,7 +11,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.4.1:security/py-social-auth-core@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>0:www/py-django32@${PY_FLAVOR} \ +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}mock>0:devel/py-mock@${PY_FLAVOR} USES= python diff --git a/www/py-social-auth-app-django/distinfo b/www/py-social-auth-app-django/distinfo index 8e6883eca6a8..ff612778b0af 100644 --- a/www/py-social-auth-app-django/distinfo +++ b/www/py-social-auth-app-django/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1698405606 -SHA256 (python-social-auth-social-app-django-5.4.0_GH0.tar.gz) = 4dd5cbdb7b9261d6c2836f96fc6f8024a749abd7737e91011716978395394dbc -SIZE (python-social-auth-social-app-django-5.4.0_GH0.tar.gz) = 28886 +TIMESTAMP = 1714151791 +SHA256 (python-social-auth-social-app-django-5.4.1_GH0.tar.gz) = bfcceba117a90c13f090d57224df3760f77e957c756eb0de5a3472e9a69a7d8e +SIZE (python-social-auth-social-app-django-5.4.1_GH0.tar.gz) = 28189 diff --git a/www/py-spyne/Makefile b/www/py-spyne/Makefile index 4b540117866a..2ec47709d49a 100644 --- a/www/py-spyne/Makefile +++ b/www/py-spyne/Makefile @@ -1,6 +1,6 @@ PORTNAME= spyne PORTVERSION= 2.14.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,10 +13,12 @@ WWW= http://spyne.io/ \ LICENSE= LGPL21 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}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}django32>=0:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=3.6:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}msgpack>=1:devel/py-msgpack@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pandas>=0,1:math/py-pandas@${PY_FLAVOR} \ @@ -36,7 +38,7 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}colorama>=0:devel/py-colorama@${PY_FLAVOR} ${PYTHON_PKGNAMEPREFIX}zeep>=0:net/py-zeep@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest NO_ARCH= yes TEST_ENV= DJANGO_SETTINGS_MODULE=rpctest.settings PYTHONPATH=examples/django diff --git a/www/py-strawberry-graphql-django/Makefile b/www/py-strawberry-graphql-django/Makefile index 428a83537adc..80092556f6a4 100644 --- a/www/py-strawberry-graphql-django/Makefile +++ b/www/py-strawberry-graphql-django/Makefile @@ -1,5 +1,5 @@ PORTNAME= strawberry-graphql-django -DISTVERSION= 0.37.0 +DISTVERSION= 0.39.2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -14,8 +14,9 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PY_SETUPTOOLS} \ ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2:www/py-django32@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}strawberry-graphql>=0.212.0:devel/py-strawberry-graphql@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}asgiref>=3.8:www/py-asgiref@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}strawberry-graphql>=0.227.1:devel/py-strawberry-graphql@${PY_FLAVOR} USES= python USE_PYTHON= autoplist pep517 diff --git a/www/py-strawberry-graphql-django/distinfo b/www/py-strawberry-graphql-django/distinfo index 309d50c34065..63d67b34b8dc 100644 --- a/www/py-strawberry-graphql-django/distinfo +++ b/www/py-strawberry-graphql-django/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712323533 -SHA256 (strawberry_graphql_django-0.37.0.tar.gz) = c9d33c2212b23c8ff40a9e8d92225e651736dd83746f8826b07d8a1dead5e167 -SIZE (strawberry_graphql_django-0.37.0.tar.gz) = 69040 +TIMESTAMP = 1714243824 +SHA256 (strawberry_graphql_django-0.39.2.tar.gz) = 673025c261e547787b2e452e757867df81a8ac163ed82160c5e4b7e79e1b6435 +SIZE (strawberry_graphql_django-0.39.2.tar.gz) = 68979 diff --git a/www/py-swapper/Makefile b/www/py-swapper/Makefile index d810922d959f..20090ab2e891 100644 --- a/www/py-swapper/Makefile +++ b/www/py-swapper/Makefile @@ -1,6 +1,6 @@ PORTNAME= swapper PORTVERSION= 1.3.0 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,11 +12,13 @@ WWW= https://github.com/openwisp/django-swappable-models LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=2.0:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=2.0:www/py-django42@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-ticketutil/Makefile b/www/py-ticketutil/Makefile index c2c2f95d8a6b..a0e5dc5fbafe 100644 --- a/www/py-ticketutil/Makefile +++ b/www/py-ticketutil/Makefile @@ -1,5 +1,6 @@ PORTNAME= ticketutil PORTVERSION= 1.8.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,12 +11,14 @@ WWW= https://github.com/dmranck/ticketutil LICENSE= GPLv3 +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gssapi>=1.2.0:security/py-gssapi@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=2.6.0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests-kerberos>=0.8.0:security/py-requests-kerberos@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-ticketutil/files/patch-setup.py b/www/py-ticketutil/files/patch-setup.py index 68d43e12c257..8443c367fc1e 100644 --- a/www/py-ticketutil/files/patch-setup.py +++ b/www/py-ticketutil/files/patch-setup.py @@ -5,5 +5,5 @@ keywords=['jira', 'bugzilla', 'rt', 'redmine', 'servicenow', 'ticket', 'rest'], install_requires=['gssapi>=1.2.0', 'requests>=2.6.0', 'requests-kerberos>=0.8.0'], - data_files=[('.', ['HISTORY.rst'])] -+ data_files=[('', ['HISTORY.rst'])] ++ package_data={'': ['HISTORY.rst']} ) diff --git a/www/py-tornado4/Makefile b/www/py-tornado4/Makefile index f48e85e195f3..a44dc6d39e09 100644 --- a/www/py-tornado4/Makefile +++ b/www/py-tornado4/Makefile @@ -1,5 +1,6 @@ PORTNAME= tornado PORTVERSION= 4.5.3 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,9 +11,13 @@ COMMENT= Python Web Server from FriendFeed WWW= https://www.tornadoweb.org/ LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} USES= cpe python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}tornado \ ${PYTHON_PKGNAMEPREFIX}tornado5 \ diff --git a/www/py-tornado5/Makefile b/www/py-tornado5/Makefile index b1c9733cd557..146dbbc8f27b 100644 --- a/www/py-tornado5/Makefile +++ b/www/py-tornado5/Makefile @@ -1,5 +1,6 @@ PORTNAME= tornado PORTVERSION= 5.1.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,9 +11,13 @@ COMMENT= Python Web Server from FriendFeed WWW= https://www.tornadoweb.org/ LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} USES= cpe python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}tornado \ ${PYTHON_PKGNAMEPREFIX}tornado4 \ diff --git a/www/py-wagtail-2fa/Makefile b/www/py-wagtail-2fa/Makefile index 539fb901c591..80df48f2d472 100644 --- a/www/py-wagtail-2fa/Makefile +++ b/www/py-wagtail-2fa/Makefile @@ -1,6 +1,6 @@ PORTNAME= wagtail-2fa PORTVERSION= 1.6.9 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,14 +12,16 @@ WWW= https://github.com/labd/wagtail-2fa LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj42-django-otp>=0.8.1:www/py-dj42-django-otp@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django-otp>=0.8.1:www/py-django-otp@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}qrcode>=6.1:textproc/py-qrcode@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=1.14.0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wagtail>=4.1:www/py-wagtail@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-wagtail-airtable/Makefile b/www/py-wagtail-airtable/Makefile index c09c20d1a4d4..68fee6b53efb 100644 --- a/www/py-wagtail-airtable/Makefile +++ b/www/py-wagtail-airtable/Makefile @@ -1,6 +1,6 @@ PORTNAME= wagtail-airtable PORTVERSION= 0.7.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -16,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.2<4:devel/py-flit-core@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}airtable-python-wrapper>=0.13.0:devel/py-airtable-python-wrapper@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-djangorestframework>=3.11.0:www/py-dj42-djangorestframework@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}djangorestframework>=3.11.0,1:www/py-djangorestframework@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wagtail>=5.2:www/py-wagtail@${PY_FLAVOR} USES= python diff --git a/www/py-wagtail-bakery/Makefile b/www/py-wagtail-bakery/Makefile index 13e3fd9c2498..26950905e72b 100644 --- a/www/py-wagtail-bakery/Makefile +++ b/www/py-wagtail-bakery/Makefile @@ -1,5 +1,6 @@ PORTNAME= wagtail-bakery PORTVERSION= 0.8.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/wagtail/wagtail-bakery LICENSE= MIT 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}django-bakery>=0.12.7<0.14:www/py-django-bakery@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wagtail>=4.1:www/py-wagtail@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-wagtail-factories/Makefile b/www/py-wagtail-factories/Makefile index b67b1073f46a..0cf4a6aa65e4 100644 --- a/www/py-wagtail-factories/Makefile +++ b/www/py-wagtail-factories/Makefile @@ -1,5 +1,6 @@ PORTNAME= wagtail-factories PORTVERSION= 4.1.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -11,11 +12,13 @@ WWW= https://github.com/wagtail/wagtail-factories 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}factory-boy>=3.2:devel/py-factory-boy@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wagtail>=4.1:www/py-wagtail@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-wagtail/Makefile b/www/py-wagtail/Makefile index 1e9d18fc9b99..21235be8a311 100644 --- a/www/py-wagtail/Makefile +++ b/www/py-wagtail/Makefile @@ -1,5 +1,5 @@ PORTNAME= wagtail -PORTVERSION= 6.0.2 +PORTVERSION= 6.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -17,21 +17,20 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}anyascii>=0.1.5:textproc/py-anyascii@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}beautifulsoup>=4.8<4.13:www/py-beautifulsoup@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django42>=4.2<6.0:www/py-django42@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-filter>=23.3<24:www/py-dj42-django-filter@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-modelcluster>=6.2.1<7.0:www/py-dj42-django-modelcluster@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-permissionedforms>=0.1<1.0:www/py-dj42-django-permissionedforms@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-taggit>=4.0<5.1:www/py-dj42-django-taggit@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-django-treebeard>=4.5.1<5.0:www/py-dj42-django-treebeard@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj42-djangorestframework>=3.11.1<4.0:www/py-dj42-djangorestframework@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-filter>=23.3<25:www/py-django-filter@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-modelcluster>=6.2.1<7.0:www/py-django-modelcluster@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-permissionedforms>=0.1<1.0:www/py-django-permissionedforms@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-taggit>=4.0<5.1:www/py-django-taggit@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django-treebeard>=4.5.1<5.0:www/py-django-treebeard@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}djangorestframework>=3.14.0,1<4.0,1:www/py-djangorestframework@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}draftjs-exporter>=2.1.5<6.0:www/py-draftjs-exporter@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}html5lib>=0.999<2:www/py-html5lib@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}l18n>=2018.5:devel/py-l18n@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}laces>=0.1<0.2:www/py-laces@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}openpyxl>=3.0.10<4.0:textproc/py-openpyxl@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>=9.1.0<11.0.0:graphics/py-pillow@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=2.11.1<3.0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}telepath>=0.3.1<1:devel/py-telepath@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}willow>=1.6.2<2:graphics/py-willow@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}willow>=1.8.0<2:graphics/py-willow@${PY_FLAVOR} USES= cpe python shebangfix USE_PYTHON= autoplist concurrent pep517 diff --git a/www/py-wagtail/distinfo b/www/py-wagtail/distinfo index e11e47a26c14..933c3c4b8699 100644 --- a/www/py-wagtail/distinfo +++ b/www/py-wagtail/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712330631 -SHA256 (wagtail-6.0.2.tar.gz) = e7cfc3c0f53fb302f1798f0e02a7ac6078ab02eb0e8703c0f71ccbd3f18e386f -SIZE (wagtail-6.0.2.tar.gz) = 6261615 +TIMESTAMP = 1716142150 +SHA256 (wagtail-6.1.tar.gz) = ad33ed1ccad1f9f1b4faba216c6cc92ba1a2dfefdbfd97c23ffbf7db99dd93c5 +SIZE (wagtail-6.1.tar.gz) = 6274765 diff --git a/www/py-wagtail/files/patch-setup.py b/www/py-wagtail/files/patch-setup.py new file mode 100644 index 000000000000..f79e29b7994e --- /dev/null +++ b/www/py-wagtail/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2024-05-01 12:57:48 UTC ++++ setup.py +@@ -24,7 +24,7 @@ install_requires = [ + "django-permissionedforms>=0.1,<1.0", + "django-taggit>=4.0,<5.1", + "django-treebeard>=4.5.1,<5.0", +- "djangorestframework>=3.15.1,<4.0", ++ "djangorestframework>=3.14.0,<4.0", + "django-filter>=23.3,<25", + "draftjs_exporter>=2.1.5,<6.0", + "Pillow>=9.1.0,<11.0.0", diff --git a/www/py-webargs/Makefile b/www/py-webargs/Makefile index 91af6e874ec8..8acd4d16c920 100644 --- a/www/py-webargs/Makefile +++ b/www/py-webargs/Makefile @@ -1,5 +1,5 @@ PORTNAME= webargs -DISTVERSION= 8.3.0 +DISTVERSION= 8.4.0 CATEGORIES= www devel python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,9 +10,10 @@ WWW= https://github.com/marshmallow-code/webargs LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}marshmallow>2.15.2:devel/py-marshmallow@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}marshmallow>2.15.2:devel/py-marshmallow@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}bottle>0:www/py-bottle@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}django*>=1.11.16:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django*>=1.11.16:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}falcon>=2.0:www/py-falcon@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}flask>=0.12.2:www/py-flask@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}mock>0:devel/py-mock@${PY_FLAVOR} \ @@ -25,15 +26,12 @@ CPE_VENDOR= ${PORTNAME}_project USE_GITHUB= yes # tests not packaged with PyPI sdist GH_ACCOUNT= marshmallow-code USE_PYTHON= autoplist concurrent distutils pytest +TEST_ARGS= --ignore-glob='*test_bottleparser*' \ + --ignore-glob='*test_aiohttpparser*' \ + --ignore-glob='*test_tornadoparser*' TEST_ENV= PYTHONPATH=${WRKSRC}/src NO_ARCH= yes -do-test: - cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest -v -rs -o addopts= \ - --ignore-glob='*test_bottleparser*' \ - --ignore-glob='*test_aiohttpparser*' \ - --ignore-glob="*test_tornadoparser*" - .include <bsd.port.mk> diff --git a/www/py-webargs/distinfo b/www/py-webargs/distinfo index 8beb9491ccdf..7a8741583e2a 100644 --- a/www/py-webargs/distinfo +++ b/www/py-webargs/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1692136038 -SHA256 (marshmallow-code-webargs-8.3.0_GH0.tar.gz) = 2bbdd9b546d4e66e7d74e41b34d0b8c630c8e6bb3dca34407b06438a4e3c5561 -SIZE (marshmallow-code-webargs-8.3.0_GH0.tar.gz) = 98608 +TIMESTAMP = 1712450867 +SHA256 (marshmallow-code-webargs-8.4.0_GH0.tar.gz) = c4cfdf7ec564ff5f6b37234d60fbd49e4e49f673d2cfeec5bed4909c84f1f46f +SIZE (marshmallow-code-webargs-8.4.0_GH0.tar.gz) = 100217 diff --git a/www/py-webtest/Makefile b/www/py-webtest/Makefile index c5d398a80484..351b97469708 100644 --- a/www/py-webtest/Makefile +++ b/www/py-webtest/Makefile @@ -1,5 +1,6 @@ PORTNAME= webtest PORTVERSION= 3.0.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -13,12 +14,14 @@ WWW= https://docs.pylonsproject.org/projects/webtest/en/latest/ \ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/license.rst +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beautifulsoup>=0:www/py-beautifulsoup@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}waitress>=0.8.5:www/py-waitress@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}webob>=1.2:www/py-webob@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes diff --git a/www/py-webtest/files/patch-setup.py b/www/py-webtest/files/patch-setup.py new file mode 100644 index 000000000000..582bfc48b8a7 --- /dev/null +++ b/www/py-webtest/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2021-08-19 12:39:58 UTC ++++ setup.py +@@ -26,7 +26,7 @@ docs_extras = [ + 'Sphinx >= 1.8.1', + ] + +-setup(name='WebTest', ++setup(name='webtest', + version=version, + description="Helper to test WSGI applications", + long_description=open('README.rst').read(), diff --git a/www/py-werkzeug/Makefile b/www/py-werkzeug/Makefile index 18de5509a4a5..946e9b3e6b79 100644 --- a/www/py-werkzeug/Makefile +++ b/www/py-werkzeug/Makefile @@ -1,5 +1,5 @@ PORTNAME= werkzeug -PORTVERSION= 3.0.2 +PORTVERSION= 3.0.3 CATEGORIES= www python MASTER_SITES= PYPI \ https://github.com/pallets/werkzeug/releases/download/${PORTVERSION}/ @@ -11,7 +11,7 @@ WWW= https://palletsprojects.com/p/werkzeug/ \ https://github.com/pallets/werkzeug LICENSE= BSD3CLAUSE -LICENSE_FILE= ${WRKSRC}/LICENSE.rst +LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=0<4:devel/py-flit-core@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}markupsafe>=2.1.1:textproc/py-markupsafe@${PY_FLAVOR} diff --git a/www/py-werkzeug/distinfo b/www/py-werkzeug/distinfo index ac8db71892ab..c6eb9745639f 100644 --- a/www/py-werkzeug/distinfo +++ b/www/py-werkzeug/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712084544 -SHA256 (werkzeug-3.0.2.tar.gz) = e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d -SIZE (werkzeug-3.0.2.tar.gz) = 802172 +TIMESTAMP = 1715842874 +SHA256 (werkzeug-3.0.3.tar.gz) = 097e5bfda9f0aba8da6b8545146def481d06aa7d3266e7448e2cccf67dd8bd18 +SIZE (werkzeug-3.0.3.tar.gz) = 803342 diff --git a/www/py-werkzeug/files/patch-pyproject.toml b/www/py-werkzeug/files/patch-pyproject.toml index 2dc9ddef82b5..5c287c3e4d31 100644 --- a/www/py-werkzeug/files/patch-pyproject.toml +++ b/www/py-werkzeug/files/patch-pyproject.toml @@ -1,9 +1,9 @@ ---- pyproject.toml.orig 2024-04-01 18:51:40 UTC +--- pyproject.toml.orig 2024-05-05 23:02:12 UTC +++ pyproject.toml @@ -1,5 +1,5 @@ [project] -name = "Werkzeug" +name = "werkzeug" - version = "3.0.2" + version = "3.0.3" description = "The comprehensive WSGI web application library." - readme = "README.rst" + readme = "README.md" diff --git a/www/py-woob/Makefile b/www/py-woob/Makefile index 2ae7c2497ce1..02fbbd8445e4 100644 --- a/www/py-woob/Makefile +++ b/www/py-woob/Makefile @@ -49,7 +49,7 @@ USE_PYTHON= autoplist pep517 NO_ARCH= yes -OPTIONS_DEFINE= CLICOLOR NSS RTMPDUMP +OPTIONS_DEFINE= CLICOLOR NSS OPTIONS_DEFAULT= CLICOLOR NSS CLICOLOR_DESC= Color command line interface @@ -58,8 +58,6 @@ CLICOLOR_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}termcolor>0:devel/py-termcolor@${PY NSS_RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss \ ${PYTHON_PKGNAMEPREFIX}python-nss>0:security/py-python-nss@${PY_FLAVOR} -RTMPDUMP_RUN_DEPENDS= rtmpdump:multimedia/rtmpdump - post-patch: @${REINPLACE_CMD} -e 's|/etc/ssl/certs|${LOCALBASE}/etc/ssl|g' ${WRKSRC}/woob/browser/nss.py diff --git a/www/pydio-cells/Makefile b/www/pydio-cells/Makefile index 8e743fe59677..5fba2eb79d7d 100644 --- a/www/pydio-cells/Makefile +++ b/www/pydio-cells/Makefile @@ -1,7 +1,6 @@ PORTNAME= cells DISTVERSIONPREFIX= v -DISTVERSION= 4.4.0 -PORTREVISION= 1 +DISTVERSION= 4.4.1 CATEGORIES= www PKGNAMEPREFIX= pydio- diff --git a/www/pydio-cells/distinfo b/www/pydio-cells/distinfo index a09c58523b64..7c7f1ed17b10 100644 --- a/www/pydio-cells/distinfo +++ b/www/pydio-cells/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1712349943 -SHA256 (go/www_pydio-cells/cells-v4.4.0/v4.4.0.mod) = 2e2a66b897a4799e446cd27952491a7ebd10240201b8a0c7ee74c84c0bb19728 -SIZE (go/www_pydio-cells/cells-v4.4.0/v4.4.0.mod) = 26396 -SHA256 (go/www_pydio-cells/cells-v4.4.0/v4.4.0.zip) = 266b623c4a2de207e30c14d7be7e40e306ee219f564eb4166d94abb07f7cf48a -SIZE (go/www_pydio-cells/cells-v4.4.0/v4.4.0.zip) = 58525866 +TIMESTAMP = 1716154668 +SHA256 (go/www_pydio-cells/cells-v4.4.1/v4.4.1.mod) = 55b09485e99b877d05200c8f9607d377f2b51197d255386c127a62200309c517 +SIZE (go/www_pydio-cells/cells-v4.4.1/v4.4.1.mod) = 26396 +SHA256 (go/www_pydio-cells/cells-v4.4.1/v4.4.1.zip) = 4b4615173af20242f8e17620a7c53f87e1ca83ecdfc3d6c9f4de2c781f9d382a +SIZE (go/www_pydio-cells/cells-v4.4.1/v4.4.1.zip) = 58627491 diff --git a/www/qt5-webengine/Makefile b/www/qt5-webengine/Makefile index 261a0f2559f3..0f6a5f3dca02 100644 --- a/www/qt5-webengine/Makefile +++ b/www/qt5-webengine/Makefile @@ -19,6 +19,7 @@ PORTNAME= webengine DISTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH} +PORTREVISION= 2 CATEGORIES= www PKGNAMEPREFIX= qt5- diff --git a/www/qt5-webengine/files/patch-security-rollup b/www/qt5-webengine/files/patch-security-rollup new file mode 100644 index 000000000000..e0554d3d7c61 --- /dev/null +++ b/www/qt5-webengine/files/patch-security-rollup @@ -0,0 +1,273 @@ +Add security patches to this file. + +Addresses the following security issues: + +- Security bug 329674887 +- CVE-2024-3157 +- CVE-2024-3516 + +From a3580d0a0fc78016093fd96d72f1449589642292 Mon Sep 17 00:00:00 2001 +From: Marco Paniconi <marpan@google.com> +Date: Wed, 13 Mar 2024 10:58:17 -0700 +Subject: [PATCH] [Backport] Security bug 329674887 (1/2) + +Cherry-pick of patch orignally reviewed on +https://chromium-review.googlesource.com/c/webm/libvpx/+/5370376: +Fix to buffer alloc for vp9_bitstream_worker_data + +The code was using the bitstream_worker_data when it +wasn't allocated for big enough size. This is because +the existing condition was to only re-alloc the +bitstream_worker_data when current dest_size was larger +than the current frame_size. But under resolution change +where frame_size is increased, beyond the current dest_size, +we need to allow re-alloc to the new size. + +The existing condition to re-alloc when dest_size is +larger than frame_size (which is not required) is kept +for now. + +Also increase the dest_size to account for image format. + +Added tests, for both ROW_MT=0 and 1, that reproduce +the failures in the bugs below. + +Note: this issue only affects the REALTIME encoding path. + +Bug: b/329088759, b/329674887, b/329179808 + +Change-Id: Icd65dbc5317120304d803f648d4bd9405710db6f +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554667 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../source/libvpx/vp9/encoder/vp9_bitstream.c | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c b/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +index 3eff4ce830d1..22db39714922 100644 +--- src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c ++++ src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +@@ -963,6 +963,14 @@ void vp9_bitstream_encode_tiles_buffer_dealloc(VP9_COMP *const cpi) { + } + } + ++static int encode_tiles_buffer_alloc_size(VP9_COMP *const cpi) { ++ VP9_COMMON *const cm = &cpi->common; ++ const int image_bps = ++ (8 + 2 * (8 >> (cm->subsampling_x + cm->subsampling_y))) * ++ (1 + (cm->bit_depth > 8)); ++ return cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++} ++ + static int encode_tiles_buffer_alloc(VP9_COMP *const cpi) { + int i; + const size_t worker_data_size = +@@ -972,7 +980,7 @@ static int encode_tiles_buffer_alloc(VP9_COMP *const cpi) { + if (!cpi->vp9_bitstream_worker_data) return 1; + for (i = 1; i < cpi->num_workers; ++i) { + cpi->vp9_bitstream_worker_data[i].dest_size = +- cpi->oxcf.width * cpi->oxcf.height; ++ encode_tiles_buffer_alloc_size(cpi); + cpi->vp9_bitstream_worker_data[i].dest = + vpx_malloc(cpi->vp9_bitstream_worker_data[i].dest_size); + if (!cpi->vp9_bitstream_worker_data[i].dest) return 1; +@@ -989,8 +997,8 @@ static size_t encode_tiles_mt(VP9_COMP *cpi, uint8_t *data_ptr) { + int tile_col = 0; + + if (!cpi->vp9_bitstream_worker_data || +- cpi->vp9_bitstream_worker_data[1].dest_size > +- (cpi->oxcf.width * cpi->oxcf.height)) { ++ cpi->vp9_bitstream_worker_data[1].dest_size != ++ encode_tiles_buffer_alloc_size(cpi)) { + vp9_bitstream_encode_tiles_buffer_dealloc(cpi); + if (encode_tiles_buffer_alloc(cpi)) return 0; + } +From 7c81b9390d837ffbaccb1846db64960b4a79626f Mon Sep 17 00:00:00 2001 +From: Marco Paniconi <marpan@google.com> +Date: Sat, 16 Mar 2024 10:39:28 -0700 +Subject: [PATCH] [Backport] Security bug 329674887 (2/2) + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/webm/libvpx/+/5375794: +vp9: fix to integer overflow test + +failure for the 16k test: issue introduced +in: c29e637283 + +Bug: b/329088759, b/329674887, b/329179808 + +Change-Id: I88e8a36b7f13223997c3006c84aec9cfa48c0bcf +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554668 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c b/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +index 22db3971492..645ba6ebb3a 100644 +--- src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c ++++ src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +@@ -968,7 +968,9 @@ static int encode_tiles_buffer_alloc_size(VP9_COMP *const cpi) { + const int image_bps = + (8 + 2 * (8 >> (cm->subsampling_x + cm->subsampling_y))) * + (1 + (cm->bit_depth > 8)); +- return cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++ const int64_t size = ++ (int64_t)cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++ return (int)size; + } + + static int encode_tiles_buffer_alloc(VP9_COMP *const cpi) { +From 11ecd608320b14500f912e827b5b0eab285b8142 Mon Sep 17 00:00:00 2001 +From: kylechar <kylechar@chromium.org> +Date: Tue, 9 Apr 2024 17:14:26 +0000 +Subject: [PATCH] [Backport] CVE-2024-3157: Out of bounds write in Compositing + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5420432: +Validate buffer length + +The BitmapInSharedMemory mojo traits were only validating row length and +not total buffer length. + +(cherry picked from commit 1a19ff70bd54847d818566bd7a1e7c384c419746) + +(cherry picked from commit f15315f1cb7897e208947a40d538aac693283d7f) + +Bug: 331237485 +Change-Id: Ia2318899c44e9e7ac72fc7183954e6ce2c702179 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5396796 +Commit-Queue: Kyle Charbonneau <kylechar@chromium.org> +Cr-Original-Original-Commit-Position: refs/heads/main@{#1278417} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5420432 +Commit-Queue: danakj <danakj@chromium.org> +Cr-Original-Commit-Position: refs/branch-heads/6312@{#786} +Cr-Original-Branched-From: 6711dcdae48edaf98cbc6964f90fac85b7d9986e-refs/heads/main@{#1262506} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5433678 +Reviewed-by: danakj <danakj@chromium.org> +Reviewed-by: Kyle Charbonneau <kylechar@chromium.org> +Cr-Commit-Position: refs/branch-heads/6099@{#2003} +Cr-Branched-From: e6ee4500f7d6549a9ac1354f8d056da49ef406be-refs/heads/main@{#1217362} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554669 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc b/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc +index f602fa100477..c6d84002b3e4 100644 +--- src/3rdparty/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc ++++ src/3rdparty/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc +@@ -69,6 +69,10 @@ bool StructTraits<viz::mojom::BitmapInSharedMemoryDataView, SkBitmap>::Read( + if (!mapping_ptr->IsValid()) + return false; + ++ if (mapping_ptr->size() < image_info.computeByteSize(data.row_bytes())) { ++ return false; ++ } ++ + if (!sk_bitmap->installPixels(image_info, mapping_ptr->memory(), + data.row_bytes(), &DeleteSharedMemoryMapping, + mapping_ptr.get())) { +From 060d3aa868d6f4403a9416fe34b48ffbfcfe19cb Mon Sep 17 00:00:00 2001 +From: Shahbaz Youssefi <syoussefi@chromium.org> +Date: Mon, 25 Mar 2024 14:46:56 -0400 +Subject: [PATCH] [Backport] CVE-2024-3516: Heap buffer overflow in ANGLE + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/angle/angle/+/5391986: +Translator: Disallow samplers in structs in interface blocks + +As disallowed by the spec: + +> Types and declarators are the same as for other uniform variable +> declarations outside blocks, with these exceptions: +> +> * opaque types are not allowed + +Bug: chromium:328859176 +Change-Id: Ib94977860102329e520e635c3757827c93ca2163 +Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5391986 +Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> +Reviewed-by: Geoff Lang <geofflang@chromium.org> +Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554670 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../src/compiler/translator/ParseContext.cpp | 33 ++++++++++++------- + 1 file changed, 21 insertions(+), 12 deletions(-) + +diff --git a/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp b/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp +index 84a0c8fd9e0d..3e8a4a71ff67 100644 +--- src/3rdparty/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp ++++ src/3rdparty/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp +@@ -34,27 +34,39 @@ namespace + + const int kWebGLMaxStructNesting = 4; + +-bool ContainsSampler(const TStructure *structType); ++struct IsSamplerFunc ++{ ++ bool operator()(TBasicType type) { return IsSampler(type); } ++}; ++struct IsOpaqueFunc ++{ ++ bool operator()(TBasicType type) { return IsOpaqueType(type); } ++}; ++ ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TStructure *structType); + +-bool ContainsSampler(const TType &type) ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TType &type) + { +- if (IsSampler(type.getBasicType())) ++ if (OpaqueFunc{}(type.getBasicType())) + { + return true; + } + if (type.getBasicType() == EbtStruct) + { +- return ContainsSampler(type.getStruct()); ++ return ContainsOpaque<OpaqueFunc>(type.getStruct()); + } + + return false; + } + +-bool ContainsSampler(const TStructure *structType) ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TStructure *structType) + { + for (const auto &field : structType->fields()) + { +- if (ContainsSampler(*field->type())) ++ if (ContainsOpaque<OpaqueFunc>(*field->type())) + return true; + } + return false; +@@ -915,7 +927,7 @@ bool TParseContext::checkIsNotOpaqueType(const TSourceLoc &line, + { + if (pType.type == EbtStruct) + { +- if (ContainsSampler(pType.userDef)) ++ if (ContainsOpaque<IsSamplerFunc>(pType.userDef)) + { + std::stringstream reasonStream = sh::InitializeStream<std::stringstream>(); + reasonStream << reason << " (structure contains a sampler)"; +@@ -3900,12 +3912,9 @@ TIntermDeclaration *TParseContext::addInterfaceBlock( + { + TField *field = (*fieldList)[memberIndex]; + TType *fieldType = field->type(); +- if (IsOpaqueType(fieldType->getBasicType())) ++ if (ContainsOpaque<IsOpaqueFunc>(*fieldType)) + { +- std::string reason("unsupported type - "); +- reason += fieldType->getBasicString(); +- reason += " types are not allowed in interface blocks"; +- error(field->line(), reason.c_str(), fieldType->getBasicString()); ++ error(field->line(), "Opaque types are not allowed in interface blocks", blockName); + } + + const TQualifier qualifier = fieldType->getQualifier(); diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn index f30e7619d0fe..f46db9015e19 100644 --- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn @@ -1,9 +1,27 @@ ---- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2021-12-15 16:12:54 UTC +--- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2024-03-26 14:47:34 UTC +++ src/3rdparty/chromium/content/browser/BUILD.gn -@@ -2090,6 +2090,15 @@ jumbo_static_library("browser") { +@@ -9,6 +9,7 @@ import("//chromeos/assistant/assistant.gni") + import("//build/config/linux/pangocairo/pangocairo.gni") + import("//build/config/ui.gni") + import("//chromeos/assistant/assistant.gni") ++import("//components/spellcheck/spellcheck_build_features.gni") + import("//components/ui_devtools/devtools.gni") + import("//content/common/features.gni") + import("//content/public/common/zygote/features.gni") +@@ -166,6 +167,7 @@ jumbo_static_library("browser") { + "//components/services/storage/dom_storage:local_storage_proto", + "//components/services/storage/public/cpp", + "//components/services/storage/public/mojom", ++ "//components/spellcheck:buildflags", + "//components/system_media_controls", + "//components/tracing:startup_tracing", + "//components/ui_devtools", +@@ -2088,6 +2090,15 @@ jumbo_static_library("browser") { + if (is_desktop_linux && enable_web_speech) { + sources += [ "speech/tts_linux.cc" ] deps += [ "//third_party/speech-dispatcher" ] - } - ++ } ++ + if (is_bsd) { + sources -= [ + "sandbox_host_linux.cc", @@ -11,8 +29,6 @@ + "sandbox_ipc_linux.cc", + "sandbox_ipc_linux.h", + ] -+ } -+ + } + # ChromeOS also defines linux but their memory-monitors conflict. - if (is_chromeos) { - sources += [ diff --git a/www/qt6-httpserver/distinfo b/www/qt6-httpserver/distinfo index f14fe9dc69fc..3034098790ec 100644 --- a/www/qt6-httpserver/distinfo +++ b/www/qt6-httpserver/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711663494 -SHA256 (KDE/Qt/6.6.3/qthttpserver-everywhere-src-6.6.3.tar.xz) = 41ac78d745d00eef1c3866dda5119d3649a64fa08d44d72d89b83aeecde87835 -SIZE (KDE/Qt/6.6.3/qthttpserver-everywhere-src-6.6.3.tar.xz) = 162228 +TIMESTAMP = 1712114591 +SHA256 (KDE/Qt/6.7.0/qthttpserver-everywhere-src-6.7.0.tar.xz) = c2e2e38b2b21537eeef20d097bb5f216081462c44b78d63045e60d6fd9f89bfa +SIZE (KDE/Qt/6.7.0/qthttpserver-everywhere-src-6.7.0.tar.xz) = 163044 diff --git a/www/qt6-webchannel/distinfo b/www/qt6-webchannel/distinfo index f0fb96133280..efd443f28aec 100644 --- a/www/qt6-webchannel/distinfo +++ b/www/qt6-webchannel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711663498 -SHA256 (KDE/Qt/6.6.3/qtwebchannel-everywhere-src-6.6.3.tar.xz) = 7c7b2ae5d1b496f76a7ece3ac5728a8d209af4ac7853207dbc01a4982f718c33 -SIZE (KDE/Qt/6.6.3/qtwebchannel-everywhere-src-6.6.3.tar.xz) = 206396 +TIMESTAMP = 1712114594 +SHA256 (KDE/Qt/6.7.0/qtwebchannel-everywhere-src-6.7.0.tar.xz) = 26bfbd404e0c82bfbeeaef81796eb7a7cf931c5c1a5e942a315ca7126322efff +SIZE (KDE/Qt/6.7.0/qtwebchannel-everywhere-src-6.7.0.tar.xz) = 206600 diff --git a/www/qt6-webengine/Makefile b/www/qt6-webengine/Makefile index e78bd490a6a5..b6f2d157f127 100644 --- a/www/qt6-webengine/Makefile +++ b/www/qt6-webengine/Makefile @@ -101,10 +101,11 @@ DO_MAKE_BUILD= ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} -j1 $ BINARY_ALIAS= python3=${PYTHON_CMD} .if !defined(BUILD_QTPDF) -OPTIONS_DEFINE= CUPS -OPTIONS_DEFAULT= ALSA CUPS +OPTIONS_DEFINE= CUPS DRIVER +OPTIONS_DEFAULT= ALSA CUPS DRIVER OPTIONS_SINGLE= AUDIO OPTIONS_SINGLE_AUDIO= ALSA PULSEAUDIO SNDIO +OPTIONS_SUB= yes AUDIO_DESC= Audio backend @@ -122,6 +123,10 @@ CUPS_LIB_DEPENDS= libcups.so:print/cups \ CUPS_CMAKE_ON= -DQT_FEATURE_webengine_printing_and_pdf:BOOL=ON CUPS_CMAKE_OFF= -DQT_FEATURE_webengine_printing_and_pdf:BOOL=OFF +DRIVER_DESC= Install WebEngineDriver +DRIVER_CMAKE_ON= -DQT_FEATURE_webenginedriver:BOOL=ON +DRIVER_CMAKE_OFF= -DQT_FEATURE_webenginedriver:BOOL=OFF + PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_ON= -DQT_FEATURE_webengine_system_pulseaudio:BOOL=ON PULSEAUDIO_CMAKE_OFF= -DQT_FEATURE_webengine_system_pulseaudio:BOOL=OFF @@ -165,4 +170,15 @@ pre-configure: ./build/linux/unbundle/replace_gn_files.py --system-libraries \ ${SYS_LIBS} || ${FALSE} +.if !defined(BUILD_QTPDF) +post-install: +# Fix for deskutils/calibre, perhaps others, where this empty directory +# is created during build causing a fs-violation. + ${MKDIR} ${STAGEDIR}${QT_DATADIR}/resources/locales + +post-install-DRIVER-on: + ${STRIP_CMD} ${STAGEDIR}${QT_TOOLDIR}/webenginedriver + +.endif + .include <bsd.port.post.mk> diff --git a/www/qt6-webengine/distinfo b/www/qt6-webengine/distinfo index f963466e7f5c..a6a5a71622f1 100644 --- a/www/qt6-webengine/distinfo +++ b/www/qt6-webengine/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711664649 -SHA256 (KDE/Qt/6.6.3/qtwebengine-everywhere-src-6.6.3.tar.xz) = 7c2bdc83b21b82a179a7bf098df47ebf66ba7693d67ebda55a4a28d9eadad804 -SIZE (KDE/Qt/6.6.3/qtwebengine-everywhere-src-6.6.3.tar.xz) = 421076320 +TIMESTAMP = 1712115499 +SHA256 (KDE/Qt/6.7.0/qtwebengine-everywhere-src-6.7.0.tar.xz) = 1a5ba443635dc1f439ab802ac6d761b8def5ebb24e5219bb7289288e72c147de +SIZE (KDE/Qt/6.7.0/qtwebengine-everywhere-src-6.7.0.tar.xz) = 550907592 diff --git a/www/qt6-webengine/files/patch-cmake_Functions.cmake b/www/qt6-webengine/files/patch-cmake_Functions.cmake index 7dcc0eee40f7..e4c938996ef3 100644 --- a/www/qt6-webengine/files/patch-cmake_Functions.cmake +++ b/www/qt6-webengine/files/patch-cmake_Functions.cmake @@ -1,4 +1,4 @@ ---- cmake/Functions.cmake.orig 2024-02-10 00:23:21 UTC +--- cmake/Functions.cmake.orig 2024-02-10 00:27:53 UTC +++ cmake/Functions.cmake @@ -416,7 +416,7 @@ function(add_linker_options target buildDir completeSt set(libs_rsp "${buildDir}/${ninjaTarget}_libs.rsp") @@ -9,7 +9,7 @@ get_gn_arch(cpu ${TEST_architecture_arch}) if(CMAKE_CROSSCOMPILING AND cpu STREQUAL "arm" AND ${config} STREQUAL "Debug") target_link_options(${cmakeTarget} PRIVATE "LINKER:--long-plt") -@@ -673,6 +673,8 @@ function(get_gn_os result) +@@ -675,6 +675,8 @@ function(get_gn_os result) set(${result} "mac" PARENT_SCOPE) elseif(IOS) set(${result} "ios" PARENT_SCOPE) @@ -18,7 +18,7 @@ else() message(DEBUG "Unrecognized OS") endif() -@@ -865,7 +867,7 @@ macro(append_build_type_setup) +@@ -878,7 +880,7 @@ macro(append_build_type_setup) extend_gn_list(gnArgArg ARGS enable_precompiled_headers @@ -27,7 +27,7 @@ ) extend_gn_list(gnArgArg ARGS dcheck_always_on -@@ -917,7 +919,7 @@ macro(append_compiler_linker_sdk_setup) +@@ -932,7 +934,7 @@ macro(append_compiler_linker_sdk_setup) use_libcxx=true ) endif() @@ -36,7 +36,7 @@ extend_gn_list(gnArgArg ARGS use_libcxx CONDITION QT_FEATURE_stdlib_libcpp ) -@@ -955,7 +957,7 @@ macro(append_compiler_linker_sdk_setup) +@@ -970,7 +972,7 @@ macro(append_compiler_linker_sdk_setup) ) endif() get_gn_arch(cpu ${TEST_architecture_arch}) @@ -45,7 +45,7 @@ extend_gn_list_cflag(gnArgArg ARG arm_tune -@@ -1040,7 +1042,7 @@ macro(append_toolchain_setup) +@@ -1060,7 +1062,7 @@ macro(append_toolchain_setup) host_cpu="${cpu}" ) endif() @@ -54,16 +54,7 @@ get_gn_arch(cpu ${TEST_architecture_arch}) list(APPEND gnArgArg custom_toolchain="${buildDir}/target_toolchain:target" -@@ -1073,7 +1075,7 @@ macro(append_pkg_config_setup) - - - macro(append_pkg_config_setup) -- if(LINUX) -+ if(LINUX OR FREEBSD) - list(APPEND gnArgArg - pkg_config="${PKG_CONFIG_EXECUTABLE}" - host_pkg_config="${PKG_CONFIG_HOST_EXECUTABLE}" -@@ -1166,6 +1168,20 @@ function(add_gn_build_artifacts_to_target) +@@ -1198,6 +1200,20 @@ function(add_gn_build_artifacts_to_target) set_target_properties(${arg_CMAKE_TARGET} PROPERTIES LINK_DEPENDS ${arg_BUILDDIR}/${config}/${arch}/${arg_NINJA_STAMP} ) @@ -84,7 +75,7 @@ if(QT_IS_MACOS_UNIVERSAL) add_intermediate_archive(${target} ${arg_BUILDDIR}/${config}/${arch} ${arg_COMPLETE_STATIC}) elseif(IOS) -@@ -1283,7 +1299,7 @@ function(check_for_ulimit) +@@ -1313,7 +1329,7 @@ function(check_for_ulimit) function(check_for_ulimit) message("-- Checking 'ulimit -n'") @@ -93,7 +84,7 @@ OUTPUT_VARIABLE ulimitOutput ) string(REGEX MATCHALL "[0-9]+" limit "${ulimitOutput}") -@@ -1292,7 +1308,7 @@ function(check_for_ulimit) +@@ -1322,7 +1338,7 @@ function(check_for_ulimit) if(NOT ${CMAKE_VERSION} VERSION_LESS "3.21.0") message(" -- Creating linker launcher") file(GENERATE OUTPUT ${PROJECT_BINARY_DIR}/linker_ulimit.sh diff --git a/www/qt6-webengine/files/patch-configure.cmake b/www/qt6-webengine/files/patch-configure.cmake index ff2e426fbc47..7fdd8b60d800 100644 --- a/www/qt6-webengine/files/patch-configure.cmake +++ b/www/qt6-webengine/files/patch-configure.cmake @@ -1,6 +1,6 @@ ---- configure.cmake.orig 2024-02-10 00:23:21 UTC +--- configure.cmake.orig 2023-12-12 22:08:45 UTC +++ configure.cmake -@@ -67,7 +67,7 @@ endif() +@@ -68,7 +68,7 @@ endif() endif() #### Tests @@ -9,7 +9,7 @@ check_for_ulimit() endif() -@@ -427,7 +427,7 @@ qt_feature("webengine-ozone-x11" PRIVATE +@@ -428,7 +428,7 @@ qt_feature("webengine-ozone-x11" PRIVATE qt_feature("webengine-ozone-x11" PRIVATE LABEL "Support GLX on qpa-xcb" @@ -18,7 +18,7 @@ AND TARGET Qt::Gui AND QT_FEATURE_xcb AND X11_FOUND -@@ -464,12 +464,12 @@ add_check_for_support( +@@ -465,12 +465,12 @@ add_check_for_support( ) add_check_for_support( MODULES QtWebEngine @@ -28,9 +28,9 @@ ) add_check_for_support( MODULES QtPdf -- CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS OR (ANDROID AND NOT CMAKE_HOST_WIN32) -+ CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS OR (ANDROID AND NOT CMAKE_HOST_WIN32) OR FREEBSD - MESSAGE "Build can be done only on Linux, Windows, macO, iOS and Android(on non-Windows hosts only)." +- CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS OR ANDROID ++ CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS OR ANDROID OR FREEBSD + MESSAGE "Build can be done only on Linux, Windows, macO, iOS and Android." ) if(LINUX AND CMAKE_CROSSCOMPILING) @@ -492,13 +492,6 @@ add_check_for_support( diff --git a/www/qt6-webengine/files/patch-security-rollup b/www/qt6-webengine/files/patch-security-rollup index cc5eefd44e79..a3d1a6bc69d2 100644 --- a/www/qt6-webengine/files/patch-security-rollup +++ b/www/qt6-webengine/files/patch-security-rollup @@ -3,6 +3,34 @@ Add security patches to this file. Addresses the following security issues: - CVE-2023-7104 +- CVE-2024-2625 +- CVE-2024-2626 +- Security bug 40066823 +- Security bug 41495984 +- CVE-2024-2885 +- CVE-2024-2887 +- Security bug 329674887 +- Security bug 327183408 +- CVE-2024-3159 +- Security bug 326349405 +- CVE-2024-3157 +- CVE-2024-3516 +- Security bug 326521449 +- CVE-2024-3839 +- CVE-2024-3837 +- Security bug 327698060 +- Security bug 40940917 +- CVE-2024-3914 +- Security bug 326498393 +- CVE-2024-3840 +- Security bug 323898565 +- CVE-2024-4058 +- CVE-2024-4060 +- Security bug 332724843 +- CVE-2024-4331 +- CVE-2024-4368 +- CVE-2024-4671 +- Security bug 339458194 From b8c9622b71d032a48412e342cff91fc0f3f5e3d9 Mon Sep 17 00:00:00 2001 From: Michal Klocek <michal.klocek@qt.io> @@ -56,3 +84,6008 @@ index b353aa88348..a0feb5d200c 100644 } } } +From a907a6cbc18a04d791b0c97918a558d49f696cd4 Mon Sep 17 00:00:00 2001 +From: Shu-yu Guo <syg@chromium.org> +Date: Thu, 7 Mar 2024 14:55:28 -0800 +Subject: [PATCH] [Backport] CVE-2024-2625: Object lifecycle issue in V8 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/v8/v8/+/5350482: +Fix home object proxy to work off-thread + +Because the home object has special scope lookup rules due to class +heritage position, VariableProxies of the home object are currently +directly created on the correct scope during parsing. However, during +off-thread parsing the main thread is parked, and the correct scope +may try to dereference a main-thread Handle. + +This CL moves the logic into ResolveVariable instead, which happens +during postprocessing, with the main thread unparked. + +Fixed: chromium:327740539 +Change-Id: I3a123d5e37b6764067e58255dd5a67c07e648d02 +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5350482 +Reviewed-by: Marja H旦ltt辰 <marja@chromium.org> +Commit-Queue: Marja H旦ltt辰 <marja@chromium.org> +Auto-Submit: Shu-yu Guo <syg@chromium.org> +Cr-Commit-Position: refs/heads/main@{#92722} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/551089 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + chromium/v8/src/ast/ast.h | 10 +++- + chromium/v8/src/ast/scopes.cc | 78 ++++++++++++--------------- + chromium/v8/src/ast/scopes.h | 7 +-- + chromium/v8/src/parsing/parser-base.h | 4 +- + chromium/v8/src/parsing/parser.cc | 11 ++-- + chromium/v8/src/parsing/parser.h | 2 +- + chromium/v8/src/parsing/preparser.h | 3 +- + 7 files changed, 52 insertions(+), 63 deletions(-) + +diff --git a/chromium/v8/src/ast/ast.h b/chromium/v8/src/ast/ast.h +index cf9d52eeed6..7bb30723607 100644 +--- src/3rdparty/chromium/v8/src/ast/ast.h ++++ src/3rdparty/chromium/v8/src/ast/ast.h +@@ -1534,6 +1534,12 @@ class VariableProxy final : public Expression { + bit_field_ = IsRemovedFromUnresolvedField::update(bit_field_, true); + } + ++ bool is_home_object() const { return IsHomeObjectField::decode(bit_field_); } ++ ++ void set_is_home_object() { ++ bit_field_ = IsHomeObjectField::update(bit_field_, true); ++ } ++ + // Provides filtered access to the unresolved variable proxy threaded list. + struct UnresolvedNext { + static VariableProxy** filter(VariableProxy** t) { +@@ -1565,6 +1571,7 @@ class VariableProxy final : public Expression { + bit_field_ |= IsAssignedField::encode(false) | + IsResolvedField::encode(false) | + IsRemovedFromUnresolvedField::encode(false) | ++ IsHomeObjectField::encode(false) | + HoleCheckModeField::encode(HoleCheckMode::kElided); + } + +@@ -1574,7 +1581,8 @@ class VariableProxy final : public Expression { + using IsResolvedField = IsAssignedField::Next<bool, 1>; + using IsRemovedFromUnresolvedField = IsResolvedField::Next<bool, 1>; + using IsNewTargetField = IsRemovedFromUnresolvedField::Next<bool, 1>; +- using HoleCheckModeField = IsNewTargetField::Next<HoleCheckMode, 1>; ++ using IsHomeObjectField = IsNewTargetField::Next<bool, 1>; ++ using HoleCheckModeField = IsHomeObjectField::Next<HoleCheckMode, 1>; + + union { + const AstRawString* raw_name_; // if !is_resolved_ +diff --git a/chromium/v8/src/ast/scopes.cc b/chromium/v8/src/ast/scopes.cc +index 003bd0f2736..34415941556 100644 +--- src/3rdparty/chromium/v8/src/ast/scopes.cc ++++ src/3rdparty/chromium/v8/src/ast/scopes.cc +@@ -491,7 +491,6 @@ Scope* Scope::DeserializeScopeChain(IsolateT* isolate, Zone* zone, + if (cache_scope_found) { + outer_scope->set_deserialized_scope_uses_external_cache(); + } else { +- DCHECK(!cache_scope_found); + cache_scope_found = + outer_scope->is_declaration_scope() && !outer_scope->is_eval_scope(); + } +@@ -970,9 +969,14 @@ Variable* Scope::LookupInScopeInfo(const AstRawString* name, Scope* cache) { + DCHECK(!cache->deserialized_scope_uses_external_cache()); + // The case where where the cache can be another scope is when the cache scope + // is the last scope that doesn't use an external cache. ++ // ++ // The one exception to this is when looking up the home object, which may ++ // skip multiple scopes that don't use an external cache (e.g., several arrow ++ // functions). + DCHECK_IMPLIES( + cache != this, +- cache->outer_scope()->deserialized_scope_uses_external_cache()); ++ cache->outer_scope()->deserialized_scope_uses_external_cache() || ++ cache->GetHomeObjectScope() == this); + DCHECK_NULL(cache->variables_.Lookup(name)); + DisallowGarbageCollection no_gc; + +@@ -2282,7 +2286,33 @@ Variable* Scope::LookupSloppyEval(VariableProxy* proxy, Scope* scope, + + void Scope::ResolveVariable(VariableProxy* proxy) { + DCHECK(!proxy->is_resolved()); +- Variable* var = Lookup<kParsedScope>(proxy, this, nullptr); ++ Variable* var; ++ if (V8_UNLIKELY(proxy->is_home_object())) { ++ // VariableProxies of the home object cannot be resolved like a normal ++ // variable. Consider the case of a super.property usage in heritage ++ // position: ++ // ++ // class C extends super.foo { m() { super.bar(); } } ++ // ++ // The super.foo property access is logically nested under C's class scope, ++ // which also has a home object due to its own method m's usage of ++ // super.bar(). However, super.foo must resolve super in C's outer scope. ++ // ++ // Because of the above, start resolving home objects directly at the home ++ // object scope instead of the current scope. ++ Scope* scope = GetDeclarationScope()->GetHomeObjectScope(); ++ DCHECK_NOT_NULL(scope); ++ if (scope->scope_info_.is_null()) { ++ var = Lookup<kParsedScope>(proxy, scope, nullptr); ++ } else { ++ Scope* entry_cache = scope->deserialized_scope_uses_external_cache() ++ ? GetNonEvalDeclarationScope() ++ : scope; ++ var = Lookup<kDeserializedScope>(proxy, scope, nullptr, entry_cache); ++ } ++ } else { ++ var = Lookup<kParsedScope>(proxy, this, nullptr); ++ } + DCHECK_NOT_NULL(var); + ResolveTo(proxy, var); + } +@@ -2752,48 +2782,6 @@ int Scope::ContextLocalCount() const { + (is_function_var_in_context ? 1 : 0); + } + +-VariableProxy* Scope::NewHomeObjectVariableProxy(AstNodeFactory* factory, +- const AstRawString* name, +- int start_pos) { +- // VariableProxies of the home object cannot be resolved like a normal +- // variable. Consider the case of a super.property usage in heritage position: +- // +- // class C extends super.foo { m() { super.bar(); } } +- // +- // The super.foo property access is logically nested under C's class scope, +- // which also has a home object due to its own method m's usage of +- // super.bar(). However, super.foo must resolve super in C's outer scope. +- // +- // Because of the above, home object VariableProxies are always made directly +- // on the Scope that needs the home object instead of the innermost scope. +- DCHECK(needs_home_object()); +- if (!scope_info_.is_null()) { +- // This is a lazy compile, so the home object's context slot is already +- // known. +- Variable* home_object = variables_.Lookup(name); +- if (home_object == nullptr) { +- VariableLookupResult lookup_result; +- int index = scope_info_->ContextSlotIndex(name->string(), &lookup_result); +- DCHECK_GE(index, 0); +- bool was_added; +- home_object = variables_.Declare(zone(), this, name, lookup_result.mode, +- NORMAL_VARIABLE, lookup_result.init_flag, +- lookup_result.maybe_assigned_flag, +- IsStaticFlag::kNotStatic, &was_added); +- DCHECK(was_added); +- home_object->AllocateTo(VariableLocation::CONTEXT, index); +- } +- return factory->NewVariableProxy(home_object, start_pos); +- } +- // This is not a lazy compile. Add the unresolved home object VariableProxy to +- // the unresolved list of the home object scope, which is not necessarily the +- // innermost scope. +- VariableProxy* proxy = +- factory->NewVariableProxy(name, NORMAL_VARIABLE, start_pos); +- AddUnresolved(proxy); +- return proxy; +-} +- + bool IsComplementaryAccessorPair(VariableMode a, VariableMode b) { + switch (a) { + case VariableMode::kPrivateGetterOnly: +diff --git a/chromium/v8/src/ast/scopes.h b/chromium/v8/src/ast/scopes.h +index b4c2e8b2136..751aaee3d11 100644 +--- src/3rdparty/chromium/v8/src/ast/scopes.h ++++ src/3rdparty/chromium/v8/src/ast/scopes.h +@@ -603,10 +603,6 @@ class V8_EXPORT_PRIVATE Scope : public NON_EXPORTED_BASE(ZoneObject) { + needs_home_object_ = true; + } + +- VariableProxy* NewHomeObjectVariableProxy(AstNodeFactory* factory, +- const AstRawString* name, +- int start_pos); +- + bool RemoveInnerScope(Scope* inner_scope) { + DCHECK_NOT_NULL(inner_scope); + if (inner_scope == inner_scope_) { +@@ -865,7 +861,7 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { + FunctionKind function_kind() const { return function_kind_; } + + // Inform the scope that the corresponding code uses "super". +- Scope* RecordSuperPropertyUsage() { ++ void RecordSuperPropertyUsage() { + DCHECK(IsConciseMethod(function_kind()) || + IsAccessorFunction(function_kind()) || + IsClassConstructor(function_kind())); +@@ -873,7 +869,6 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { + Scope* home_object_scope = GetHomeObjectScope(); + DCHECK_NOT_NULL(home_object_scope); + home_object_scope->set_needs_home_object(); +- return home_object_scope; + } + + bool uses_super_property() const { return uses_super_property_; } +diff --git a/chromium/v8/src/parsing/parser-base.h b/chromium/v8/src/parsing/parser-base.h +index 66e531dfe78..714406f6aa5 100644 +--- src/3rdparty/chromium/v8/src/parsing/parser-base.h ++++ src/3rdparty/chromium/v8/src/parsing/parser-base.h +@@ -3800,9 +3800,9 @@ ParserBase<Impl>::ParseSuperExpression() { + impl()->ReportMessage(MessageTemplate::kOptionalChainingNoSuper); + return impl()->FailureExpression(); + } +- Scope* home_object_scope = scope->RecordSuperPropertyUsage(); ++ scope->RecordSuperPropertyUsage(); + UseThis(); +- return impl()->NewSuperPropertyReference(home_object_scope, pos); ++ return impl()->NewSuperPropertyReference(pos); + } + // super() is only allowed in derived constructor. new super() is never + // allowed; it's reported as an error by +diff --git a/chromium/v8/src/parsing/parser.cc b/chromium/v8/src/parsing/parser.cc +index da16f85234d..5e4b2d0461a 100644 +--- src/3rdparty/chromium/v8/src/parsing/parser.cc ++++ src/3rdparty/chromium/v8/src/parsing/parser.cc +@@ -300,18 +300,17 @@ Expression* Parser::NewThrowError(Runtime::FunctionId id, + return factory()->NewThrow(call_constructor, pos); + } + +-Expression* Parser::NewSuperPropertyReference(Scope* home_object_scope, +- int pos) { ++Expression* Parser::NewSuperPropertyReference(int pos) { + const AstRawString* home_object_name; + if (IsStatic(scope()->GetReceiverScope()->function_kind())) { + home_object_name = ast_value_factory_->dot_static_home_object_string(); + } else { + home_object_name = ast_value_factory_->dot_home_object_string(); + } +- return factory()->NewSuperPropertyReference( +- home_object_scope->NewHomeObjectVariableProxy(factory(), home_object_name, +- pos), +- pos); ++ ++ VariableProxy* proxy = NewUnresolved(home_object_name, pos); ++ proxy->set_is_home_object(); ++ return factory()->NewSuperPropertyReference(proxy, pos); + } + + Expression* Parser::NewSuperCallReference(int pos) { +diff --git a/chromium/v8/src/parsing/parser.h b/chromium/v8/src/parsing/parser.h +index 8aede5d6a2c..0e92f0350b5 100644 +--- src/3rdparty/chromium/v8/src/parsing/parser.h ++++ src/3rdparty/chromium/v8/src/parsing/parser.h +@@ -798,7 +798,7 @@ class V8_EXPORT_PRIVATE Parser : public NON_EXPORTED_BASE(ParserBase<Parser>) { + return factory()->NewThisExpression(pos); + } + +- Expression* NewSuperPropertyReference(Scope* home_object_scope, int pos); ++ Expression* NewSuperPropertyReference(int pos); + Expression* NewSuperCallReference(int pos); + Expression* NewTargetExpression(int pos); + Expression* ImportMetaExpression(int pos); +diff --git a/chromium/v8/src/parsing/preparser.h b/chromium/v8/src/parsing/preparser.h +index 6c4996bd06b..2ca6b9ac407 100644 +--- src/3rdparty/chromium/v8/src/parsing/preparser.h ++++ src/3rdparty/chromium/v8/src/parsing/preparser.h +@@ -1536,8 +1536,7 @@ class PreParser : public ParserBase<PreParser> { + return PreParserExpression::This(); + } + +- V8_INLINE PreParserExpression +- NewSuperPropertyReference(Scope* home_object_scope, int pos) { ++ V8_INLINE PreParserExpression NewSuperPropertyReference(int pos) { + return PreParserExpression::Default(); + } + +From c4661dc646e45d06961cda71d00814ce878dbd97 Mon Sep 17 00:00:00 2001 +From: Shahbaz Youssefi <syoussefi@google.com> +Date: Fri, 19 Jan 2024 15:36:25 -0500 +Subject: [PATCH] [Backport] CVE-2024-2626: Out of bounds read in Swiftshader + (1/2) + +Cherry-pick of patch originally reviewed on +https://swiftshader-review.googlesource.com/c/SwiftShader/+/72948: +Clamp LOD during image Fetch for robustness + +Bug: chromium:1504556 +Change-Id: Ie110fe4e1b065a815c09986ab91b1336ef4761ad +Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/72948 +Presubmit-Ready: Shahbaz Youssefi <syoussefi@google.com> +Kokoro-Result: kokoro <noreply+kokoro@google.com> +Reviewed-by: Ben Clayton <bclayton@google.com> +Commit-Queue: Ben Clayton <bclayton@google.com> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/551090 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../third_party/swiftshader/src/Pipeline/SamplerCore.cpp | 1 + + .../swiftshader/src/Pipeline/SpirvShaderSampling.cpp | 5 +++++ + chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp | 6 ++++-- + chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp | 3 +++ + 4 files changed, 13 insertions(+), 2 deletions(-) + +diff --git a/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp b/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp +index 403ed3bdd560..d62936273fa3 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp +@@ -133,6 +133,7 @@ Vector4f SamplerCore::sampleTexture128(Pointer<Byte> &texture, Float4 uvwa[4], c + { + // TODO: Eliminate int-float-int conversion. + lod = Float(As<Int>(lodOrBias)); ++ lod = Min(lod, state.maxLod); + } + else if(function == Base || function == Gather) + { +diff --git a/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp b/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp +index 5225a79f3ba6..777f73e43786 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp +@@ -108,6 +108,11 @@ SpirvEmitter::ImageSampler *SpirvEmitter::getImageSampler(const vk::Device *devi + samplerState.minLod = 0.0f; + samplerState.maxLod = 0.0f; + } ++ // Otherwise make sure LOD is clamped for robustness ++ else ++ { ++ samplerState.maxLod = imageViewState.maxLod; ++ } + } + else if(samplerMethod == Write) + { +diff --git a/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp b/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp +index 511c02cbbed9..26b69aef79b3 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp +@@ -89,13 +89,13 @@ Identifier::Identifier(const VkImageViewCreateInfo *pCreateInfo) + const Image *sampledImage = image->getSampledImage(viewFormat); + + vk::Format samplingFormat = (image == sampledImage) ? viewFormat : sampledImage->getFormat().getAspectFormat(subresource.aspectMask); +- pack({ pCreateInfo->viewType, samplingFormat, ResolveComponentMapping(pCreateInfo->components, viewFormat), subresource.levelCount <= 1u }); ++ pack({ pCreateInfo->viewType, samplingFormat, ResolveComponentMapping(pCreateInfo->components, viewFormat), static_cast<uint8_t>(subresource.baseMipLevel + subresource.levelCount), subresource.levelCount <= 1u }); + } + + Identifier::Identifier(VkFormat bufferFormat) + { + constexpr VkComponentMapping identityMapping = { VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_A }; +- pack({ VK_IMAGE_VIEW_TYPE_1D, bufferFormat, ResolveComponentMapping(identityMapping, bufferFormat), true }); ++ pack({ VK_IMAGE_VIEW_TYPE_1D, bufferFormat, ResolveComponentMapping(identityMapping, bufferFormat), 1, true }); + } + + void Identifier::pack(const State &state) +@@ -106,6 +106,7 @@ void Identifier::pack(const State &state) + g = static_cast<uint32_t>(state.mapping.g); + b = static_cast<uint32_t>(state.mapping.b); + a = static_cast<uint32_t>(state.mapping.a); ++ maxLod = state.maxLod; + singleMipLevel = state.singleMipLevel; + } + +@@ -117,6 +118,7 @@ Identifier::State Identifier::getState() const + static_cast<VkComponentSwizzle>(g), + static_cast<VkComponentSwizzle>(b), + static_cast<VkComponentSwizzle>(a) }, ++ static_cast<uint8_t>(maxLod), + static_cast<bool>(singleMipLevel) }; + } + +diff --git a/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp b/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp +index bf4d666a425d..5acb89639c12 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp +@@ -53,6 +53,7 @@ union Identifier + VkImageViewType imageViewType; + VkFormat format; + VkComponentMapping mapping; ++ uint8_t maxLod; + bool singleMipLevel; + }; + State getState() const; +@@ -61,6 +62,7 @@ union Identifier + void pack(const State &data); + + // Identifier is a union of this struct and the integer below. ++ static_assert(sw::MIPMAP_LEVELS <= 15); + struct + { + uint32_t imageViewType : 3; +@@ -69,6 +71,7 @@ union Identifier + uint32_t g : 3; + uint32_t b : 3; + uint32_t a : 3; ++ uint32_t maxLod : 4; + uint32_t singleMipLevel : 1; + }; + +From a58826b55d30045bed8793dbcd20dc32a73716e2 Mon Sep 17 00:00:00 2001 +From: Shahbaz Youssefi <syoussefi@google.com> +Date: Mon, 22 Jan 2024 09:49:16 -0500 +Subject: [PATCH] [Backport] CVE-2024-2626: Out of bounds read in Swiftshader + (2/2) + +Cherry-pick of patch originally reviewed on +https://swiftshader-review.googlesource.com/c/SwiftShader/+/72968: +Clamp min LOD during image Fetch for robustness + +The previous change clamped max LOD only, but min LOD also needs +clamping because texelFetch takes an `int` as LOD instead of `uint`. + +Bug: chromium:1504556 +Change-Id: Ibae8250a877b3e04b71fac45a40b77c78756d6c8 +Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/72968 +Kokoro-Result: kokoro <noreply+kokoro@google.com> +Reviewed-by: Ben Clayton <bclayton@google.com> +Commit-Queue: Shahbaz Youssefi <syoussefi@google.com> +Presubmit-Ready: Shahbaz Youssefi <syoussefi@google.com> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/551091 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../third_party/swiftshader/src/Pipeline/SamplerCore.cpp | 1 + + .../swiftshader/src/Pipeline/SpirvShaderSampling.cpp | 1 + + .../third_party/swiftshader/src/Vulkan/VkImageView.cpp | 8 ++++++-- + .../third_party/swiftshader/src/Vulkan/VkImageView.hpp | 2 ++ + 4 files changed, 10 insertions(+), 2 deletions(-) + +diff --git a/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp b/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp +index d62936273fa..ab55c036a3f 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SamplerCore.cpp +@@ -133,6 +133,7 @@ Vector4f SamplerCore::sampleTexture128(Pointer<Byte> &texture, Float4 uvwa[4], c + { + // TODO: Eliminate int-float-int conversion. + lod = Float(As<Int>(lodOrBias)); ++ lod = Max(lod, state.minLod); + lod = Min(lod, state.maxLod); + } + else if(function == Base || function == Gather) +diff --git a/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp b/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp +index 777f73e4378..fa88a192ab5 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Pipeline/SpirvShaderSampling.cpp +@@ -111,6 +111,7 @@ SpirvEmitter::ImageSampler *SpirvEmitter::getImageSampler(const vk::Device *devi + // Otherwise make sure LOD is clamped for robustness + else + { ++ samplerState.minLod = imageViewState.minLod; + samplerState.maxLod = imageViewState.maxLod; + } + } +diff --git a/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp b/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp +index 26b69aef79b..1b25544a57b 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.cpp +@@ -89,13 +89,15 @@ Identifier::Identifier(const VkImageViewCreateInfo *pCreateInfo) + const Image *sampledImage = image->getSampledImage(viewFormat); + + vk::Format samplingFormat = (image == sampledImage) ? viewFormat : sampledImage->getFormat().getAspectFormat(subresource.aspectMask); +- pack({ pCreateInfo->viewType, samplingFormat, ResolveComponentMapping(pCreateInfo->components, viewFormat), static_cast<uint8_t>(subresource.baseMipLevel + subresource.levelCount), subresource.levelCount <= 1u }); ++ pack({ pCreateInfo->viewType, samplingFormat, ResolveComponentMapping(pCreateInfo->components, viewFormat), ++ static_cast<uint8_t>(subresource.baseMipLevel), ++ static_cast<uint8_t>(subresource.baseMipLevel + subresource.levelCount), subresource.levelCount <= 1u }); + } + + Identifier::Identifier(VkFormat bufferFormat) + { + constexpr VkComponentMapping identityMapping = { VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_A }; +- pack({ VK_IMAGE_VIEW_TYPE_1D, bufferFormat, ResolveComponentMapping(identityMapping, bufferFormat), 1, true }); ++ pack({ VK_IMAGE_VIEW_TYPE_1D, bufferFormat, ResolveComponentMapping(identityMapping, bufferFormat), 0, 1, true }); + } + + void Identifier::pack(const State &state) +@@ -106,6 +108,7 @@ void Identifier::pack(const State &state) + g = static_cast<uint32_t>(state.mapping.g); + b = static_cast<uint32_t>(state.mapping.b); + a = static_cast<uint32_t>(state.mapping.a); ++ minLod = state.minLod; + maxLod = state.maxLod; + singleMipLevel = state.singleMipLevel; + } +@@ -118,6 +121,7 @@ Identifier::State Identifier::getState() const + static_cast<VkComponentSwizzle>(g), + static_cast<VkComponentSwizzle>(b), + static_cast<VkComponentSwizzle>(a) }, ++ static_cast<uint8_t>(minLod), + static_cast<uint8_t>(maxLod), + static_cast<bool>(singleMipLevel) }; + } +diff --git a/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp b/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp +index 5acb89639c1..25feebc9e7e 100644 +--- src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp ++++ src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkImageView.hpp +@@ -53,6 +53,7 @@ union Identifier + VkImageViewType imageViewType; + VkFormat format; + VkComponentMapping mapping; ++ uint8_t minLod; + uint8_t maxLod; + bool singleMipLevel; + }; +@@ -71,6 +72,7 @@ union Identifier + uint32_t g : 3; + uint32_t b : 3; + uint32_t a : 3; ++ uint32_t minLod : 4; + uint32_t maxLod : 4; + uint32_t singleMipLevel : 1; + }; +From 336b5c4a31f9f976434adb2ecf1697c764f097cf Mon Sep 17 00:00:00 2001 +From: rajendrant <rajendrant@chromium.org> +Date: Fri, 9 Feb 2024 17:29:51 +0000 +Subject: [PATCH] [Backport] Security bug 40066823 + +Manual partial backport of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5279279: +Remove holding local_state in model store + +Avoids holding on to local_state in model store, by getting the local state when needed from chrome/. This delinks model store lifetime with local state lifetime. + +Change-Id: Ifb036b43b8394202683d4ae1131ff1eae780fc17 +Fixed: 40066823 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5279279 +Reviewed-by: Sophie Chang <sophiechang@chromium.org> +Commit-Queue: Raj T <rajendrant@chromium.org> +Reviewed-by: Trevor Perrier <perrier@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1258580} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/551092 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../core/prediction_model_store.cc | 61 ++++++------------- + .../core/prediction_model_store.h | 28 +++------ + 2 files changed, 28 insertions(+), 61 deletions(-) + +diff --git a/chromium/components/optimization_guide/core/prediction_model_store.cc b/chromium/components/optimization_guide/core/prediction_model_store.cc +index d2252ea5cc4..a399ac06d7f 100644 +--- src/3rdparty/chromium/components/optimization_guide/core/prediction_model_store.cc ++++ src/3rdparty/chromium/components/optimization_guide/core/prediction_model_store.cc +@@ -155,12 +155,6 @@ void RecordModelStorageMetrics(const base::FilePath& base_store_dir) { + + } // namespace + +-// static +-PredictionModelStore* PredictionModelStore::GetInstance() { +- static base::NoDestructor<PredictionModelStore> model_store; +- return model_store.get(); +-} +- + PredictionModelStore::PredictionModelStore() + : background_task_runner_(base::ThreadPool::CreateSequencedTaskRunner( + {base::MayBlock(), base::TaskPriority::BEST_EFFORT})) { +@@ -169,19 +163,14 @@ PredictionModelStore::PredictionModelStore() + + PredictionModelStore::~PredictionModelStore() = default; + +-void PredictionModelStore::Initialize(PrefService* local_state, +- const base::FilePath& base_store_dir) { ++void PredictionModelStore::Initialize(const base::FilePath& base_store_dir) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- DCHECK(local_state); + DCHECK(!base_store_dir.empty()); + + // Should not be initialized already. +- DCHECK(!local_state_); + DCHECK(base_store_dir_.empty()); + +- local_state_ = local_state; + base_store_dir_ = base_store_dir; +- + PurgeInactiveModels(); + + // Clean up any model files that were slated for deletion in previous +@@ -189,29 +178,19 @@ void PredictionModelStore::Initialize(PrefService* local_state, + CleanUpOldModelFiles(); + + background_task_runner_->PostTask( +- FROM_HERE, +- base::BindOnce(&RemoveInvalidModelDirs, base_store_dir_, +- ModelStoreMetadataEntry::GetValidModelDirs(local_state_))); ++ FROM_HERE, base::BindOnce(&RemoveInvalidModelDirs, base_store_dir_, ++ ModelStoreMetadataEntry::GetValidModelDirs( ++ GetLocalState()))); + background_task_runner_->PostTask( + FROM_HERE, base::BindOnce(&RecordModelStorageMetrics, base_store_dir_)); + } + +-// static +-std::unique_ptr<PredictionModelStore> +-PredictionModelStore::CreatePredictionModelStoreForTesting( +- PrefService* local_state, +- const base::FilePath& base_store_dir) { +- auto store = base::WrapUnique(new PredictionModelStore()); +- store->Initialize(local_state, base_store_dir); +- return store; +-} +- + bool PredictionModelStore::HasModel( + proto::OptimizationTarget optimization_target, + const proto::ModelCacheKey& model_cache_key) const { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + auto metadata = ModelStoreMetadataEntry::GetModelMetadataEntryIfExists( +- local_state_, optimization_target, model_cache_key); ++ GetLocalState(), optimization_target, model_cache_key); + if (!metadata) { + return false; + } +@@ -226,7 +205,7 @@ bool PredictionModelStore::HasModelWithVersion( + int64_t version) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + auto metadata = ModelStoreMetadataEntry::GetModelMetadataEntryIfExists( +- local_state_, optimization_target, model_cache_key); ++ GetLocalState(), optimization_target, model_cache_key); + if (!metadata) { + return false; + } +@@ -251,7 +230,7 @@ void PredictionModelStore::LoadModel( + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + + auto metadata = ModelStoreMetadataEntry::GetModelMetadataEntryIfExists( +- local_state_, optimization_target, model_cache_key); ++ GetLocalState(), optimization_target, model_cache_key); + if (!metadata) { + std::move(callback).Run(nullptr); + return; +@@ -334,7 +313,7 @@ void PredictionModelStore::UpdateMetadataForExistingModel( + if (!HasModel(optimization_target, model_cache_key)) + return; + +- ModelStoreMetadataEntryUpdater metadata(local_state_, optimization_target, ++ ModelStoreMetadataEntryUpdater metadata(GetLocalState(), optimization_target, + model_cache_key); + DCHECK(!metadata.GetModelBaseDir()->IsAbsolute()); + metadata.SetVersion(model_info.version()); +@@ -357,7 +336,7 @@ void PredictionModelStore::UpdateModel( + DCHECK_EQ(optimization_target, model_info.optimization_target()); + DCHECK(base_store_dir_.IsParent(base_model_dir)); + +- ModelStoreMetadataEntryUpdater metadata(local_state_, optimization_target, ++ ModelStoreMetadataEntryUpdater metadata(GetLocalState(), optimization_target, + model_cache_key); + metadata.SetVersion(model_info.version()); + metadata.SetExpiryTime( +@@ -420,7 +399,7 @@ void PredictionModelStore::UpdateModelCacheKeyMapping( + const proto::ModelCacheKey& server_model_cache_key) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + ModelStoreMetadataEntryUpdater::UpdateModelCacheKeyMapping( +- local_state_, optimization_target, client_model_cache_key, ++ GetLocalState(), optimization_target, client_model_cache_key, + server_model_cache_key); + } + +@@ -429,13 +408,13 @@ void PredictionModelStore::RemoveModel( + const proto::ModelCacheKey& model_cache_key, + PredictionModelStoreModelRemovalReason model_remove_reason) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- if (!local_state_) { ++ if (!GetLocalState()) { + return; + } + + RecordPredictionModelStoreModelRemovalVersionHistogram(optimization_target, + model_remove_reason); +- ModelStoreMetadataEntryUpdater metadata(local_state_, optimization_target, ++ ModelStoreMetadataEntryUpdater metadata(GetLocalState(), optimization_target, + model_cache_key); + auto base_model_dir = metadata.GetModelBaseDir(); + if (base_model_dir) { +@@ -458,16 +437,17 @@ void PredictionModelStore::ScheduleModelDirRemoval( + base_model_dir.IsAbsolute() + ? ConvertToRelativePath(base_store_dir_, base_model_dir) + : base_model_dir; +- ScopedDictPrefUpdate pref_update(local_state_, ++ ScopedDictPrefUpdate pref_update(GetLocalState(), + prefs::localstate::kStoreFilePathsToDelete); + pref_update->Set(FilePathToString(relative_model_dir), true); + } + + void PredictionModelStore::PurgeInactiveModels() { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- DCHECK(local_state_); ++ DCHECK(GetLocalState()); + for (const auto& expired_model_dir : +- ModelStoreMetadataEntryUpdater::PurgeAllInactiveMetadata(local_state_)) { ++ ModelStoreMetadataEntryUpdater::PurgeAllInactiveMetadata( ++ GetLocalState())) { + // Backward compatibility: Model dirs were absolute in the earlier versions, + // and it was only in experiment. The latest versions use relative paths. + DCHECK(!expired_model_dir.IsAbsolute() || +@@ -485,9 +465,9 @@ void PredictionModelStore::PurgeInactiveModels() { + + void PredictionModelStore::CleanUpOldModelFiles() { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- DCHECK(local_state_); ++ DCHECK(GetLocalState()); + for (const auto entry : +- local_state_->GetDict(prefs::localstate::kStoreFilePathsToDelete)) { ++ GetLocalState()->GetDict(prefs::localstate::kStoreFilePathsToDelete)) { + // Backward compatibility: Model dirs were absolute in the earlier versions. + // The latest versions use relative paths. + auto path_to_delete = StringToFilePath(entry.first); +@@ -508,13 +488,13 @@ void PredictionModelStore::CleanUpOldModelFiles() { + void PredictionModelStore::OnFilePathDeleted(const std::string& path_to_delete, + bool success) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- DCHECK(local_state_); ++ DCHECK(GetLocalState()); + if (!success) { + // Try to delete again later. + return; + } + +- ScopedDictPrefUpdate pref_update(local_state_, ++ ScopedDictPrefUpdate pref_update(GetLocalState(), + prefs::localstate::kStoreFilePathsToDelete); + pref_update->Remove(path_to_delete); + } +@@ -527,7 +507,6 @@ base::FilePath PredictionModelStore::GetBaseStoreDirForTesting() const { + void PredictionModelStore::ResetForTesting() { + DETACH_FROM_SEQUENCE(sequence_checker_); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +- local_state_ = nullptr; + base_store_dir_ = base::FilePath(); + background_task_runner_ = base::ThreadPool::CreateSequencedTaskRunner( + {base::MayBlock(), base::TaskPriority::BEST_EFFORT}); +diff --git a/chromium/components/optimization_guide/core/prediction_model_store.h b/chromium/components/optimization_guide/core/prediction_model_store.h +index eb39780fd37..720e50dc128 100644 +--- src/3rdparty/chromium/components/optimization_guide/core/prediction_model_store.h ++++ src/3rdparty/chromium/components/optimization_guide/core/prediction_model_store.h +@@ -8,7 +8,6 @@ + #include "base/files/file_path.h" + #include "base/memory/scoped_refptr.h" + #include "base/memory/weak_ptr.h" +-#include "base/no_destructor.h" + #include "base/sequence_checker.h" + #include "base/task/sequenced_task_runner.h" + #include "base/values.h" +@@ -34,21 +33,15 @@ class PredictionModelStore { + using PredictionModelLoadedCallback = + base::OnceCallback<void(std::unique_ptr<proto::PredictionModel>)>; + +- // Returns the singleton model store. +- static PredictionModelStore* GetInstance(); +- +- static std::unique_ptr<PredictionModelStore> +- CreatePredictionModelStoreForTesting(PrefService* local_state, +- const base::FilePath& base_store_dir); ++ PredictionModelStore(); + +- // Initializes the model store with |local_state| and the |base_store_dir|. +- // Model store will be usable only after it is initialized. +- void Initialize(PrefService* local_state, +- const base::FilePath& base_store_dir); ++ // Initializes the model store with |base_store_dir|. Model store will be ++ // usable only after it is initialized. ++ void Initialize(const base::FilePath& base_store_dir); + + PredictionModelStore(const PredictionModelStore&) = delete; + PredictionModelStore& operator=(const PredictionModelStore&) = delete; +- ~PredictionModelStore(); ++ virtual ~PredictionModelStore(); + + // Initializes the model store with |local_state| and the |base_store_dir|, if + // initialization hasn't happened already. Model store will be usable only +@@ -111,6 +104,9 @@ class PredictionModelStore { + const proto::ModelCacheKey& model_cache_key, + PredictionModelStoreModelRemovalReason model_removal_reason); + ++ // Returns the local state that stores the prefs across all profiles. ++ virtual PrefService* GetLocalState() const = 0; ++ + base::FilePath GetBaseStoreDirForTesting() const; + + // Allows tests to reset the store for subsequent tests since the store is a +@@ -118,11 +114,8 @@ class PredictionModelStore { + void ResetForTesting(); + + private: +- friend base::NoDestructor<PredictionModelStore>; + friend class PredictionModelStoreBrowserTestBase; + +- PredictionModelStore(); +- + // Loads the model and verifies if the model files exist and returns the + // model. Otherwise nullptr is returned on any failures. + static std::unique_ptr<proto::PredictionModel> +@@ -159,11 +152,6 @@ class PredictionModelStore { + // Invoked when model files gets deleted. + void OnFilePathDeleted(const std::string& path_to_delete, bool success); + +- // Local state that stores the prefs across all profiles. Not owned and +- // outlives |this|. +- raw_ptr<PrefService, LeakedDanglingUntriaged> local_state_ +- GUARDED_BY_CONTEXT(sequence_checker_) = nullptr; +- + // The base dir where the prediction model dirs are saved. + base::FilePath base_store_dir_ GUARDED_BY_CONTEXT(sequence_checker_); + +From ce8633a185cd8c2e819898d3a6cba63d1e8089c4 Mon Sep 17 00:00:00 2001 +From: John Stiles <johnstiles@google.com> +Date: Wed, 31 Jan 2024 14:28:47 +0000 +Subject: [PATCH] [Backport] Security bug 41495984 + +Cherry-pick of patch originally reviewed on: +https://chromium-review.googlesource.com/c/chromium/src/+/5249171 +Improve handling of malformed BMP palettes. + +Add CHECKs to guarantee that clr_used is reasonably sized when +ProcessColorTable() is called. Out-of-bounds values are capped +by ProcessInfoHeader() already, but since this happens at a +distance, it's better to be sure. + +Additionally, we would previously add padding elements to a +palette if it was shorter than expected. We already had bounds +checks at the places where the palette was accessed, so we now +rely on those checks instead. + +Bug: 1523030 +Change-Id: I579c67d1029e1effba2036e9ec0c871418b140e2 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5249171 +Commit-Queue: John Stiles <johnstiles@google.com> +Reviewed-by: Peter Kasting <pkasting@chromium.org> +Auto-Submit: John Stiles <johnstiles@google.com> +Cr-Commit-Position: refs/heads/main@{#1254490} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/551093 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../image-decoders/bmp/bmp_image_reader.cc | 25 ++++++++++--------- + 1 file changed, 13 insertions(+), 12 deletions(-) + +diff --git a/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.cc b/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.cc +index b7bbbf51a1b..9c319b4be01 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.cc +@@ -774,24 +774,31 @@ bool BMPImageReader::ProcessColorTable() { + + const wtf_size_t header_end = header_offset_ + info_header_.size; + wtf_size_t colors_in_palette = info_header_.clr_used; ++ CHECK_LE(colors_in_palette, 256u); // Enforced by ProcessInfoHeader(). + wtf_size_t table_size_in_bytes = colors_in_palette * bytes_per_color; + const wtf_size_t table_end = header_end + table_size_in_bytes; + if (table_end < header_end) { + return parent_->SetFailed(); + } + +- // Some BMPs don't contain a complete palette. Avoid reading off the end. ++ // Some BMPs don't contain a complete palette. Truncate it instead of reading ++ // off the end of the palette. + if (img_data_offset_ && (img_data_offset_ < table_end)) { +- colors_in_palette = (img_data_offset_ - header_end) / bytes_per_color; ++ wtf_size_t colors_in_truncated_palette = ++ (img_data_offset_ - header_end) / bytes_per_color; ++ CHECK_LE(colors_in_truncated_palette, colors_in_palette); ++ colors_in_palette = colors_in_truncated_palette; + table_size_in_bytes = colors_in_palette * bytes_per_color; + } + +- // Read color table. ++ // If we don't have enough data to read in the whole palette yet, stop here. + if ((decoded_offset_ > data_->size()) || + ((data_->size() - decoded_offset_) < table_size_in_bytes)) { + return false; + } +- color_table_.resize(info_header_.clr_used); ++ ++ // Read the color table. ++ color_table_.resize(colors_in_palette); + + for (wtf_size_t i = 0; i < colors_in_palette; ++i) { + color_table_[i].rgb_blue = ReadUint8(0); +@@ -799,12 +806,6 @@ bool BMPImageReader::ProcessColorTable() { + color_table_[i].rgb_red = ReadUint8(2); + decoded_offset_ += bytes_per_color; + } +- // Explicitly zero any colors past the end of a truncated palette. +- for (wtf_size_t i = colors_in_palette; i < info_header_.clr_used; ++i) { +- color_table_[i].rgb_blue = 0; +- color_table_[i].rgb_green = 0; +- color_table_[i].rgb_red = 0; +- } + + // We've now decoded all the non-image data we care about. Skip anything + // else before the actual raster data. +@@ -992,7 +993,7 @@ BMPImageReader::ProcessingResult BMPImageReader::ProcessRLEData() { + for (wtf_size_t which = 0; coord_.x() < end_x;) { + // Some images specify color values past the end of the + // color table; set these pixels to black. +- if (color_indexes[which] < info_header_.clr_used) { ++ if (color_indexes[which] < color_table_.size()) { + SetI(color_indexes[which]); + } else { + SetRGBA(0, 0, 0, 255); +@@ -1071,7 +1072,7 @@ BMPImageReader::ProcessingResult BMPImageReader::ProcessNonRLEData( + } + } else { + // See comments near the end of ProcessRLEData(). +- if (color_index < info_header_.clr_used) { ++ if (color_index < color_table_.size()) { + SetI(color_index); + } else { + SetRGBA(0, 0, 0, 255); +From 4349868d9af8ef7175125f53e441b12df5a22927 Mon Sep 17 00:00:00 2001 +From: Antonio Maiorano <amaiorano@google.com> +Date: Wed, 20 Mar 2024 17:15:40 -0400 +Subject: [PATCH] [Backport] CVE-2024-2885: Use after free in Dawn + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5383595: +Fix HLMatrixLowerPass leaving call to dangling FunctionVal + +When lowering an hl.cast, when the operand was an undef matrix, the pass would insert a call to a mat2vec stub, but since the undef value is not +an alloca, it never gets handled, and the call to the temporary stub +remains. Since the stub FunctionVal gets deleted, when the instruction +is accessed in a future pass, it reads a dangling pointer. + +The fix is to handle undef similarly to how constant 0 is handled, and +to return an undef vector from lowerHLCast. + +Bug: chromium:328958020 +Change-Id: Id31e3aa326d9cb9f03ea97139f14dc5292cd6f7b +Reviewed-on: https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5383595 +Reviewed-by: Ben Clayton <bclayton@chromium.org> +Reviewed-by: David Neto <dneto@google.com> +Reviewed-by: Kenneth Russell <kbr@chromium.org> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553291 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../dawn/third_party/dxc/lib/HLSL/HLMatrixLowerPass.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/chromium/third_party/dawn/third_party/dxc/lib/HLSL/HLMatrixLowerPass.cpp b/chromium/third_party/dawn/third_party/dxc/lib/HLSL/HLMatrixLowerPass.cpp +index e35ff832ecf..c3a7254ef2b 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/HLSL/HLMatrixLowerPass.cpp ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/HLSL/HLMatrixLowerPass.cpp +@@ -381,6 +381,11 @@ Value* HLMatrixLowerPass::getLoweredByValOperand(Value *Val, IRBuilder<> &Builde + if (isa<ConstantAggregateZero>(Val)) + return ConstantAggregateZero::get(LoweredTy); + ++ // Lower undef mat as undef vec ++ if (isa<UndefValue>(Val)) { ++ return UndefValue::get(LoweredTy); ++ } ++ + // Return a mat-to-vec translation stub + FunctionType *TranslationStubTy = FunctionType::get(LoweredTy, { Ty }, /* isVarArg */ false); + Function *TranslationStub = m_matToVecStubs->get(TranslationStubTy); +From 0c7f8cd69b6065fbc9a2af8927182ffe529e052e Mon Sep 17 00:00:00 2001 +From: Manos Koukoutos <manoskouk@chromium.org> +Date: Thu, 21 Mar 2024 11:38:08 +0100 +Subject: [PATCH] [Backport] CVE-2024-2887: Type Confusion in WebAssembly + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/v8/v8/+/5380190: +Merged: [wasm] Check for type-definition count limit + +(cherry picked from commit b852ad701db21d6db5b34e66f4ec1cdccd2ec4d4) + +Bug: chromium:330575498 +Change-Id: I395f0ed6d823b7d1e139da6551486e3627d65724 +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5378419 +Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> +Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> +Auto-Submit: Manos Koukoutos <manoskouk@chromium.org> +Cr-Original-Commit-Position: refs/heads/main@{#92941} +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5380190 +Reviewed-by: Francis McCabe <fgm@chromium.org> +Commit-Queue: Adam Klein <adamk@chromium.org> +Reviewed-by: Adam Klein <adamk@chromium.org> +Cr-Commit-Position: refs/branch-heads/12.2@{#50} +Cr-Branched-From: 6eb5a9616aa6f8c705217aeb7c7ab8c037a2f676-refs/heads/12.2.281@{#1} +Cr-Branched-From: 44cf56d850167c6988522f8981730462abc04bcc-refs/heads/main@{#91934} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553292 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/v8/src/wasm/module-decoder-impl.h | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/chromium/v8/src/wasm/module-decoder-impl.h b/chromium/v8/src/wasm/module-decoder-impl.h +index 97554288b55..75ca3a630a2 100644 +--- src/3rdparty/chromium/v8/src/wasm/module-decoder-impl.h ++++ src/3rdparty/chromium/v8/src/wasm/module-decoder-impl.h +@@ -687,6 +687,11 @@ class ModuleDecoderImpl : public Decoder { + } + } else { + if (tracer_) tracer_->TypeOffset(pc_offset()); ++ if (initial_size + 1 > kV8MaxWasmTypes) { ++ errorf(pc(), "Type definition count exceeds maximum %zu", ++ kV8MaxWasmTypes); ++ return; ++ } + // Similarly to above, we need to resize types for a group of size 1. + module_->types.resize(initial_size + 1); + module_->isorecursive_canonical_type_ids.resize(initial_size + 1); +From d414fd5b22455b7fcbddfdee22cf2b1f446ce3c4 Mon Sep 17 00:00:00 2001 +From: Marco Paniconi <marpan@google.com> +Date: Wed, 13 Mar 2024 10:58:17 -0700 +Subject: [PATCH] [Backport] Security bug 329674887 (1/2) + +Cherry-pick of patch orignally reviewed on +https://chromium-review.googlesource.com/c/webm/libvpx/+/5370376: +Fix to buffer alloc for vp9_bitstream_worker_data + +The code was using the bitstream_worker_data when it +wasn't allocated for big enough size. This is because +the existing condition was to only re-alloc the +bitstream_worker_data when current dest_size was larger +than the current frame_size. But under resolution change +where frame_size is increased, beyond the current dest_size, +we need to allow re-alloc to the new size. + +The existing condition to re-alloc when dest_size is +larger than frame_size (which is not required) is kept +for now. + +Also increase the dest_size to account for image format. + +Added tests, for both ROW_MT=0 and 1, that reproduce +the failures in the bugs below. + +Note: this issue only affects the REALTIME encoding path. + +Bug: b/329088759, b/329674887, b/329179808 + +Change-Id: Icd65dbc5317120304d803f648d4bd9405710db6f +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553293 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../source/libvpx/vp9/encoder/vp9_bitstream.c | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c b/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +index ca56d14aa1e..88a031e5fc1 100644 +--- src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c ++++ src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +@@ -962,6 +962,14 @@ void vp9_bitstream_encode_tiles_buffer_dealloc(VP9_COMP *const cpi) { + } + } + ++static int encode_tiles_buffer_alloc_size(VP9_COMP *const cpi) { ++ VP9_COMMON *const cm = &cpi->common; ++ const int image_bps = ++ (8 + 2 * (8 >> (cm->subsampling_x + cm->subsampling_y))) * ++ (1 + (cm->bit_depth > 8)); ++ return cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++} ++ + static void encode_tiles_buffer_alloc(VP9_COMP *const cpi) { + VP9_COMMON *const cm = &cpi->common; + int i; +@@ -972,7 +980,7 @@ static void encode_tiles_buffer_alloc(VP9_COMP *const cpi) { + memset(cpi->vp9_bitstream_worker_data, 0, worker_data_size); + for (i = 1; i < cpi->num_workers; ++i) { + cpi->vp9_bitstream_worker_data[i].dest_size = +- cpi->oxcf.width * cpi->oxcf.height; ++ encode_tiles_buffer_alloc_size(cpi); + CHECK_MEM_ERROR(&cm->error, cpi->vp9_bitstream_worker_data[i].dest, + vpx_malloc(cpi->vp9_bitstream_worker_data[i].dest_size)); + } +@@ -987,8 +995,8 @@ static size_t encode_tiles_mt(VP9_COMP *cpi, uint8_t *data_ptr) { + int tile_col = 0; + + if (!cpi->vp9_bitstream_worker_data || +- cpi->vp9_bitstream_worker_data[1].dest_size > +- (cpi->oxcf.width * cpi->oxcf.height)) { ++ cpi->vp9_bitstream_worker_data[1].dest_size != ++ encode_tiles_buffer_alloc_size(cpi)) { + vp9_bitstream_encode_tiles_buffer_dealloc(cpi); + encode_tiles_buffer_alloc(cpi); + } +From 4f90911c049d0278e900b94947fd0055b26d646e Mon Sep 17 00:00:00 2001 +From: Marco Paniconi <marpan@google.com> +Date: Sat, 16 Mar 2024 10:39:28 -0700 +Subject: [PATCH] [Backport] Security bug 329674887 (2/2) + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/webm/libvpx/+/5375794:vp9: fix to integer overflow test + +failure for the 16k test: issue introduced +in: c29e637283 + +Bug: b/329088759, b/329674887, b/329179808 + +Change-Id: I88e8a36b7f13223997c3006c84aec9cfa48c0bcf +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553294 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c b/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +index 88a031e5fc1..d3c029da4ba 100644 +--- src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c ++++ src/3rdparty/chromium/third_party/libvpx/source/libvpx/vp9/encoder/vp9_bitstream.c +@@ -967,7 +967,9 @@ static int encode_tiles_buffer_alloc_size(VP9_COMP *const cpi) { + const int image_bps = + (8 + 2 * (8 >> (cm->subsampling_x + cm->subsampling_y))) * + (1 + (cm->bit_depth > 8)); +- return cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++ const int64_t size = ++ (int64_t)cpi->oxcf.width * cpi->oxcf.height * image_bps / 8; ++ return (int)size; + } + + static void encode_tiles_buffer_alloc(VP9_COMP *const cpi) { +From 5af5e96fba0c40d3ddef2720de9117b6a4d6c267 Mon Sep 17 00:00:00 2001 +From: Peng Huang <penghuang@chromium.org> +Date: Wed, 20 Mar 2024 16:22:16 +0000 +Subject: [PATCH] [Backport] Security bug 327183408 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5382202: +Fix PaintImage deserialization arbitrary-read issue + +(cherry picked from commit 47e8386c97ac7a84a96866fbd35422b99a01de5a) + +Bug: 327183408 +Change-Id: I09927fbae60b666aaa370e3aba01607cdb977a25 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5370455 +Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> +Commit-Queue: Peng Huang <penghuang@chromium.org> +Cr-Original-Commit-Position: refs/heads/main@{#1272930} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5382202 +Auto-Submit: Peng Huang <penghuang@chromium.org> +Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> +Cr-Commit-Position: refs/branch-heads/6261@{#1106} +Cr-Branched-From: 9755d9d81e4a8cb5b4f76b23b761457479dbb06b-refs/heads/main@{#1250580} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553295 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/cc/paint/paint_op_reader.cc | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/chromium/cc/paint/paint_op_reader.cc b/chromium/cc/paint/paint_op_reader.cc +index 935dbb05a50..6d920c33562 100644 +--- src/3rdparty/chromium/cc/paint/paint_op_reader.cc ++++ src/3rdparty/chromium/cc/paint/paint_op_reader.cc +@@ -1532,9 +1532,10 @@ inline void PaintOpReader::DidRead(size_t bytes_read) { + // All data are aligned with PaintOpWriter::kDefaultAlignment at least. + size_t aligned_bytes = + base::bits::AlignUp(bytes_read, PaintOpWriter::kDefaultAlignment); +- memory_ += aligned_bytes; + DCHECK_LE(aligned_bytes, remaining_bytes_); +- remaining_bytes_ -= aligned_bytes; ++ bytes_read = std::min(aligned_bytes, remaining_bytes_); ++ memory_ += bytes_read; ++ remaining_bytes_ -= bytes_read; + } + + } // namespace cc +From 0a17b9024c84404e4693718bbbd056517a2874a3 Mon Sep 17 00:00:00 2001 +From: Darius Mercadier <dmercadier@chromium.org> +Date: Fri, 22 Mar 2024 17:55:04 +0100 +Subject: [PATCH] [Backport] CVE-2024-3159: Out of bounds memory access in V8 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/v8/v8/+/5401859: +Merged: [runtime] Recreate enum cache on map update if any previous map had one + +If any previous map in the transition tree had an enum cache, then we +recreate one when updating the map. + +Bug: 330760873 +(cherry picked from commit 807cf7d0b7d96212c98ed2119e07f9b2c6a23f61) + +Change-Id: Ia9ea4cf17fef60166a0c037318eb539866aac37a +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5401859 +Reviewed-by: Igor Sheludko <ishell@chromium.org> +Commit-Queue: Igor Sheludko <ishell@chromium.org> +Auto-Submit: Darius Mercadier <dmercadier@chromium.org> +Cr-Commit-Position: refs/branch-heads/12.2@{#52} +Cr-Branched-From: 6eb5a9616aa6f8c705217aeb7c7ab8c037a2f676-refs/heads/12.2.281@{#1} +Cr-Branched-From: 44cf56d850167c6988522f8981730462abc04bcc-refs/heads/main@{#91934} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553296 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/v8/src/objects/map-updater.cc | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/chromium/v8/src/objects/map-updater.cc b/chromium/v8/src/objects/map-updater.cc +index 613a4921637..1d649373274 100644 +--- src/3rdparty/chromium/v8/src/objects/map-updater.cc ++++ src/3rdparty/chromium/v8/src/objects/map-updater.cc +@@ -1038,14 +1038,21 @@ MapUpdater::State MapUpdater::ConstructNewMap() { + Handle<Map> new_map = + Map::AddMissingTransitions(isolate_, split_map, new_descriptors); + ++ bool had_any_enum_cache = ++ split_map->instance_descriptors(isolate_) ++ ->enum_cache() ++ ->keys() ++ ->length() > 0 || ++ old_descriptors_->enum_cache()->keys()->length() > 0; ++ + // Deprecated part of the transition tree is no longer reachable, so replace + // current instance descriptors in the "survived" part of the tree with + // the new descriptors to maintain descriptors sharing invariant. + split_map->ReplaceDescriptors(isolate_, *new_descriptors); + +- // If the old descriptors had an enum cache, make sure the new ones do too. +- if (old_descriptors_->enum_cache()->keys()->length() > 0 && +- new_map->NumberOfEnumerableProperties() > 0) { ++ // If the old descriptors had an enum cache (or if {split_map}'s descriptors ++ // had one), make sure the new ones do too. ++ if (had_any_enum_cache && new_map->NumberOfEnumerableProperties() > 0) { + FastKeyAccumulator::InitializeFastPropertyEnumCache( + isolate_, new_map, new_map->NumberOfEnumerableProperties()); + } +From e76cac29493b1cb4b055f8944ea1e4e1284a12e6 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com> +Date: Thu, 21 Mar 2024 16:50:44 +0000 +Subject: [PATCH] [Backport] Security bug 326349405 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5383440: +Reland "sensors WinRT: Call OnReadingChangedCallback() via PostTask()" + +This reverts commit 745ca2de005c052f58097ef9cb7aa2deff095cf4. + +Reason for revert: Reapproved by pgrace@ in the bug. + +Original change's description: +> Revert "sensors WinRT: Call OnReadingChangedCallback() via PostTask()" +> +> This reverts commit 7e93b6a926ab65cc7ff1293bdcf0099c6e6e4e4e. +> +> Reason for revert: Requested in the bug by pgrace@ +> +> Original change's description: +> > sensors WinRT: Call OnReadingChangedCallback() via PostTask() +> > +> > While here, also add checks to make sure each method is running on the +> > right sequence and make |minimum_report_interval_| guarded by |lock_| +> > since it is accessed by the main task runner just like |client_|. +> > +> > There is a significant amount of changes in the unit tests for two +> > reasons: +> > 1. We now use multiple task runners and create Reader objects in a COM +> > STA task runner to better simulate what happens in production. +> > 2. Doing so has uncovered bugs in the exist tests that had to be fixed. +> > Namely: +> > - One of the biggest offenders was the use of EXPECT_CALL() with +> > WillRepeatedly() for expecting calls to OnReadingUpdated(). Using +> > only WillRepeatedly() meant the control over the cardinality of the +> > expectations was not very strict, and sometimes callbacks were +> > simply not being run. +> > Now that TriggerFakeSensorReading() is asynchronous and we need to +> > use a base::RunLoop to ensure, we are also using WillOnce() a lot +> > more than WillRepeatedly() so that we set one expectation, call +> > TriggerFakeSensorReading() and consume it immediately. +> > - The *Thresholding tests were affected by the problem above, and +> > fixing them showed that several callbacks were not being invoked. +> > Many checks where values were increased by the exact threshold +> > amount were broken because the manipulated values are floats and +> > doubles, and the math operations on them in the +> > OnReadingChangedCallback() implementations caused the comparisons +> > with exact values to fail. In this case, it was simpler to just +> > remove those specific tests, as the "values bigger than the +> > threshold" case are already covered by other checks. +> > - Also as a consequence of the above, *Thresholding tests with +> > multi-axis values were also broken when they went from testing that +> > values did not pass the threshold checks to the first test that +> > verifies that an axis passes the threshold check. This caused all +> > previous |last_sent_*| variables to be stored in the Reader, and +> > other calls to threshold_helper(true) would fail. The fix here was +> > to reorder the calls so that each axis is tested entirely before +> > the next. +> > +> > (cherry picked from commit 2aafa000795519b5153125673f87c734f7b8ae9f) +> > +> > Bug: 326349405 +> > Change-Id: Ief67720e8c449af1ce4f450002103a20ca1830ee +> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5340216 +> > Auto-Submit: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com> +> > Commit-Queue: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com> +> > Reviewed-by: Reilly Grant <reillyg@chromium.org> +> > Cr-Original-Commit-Position: refs/heads/main@{#1268797} +> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5372846 +> > Reviewed-by: Colin Blundell <blundell@chromium.org> +> > Cr-Commit-Position: refs/branch-heads/6261@{#1079} +> > Cr-Branched-From: 9755d9d81e4a8cb5b4f76b23b761457479dbb06b-refs/heads/main@{#1250580} +> +> Bug: 326349405 +> Change-Id: I49d61cf7bdf2a00004aa565a5439ad813b1c379e +> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5378404 +> Commit-Queue: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com> +> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> +> Cr-Commit-Position: refs/branch-heads/6261@{#1090} +> Cr-Branched-From: 9755d9d81e4a8cb5b4f76b23b761457479dbb06b-refs/heads/main@{#1250580} + +Bug: 326349405 +Change-Id: I3bcba8840a3a10cd4660ec287fa24623bcf87657 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5383440 +Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> +Commit-Queue: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com> +Cr-Commit-Position: refs/branch-heads/6261@{#1111} +Cr-Branched-From: 9755d9d81e4a8cb5b4f76b23b761457479dbb06b-refs/heads/main@{#1250580} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/553297 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../platform_sensor_reader_winrt.cc | 79 +- + .../platform_sensor_reader_winrt.h | 32 +- + .../platform_sensor_reader_winrt_unittests.cc | 787 ++++++++++-------- + .../generic_sensor/platform_sensor_win.cc | 3 + + 4 files changed, 549 insertions(+), 352 deletions(-) + +diff --git a/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.cc b/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.cc +index 6c778b7edf0c..673225e398a2 100644 +--- src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.cc ++++ src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.cc +@@ -8,6 +8,7 @@ + + #include "base/numerics/math_constants.h" + #include "base/time/time.h" ++#include "base/win/com_init_util.h" + #include "base/win/core_winrt_util.h" + #include "services/device/generic_sensor/generic_sensor_consts.h" + #include "services/device/public/mojom/sensor.mojom.h" +@@ -99,7 +100,11 @@ PlatformSensorReaderWinrtBase< + ISensorWinrtStatics, + ISensorWinrtClass, + ISensorReadingChangedHandler, +- ISensorReadingChangedEventArgs>::PlatformSensorReaderWinrtBase() { ++ ISensorReadingChangedEventArgs>::PlatformSensorReaderWinrtBase() ++ : com_sta_task_runner_(base::SingleThreadTaskRunner::GetCurrentDefault()) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ DETACH_FROM_SEQUENCE(main_sequence_checker_); ++ + get_sensor_factory_callback_ = + base::BindRepeating([](ISensorWinrtStatics** sensor_factory) -> HRESULT { + return base::win::GetActivationFactory<ISensorWinrtStatics, +@@ -119,6 +124,8 @@ void PlatformSensorReaderWinrtBase< + ISensorWinrtClass, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>::SetClient(Client* client) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(main_sequence_checker_); ++ + base::AutoLock autolock(lock_); + client_ = client; + } +@@ -136,6 +143,8 @@ HRESULT PlatformSensorReaderWinrtBase<runtime_class_id, + ISensorReadingChangedEventArgs>:: + ConvertSensorReadingTimeStamp(ComPtr<ISensorReading> sensor_reading, + base::TimeDelta* timestamp_delta) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + DateTime timestamp; + HRESULT hr = sensor_reading->get_Timestamp(×tamp); + if (FAILED(hr)) +@@ -157,6 +166,8 @@ bool PlatformSensorReaderWinrtBase< + ISensorWinrtClass, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>::Initialize() { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<ISensorWinrtStatics> sensor_statics; + + HRESULT hr = get_sensor_factory_callback_.Run(&sensor_statics); +@@ -180,10 +191,14 @@ bool PlatformSensorReaderWinrtBase< + return false; + } + +- minimum_report_interval_ = GetMinimumReportIntervalFromSensor(); ++ { ++ base::AutoLock autolock(lock_); ++ minimum_report_interval_ = GetMinimumReportIntervalFromSensor(); + +- if (minimum_report_interval_.is_zero()) +- DLOG(WARNING) << "Failed to get sensor minimum report interval"; ++ if (minimum_report_interval_.is_zero()) { ++ DLOG(WARNING) << "Failed to get sensor minimum report interval"; ++ } ++ } + + return true; + } +@@ -199,6 +214,8 @@ base::TimeDelta PlatformSensorReaderWinrtBase< + ISensorWinrtClass, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>::GetMinimumReportIntervalFromSensor() { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + UINT32 minimum_report_interval_ms = 0; + HRESULT hr = sensor_->get_MinimumReportInterval(&minimum_report_interval_ms); + +@@ -225,6 +242,9 @@ base::TimeDelta PlatformSensorReaderWinrtBase< + ISensorWinrtClass, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>::GetMinimalReportingInterval() const { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(main_sequence_checker_); ++ ++ base::AutoLock autolock(lock_); + return minimum_report_interval_; + } + +@@ -239,6 +259,8 @@ bool PlatformSensorReaderWinrtBase<runtime_class_id, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>:: + StartSensor(const PlatformSensorConfiguration& configuration) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(main_sequence_checker_); ++ + base::AutoLock autolock(lock_); + + if (!reading_callback_token_) { +@@ -256,7 +278,39 @@ bool PlatformSensorReaderWinrtBase<runtime_class_id, + } + + auto reading_changed_handler = Callback<ISensorReadingChangedHandler>( +- this, &PlatformSensorReaderWinrtBase::OnReadingChangedCallback); ++ [weak_ptr(weak_ptr_factory_.GetWeakPtr()), ++ com_sta_task_runner(com_sta_task_runner_)]( ++ ISensorWinrtClass* sender, ISensorReadingChangedEventArgs* args) { ++ // We cannot invoke OnReadingChangedCallback() directly because this ++ // callback is run on a COM MTA thread spawned by Windows (on tests, ++ // we mimic the behavior by using base::ThreadPool, as the task ++ // scheduler threads live in the MTA). ++ // ++ // This callback is invoked on an MTA thread because the ++ // ISensorReadingChangedHandler declarations explicitly inherit from ++ // Microsoft::WRL::FtmBase, which makes them agile, free-threaded ++ // objects. ++ // ++ // We could CHECK() this behavior here, but ::CoGetApartmentType() ++ // depends on ole32.dll and base::win::GetComApartmentTypeForThread() ++ // returns NONE in the non-test code path even though ++ // ::GoGetApartmentType() returns MTA, so the best we can do is just ++ // double-check that this is not running on an STA. ++ DCHECK_NE(base::win::GetComApartmentTypeForThread(), ++ base::win::ComApartmentType::STA); ++ com_sta_task_runner->PostTask( ++ FROM_HERE, ++ base::BindOnce( ++ // TODO(crbug.com/326349405): base::IgnoreResult is being used ++ // temporarily to reduce the amount of changes required for ++ // this bug. OnReadingChangedCallback() must be changed to ++ // have a void return type. ++ base::IgnoreResult( ++ &PlatformSensorReaderWinrtBase::OnReadingChangedCallback), ++ weak_ptr, ComPtr<ISensorWinrtClass>(sender), ++ ComPtr<ISensorReadingChangedEventArgs>(args))); ++ return S_OK; ++ }); + + EventRegistrationToken event_token; + hr = sensor_->add_ReadingChanged(reading_changed_handler.Get(), +@@ -285,6 +339,9 @@ void PlatformSensorReaderWinrtBase< + ISensorWinrtClass, + ISensorReadingChangedHandler, + ISensorReadingChangedEventArgs>::StopSensor() { ++ // This function is called in the main task runner by PlatformSensorWin as ++ // well as in the com_sta_task_runner_ by the destructor. ++ + base::AutoLock autolock(lock_); + + if (reading_callback_token_) { +@@ -316,6 +373,8 @@ PlatformSensorReaderWinrtLightSensor::PlatformSensorReaderWinrtLightSensor() = + HRESULT PlatformSensorReaderWinrtLightSensor::OnReadingChangedCallback( + ILightSensor* light_sensor, + ILightSensorReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<ILightSensorReading> light_sensor_reading; + HRESULT hr = reading_changed_args->get_Reading(&light_sensor_reading); + if (FAILED(hr)) { +@@ -379,6 +438,8 @@ PlatformSensorReaderWinrtAccelerometer:: + HRESULT PlatformSensorReaderWinrtAccelerometer::OnReadingChangedCallback( + IAccelerometer* accelerometer, + IAccelerometerReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<IAccelerometerReading> accelerometer_reading; + HRESULT hr = reading_changed_args->get_Reading(&accelerometer_reading); + if (FAILED(hr)) { +@@ -464,6 +525,8 @@ PlatformSensorReaderWinrtGyrometer::PlatformSensorReaderWinrtGyrometer() = + HRESULT PlatformSensorReaderWinrtGyrometer::OnReadingChangedCallback( + IGyrometer* gyrometer, + IGyrometerReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<IGyrometerReading> gyrometer_reading; + HRESULT hr = reading_changed_args->get_Reading(&gyrometer_reading); + if (FAILED(hr)) { +@@ -548,6 +611,8 @@ PlatformSensorReaderWinrtMagnetometer::PlatformSensorReaderWinrtMagnetometer() = + HRESULT PlatformSensorReaderWinrtMagnetometer::OnReadingChangedCallback( + IMagnetometer* magnetometer, + IMagnetometerReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<IMagnetometerReading> magnetometer_reading; + HRESULT hr = reading_changed_args->get_Reading(&magnetometer_reading); + if (FAILED(hr)) { +@@ -631,6 +696,8 @@ HRESULT + PlatformSensorReaderWinrtAbsOrientationEulerAngles::OnReadingChangedCallback( + IInclinometer* inclinometer, + IInclinometerReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<IInclinometerReading> inclinometer_reading; + HRESULT hr = reading_changed_args->get_Reading(&inclinometer_reading); + if (FAILED(hr)) { +@@ -717,6 +784,8 @@ HRESULT + PlatformSensorReaderWinrtAbsOrientationQuaternion::OnReadingChangedCallback( + IOrientationSensor* orientation_sensor, + IOrientationSensorReadingChangedEventArgs* reading_changed_args) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ + ComPtr<IOrientationSensorReading> orientation_sensor_reading; + HRESULT hr = reading_changed_args->get_Reading(&orientation_sensor_reading); + if (FAILED(hr)) { +diff --git a/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.h b/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.h +index 66c40adc59e8..e4521a7816fa 100644 +--- src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.h ++++ src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt.h +@@ -14,7 +14,10 @@ + + #include "base/functional/callback.h" + #include "base/memory/raw_ptr.h" ++#include "base/memory/weak_ptr.h" ++#include "base/sequence_checker.h" + #include "base/synchronization/lock.h" ++#include "base/task/single_thread_task_runner.h" + #include "base/thread_annotations.h" + #include "base/time/time.h" + #include "services/device/generic_sensor/platform_sensor_reader_win_base.h" +@@ -77,7 +80,10 @@ class PlatformSensorReaderWinrtBase : public PlatformSensorReaderWinBase { + + protected: + PlatformSensorReaderWinrtBase(); +- virtual ~PlatformSensorReaderWinrtBase() { StopSensor(); } ++ virtual ~PlatformSensorReaderWinrtBase() { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(com_sta_sequence_checker_); ++ StopSensor(); ++ } + + // Derived classes should implement this function to handle sensor specific + // parsing of the sensor reading. +@@ -93,11 +99,15 @@ class PlatformSensorReaderWinrtBase : public PlatformSensorReaderWinBase { + Microsoft::WRL::ComPtr<ISensorReading> sensor_reading, + base::TimeDelta* timestamp_delta); + +- // Following class member is protected by lock since SetClient, +- // StartSensor, and StopSensor can all be called from different +- // threads by PlatformSensorWin. +- base::Lock lock_; +- // Null if there is no client to notify, non-null otherwise. ++ SEQUENCE_CHECKER(com_sta_sequence_checker_); ++ SEQUENCE_CHECKER(main_sequence_checker_); ++ ++ mutable base::Lock lock_; ++ ++ // Null if there is no client to notify, non-null otherwise. Protected by ++ // |lock_| because SetClient() and StartSensor() are called from the main ++ // task runner rather than the thread where this object is created, and ++ // StopSensor() may be called from the main task runner too. + raw_ptr<Client, DanglingUntriaged> client_ GUARDED_BY(lock_); + + // Always report the first sample received after starting the sensor. +@@ -106,13 +116,21 @@ class PlatformSensorReaderWinrtBase : public PlatformSensorReaderWinBase { + private: + base::TimeDelta GetMinimumReportIntervalFromSensor(); + ++ // Task runner where this object was created. ++ scoped_refptr<base::SingleThreadTaskRunner> com_sta_task_runner_; ++ + GetSensorFactoryFunctor get_sensor_factory_callback_; + + // absl::nullopt if the sensor has not been started, non-empty otherwise. + absl::optional<EventRegistrationToken> reading_callback_token_; + +- base::TimeDelta minimum_report_interval_; ++ // Protected by |lock_| because GetMinimalReportingInterval() is called from ++ // the main task runner. ++ base::TimeDelta minimum_report_interval_ GUARDED_BY(lock_); ++ + Microsoft::WRL::ComPtr<ISensorWinrtClass> sensor_; ++ ++ base::WeakPtrFactory<PlatformSensorReaderWinrtBase> weak_ptr_factory_{this}; + }; + + class PlatformSensorReaderWinrtLightSensor final +diff --git a/chromium/services/device/generic_sensor/platform_sensor_reader_winrt_unittests.cc b/chromium/services/device/generic_sensor/platform_sensor_reader_winrt_unittests.cc +index 2283de90c75d..f6add828b496 100644 +--- src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt_unittests.cc ++++ src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_reader_winrt_unittests.cc +@@ -6,8 +6,13 @@ + + #include <objbase.h> + ++#include "base/notreached.h" + #include "base/numerics/math_constants.h" ++#include "base/run_loop.h" ++#include "base/task/task_traits.h" ++#include "base/task/thread_pool.h" + #include "base/test/bind.h" ++#include "base/test/gmock_callback_support.h" + #include "base/test/task_environment.h" + #include "base/win/core_winrt_util.h" + #include "base/win/scoped_com_initializer.h" +@@ -428,15 +433,26 @@ class FakeSensorWinrt + return remove_reading_changed_return_code_; + } + +- // Makes any clients registered via add_ReadingChanged() to trigger with +- // the given sensor reading. ++ // Invokes the handler added via add_ReadingChanged() with the reading ++ // described by |reading|. ++ // ++ // The invocation is asynchronous to better simulate real behavior, where ++ // Windows delivers the reading notifications in a separate MTA thread. + void TriggerFakeSensorReading( + Microsoft::WRL::ComPtr<ISensorReading> reading) { +- EXPECT_TRUE(handler_); + Microsoft::WRL::ComPtr<ISensorReadingChangedEventArgs> reading_event_args = + Microsoft::WRL::Make<FakeSensorReadingChangedEventArgsWinrt< + ISensorReading, ISensorReadingChangedEventArgs>>(reading); +- EXPECT_HRESULT_SUCCEEDED(handler_->Invoke(this, reading_event_args.Get())); ++ base::ThreadPool::PostTask( ++ FROM_HERE, {base::MayBlock()}, ++ base::BindLambdaForTesting( ++ // Copy |handler_| and |reading_event_args| to ensure they do not ++ // lose their values when TriggerFakeSensorReading() exits. ++ [this, handler = handler_, reading_event_args]() { ++ ASSERT_TRUE(handler); ++ EXPECT_HRESULT_SUCCEEDED( ++ handler->Invoke(this, reading_event_args.Get())); ++ })); + } + + // Returns true if any clients are registered for readings via +@@ -547,7 +563,47 @@ class FakeSensorFactoryWinrt + }; + + class PlatformSensorReaderTestWinrt : public testing::Test { +- private: ++ public: ++ void SetUp() override { ++ // Ensure each test starts with a fresh task runner. ++ com_sta_task_runner_ = ++ base::ThreadPool::CreateCOMSTATaskRunner({base::MayBlock()}); ++ } ++ ++ // Synchronously creates a new PlatformSensorReaderWinrtBase-derived class on ++ // |com_sta_task_runner_| and returns it. ++ // ++ // This better simulates real behavior, as PlatformSensorProviderWinrt ++ // creates readers on a COM STA task runner. ++ template <typename SensorReader, ++ typename ISensorStatics, ++ typename... OtherFactoryTypes> ++ auto CreateAndInitializeSensor( ++ const Microsoft::WRL::ComPtr< ++ FakeSensorFactoryWinrt<ISensorStatics, OtherFactoryTypes...>>& ++ fake_sensor_factory) { ++ std::unique_ptr<SensorReader, base::OnTaskRunnerDeleter> reader( ++ nullptr, base::OnTaskRunnerDeleter(com_sta_task_runner_)); ++ ++ base::RunLoop run_loop; ++ com_sta_task_runner_->PostTaskAndReply( ++ FROM_HERE, base::BindLambdaForTesting([&]() { ++ reader.reset(new SensorReader); ++ reader->InitForTesting(base::BindLambdaForTesting( ++ [&](ISensorStatics** sensor_factory) -> HRESULT { ++ return fake_sensor_factory.CopyTo(sensor_factory); ++ })); ++ ASSERT_TRUE(reader->Initialize()); ++ }), ++ run_loop.QuitClosure()); ++ run_loop.Run(); ++ ++ return reader; ++ } ++ ++ protected: ++ scoped_refptr<base::SingleThreadTaskRunner> com_sta_task_runner_; ++ + base::test::TaskEnvironment task_environment_; + base::win::ScopedCOMInitializer scoped_com_initializer_; + }; +@@ -602,11 +658,9 @@ TEST_F(PlatformSensorReaderTestWinrt, SensorMinimumReportInterval) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + EXPECT_EQ(sensor->GetMinimalReportingInterval().InMilliseconds(), + kExpectedMinimumReportInterval); +@@ -623,20 +677,42 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedSensorMinimumReportInterval) { + ABI::Windows::Devices::Sensors::ILightSensorReadingChangedEventArgs, + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; +- +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); + fake_sensor->SetGetMinimumReportIntervalReturnCode(E_FAIL); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + EXPECT_EQ(sensor->GetMinimalReportingInterval().InMilliseconds(), 0); + } + +-// Tests that PlatformSensorReaderWinrtBase converts the timestamp correctly +-TEST_F(PlatformSensorReaderTestWinrt, SensorTimestampConversion) { +- static constexpr double expectedTimestampDeltaSecs = 19.0; ++TEST_F(PlatformSensorReaderTestWinrt, ReadingChangedCallbackAndPostTask) { ++ // Instead of using PlatformSensorReaderWinrtLightSensor, declare a custom ++ // implementation that does less and whose sole purpose is to assert that its ++ // OnReadingChangedCallback() implementation is never called. ++ struct CustomLightSensor ++ : public PlatformSensorReaderWinrtBase< ++ RuntimeClass_Windows_Devices_Sensors_LightSensor, ++ ABI::Windows::Devices::Sensors::ILightSensorStatics, ++ ABI::Windows::Devices::Sensors::ILightSensor, ++ Microsoft::WRL::Implements< ++ Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>, ++ ABI::Windows::Foundation::ITypedEventHandler< ++ ABI::Windows::Devices::Sensors::LightSensor*, ++ ABI::Windows::Devices::Sensors:: ++ LightSensorReadingChangedEventArgs*>, ++ Microsoft::WRL::FtmBase>, ++ ABI::Windows::Devices::Sensors:: ++ ILightSensorReadingChangedEventArgs> { ++ ~CustomLightSensor() override = default; ++ ++ HRESULT OnReadingChangedCallback( ++ ABI::Windows::Devices::Sensors::ILightSensor*, ++ ABI::Windows::Devices::Sensors::ILightSensorReadingChangedEventArgs*) ++ override { ++ NOTREACHED_NORETURN() << "This function should not have been reached"; ++ } ++ }; + + auto fake_sensor_factory = Microsoft::WRL::Make<FakeSensorFactoryWinrt< + ABI::Windows::Devices::Sensors::ILightSensorStatics, +@@ -647,21 +723,57 @@ TEST_F(PlatformSensorReaderTestWinrt, SensorTimestampConversion) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( ++ // Instead of using CreateAndInitializeSensor(), for simplicity and for ++ // better control over |light_sensor|'s lifetime we invert things and create ++ // the object in the main task runner and invoke StartSensor() from another ++ // one. The effect on the Reader is the same -- the calls are still made from ++ // different task runners. ++ auto light_sensor = std::make_unique<CustomLightSensor>(); ++ light_sensor->InitForTesting(base::BindLambdaForTesting( + [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) + -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ ASSERT_TRUE(light_sensor->Initialize()); ++ ++ base::RunLoop run_loop; ++ base::ThreadPool::PostTaskAndReply( ++ FROM_HERE, base::BindLambdaForTesting([&]() { ++ ASSERT_TRUE(light_sensor->StartSensor( ++ PlatformSensorConfiguration(kExpectedReportFrequencySet))); ++ }), ++ run_loop.QuitClosure()); ++ run_loop.Run(); ++ ++ // The idea here is to rely on the fact that TriggerFakeSensorReading() is ++ // asynchronous: we call it while it has a valid handler, it schedules a ++ // task, we destroy the handler object synchronoustly and then it Invoke()s ++ // the callback, which should never reach ++ // CustomLightSensor::OnReadingChangedCallback(). ++ Microsoft::WRL::ComPtr<ABI::Windows::Devices::Sensors::ILightSensorReading> ++ reading = Microsoft::WRL::Make<FakeLightSensorReadingWinrt>( ++ ABI::Windows::Foundation::DateTime{}, 0.0f); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ light_sensor.reset(); ++ task_environment_.RunUntilIdle(); ++} + +- auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); ++// Tests that PlatformSensorReaderWinrtBase converts the timestamp correctly ++TEST_F(PlatformSensorReaderTestWinrt, SensorTimestampConversion) { ++ static constexpr double expectedTimestampDeltaSecs = 19.0; + +- double lastReportedTimestamp = 0.0; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke([&](const SensorReading& reading) { +- lastReportedTimestamp = reading.als.timestamp; +- EXPECT_EQ(reading.als.value, 0.0f); +- })); ++ auto fake_sensor_factory = Microsoft::WRL::Make<FakeSensorFactoryWinrt< ++ ABI::Windows::Devices::Sensors::ILightSensorStatics, ++ ABI::Windows::Devices::Sensors::ILightSensor, ++ ABI::Windows::Devices::Sensors::LightSensor, ++ ABI::Windows::Devices::Sensors::ILightSensorReading, ++ ABI::Windows::Devices::Sensors::ILightSensorReadingChangedEventArgs, ++ ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); ++ auto fake_sensor = fake_sensor_factory->fake_sensor_; ++ ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + ++ auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); +@@ -672,18 +784,35 @@ TEST_F(PlatformSensorReaderTestWinrt, SensorTimestampConversion) { + Microsoft::WRL::ComPtr<ABI::Windows::Devices::Sensors::ILightSensorReading> + reading = Microsoft::WRL::Make<FakeLightSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0.0f); +- fake_sensor->TriggerFakeSensorReading(reading); +- EXPECT_EQ(lastReportedTimestamp, 0); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(reading.als.timestamp, 0.0); ++ EXPECT_EQ(reading.als.value, 0.0f); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + ++ // Verify the reported time stamp has ticked forward ++ // expectedTimestampDeltaSecs + auto second_timestamp = + base::Seconds(expectedTimestampDeltaSecs).ToWinrtDateTime(); + reading = + Microsoft::WRL::Make<FakeLightSensorReadingWinrt>(second_timestamp, 0.0f); +- fake_sensor->TriggerFakeSensorReading(reading); +- +- // Verify the reported time stamp has ticked forward +- // expectedTimestampDeltaSecs +- EXPECT_EQ(lastReportedTimestamp, expectedTimestampDeltaSecs); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(reading.als.timestamp, expectedTimestampDeltaSecs); ++ EXPECT_EQ(reading.als.value, 0.0f); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + } + + // Tests that PlatformSensorReaderWinrtBase starts and stops the +@@ -698,11 +827,9 @@ TEST_F(PlatformSensorReaderTestWinrt, StartStopSensorCallbacks) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); +@@ -732,17 +859,19 @@ TEST_F(PlatformSensorReaderTestWinrt, StartWithoutStopSensorCallbacks) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + EXPECT_TRUE(fake_sensor->IsSensorStarted()); + ++ // *sensor is deleted in |com_sta_task_runner_|, so we need to wait for it to ++ // happen asynchronously. + sensor.reset(); ++ task_environment_.RunUntilIdle(); ++ + EXPECT_FALSE(fake_sensor->IsSensorStarted()); + } + +@@ -758,11 +887,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedSensorStart) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + fake_sensor->SetPutReportIntervalReturnCode(E_FAIL); + +@@ -787,11 +914,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedSensorStop) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); +@@ -813,11 +938,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedLightSensorSampleParse) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + +@@ -832,12 +955,17 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedLightSensorSampleParse) { + auto reading = Microsoft::WRL::Make<FakeLightSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0.0f); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + + reading->SetGetTimestampReturnCode(S_OK); + reading->SetGetIlluminanceInLuxReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + // Tests that PlatformSensorReaderWinrtLightSensor notifies the client +@@ -854,19 +982,11 @@ TEST_F(PlatformSensorReaderTestWinrt, SensorClientNotification) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(expected_lux, reading.als.value); +- })); +- + sensor->SetClient(mock_client.get()); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); +@@ -874,8 +994,16 @@ TEST_F(PlatformSensorReaderTestWinrt, SensorClientNotification) { + + auto reading = Microsoft::WRL::Make<FakeLightSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_lux); +- fake_sensor->TriggerFakeSensorReading(reading); +- ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(expected_lux, reading.als.value); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + sensor->StopSensor(); + } + +@@ -896,30 +1024,31 @@ TEST_F(PlatformSensorReaderTestWinrt, CheckAccelerometerReadingConversion) { + Microsoft::WRL::Make<FakeAccelerometerSensorWinrt>()); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtAccelerometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IAccelerometerStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtAccelerometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(-expected_x * base::kMeanGravityDouble, reading.accel.x); +- EXPECT_EQ(-expected_y * base::kMeanGravityDouble, reading.accel.y); +- EXPECT_EQ(-expected_z * base::kMeanGravityDouble, reading.accel.z); +- })); +- + sensor->SetClient(mock_client.get()); + + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); +- + EXPECT_TRUE(sensor->StartSensor(sensor_config)); ++ + auto reading = Microsoft::WRL::Make<FakeAccelerometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_x, expected_y, expected_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(-expected_x * base::kMeanGravityDouble, reading.accel.x); ++ EXPECT_EQ(-expected_y * base::kMeanGravityDouble, reading.accel.y); ++ EXPECT_EQ(-expected_z * base::kMeanGravityDouble, reading.accel.z); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + + sensor->StopSensor(); + } +@@ -937,13 +1066,10 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedAccelerometerSampleParse) { + Microsoft::WRL::Make<FakeAccelerometerSensorWinrt>()); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtAccelerometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IAccelerometerStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtAccelerometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); +@@ -954,6 +1080,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedAccelerometerSampleParse) { + auto reading = Microsoft::WRL::Make<FakeAccelerometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0, 0, 0); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + +@@ -968,6 +1097,8 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedAccelerometerSampleParse) { + reading->SetGetYReturnCode(S_OK); + reading->SetGetZReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + // Tests if PlatformSensorReaderWinrtGyrometer correctly converts sensor +@@ -986,27 +1117,30 @@ TEST_F(PlatformSensorReaderTestWinrt, CheckGyrometerReadingConversion) { + ABI::Windows::Devices::Sensors::GyrometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtGyrometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IGyrometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtGyrometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(gfx::DegToRad(expected_x), reading.gyro.x); +- EXPECT_EQ(gfx::DegToRad(expected_y), reading.gyro.y); +- EXPECT_EQ(gfx::DegToRad(expected_z), reading.gyro.z); +- })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + auto reading = Microsoft::WRL::Make<FakeGyrometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_x, expected_y, expected_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(gfx::DegToRad(expected_x), reading.gyro.x); ++ EXPECT_EQ(gfx::DegToRad(expected_y), reading.gyro.y); ++ EXPECT_EQ(gfx::DegToRad(expected_z), reading.gyro.z); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + + sensor->StopSensor(); + } +@@ -1023,11 +1157,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedGyrometerSampleParse) { + ABI::Windows::Devices::Sensors::GyrometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtGyrometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IGyrometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtGyrometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); +@@ -1038,6 +1170,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedGyrometerSampleParse) { + auto reading = Microsoft::WRL::Make<FakeGyrometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0, 0, 0); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + +@@ -1052,6 +1187,8 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedGyrometerSampleParse) { + reading->SetGetYReturnCode(S_OK); + reading->SetGetZReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + // Tests if PlatformSensorReaderWinrtMagnetometer correctly converts sensor +@@ -1070,27 +1207,31 @@ TEST_F(PlatformSensorReaderTestWinrt, CheckMagnetometerReadingConversion) { + ABI::Windows::Devices::Sensors::MagnetometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtMagnetometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IMagnetometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtMagnetometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(expected_x, reading.magn.x); +- EXPECT_EQ(expected_y, reading.magn.y); +- EXPECT_EQ(expected_z, reading.magn.z); +- })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + auto reading = Microsoft::WRL::Make<FakeMagnetometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_x, expected_y, expected_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(expected_x, reading.magn.x); ++ EXPECT_EQ(expected_y, reading.magn.y); ++ EXPECT_EQ(expected_z, reading.magn.z); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + + sensor->StopSensor(); + } +@@ -1107,11 +1248,10 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedMagnetometerSampleParse) { + ABI::Windows::Devices::Sensors::MagnetometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtMagnetometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IMagnetometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtMagnetometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); +@@ -1122,6 +1262,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedMagnetometerSampleParse) { + auto reading = Microsoft::WRL::Make<FakeMagnetometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0, 0, 0); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + +@@ -1136,6 +1279,8 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedMagnetometerSampleParse) { + reading->SetGetYReturnCode(S_OK); + reading->SetGetZReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + // Tests if PlatformSensorReaderWinrtAbsOrientationEulerAngles correctly +@@ -1154,28 +1299,30 @@ TEST_F(PlatformSensorReaderTestWinrt, CheckInclinometerReadingConversion) { + ABI::Windows::Devices::Sensors::InclinometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationEulerAngles>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IInclinometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationEulerAngles>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(expected_x, reading.orientation_euler.x); +- EXPECT_EQ(expected_y, reading.orientation_euler.y); +- EXPECT_EQ(expected_z, reading.orientation_euler.z); +- })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + auto reading = Microsoft::WRL::Make<FakeInclinometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_x, expected_y, expected_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(expected_x, reading.orientation_euler.x); ++ EXPECT_EQ(expected_y, reading.orientation_euler.y); ++ EXPECT_EQ(expected_z, reading.orientation_euler.z); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + + sensor->StopSensor(); + } +@@ -1192,12 +1339,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedInclinometerSampleParse) { + ABI::Windows::Devices::Sensors::InclinometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationEulerAngles>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IInclinometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationEulerAngles>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); +@@ -1208,6 +1352,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedInclinometerSampleParse) { + auto reading = Microsoft::WRL::Make<FakeInclinometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0, 0, 0); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + +@@ -1222,6 +1369,8 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedInclinometerSampleParse) { + reading->SetGetYReturnCode(S_OK); + reading->SetGetZReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + // Tests if PlatformSensorReaderWinrtAbsOrientationQuaternion correctly +@@ -1242,32 +1391,32 @@ TEST_F(PlatformSensorReaderTestWinrt, CheckOrientationSensorReadingConversion) { + OrientationSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationQuaternion>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IOrientationSensorStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationQuaternion>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillOnce(testing::Invoke([&](const SensorReading& reading) { +- EXPECT_EQ(expected_w, reading.orientation_quat.w); +- EXPECT_EQ(expected_x, reading.orientation_quat.x); +- EXPECT_EQ(expected_y, reading.orientation_quat.y); +- EXPECT_EQ(expected_z, reading.orientation_quat.z); +- })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + auto reading = Microsoft::WRL::Make<FakeOrientationSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, expected_w, expected_x, expected_y, + expected_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(testing::Invoke([&](const SensorReading& reading) { ++ EXPECT_EQ(expected_w, reading.orientation_quat.w); ++ EXPECT_EQ(expected_x, reading.orientation_quat.x); ++ EXPECT_EQ(expected_y, reading.orientation_quat.y); ++ EXPECT_EQ(expected_z, reading.orientation_quat.z); ++ run_loop.Quit(); ++ })); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } + + sensor->StopSensor(); + } +@@ -1285,14 +1434,9 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedOrientationSampleParse) { + OrientationSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationQuaternion>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IOrientationSensorStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationQuaternion>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); + sensor->SetClient(mock_client.get()); +@@ -1303,12 +1447,17 @@ TEST_F(PlatformSensorReaderTestWinrt, FailedOrientationSampleParse) { + auto reading = Microsoft::WRL::Make<FakeOrientationSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, 0, 0, 0, 0); + ++ // We cannot use a base::RunLoop in the checks below because we are expecting ++ // that MockClient::OnReadingUpdate() does _not_ get called. ++ + reading->SetGetTimestampReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); + + reading->SetGetTimestampReturnCode(S_OK); + reading->SetGetQuaternionReturnCode(E_FAIL); + fake_sensor->TriggerFakeSensorReading(reading); ++ ++ task_environment_.RunUntilIdle(); + } + + TEST_F(PlatformSensorReaderTestWinrt, LightSensorThresholding) { +@@ -1321,29 +1470,30 @@ TEST_F(PlatformSensorReaderTestWinrt, LightSensorThresholding) { + ABI::Windows::Devices::Sensors::LightSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtLightSensor>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::ILightSensorStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtLightSensor>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + float last_sent_lux = 1.0f; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto reading = Microsoft::WRL::Make<FakeLightSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, last_sent_lux); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample +@@ -1359,10 +1509,6 @@ TEST_F(PlatformSensorReaderTestWinrt, LightSensorThresholding) { + PlatformSensorReaderWinrtLightSensor::kLuxPercentThreshold * 0.6f; + threshold_helper(true); + +- // Expect callback, threshold has been met exactly +- last_sent_lux += PlatformSensorReaderWinrtLightSensor::kLuxPercentThreshold; +- threshold_helper(true); +- + sensor->StopSensor(); + } + +@@ -1377,22 +1523,14 @@ TEST_F(PlatformSensorReaderTestWinrt, AccelerometerThresholding) { + Microsoft::WRL::Make<FakeAccelerometerSensorWinrt>()); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtAccelerometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IAccelerometerStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtAccelerometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + +@@ -1400,40 +1538,40 @@ TEST_F(PlatformSensorReaderTestWinrt, AccelerometerThresholding) { + double last_sent_y = 2.0f; + double last_sent_z = 3.0f; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto reading = Microsoft::WRL::Make<FakeAccelerometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, last_sent_x, last_sent_y, + last_sent_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample + threshold_helper(true); + +- // No callback, threshold has not been met ++ // For each axis, increase its value by an amount lower than the threshold so ++ // that no callback is invoked, then meet the threshold and do expect a ++ // callback. + last_sent_x += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.5f; + threshold_helper(false); +- last_sent_y += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.5f; +- threshold_helper(false); +- last_sent_z += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.5f; +- threshold_helper(false); +- +- // Expect callback, threshold has been met since last reported sample + last_sent_x += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.6f; + threshold_helper(true); ++ last_sent_y += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.5f; ++ threshold_helper(false); + last_sent_y += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.6f; + threshold_helper(true); ++ last_sent_z += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.5f; ++ threshold_helper(false); + last_sent_z += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold * 0.6f; + threshold_helper(true); + +- // Expect callback, threshold has been met exactly +- last_sent_x += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold; +- threshold_helper(true); +- last_sent_y += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold; +- threshold_helper(true); +- last_sent_z += PlatformSensorReaderWinrtAccelerometer::kAxisThreshold; +- threshold_helper(true); +- + sensor->StopSensor(); + } + +@@ -1447,20 +1585,13 @@ TEST_F(PlatformSensorReaderTestWinrt, GyrometerThresholding) { + ABI::Windows::Devices::Sensors::GyrometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtGyrometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IGyrometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor<PlatformSensorReaderWinrtGyrometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + +@@ -1468,40 +1599,40 @@ TEST_F(PlatformSensorReaderTestWinrt, GyrometerThresholding) { + double last_sent_y = 4.0f; + double last_sent_z = 5.0f; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto reading = Microsoft::WRL::Make<FakeGyrometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, last_sent_x, last_sent_y, + last_sent_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample + threshold_helper(true); + +- // No callback, threshold has not been met ++ // For each axis, increase its value by an amount lower than the threshold so ++ // that no callback is invoked, then meet the threshold and do expect a ++ // callback. + last_sent_x += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.5f; + threshold_helper(false); +- last_sent_y += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.5f; +- threshold_helper(false); +- last_sent_z += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.5f; +- threshold_helper(false); +- +- // Expect callback, threshold has been met since last reported sample + last_sent_x += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.6f; + threshold_helper(true); ++ last_sent_y += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.5f; ++ threshold_helper(false); + last_sent_y += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.6f; + threshold_helper(true); ++ last_sent_z += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.5f; ++ threshold_helper(false); + last_sent_z += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold * 0.6f; + threshold_helper(true); + +- // Expect callback, threshold has been met exactly +- last_sent_x += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold; +- threshold_helper(true); +- last_sent_y += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold; +- threshold_helper(true); +- last_sent_z += PlatformSensorReaderWinrtGyrometer::kDegreeThreshold; +- threshold_helper(true); +- + sensor->StopSensor(); + } + +@@ -1515,20 +1646,14 @@ TEST_F(PlatformSensorReaderTestWinrt, MagnetometerThresholding) { + ABI::Windows::Devices::Sensors::MagnetometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = std::make_unique<PlatformSensorReaderWinrtMagnetometer>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IMagnetometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = ++ CreateAndInitializeSensor<PlatformSensorReaderWinrtMagnetometer>( ++ fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + +@@ -1536,46 +1661,46 @@ TEST_F(PlatformSensorReaderTestWinrt, MagnetometerThresholding) { + double last_sent_y = 4.0f; + double last_sent_z = 5.0f; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto reading = Microsoft::WRL::Make<FakeMagnetometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, last_sent_x, last_sent_y, + last_sent_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample + threshold_helper(true); + +- // No callback, threshold has not been met ++ // For each axis, increase its value by an amount lower than the threshold so ++ // that no callback is invoked, then meet the threshold and do expect a ++ // callback. + last_sent_x += + PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.5f; + threshold_helper(false); +- last_sent_y += +- PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.5f; +- threshold_helper(false); +- last_sent_z += +- PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.5f; +- threshold_helper(false); +- +- // Expect callback, threshold has been met since last reported sample + last_sent_x += + PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.6f; + threshold_helper(true); ++ last_sent_y += ++ PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.5f; ++ threshold_helper(false); + last_sent_y += + PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.6f; + threshold_helper(true); ++ last_sent_z += ++ PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.5f; ++ threshold_helper(false); + last_sent_z += + PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold * 0.6f; + threshold_helper(true); + +- // Expect callback, threshold has been met exactly +- last_sent_x += PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold; +- threshold_helper(true); +- last_sent_y += PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold; +- threshold_helper(true); +- last_sent_z += PlatformSensorReaderWinrtMagnetometer::kMicroteslaThreshold; +- threshold_helper(true); +- + sensor->StopSensor(); + } + +@@ -1589,21 +1714,13 @@ TEST_F(PlatformSensorReaderTestWinrt, AbsOrientationEulerThresholding) { + ABI::Windows::Devices::Sensors::InclinometerReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationEulerAngles>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IInclinometerStatics** sensor_factory) +- -> HRESULT { return fake_sensor_factory.CopyTo(sensor_factory); })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationEulerAngles>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + +@@ -1611,53 +1728,50 @@ TEST_F(PlatformSensorReaderTestWinrt, AbsOrientationEulerThresholding) { + double last_sent_y = 4.0f; + double last_sent_z = 5.0f; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto reading = Microsoft::WRL::Make<FakeInclinometerReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, last_sent_x, last_sent_y, + last_sent_z); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample + threshold_helper(true); + +- // No callback, threshold has not been met ++ // For each axis, increase its value by an amount lower than the threshold so ++ // that no callback is invoked, then meet the threshold and do expect a ++ // callback. + last_sent_x += + PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * + 0.5f; + threshold_helper(false); +- last_sent_y += +- PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * +- 0.5f; +- threshold_helper(false); +- last_sent_z += +- PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * +- 0.5f; +- threshold_helper(false); +- +- // Expect callback, threshold has been met since last reported sample + last_sent_x += + PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * + 0.6f; + threshold_helper(true); ++ last_sent_y += ++ PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * ++ 0.5f; ++ threshold_helper(false); + last_sent_y += + PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * + 0.6f; + threshold_helper(true); + last_sent_z += + PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * +- 0.6f; +- threshold_helper(true); +- +- // Expect callback, threshold has been met exactly +- last_sent_x += +- PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold; +- threshold_helper(true); +- last_sent_y += +- PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold; +- threshold_helper(true); ++ 0.5f; ++ threshold_helper(false); + last_sent_z += +- PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold; ++ PlatformSensorReaderWinrtAbsOrientationEulerAngles::kDegreeThreshold * ++ 0.6f; + threshold_helper(true); + + sensor->StopSensor(); +@@ -1674,34 +1788,32 @@ TEST_F(PlatformSensorReaderTestWinrt, AbsOrientationQuatThresholding) { + OrientationSensorReadingChangedEventArgs>>(); + auto fake_sensor = fake_sensor_factory->fake_sensor_; + +- auto sensor = +- std::make_unique<PlatformSensorReaderWinrtAbsOrientationQuaternion>(); +- sensor->InitForTesting(base::BindLambdaForTesting( +- [&](ABI::Windows::Devices::Sensors::IOrientationSensorStatics** +- sensor_factory) -> HRESULT { +- return fake_sensor_factory.CopyTo(sensor_factory); +- })); +- EXPECT_TRUE(sensor->Initialize()); ++ auto sensor = CreateAndInitializeSensor< ++ PlatformSensorReaderWinrtAbsOrientationQuaternion>(fake_sensor_factory); ++ ASSERT_TRUE(sensor); + + auto mock_client = std::make_unique<testing::NiceMock<MockClient>>(); +- +- bool expected_callback = false; +- EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) +- .WillRepeatedly(testing::Invoke( +- [&](const SensorReading&) { EXPECT_TRUE(expected_callback); })); +- + sensor->SetClient(mock_client.get()); ++ + PlatformSensorConfiguration sensor_config(kExpectedReportFrequencySet); + EXPECT_TRUE(sensor->StartSensor(sensor_config)); + + double last_sent_rad = 1.0; + auto threshold_helper = [&](bool expect_callback) { +- expected_callback = expect_callback; + auto quat = gfx::Quaternion(gfx::Vector3dF(1.0, 0, 0), last_sent_rad); + auto reading = Microsoft::WRL::Make<FakeOrientationSensorReadingWinrt>( + ABI::Windows::Foundation::DateTime{}, quat.w(), quat.x(), quat.y(), + quat.z()); +- fake_sensor->TriggerFakeSensorReading(reading); ++ if (expect_callback) { ++ base::RunLoop run_loop; ++ EXPECT_CALL(*mock_client, OnReadingUpdated(::testing::_)) ++ .WillOnce(base::test::RunClosure(run_loop.QuitClosure())); ++ fake_sensor->TriggerFakeSensorReading(reading); ++ run_loop.Run(); ++ } else { ++ fake_sensor->TriggerFakeSensorReading(reading); ++ task_environment_.RunUntilIdle(); ++ } + }; + + // Expect callback, first sample +@@ -1719,11 +1831,6 @@ TEST_F(PlatformSensorReaderTestWinrt, AbsOrientationQuatThresholding) { + 0.6f; + threshold_helper(true); + +- // Expect callback, threshold has been met exactly +- last_sent_rad += +- PlatformSensorReaderWinrtAbsOrientationQuaternion::kRadianThreshold; +- threshold_helper(true); +- + sensor->StopSensor(); + } + +diff --git a/chromium/services/device/generic_sensor/platform_sensor_win.cc b/chromium/services/device/generic_sensor/platform_sensor_win.cc +index 3ee3c1fa86a8..e9a78687250f 100644 +--- src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_win.cc ++++ src/3rdparty/chromium/services/device/generic_sensor/platform_sensor_win.cc +@@ -43,6 +43,8 @@ double PlatformSensorWin::GetMaximumSupportedFrequency() { + } + + void PlatformSensorWin::OnReadingUpdated(const SensorReading& reading) { ++ // This function is normally called from |sensor_thread_runner_|, except on ++ // PlatformSensorAndProviderTestWin. + UpdateSharedBufferAndNotifyClients(reading); + } + +@@ -75,6 +77,7 @@ bool PlatformSensorWin::CheckSensorConfiguration( + } + + PlatformSensorWin::~PlatformSensorWin() { ++ DCHECK(main_task_runner()->RunsTasksInCurrentSequence()); + sensor_reader_->SetClient(nullptr); + sensor_thread_runner_->DeleteSoon(FROM_HERE, sensor_reader_.get()); + } +From dbafaa10eb690d68e0531313663f47c422dc8771 Mon Sep 17 00:00:00 2001 +From: kylechar <kylechar@chromium.org> +Date: Tue, 9 Apr 2024 17:14:26 +0000 +Subject: [PATCH] [Backport] CVE-2024-3157: Out of bounds write in Compositing + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5420432: +Validate buffer length + +The BitmapInSharedMemory mojo traits were only validating row length and +not total buffer length. + +(cherry picked from commit 1a19ff70bd54847d818566bd7a1e7c384c419746) + +(cherry picked from commit f15315f1cb7897e208947a40d538aac693283d7f) + +Bug: 331237485 +Change-Id: Ia2318899c44e9e7ac72fc7183954e6ce2c702179 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5396796 +Commit-Queue: Kyle Charbonneau <kylechar@chromium.org> +Cr-Original-Original-Commit-Position: refs/heads/main@{#1278417} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5420432 +Commit-Queue: danakj <danakj@chromium.org> +Cr-Original-Commit-Position: refs/branch-heads/6312@{#786} +Cr-Original-Branched-From: 6711dcdae48edaf98cbc6964f90fac85b7d9986e-refs/heads/main@{#1262506} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5433678 +Reviewed-by: danakj <danakj@chromium.org> +Reviewed-by: Kyle Charbonneau <kylechar@chromium.org> +Cr-Commit-Position: refs/branch-heads/6099@{#2003} +Cr-Branched-From: e6ee4500f7d6549a9ac1354f8d056da49ef406be-refs/heads/main@{#1217362} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554656 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc b/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc +index a6e5f45d9e72..519d554055e5 100644 +--- src/3rdparty/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc ++++ src/3rdparty/chromium/services/viz/public/cpp/compositing/bitmap_in_shared_memory_mojom_traits.cc +@@ -76,6 +76,10 @@ bool StructTraits<viz::mojom::BitmapInSharedMemoryDataView, SkBitmap>::Read( + if (!mapping_ptr->IsValid()) + return false; + ++ if (mapping_ptr->size() < image_info.computeByteSize(data.row_bytes())) { ++ return false; ++ } ++ + if (!sk_bitmap->installPixels(image_info, mapping_ptr->memory(), + data.row_bytes(), &DeleteSharedMemoryMapping, + mapping_ptr.get())) { +From ac780f41ba9b3eb8329ca8e09b8857a070aed8c1 Mon Sep 17 00:00:00 2001 +From: Shahbaz Youssefi <syoussefi@chromium.org> +Date: Mon, 25 Mar 2024 14:46:56 -0400 +Subject: [PATCH] [Backport] CVE-2024-3516: Heap buffer overflow in ANGLE + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/angle/angle/+/5391986: +Translator: Disallow samplers in structs in interface blocks + +As disallowed by the spec: + +> Types and declarators are the same as for other uniform variable +> declarations outside blocks, with these exceptions: +> +> * opaque types are not allowed + +Bug: chromium:328859176 +Change-Id: Ib94977860102329e520e635c3757827c93ca2163 +Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5391986 +Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> +Reviewed-by: Geoff Lang <geofflang@chromium.org> +Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/554657 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../src/compiler/translator/ParseContext.cpp | 33 ++++++++++++------- + 1 file changed, 21 insertions(+), 12 deletions(-) + +diff --git a/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp b/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp +index e174725beb7..cb9eb3a4a56 100644 +--- src/3rdparty/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp ++++ src/3rdparty/chromium/third_party/angle/src/compiler/translator/ParseContext.cpp +@@ -34,27 +34,39 @@ namespace + + const int kWebGLMaxStructNesting = 4; + +-bool ContainsSampler(const TStructure *structType); ++struct IsSamplerFunc ++{ ++ bool operator()(TBasicType type) { return IsSampler(type); } ++}; ++struct IsOpaqueFunc ++{ ++ bool operator()(TBasicType type) { return IsOpaqueType(type); } ++}; ++ ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TStructure *structType); + +-bool ContainsSampler(const TType &type) ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TType &type) + { +- if (IsSampler(type.getBasicType())) ++ if (OpaqueFunc{}(type.getBasicType())) + { + return true; + } + if (type.getBasicType() == EbtStruct) + { +- return ContainsSampler(type.getStruct()); ++ return ContainsOpaque<OpaqueFunc>(type.getStruct()); + } + + return false; + } + +-bool ContainsSampler(const TStructure *structType) ++template <typename OpaqueFunc> ++bool ContainsOpaque(const TStructure *structType) + { + for (const auto &field : structType->fields()) + { +- if (ContainsSampler(*field->type())) ++ if (ContainsOpaque<OpaqueFunc>(*field->type())) + return true; + } + return false; +@@ -1057,7 +1069,7 @@ bool TParseContext::checkIsNotOpaqueType(const TSourceLoc &line, + { + if (pType.type == EbtStruct) + { +- if (ContainsSampler(pType.userDef)) ++ if (ContainsOpaque<IsSamplerFunc>(pType.userDef)) + { + std::stringstream reasonStream = sh::InitializeStream<std::stringstream>(); + reasonStream << reason << " (structure contains a sampler)"; +@@ -4923,12 +4935,9 @@ TIntermDeclaration *TParseContext::addInterfaceBlock( + { + TField *field = (*fieldList)[memberIndex]; + TType *fieldType = field->type(); +- if (IsOpaqueType(fieldType->getBasicType())) ++ if (ContainsOpaque<IsOpaqueFunc>(*fieldType)) + { +- std::string reason("unsupported type - "); +- reason += fieldType->getBasicString(); +- reason += " types are not allowed in interface blocks"; +- error(field->line(), reason.c_str(), fieldType->getBasicString()); ++ error(field->line(), "Opaque types are not allowed in interface blocks", blockName); + } + + const TQualifier qualifier = fieldType->getQualifier(); +From a766045f65f934df3b5f1aa63bc86fbb3e003a09 Mon Sep 17 00:00:00 2001 +From: Anu Aliyas <anu.aliyas@qt.io> +Date: Wed, 17 Apr 2024 12:35:58 +0200 +Subject: [PATCH] Add missing dependencies to avoid compilation errors + +Missing dependencies are added to resolve the dependencies issues +encountered when compiling with Ninja 1.12.0 + +Fixes:QTBUG-124375 +Change-Id: I0f23ef6c60a6f01ee11bffd46121fd7f98dc022c +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/555586 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/content/public/browser/BUILD.gn | 1 + + chromium/extensions/browser/api/declarative_net_request/BUILD.gn | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/chromium/content/public/browser/BUILD.gn b/chromium/content/public/browser/BUILD.gn +index d38fa8d303a..c5813115e88 100644 +--- src/3rdparty/chromium/content/public/browser/BUILD.gn ++++ src/3rdparty/chromium/content/public/browser/BUILD.gn +@@ -539,6 +539,7 @@ jumbo_source_set("browser_sources") { + "//cc", + "//components/services/storage/public/cpp", + "//components/viz/host", ++ "//components/spellcheck:buildflags", + "//content/browser", # Must not be public_deps! + "//device/fido", + "//gpu", +diff --git a/chromium/extensions/browser/api/declarative_net_request/BUILD.gn b/chromium/extensions/browser/api/declarative_net_request/BUILD.gn +index 1fc492f5a0c..13a266e22f1 100644 +--- src/3rdparty/chromium/extensions/browser/api/declarative_net_request/BUILD.gn ++++ src/3rdparty/chromium/extensions/browser/api/declarative_net_request/BUILD.gn +@@ -23,6 +23,7 @@ source_set("declarative_net_request") { + "//extensions/common", + "//extensions/common/api", + "//services/preferences/public/cpp", ++ "//components/web_cache/browser", + ] + + public_deps = [ "//extensions/browser:browser_sources" ] +From d26ab136f38d6bf3311eb04136820b85bc2fc96e Mon Sep 17 00:00:00 2001 +From: Dan Sanders <sandersd@chromium.org> +Date: Mon, 26 Feb 2024 20:53:06 +0000 +Subject: [PATCH] [Backport] Security bug 326521449 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5323230: +Validate recovery_frame_cnt_ at time of use. + +Bug: b/326521449 +Change-Id: I778a16553bb3319dddfef6121895a89e0f1938df +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5323230 +Commit-Queue: Dan Sanders <sandersd@chromium.org> +Reviewed-by: Dale Curtis <dalecurtis@chromium.org> +Commit-Queue: Dale Curtis <dalecurtis@chromium.org> +Auto-Submit: Dan Sanders <sandersd@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1265425} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556725 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/media/gpu/h264_decoder.cc | 21 +++++++++++---------- + 1 file changed, 11 insertions(+), 10 deletions(-) + +diff --git a/chromium/media/gpu/h264_decoder.cc b/chromium/media/gpu/h264_decoder.cc +index 2bfdd28d83a..ef9de709045 100644 +--- src/3rdparty/chromium/media/gpu/h264_decoder.cc ++++ src/3rdparty/chromium/media/gpu/h264_decoder.cc +@@ -769,13 +769,6 @@ H264Decoder::H264Accelerator::Status H264Decoder::StartNewFrame( + return H264Accelerator::Status::kFail; + } + +- if (recovery_frame_cnt_ && *recovery_frame_cnt_ >= max_frame_num_) { +- DVLOG(1) << "Invalid recovery_frame_cnt=" << *recovery_frame_cnt_ +- << " (it must be less or equal to max_frame_num-1=" << max_frame_num_ - 1 +- << ")"; +- return H264Accelerator::Status::kFail; +- } +- + if (!InitCurrPicture(slice_hdr)) + return H264Accelerator::Status::kFail; + +@@ -999,11 +992,19 @@ bool H264Decoder::FinishPicture(scoped_refptr<H264Picture> pic) { + DVLOG(4) << "Finishing picture frame_num: " << pic->frame_num + << ", entries in DPB: " << dpb_.size(); + if (recovery_frame_cnt_) { +- // This is the first picture after the recovery point SEI message. Computes +- // the frame_num of the frame that should be output from (Spec D.2.8). ++ // This is the first picture after the recovery point SEI message. Validate ++ // `recovery_frame_cnt_` now that we are certain to have max_frame_num_. ++ if (*recovery_frame_cnt_ >= max_frame_num_) { ++ DVLOG(1) << "Invalid recovery_frame_cnt=" << *recovery_frame_cnt_ ++ << " (must be less than or equal to max_frame_num-1=" ++ << (max_frame_num_ - 1) << ")"; ++ return false; ++ } ++ ++ // Compute the frame_num of the first frame that should be output (D.2.8). + recovery_frame_num_ = + (*recovery_frame_cnt_ + pic->frame_num) % max_frame_num_; +- DVLOG(3) << "recovery_frame_num_" << *recovery_frame_num_; ++ DVLOG(3) << "recovery_frame_num_=" << *recovery_frame_num_; + recovery_frame_cnt_.reset(); + } + +From 08e69b86a697e265b3e064b06a05fc5e7a4e079b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dominik=20R=C3=B6ttsches?= <drott@chromium.org> +Date: Thu, 14 Mar 2024 12:48:18 +0000 +Subject: [PATCH] [Backport] CVE-2024-3839: Out of bounds read in Fonts +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5361874: +Disable STAT sanitization/checks through OTS + +Due to issues in upstream, OTS STAT sanitization does not provide an +added security benefit. Pass-through the STAT table. + +Bug: chromium:41491859 +Change-Id: I19dcd87376af553afe242452396b951a74691f3c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5361874 +Commit-Queue: Dominik R旦ttsches <drott@chromium.org> +Reviewed-by: Koji Ishii <kojii@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1272710} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556726 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../blink/renderer/platform/fonts/web_font_decoder.cc | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/chromium/third_party/blink/renderer/platform/fonts/web_font_decoder.cc b/chromium/third_party/blink/renderer/platform/fonts/web_font_decoder.cc +index 0953dc528dd..1ac9b8c9623 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/web_font_decoder.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/web_font_decoder.cc +@@ -104,6 +104,7 @@ ots::TableAction BlinkOTSContext::GetTableAction(uint32_t tag) { + const uint32_t kCpalTag = OTS_TAG('C', 'P', 'A', 'L'); + const uint32_t kCff2Tag = OTS_TAG('C', 'F', 'F', '2'); + const uint32_t kSbixTag = OTS_TAG('s', 'b', 'i', 'x'); ++ const uint32_t kStatTag = OTS_TAG('S', 'T', 'A', 'T'); + #if HB_VERSION_ATLEAST(1, 0, 0) + const uint32_t kBaseTag = OTS_TAG('B', 'A', 'S', 'E'); + const uint32_t kGdefTag = OTS_TAG('G', 'D', 'E', 'F'); +@@ -131,6 +132,7 @@ ots::TableAction BlinkOTSContext::GetTableAction(uint32_t tag) { + case kCpalTag: + case kCff2Tag: + case kSbixTag: ++ case kStatTag: + #if HB_VERSION_ATLEAST(1, 0, 0) + // Let HarfBuzz handle how to deal with broken tables. + case kAvarTag: +From 8755f5a5aafae5a0e74839042cd2f65dc86061e8 Mon Sep 17 00:00:00 2001 +From: Liza Burakova <liza@chromium.org> +Date: Wed, 21 Feb 2024 19:02:15 +0000 +Subject: [PATCH] [Backport] CVE-2024-3837: Use after free in QUIC + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5268864: +Check if session is going away in Handle::RequestStream. + +This CL adds an extra check in the QuicChromiumClientSession +handle's RequestSession to make sure the session is not +marked as going away before creating a new StreamRequest. + +Bug: 41491379 +Change-Id: I687dfc23131871cdba345d3cf78dbbbd2e619ce9 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5268864 +Reviewed-by: Kenichi Ishibashi <bashi@chromium.org> +Commit-Queue: Liza Burakova <liza@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1263483} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556727 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/net/quic/quic_chromium_client_session.cc | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/chromium/net/quic/quic_chromium_client_session.cc b/chromium/net/quic/quic_chromium_client_session.cc +index d039d1ccb94..400006a170f 100644 +--- src/3rdparty/chromium/net/quic/quic_chromium_client_session.cc ++++ src/3rdparty/chromium/net/quic/quic_chromium_client_session.cc +@@ -454,7 +454,8 @@ int QuicChromiumClientSession::Handle::RequestStream( + const NetworkTrafficAnnotationTag& traffic_annotation) { + DCHECK(!stream_request_); + +- if (!session_) ++ // TODO(crbug.com/41491379): Add a regression test. ++ if (!session_ || session_->going_away_) + return ERR_CONNECTION_CLOSED; + + requires_confirmation |= session_->gquic_zero_rtt_disabled(); +From 271e21366ac1826df43119eb7b746019947be1f7 Mon Sep 17 00:00:00 2001 +From: Brendon Tiszka <tiszka@chromium.org> +Date: Sun, 3 Mar 2024 21:30:59 +0000 +Subject: [PATCH] [Backport] Security bug 327698060 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5337387: +PaintOpReader: Harden PaintImage deserialization + +Add missing validity check after `Read` + +Bug: 327698060 +Change-Id: I0aa5120296009998af3235a01304a1f597a82a33 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5337387 +Commit-Queue: Khushal Sagar <khushalsagar@chromium.org> +Reviewed-by: Khushal Sagar <khushalsagar@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1267636} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556748 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/cc/paint/paint_op_reader.cc | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/chromium/cc/paint/paint_op_reader.cc b/chromium/cc/paint/paint_op_reader.cc +index 6d920c33562..7d1eb51441f 100644 +--- src/3rdparty/chromium/cc/paint/paint_op_reader.cc ++++ src/3rdparty/chromium/cc/paint/paint_op_reader.cc +@@ -351,6 +351,9 @@ void PaintOpReader::Read(PaintImage* image) { + case PaintOp::SerializedImageType::kImageData: { + SkColorType color_type; + Read(&color_type); ++ if (!valid_) { ++ return; ++ } + // Color types requiring alignment larger than kDefaultAlignment is not + // supported. + if (static_cast<size_t>(SkColorTypeBytesPerPixel(color_type)) > +From 502983e6adc3db0d12ee8e9ff35d53df0e149870 Mon Sep 17 00:00:00 2001 +From: Pete Williamson <petewil@chromium.org> +Date: Tue, 27 Feb 2024 00:19:05 +0000 +Subject: [PATCH] [Backport] Security bug 40940917 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5293726: +Fix misalligned address in hunspell::NodeReader::ReaderForLookupAt + +With the Hunspell spell checking library, we are using a custom wrapper +to read the dictionaries from files. In that custom wrapper, we were +reading by using reinterpret_cast to interpret an offset into a pointer, +and then reading the bytes at that pointer for the child_offset. + +The spell checking code appears to have been working properly in the +field. However, the current code caused fuzzing test failures, and +those failures are blocking other tests, so we need to fix this to +unblock other tests. + +It turns out that we were casting a value to a pointer that did not +have proper alignment (for instance, a pointer to a 32 bit int needs +to be 4 byte allinged, but this pointer was not). While it has often +worked in older compilers, it turns out this is undefined behavior. + +Instead of relying on undefined behavior, the right thing to do is to +use std::memcpy to copy the bytes from the misalligned address into +their final destination (either an int32 or an int16 in this case). + +Bug: 40940917 +Change-Id: I8aeba9ee8000b51e98863813235d8dceb1c41ceb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5293726 +Commit-Queue: Peter Williamson <petewil@chromium.org> +Reviewed-by: Trevor Perrier <perrier@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1265552} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556750 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../hunspell/google/bdict_reader.cc | 26 ++++++++++++++----- + 1 file changed, 20 insertions(+), 6 deletions(-) + +diff --git a/chromium/third_party/hunspell/google/bdict_reader.cc b/chromium/third_party/hunspell/google/bdict_reader.cc +index d51112ea48e7..56abd15dd121 100644 +--- src/3rdparty/chromium/third_party/hunspell/google/bdict_reader.cc ++++ src/3rdparty/chromium/third_party/hunspell/google/bdict_reader.cc +@@ -5,6 +5,7 @@ + #include "third_party/hunspell/google/bdict_reader.h" + + #include <stdint.h> ++#include <cstdint> + + #include "base/check.h" + +@@ -413,19 +414,32 @@ NodeReader::FindResult NodeReader::ReaderForLookupAt( + if (index >= static_cast<size_t>(lookup_num_chars()) || !is_valid_) + return FIND_DONE; + +- size_t child_offset; ++ size_t child_offset = 0; + if (is_lookup_32()) { + // Table contains 32-bit absolute offsets. +- child_offset = +- reinterpret_cast<const unsigned int*>(table_begin)[index]; ++ ++ // We need to use memcpy here instead of just casting the offset into a ++ // pointer to an int because the cast can cause undefined behavior if ++ // the pointer is not alligned, and in this case it is not. ++ int byte_offset = index * sizeof(uint32_t); ++ std::memcpy(&child_offset, ++ reinterpret_cast<const void*>(table_begin + byte_offset), ++ sizeof(uint32_t)); + if (!child_offset) + return FIND_NOTHING; // This entry in the table is empty. + } else { + // Table contains 16-bit offsets relative to the current node. +- child_offset = +- reinterpret_cast<const unsigned short*>(table_begin)[index]; +- if (!child_offset) ++ ++ // We need to use memcpy here instead of just casting the offset into a ++ // pointer to an int because the cast can cause undefined behavior if ++ // the pointer is not alligned, and in this case it is not. ++ int byte_offset = index * sizeof(uint16_t); ++ std::memcpy(&child_offset, ++ reinterpret_cast<const void*>(table_begin + byte_offset), ++ sizeof(uint16_t)); ++ if (!child_offset) { + return FIND_NOTHING; // This entry in the table is empty. ++ } + child_offset += node_offset_; + } + +From 6086d28d3a0dbfac1808ba5767ca1eea4a5acaf9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marja=20H=C3=B6ltt=C3=A4?= <marja@google.com> +Date: Tue, 26 Mar 2024 13:53:21 +0000 +Subject: [PATCH] [Backport] CVE-2024-3914: Use after free in V8 (1/2) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Manual backport of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5387887: +[M120-LTS] Fix DOMArrayBuffer::IsDetached() + +M120 merge issues: + third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc: + - Conflicting types for variable worlds + - Conflicting AllWorldsInIsolate() call (M120 doesn't use the last argument) + +A DOMArrayBuffer was maintaining its own "is_detached_" state, and +would consider itself non-detached even if the corresponding +JSArrayBuffer (or, all of them, in case there are several) was +detached. + +Piping in the v8::Isolate would be a too big change for this fix, so this is using v8::Isolate::GetCurrent() for now. + +Bug: 330759272 +Change-Id: I1e98ebd2066d2e59658db12f1bb419b6ebc1d706 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5387887 +Commit-Queue: Marja H旦ltt辰 <marja@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1278283} +(cherry picked from commit 04e7550d7aa3bf4ac4e49d7074972d357de139e6) +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556751 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../core/typed_arrays/dom_array_buffer.cc | 50 +++++++++++++++++++ + .../core/typed_arrays/dom_array_buffer.h | 13 +++++ + .../core/typed_arrays/dom_array_buffer_base.h | 2 +- + 3 files changed, 64 insertions(+), 1 deletion(-) + +diff --git a/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc b/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc +index c195e28b442..197a4aebf5b 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc +@@ -48,6 +48,15 @@ static void AccumulateArrayBuffersForAllWorlds( + v8::Isolate* isolate, + DOMArrayBuffer* object, + Vector<v8::Local<v8::ArrayBuffer>, 4>& buffers) { ++ if (!object->has_non_main_world_wrappers() && IsMainThread()) { ++ const DOMWrapperWorld& world = DOMWrapperWorld::MainWorld(); ++ v8::Local<v8::Object> wrapper = world.DomDataStore().Get(object, isolate); ++ if (!wrapper.IsEmpty()) { ++ buffers.push_back(v8::Local<v8::ArrayBuffer>::Cast(wrapper)); ++ } ++ return; ++ } ++ + Vector<scoped_refptr<DOMWrapperWorld>> worlds; + DOMWrapperWorld::AllWorldsInCurrentThread(worlds); + for (const auto& world : worlds) { +@@ -256,6 +265,47 @@ v8::MaybeLocal<v8::Value> DOMArrayBuffer::Wrap(ScriptState* script_state) { + wrapper); + } + ++bool DOMArrayBuffer::IsDetached() const { ++ if (contents_.BackingStore() == nullptr) { ++ return is_detached_; ++ } ++ if (is_detached_) { ++ return true; ++ } ++ ++ v8::Isolate* isolate = v8::Isolate::GetCurrent(); ++ v8::HandleScope handle_scope(isolate); ++ Vector<v8::Local<v8::ArrayBuffer>, 4> buffer_handles; ++ AccumulateArrayBuffersForAllWorlds(isolate, const_cast<DOMArrayBuffer*>(this), buffer_handles); ++ ++ // There may be several v8::ArrayBuffers corresponding to the DOMArrayBuffer, ++ // but at most one of them may be non-detached. ++ int nondetached_count = 0; ++ int detached_count = 0; ++ ++ for (const auto& buffer_handle : buffer_handles) { ++ if (buffer_handle->WasDetached()) { ++ ++detached_count; ++ } else { ++ ++nondetached_count; ++ } ++ } ++ CHECK_LE(nondetached_count, 1); ++ ++ return nondetached_count == 0 && detached_count > 0; ++} ++ ++v8::Local<v8::Object> DOMArrayBuffer::AssociateWithWrapper( ++ v8::Isolate* isolate, ++ const WrapperTypeInfo* wrapper_type_info, ++ v8::Local<v8::Object> wrapper) { ++ if (!DOMWrapperWorld::Current(isolate).IsMainWorld()) { ++ has_non_main_world_wrappers_ = true; ++ } ++ return ScriptWrappable::AssociateWithWrapper(isolate, wrapper_type_info, ++ wrapper); ++} ++ + DOMArrayBuffer* DOMArrayBuffer::Slice(size_t begin, size_t end) const { + begin = std::min(begin, ByteLength()); + end = std::min(end, ByteLength()); +diff --git a/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h b/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h +index 87881af8787..84322ff31fc 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h ++++ src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h +@@ -87,6 +87,17 @@ class CORE_EXPORT DOMArrayBuffer : public DOMArrayBufferBase { + + void Trace(Visitor*) const override; + ++ bool IsDetached() const override; ++ ++ v8::Local<v8::Object> AssociateWithWrapper( ++ v8::Isolate* isolate, ++ const WrapperTypeInfo* wrapper_type_info, ++ v8::Local<v8::Object> wrapper) override; ++ ++ bool has_non_main_world_wrappers() const { ++ return has_non_main_world_wrappers_; ++ } ++ + private: + v8::Maybe<bool> TransferDetachable(v8::Isolate*, + v8::Local<v8::Value> detach_key, +@@ -97,6 +108,8 @@ class CORE_EXPORT DOMArrayBuffer : public DOMArrayBufferBase { + // support only v8::String as the detach key type. It's also convenient that + // we can write `array_buffer->SetDetachKey(isolate, "my key")`. + TraceWrapperV8Reference<v8::String> detach_key_; ++ ++ bool has_non_main_world_wrappers_ = false; + }; + + } // namespace blink +diff --git a/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer_base.h b/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer_base.h +index 95511438595..c83dc489c97 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer_base.h ++++ src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer_base.h +@@ -27,7 +27,7 @@ class CORE_EXPORT DOMArrayBufferBase : public ScriptWrappable { + + size_t ByteLength() const { return contents_.DataLength(); } + +- bool IsDetached() const { return is_detached_; } ++ virtual bool IsDetached() const { return is_detached_; } + + void Detach() { is_detached_ = true; } + +From 92d5d3c528d5c4b22aa295b6b26303f174c0991b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marja=20H=C3=B6ltt=C3=A4?= <marja@google.com> +Date: Thu, 4 Apr 2024 09:43:42 +0200 +Subject: [PATCH] [Backport] CVE-2024-3914: Use after free in V8 (2/2) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5419329: +[M120-LTS] Comment out a CHECK that a DOMAB has maximally one non-detached JSAB + +Based on crash reports, this assumption is not true and has to be +investigated. + +Removing this newly introduced CHECK to be able to merge fixes in this +area - we still violate this invariant but the fixes are a step into +the right direction. + +Fix in question: +https://chromium-review.googlesource.com/5387887 +which also introduced this CHECK. + +Bug: 330759272 +Change-Id: I4ba52fee7ed8f45e352efd347e87df03d896ac3d +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5419329 +Commit-Queue: Marja H旦ltt辰 <marja@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1282379} +(cherry picked from commit 1e1e1bccfb84713fc325025eae43e746abcc115d) +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556752 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../blink/renderer/core/typed_arrays/dom_array_buffer.cc | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc b/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc +index 197a4aebf5b..796f45d7114 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/core/typed_arrays/dom_array_buffer.cc +@@ -290,7 +290,11 @@ bool DOMArrayBuffer::IsDetached() const { + ++nondetached_count; + } + } +- CHECK_LE(nondetached_count, 1); ++ // This CHECK fires even though it should not. TODO(330759272): Investigate ++ // under which conditions we end up with multiple non-detached JSABs for the ++ // same DOMAB and potentially restore this check. ++ ++ // CHECK_LE(nondetached_count, 1); + + return nondetached_count == 0 && detached_count > 0; + } +From 7ea70f94879b466b8319a52b786ae2ce3e47b737 Mon Sep 17 00:00:00 2001 +From: Dan McArdle <dmcardle@chromium.org> +Date: Tue, 30 Jan 2024 22:20:43 +0000 +Subject: [PATCH] [Backport] Dependency for security bug 326498393 (1/2) + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5245970: +Prevent dangling pointer by inlining ScopedBusyTimeout + +Bug: 1522873 +Change-Id: Icd6262eb23404c273fa31021cddf36bea0bb56db +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5245970 +Reviewed-by: Evan Stade <estade@chromium.org> +Reviewed-by: David Benjamin <davidben@chromium.org> +Commit-Queue: Dan McArdle <dmcardle@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1254220} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556851 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/sql/database.cc | 48 +++++++++++++++------------------------- + 1 file changed, 18 insertions(+), 30 deletions(-) + +diff --git a/chromium/sql/database.cc b/chromium/sql/database.cc +index d5d350e85f4..5825127634a 100644 +--- src/3rdparty/chromium/sql/database.cc ++++ src/3rdparty/chromium/sql/database.cc +@@ -74,21 +74,6 @@ static constexpr char kSqliteOpenInMemoryPath[] = ":memory:"; + // TODO(shess): Better story on this. http://crbug.com/56559 + const int kBusyTimeoutSeconds = 1; + +-class ScopedBusyTimeout { +- public: +- explicit ScopedBusyTimeout(sqlite3* db) : db_(db) {} +- ~ScopedBusyTimeout() { sqlite3_busy_timeout(db_, 0); } +- +- int SetTimeout(base::TimeDelta timeout) { +- DCHECK_LT(timeout.InMilliseconds(), INT_MAX); +- return sqlite3_busy_timeout(db_, +- static_cast<int>(timeout.InMilliseconds())); +- } +- +- private: +- raw_ptr<sqlite3> db_; +-}; +- + // Helper to "safely" enable writable_schema. No error checking + // because it is reasonable to just forge ahead in case of an error. + // If turning it on fails, then most likely nothing will work, whereas +@@ -1405,22 +1390,14 @@ SqliteResultCode Database::ExecuteAndReturnResultCode(const char* sql) { + } + + bool Database::Execute(const char* sql) { +- TRACE_EVENT1("sql", "Database::Execute", "query", TRACE_STR_COPY(sql)); +- +- if (!db_) { +- DCHECK(poisoned_) << "Illegal use of Database without a db"; +- return false; +- } ++ TRACE_EVENT0("sql", "Database::Execute"); + +- SqliteResultCode sqlite_result_code = ExecuteAndReturnResultCode(sql); +- if (sqlite_result_code != SqliteResultCode::kOk) +- OnSqliteError(ToSqliteErrorCode(sqlite_result_code), nullptr, sql); +- +- return sqlite_result_code == SqliteResultCode::kOk; ++ return ExecuteWithTimeout(sql, base::TimeDelta()); + } + + bool Database::ExecuteWithTimeout(const char* sql, base::TimeDelta timeout) { +- TRACE_EVENT0("sql", "Database::ExecuteWithTimeout"); ++ TRACE_EVENT1("sql", "Database::ExecuteWithTimeout", "query", ++ TRACE_STR_COPY(sql)); + + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + if (!db_) { +@@ -1428,9 +1405,20 @@ bool Database::ExecuteWithTimeout(const char* sql, base::TimeDelta timeout) { + return false; + } + +- ScopedBusyTimeout busy_timeout(db_); +- busy_timeout.SetTimeout(timeout); +- return Execute(sql); ++ // Passing zero or a negative value to sqlite3_busy_timeout() would clear any ++ // busy handlers defined prior to this point. ++ if (timeout.is_positive()) { ++ DCHECK_LT(timeout.InMilliseconds(), INT_MAX); ++ sqlite3_busy_timeout(db_, static_cast<int>(timeout.InMilliseconds())); ++ } ++ SqliteResultCode sqlite_result_code = ExecuteAndReturnResultCode(sql); ++ sqlite3_busy_timeout(db_, 0); ++ if (sqlite_result_code != SqliteResultCode::kOk) { ++ OnSqliteError(ToSqliteErrorCode(sqlite_result_code), nullptr, sql); ++ // At this point, `this` may have been modified or even deleted as a result ++ // of the caller-provided error callback. ++ } ++ return sqlite_result_code == SqliteResultCode::kOk; + } + + bool Database::ExecuteScriptForTesting(const char* sql_script) { +From 1e584e2b322c5bc8ff49a7a64375d969662242e1 Mon Sep 17 00:00:00 2001 +From: Dan McArdle <dmcardle@chromium.org> +Date: Tue, 6 Feb 2024 23:15:33 +0000 +Subject: [PATCH] [Backport] Dependency for security bug 326498393 (2/2) + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5245191: +Prevent dangling pointer in ScopedWritableSchema + +Bug: 1522873 +Change-Id: I71d7d178c98f2f2fc880762942fbca608d8cb81c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5245191 +Reviewed-by: Evan Stade <estade@chromium.org> +Commit-Queue: Dan McArdle <dmcardle@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1257060} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556852 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/sql/database.cc | 29 +++++++++++++++++++---------- + chromium/sql/database.h | 4 ++++ + 2 files changed, 23 insertions(+), 10 deletions(-) + +diff --git a/chromium/sql/database.cc b/chromium/sql/database.cc +index 5825127634a..54c7c44c7e2 100644 +--- src/3rdparty/chromium/sql/database.cc ++++ src/3rdparty/chromium/sql/database.cc +@@ -74,23 +74,29 @@ static constexpr char kSqliteOpenInMemoryPath[] = ":memory:"; + // TODO(shess): Better story on this. http://crbug.com/56559 + const int kBusyTimeoutSeconds = 1; + +-// Helper to "safely" enable writable_schema. No error checking +-// because it is reasonable to just forge ahead in case of an error. +-// If turning it on fails, then most likely nothing will work, whereas +-// if turning it off fails, it only matters if some code attempts to +-// continue working with the database and tries to modify the ++// RAII-style wrapper that enables `writable_schema` until it goes out of scope. ++// No error checking on the PRAGMA statements because it is reasonable to just ++// forge ahead in case of an error. If turning it on fails, then most likely ++// nothing will work, whereas if turning it off fails, it only matters if some ++// code attempts to continue working with the database and tries to modify the + // sqlite_schema table (none of our code does this). + class ScopedWritableSchema { + public: +- explicit ScopedWritableSchema(sqlite3* db) : db_(db) { +- sqlite3_exec(db_, "PRAGMA writable_schema=1", nullptr, nullptr, nullptr); ++ explicit ScopedWritableSchema(base::WeakPtr<Database> db) ++ : db_(std::move(db)) { ++ CHECK(db_->is_open()); ++ std::ignore = db_->Execute("PRAGMA writable_schema=1"); + } + ~ScopedWritableSchema() { +- sqlite3_exec(db_, "PRAGMA writable_schema=0", nullptr, nullptr, nullptr); ++ // Database invalidates its WeakPtrs before closing the SQLite connection. ++ if (db_) { ++ CHECK(db_->is_open()); ++ std::ignore = db_->Execute("PRAGMA writable_schema=0"); ++ } + } + + private: +- raw_ptr<sqlite3> db_; ++ const base::WeakPtr<Database> db_; + }; + + // Raze() helper that uses SQLite's online backup API. +@@ -386,6 +392,9 @@ void Database::CloseInternal(bool forced) { + std::move(memory_dump_provider_)); + } + ++ // Invalidate any `WeakPtr`s held by scoping helpers. ++ weak_factory_.InvalidateWeakPtrs(); ++ + auto sqlite_result_code = ToSqliteResultCode(sqlite3_close(db_)); + + DCHECK_NE(sqlite_result_code, SqliteResultCode::kBusy) +@@ -1014,7 +1023,7 @@ bool Database::Raze() { + // sqlite3.c lockBtree().] + // TODO(shess): With this, "PRAGMA auto_vacuum" and "PRAGMA + // page_size" can be used to query such a database. +- ScopedWritableSchema writable_schema(db_); ++ ScopedWritableSchema writable_schema(weak_factory_.GetWeakPtr()); + + #if BUILDFLAG(IS_WIN) + // On Windows, truncate silently fails when applied to memory-mapped files. +diff --git a/chromium/sql/database.h b/chromium/sql/database.h +index 79172875fda..71a2f672221 100644 +--- src/3rdparty/chromium/sql/database.h ++++ src/3rdparty/chromium/sql/database.h +@@ -24,6 +24,7 @@ + #include "base/memory/raw_ptr.h" + #include "base/memory/raw_ptr_exclusion.h" + #include "base/memory/ref_counted.h" ++#include "base/memory/weak_ptr.h" + #include "base/sequence_checker.h" + #include "base/strings/string_piece.h" + #include "base/threading/scoped_blocking_call.h" +@@ -1021,6 +1022,9 @@ class COMPONENT_EXPORT(SQL) Database { + + // Stores the dump provider object when db is open. + std::unique_ptr<DatabaseMemoryDumpProvider> memory_dump_provider_; ++ ++ // Vends WeakPtr<Database> for internal scoping helpers. ++ base::WeakPtrFactory<Database> weak_factory_{this}; + }; + + } // namespace sql +From 1ea3a7dc0b8e1f779f0ff047799cce884bb9986a Mon Sep 17 00:00:00 2001 +From: Dan McArdle <dmcardle@chromium.org> +Date: Thu, 29 Feb 2024 17:08:14 +0000 +Subject: [PATCH] [Backport] Security bug 326498393 + +Manual backport of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5320373: +SQL: Make sql::Transaction hold WeakPtr<Database> + +Now, Transaction checks whether the Database has been destroyed before +using it. + +This CL also adds stricter sequence checking to Database, which found a +few places that Database was passed between sequences: + +(1) storage::DatabaseTracker was using and destroying sql::Database on + different sequences. Now, it simply destroys the Database instance + in storage::DatabaseTracker::Shutdown(), which already runs on the + correct sequence. + +(1) history::InMemoryDatabase was "slurping" data from disk on one + sequence, then querying the data on a different sequence. To support + this use case, we added added sql:Database::DetachFromSequence(). + Now, InMemoryDatabase effectively annotates the cut point where the + Database is handed off to another sequence. + +Bug: 326498393 +Change-Id: I866061feaf08d48607d97731a512bc02ce497f71 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5320373 +Reviewed-by: manuk hovanesian <manukh@chromium.org> +Commit-Queue: Dan McArdle <dmcardle@chromium.org> +Reviewed-by: Evan Stade <estade@chromium.org> +Auto-Submit: Dan McArdle <dmcardle@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1267047} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556853 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + .../history/core/browser/in_memory_database.cc | 3 +++ + chromium/sql/database.cc | 16 ++++++++++++++++ + chromium/sql/database.h | 12 ++++++++++-- + chromium/sql/internal_api_token.h | 1 + + chromium/sql/transaction.cc | 17 ++++++++++++++--- + chromium/sql/transaction.h | 4 ++-- + .../browser/database/database_tracker.cc | 8 ++++++++ + .../storage/browser/database/database_tracker.h | 4 +++- + 8 files changed, 57 insertions(+), 8 deletions(-) + +diff --git a/chromium/components/history/core/browser/in_memory_database.cc b/chromium/components/history/core/browser/in_memory_database.cc +index ad9c02696e3c..d139ddc45112 100644 +--- src/3rdparty/chromium/components/history/core/browser/in_memory_database.cc ++++ src/3rdparty/chromium/components/history/core/browser/in_memory_database.cc +@@ -122,6 +122,9 @@ bool InMemoryDatabase::InitFromDisk(const base::FilePath& history_name) { + // inserting into it. + CreateMainURLIndex(); + ++ // After this point, the database may be accessed from another sequence. ++ db_.DetachFromSequence(); ++ + return true; + } + +diff --git a/chromium/sql/database.cc b/chromium/sql/database.cc +index 54c7c44c7e26..b69e4c968c56 100644 +--- src/3rdparty/chromium/sql/database.cc ++++ src/3rdparty/chromium/sql/database.cc +@@ -45,6 +45,7 @@ + #include "build/build_config.h" + #include "sql/database_memory_dump_provider.h" + #include "sql/initialization.h" ++#include "sql/internal_api_token.h" + #include "sql/meta_table.h" + #include "sql/sql_features.h" + #include "sql/sqlite_result_code.h" +@@ -221,6 +222,11 @@ base::FilePath Database::SharedMemoryFilePath(const base::FilePath& db_path) { + return base::FilePath(db_path.value() + FILE_PATH_LITERAL("-shm")); + } + ++base::WeakPtr<Database> Database::GetWeakPtr(InternalApiToken) { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); ++ return weak_factory_.GetWeakPtr(); ++} ++ + Database::StatementRef::StatementRef(Database* database, + sqlite3_stmt* stmt, + bool was_valid) +@@ -341,6 +347,11 @@ bool Database::OpenInMemory() { + return OpenInternal(kSqliteOpenInMemoryPath, OpenMode::kInMemory); + } + ++void Database::DetachFromSequence() { ++ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); ++ DETACH_FROM_SEQUENCE(sequence_checker_); ++} ++ + bool Database::OpenTemporary(base::PassKey<Recovery>) { + TRACE_EVENT0("sql", "Database::OpenTemporary"); + +@@ -350,6 +361,9 @@ bool Database::OpenTemporary(base::PassKey<Recovery>) { + + void Database::CloseInternal(bool forced) { + TRACE_EVENT0("sql", "Database::CloseInternal"); ++ ++ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); ++ + // TODO(shess): Calling "PRAGMA journal_mode = DELETE" at this point + // will delete the -journal file. For ChromiumOS or other more + // embedded systems, this is probably not appropriate, whereas on +@@ -966,6 +980,8 @@ void Database::TrimMemory() { + bool Database::Raze() { + TRACE_EVENT0("sql", "Database::Raze"); + ++ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); ++ + absl::optional<base::ScopedBlockingCall> scoped_blocking_call; + InitScopedBlockingCall(FROM_HERE, &scoped_blocking_call); + +diff --git a/chromium/sql/database.h b/chromium/sql/database.h +index 71a2f6722219..2570aade0157 100644 +--- src/3rdparty/chromium/sql/database.h ++++ src/3rdparty/chromium/sql/database.h +@@ -27,6 +27,7 @@ + #include "base/memory/weak_ptr.h" + #include "base/sequence_checker.h" + #include "base/strings/string_piece.h" ++#include "base/thread_annotations.h" + #include "base/threading/scoped_blocking_call.h" + #include "base/types/pass_key.h" + #include "sql/internal_api_token.h" +@@ -261,8 +262,10 @@ struct COMPONENT_EXPORT(SQL) DatabaseDiagnostics { + + // Handle to an open SQLite database. + // +-// Instances of this class are not thread-safe. After construction, a Database +-// instance should only be accessed from one sequence. ++// Instances of this class are not thread-safe. With few exceptions, Database ++// instances should only be accessed from one sequence. Database instances may ++// be constructed on one sequence and safely used/destroyed on another. Callers ++// may explicitly use `DetachFromSequence()` before moving to another sequence. + // + // When a Database instance goes out of scope, any uncommitted transactions are + // rolled back. +@@ -394,6 +397,10 @@ class COMPONENT_EXPORT(SQL) Database { + // Returns true if the database has been successfully opened. + bool is_open() const; + ++ // Detach from the currently-attached sequence. If already attached to a ++ // sequence, this method must be called from that sequence. ++ void DetachFromSequence(); ++ + // Closes the database. This is automatically performed on destruction for + // you, but this allows you to close the database early. You must not call + // any other functions after closing it. It is permissable to call Close on +@@ -700,6 +707,7 @@ class COMPONENT_EXPORT(SQL) Database { + static base::FilePath SharedMemoryFilePath(const base::FilePath& db_path); + + // Internal state accessed by other classes in //sql. ++ base::WeakPtr<Database> GetWeakPtr(InternalApiToken); + sqlite3* db(InternalApiToken) const { return db_; } + bool poisoned(InternalApiToken) const { return poisoned_; } + base::FilePath DbPath(InternalApiToken) const { return DbPath(); } +diff --git a/chromium/sql/internal_api_token.h b/chromium/sql/internal_api_token.h +index c71b70309ee9..d9ec0b834f8e 100644 +--- src/3rdparty/chromium/sql/internal_api_token.h ++++ src/3rdparty/chromium/sql/internal_api_token.h +@@ -28,6 +28,7 @@ class InternalApiToken { + friend class BuiltInRecovery; + friend class DatabaseTestPeer; + friend class Recovery; ++ friend class Transaction; + friend struct test::ColumnInfo; + friend bool test::CorruptSizeInHeader(const base::FilePath&); + }; +diff --git a/chromium/sql/transaction.cc b/chromium/sql/transaction.cc +index a8d85b67fbd7..71bc7381b55f 100644 +--- src/3rdparty/chromium/sql/transaction.cc ++++ src/3rdparty/chromium/sql/transaction.cc +@@ -7,11 +7,13 @@ + #include "base/check.h" + #include "base/sequence_checker.h" + #include "sql/database.h" ++#include "sql/internal_api_token.h" + + namespace sql { + +-Transaction::Transaction(Database* database) : database_(*database) { +- DCHECK(database); ++Transaction::Transaction(Database* database) { ++ CHECK(database); ++ database_ = database->GetWeakPtr(InternalApiToken{}); + } + + Transaction::~Transaction() { +@@ -21,7 +23,7 @@ Transaction::~Transaction() { + << "Begin() not called immediately after Transaction creation"; + #endif // DCHECK_IS_ON() + +- if (is_active_) ++ if (is_active_ && database_ && database_->is_open()) + database_->RollbackTransaction(); + } + +@@ -33,6 +35,9 @@ bool Transaction::Begin() { + #endif // DCHECK_IS_ON() + + DCHECK(!is_active_); ++ if (!database_) { ++ return false; ++ } + is_active_ = database_->BeginTransaction(); + return is_active_; + } +@@ -49,6 +54,9 @@ void Transaction::Rollback() { + DCHECK(is_active_) << __func__ << " called after Begin() failed"; + is_active_ = false; + ++ if (!database_) { ++ return; ++ } + database_->RollbackTransaction(); + } + +@@ -63,6 +71,9 @@ bool Transaction::Commit() { + + DCHECK(is_active_) << __func__ << " called after Begin() failed"; + is_active_ = false; ++ if (!database_) { ++ return false; ++ } + return database_->CommitTransaction(); + } + +diff --git a/chromium/sql/transaction.h b/chromium/sql/transaction.h +index 54573bcf98d2..8e20d7fe737a 100644 +--- src/3rdparty/chromium/sql/transaction.h ++++ src/3rdparty/chromium/sql/transaction.h +@@ -7,7 +7,7 @@ + + #include "base/check.h" + #include "base/component_export.h" +-#include "base/memory/raw_ref.h" ++#include "base/memory/weak_ptr.h" + #include "base/sequence_checker.h" + #include "base/thread_annotations.h" + +@@ -91,7 +91,7 @@ class COMPONENT_EXPORT(SQL) Transaction { + private: + SEQUENCE_CHECKER(sequence_checker_); + +- const raw_ref<Database> database_ GUARDED_BY_CONTEXT(sequence_checker_); ++ base::WeakPtr<Database> database_ GUARDED_BY_CONTEXT(sequence_checker_); + + #if DCHECK_IS_ON() + bool begin_called_ GUARDED_BY_CONTEXT(sequence_checker_) = false; +diff --git a/chromium/storage/browser/database/database_tracker.cc b/chromium/storage/browser/database/database_tracker.cc +index 2926db89bac4..5dbfcf2d4227 100644 +--- src/3rdparty/chromium/storage/browser/database/database_tracker.cc ++++ src/3rdparty/chromium/storage/browser/database/database_tracker.cc +@@ -4,6 +4,7 @@ + + #include "storage/browser/database/database_tracker.h" + ++#include <stddef.h> + #include <stdint.h> + + #include <algorithm> +@@ -986,6 +987,13 @@ void DatabaseTracker::Shutdown() { + else if (!force_keep_session_state_) + ClearSessionOnlyOrigins(); + CloseTrackerDatabaseAndClearCaches(); ++ ++ // Explicitly destroy `db_` on the correct sequence rather than waiting for ++ // the destructor, which may run on another sequence. Destroy related fields ++ // first to prevent dangling pointers. Destruction order is important. ++ meta_table_.reset(); ++ databases_table_.reset(); ++ db_.reset(); + } + + void DatabaseTracker::SetForceKeepSessionState() { +diff --git a/chromium/storage/browser/database/database_tracker.h b/chromium/storage/browser/database/database_tracker.h +index 17b6aea42766..57d189e338d3 100644 +--- src/3rdparty/chromium/storage/browser/database/database_tracker.h ++++ src/3rdparty/chromium/storage/browser/database/database_tracker.h +@@ -77,7 +77,9 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) OriginInfo { + // The data in this class is not thread-safe, so all methods of this class + // should be called on the task runner returned by task_runner(). The only + // exceptions are the constructor, the destructor, and the getters explicitly +-// marked as thread-safe. ++// marked as thread-safe. Although the destructor itself may run on any thread, ++// destruction effectively occurs in Shutdown(), which expects to be called on ++// task_runner(). + class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + : public base::RefCountedThreadSafe<DatabaseTracker> { + public: +From aea30bc1019793100c4586d499fa7f82ff18613b Mon Sep 17 00:00:00 2001 +From: Liam Brady <lbrady@google.com> +Date: Thu, 7 Mar 2024 22:11:26 +0000 +Subject: [PATCH] [Backport] CVE-2024-3840: Insufficient policy enforcement in + Site Isolation +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5269464: +Clear user activation on cross-site navigations. + +When full site isolation is disabled, renderer processes and +RenderFrameHosts are re-used when performing cross-site navigations. +This includes user activation state, and, more specifically, the sticky +`has_been_active_` bit in `UserActivationState`. + +Currently, the `UserActivationState` on the renderer-side is reset only +if the navigation's associated frame is a main frame. That means that if +an iframe navigates to a cross-site page, its sticky user activation +state will be the leftover state from the previous page. So, if a user +interacted with the previous page in any capacity, the newly loaded page +will think it has received a user gesture, essentially using an +unintentional cache of the user activation state. + +This becomes an issue when dealing with our framebusting interventions. +We only allow an iframe to do a top-level navigation if it received a +user gesture. However, if an iframe's previous document received a user +activation, or worse, if the iframe was not navigated to anything and +got a user activation because its embedder was interacted with, this +allows the current document to circumvent our framebusting +interventions. The latter happens because of same-origin descendant +activation behavior. See: +https://source.chromium.org/chromium/chromium/src/+/main:content/browser/renderer_host/frame_tree_node.cc;l=766-778;drc=30753b1135fa271a3b45bbdbfef6567e46733a7f;bpv=1;bpt=1 + +Note that this problem does not exist if site isolation is enabled +(which is by default on desktop platforms), since a cross-site +navigation will create a whole new process with a fresh +`UserActivationState`. + +To fix this, this CL clears the user activation state on cross-site +subframe navigations in the renderer (user activation is already cleared +for main frames). To ensure that same-site navigations persist user +state even if a cross-origin or same-origin navigation results in a new +process or RenderFrameHost being created, this CL also explicitly +transfers sticky user activation state for all same-site +cross-RenderFrameHost navigations. This takes place in the browser, and +the resulting bit to determine if a frame should have sticky user +activation is passed to the renderer. + +The ultimate end goal is to unconditionally clear the user activation +state for all cross-document navigations. That unfortunately is not +possible today as there are entrenched use cases that rely on sticky +user activation state being cached for same-site navigations. See: +https://crbug.com/40228985. + +This CL also fixes the aforementioned regression when enabling the +RenderDocument feature, since this CL will now preserve the sticky user +activation state regardless of what +process/RenderFrameHost/RenderDocument state the navigation results in. + +This CL adds some tests to the no-auto-wpt-origin-isolation test suite, which requires some additional description: + +* These tests are running on all platforms because site isolation behavior may differ per platform +* All of the tests in the-iframe-element are being added because it would be useful to understand their behavior in all expected process +configurations +* The total time taken for this test suite on linux-rel showed a total time percentage of <0.3% + +Bug: 41493458 +Change-Id: Ibec11437fcd03470571e04a4e0dfaadffddf6c03 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5269464 +Reviewed-by: Mustaq Ahmed <mustaq@chromium.org> +Reviewed-by: Charlie Reis <creis@chromium.org> +Reviewed-by: Jeremy Roman <jbroman@chromium.org> +Reviewed-by: Robert Flack <flackr@chromium.org> +Reviewed-by: Andrew Verge <averge@chromium.org> +Commit-Queue: Liam Brady <lbrady@google.com> +Reviewed-by: Alex Moshchuk <alexmos@chromium.org> +Reviewed-by: danakj <danakj@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1269856} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/556966 +Reviewed-by: Michael Br端ning <michael.bruning@qt.io> +--- + .../browser/renderer_host/frame_tree_node.cc | 30 ++++++++--------- + .../browser/renderer_host/frame_tree_node.h | 15 ++++----- + .../navigation_controller_impl.cc | 4 ++- + .../renderer_host/navigation_entry_impl.cc | 5 +-- + .../renderer_host/navigation_request.cc | 29 ++++++++++++---- + .../browser/renderer_host/navigator.cc | 33 +++++++++++++++---- + .../renderer_host/render_frame_host_impl.cc | 11 +++++-- + .../renderer_host/render_frame_host_impl.h | 3 +- + .../content/renderer/render_frame_impl.cc | 3 ++ + .../common/frame/user_activation_state.cc | 4 +++ + .../common/frame/user_activation_state.h | 4 +++ + .../frame/user_activation_update_types.mojom | 8 +++++ + .../mojom/navigation/navigation_params.mojom | 4 +++ + .../blink/public/web/web_navigation_params.h | 4 +++ + .../blink/renderer/core/frame/frame.cc | 21 ++++++++++-- + .../blink/renderer/core/frame/frame.h | 10 +++++- + .../blink/renderer/core/frame/remote_frame.cc | 3 ++ + .../renderer/core/loader/document_loader.cc | 21 ++++++++++-- + .../renderer/core/loader/document_loader.h | 4 +++ + 19 files changed, 164 insertions(+), 52 deletions(-) + +diff --git a/chromium/content/browser/renderer_host/frame_tree_node.cc b/chromium/content/browser/renderer_host/frame_tree_node.cc +index dd618cfa09e5..1ed5a5e0f004 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/frame_tree_node.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/frame_tree_node.cc +@@ -338,19 +338,6 @@ bool FrameTreeNode::IsOutermostMainFrame() const { + return !GetParentOrOuterDocument(); + } + +-void FrameTreeNode::ResetForNavigation() { +- // This frame has had its user activation bits cleared in the renderer before +- // arriving here. We just need to clear them here and in the other renderer +- // processes that may have a reference to this frame. +- // +- // We do not take user activation into account when calculating +- // |ResetForNavigationResult|, as we are using it to determine bfcache +- // eligibility and the page can get another user gesture after restore. +- UpdateUserActivationState( +- blink::mojom::UserActivationUpdateType::kClearActivation, +- blink::mojom::UserActivationNotificationType::kNone); +-} +- + RenderFrameHostImpl* FrameTreeNode::GetParentOrOuterDocument() const { + return GetParentOrOuterDocumentHelper(/*escape_guest_view=*/false, + /*include_prospective=*/true); +@@ -769,15 +756,22 @@ void FrameTreeNode::BeforeUnloadCanceled() { + } + } + ++bool FrameTreeNode::NotifyUserActivationStickyOnly() { ++ return NotifyUserActivation( ++ blink::mojom::UserActivationNotificationType::kNone, ++ /*sticky_only=*/true); ++} ++ + bool FrameTreeNode::NotifyUserActivation( +- blink::mojom::UserActivationNotificationType notification_type) { ++ blink::mojom::UserActivationNotificationType notification_type, ++ bool sticky_only) { + // User Activation V2 requires activating all ancestor frames in addition to + // the current frame. See + // https://html.spec.whatwg.org/multipage/interaction.html#tracking-user-activation. + for (RenderFrameHostImpl* rfh = current_frame_host(); rfh; + rfh = rfh->GetParent()) { + rfh->DidReceiveUserActivation(); +- rfh->ActivateUserActivation(notification_type); ++ rfh->ActivateUserActivation(notification_type, sticky_only); + } + + current_frame_host()->browsing_context_state()->set_has_active_user_gesture( +@@ -792,7 +786,8 @@ bool FrameTreeNode::NotifyUserActivation( + for (FrameTreeNode* node : frame_tree().Nodes()) { + if (node->current_frame_host()->GetLastCommittedOrigin().IsSameOriginWith( + current_origin)) { +- node->current_frame_host()->ActivateUserActivation(notification_type); ++ node->current_frame_host()->ActivateUserActivation(notification_type, ++ sticky_only); + } + } + } +@@ -860,6 +855,9 @@ bool FrameTreeNode::UpdateUserActivationState( + return false; + } + } break; ++ case blink::mojom::UserActivationUpdateType::kNotifyActivationStickyOnly: ++ update_result = NotifyUserActivationStickyOnly(); ++ break; + case blink::mojom::UserActivationUpdateType::kClearActivation: + update_result = ClearUserActivation(); + break; +diff --git a/chromium/content/browser/renderer_host/frame_tree_node.h b/chromium/content/browser/renderer_host/frame_tree_node.h +index 0edd7b389cc3..284a81e467dd 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/frame_tree_node.h ++++ src/3rdparty/chromium/content/browser/renderer_host/frame_tree_node.h +@@ -122,14 +122,6 @@ class CONTENT_EXPORT FrameTreeNode : public RenderFrameHostOwner { + bool IsMainFrame() const; + bool IsOutermostMainFrame() const; + +- // Clears any state in this node which was set by the document itself (CSP & +- // UserActivationState) and notifies proxies as appropriate. Invoked after +- // committing navigation to a new document (since the new document comes with +- // a fresh set of CSP). +- // TODO(arthursonzogni): Remove this function. The frame/document must not be +- // left temporarily with lax state. +- void ResetForNavigation(); +- + FrameTree& frame_tree() const { return frame_tree_.get(); } + Navigator& navigator(); + +@@ -772,8 +764,13 @@ class CONTENT_EXPORT FrameTreeNode : public RenderFrameHostOwner { + class OpenerDestroyedObserver; + + // The |notification_type| parameter is used for histograms only. ++ // |sticky_only| is set to true when propagating sticky user activation during ++ // cross-document navigations. The transient state remains unchanged. + bool NotifyUserActivation( +- blink::mojom::UserActivationNotificationType notification_type); ++ blink::mojom::UserActivationNotificationType notification_type, ++ bool sticky_only = false); ++ ++ bool NotifyUserActivationStickyOnly(); + + bool ConsumeTransientUserActivation(); + +diff --git a/chromium/content/browser/renderer_host/navigation_controller_impl.cc b/chromium/content/browser/renderer_host/navigation_controller_impl.cc +index 24203784c631..54e064642bdc 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/navigation_controller_impl.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/navigation_controller_impl.cc +@@ -3979,7 +3979,9 @@ NavigationControllerImpl::CreateNavigationRequestFromLoadParams( + /*origin_agent_cluster_left_as_default=*/true, + /*enabled_client_hints=*/ + std::vector<network::mojom::WebClientHintsType>(), +- /*is_cross_browsing_instance=*/false, /*old_page_info=*/nullptr, ++ /*is_cross_site_cross_browsing_context_group=*/false, ++ /*should_have_sticky_user_activation=*/false, ++ /*old_page_info=*/nullptr, + /*http_response_code=*/-1, + blink::mojom::NavigationApiHistoryEntryArrays::New(), + /*early_hints_preloaded_resources=*/std::vector<GURL>(), +diff --git a/chromium/content/browser/renderer_host/navigation_entry_impl.cc b/chromium/content/browser/renderer_host/navigation_entry_impl.cc +index 1c318ac954ed..897fb61b887d 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/navigation_entry_impl.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/navigation_entry_impl.cc +@@ -942,8 +942,9 @@ NavigationEntryImpl::ConstructCommitNavigationParams( + true /* origin_agent_cluster_left_as_default */, + std::vector< + network::mojom::WebClientHintsType>() /* enabled_client_hints */, +- false /* is_cross_browsing_instance */, nullptr /* old_page_info */, +- -1 /* http_response_code */, ++ false /* is_cross_site_cross_browsing_context_group */, ++ false /* should_have_sticky_user_activation */, ++ nullptr /* old_page_info */, -1 /* http_response_code */, + blink::mojom::NavigationApiHistoryEntryArrays::New(), + std::vector<GURL>() /* early_hints_preloaded_resources */, + // This timestamp will be populated when the commit IPC is sent. +diff --git a/chromium/content/browser/renderer_host/navigation_request.cc b/chromium/content/browser/renderer_host/navigation_request.cc +index da6c714c0c04..923354bdafbf 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/navigation_request.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/navigation_request.cc +@@ -1318,7 +1318,8 @@ std::unique_ptr<NavigationRequest> NavigationRequest::CreateRendererInitiated( + /*origin_agent_cluster_left_as_default=*/true, + /*enabled_client_hints=*/ + std::vector<network::mojom::WebClientHintsType>(), +- /*is_cross_browsing_instance=*/false, ++ /*is_cross_site_cross_browsing_context_group=*/false, ++ /*should_have_sticky_user_activation=*/false, + /*old_page_info=*/nullptr, /*http_response_code=*/-1, + blink::mojom::NavigationApiHistoryEntryArrays::New(), + /*early_hints_preloaded_resources=*/std::vector<GURL>(), +@@ -1462,7 +1463,8 @@ NavigationRequest::CreateForSynchronousRendererCommit( + /*origin_agent_cluster_left_as_default=*/true, + /*enabled_client_hints=*/ + std::vector<network::mojom::WebClientHintsType>(), +- /*is_cross_browsing_instance=*/false, ++ /*is_cross_site_cross_browsing_context_group=*/false, ++ /*should_have_sticky_user_activation=*/false, + /*old_page_info=*/nullptr, http_response_code, + blink::mojom::NavigationApiHistoryEntryArrays::New(), + /*early_hints_preloaded_resources=*/std::vector<GURL>(), +@@ -5599,11 +5601,11 @@ void NavigationRequest::CommitNavigation() { + } + } + ++ RenderFrameHostImpl* old_frame_host = ++ frame_tree_node_->render_manager()->current_frame_host(); + if (!NavigationTypeUtils::IsSameDocument(common_params_->navigation_type)) { + // We want to record this for the frame that we are navigating away from. +- frame_tree_node_->render_manager() +- ->current_frame_host() +- ->RecordNavigationSuddenTerminationHandlers(); ++ old_frame_host->RecordNavigationSuddenTerminationHandlers(); + } + if (IsServedFromBackForwardCache() || IsPrerenderedPageActivation()) { + CommitPageActivation(); +@@ -5623,8 +5625,7 @@ void NavigationRequest::CommitNavigation() { + if (!weak_self) + return; + +- DCHECK(GetRenderFrameHost() == +- frame_tree_node_->render_manager()->current_frame_host() || ++ DCHECK(GetRenderFrameHost() == old_frame_host || + GetRenderFrameHost() == + frame_tree_node_->render_manager()->speculative_frame_host()); + +@@ -5699,6 +5700,20 @@ void NavigationRequest::CommitNavigation() { + response(), frame_tree_node_); + } + ++ // Sticky user activation should only be preserved for same-site subframe ++ // navigations. This is done to prevent newly navigated documents from ++ // re-using the sticky user activation state from the previously navigated ++ // document in the frame. We persist user activation across same-site ++ // navigations for compatibility reasons, and this does not need to match the ++ // same-site checks used in the process model. See: crbug.com/736415. ++ // TODO(crbug.com/40228985): Remove this once we find a way to reset ++ // activation unconditionally without breaking sites in practice. ++ commit_params_->should_have_sticky_user_activation = ++ !frame_tree_node_->IsMainFrame() && ++ old_frame_host->HasStickyUserActivation() && ++ net::SchemefulSite(old_frame_host->GetLastCommittedOrigin()) == ++ net::SchemefulSite(origin); ++ + // Generate a UKM source and track it on NavigationRequest. This will be + // passed down to the blink::Document to be created, if any, and used for UKM + // source creation when navigation has successfully committed. +diff --git a/chromium/content/browser/renderer_host/navigator.cc b/chromium/content/browser/renderer_host/navigator.cc +index 1063f29af344..e4cdb82d5598 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/navigator.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/navigator.cc +@@ -47,6 +47,7 @@ + #include "content/public/common/content_constants.h" + #include "content/public/common/url_utils.h" + #include "net/base/net_errors.h" ++#include "net/base/schemeful_site.h" + #include "services/metrics/public/cpp/ukm_builders.h" + #include "services/metrics/public/cpp/ukm_recorder.h" + #include "services/metrics/public/cpp/ukm_source_id.h" +@@ -512,6 +513,9 @@ void Navigator::DidNavigate( + was_within_same_document); + } + ++ // Store this information before DidNavigateFrame() potentially swaps RFHs. ++ url::Origin old_frame_origin = old_frame_host->GetLastCommittedOrigin(); ++ + // DidNavigateFrame() must be called before replicating the new origin and + // other properties to proxies. This is because it destroys the subframes of + // the frame we're navigating from, which might trigger those subframes to +@@ -524,6 +528,29 @@ void Navigator::DidNavigate( + .ShouldClearProxiesOnCommit(), + navigation_request->commit_params().frame_policy); + ++ // The main frame, same site, and cross-site navigation checks for user ++ // activation mirror the checks in DocumentLoader::CommitNavigation() (note: ++ // CommitNavigation() is not called for same-document navigations, which is ++ // why we have the !was_within_same_document check). This is done to prevent ++ // newly navigated pages from re-using the sticky user activation state from ++ // the previously navigated page in the frame. We persist user activation ++ // across same-site navigations for compatibility reasons with user ++ // activation, and does not need to match the same-site checks used in the ++ // process model. See: crbug.com/736415, and crbug.com/40228985 for the ++ // specific regression that resulted in this requirement. ++ if (!was_within_same_document) { ++ if (!navigation_request->commit_params() ++ .should_have_sticky_user_activation) { ++ frame_tree_node->UpdateUserActivationState( ++ blink::mojom::UserActivationUpdateType::kClearActivation, ++ blink::mojom::UserActivationNotificationType::kNone); ++ } else { ++ frame_tree_node->UpdateUserActivationState( ++ blink::mojom::UserActivationUpdateType::kNotifyActivationStickyOnly, ++ blink::mojom::UserActivationNotificationType::kNone); ++ } ++ } ++ + // Save the new page's origin and other properties, and replicate them to + // proxies, including the proxy created in DidNavigateFrame() to replace the + // old frame in cross-process navigation cases. +@@ -534,12 +561,6 @@ void Navigator::DidNavigate( + render_frame_host->browsing_context_state()->SetInsecureNavigationsSet( + params.insecure_navigations_set); + +- if (!was_within_same_document) { +- // Navigating to a new location means a new, fresh set of http headers +- // and/or <meta> elements - we need to reset Permissions Policy. +- frame_tree_node->ResetForNavigation(); +- } +- + // If the committing URL requires the SiteInstance's site to be assigned, + // that site assignment should've already happened at ReadyToCommit time. We + // should never get here with a SiteInstance that doesn't have a site +diff --git a/chromium/content/browser/renderer_host/render_frame_host_impl.cc b/chromium/content/browser/renderer_host/render_frame_host_impl.cc +index c5f90d4965f9..d1d0efb398ba 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/render_frame_host_impl.cc ++++ src/3rdparty/chromium/content/browser/renderer_host/render_frame_host_impl.cc +@@ -6002,9 +6002,14 @@ void RenderFrameHostImpl::ConsumeTransientUserActivation() { + } + + void RenderFrameHostImpl::ActivateUserActivation( +- blink::mojom::UserActivationNotificationType notification_type) { +- user_activation_state_.Activate(notification_type); +- history_user_activation_state_.Activate(); ++ blink::mojom::UserActivationNotificationType notification_type, ++ bool sticky_only) { ++ if (sticky_only) { ++ user_activation_state_.SetHasBeenActive(); ++ } else { ++ user_activation_state_.Activate(notification_type); ++ history_user_activation_state_.Activate(); ++ } + } + + void RenderFrameHostImpl::ActivateFocusSourceUserActivation() { +diff --git a/chromium/content/browser/renderer_host/render_frame_host_impl.h b/chromium/content/browser/renderer_host/render_frame_host_impl.h +index 378657c0a55d..0a001fb828e1 100644 +--- src/3rdparty/chromium/content/browser/renderer_host/render_frame_host_impl.h ++++ src/3rdparty/chromium/content/browser/renderer_host/render_frame_host_impl.h +@@ -2931,7 +2931,8 @@ class CONTENT_EXPORT RenderFrameHostImpl + void ClearUserActivation(); + void ConsumeTransientUserActivation(); + void ActivateUserActivation( +- blink::mojom::UserActivationNotificationType notification_type); ++ blink::mojom::UserActivationNotificationType notification_type, ++ bool sticky_only = false); + + // These are called only when RenderFrameHostOwner is iterating over all + // frames, not directly from the renderer. +diff --git a/chromium/content/renderer/render_frame_impl.cc b/chromium/content/renderer/render_frame_impl.cc +index 5da8ffc96764..13afea50ecba 100644 +--- src/3rdparty/chromium/content/renderer/render_frame_impl.cc ++++ src/3rdparty/chromium/content/renderer/render_frame_impl.cc +@@ -981,6 +981,9 @@ void FillMiscNavigationParams( + navigation_params->is_cross_site_cross_browsing_context_group = + commit_params.is_cross_site_cross_browsing_context_group; + ++ navigation_params->should_have_sticky_user_activation = ++ commit_params.should_have_sticky_user_activation; ++ + #if BUILDFLAG(IS_ANDROID) || defined(TOOLKIT_QT) + // Only android webview uses this. + navigation_params->grant_load_local_resources = +diff --git a/chromium/third_party/blink/common/frame/user_activation_state.cc b/chromium/third_party/blink/common/frame/user_activation_state.cc +index 5804fa8049be..ad85a074d10b 100644 +--- src/3rdparty/chromium/third_party/blink/common/frame/user_activation_state.cc ++++ src/3rdparty/chromium/third_party/blink/common/frame/user_activation_state.cc +@@ -47,6 +47,10 @@ void UserActivationState::Activate( + transient_state_expiry_time_for_interaction_ = transient_state_expiry_time_; + } + ++void UserActivationState::SetHasBeenActive() { ++ has_been_active_ = true; ++} ++ + void UserActivationState::Clear() { + has_been_active_ = false; + last_activation_was_restricted_ = false; +diff --git a/chromium/third_party/blink/public/common/frame/user_activation_state.h b/chromium/third_party/blink/public/common/frame/user_activation_state.h +index fe530372caa0..6e143d2e9795 100644 +--- src/3rdparty/chromium/third_party/blink/public/common/frame/user_activation_state.h ++++ src/3rdparty/chromium/third_party/blink/public/common/frame/user_activation_state.h +@@ -111,6 +111,10 @@ class BLINK_COMMON_EXPORT UserActivationState { + // |is_restricted| as a parameter here. + void Activate(mojom::UserActivationNotificationType notification_type); + ++ // Used when propagating user activation state across cross-process ++ // navigations. ++ void SetHasBeenActive(); ++ + void Clear(); + + // Returns the sticky activation state, which is |true| if the frame has ever +diff --git a/chromium/third_party/blink/public/mojom/frame/user_activation_update_types.mojom b/chromium/third_party/blink/public/mojom/frame/user_activation_update_types.mojom +index 6db97b4a695c..5acd66856df0 100644 +--- src/3rdparty/chromium/third_party/blink/public/mojom/frame/user_activation_update_types.mojom ++++ src/3rdparty/chromium/third_party/blink/public/mojom/frame/user_activation_update_types.mojom +@@ -7,8 +7,16 @@ module blink.mojom; + // Types of UserActivationV2 state updates sent between the browser and the + // renderer processes. + enum UserActivationUpdateType { ++ // Used to give a document sticky and transient user activation as a result of ++ // a user gesture. + kNotifyActivation, + kNotifyActivationPendingBrowserVerification, ++ // Used to propagate the sticky user activation state during cross-document ++ // navigations. ++ kNotifyActivationStickyOnly, ++ // Used after a sensitive API is called to prevent abuse of the API. + kConsumeTransientActivation, ++ // Used during cross-document navigations when the user activation state ++ // shouldn't be propagated. + kClearActivation + }; +diff --git a/chromium/third_party/blink/public/mojom/navigation/navigation_params.mojom b/chromium/third_party/blink/public/mojom/navigation/navigation_params.mojom +index b568f7442142..3947e8dcaeb3 100644 +--- src/3rdparty/chromium/third_party/blink/public/mojom/navigation/navigation_params.mojom ++++ src/3rdparty/chromium/third_party/blink/public/mojom/navigation/navigation_params.mojom +@@ -510,6 +510,10 @@ struct CommitNavigationParams { + // Whether this is a cross-site navigation that swaps BrowsingContextGroups. + bool is_cross_site_cross_browsing_context_group = false; + ++ // Whether the new document should start with sticky user activation, because ++ // the previously committed document did, and the navigation was same-site. ++ bool should_have_sticky_user_activation = false; ++ + // Should only be set to a valid value for main-frame same-site navigations + // where we did a proactive BrowsingInstance swap and we're reusing the old + // page's process. +diff --git a/chromium/third_party/blink/public/web/web_navigation_params.h b/chromium/third_party/blink/public/web/web_navigation_params.h +index 560c4e985497..206bff0b0042 100644 +--- src/3rdparty/chromium/third_party/blink/public/web/web_navigation_params.h ++++ src/3rdparty/chromium/third_party/blink/public/web/web_navigation_params.h +@@ -466,6 +466,10 @@ struct BLINK_EXPORT WebNavigationParams { + // (BrowsingInstances). + bool is_cross_site_cross_browsing_context_group = false; + ++ // Whether the new document should start with sticky user activation, because ++ // the previously committed document did, and the navigation was same-site. ++ bool should_have_sticky_user_activation = false; ++ + // Blink's copy of the policy container containing security policies to be + // enforced on the document created by this navigation. + std::unique_ptr<WebPolicyContainer> policy_container; +diff --git a/chromium/third_party/blink/renderer/core/frame/frame.cc b/chromium/third_party/blink/renderer/core/frame/frame.cc +index e0ce2a1bcbef..ce18145c67a6 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/frame/frame.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/core/frame/frame.cc +@@ -286,10 +286,21 @@ void Frame::DidChangeVisibilityState() { + child_frames[i]->DidChangeVisibilityState(); + } + ++void Frame::NotifyUserActivationInFrameTreeStickyOnly() { ++ NotifyUserActivationInFrameTree( ++ mojom::blink::UserActivationNotificationType::kNone, ++ /*sticky_only=*/true); ++} ++ + void Frame::NotifyUserActivationInFrameTree( +- mojom::blink::UserActivationNotificationType notification_type) { ++ mojom::blink::UserActivationNotificationType notification_type, ++ bool sticky_only) { + for (Frame* node = this; node; node = node->Tree().Parent()) { +- node->user_activation_state_.Activate(notification_type); ++ if (sticky_only) { ++ node->user_activation_state_.SetHasBeenActive(); ++ } else { ++ node->user_activation_state_.Activate(notification_type); ++ } + node->ActivateHistoryUserActivationState(); + } + +@@ -307,7 +318,11 @@ void Frame::NotifyUserActivationInFrameTree( + if (local_frame_node && + security_origin->CanAccess( + local_frame_node->GetSecurityContext()->GetSecurityOrigin())) { +- node->user_activation_state_.Activate(notification_type); ++ if (sticky_only) { ++ node->user_activation_state_.SetHasBeenActive(); ++ } else { ++ node->user_activation_state_.Activate(notification_type); ++ } + node->ActivateHistoryUserActivationState(); + } + } +diff --git a/chromium/third_party/blink/renderer/core/frame/frame.h b/chromium/third_party/blink/renderer/core/frame/frame.h +index 2487e9a9a98a..3707cff0fa64 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/frame/frame.h ++++ src/3rdparty/chromium/third_party/blink/renderer/core/frame/frame.h +@@ -256,6 +256,12 @@ class CORE_EXPORT Frame : public GarbageCollected<Frame> { + return user_activation_state_.LastActivationWasRestricted(); + } + ++ // Sets the sticky user activation state of this frame. This does not change ++ // the transient user activation state. ++ void SetStickyUserActivationState() { ++ user_activation_state_.SetHasBeenActive(); ++ } ++ + // Resets the user activation state of this frame. + void ClearUserActivation() { user_activation_state_.Clear(); } + +@@ -482,8 +488,10 @@ class CORE_EXPORT Frame : public GarbageCollected<Frame> { + void ApplyFrameOwnerProperties( + mojom::blink::FrameOwnerPropertiesPtr properties); + ++ void NotifyUserActivationInFrameTreeStickyOnly(); + void NotifyUserActivationInFrameTree( +- mojom::blink::UserActivationNotificationType notification_type); ++ mojom::blink::UserActivationNotificationType notification_type, ++ bool sticky_only = false); + bool ConsumeTransientUserActivationInFrameTree(); + void ClearUserActivationInFrameTree(); + +diff --git a/chromium/third_party/blink/renderer/core/frame/remote_frame.cc b/chromium/third_party/blink/renderer/core/frame/remote_frame.cc +index e5d0e24fa1cb..7f3f457261da 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/frame/remote_frame.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/core/frame/remote_frame.cc +@@ -665,6 +665,9 @@ void RemoteFrame::UpdateUserActivationState( + case mojom::blink::UserActivationUpdateType::kNotifyActivation: + NotifyUserActivationInFrameTree(notification_type); + break; ++ case mojom::blink::UserActivationUpdateType::kNotifyActivationStickyOnly: ++ NotifyUserActivationInFrameTreeStickyOnly(); ++ break; + case mojom::blink::UserActivationUpdateType::kConsumeTransientActivation: + ConsumeTransientUserActivationInFrameTree(); + break; +diff --git a/chromium/third_party/blink/renderer/core/loader/document_loader.cc b/chromium/third_party/blink/renderer/core/loader/document_loader.cc +index b7b130e869fe..b29ab01b9f84 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/loader/document_loader.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/core/loader/document_loader.cc +@@ -305,6 +305,7 @@ struct SameSizeAsDocumentLoader + bool origin_agent_cluster; + bool origin_agent_cluster_left_as_default; + bool is_cross_site_cross_browsing_context_group; ++ bool should_have_sticky_user_activation; + WebVector<WebHistoryItem> navigation_api_back_entries; + WebVector<WebHistoryItem> navigation_api_forward_entries; + std::unique_ptr<CodeCacheHost> code_cache_host; +@@ -512,6 +513,8 @@ DocumentLoader::DocumentLoader( + params_->origin_agent_cluster_left_as_default), + is_cross_site_cross_browsing_context_group_( + params_->is_cross_site_cross_browsing_context_group), ++ should_have_sticky_user_activation_( ++ params_->should_have_sticky_user_activation), + navigation_api_back_entries_(params_->navigation_api_back_entries), + navigation_api_forward_entries_(params_->navigation_api_forward_entries), + extra_data_(std::move(extra_data)), +@@ -651,6 +654,9 @@ DocumentLoader::CreateWebNavigationParamsToCloneDocument() { + params->document_ukm_source_id = ukm_source_id_; + params->is_cross_site_cross_browsing_context_group = + is_cross_site_cross_browsing_context_group_; ++ // Required for javascript: URL commits to propagate sticky user activation. ++ params->should_have_sticky_user_activation = ++ frame_->HasStickyUserActivation() && !frame_->IsMainFrame(); + params->has_text_fragment_token = has_text_fragment_token_; + // Origin trials must still work on the cloned document. + params->initiator_origin_trial_features = +@@ -2554,10 +2560,19 @@ void DocumentLoader::CommitNavigation() { + + frame_->ClearScrollSnapshotClients(); + +- // Clear the user activation state. ++ // Determine whether to give the frame sticky user activation. These checks ++ // mirror the check in Navigator::DidNavigate(). Main frame navigations and ++ // cross-site navigations should not hold on to the sticky user activation ++ // state of the previously navigated page. Same-site navigations should retain ++ // the previous document's sticky user activation state, regardless of whether ++ // the navigation resulted in a new process being created. ++ // See: crbug.com/41493458 + // TODO(crbug.com/736415): Clear this bit unconditionally for all frames. +- if (frame_->IsMainFrame()) +- frame_->ClearUserActivation(); ++ if (!should_have_sticky_user_activation_) { ++ frame_->ClearUserActivation(); ++ } else { ++ frame_->SetStickyUserActivationState(); ++ } + + // The DocumentLoader was flagged as activated if it needs to notify the frame + // that it was activated before navigation. Update the frame state based on +diff --git a/chromium/third_party/blink/renderer/core/loader/document_loader.h b/chromium/third_party/blink/renderer/core/loader/document_loader.h +index 1548bbee1845..ca1758eef3f4 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/core/loader/document_loader.h ++++ src/3rdparty/chromium/third_party/blink/renderer/core/loader/document_loader.h +@@ -783,6 +783,10 @@ class CORE_EXPORT DocumentLoader : public GarbageCollected<DocumentLoader>, + // BrowsingContextGroup. + bool is_cross_site_cross_browsing_context_group_ = false; + ++ // Whether the new document should start with sticky user activation, because ++ // the previously committed document did, and the navigation was same-site. ++ bool should_have_sticky_user_activation_ = false; ++ + WebVector<WebHistoryItem> navigation_api_back_entries_; + WebVector<WebHistoryItem> navigation_api_forward_entries_; + +From 6fd09d7a49f15e12264f25a54db9fe189b235d16 Mon Sep 17 00:00:00 2001 +From: Ayu Ishii <ayui@chromium.org> +Date: Thu, 21 Mar 2024 20:06:29 +0000 +Subject: [PATCH] [Backport] Security bug 323898565 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5288855: +WebSQL: Remove session data logic + +On Profile destruction, currently there is a race with +the DatabaseTracker shutdown. DatabaseTracker shutdown +will post task[1] on the database task runner because +it needs to do file I/O. However it also has some logic +to retrieve info for special storage policies from the +Profile which may already be destroyed by that time. + +This change removes logic for special storage policy from +DatabaseTracker. DatabaseTracker(WebSQL) is removed +from all platforms as of M119 except for WebView, which does +not utilize the special storage policy. All policy and +deprecation support have ended with M123. Therefore cleaning +up the code to avoid the race. + +[1]https://source.chromium.org/chromium/chromium/src/+/main:content/browser/storage_partition_impl.cc;l=1200;drc=be92f4cc2f137460213d52a926c9477275a456c5 + +Bug: 323898565, 325476286 +Change-Id: Ie2ef898c558308439a8b0d3fdf67f7157440b20a +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5288855 +Commit-Queue: Ayu Ishii <ayui@chromium.org> +Reviewed-by: Alex Moshchuk <alexmos@chromium.org> +Reviewed-by: Evan Stade <estade@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1276451} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/557063 +Reviewed-by: Michal Klocek <michal.klocek@qt.io> +--- + chromium/content/browser/browser_context.cc | 8 --- + .../content/browser/storage_partition_impl.cc | 3 +- + .../browser/database/database_tracker.cc | 65 +------------------ + .../browser/database/database_tracker.h | 15 ----- + 4 files changed, 3 insertions(+), 88 deletions(-) + +diff --git a/chromium/content/browser/browser_context.cc b/chromium/content/browser/browser_context.cc +index c07c16f62e3..6b952d4572f 100644 +--- src/3rdparty/chromium/content/browser/browser_context.cc ++++ src/3rdparty/chromium/content/browser/browser_context.cc +@@ -56,7 +56,6 @@ + #include "media/mojo/services/video_decode_perf_history.h" + #include "media/mojo/services/webrtc_video_perf_history.h" + #include "storage/browser/blob/blob_storage_context.h" +-#include "storage/browser/database/database_tracker.h" + #include "storage/browser/file_system/external_mount_points.h" + #include "third_party/blink/public/mojom/push_messaging/push_messaging.mojom.h" + #include "third_party/perfetto/include/perfetto/tracing/traced_proto.h" +@@ -252,13 +251,6 @@ void BrowserContext::EnsureResourceContextInitialized() { + void BrowserContext::SaveSessionState() { + StoragePartition* storage_partition = GetDefaultStoragePartition(); + +- storage::DatabaseTracker* database_tracker = +- storage_partition->GetDatabaseTracker(); +- database_tracker->task_runner()->PostTask( +- FROM_HERE, +- base::BindOnce(&storage::DatabaseTracker::SetForceKeepSessionState, +- base::WrapRefCounted(database_tracker))); +- + storage_partition->GetCookieManagerForBrowserProcess() + ->SetForceKeepSessionState(); + +diff --git a/chromium/content/browser/storage_partition_impl.cc b/chromium/content/browser/storage_partition_impl.cc +index 3147e6d0371..12ef04e2d8f 100644 +--- src/3rdparty/chromium/content/browser/storage_partition_impl.cc ++++ src/3rdparty/chromium/content/browser/storage_partition_impl.cc +@@ -1371,8 +1371,7 @@ void StoragePartitionImpl::Initialize( + browser_context_, partition_path_, is_in_memory(), quota_manager_proxy); + + database_tracker_ = storage::DatabaseTracker::Create( +- partition_path_, is_in_memory(), +- browser_context_->GetSpecialStoragePolicy(), quota_manager_proxy); ++ partition_path_, is_in_memory(), quota_manager_proxy); + + dom_storage_context_ = DOMStorageContextWrapper::Create( + this, browser_context_->GetSpecialStoragePolicy()); +diff --git a/chromium/storage/browser/database/database_tracker.cc b/chromium/storage/browser/database/database_tracker.cc +index 5dbfcf2d422..865661ea56e 100644 +--- src/3rdparty/chromium/storage/browser/database/database_tracker.cc ++++ src/3rdparty/chromium/storage/browser/database/database_tracker.cc +@@ -42,7 +42,6 @@ + #include "storage/browser/database/databases_table.h" + #include "storage/browser/quota/quota_client_type.h" + #include "storage/browser/quota/quota_manager_proxy.h" +-#include "storage/browser/quota/special_storage_policy.h" + #include "storage/common/database/database_identifier.h" + #include "third_party/blink/public/common/storage_key/storage_key.h" + #include "third_party/blink/public/mojom/quota/quota_types.mojom.h" +@@ -73,12 +72,6 @@ OriginInfo::OriginInfo(const OriginInfo& origin_info) = default; + + OriginInfo::~OriginInfo() = default; + +-void OriginInfo::GetAllDatabaseNames( +- std::vector<std::u16string>* databases) const { +- for (const auto& name_and_size : database_sizes_) +- databases->push_back(name_and_size.first); +-} +- + int64_t OriginInfo::GetDatabaseSize(const std::u16string& database_name) const { + auto it = database_sizes_.find(database_name); + if (it != database_sizes_.end()) +@@ -92,11 +85,10 @@ OriginInfo::OriginInfo(const std::string& origin_identifier, int64_t total_size) + scoped_refptr<DatabaseTracker> DatabaseTracker::Create( + const base::FilePath& profile_path, + bool is_incognito, +- scoped_refptr<SpecialStoragePolicy> special_storage_policy, + scoped_refptr<QuotaManagerProxy> quota_manager_proxy) { + auto database_tracker = base::MakeRefCounted<DatabaseTracker>( +- profile_path, is_incognito, std::move(special_storage_policy), +- std::move(quota_manager_proxy), base::PassKey<DatabaseTracker>()); ++ profile_path, is_incognito, std::move(quota_manager_proxy), ++ base::PassKey<DatabaseTracker>()); + database_tracker->RegisterQuotaClient(); + return database_tracker; + } +@@ -104,7 +96,6 @@ scoped_refptr<DatabaseTracker> DatabaseTracker::Create( + DatabaseTracker::DatabaseTracker( + const base::FilePath& profile_path, + bool is_incognito, +- scoped_refptr<SpecialStoragePolicy> special_storage_policy, + scoped_refptr<QuotaManagerProxy> quota_manager_proxy, + base::PassKey<DatabaseTracker>) + : is_incognito_(is_incognito), +@@ -117,7 +108,6 @@ DatabaseTracker::DatabaseTracker( + .page_size = 4096, + .cache_size = 500, + })), +- special_storage_policy_(std::move(special_storage_policy)), + quota_manager_proxy_(std::move(quota_manager_proxy)), + task_runner_(base::ThreadPool::CreateSequencedTaskRunner( + {base::MayBlock(), base::TaskPriority::USER_VISIBLE, +@@ -791,12 +781,6 @@ void DatabaseTracker::DeleteDataModifiedSince( + DatabaseSet to_be_deleted; + int rv = net::OK; + for (const auto& origin : origins_identifiers) { +- if (special_storage_policy_.get() && +- special_storage_policy_->IsStorageProtected( +- GetOriginURLFromIdentifier(origin))) { +- continue; +- } +- + std::vector<DatabaseDetails> details; + if (!databases_table_->GetAllDatabaseDetailsForOriginIdentifier(origin, + &details)) { +@@ -930,44 +914,6 @@ void DatabaseTracker::DeleteIncognitoDBDirectory() { + base::DeletePathRecursively(incognito_db_dir); + } + +-void DatabaseTracker::ClearSessionOnlyOrigins() { +- DCHECK(task_runner_->RunsTasksInCurrentSequence()); +- bool has_session_only_databases = +- special_storage_policy_.get() && +- special_storage_policy_->HasSessionOnlyOrigins(); +- +- // Clearing only session-only databases, and there are none. +- if (!has_session_only_databases) +- return; +- +- if (!LazyInit()) +- return; +- +- std::vector<std::string> origin_identifiers; +- GetAllOriginIdentifiers(&origin_identifiers); +- +- for (const auto& origin : origin_identifiers) { +- GURL origin_url = GetOriginURLFromIdentifier(origin); +- if (!special_storage_policy_->IsStorageSessionOnly(origin_url)) +- continue; +- if (special_storage_policy_->IsStorageProtected(origin_url)) +- continue; +- OriginInfo origin_info; +- std::vector<std::u16string> databases; +- GetOriginInfo(origin, &origin_info); +- origin_info.GetAllDatabaseNames(&databases); +- +- for (const auto& database : databases) { +- base::File file( +- GetFullDBFilePath(origin, database), +- base::File::FLAG_OPEN_ALWAYS | base::File::FLAG_WIN_SHARE_DELETE | +- base::File::FLAG_DELETE_ON_CLOSE | base::File::FLAG_READ); +- } +- DeleteOrigin(origin, true); +- } +-} +- +- + void DatabaseTracker::Shutdown() { + DCHECK(task_runner_->RunsTasksInCurrentSequence()); + if (shutting_down_) { +@@ -984,8 +930,6 @@ void DatabaseTracker::Shutdown() { + + if (is_incognito_) + DeleteIncognitoDBDirectory(); +- else if (!force_keep_session_state_) +- ClearSessionOnlyOrigins(); + CloseTrackerDatabaseAndClearCaches(); + + // Explicitly destroy `db_` on the correct sequence rather than waiting for +@@ -996,9 +940,4 @@ void DatabaseTracker::Shutdown() { + db_.reset(); + } + +-void DatabaseTracker::SetForceKeepSessionState() { +- DCHECK(task_runner_->RunsTasksInCurrentSequence()); +- force_keep_session_state_ = true; +-} +- + } // namespace storage +diff --git a/chromium/storage/browser/database/database_tracker.h b/chromium/storage/browser/database/database_tracker.h +index 57d189e338d..bc55a0b020a 100644 +--- src/3rdparty/chromium/storage/browser/database/database_tracker.h ++++ src/3rdparty/chromium/storage/browser/database/database_tracker.h +@@ -41,7 +41,6 @@ namespace storage { + class DatabaseQuotaClient; + class QuotaClientCallbackWrapper; + class QuotaManagerProxy; +-class SpecialStoragePolicy; + + COMPONENT_EXPORT(STORAGE_BROWSER) + extern const base::FilePath::CharType kDatabaseDirectoryName[]; +@@ -101,13 +100,11 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + static scoped_refptr<DatabaseTracker> Create( + const base::FilePath& profile_path, + bool is_incognito, +- scoped_refptr<SpecialStoragePolicy> special_storage_policy, + scoped_refptr<QuotaManagerProxy> quota_manager_proxy); + + // Exposed for base::MakeRefCounted. Users should call Create(). + DatabaseTracker(const base::FilePath& profile_path, + bool is_incognito, +- scoped_refptr<SpecialStoragePolicy> special_storage_policy, + scoped_refptr<QuotaManagerProxy> quota_manager_proxy, + base::PassKey<DatabaseTracker>); + +@@ -168,9 +165,6 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + + // Deletes databases touched since `cutoff`. + // +- // Does not delete databases belonging to origins designated as protected by +- // the SpecialStoragePolicy passed to the DatabaseTracker constructor. +- // + // `callback` must must be non-null, and is invoked upon completion with a + // net::Error. The status will be net::OK on success, or net::FAILED if not + // all databases could be deleted. `callback` may be called before this method +@@ -198,8 +192,6 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + // Shutdown the database tracker, deleting database files if the tracker is + // used for an Incognito profile. + void Shutdown(); +- // Disables the exit-time deletion of session-only data. +- void SetForceKeepSessionState(); + + protected: + // Subclasses need PassKeys to call the constructor. +@@ -248,9 +240,6 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + // exists. + void DeleteIncognitoDBDirectory(); + +- // Deletes session-only databases. Blocks databases from being created/opened. +- void ClearSessionOnlyOrigins(); +- + bool DeleteClosedDatabase(const std::string& origin_identifier, + const std::u16string& database_name); + +@@ -303,7 +292,6 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + + bool is_initialized_ = false; + const bool is_incognito_; +- bool force_keep_session_state_ = false; + bool shutting_down_ = false; + const base::FilePath profile_path_; + +@@ -324,9 +312,6 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) DatabaseTracker + std::vector<std::pair<net::CompletionOnceCallback, DatabaseSet>> + deletion_callbacks_; + +- // Apps and Extensions can have special rights. +- const scoped_refptr<SpecialStoragePolicy> special_storage_policy_; +- + // Can be accessed from any thread via quota_manager_proxy(). + // + // Thread-safety argument: The reference is immutable. +From 3ef0cdbadfc403513047464d18e63fc952a43f7b Mon Sep 17 00:00:00 2001 +From: Shahbaz Youssefi <syoussefi@chromium.org> +Date: Mon, 8 Apr 2024 10:14:45 -0400 +Subject: [PATCH] [Backport] CVE-2024-4058: Type Confusion in ANGLE + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/angle/angle/+/5462388: +SPIR-V: Fix const constructors with single scalar + +These constructors may be generated because of +RemoveArrayLengthTraverser. + +Bug: chromium:332546345 +Change-Id: I2b2bf3728ef5bae148abc2a8518f8f3f42850025 +Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5462388 +(cherry picked from commit 0b776d32f69a932acb61963d9daad9e13f610944) +Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5466390 +Commit-Queue: Zakhar Voit <voit@google.com> +Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> +Reviewed-by: Geoff Lang <geofflang@chromium.org> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/557315 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../third_party/angle/src/compiler/translator/Compiler.cpp | 5 +++++ + .../angle/src/compiler/translator/spirv/OutputSPIRV.cpp | 2 ++ + 2 files changed, 7 insertions(+) + +diff --git a/chromium/third_party/angle/src/compiler/translator/Compiler.cpp b/chromium/third_party/angle/src/compiler/translator/Compiler.cpp +index c70c419631a..c846c9b33fa 100644 +--- src/3rdparty/chromium/third_party/angle/src/compiler/translator/Compiler.cpp ++++ src/3rdparty/chromium/third_party/angle/src/compiler/translator/Compiler.cpp +@@ -1034,6 +1034,11 @@ bool TCompiler::checkAndSimplifyAST(TIntermBlock *root, + { + return false; + } ++ // Fold the expressions again, because |RemoveArrayLengthMethod| can introduce new constants. ++ if (!FoldExpressions(this, root, &mDiagnostics)) ++ { ++ return false; ++ } + + if (!RemoveUnreferencedVariables(this, root, &mSymbolTable)) + { +diff --git a/chromium/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp b/chromium/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp +index ed3aac4e432..4c3d1d000c6 100644 +--- src/3rdparty/chromium/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp ++++ src/3rdparty/chromium/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp +@@ -1335,6 +1335,8 @@ spirv::IdRef OutputSPIRVTraverser::createComplexConstant(const TType &type, + + if (type.isMatrix() && !type.isArray()) + { ++ ASSERT(parameters.size() == type.getRows() * type.getCols()); ++ + // Matrices are constructed from their columns. + spirv::IdRefList columnIds; + +From b0ff4b16e877e3787a7200b71440c9f2be7fe1d7 Mon Sep 17 00:00:00 2001 +From: Antonio Maiorano <amaiorano@google.com> +Date: Thu, 18 Apr 2024 13:07:04 -0400 +Subject: [PATCH] [Backport] CVE-2024-4060: Use after free in Dawn + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5464347: +Replace dynamic_cast with virtual call (#6515) + +Make TextDiagnosticPrinter::setPrefix a virtual function in base class +DiagnosticConsumer. This allows us to avoid using dynamic_cast in +BackendConsumer::DxilDiagHandler, required for codebases that do not +enable RTTI. This is also the only place in the codebase that uses RTTI +(AFAICT). + +Bug: chromium:333420620 +Change-Id: Ida73077f24fdb4b705b5d868b04ac6cfecb30327 +Reviewed-on: https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5464347 +Reviewed-by: dan sinclair <dsinclair@chromium.org> +Reviewed-by: David Neto <dneto@google.com> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/557316 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../dxc/tools/clang/include/clang/Basic/Diagnostic.h | 2 ++ + .../tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h | 3 ++- + .../third_party/dxc/tools/clang/lib/CodeGen/CodeGenAction.cpp | 2 +- + 3 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Basic/Diagnostic.h b/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Basic/Diagnostic.h +index cf56e3a7208..b6f804012c5 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Basic/Diagnostic.h ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Basic/Diagnostic.h +@@ -1395,6 +1395,8 @@ class DiagnosticConsumer { + /// warnings and errors. + virtual void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel, + const Diagnostic &Info); ++ ++ virtual void setPrefix(std::string Value) {} // HLSL Change + }; + + /// \brief A diagnostic client that ignores all diagnostics. +diff --git a/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h b/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h +index 04a570559fe..936031e0967 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h +@@ -45,7 +45,8 @@ class TextDiagnosticPrinter : public DiagnosticConsumer { + /// setPrefix - Set the diagnostic printer prefix string, which will be + /// printed at the start of any diagnostics. If empty, no prefix string is + /// used. +- void setPrefix(std::string Value) { Prefix = Value; } ++ // HLSL Change: add override ++ void setPrefix(std::string Value) override { Prefix = Value; } + + void BeginSourceFile(const LangOptions &LO, const Preprocessor *PP) override; + void EndSourceFile() override; +diff --git a/chromium/third_party/dawn/third_party/dxc/tools/clang/lib/CodeGen/CodeGenAction.cpp b/chromium/third_party/dawn/third_party/dxc/tools/clang/lib/CodeGen/CodeGenAction.cpp +index 4fa721e8122..68ebaadf5a8 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/lib/CodeGen/CodeGenAction.cpp ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/tools/clang/lib/CodeGen/CodeGenAction.cpp +@@ -557,7 +557,7 @@ BackendConsumer::DxilDiagHandler(const llvm::DiagnosticInfoDxil &D) { + + // If no location information is available, add function name + if (Loc.isInvalid()) { +- auto *DiagClient = dynamic_cast<TextDiagnosticPrinter*>(Diags.getClient()); ++ auto *DiagClient = Diags.getClient(); + auto *func = D.getFunction(); + if (DiagClient && func) + DiagClient->setPrefix("Function: " + func->getName().str()); +From b916ca00cc5222253ac5860c3e612ccf00d899c3 Mon Sep 17 00:00:00 2001 +From: Nina Satragno <nsatragno@chromium.org> +Date: Mon, 8 Apr 2024 20:07:43 +0000 +Subject: [PATCH] [Backport] Security bug 332724843 + +Partial manual backport of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5426374: +[webauthn] Don't keep network contexts around + +Instead of having fido code pass network contexts around, pass a factory +and get a fresh one every time one is needed. + +Keep cable transact* methods that take a network context around until +we clean up the android cable client module in a follow-up. + +Bug: 332724843 +Change-Id: I33ea5c741706041c75c10cf881452fcf77fce445 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5426374 +Reviewed-by: Adam Langley <agl@chromium.org> +Commit-Queue: Nina Satragno <nsatragno@chromium.org> +Cr-Commit-Position: refs/heads/main@{#1284063} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/557317 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + chromium/device/fido/BUILD.gn | 1 + + .../device/fido/cable/fido_tunnel_device.cc | 9 +-- + .../device/fido/cable/fido_tunnel_device.h | 5 +- + .../device/fido/cable/v2_authenticator.cc | 66 +++++++++++++++---- + chromium/device/fido/cable/v2_authenticator.h | 28 +++++++- + chromium/device/fido/cable/v2_discovery.cc | 10 +-- + chromium/device/fido/cable/v2_discovery.h | 5 +- + .../device/fido/fido_discovery_factory.cc | 7 +- + chromium/device/fido/fido_discovery_factory.h | 8 ++- + .../device/fido/network_context_factory.h | 20 ++++++ + 10 files changed, 122 insertions(+), 37 deletions(-) + create mode 100644 chromium/device/fido/network_context_factory.h + +diff --git a/chromium/device/fido/BUILD.gn b/chromium/device/fido/BUILD.gn +index 8e168df02ef..be11e40a4ce 100644 +--- src/3rdparty/chromium/device/fido/BUILD.gn ++++ src/3rdparty/chromium/device/fido/BUILD.gn +@@ -42,6 +42,7 @@ component("fido") { + "fido_transport_protocol.h", + "json_request.cc", + "json_request.h", ++ "network_context_factory.h", + "opaque_attestation_statement.cc", + "opaque_attestation_statement.h", + "p256_public_key.cc", +diff --git a/chromium/device/fido/cable/fido_tunnel_device.cc b/chromium/device/fido/cable/fido_tunnel_device.cc +index ad35e6ee176..bd10a4793bb 100644 +--- src/3rdparty/chromium/device/fido/cable/fido_tunnel_device.cc ++++ src/3rdparty/chromium/device/fido/cable/fido_tunnel_device.cc +@@ -17,6 +17,7 @@ + #include "device/fido/features.h" + #include "device/fido/fido_constants.h" + #include "device/fido/fido_parsing_utils.h" ++#include "device/fido/network_context_factory.h" + #include "net/traffic_annotation/network_traffic_annotation.h" + #include "third_party/boringssl/src/include/openssl/aes.h" + #include "third_party/boringssl/src/include/openssl/digest.h" +@@ -96,7 +97,7 @@ constexpr net::NetworkTrafficAnnotationTag kTrafficAnnotation = + })"); + + FidoTunnelDevice::FidoTunnelDevice( +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + absl::optional<base::RepeatingCallback<void(std::unique_ptr<Pairing>)>> + pairing_callback, + absl::optional<base::RepeatingCallback<void(Event)>> event_callback, +@@ -130,7 +131,7 @@ FidoTunnelDevice::FidoTunnelDevice( + base::BindOnce(&FidoTunnelDevice::OnTunnelReady, base::Unretained(this)), + base::BindRepeating(&FidoTunnelDevice::OnTunnelData, + base::Unretained(this))); +- network_context->CreateWebSocket( ++ network_context_factory.Run()->CreateWebSocket( + url, {kCableWebSocketProtocol}, net::SiteForCookies(), + net::IsolationInfo(), /*additional_headers=*/{}, + network::mojom::kBrowserProcessId, url::Origin::Create(url), +@@ -145,7 +146,7 @@ FidoTunnelDevice::FidoTunnelDevice( + + FidoTunnelDevice::FidoTunnelDevice( + FidoRequestType request_type, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + std::unique_ptr<Pairing> pairing, + base::OnceClosure pairing_is_invalid, + absl::optional<base::RepeatingCallback<void(Event)>> event_callback) +@@ -187,7 +188,7 @@ FidoTunnelDevice::FidoTunnelDevice( + headers.emplace_back( + network::mojom::HttpHeader::New(kCableSignalConnectionHeader, "true")); + } +- network_context->CreateWebSocket( ++ network_context_factory.Run()->CreateWebSocket( + url, {kCableWebSocketProtocol}, net::SiteForCookies(), + net::IsolationInfo(), std::move(headers), + network::mojom::kBrowserProcessId, url::Origin::Create(url), +diff --git a/chromium/device/fido/cable/fido_tunnel_device.h b/chromium/device/fido/cable/fido_tunnel_device.h +index 1d0a7cb3372..840ecc34232 100644 +--- src/3rdparty/chromium/device/fido/cable/fido_tunnel_device.h ++++ src/3rdparty/chromium/device/fido/cable/fido_tunnel_device.h +@@ -17,6 +17,7 @@ + #include "device/fido/cable/websocket_adapter.h" + #include "device/fido/fido_constants.h" + #include "device/fido/fido_device.h" ++#include "device/fido/network_context_factory.h" + #include "third_party/abseil-cpp/absl/types/variant.h" + + namespace network::mojom { +@@ -33,7 +34,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoTunnelDevice : public FidoDevice { + public: + // This constructor is used for QR-initiated connections. + FidoTunnelDevice( +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + absl::optional<base::RepeatingCallback<void(std::unique_ptr<Pairing>)>> + pairing_callback, + absl::optional<base::RepeatingCallback<void(Event)>> event_callback, +@@ -47,7 +48,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoTunnelDevice : public FidoDevice { + // run. + FidoTunnelDevice( + FidoRequestType request_type, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + std::unique_ptr<Pairing> pairing, + base::OnceClosure pairing_is_invalid, + absl::optional<base::RepeatingCallback<void(Event)>> event_callback); +diff --git a/chromium/device/fido/cable/v2_authenticator.cc b/chromium/device/fido/cable/v2_authenticator.cc +index e4bd3244cb3..faf8915ec10 100644 +--- src/3rdparty/chromium/device/fido/cable/v2_authenticator.cc ++++ src/3rdparty/chromium/device/fido/cable/v2_authenticator.cc +@@ -23,6 +23,7 @@ + #include "device/fido/features.h" + #include "device/fido/fido_constants.h" + #include "device/fido/fido_parsing_utils.h" ++#include "device/fido/network_context_factory.h" + #include "device/fido/public_key_credential_descriptor.h" + #include "device/fido/public_key_credential_params.h" + #include "device/fido/public_key_credential_rp_entity.h" +@@ -289,7 +290,7 @@ class TunnelTransport : public Transport { + public: + TunnelTransport( + Platform* platform, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + base::span<const uint8_t> secret, + base::span<const uint8_t, device::kP256X962Length> peer_identity, + GeneratePairingDataCallback generate_pairing_data) +@@ -302,7 +303,7 @@ class TunnelTransport : public Transport { + secret, + base::span<const uint8_t>(), + device::cablev2::DerivedValueType::kEIDKey)), +- network_context_(network_context), ++ network_context_factory_(std::move(network_context_factory)), + peer_identity_(device::fido_parsing_utils::Materialize(peer_identity)), + generate_pairing_data_(std::move(generate_pairing_data)), + secret_(fido_parsing_utils::Materialize(secret)) { +@@ -319,7 +320,7 @@ class TunnelTransport : public Transport { + + TunnelTransport( + Platform* platform, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + base::span<const uint8_t> secret, + base::span<const uint8_t, device::cablev2::kClientNonceSize> client_nonce, + std::array<uint8_t, device::cablev2::kRoutingIdSize> routing_id, +@@ -331,7 +332,7 @@ class TunnelTransport : public Transport { + secret, + client_nonce, + device::cablev2::DerivedValueType::kEIDKey)), +- network_context_(network_context), ++ network_context_factory_(network_context_factory), + secret_(fido_parsing_utils::Materialize(secret)), + local_identity_(std::move(local_identity)) { + DCHECK_EQ(state_, State::kNone); +@@ -390,7 +391,7 @@ class TunnelTransport : public Transport { + void StartWebSocket() { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + +- network_context_->CreateWebSocket( ++ network_context_factory_.Run()->CreateWebSocket( + target_, {device::kCableWebSocketProtocol}, net::SiteForCookies(), + net::IsolationInfo(), /*additional_headers=*/{}, + network::mojom::kBrowserProcessId, url::Origin::Create(target_), +@@ -623,7 +624,7 @@ class TunnelTransport : public Transport { + const std::array<uint8_t, kEIDKeySize> eid_key_; + std::unique_ptr<WebSocketAdapter> websocket_client_; + std::unique_ptr<Crypter> crypter_; +- const raw_ptr<network::mojom::NetworkContext> network_context_; ++ NetworkContextFactory network_context_factory_; + const absl::optional<std::array<uint8_t, kP256X962Length>> peer_identity_; + std::array<uint8_t, kPSKSize> psk_; + GeneratePairingDataCallback generate_pairing_data_; +@@ -1238,7 +1239,7 @@ std::unique_ptr<Transaction> TransactWithPlaintextTransport( + + std::unique_ptr<Transaction> TransactFromQRCode( + std::unique_ptr<Platform> platform, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + base::span<const uint8_t, kRootSecretSize> root_secret, + const std::string& authenticator_name, + base::span<const uint8_t, 16> qr_secret, +@@ -1249,16 +1250,34 @@ std::unique_ptr<Transaction> TransactFromQRCode( + + Platform* const platform_ptr = platform.get(); + return std::make_unique<CTAP2Processor>( +- std::make_unique<TunnelTransport>(platform_ptr, network_context, +- qr_secret, peer_identity, +- std::move(generate_pairing_data)), ++ std::make_unique<TunnelTransport>( ++ platform_ptr, std::move(network_context_factory), qr_secret, ++ peer_identity, std::move(generate_pairing_data)), + std::move(platform)); + } + +-std::unique_ptr<Transaction> TransactFromFCM( ++std::unique_ptr<Transaction> TransactFromQRCodeDeprecated( + std::unique_ptr<Platform> platform, + network::mojom::NetworkContext* network_context, + base::span<const uint8_t, kRootSecretSize> root_secret, ++ const std::string& authenticator_name, ++ base::span<const uint8_t, 16> qr_secret, ++ base::span<const uint8_t, kP256X962Length> peer_identity, ++ std::optional<std::vector<uint8_t>> contact_id) { ++ NetworkContextFactory factory = base::BindRepeating( ++ [](network::mojom::NetworkContext* network_context) { ++ return network_context; ++ }, ++ network_context); ++ return TransactFromQRCode(std::move(platform), std::move(factory), ++ root_secret, authenticator_name, qr_secret, ++ peer_identity, std::move(contact_id)); ++} ++ ++std::unique_ptr<Transaction> TransactFromFCM( ++ std::unique_ptr<Platform> platform, ++ NetworkContextFactory network_context_factory, ++ base::span<const uint8_t, kRootSecretSize> root_secret, + std::array<uint8_t, kRoutingIdSize> routing_id, + base::span<const uint8_t, kTunnelIdSize> tunnel_id, + base::span<const uint8_t, kPairingIDSize> pairing_id, +@@ -1269,12 +1288,31 @@ std::unique_ptr<Transaction> TransactFromFCM( + + Platform* const platform_ptr = platform.get(); + return std::make_unique<CTAP2Processor>( +- std::make_unique<TunnelTransport>(platform_ptr, network_context, +- paired_secret, client_nonce, routing_id, +- tunnel_id, IdentityKey(root_secret)), ++ std::make_unique<TunnelTransport>( ++ platform_ptr, std::move(network_context_factory), paired_secret, ++ client_nonce, routing_id, tunnel_id, IdentityKey(root_secret)), + std::move(platform)); + } + ++std::unique_ptr<Transaction> TransactFromFCMDeprecated( ++ std::unique_ptr<Platform> platform, ++ network::mojom::NetworkContext* network_context, ++ base::span<const uint8_t, kRootSecretSize> root_secret, ++ std::array<uint8_t, kRoutingIdSize> routing_id, ++ base::span<const uint8_t, kTunnelIdSize> tunnel_id, ++ base::span<const uint8_t, kPairingIDSize> pairing_id, ++ base::span<const uint8_t, kClientNonceSize> client_nonce, ++ std::optional<base::span<const uint8_t>> contact_id) { ++ NetworkContextFactory factory = base::BindRepeating( ++ [](network::mojom::NetworkContext* network_context) { ++ return network_context; ++ }, ++ network_context); ++ return TransactFromFCM(std::move(platform), std::move(factory), root_secret, ++ std::move(routing_id), tunnel_id, pairing_id, ++ client_nonce, std::move(contact_id)); ++} ++ + } // namespace authenticator + } // namespace cablev2 + } // namespace device +diff --git a/chromium/device/fido/cable/v2_authenticator.h b/chromium/device/fido/cable/v2_authenticator.h +index 0f55d7758ed..811e632e915 100644 +--- src/3rdparty/chromium/device/fido/cable/v2_authenticator.h ++++ src/3rdparty/chromium/device/fido/cable/v2_authenticator.h +@@ -14,6 +14,7 @@ + #include "base/functional/callback.h" + #include "device/fido/cable/v2_constants.h" + #include "device/fido/fido_constants.h" ++#include "device/fido/network_context_factory.h" + #include "services/network/public/mojom/network_context.mojom-forward.h" + #include "third_party/abseil-cpp/absl/types/optional.h" + #include "third_party/abseil-cpp/absl/types/variant.h" +@@ -139,7 +140,7 @@ std::unique_ptr<Transaction> TransactWithPlaintextTransport( + // contents of a QR code. + std::unique_ptr<Transaction> TransactFromQRCode( + std::unique_ptr<Platform> platform, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + base::span<const uint8_t, kRootSecretSize> root_secret, + const std::string& authenticator_name, + // TODO: name this constant. +@@ -147,11 +148,22 @@ std::unique_ptr<Transaction> TransactFromQRCode( + base::span<const uint8_t, kP256X962Length> peer_identity, + absl::optional<std::vector<uint8_t>> contact_id); + ++// Deprecated, kept around while Android cable code is cleaned up. Use ++// TransactFromQRCode instead. ++std::unique_ptr<Transaction> TransactFromQRCodeDeprecated( ++ std::unique_ptr<Platform> platform, ++ network::mojom::NetworkContext* network_context, ++ base::span<const uint8_t, kRootSecretSize> root_secret, ++ const std::string& authenticator_name, ++ base::span<const uint8_t, 16> qr_secret, ++ base::span<const uint8_t, kP256X962Length> peer_identity, ++ std::optional<std::vector<uint8_t>> contact_id); ++ + // TransactFromFCM starts a network-based transaction based on the decoded + // contents of a cloud message. + std::unique_ptr<Transaction> TransactFromFCM( + std::unique_ptr<Platform> platform, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + base::span<const uint8_t, kRootSecretSize> root_secret, + std::array<uint8_t, kRoutingIdSize> routing_id, + base::span<const uint8_t, kTunnelIdSize> tunnel_id, +@@ -159,6 +171,18 @@ std::unique_ptr<Transaction> TransactFromFCM( + base::span<const uint8_t, kClientNonceSize> client_nonce, + absl::optional<base::span<const uint8_t>> contact_id); + ++// Deprecated, kept around while Android cable code is cleaned up. Use ++// TransactFromFCM instead. ++std::unique_ptr<Transaction> TransactFromFCMDeprecated( ++ std::unique_ptr<Platform> platform, ++ network::mojom::NetworkContext* network_context, ++ base::span<const uint8_t, kRootSecretSize> root_secret, ++ std::array<uint8_t, kRoutingIdSize> routing_id, ++ base::span<const uint8_t, kTunnelIdSize> tunnel_id, ++ base::span<const uint8_t, kPairingIDSize> pairing_id, ++ base::span<const uint8_t, kClientNonceSize> client_nonce, ++ std::optional<base::span<const uint8_t>> contact_id); ++ + } // namespace authenticator + } // namespace cablev2 + } // namespace device +diff --git a/chromium/device/fido/cable/v2_discovery.cc b/chromium/device/fido/cable/v2_discovery.cc +index e6a8bb03557..c19ed148ee1 100644 +--- src/3rdparty/chromium/device/fido/cable/v2_discovery.cc ++++ src/3rdparty/chromium/device/fido/cable/v2_discovery.cc +@@ -49,7 +49,7 @@ void RecordEvent(CableV2DiscoveryEvent event) { + + Discovery::Discovery( + FidoRequestType request_type, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + absl::optional<base::span<const uint8_t, kQRKeySize>> qr_generator_key, + std::unique_ptr<AdvertEventStream> advert_stream, + std::unique_ptr<EventStream<std::unique_ptr<Pairing>>> +@@ -62,7 +62,7 @@ Discovery::Discovery( + absl::optional<base::RepeatingCallback<void(Event)>> event_callback) + : FidoDeviceDiscovery(FidoTransportProtocol::kHybrid), + request_type_(request_type), +- network_context_(network_context), ++ network_context_factory_(std::move(network_context_factory)), + qr_keys_(KeysFromQRGeneratorKey(qr_generator_key)), + extension_keys_(KeysFromExtension(extension_contents)), + advert_stream_(std::move(advert_stream)), +@@ -161,7 +161,7 @@ void Discovery::OnBLEAdvertSeen(base::span<const uint8_t, kAdvertSize> advert) { + event_callback_->Run(Event::kBLEAdvertReceived); + } + AddDevice(std::make_unique<cablev2::FidoTunnelDevice>( +- network_context_, pairing_callback_, event_callback_, ++ network_context_factory_, pairing_callback_, event_callback_, + qr_keys_->qr_secret, qr_keys_->local_identity_seed, *plaintext)); + return; + } +@@ -177,7 +177,7 @@ void Discovery::OnBLEAdvertSeen(base::span<const uint8_t, kAdvertSize> advert) { + RecordEvent(CableV2DiscoveryEvent::kExtensionMatch); + device_committed_ = true; + AddDevice(std::make_unique<cablev2::FidoTunnelDevice>( +- network_context_, base::DoNothing(), event_callback_, ++ network_context_factory_, base::DoNothing(), event_callback_, + extension.qr_secret, extension.local_identity_seed, *plaintext)); + return; + } +@@ -190,7 +190,7 @@ void Discovery::OnBLEAdvertSeen(base::span<const uint8_t, kAdvertSize> advert) { + void Discovery::OnContactDevice(std::unique_ptr<Pairing> pairing) { + auto pairing_copy = std::make_unique<Pairing>(*pairing); + tunnels_pending_advert_.emplace_back(std::make_unique<FidoTunnelDevice>( +- request_type_, network_context_, std::move(pairing), ++ request_type_, network_context_factory_, std::move(pairing), + base::BindOnce(&Discovery::PairingIsInvalid, weak_factory_.GetWeakPtr(), + std::move(pairing_copy)), + event_callback_)); +diff --git a/chromium/device/fido/cable/v2_discovery.h b/chromium/device/fido/cable/v2_discovery.h +index c5aa2179d7b..44fc0180c58 100644 +--- src/3rdparty/chromium/device/fido/cable/v2_discovery.h ++++ src/3rdparty/chromium/device/fido/cable/v2_discovery.h +@@ -19,6 +19,7 @@ + #include "device/fido/cable/v2_constants.h" + #include "device/fido/fido_constants.h" + #include "device/fido/fido_device_discovery.h" ++#include "device/fido/network_context_factory.h" + #include "services/network/public/mojom/network_context.mojom-forward.h" + #include "third_party/abseil-cpp/absl/types/optional.h" + +@@ -36,7 +37,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) Discovery : public FidoDeviceDiscovery { + + Discovery( + FidoRequestType request_type, +- network::mojom::NetworkContext* network_context, ++ NetworkContextFactory network_context_factory, + absl::optional<base::span<const uint8_t, kQRKeySize>> qr_generator_key, + std::unique_ptr<AdvertEventStream> advert_stream, + // contact_device_stream contains a series of pairings indicating that the +@@ -80,7 +81,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) Discovery : public FidoDeviceDiscovery { + const std::vector<CableDiscoveryData>& extension_contents); + + const FidoRequestType request_type_; +- const raw_ptr<network::mojom::NetworkContext> network_context_; ++ NetworkContextFactory network_context_factory_; + const absl::optional<UnpairedKeys> qr_keys_; + const std::vector<UnpairedKeys> extension_keys_; + std::unique_ptr<AdvertEventStream> advert_stream_; +diff --git a/chromium/device/fido/fido_discovery_factory.cc b/chromium/device/fido/fido_discovery_factory.cc +index 040aa19fbb4..2d6c85c7721 100644 +--- src/3rdparty/chromium/device/fido/fido_discovery_factory.cc ++++ src/3rdparty/chromium/device/fido/fido_discovery_factory.cc +@@ -87,7 +87,7 @@ std::vector<std::unique_ptr<FidoDiscoveryBase>> FidoDiscoveryFactory::Create( + &CableDiscoveryData::version); + if (qr_generator_key_.has_value() || have_v2_discovery_data) { + ret.emplace_back(std::make_unique<cablev2::Discovery>( +- request_type_.value(), network_context_, qr_generator_key_, ++ request_type_.value(), network_context_factory_, qr_generator_key_, + v1_discovery->GetV2AdvertStream(), + std::move(contact_device_stream_), + cable_data_.value_or(std::vector<CableDiscoveryData>()), +@@ -148,11 +148,6 @@ void FidoDiscoveryFactory::set_android_accessory_params( + aoa_request_description_ = std::move(aoa_request_description); + } + +-void FidoDiscoveryFactory::set_network_context( +- network::mojom::NetworkContext* network_context) { +- network_context_ = network_context; +-} +- + void FidoDiscoveryFactory::set_cable_pairing_callback( + base::RepeatingCallback<void(std::unique_ptr<cablev2::Pairing>)> callback) { + cable_pairing_callback_ = std::move(callback); +diff --git a/chromium/device/fido/fido_discovery_factory.h b/chromium/device/fido/fido_discovery_factory.h +index ed2b51d86cc..9705d548c24 100644 +--- src/3rdparty/chromium/device/fido/fido_discovery_factory.h ++++ src/3rdparty/chromium/device/fido/fido_discovery_factory.h +@@ -22,6 +22,7 @@ + #include "device/fido/fido_request_handler_base.h" + #include "device/fido/fido_transport_protocol.h" + #include "device/fido/hid/fido_hid_discovery.h" ++#include "device/fido/network_context_factory.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "services/device/public/mojom/usb_manager.mojom.h" + #include "services/network/public/mojom/network_context.mojom-forward.h" +@@ -69,7 +70,10 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoDiscoveryFactory { + mojo::Remote<device::mojom::UsbDeviceManager>, + std::string aoa_request_description); + +- void set_network_context(network::mojom::NetworkContext*); ++ void set_network_context_factory( ++ NetworkContextFactory network_context_factory) { ++ network_context_factory_ = std::move(network_context_factory); ++ } + + // set_cable_pairing_callback installs a repeating callback that will be + // called when a QR handshake results in a phone wishing to pair with this +@@ -167,7 +171,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoDiscoveryFactory { + absl::optional<mojo::Remote<device::mojom::UsbDeviceManager>> + usb_device_manager_; + std::string aoa_request_description_; +- raw_ptr<network::mojom::NetworkContext> network_context_ = nullptr; ++ NetworkContextFactory network_context_factory_; + absl::optional<std::vector<CableDiscoveryData>> cable_data_; + absl::optional<std::array<uint8_t, cablev2::kQRKeySize>> qr_generator_key_; + absl::optional<FidoRequestType> request_type_; +diff --git a/chromium/device/fido/network_context_factory.h b/chromium/device/fido/network_context_factory.h +new file mode 100644 +index 00000000000..802f45c4c45 +--- /dev/null ++++ src/3rdparty/chromium/device/fido/network_context_factory.h +@@ -0,0 +1,20 @@ ++// Copyright 2024 The Chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++#ifndef DEVICE_FIDO_NETWORK_CONTEXT_FACTORY_H_ ++#define DEVICE_FIDO_NETWORK_CONTEXT_FACTORY_H_ ++ ++#include "base/functional/callback_forward.h" ++ ++namespace network::mojom { ++class NetworkContext; ++} // namespace network::mojom ++ ++namespace device { ++using NetworkContextFactory = ++ base::RepeatingCallback<network::mojom::NetworkContext*()>; ++} // namespace device ++ ++#endif // DEVICE_FIDO_NETWORK_CONTEXT_FACTORY_H_ ++ +From 533465116ce3b87ebd30d1b4de055daa413c1050 Mon Sep 17 00:00:00 2001 +From: Tommy Steimel <steimel@chromium.org> +Date: Wed, 24 Apr 2024 09:18:49 +0000 +Subject: [PATCH] [Backport] CVE-2024-4331: Use after free in Picture In + Picture + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5477908: +Don't assume the enter event window is a LocalDOMWindow + +This CL changes DocumentPictureInPictureEvent to store a DOMWindow +instead of a LocalDOMWindow to prevent crashes when the window it gets +is actually a RemoteDOMWindow. + +(cherry picked from commit 2314741cdf2c4a6e11234dda7006ec0dd9005bbb) + +Bug: 335003891 +Change-Id: I86a0ec5a89b51a26d5dd89559f86e6e4d6c3e8fe +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5467978 +Commit-Queue: Tommy Steimel <steimel@chromium.org> +Cr-Original-Commit-Position: refs/heads/main@{#1290122} +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5477908 +Auto-Submit: Tommy Steimel <steimel@chromium.org> +Commit-Queue: Frank Liberato <liberato@chromium.org> +Cr-Commit-Position: refs/branch-heads/6367@{#974} +Cr-Branched-From: d158c6dc6e3604e6f899041972edf26087a49740-refs/heads/main@{#1274542} +(cherry picked from commit 98bcf9ef5cdd3a19f8b739f2cc6b2afdb01b7694) +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/560756 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../document_picture_in_picture_event.cc | 9 ++++----- + .../document_picture_in_picture_event.h | 11 +++++------ + 2 files changed, 9 insertions(+), 11 deletions(-) + +diff --git a/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.cc b/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.cc +index 037813c62c2..572d0803c25 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.cc ++++ src/3rdparty/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.cc +@@ -8,7 +8,7 @@ namespace blink { + + DocumentPictureInPictureEvent* DocumentPictureInPictureEvent::Create( + const AtomicString& type, +- LocalDOMWindow* document_picture_in_picture_window) { ++ DOMWindow* document_picture_in_picture_window) { + return MakeGarbageCollected<DocumentPictureInPictureEvent>( + type, document_picture_in_picture_window); + } +@@ -19,13 +19,13 @@ DocumentPictureInPictureEvent* DocumentPictureInPictureEvent::Create( + return MakeGarbageCollected<DocumentPictureInPictureEvent>(type, initializer); + } + +-LocalDOMWindow* DocumentPictureInPictureEvent::window() const { ++DOMWindow* DocumentPictureInPictureEvent::window() const { + return document_picture_in_picture_window_.Get(); + } + + DocumentPictureInPictureEvent::DocumentPictureInPictureEvent( + AtomicString const& type, +- LocalDOMWindow* document_picture_in_picture_window) ++ DOMWindow* document_picture_in_picture_window) + : Event(type, Bubbles::kYes, Cancelable::kNo), + document_picture_in_picture_window_(document_picture_in_picture_window) {} + +@@ -33,8 +33,7 @@ DocumentPictureInPictureEvent::DocumentPictureInPictureEvent( + AtomicString const& type, + const DocumentPictureInPictureEventInit* initializer) + : Event(type, initializer), +- document_picture_in_picture_window_( +- static_cast<LocalDOMWindow*>(initializer->window())) {} ++ document_picture_in_picture_window_(initializer->window()) {} + + void DocumentPictureInPictureEvent::Trace(Visitor* visitor) const { + visitor->Trace(document_picture_in_picture_window_); +diff --git a/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.h b/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.h +index 7af20221469..59cd8cb7a2e 100644 +--- src/3rdparty/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.h ++++ src/3rdparty/chromium/third_party/blink/renderer/modules/document_picture_in_picture/document_picture_in_picture_event.h +@@ -6,7 +6,7 @@ + #define THIRD_PARTY_BLINK_RENDERER_MODULES_DOCUMENT_PICTURE_IN_PICTURE_DOCUMENT_PICTURE_IN_PICTURE_EVENT_H_ + + #include "third_party/blink/renderer/bindings/modules/v8/v8_document_picture_in_picture_event_init.h" +-#include "third_party/blink/renderer/core/frame/local_dom_window.h" ++#include "third_party/blink/renderer/core/frame/dom_window.h" + #include "third_party/blink/renderer/modules/event_modules.h" + #include "third_party/blink/renderer/platform/wtf/text/atomic_string.h" + +@@ -18,22 +18,21 @@ class MODULES_EXPORT DocumentPictureInPictureEvent final : public Event { + DEFINE_WRAPPERTYPEINFO(); + + public: +- static DocumentPictureInPictureEvent* Create(const AtomicString&, +- LocalDOMWindow*); ++ static DocumentPictureInPictureEvent* Create(const AtomicString&, DOMWindow*); + static DocumentPictureInPictureEvent* Create( + const AtomicString&, + const DocumentPictureInPictureEventInit*); + +- DocumentPictureInPictureEvent(AtomicString const&, LocalDOMWindow*); ++ DocumentPictureInPictureEvent(AtomicString const&, DOMWindow*); + DocumentPictureInPictureEvent(AtomicString const&, + const DocumentPictureInPictureEventInit*); + +- LocalDOMWindow* window() const; ++ DOMWindow* window() const; + + void Trace(Visitor*) const override; + + private: +- Member<LocalDOMWindow> document_picture_in_picture_window_; ++ Member<DOMWindow> document_picture_in_picture_window_; + }; + + } // namespace blink +From 8f952f1e9d4fbfcfa23f8970985214f473ebffed Mon Sep 17 00:00:00 2001 +From: Antonio Maiorano <amaiorano@google.com> +Date: Thu, 25 Apr 2024 16:49:11 -0400 +Subject: [PATCH] [Backport] CVE-2024-4368: Use after free in Dawn + +Manual cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5490380: +Fixed crash in loop unroll caused by bug in structurize loop exits (#6548) + +Fixed a bug in `hlsl::RemoveUnstructuredLoopExits` where when a new +exiting block is created from splitting, it was added to the current +loop being processed, when it could also part of an inner loop. Not +adding the new block to inner loops that it's part of makes the inner +loops malformed, and causes crash. + +This fix adds the new block to the inner most loop that it should be +part of. Also adds the `StructurizeLoopExits` option to `loop-unroll` +pass, which was missing before. + +Bug: chromium:333508731 +Change-Id: I7efc21bc61aeb81b4906a600c35272af232710ea +Reviewed-on: https://chromium-review.googlesource.com/c/external/github.com/microsoft/DirectXShaderCompiler/+/5490380 +Reviewed-by: James Price <jrprice@google.com> +Reviewed-by: Ben Clayton <bclayton@chromium.org> +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/560757 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../Scalar/DxilRemoveUnstructuredLoopExits.cpp | 7 ++++++- + .../dxc/lib/Transforms/Scalar/LoopUnrollPass.cpp | 12 ++++++++++++ + .../dawn/third_party/dxc/utils/hct/hctdb.py | 3 ++- + 3 files changed, 20 insertions(+), 2 deletions(-) + +diff --git a/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/DxilRemoveUnstructuredLoopExits.cpp b/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/DxilRemoveUnstructuredLoopExits.cpp +index 1278b1cac0a..a68a4dd7c56 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/DxilRemoveUnstructuredLoopExits.cpp ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/DxilRemoveUnstructuredLoopExits.cpp +@@ -430,7 +430,12 @@ static bool RemoveUnstructuredLoopExitsIteration(BasicBlock *exiting_block, Loop + BasicBlock *new_not_exiting_block = new_exiting_block->splitBasicBlock(new_exiting_block->getFirstNonPHI()); + new_exiting_block->setName("dx.struct_exit.new_exiting"); + new_not_exiting_block->setName(old_name); +- L->addBasicBlockToLoop(new_not_exiting_block, *LI); ++ // Query for new_exiting_block's own loop to add new_not_exiting_block to. ++ // It's possible that new_exiting_block is part of another inner loop ++ // separate from L. If added directly to L, the inner loop(s) will not ++ // contain new_not_exiting_block, making them malformed. ++ Loop *inner_loop_of_exiting_block = LI->getLoopFor(new_exiting_block); ++ inner_loop_of_exiting_block->addBasicBlockToLoop(new_not_exiting_block, *LI); + + // Branch to latch_exit + new_exiting_block->getTerminator()->eraseFromParent(); +diff --git a/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/LoopUnrollPass.cpp b/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/LoopUnrollPass.cpp +index dd520f7e57d..b17a5a4a0bc 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/LoopUnrollPass.cpp ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/lib/Transforms/Scalar/LoopUnrollPass.cpp +@@ -155,6 +155,18 @@ namespace { + bool UserAllowPartial; + bool UserRuntime; + ++ // HLSL Change - begin ++ // Function overrides that resolve options when used for DxOpt ++ void applyOptions(PassOptions O) override { ++ GetPassOptionBool(O, "StructurizeLoopExits", &StructurizeLoopExits, ++ false); ++ } ++ void dumpConfig(raw_ostream &OS) override { ++ LoopPass::dumpConfig(OS); ++ OS << ",StructurizeLoopExits=" << StructurizeLoopExits; ++ } ++ // HLSL Change - end ++ + bool runOnLoop(Loop *L, LPPassManager &LPM) override; + + /// This transformation requires natural loop information & requires that +diff --git a/chromium/third_party/dawn/third_party/dxc/utils/hct/hctdb.py b/chromium/third_party/dawn/third_party/dxc/utils/hct/hctdb.py +index dcb1923fafe..96da518d1ac 100644 +--- src/3rdparty/chromium/third_party/dawn/third_party/dxc/utils/hct/hctdb.py ++++ src/3rdparty/chromium/third_party/dawn/third_party/dxc/utils/hct/hctdb.py +@@ -2270,7 +2270,8 @@ def add_pass(name, type_name, doc, opts): + {'n':'unroll-count', 'i':'UnrollCount', 't':'unsigned', 'd':'Use this unroll count for all loops including those with unroll_count pragma values, for testing purposes'}, + {'n':'unroll-allow-partial', 'i':'UnrollAllowPartial', 't':'bool', 'd':'Allows loops to be partially unrolled until -unroll-threshold loop size is reached.'}, + {'n':'unroll-runtime', 'i':'UnrollRuntime', 't':'bool', 'd':'Unroll loops with run-time trip counts'}, +- {'n':'pragma-unroll-threshold', 'i':'PragmaUnrollThreshold', 't':'unsigned', 'd':'Unrolled size limit for loops with an unroll(full) or unroll_count pragma.'}]) ++ {'n':'pragma-unroll-threshold', 'i':'PragmaUnrollThreshold', 't':'unsigned', 'd':'Unrolled size limit for loops with an unroll(full) or unroll_count pragma.'}, ++ {'n': 'StructurizeLoopExits', 't': 'bool', 'c': 1, 'd': 'Whether the unroller should try to structurize loop exits first.'}]) + add_pass('mldst-motion', 'MergedLoadStoreMotion', 'MergedLoadStoreMotion', []) + add_pass('gvn', 'GVN', 'Global Value Numbering', [ + {'n':'noloads', 't':'bool', 'c':1}, +From 453dc7630d1e8457a97a7cbc70b8990afd5bf5e4 Mon Sep 17 00:00:00 2001 +From: Ken Rockot <rockot@google.com> +Date: Wed, 8 May 2024 15:32:48 +0000 +Subject: [PATCH] [Backport] CVE-2024-4671: Use after free in Visuals + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/chromium/src/+/5523748: +Viz: Tolerate SinkGroup destruction during submit + +Fixed: 339266700 +Change-Id: I8c0ea8c540948016346b00db64fe33260d2446f0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5523748 +Reviewed-by: Kyle Charbonneau <kylechar@chromium.org> +Reviewed-by: Jonathan Ross <jonross@chromium.org> +Commit-Queue: Ken Rockot <rockot@google.com> +Cr-Commit-Position: refs/heads/main@{#1298119} +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/560758 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + .../frame_sinks/frame_sink_bundle_impl.cc | 30 ++++++++++++++----- + 1 file changed, 22 insertions(+), 8 deletions(-) + +diff --git a/chromium/components/viz/service/frame_sinks/frame_sink_bundle_impl.cc b/chromium/components/viz/service/frame_sinks/frame_sink_bundle_impl.cc +index e339c23f9cd..2ae2dfe1a8b 100644 +--- src/3rdparty/chromium/components/viz/service/frame_sinks/frame_sink_bundle_impl.cc ++++ src/3rdparty/chromium/components/viz/service/frame_sinks/frame_sink_bundle_impl.cc +@@ -4,12 +4,15 @@ + + #include "components/viz/service/frame_sinks/frame_sink_bundle_impl.h" + ++#include <map> + #include <utility> + #include <vector> + + #include "base/check.h" + #include "base/functional/bind.h" ++#include "base/memory/raw_ptr.h" + #include "base/memory/raw_ref.h" ++#include "base/memory/weak_ptr.h" + #include "build/build_config.h" + #include "components/viz/service/frame_sinks/compositor_frame_sink_impl.h" + #include "components/viz/service/frame_sinks/frame_sink_manager_impl.h" +@@ -45,6 +48,10 @@ class FrameSinkBundleImpl::SinkGroup : public BeginFrameObserver { + + bool IsEmpty() const { return frame_sinks_.empty(); } + ++ base::WeakPtr<SinkGroup> GetWeakPtr() { ++ return weak_ptr_factory_.GetWeakPtr(); ++ } ++ + void AddFrameSink(uint32_t sink_id) { + frame_sinks_.insert(sink_id); + +@@ -206,6 +213,8 @@ class FrameSinkBundleImpl::SinkGroup : public BeginFrameObserver { + std::set<uint32_t> unacked_submissions_; + + BeginFrameArgs last_used_begin_frame_args_; ++ ++ base::WeakPtrFactory<SinkGroup> weak_ptr_factory_{this}; + }; + + FrameSinkBundleImpl::FrameSinkBundleImpl( +@@ -276,8 +285,9 @@ void FrameSinkBundleImpl::SetNeedsBeginFrame(uint32_t sink_id, + + void FrameSinkBundleImpl::Submit( + std::vector<mojom::BundledFrameSubmissionPtr> submissions) { +- std::set<SinkGroup*> groups; +- std::set<SinkGroup*> affected_groups; ++ std::map<raw_ptr<SinkGroup>, base::WeakPtr<SinkGroup>> groups; ++ std::map<raw_ptr<SinkGroup>, base::WeakPtr<SinkGroup>> affected_groups; ++ + // Count the frame submissions before processing anything. This ensures that + // any frames submitted here will be acked together in a batch, and not acked + // individually in case they happen to ack synchronously within +@@ -288,10 +298,10 @@ void FrameSinkBundleImpl::Submit( + // through to the client without batching. + for (auto& submission : submissions) { + if (auto* group = GetSinkGroup(submission->sink_id)) { +- groups.insert(group); ++ groups.emplace(group, group->GetWeakPtr()); + if (submission->data->is_frame()) { + group->WillSubmitFrame(submission->sink_id); +- affected_groups.insert(group); ++ affected_groups.emplace(group, group->GetWeakPtr()); + } + } + } +@@ -321,12 +331,16 @@ void FrameSinkBundleImpl::Submit( + } + } + +- for (auto* group : groups) { +- group->DidFinishFrame(); ++ for (const auto& [unsafe_group, weak_group] : groups) { ++ if (weak_group) { ++ weak_group->DidFinishFrame(); ++ } + } + +- for (auto* group : affected_groups) { +- group->FlushMessages(); ++ for (const auto& [unsafe_group, weak_group] : affected_groups) { ++ if (weak_group) { ++ weak_group->FlushMessages(); ++ } + } + } + +From 09a04a46a47e57bc423cc37fb95bc66041936940 Mon Sep 17 00:00:00 2001 +From: Shu-yu Guo <syg@chromium.org> +Date: Thu, 9 May 2024 12:03:28 -0700 +Subject: [PATCH] [Backport] Security bug 339458194 + +Cherry-pick of patch originally reviewed on +https://chromium-review.googlesource.com/c/v8/v8/+/5527397 +Only normalize JSObject targets in SetOrCopyDataProperties + +Bug: b/339458194 +Change-Id: I4d6eebdd921971fa28d7c474535d978900ba633f +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5527397 +Commit-Queue: Shu-yu Guo <syg@chromium.org> +Cr-Commit-Position: refs/heads/main@{#93811} +(cherry picked from commit f320600cd1f48ba6bb57c0395823fe0c5e5ec52e) +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/560760 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + chromium/v8/src/objects/js-objects.cc | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/chromium/v8/src/objects/js-objects.cc b/chromium/v8/src/objects/js-objects.cc +index 6094323ee09..9d104492603 100644 +--- src/3rdparty/chromium/v8/src/objects/js-objects.cc ++++ src/3rdparty/chromium/v8/src/objects/js-objects.cc +@@ -429,9 +429,7 @@ Maybe<bool> JSReceiver::SetOrCopyDataProperties( + Nothing<bool>()); + + if (!from->HasFastProperties() && target->HasFastProperties() && +- !IsJSGlobalProxy(*target)) { +- // JSProxy is always in slow-mode. +- DCHECK(!IsJSProxy(*target)); ++ IsJSObject(*target) && !IsJSGlobalProxy(*target)) { + // Convert to slow properties if we're guaranteed to overflow the number of + // descriptors. + int source_length; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_BUILD.gn index f22c3b6676f2..0f0336991402 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/BUILD.gn -@@ -61,7 +61,7 @@ declare_args() { +@@ -62,7 +62,7 @@ declare_args() { qtwebengine_target = "//tools/gn" } @@ -9,25 +9,58 @@ # An official (maximally optimized!) component (optimized for build times) # build doesn't make sense and usually doesn't work. assert(!is_component_build) -@@ -428,7 +428,7 @@ if (!is_qtwebengine){ +@@ -96,7 +96,6 @@ group("gn_all") { + "//codelabs", + "//components:components_unittests", + "//components/gwp_asan:gwp_asan_unittests", +- "//infra/orchestrator:orchestrator_all", + "//net:net_unittests", + "//sandbox:sandbox_unittests", + "//services:services_unittests", +@@ -418,7 +417,7 @@ group("gn_all") { + } + } + +- if (is_linux || is_chromeos || is_android) { ++ if ((is_linux && !is_bsd) || is_chromeos || is_android) { + deps += [ + "//third_party/breakpad:breakpad_unittests", + "//third_party/breakpad:core-2-minidump", +@@ -618,6 +617,15 @@ group("gn_all") { + } + } + ++ if (is_bsd) { ++ deps -= [ ++ "//third_party/breakpad:dump_syms($host_toolchain)", ++ "//third_party/breakpad:microdump_stackwalk($host_toolchain)", ++ "//third_party/breakpad:minidump_dump($host_toolchain)", ++ "//third_party/breakpad:minidump_stackwalk($host_toolchain)", ++ ] ++ } ++ + if (is_mac) { + deps += [ + "//third_party/breakpad:dump_syms", +@@ -667,7 +675,7 @@ group("gn_all") { + host_os == "win") { + deps += [ "//chrome/test/mini_installer:mini_installer_tests" ] + } +- } else if (!is_android && !is_ios && !is_fuchsia) { ++ } else if (!is_android && !is_ios && !is_fuchsia && !is_bsd) { + deps += [ "//third_party/breakpad:symupload($host_toolchain)" ] } - } -- if (is_linux || is_chromeos || is_android) { -+ if ((is_linux && !is_bsd) || is_chromeos || is_android) { - deps += [ - "//third_party/breakpad:breakpad_unittests", - "//third_party/breakpad:core-2-minidump", -@@ -1098,7 +1098,7 @@ if (!is_ios && !is_qtwebengine) { +@@ -1095,7 +1103,7 @@ if (use_blink && !is_cronet_build) { ] } - if (!is_chromeos_ash && !is_ios && !is_fuchsia && !is_android && !is_castos) { + if (!is_chromeos_ash && !is_ios && !is_fuchsia && !is_android && !is_castos && !is_bsd) { - # WPT Webdriver tests runner - # chrome/test/chromedriver/test/run_webdriver_tests.py script_test("webdriver_wpt_tests") { -@@ -1198,7 +1198,7 @@ if (!is_ios && !is_qtwebengine) { + script = "//third_party/blink/tools/run_wpt_tests.py" + args = [ +@@ -1185,7 +1193,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//content/web_test:web_test_common_mojom_js_data_deps" ] } @@ -36,7 +69,7 @@ data_deps += [ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ] } -@@ -1207,7 +1207,7 @@ if (!is_ios && !is_qtwebengine) { +@@ -1194,7 +1202,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ] } @@ -45,7 +78,7 @@ data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ] } -@@ -1675,7 +1675,7 @@ group("chromium_builder_perf") { +@@ -1654,7 +1662,7 @@ group("chromium_builder_perf") { data_deps += [ "//chrome/test:performance_browser_tests" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_BUILD.gn index 9c2a0f9c2332..07baa903ce0a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/base/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/base/BUILD.gn -@@ -189,7 +189,7 @@ buildflag_header("ios_cronet_buildflags") { +@@ -199,7 +199,7 @@ buildflag_header("ios_cronet_buildflags") { flags = [ "CRONET_BUILD=$is_cronet_build" ] } @@ -9,24 +9,32 @@ buildflag_header("message_pump_buildflags") { header = "message_pump_buildflags.h" header_dir = "base/message_loop" -@@ -1009,7 +1009,6 @@ jumbo_component("base") { - "threading/thread_type_delegate.cc", - "threading/thread_type_delegate.h", - ] -- jumbo_excluded_sources += [ "process/memory_linux.cc" ] +@@ -1117,11 +1117,23 @@ jumbo_component("base") { + # Needed for <atomic> if using newer C++ library than sysroot, except if + # building inside the cros_sdk environment - use host_toolchain as a + # more robust check for this. +- if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) && ++ if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos && !is_bsd)) && + host_toolchain != "//build/toolchain/cros:host") { + libs += [ "atomic" ] } - if (is_linux || is_chromeos || is_android || is_fuchsia) { -@@ -1132,7 +1131,7 @@ jumbo_component("base") { - ] - configs += [ "//base/allocator:mac_no_default_new_delete_symbols" ] - } -- if (is_chromeos || is_linux) { -+ if (is_chromeos || (is_linux && !is_bsd)) { - sources += [ - "allocator/partition_allocator/shim/allocator_shim_override_cpp_symbols.h", - "allocator/partition_allocator/shim/allocator_shim_override_glibc_weak_symbols.h", -@@ -1173,7 +1172,7 @@ jumbo_component("base") { ++ # *BSD needs libkvm ++ if (is_bsd) { ++ libs += [ "kvm" ] ++ } ++ ++ if (is_freebsd) { ++ libs += [ ++ "execinfo", ++ "util", ++ ] ++ } ++ + if (use_allocator_shim) { + if (is_apple) { + sources += [ "allocator/early_zone_registration_apple.h" ] +@@ -1141,7 +1153,7 @@ jumbo_component("base") { # Allow more direct string conversions on platforms with native utf8 # strings @@ -35,7 +43,30 @@ defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -2119,6 +2118,43 @@ jumbo_component("base") { +@@ -2091,6 +2103,22 @@ jumbo_component("base") { + ] + } + ++ if (is_openbsd) { ++ sources += [ ++ "process/process_handle_openbsd.cc", ++ "process/process_iterator_openbsd.cc", ++ "process/process_metrics_openbsd.cc", ++ "system/sys_info_openbsd.cc", ++ ] ++ } else if (is_freebsd) { ++ sources += [ ++ "process/process_handle_freebsd.cc", ++ "process/process_iterator_freebsd.cc", ++ "process/process_metrics_freebsd.cc", ++ "system/sys_info_freebsd.cc", ++ ] ++ } ++ + # iOS + if (is_ios) { + sources += [ +@@ -2223,6 +2251,29 @@ jumbo_component("base") { } } @@ -43,43 +74,29 @@ + sources -= [ + "files/file_path_watcher_inotify.cc", + "files/scoped_file_linux.cc", -+ "process/process_linux.cc", + "system/sys_info_linux.cc", + "process/process_iterator_linux.cc", ++ "process/process_linux.cc", + "process/process_metrics_linux.cc", + "process/process_handle_linux.cc", + "profiler/stack_copier_signal.cc", + "profiler/stack_copier_signal.h", + "profiler/thread_delegate_posix.cc", + "profiler/thread_delegate_posix.h", ++ "threading/platform_thread_linux.cc", + ] + sources += [ + "files/file_path_watcher_kqueue.cc", + "files/file_path_watcher_kqueue.h", + "files/file_path_watcher_bsd.cc", ++ "threading/platform_thread_bsd.cc", + ] + } + -+ if (is_openbsd) { -+ sources += [ -+ "process/process_handle_openbsd.cc", -+ "process/process_iterator_openbsd.cc", -+ "process/process_metrics_openbsd.cc", -+ "system/sys_info_openbsd.cc", -+ ] -+ } else if (is_freebsd) { -+ sources += [ -+ "process/process_handle_freebsd.cc", -+ "process/process_iterator_freebsd.cc", -+ "process/process_metrics_freebsd.cc", -+ "system/sys_info_freebsd.cc", -+ ] -+ } -+ - # iOS - if (is_ios) { + if (use_blink) { sources += [ -@@ -2214,7 +2250,7 @@ jumbo_component("base") { + "files/file_path_watcher.cc", +@@ -2233,7 +2284,7 @@ jumbo_component("base") { } if (dep_libevent) { @@ -88,7 +105,7 @@ } if (use_libevent) { -@@ -3482,7 +3518,7 @@ test("base_unittests") { +@@ -3607,7 +3658,7 @@ test("base_unittests") { ] } @@ -97,7 +114,7 @@ sources += [ "debug/proc_maps_linux_unittest.cc", "files/scoped_file_linux_unittest.cc", -@@ -3531,7 +3567,7 @@ test("base_unittests") { +@@ -3628,7 +3679,7 @@ test("base_unittests") { "posix/file_descriptor_shuffle_unittest.cc", "posix/unix_domain_socket_unittest.cc", ] @@ -106,7 +123,7 @@ sources += [ "profiler/stack_base_address_posix_unittest.cc", "profiler/stack_copier_signal_unittest.cc", -@@ -3542,7 +3578,7 @@ test("base_unittests") { +@@ -3639,7 +3690,7 @@ test("base_unittests") { # Allow more direct string conversions on platforms with native utf8 # strings @@ -115,7 +132,7 @@ defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -3763,7 +3799,7 @@ test("base_unittests") { +@@ -3895,7 +3946,7 @@ test("base_unittests") { } } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_dispatcher_tls.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_dispatcher_tls.h index e0f121f10163..e31181bb5508 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_dispatcher_tls.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_dispatcher_tls.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/dispatcher/tls.h.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/base/allocator/dispatcher/tls.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/base/allocator/dispatcher/tls.h -@@ -51,7 +51,7 @@ struct BASE_EXPORT MMapAllocator { +@@ -50,7 +50,7 @@ struct BASE_EXPORT MMapAllocator { partition_alloc::PartitionPageSize(); #elif BUILDFLAG(IS_APPLE) constexpr static size_t AllocationChunkSize = 16384; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_BUILD.gn new file mode 100644 index 000000000000..16dc80d6f2e1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/base/allocator/partition_allocator/BUILD.gn.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/base/allocator/partition_allocator/BUILD.gn +@@ -562,7 +562,7 @@ source_set("allocator_shim") { + ] + configs += [ ":mac_no_default_new_delete_symbols" ] + } +- if (is_chromeos || is_linux) { ++ if ((is_chromeos || is_linux) && !is_bsd) { + sources += [ + "shim/allocator_shim_override_cpp_symbols.h", + "shim/allocator_shim_override_glibc_weak_symbols.h", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_address__space__randomization.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_address__space__randomization.h index 0b96554c9d5b..c48328b2fae5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_address__space__randomization.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_address__space__randomization.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/address_space_randomization.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/address_space_randomization.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/address_space_randomization.h @@ -38,7 +38,7 @@ AslrMask(uintptr_t bits) { #if defined(ARCH_CPU_64_BITS) - #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) -+ #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) && !defined(OS_BSD) ++ #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) && !BUILDFLAG(IS_BSD) // We shouldn't allocate system pages at all for sanitizer builds. However, // we do, and if random hint addresses interfere with address ranges diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.h index 8c4250d7d91e..3eb4f28da567 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator.h -@@ -231,7 +231,7 @@ void DecommitAndZeroSystemPages(void* address, size_t +@@ -258,7 +258,7 @@ void DecommitAndZeroSystemPages(void* address, // recommitted. Do not assume that this will not change over time. constexpr PA_COMPONENT_EXPORT( PARTITION_ALLOC) bool DecommittedMemoryIsAlwaysZeroed() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__constants.h index 925000cf8eef..272faad2da2b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__constants.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__constants.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_constants.h.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_constants.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_constants.h @@ -25,7 +25,7 @@ // elimination. @@ -9,7 +9,7 @@ // This should work for all POSIX (if needed), but currently all other // supported OS/architecture combinations use either hard-coded values // (such as x86) or have means to determine these values without needing -@@ -81,7 +81,7 @@ PageAllocationGranularityShift() { +@@ -92,7 +92,7 @@ PageAllocationGranularityShift() { return 14; // 16kB #elif BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS) return static_cast<size_t>(vm_page_shift); @@ -18,7 +18,7 @@ // arm64 supports 4kb (shift = 12), 16kb (shift = 14), and 64kb (shift = 16) // page sizes. Retrieve from or initialize cache. size_t shift = page_characteristics.shift.load(std::memory_order_relaxed); -@@ -102,7 +102,7 @@ PageAllocationGranularity() { +@@ -113,7 +113,7 @@ PageAllocationGranularity() { // This is literally equivalent to |1 << PageAllocationGranularityShift()| // below, but was separated out for IS_APPLE to avoid << on a non-constexpr. return vm_page_size; @@ -27,8 +27,8 @@ // arm64 supports 4kb, 16kb, and 64kb page sizes. Retrieve from or // initialize cache. size_t size = page_characteristics.size.load(std::memory_order_relaxed); -@@ -141,7 +141,7 @@ SystemPageShift() { - PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR PA_ALWAYS_INLINE size_t +@@ -152,7 +152,7 @@ SystemPageShift() { + PA_ALWAYS_INLINE PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR size_t SystemPageSize() { #if (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS)) || \ - (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h index 734969897517..b0e1fabca7e2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h -@@ -380,8 +380,12 @@ bool TryRecommitSystemPagesInternal( +@@ -403,8 +403,12 @@ bool TryRecommitSystemPagesInternal( void DiscardSystemPagesInternal(uintptr_t address, size_t length) { void* ptr = reinterpret_cast<void*>(address); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__address__space.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__address__space.cc index b16f589d70fe..9171c87c625d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__address__space.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__address__space.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_address_space.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_address_space.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_address_space.cc -@@ -417,7 +417,7 @@ void PartitionAddressSpace::UninitPkeyPoolForTesting() +@@ -420,7 +420,7 @@ void PartitionAddressSpace::UninitThreadIsolatedPoolFo } #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc.gni index e5856f005242..7cf907ee908d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc.gni @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc.gni.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc.gni.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc.gni -@@ -276,7 +276,7 @@ assert(!use_asan_backup_ref_ptr || use_hookable_raw_pt - "AsanBackupRefPtr requires RawPtrHookableImpl") - - declare_args() { -- enable_pkeys = is_linux && target_cpu == "x64" -+ enable_pkeys = (is_linux && !is_bsd) && target_cpu == "x64" +@@ -328,7 +328,7 @@ declare_args() { + # pkeys support is explicitly disabled in all Cronet builds, as some test + # dependencies that use partition_allocator are compiled in AOSP against a + # version of glibc that does not include pkeys syscall numbers. +- enable_pkeys = is_linux && target_cpu == "x64" && !is_cronet_build ++ enable_pkeys = (is_linux && !is_bsd) && target_cpu == "x64" && !is_cronet_build } assert(!enable_pkeys || (is_linux && target_cpu == "x64"), "Pkeys are only supported on x64 linux") diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_compiler__specific.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_compiler__specific.h new file mode 100644 index 000000000000..2577bd6e1d7a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_compiler__specific.h @@ -0,0 +1,32 @@ +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h +@@ -24,9 +24,9 @@ + // Annotate a function indicating it should not be inlined. + // Use like: + // NOINLINE void DoStuff() { ... } +-#if defined(__clang__) && PA_HAS_ATTRIBUTE(noinline) ++#if defined(__clang__) && (__clang_major__ >= 15) && PA_HAS_ATTRIBUTE(noinline) + #define PA_NOINLINE [[clang::noinline]] +-#elif defined(COMPILER_GCC) && PA_HAS_ATTRIBUTE(noinline) ++#elif (defined(COMPILER_GCC) || defined(__clang__)) && PA_HAS_ATTRIBUTE(noinline) + #define PA_NOINLINE __attribute__((noinline)) + #elif defined(COMPILER_MSVC) + #define PA_NOINLINE __declspec(noinline) +@@ -34,7 +34,7 @@ + #define PA_NOINLINE + #endif + +-#if defined(__clang__) && defined(NDEBUG) && PA_HAS_ATTRIBUTE(always_inline) ++#if defined(__clang__) && (__clang_major__ >= 15) && defined(NDEBUG) && PA_HAS_ATTRIBUTE(always_inline) + #define PA_ALWAYS_INLINE [[clang::always_inline]] inline + #elif defined(COMPILER_GCC) && defined(NDEBUG) && \ + PA_HAS_ATTRIBUTE(always_inline) +@@ -53,7 +53,7 @@ + // prevent code folding, see NO_CODE_FOLDING() in base/debug/alias.h. + // Use like: + // void NOT_TAIL_CALLED FooBar(); +-#if defined(__clang__) && PA_HAS_ATTRIBUTE(not_tail_called) ++#if defined(__clang__) && (__clang_major__ >= 15) && PA_HAS_ATTRIBUTE(not_tail_called) + #define PA_NOT_TAIL_CALLED [[clang::not_tail_called]] + #else + #define PA_NOT_TAIL_CALLED diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_debug_stack__trace__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_debug_stack__trace__posix.cc new file mode 100644 index 000000000000..4f82b1eff27f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_debug_stack__trace__posix.cc @@ -0,0 +1,34 @@ +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/debug/stack_trace_posix.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/debug/stack_trace_posix.cc +@@ -12,11 +12,11 @@ + #include <string.h> + #include <unistd.h> + +-#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_APPLE) ++#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) + #include <link.h> // For ElfW() macro. + #endif + +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + #define HAVE_DLADDR + #include <dlfcn.h> + #endif +@@ -25,7 +25,7 @@ namespace partition_alloc::internal::base::debug { + + namespace { + +-#if !BUILDFLAG(IS_APPLE) ++#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) + + constexpr size_t kBufferSize = 4096u; + +@@ -359,7 +359,7 @@ void PrintStackTraceInternal(void* const* trace, size_ + } + #endif // !BUILDFLAG(IS_APPLE) + +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + // Since /proc/self/maps is not available, use dladdr() to obtain module + // names and offsets inside the modules from the given addresses. + void PrintStackTraceInternal(void* const* trace, size_t size) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_rand__util__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_rand__util__posix.cc index 3862972fb3c6..1c070033462d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_rand__util__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__base_rand__util__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/rand_util_posix.cc.orig 2022-07-22 17:30:31 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/rand_util_posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_base/rand_util_posix.cc -@@ -86,6 +86,10 @@ void RandBytes(void* output, size_t output_length) { +@@ -90,6 +90,10 @@ void RandBytes(void* output, size_t output_length) { if (getentropy(output, output_length) == 0) { return; } @@ -9,5 +9,5 @@ + return; + } #endif - - // If the OS-specific mechanisms didn't work, fall through to reading from + // If getrandom(2) above returned with an error and the /dev/urandom fallback + // took place on Linux/ChromeOS bots, they would fail with a CHECK in diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__config.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__config.h index fd5c07ae23ed..cd7f463a4040 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__config.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__config.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_config.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_config.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_config.h -@@ -104,7 +104,7 @@ static_assert(sizeof(void*) != 8, ""); +@@ -94,7 +94,7 @@ static_assert(sizeof(void*) != 8, ""); // POSIX is not only UNIX, e.g. macOS and other OSes. We do use Linux-specific // features such as futex(2). #define PA_CONFIG_HAS_LINUX_KERNEL() \ @@ -9,7 +9,7 @@ // On some platforms, we implement locking by spinning in userspace, then going // into the kernel only if there is contention. This requires platform support, -@@ -251,7 +251,7 @@ constexpr bool kUseLazyCommit = false; +@@ -237,7 +237,7 @@ constexpr bool kUseLazyCommit = false; // On these platforms, lock all the partitions before fork(), and unlock after. // This may be required on more platforms in the future. #define PA_CONFIG_HAS_ATFORK_HANDLER() \ @@ -18,7 +18,7 @@ // PartitionAlloc uses PartitionRootEnumerator to acquire all // PartitionRoots at BeforeFork and to release at AfterFork. -@@ -296,7 +296,7 @@ constexpr bool kUseLazyCommit = false; +@@ -284,7 +284,7 @@ constexpr bool kUseLazyCommit = false; // Also enabled on ARM64 macOS, as the 16kiB pages on this platform lead to // larger slot spans. #define PA_CONFIG_PREFER_SMALLER_SLOT_SPANS() \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__constants.h index 7a6ee0bf9191..397135e90aa3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__constants.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__constants.h @@ -1,20 +1,21 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h -@@ -92,7 +92,7 @@ PartitionPageShift() { +@@ -95,7 +95,7 @@ PartitionPageShift() { return 18; // 256 KiB } #elif (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS)) || \ - (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) + ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64)) - PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR PA_ALWAYS_INLINE size_t + PA_ALWAYS_INLINE PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR size_t PartitionPageShift() { return PageAllocationGranularityShift() + 2; -@@ -296,7 +296,7 @@ constexpr size_t kNumPools = kMaxPoolHandle - 1; - // When pointer compression is enabled, we cannot use large pools (at most +@@ -297,7 +297,8 @@ constexpr size_t kNumPools = kMaxPoolHandle - 1; // 8GB for each of the glued pools). #if BUILDFLAG(HAS_64_BIT_POINTERS) --#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || PA_CONFIG(POINTER_COMPRESSION) -+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || PA_CONFIG(POINTER_COMPRESSION) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || \ +- BUILDFLAG(ENABLE_POINTER_COMPRESSION) ++ BUILDFLAG(ENABLE_POINTER_COMPRESSION) || \ ++ BUILDFLAG(IS_BSD) constexpr size_t kPoolMaxSize = 8 * kGiB; #else constexpr size_t kPoolMaxSize = 16 * kGiB; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__forward.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__forward.h index a00532114b5f..c3fcc5774afb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__forward.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__alloc__forward.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_forward.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_forward.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_forward.h -@@ -27,9 +27,13 @@ namespace internal { +@@ -28,9 +28,13 @@ namespace internal { // the second one 16. We could technically return something different for // malloc() and operator new(), but this would complicate things, and most of // our allocations are presumably coming from operator new() anyway. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page.h deleted file mode 100644 index 7ec258bfe64e..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page.h +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_page.h.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_page.h -@@ -143,7 +143,7 @@ struct SlotSpanMetadata { - // PartitionPageSize() is 4 times the OS page size. - static constexpr size_t kMaxSlotsPerSlotSpan = - 4 * (1 << 14) / kSmallestBucket; --#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) - // System page size can be 4, 16, or 64 kiB on Linux on arm64. 64 kiB is - // currently (kMaxSlotsPerSlotSpanBits == 13) not supported by the code, - // so we use the 16 kiB maximum (64 kiB will crash). diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page__constants.h new file mode 100644 index 000000000000..33c47d3245bc --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__page__constants.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_page_constants.h.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_page_constants.h +@@ -16,7 +16,7 @@ namespace partition_alloc::internal { + // (1 << 12 or 1 << 14), as checked in PartitionRoot::Init(). And + // PartitionPageSize() is 4 times the OS page size. + static constexpr size_t kMaxSlotsPerSlotSpan = 4 * (1 << 14) / kSmallestBucket; +-#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) ++#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) + // System page size can be 4, 16, or 64 kiB on Linux on arm64. 64 kiB is + // currently (kMaxSlotsPerSlotSpanBits == 13) not supported by the code, + // so we use the 16 kiB maximum (64 kiB will crash). diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__root.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__root.cc index 6f8d525cdbcc..b925619dd52c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__root.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_partition__root.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/partition_root.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/partition_root.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/partition_root.cc -@@ -42,7 +42,7 @@ +@@ -47,7 +47,7 @@ #include "wow64apiset.h" #endif @@ -9,7 +9,7 @@ #include <pthread.h> #endif -@@ -245,7 +245,7 @@ void PartitionAllocMallocInitOnce() { +@@ -281,7 +281,7 @@ void PartitionAllocMallocInitOnce() { return; } @@ -18,7 +18,7 @@ // When fork() is called, only the current thread continues to execute in the // child process. If the lock is held, but *not* by this thread when fork() is // called, we have a deadlock. -@@ -339,7 +339,7 @@ static size_t PartitionPurgeSlotSpan( +@@ -379,7 +379,7 @@ static size_t PartitionPurgeSlotSpan(PartitionRoot* ro constexpr size_t kMaxSlotCount = (PartitionPageSize() * kMaxPartitionPagesPerRegularSlotSpan) / MinPurgeableSlotSize(); @@ -27,7 +27,7 @@ // It's better for slot_usage to be stack-allocated and fixed-size, which // demands that its size be constexpr. On IS_APPLE and Linux on arm64, // PartitionPageSize() is always SystemPageSize() << 2, so regardless of -@@ -811,7 +811,7 @@ void PartitionRoot<thread_safe>::Init(PartitionOptions +@@ -948,7 +948,7 @@ void PartitionRoot::Init(PartitionOptions opts) { // apple OSes. PA_CHECK((internal::SystemPageSize() == (size_t{1} << 12)) || (internal::SystemPageSize() == (size_t{1} << 14))); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_spinning__mutex.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_spinning__mutex.cc index 8f34cabed102..06cc5fa96143 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_spinning__mutex.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_spinning__mutex.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/spinning_mutex.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/spinning_mutex.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/spinning_mutex.cc @@ -18,7 +18,16 @@ @@ -17,7 +17,7 @@ #include <sys/syscall.h> #include <unistd.h> #endif // PA_CONFIG(HAS_LINUX_KERNEL) -@@ -107,8 +116,16 @@ void SpinningMutex::FutexWait() { +@@ -108,8 +117,16 @@ void SpinningMutex::FutexWait() { // |kLockedContended| anymore. Note that even without spurious wakeups, the // value of |state_| is not guaranteed when this returns, as another thread // may get the lock before we get to run. @@ -34,7 +34,7 @@ if (err) { // These are programming error, check them. -@@ -120,8 +137,16 @@ void SpinningMutex::FutexWait() { +@@ -121,8 +138,16 @@ void SpinningMutex::FutexWait() { void SpinningMutex::FutexWake() { int saved_errno = errno; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_starscan_stack_stack.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_starscan_stack_stack.cc index 1f24d9074f2f..cfa0d433b7e8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_starscan_stack_stack.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_starscan_stack_stack.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/base/allocator/partition_allocator/starscan/stack/stack.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/allocator/partition_allocator/starscan/stack/stack.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/allocator/partition_allocator/starscan/stack/stack.cc @@ -18,6 +18,10 @@ #include <pthread.h> #endif -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) +#include <pthread_np.h> +#endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc index 49bcb7b5ac66..f5180faeb6f1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/base/base_switches.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/base_switches.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/base_switches.cc -@@ -170,7 +170,7 @@ const char kForceFieldTrialParams[] = "force-fieldtria - +@@ -180,7 +180,7 @@ const char kPackageVersionName[] = "package-version-na + const char kPackageVersionCode[] = "package-version-code"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h index 21d5313d8ecf..e3ecb7515a0c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/base/base_switches.h.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/base_switches.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/base_switches.h -@@ -60,7 +60,7 @@ extern const char kEnableIdleTracing[]; - extern const char kForceFieldTrialParams[]; +@@ -62,7 +62,7 @@ extern const char kPackageVersionName[]; + extern const char kPackageVersionCode[]; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_compiler__specific.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_compiler__specific.h new file mode 100644 index 000000000000..ad3ed85ba102 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_compiler__specific.h @@ -0,0 +1,35 @@ +--- src/3rdparty/chromium/base/compiler_specific.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/base/compiler_specific.h +@@ -41,9 +41,9 @@ + // Annotate a function indicating it should not be inlined. + // Use like: + // NOINLINE void DoStuff() { ... } +-#if defined(__clang__) && HAS_ATTRIBUTE(noinline) ++#if defined(__clang__) && (__clang_major__ >= 15) && HAS_ATTRIBUTE(noinline) + #define NOINLINE [[clang::noinline]] +-#elif defined(COMPILER_GCC) && HAS_ATTRIBUTE(noinline) ++#elif (defined(COMPILER_GCC) || defined(__clang__)) && HAS_ATTRIBUTE(noinline) + #define NOINLINE __attribute__((noinline)) + #elif defined(COMPILER_MSVC) + #define NOINLINE __declspec(noinline) +@@ -51,9 +51,9 @@ + #define NOINLINE + #endif + +-#if defined(__clang__) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) ++#if defined(__clang__) && (__clang_major__ >= 15) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) + #define ALWAYS_INLINE [[clang::always_inline]] inline +-#elif defined(COMPILER_GCC) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) ++#elif (defined(COMPILER_GCC) || defined(__clang__)) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) + #define ALWAYS_INLINE inline __attribute__((__always_inline__)) + #elif defined(COMPILER_MSVC) && defined(NDEBUG) + #define ALWAYS_INLINE __forceinline +@@ -69,7 +69,7 @@ + // prevent code folding, see NO_CODE_FOLDING() in base/debug/alias.h. + // Use like: + // NOT_TAIL_CALLED void FooBar(); +-#if defined(__clang__) && HAS_ATTRIBUTE(not_tail_called) ++#if defined(__clang__) && (__clang_major__ >= 15) && HAS_ATTRIBUTE(not_tail_called) + #define NOT_TAIL_CALLED [[clang::not_tail_called]] + #else + #define NOT_TAIL_CALLED diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc index d4a4722204fd..babce6ea3dbf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/base/debug/elf_reader.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/debug/elf_reader.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/debug/elf_reader.cc @@ -78,6 +78,7 @@ size_t ReadElfBuildId(const void* elf_mapped_base, bool found = false; while (current_section < section_end) { current_note = reinterpret_cast<const Nhdr*>(current_section); -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) if (current_note->n_type == NT_GNU_BUILD_ID) { StringPiece note_name(current_section + sizeof(Nhdr), current_note->n_namesz); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace__posix.cc index c4a64e564a43..5d07bea8c52f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace__posix.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/debug/stack_trace_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/debug/stack_trace_posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/debug/stack_trace_posix.cc @@ -41,7 +41,7 @@ // execinfo.h and backtrace(3) are really only present in glibc and in macOS @@ -18,7 +18,53 @@ #include "base/debug/proc_maps_linux.h" #endif -@@ -799,6 +799,9 @@ class SandboxSymbolizeHelper { +@@ -300,7 +300,7 @@ void PrintToStderr(const char* output) { + std::ignore = HANDLE_EINTR(write(STDERR_FILENO, output, strlen(output))); + } + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + void AlarmSignalHandler(int signal, siginfo_t* info, void* void_context) { + // We have seen rare cases on AMD linux where the default signal handler + // either does not run or a thread (Probably an AMD driver thread) prevents +@@ -317,7 +317,11 @@ void AlarmSignalHandler(int signal, siginfo_t* info, v + "Warning: Default signal handler failed to terminate process.\n"); + PrintToStderr("Calling exit_group() directly to prevent timeout.\n"); + // See: https://man7.org/linux/man-pages/man2/exit_group.2.html ++#if BUILDFLAG(IS_BSD) ++ _exit(EXIT_FAILURE); ++#else + syscall(SYS_exit_group, EXIT_FAILURE); ++#endif + } + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || + // BUILDFLAG(IS_CHROMEOS) +@@ -534,7 +538,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf + _exit(EXIT_FAILURE); + } + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Set an alarm to trigger in case the default handler does not terminate + // the process. See 'AlarmSignalHandler' for more details. + struct sigaction action; +@@ -559,6 +563,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf + // signals that do not re-raise autonomously), such as signals delivered via + // kill() and asynchronous hardware faults such as SEGV_MTEAERR, which would + // otherwise be lost when re-raising the signal via raise(). ++#if !BUILDFLAG(IS_BSD) + long retval = syscall(SYS_rt_tgsigqueueinfo, getpid(), syscall(SYS_gettid), + info->si_signo, info); + if (retval == 0) { +@@ -573,6 +578,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf + if (errno != EPERM) { + _exit(EXIT_FAILURE); + } ++#endif + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || + // BUILDFLAG(IS_CHROMEOS) + +@@ -821,6 +827,9 @@ class SandboxSymbolizeHelper { // for the modules that are loaded in the current process. // Returns true on success. bool CacheMemoryRegions() { @@ -28,7 +74,7 @@ // Reads /proc/self/maps. std::string contents; if (!ReadProcMaps(&contents)) { -@@ -816,6 +819,7 @@ class SandboxSymbolizeHelper { +@@ -838,6 +847,7 @@ class SandboxSymbolizeHelper { is_initialized_ = true; return true; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_files_file__util__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_files_file__util__posix.cc index f483c647acfb..7f2c78bd85af 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_files_file__util__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_files_file__util__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/files/file_util_posix.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/files/file_util_posix.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/base/files/file_util_posix.cc -@@ -700,32 +700,34 @@ bool CreateDirectoryAndGetError(const FilePath& full_p +@@ -756,32 +756,34 @@ bool CreateDirectoryAndGetError(const FilePath& full_p File::Error* error) { ScopedBlockingCall scoped_blocking_call( FROM_HERE, BlockingType::MAY_BLOCK); // For call to mkdir(). diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc index a38478c3c072..5451c26e763e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/i18n/icu_util.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/base/i18n/icu_util.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/base/i18n/icu_util.cc @@ -51,7 +51,7 @@ #include "third_party/icu/source/common/unicode/unistr.h" @@ -9,7 +9,7 @@ BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) #include "third_party/icu/source/i18n/unicode/timezone.h" #endif -@@ -344,7 +344,7 @@ void InitializeIcuTimeZone() { +@@ -349,7 +349,7 @@ void InitializeIcuTimeZone() { FuchsiaIntlProfileWatcher::GetPrimaryTimeZoneIdForIcuInitialization(); icu::TimeZone::adoptDefault( icu::TimeZone::createTimeZone(icu::UnicodeString::fromUTF8(zone_id))); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_linux__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_linux__util.cc index 5d034a4c4d1f..c5250c813ac6 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_linux__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_linux__util.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/linux_util.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/linux_util.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/linux_util.cc @@ -15,6 +15,7 @@ @@ -12,7 +12,7 @@ } bool GetThreadsForProcess(pid_t pid, std::vector<pid_t>* tids) { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + return false; +#else // 25 > strlen("/proc//task") + strlen(std::to_string(INT_MAX)) + 1 = 22 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_madv__free__discardable__memory__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_madv__free__discardable__memory__posix.cc index 47133357042d..65ff5cfba392 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_madv__free__discardable__memory__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_madv__free__discardable__memory__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/memory/madv_free_discardable_memory_posix.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/base/memory/madv_free_discardable_memory_posix.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/base/memory/madv_free_discardable_memory_posix.cc -@@ -299,6 +299,10 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons +@@ -306,6 +306,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT bool MadvFreeDiscardableMemoryPosix::IsResident() const { DFAKE_SCOPED_RECURSIVE_LOCK(thread_collision_warner_); @@ -11,7 +11,7 @@ #if BUILDFLAG(IS_APPLE) std::vector<char> vec(allocated_pages_); #else -@@ -314,6 +318,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons +@@ -321,6 +325,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons return false; } return true; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h index bdc1f9a4b417..30ea9baa2090 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/memory/platform_shared_memory_region.h.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/base/memory/platform_shared_memory_region.h.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/base/memory/platform_shared_memory_region.h @@ -16,7 +16,7 @@ @@ -18,7 +18,7 @@ // Structure to limit access to executable region creation. struct ExecutableRegion { private: -@@ -211,7 +211,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { +@@ -215,7 +215,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { CheckPlatformHandlePermissionsCorrespondToMode); static PlatformSharedMemoryRegion Create(Mode mode, size_t size diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_launch.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_launch.h index 0d027a49424e..a744c9a96f61 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_launch.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_launch.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/process/launch.h.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/base/process/launch.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/base/process/launch.h -@@ -198,7 +198,7 @@ struct BASE_EXPORT LaunchOptions { +@@ -200,7 +200,7 @@ struct BASE_EXPORT LaunchOptions { bool clear_environment = false; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc index d78f3991d67a..95df631a5545 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/process/process_metrics.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/process/process_metrics.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/base/process/process_metrics.cc @@ -17,7 +17,7 @@ namespace base { namespace { @@ -27,7 +27,7 @@ Value::Dict meminfo = memory_info_.ToDict(); meminfo.Merge(vmstat_info_.ToDict()); res.Set("meminfo", std::move(meminfo)); -@@ -98,7 +98,6 @@ std::unique_ptr<ProcessMetrics> ProcessMetrics::Create +@@ -100,7 +100,6 @@ std::unique_ptr<ProcessMetrics> ProcessMetrics::Create #endif // !BUILDFLAG(IS_MAC) } @@ -35,7 +35,7 @@ double ProcessMetrics::GetPlatformIndependentCPUUsage( TimeDelta cumulative_cpu) { TimeTicks time = TimeTicks::Now(); -@@ -124,7 +123,6 @@ double ProcessMetrics::GetPlatformIndependentCPUUsage( +@@ -126,7 +125,6 @@ double ProcessMetrics::GetPlatformIndependentCPUUsage( double ProcessMetrics::GetPlatformIndependentCPUUsage() { return GetPlatformIndependentCPUUsage(GetCumulativeCPUUsage()); } @@ -43,7 +43,7 @@ #if BUILDFLAG(IS_WIN) double ProcessMetrics::GetPreciseCPUUsage(TimeDelta cumulative_cpu) { -@@ -155,7 +153,7 @@ double ProcessMetrics::GetPreciseCPUUsage() { +@@ -157,7 +155,7 @@ double ProcessMetrics::GetPreciseCPUUsage() { #endif // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h index 90733ad68e8c..d66d3ffb3d6a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/process/process_metrics.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/process/process_metrics.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/process/process_metrics.h @@ -37,7 +37,7 @@ #endif @@ -54,7 +54,7 @@ int CalculateIdleWakeupsPerSecond(uint64_t absolute_idle_wakeups); #endif #if BUILDFLAG(IS_APPLE) -@@ -263,9 +263,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -266,9 +266,7 @@ class BASE_EXPORT ProcessMetrics { // Used to store the previous times and CPU usage counts so we can // compute the CPU usage between calls. TimeTicks last_cpu_time_; @@ -64,7 +64,7 @@ #if BUILDFLAG(IS_WIN) TimeTicks last_cpu_time_for_precise_cpu_usage_; -@@ -273,7 +271,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -276,7 +274,7 @@ class BASE_EXPORT ProcessMetrics { #endif #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__openbsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__openbsd.cc index cd614ca55016..85a72669036d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__openbsd.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__openbsd.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/process/process_metrics_openbsd.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/process/process_metrics_openbsd.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/process/process_metrics_openbsd.cc @@ -6,14 +6,23 @@ @@ -83,13 +83,14 @@ size_t GetSystemCommitCharge() { int mib[] = { CTL_VM, VM_METER }; int pagesize; -@@ -84,6 +67,129 @@ size_t GetSystemCommitCharge() { +@@ -84,6 +67,133 @@ size_t GetSystemCommitCharge() { pagesize = getpagesize(); return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize); +} + +int ProcessMetrics::GetOpenFdCount() const { ++#if 0 + struct kinfo_file *files; + kvm_t *kd = NULL; + int total_count = 0; @@ -108,10 +109,13 @@ + +out: + return total_count; ++#endif ++ return getdtablecount(); +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { -+ return GetMaxFds(); ++ return getdtablesize(); ++// return GetMaxFds(); +} + +uint64_t ProcessMetrics::GetVmSwapBytes() const { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__posix.cc index 8ef51d87848b..f820e17841e2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/process/process_metrics_posix.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/base/process/process_metrics_posix.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/base/process/process_metrics_posix.cc -@@ -20,6 +20,8 @@ +@@ -21,6 +21,8 @@ #if BUILDFLAG(IS_APPLE) #include <malloc/malloc.h> @@ -9,7 +9,7 @@ #else #include <malloc.h> #endif -@@ -135,7 +137,7 @@ size_t ProcessMetrics::GetMallocUsage() { +@@ -134,7 +136,7 @@ size_t ProcessMetrics::GetMallocUsage() { return stats.size_in_use; #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) return GetMallocUsageMallinfo(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc index c24ad3485633..f7da874a37ff 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/base/process/process_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/process/process_posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/process/process_posix.cc @@ -23,10 +23,15 @@ #include "base/trace_event/base_tracing.h" @@ -9,7 +9,7 @@ #include <sys/event.h> #endif -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) +#include <sys/types.h> +#include <sys/sysctl.h> +#endif @@ -35,21 +35,21 @@ // On Mac we can wait on non child processes. return WaitForSingleNonChildProcess(handle, timeout); #else -@@ -387,7 +392,55 @@ void Process::Exited(int exit_code) const { +@@ -387,7 +392,56 @@ void Process::Exited(int exit_code) const { - int Process::GetPriority() const { + int Process::GetOSPriority() const { DCHECK(IsValid()); +// avoid pledge(2) violation -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + return 0; +#else return getpriority(PRIO_PROCESS, static_cast<id_t>(process_)); +#endif -+} + } + +Time Process::CreationTime() const { +// avoid ps pledge in the network process -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid(), + sizeof(struct kinfo_proc), 0 }; + struct kinfo_proc *info = nullptr; @@ -57,7 +57,7 @@ +#endif + Time ct = Time(); + -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) + if (sysctl(mib, std::size(mib), NULL, &info_size, NULL, 0) < 0) + goto out; + @@ -77,17 +77,18 @@ + return ct; +} + -+bool Process::IsProcessBackgrounded() const { -+ return false; ++#if BUILDFLAG(IS_BSD) ++Process::Priority Process::GetPriority() const { ++ return Priority::kUserBlocking; +} -+ -+bool Process::SetProcessBackgrounded(bool value) { ++ ++bool Process::SetPriority(Priority priority) { + return false; +} -+ -+// static -+bool Process::CanBackgroundProcesses() { ++ ++bool Process::CanSetPriority() { + return false; - } ++} ++#endif } // namespace base diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_module__cache.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_module__cache.cc index 58412582057f..b6c3709aa44a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_module__cache.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_module__cache.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/profiler/module_cache.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/profiler/module_cache.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/profiler/module_cache.cc -@@ -37,7 +37,7 @@ std::string TransformModuleIDToSymbolServerFormat(Stri +@@ -52,7 +52,7 @@ std::string TransformModuleIDToSymbolServerFormat(Stri // Android and Linux Chrome builds use the "breakpad" format to index their // build id, so we transform the build id for these platforms. All other // platforms keep their symbols indexed by the original build ID. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_stack__sampling__profiler__test__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_stack__sampling__profiler__test__util.cc index e4ed87ae163a..aefe2a163bd5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_stack__sampling__profiler__test__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_profiler_stack__sampling__profiler__test__util.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/profiler/stack_sampling_profiler_test_util.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/base/profiler/stack_sampling_profiler_test_util.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/base/profiler/stack_sampling_profiler_test_util.cc -@@ -33,7 +33,7 @@ +@@ -36,7 +36,7 @@ // Fortunately, it provides _alloca, which functions identically. #include <malloc.h> #define alloca _alloca diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_rand__util.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_rand__util.h index df6405773e53..16eba4061a14 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_rand__util.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_rand__util.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/rand_util.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/base/rand_util.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/base/rand_util.h -@@ -117,7 +117,7 @@ void RandomShuffle(Itr first, Itr last) { +@@ -121,7 +121,7 @@ void RandomShuffle(Itr first, Itr last) { std::shuffle(first, last, RandomBitGenerator()); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.cc index 5ae54d0bdd4e..db411e4749cd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/system/sys_info.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/system/sys_info.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/system/sys_info.cc -@@ -106,7 +106,7 @@ std::string SysInfo::HardwareModelName() { +@@ -166,7 +166,7 @@ std::string SysInfo::HardwareModelName() { #endif void SysInfo::GetHardwareInfo(base::OnceCallback<void(HardwareInfo)> callback) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h index 226b5a530701..b69d60cc2735 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/base/system/sys_info.h.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/base/system/sys_info.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/base/system/sys_info.h -@@ -246,6 +246,8 @@ class BASE_EXPORT SysInfo { - static void SetIsCpuSecurityMitigationsEnabled(bool is_enabled); +@@ -266,6 +266,8 @@ class BASE_EXPORT SysInfo { + static void ResetCpuSecurityMitigationsEnabledForTesting(); #endif + static uint64_t MaxSharedMemorySize(); + private: + friend class test::ScopedAmountOfPhysicalMemoryOverride; FRIEND_TEST_ALL_PREFIXES(SysInfoTest, AmountOfAvailablePhysicalMemory); - FRIEND_TEST_ALL_PREFIXES(debug::SystemMetricsTest, ParseMeminfo); -@@ -257,7 +259,7 @@ class BASE_EXPORT SysInfo { +@@ -278,7 +280,7 @@ class BASE_EXPORT SysInfo { static HardwareInfo GetHardwareInfoSync(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc index 9b5a1d6262b0..73a5f9f01a17 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc @@ -1,21 +1,24 @@ ---- src/3rdparty/chromium/base/system/sys_info_posix.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/base/system/sys_info_posix.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/base/system/sys_info_posix.cc -@@ -165,12 +165,12 @@ int NumberOfProcessors() { +@@ -117,7 +117,7 @@ bool GetDiskSpaceInfo(const base::FilePath& path, - } // namespace internal + namespace base { -#if !BUILDFLAG(IS_OPENBSD) +#if !BUILDFLAG(IS_BSD) int SysInfo::NumberOfProcessors() { - static int number_of_processors = internal::NumberOfProcessors(); - return number_of_processors; + #if BUILDFLAG(IS_MAC) + absl::optional<int> number_of_physical_cores = +@@ -161,7 +161,7 @@ int SysInfo::NumberOfProcessors() { + + return num_cpus; } -#endif // !BUILDFLAG(IS_OPENBSD) +#endif // !BUILDFLAG(IS_BSD) // static uint64_t SysInfo::AmountOfVirtualMemory() { -@@ -260,6 +260,8 @@ std::string SysInfo::OperatingSystemArchitecture() { +@@ -251,6 +251,8 @@ std::string SysInfo::OperatingSystemArchitecture() { arch = "x86"; } else if (arch == "amd64") { arch = "x86_64"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_test_test__file__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_test_test__file__util__linux.cc index 49b9ce7d6fbe..0a61f568e7e7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_test_test__file__util__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_test_test__file__util__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/base/test/test_file_util_linux.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/base/test/test_file_util_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/test/test_file_util_linux.cc @@ -54,8 +54,10 @@ bool EvictFileFromSystemCache(const FilePath& file) { return false; if (fdatasync(fd.get()) != 0) return false; -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) if (posix_fadvise(fd.get(), 0, 0, POSIX_FADV_DONTNEED) != 0) return false; +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_hang__watcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_hang__watcher.cc new file mode 100644 index 000000000000..62a5b20ce6c5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_hang__watcher.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/base/threading/hang_watcher.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/base/threading/hang_watcher.cc +@@ -331,7 +331,7 @@ void HangWatcher::InitializeOnMainThread(ProcessType p + + bool enable_hang_watcher = base::FeatureList::IsEnabled(kEnableHangWatcher); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) + if (is_zygote_child) { + enable_hang_watcher = + enable_hang_watcher && diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__bsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__bsd.cc new file mode 100644 index 000000000000..d2ea66bf3ea5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__bsd.cc @@ -0,0 +1,34 @@ +--- src/3rdparty/chromium/base/threading/platform_thread_bsd.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/base/threading/platform_thread_bsd.cc +@@ -0,0 +1,31 @@ ++// Copyright 2023 The Chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++// Description: These are stubs for *BSD. ++ ++#include "base/threading/platform_thread.h" ++ ++namespace base { ++namespace internal { ++ ++bool CanSetThreadTypeToRealtimeAudio() { ++ return false; ++} ++ ++bool SetCurrentThreadTypeForPlatform(ThreadType thread_type, ++ MessagePumpType pump_type_hint) { ++ return false; ++} ++ ++absl::optional<ThreadPriorityForTest> ++GetCurrentThreadPriorityForPlatformForTest() { ++ return absl::nullopt; ++} ++} // namespace internal ++ ++// static ++void PlatformThreadBase::SetName(const std::string& name) { ++ SetNameCommon(name); ++} ++ ++} // namespace base diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__internal__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__internal__posix.cc new file mode 100644 index 000000000000..7feb2dec502e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__internal__posix.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/base/threading/platform_thread_internal_posix.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/base/threading/platform_thread_internal_posix.cc +@@ -41,7 +41,7 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest + } + + int GetCurrentThreadNiceValue() { +-#if BUILDFLAG(IS_NACL) ++#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return 0; + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc deleted file mode 100644 index e7a0ef2e0396..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc +++ /dev/null @@ -1,84 +0,0 @@ ---- src/3rdparty/chromium/base/threading/platform_thread_linux.cc.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/base/threading/platform_thread_linux.cc -@@ -30,7 +30,9 @@ - - #if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) - #include <pthread.h> -+#if !BUILDFLAG(IS_BSD) - #include <sys/prctl.h> -+#endif - #include <sys/resource.h> - #include <sys/time.h> - #include <sys/types.h> -@@ -139,7 +141,7 @@ long sched_setattr(pid_t pid, - #endif // !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) - #endif // BUILDFLAG(IS_CHROMEOS) - --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - const FilePath::CharType kCgroupDirectory[] = - FILE_PATH_LITERAL("/sys/fs/cgroup"); - -@@ -313,7 +315,7 @@ void SetThreadCgroupsForThreadType(PlatformThreadId th - namespace internal { - - namespace { --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - const struct sched_param kRealTimePrio = {8}; - #endif - } // namespace -@@ -340,7 +342,7 @@ const ThreadTypeToNiceValuePair kThreadTypeToNiceValue - }; - - bool CanSetThreadTypeToRealtimeAudio() { --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - // A non-zero soft-limit on RLIMIT_RTPRIO is required to be allowed to invoke - // pthread_setschedparam in SetCurrentThreadTypeForPlatform(). - struct rlimit rlim; -@@ -352,7 +354,7 @@ bool CanSetThreadTypeToRealtimeAudio() { - - bool SetCurrentThreadTypeForPlatform(ThreadType thread_type, - MessagePumpType pump_type_hint) { --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - const PlatformThreadId tid = PlatformThread::CurrentId(); - - if (g_thread_type_delegate && -@@ -378,7 +380,7 @@ bool SetCurrentThreadTypeForPlatform(ThreadType thread - - absl::optional<ThreadPriorityForTest> - GetCurrentThreadPriorityForPlatformForTest() { --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - int maybe_sched_rr = 0; - struct sched_param maybe_realtime_prio = {0}; - if (pthread_getschedparam(pthread_self(), &maybe_sched_rr, -@@ -397,7 +399,7 @@ GetCurrentThreadPriorityForPlatformForTest() { - void PlatformThread::SetName(const std::string& name) { - ThreadIdNameManager::GetInstance()->SetName(name); - --#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) && !BUILDFLAG(IS_BSD) - // On linux we can get the thread names to show up in the debugger by setting - // the process name for the LWP. We don't want to do this for the main - // thread because that would rename the process, causing tools like killall -@@ -417,7 +419,7 @@ void PlatformThread::SetName(const std::string& name) - #endif // !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) - } - --#if !BUILDFLAG(IS_NACL) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) - // static - void PlatformThread::SetThreadTypeDelegate(ThreadTypeDelegate* delegate) { - // A component cannot override a delegate set by another component, thus -@@ -428,7 +430,7 @@ void PlatformThread::SetThreadTypeDelegate(ThreadTypeD - } - #endif - --#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) -+#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_AIX) && !BUILDFLAG(IS_BSD) - // static - void PlatformThread::SetThreadType(ProcessId process_id, - PlatformThreadId thread_id, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__posix.cc index ab57809e0ac0..3e8c5740f048 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/base/threading/platform_thread_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/base/threading/platform_thread_posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/threading/platform_thread_posix.cc -@@ -76,7 +76,7 @@ void* ThreadFunc(void* params) { +@@ -76,12 +76,12 @@ void* ThreadFunc(void* params) { if (!thread_params->joinable) base::DisallowSingleton(); @@ -9,6 +9,21 @@ partition_alloc::internal::PCScan::NotifyThreadCreated( partition_alloc::internal::GetStackPointer()); #endif + +-#if !BUILDFLAG(IS_NACL) ++#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_APPLE) + PlatformThread::SetCurrentThreadRealtimePeriodValue( + delegate->GetRealtimePeriod()); +@@ -353,7 +353,7 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t + + // static + bool PlatformThreadBase::CanChangeThreadType(ThreadType from, ThreadType to) { +-#if BUILDFLAG(IS_NACL) ++#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) + return false; + #else + if (from >= to) { @@ -374,6 +374,9 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, MessagePumpType pump_type_hint) { #if BUILDFLAG(IS_NACL) @@ -19,3 +34,12 @@ #else if (internal::SetCurrentThreadTypeForPlatform(thread_type, pump_type_hint)) return; +@@ -396,7 +399,7 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, + + // static + ThreadPriorityForTest PlatformThreadBase::GetCurrentThreadPriorityForTest() { +-#if BUILDFLAG(IS_NACL) ++#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return ThreadPriorityForTest::kNormal; + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_malloc__dump__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_malloc__dump__provider.cc index 6f4bb60c70b9..dc3be50876aa 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_malloc__dump__provider.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_malloc__dump__provider.cc @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc @@ -25,6 +25,8 @@ #if BUILDFLAG(IS_APPLE) #include <malloc/malloc.h> -+#elif defined(OS_BSD) ++#elif BUILDFLAG(IS_BSD) +#include <stdlib.h> #else #include <malloc.h> #endif -@@ -187,7 +189,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, +@@ -188,7 +190,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, #if (BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(IS_ANDROID)) || \ (!BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_WIN) && \ @@ -18,11 +18,11 @@ void ReportMallinfoStats(ProcessMemoryDump* pmd, size_t* total_virtual_size, size_t* resident_size, -@@ -358,6 +360,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump +@@ -359,6 +361,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump &allocated_objects_count); #elif BUILDFLAG(IS_FUCHSIA) // TODO(fuchsia): Port, see https://crbug.com/706592. -+#elif defined(OS_BSD) ++#elif BUILDFLAG(IS_BSD) + total_virtual_size = 0; + allocated_objects_size = 0; #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_trace__log.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_trace__log.cc new file mode 100644 index 000000000000..6fe3d1861bc9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_base_trace__event_trace__log.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/base/trace_event/trace_log.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/base/trace_event/trace_log.cc +@@ -2190,8 +2190,13 @@ void TraceLog::SetTraceBufferForTesting( + #if BUILDFLAG(USE_PERFETTO_CLIENT_LIBRARY) + void TraceLog::OnSetup(const perfetto::DataSourceBase::SetupArgs& args) { + AutoLock lock(track_event_lock_); ++#if defined(__clang__) && (__clang_major__ >= 16) + track_event_sessions_.emplace_back(args.internal_instance_index, *args.config, + args.backend_type); ++#else ++ track_event_sessions_.emplace_back(TrackEventSession{args.internal_instance_index, *args.config, ++ args.backend_type}); ++#endif + } + + void TraceLog::OnStart(const perfetto::DataSourceBase::StartArgs&) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILD.gn index b1f5f44f2f80..a3f30fdd37eb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILD.gn @@ -1,22 +1,13 @@ ---- src/3rdparty/chromium/build/config/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/build/config/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/build/config/BUILD.gn -@@ -222,13 +222,17 @@ config("default_libs") { - "CoreText.framework", - "Foundation.framework", - ] -- } else if (is_linux || is_chromeos) { -+ } else if ((is_linux && !is_bsd) || is_chromeos) { - libs = [ - "dl", - "pthread", - "rt", - ] -- } +@@ -218,6 +218,10 @@ config("default_libs") { + # Targets should choose to explicitly link frameworks they require. Since + # linking can have run-time side effects, nothing should be listed here. + libs = [] + } else if (is_bsd) { + libs = [ + "pthread", + ] -+ } - } - - group("common_deps") { + } else if (is_linux || is_chromeos) { + libs = [ + "dl", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILDCONFIG.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILDCONFIG.gn index a7e1736e9cce..c9eb9e97a18d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILDCONFIG.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_BUILDCONFIG.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/build/config/BUILDCONFIG.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/build/config/BUILDCONFIG.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/build/config/BUILDCONFIG.gn @@ -136,7 +136,8 @@ declare_args() { is_official_build = false diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn index 85c5c8963128..7945516dc450 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn @@ -1,6 +1,15 @@ ---- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/build/config/compiler/BUILD.gn -@@ -243,13 +243,16 @@ config("no_unresolved_symbols") { +@@ -198,7 +198,7 @@ declare_args() { + # This greatly reduces the size of debug builds, at the cost of + # debugging information which is required by some specialized + # debugging tools. +- simple_template_names = is_clang && !is_nacl && !is_win && !is_apple ++ simple_template_names = is_clang && !is_nacl && !is_win && !is_apple && !is_bsd + } + + declare_args() { +@@ -262,13 +262,16 @@ config("no_unresolved_symbols") { # Compiler instrumentation can introduce dependencies in DSOs to symbols in # the executable they are loaded into, so they are unresolved at link-time. config("no_unresolved_symbols") { @@ -18,7 +27,7 @@ } # compiler --------------------------------------------------------------------- -@@ -513,6 +516,10 @@ config("compiler") { +@@ -555,6 +558,10 @@ config("compiler") { } } @@ -29,16 +38,16 @@ # Linux-specific compiler flags setup. # ------------------------------------ if (use_gold) { -@@ -882,7 +889,7 @@ config("compiler") { - # * Apple platforms (e.g. MacOS, iPhone, iPad) aren't supported because xcode - # lldb doesn't have the needed changes yet. - # TODO(crbug.com/1379070): Remove if the upstream default ever changes. -- if (is_clang && !is_nacl && !is_win && !is_apple) { -+ if (is_clang && !is_nacl && !is_win && !is_apple && !is_bsd) { - cflags_cc += [ "-gsimple-template-names" ] - } +@@ -823,7 +830,7 @@ config("compiler") { -@@ -1065,7 +1072,7 @@ config("compiler_cpu_abi") { + ldflags += [ "-Wl,-mllvm,-import-instr-limit=$import_instr_limit" ] + +- if (!is_chromeos) { ++ if (!is_chromeos && !is_bsd) { + # TODO(https://crbug.com/972449): turn on for ChromeOS when that + # toolchain has this flag. + # We only use one version of LLVM within a build so there's no need to +@@ -1170,7 +1177,7 @@ config("compiler_cpu_abi") { ] } } else if (current_cpu == "arm") { @@ -47,7 +56,7 @@ !(is_chromeos_lacros && is_chromeos_device)) { cflags += [ "--target=arm-linux-gnueabihf" ] ldflags += [ "--target=arm-linux-gnueabihf" ] -@@ -1083,7 +1090,7 @@ config("compiler_cpu_abi") { +@@ -1188,7 +1195,7 @@ config("compiler_cpu_abi") { cflags += [ "-mtune=$arm_tune" ] } } else if (current_cpu == "arm64") { @@ -56,7 +65,7 @@ !(is_chromeos_lacros && is_chromeos_device)) { cflags += [ "--target=aarch64-linux-gnu" ] ldflags += [ "--target=aarch64-linux-gnu" ] -@@ -1418,7 +1425,7 @@ config("compiler_deterministic") { +@@ -1523,7 +1530,7 @@ config("compiler_deterministic") { # different build directory like "out/feature_a" and "out/feature_b" if # we build same files with same compile flag. # Other paths are already given in relative, no need to normalize them. @@ -65,7 +74,7 @@ # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here. cflags += [ "-Xclang", -@@ -1470,7 +1477,7 @@ config("clang_revision") { +@@ -1575,7 +1582,7 @@ config("clang_revision") { } config("clang_revision") { @@ -74,7 +83,7 @@ update_args = [ "--print-revision", "--verify-version=$clang_version", -@@ -1872,7 +1879,7 @@ config("default_warnings") { +@@ -2005,7 +2012,7 @@ config("default_warnings") { "-Wno-ignored-pragma-optimize", ] @@ -83,7 +92,7 @@ cflags += [ # TODO(crbug.com/1343975) Evaluate and possibly enable. "-Wno-deprecated-builtins", -@@ -2054,7 +2061,7 @@ config("no_chromium_code") { +@@ -2218,7 +2225,7 @@ config("no_chromium_code") { # third-party libraries. "-Wno-c++11-narrowing", ] @@ -92,7 +101,7 @@ cflags += [ # Disabled for similar reasons as -Wunused-variable. "-Wno-unused-but-set-variable", -@@ -2570,7 +2577,7 @@ config("afdo") { +@@ -2736,7 +2743,7 @@ config("afdo") { # There are some targeted places that AFDO regresses, so we provide a separate # config to allow AFDO to be disabled per-target. config("afdo") { @@ -101,8 +110,8 @@ cflags = [] if (clang_emit_debug_info_for_profiling) { # Add the following flags to generate debug info for profiling. -@@ -2589,7 +2596,7 @@ config("afdo") { - } +@@ -2763,7 +2770,7 @@ config("afdo") { + cflags += [ "-Wno-backend-plugin" ] inputs = [ _clang_sample_profile ] } - } else if (auto_profile_path != "" && is_a_target_toolchain) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_pgo_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_pgo_BUILD.gn new file mode 100644 index 000000000000..e5f736b1a13c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_pgo_BUILD.gn @@ -0,0 +1,19 @@ +--- src/3rdparty/chromium/build/config/compiler/pgo/BUILD.gn.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/build/config/compiler/pgo/BUILD.gn +@@ -143,13 +143,14 @@ config("pgo_optimization_flags") { + + # Enable basic block layout based on the extended TSP problem. This aims to + # improve icache utilization and reduce the binary size. +- if (use_thin_lto) { ++ # __clang_major__ >= 15 ++ if (use_thin_lto && !is_bsd) { + if (is_win) { + ldflags = [ "-mllvm:-enable-ext-tsp-block-placement=1" ] + } else { + ldflags = [ "-Wl,-mllvm,-enable-ext-tsp-block-placement=1" ] + } +- } else { ++ } else if (!is_bsd) { + cflags += [ + "-mllvm", + "-enable-ext-tsp-block-placement=1", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_freetype_freetype.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_freetype_freetype.gni deleted file mode 100644 index ab30256825eb..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_freetype_freetype.gni +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/build/config/freetype/freetype.gni.orig 2023-08-23 22:56:29 UTC -+++ src/3rdparty/chromium/build/config/freetype/freetype.gni -@@ -10,7 +10,5 @@ declare_args() { - # than version 2.7.1 and have color bitmap support compiled in. WARNING: - # System FreeType configurations other than as described WILL INTRODUCE TEXT - # RENDERING AND SECURITY REGRESSIONS. -- use_system_freetype = false -- use_qt_freetype = false -- qt_freetype_config = "" -+ use_system_freetype = true - } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_BUILD.gn new file mode 100644 index 000000000000..63e443ae5628 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/build/config/linux/BUILD.gn.orig 2022-05-19 14:06:27 UTC ++++ src/3rdparty/chromium/build/config/linux/BUILD.gn +@@ -41,7 +41,7 @@ config("runtime_library") { + } + + if ((!is_chromeos || default_toolchain != "//build/toolchain/cros:target") && +- (!use_custom_libcxx || current_cpu == "mipsel")) { ++ (!use_custom_libcxx || current_cpu == "mipsel") && !is_bsd) { + libs = [ "atomic" ] + } + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py index 5bf1f6d7757d..afea5c617dfa 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/build/config/linux/pkg-config.py.orig 2024-02-10 00:23:21 UTC +--- src/3rdparty/chromium/build/config/linux/pkg-config.py.orig 2024-01-23 10:07:29 UTC +++ src/3rdparty/chromium/build/config/linux/pkg-config.py @@ -108,7 +108,7 @@ def main(): # If this is run on non-Linux platforms, just return nothing and indicate # success. This allows us to "kind of emulate" a Linux build from other # platforms. - if 'linux' not in sys.platform and 'darwin' not in sys.platform: -+ if not sys.platform.startswith(tuple(['linux', 'openbsd', 'freebsd', 'darwin'])): ++ if not sys.platform.startswith(tuple(['linux', 'darwin', 'freebsd', 'openbsd'])): print("[[],[],[],[],[]]") return 0 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_ozone.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_ozone.gni index 122af743c6f6..763302535df5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_ozone.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_ozone.gni @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/build/config/ozone.gni.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/build/config/ozone.gni.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/build/config/ozone.gni -@@ -90,7 +90,15 @@ declare_args() { +@@ -87,7 +87,15 @@ declare_args() { } else if (is_chromeos_lacros) { ozone_platform = "wayland" ozone_platform_wayland = true diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_rust.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_rust.gni deleted file mode 100644 index c0ed80bc9866..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_config_rust.gni +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/build/config/rust.gni.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/build/config/rust.gni -@@ -135,7 +135,7 @@ if (enable_rust) { - rust_sysroot = "//third_party/rust-toolchain" - use_unverified_rust_toolchain = false - } else { -- if (host_os != "linux") { -+ if (host_os != "linux" && host_os != "openbsd" && host_os != "freebsd") { - assert(false, - "Attempt to use Android Rust toolchain on an unsupported platform") - } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_gcc__toolchain.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_gcc__toolchain.gni index c4d3cef02ebe..a83eea70421e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_gcc__toolchain.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_gcc__toolchain.gni @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/build/toolchain/gcc_toolchain.gni.orig 2023-11-20 16:08:07 UTC +--- src/3rdparty/chromium/build/toolchain/gcc_toolchain.gni.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/build/toolchain/gcc_toolchain.gni @@ -53,6 +53,13 @@ if (enable_resource_allowlist_generation) { "enable_resource_allowlist_generation=true does not work for target_os=$target_os") @@ -14,7 +14,7 @@ # This template defines a toolchain for something that works like gcc # (including clang). # -@@ -839,22 +846,12 @@ template("clang_toolchain") { +@@ -888,22 +895,12 @@ template("clang_toolchain") { # use_gold too. template("clang_toolchain") { gcc_toolchain(target_name) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_toolchain.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_toolchain.gni new file mode 100644 index 000000000000..ce33cb085585 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_build_toolchain_toolchain.gni @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/build/toolchain/toolchain.gni.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/build/toolchain/toolchain.gni +@@ -67,7 +67,7 @@ if (host_os == "mac") { + host_shlib_extension = ".dylib" + } else if (host_os == "win") { + host_shlib_extension = ".dll" +-} else if (host_os == "linux" || host_os == "aix") { ++} else if (is_posix) { + host_shlib_extension = ".so" + } else { + assert(false, "Host platform not supported") diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn index 36c7ea079dde..416cda0112e3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/cc/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/cc/BUILD.gn.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/cc/BUILD.gn -@@ -668,7 +668,7 @@ cc_test_static_library("test_support") { +@@ -674,7 +674,7 @@ cc_test_static_library("test_support") { if (enable_vulkan) { deps += [ "//gpu/vulkan/init" ] } @@ -8,9 +8,9 @@ + if (!is_android && !is_bsd) { data_deps = [ "//third_party/mesa_headers" ] } - } -@@ -913,7 +913,6 @@ cc_test("cc_unittests") { - data = [ "//components/viz/test/data/" ] + if (skia_use_dawn) { +@@ -929,7 +929,6 @@ cc_test("cc_unittests") { + data = [ "//components/test/data/viz/" ] data_deps = [ "//testing/buildbot/filters:cc_unittests_filters", - "//third_party/mesa_headers", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_base_features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_base_features.cc new file mode 100644 index 000000000000..17cb349564cb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_cc_base_features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/cc/base/features.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/cc/base/features.cc +@@ -85,7 +85,7 @@ CONSTINIT const base::Feature kUseDMSAAForTiles( + // be using a separate flag to control the launch on GL. + CONSTINIT const base::Feature kUseDMSAAForTiles( + "UseDMSAAForTiles", +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_app__management__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_app__management__strings.grdp new file mode 100644 index 000000000000..a336b3f36bc5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_app__management__strings.grdp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/app/app_management_strings.grdp.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/app/app_management_strings.grdp +@@ -188,7 +188,7 @@ + You can open and edit supported files with this app from Finder or other apps. To control which files open this app by default, <ph name="BEGIN_LINK"><a href="#"></ph>learn how to set default apps on your device<ph name="END_LINK"></a></ph>. + </message> + </if> +- <if expr="is_fuchsia or is_linux"> ++ <if expr="is_fuchsia or is_posix"> + <message name="IDS_APP_MANAGEMENT_FILE_HANDLING_SET_DEFAULTS_LINK" desc="Further explanation of the File Handling API, including text describing the purpose of the toggle (referencing a generic Linux file browser app) and a link to a learn more link for default filetype associations."> + You can open and edit supported files with this app from your file browser or other apps. To control which files open this app by default, <ph name="BEGIN_LINK"><a href="#"></ph>learn how to set default apps on your device<ph name="END_LINK"></a></ph>. + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd new file mode 100644 index 000000000000..378a00f12881 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/chrome/app/chromium_strings.grd.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/app/chromium_strings.grd +@@ -315,7 +315,7 @@ If you update this file, be sure also to update google + Welcome to Chromium; new browser window opened + </message> + </if> +- <if expr="is_macosx or is_linux"> ++ <if expr="is_macosx or is_posix"> + <message name="IDS_FIRST_RUN_DIALOG_WINDOW_TITLE" desc="Window title of First Run dialog on Mac and Linux, displayed in title bar"> + Welcome to Chromium + </message> +@@ -465,7 +465,7 @@ If you update this file, be sure also to update google + To get future Chromium updates, you'll need Windows 10 or later. This computer is using Windows 8.1. + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_LINUX_OBSOLETE" desc="A message displayed on an at-launch infobar and about:help warning the user that the OS version they are using is no longer supported."> + Chromium may not function correctly because it is no longer supported on this Linux distribution + </message> +@@ -870,7 +870,7 @@ Permissions you've already given to websites and apps + </message> + </if> + +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <message name="IDS_RELAUNCH_TO_UPDATE_ALT" desc="Alternate text label of the relaunch to update Chrome menu item" translateable="false"> + Not used in Chromium. Placeholder to keep resource maps in sync. + </message> +@@ -1255,7 +1255,7 @@ Permissions you've already given to websites and apps + </message> + </if> + +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <message name="IDS_UPDATE_RECOMMENDED_DIALOG_TITLE_ALT" desc="Alternate window title for the Update Recommended dialog." translateable="false"> + Not used in Chromium. Placeholder to keep resource maps in sync. + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd new file mode 100644 index 000000000000..185d3fbc661b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd @@ -0,0 +1,92 @@ +--- src/3rdparty/chromium/chrome/app/generated_resources.grd.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/app/generated_resources.grd +@@ -2,7 +2,7 @@ + + <!-- + This file contains definitions of resources that will be translated for each +-locale. The variables is_win, is_macosx, is_linux, and is_posix are available ++locale. The variables is_win, is_macosx, is_posix, and is_posix are available + for making strings OS specific. Other platform defines such as use_titlecase + are declared in tools/grit/grit_rule.gni. + --> +@@ -3601,7 +3601,7 @@ are declared in tools/grit/grit_rule.gni. + </if> + + <!-- Bluetooth Device Credentials (i.e. PIN/Passkey) dialog --> +- <if expr="is_win or is_linux"> ++ <if expr="is_win or is_posix"> + <message name="IDS_BLUETOOTH_DEVICE_CREDENTIALS_TITLE" desc="Title of the Bluetooth device credentials prompt dialog."> + Device Credentials + </message> +@@ -5432,7 +5432,7 @@ are declared in tools/grit/grit_rule.gni. + Read information about your browser, OS, device, installed software, registry values and files + </message> + </if> +- <if expr="is_macosx or is_linux"> ++ <if expr="is_macosx or is_posix"> + <message name="IDS_EXTENSION_PROMPT_WARNING_ENTERPRISE_REPORTING_PRIVATE_ENABLED_LINUX_AND_MACOS" desc="Permission string for enterprise private reporting permission on Linux and MacOS."> + Read information about your browser, OS, device, installed software and files + </message> +@@ -6145,7 +6145,7 @@ Keep your key file in a safe place. You will need it t + Old versions of Chrome Apps won't open on Windows devices after December 2022. Contact your administrator to update to a new version or remove this app. + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_FORCE_INSTALLED_DEPRECATED_APPS_CONTENT" desc="Content of the force installed deprecated app dialog"> + Old versions of Chrome Apps won't open on Linux devices after December 2022. Contact your administrator to update to a new version or remove this app. + </message> +@@ -6191,7 +6191,7 @@ Keep your key file in a safe place. You will need it t + Old versions of Chrome apps won't open on Windows devices after December 2022. You can check if there's a new version available. + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_DEPRECATED_APPS_MONITOR_RENDERER" desc="Dialog content that educates users that Chrome Apps will soon no longer launch."> + Old versions of Chrome apps won't open on Linux devices after December 2022. You can check if there's a new version available. + </message> +@@ -10396,7 +10396,7 @@ Check your passwords anytime in <ph name="GOOGLE_PASSW + <message name="IDS_APP_MENU_BUTTON_UPDATE" desc="Short label next to app-menu button when an update is available."> + Update + </message> +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <message name="IDS_APP_MENU_BUTTON_UPDATE_ALT1" desc="Alternate short label next to app-menu button when an update is available."> + Finish update + </message> +@@ -10743,7 +10743,7 @@ Check your passwords anytime in <ph name="GOOGLE_PASSW + Google Pay + </message> + +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_SHOW_WINDOW_DECORATIONS" desc="The label of a radio button in the options dialog for using the system title bar and borders."> + Use system title bar and borders + </message> +@@ -11728,7 +11728,7 @@ Check your passwords anytime in <ph name="GOOGLE_PASSW + </message> + + <!-- Device Trust Consent dialog --> +- <if expr="is_win or is_macosx or is_linux or is_chromeos"> ++ <if expr="is_win or is_macosx or is_posix or is_chromeos"> + <message name="IDS_DEVICE_SIGNALS_CONSENT_DIALOG_TITLE" desc="Title of the dialog shown when user consent is required to share device signals."> + Share information about your device? + </message> +@@ -12136,7 +12136,7 @@ Please help our engineers fix this problem. Tell us wh + Set as default + </message> + +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_MINIMIZE_WINDOW_MENU" desc="The Linux browser window menu item text for minimizing the window."> + Minimize + </message> +@@ -14346,7 +14346,7 @@ Please help our engineers fix this problem. Tell us wh + Open Anyway + </message> + +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <message name="IDS_UTILITY_PROCESS_SYSTEM_SIGNALS_NAME" desc="The name of the utility process used to collect system signals. Only spawned on Windows, Mac or Linux."> + System Signals Utilities + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd new file mode 100644 index 000000000000..fdd0c329a1d4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/chrome/app/google_chrome_strings.grd.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/app/google_chrome_strings.grd +@@ -301,7 +301,7 @@ chromium_strings.grd. --> + Welcome to Chrome; new browser window opened + </message> + </if> +- <if expr="is_macosx or is_linux"> ++ <if expr="is_macosx or is_posix"> + <message name="IDS_FIRST_RUN_DIALOG_WINDOW_TITLE" desc="Window title of First Run dialog on Mac and Linux, displayed in title bar"> + Welcome to Google Chrome + </message> +@@ -453,7 +453,7 @@ chromium_strings.grd. --> + To get future Google Chrome updates, you'll need Windows 10 or later. This computer is using Windows 8.1. + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_LINUX_OBSOLETE" desc="A message displayed on an at-launch infobar and about:help warning the user that the OS version they are using is no longer supported."> + Google Chrome may not function correctly because it is no longer supported on this Linux distribution + </message> +@@ -855,7 +855,7 @@ Permissions you've already given to websites and apps + </if> + </if> + +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <if expr="use_titlecase"> + <message name="IDS_RELAUNCH_TO_UPDATE_ALT" desc="Alternate text label of the relaunch to update Chrome menu item"> + Relaunch to Update - Your tabs will reopen +@@ -1278,7 +1278,7 @@ Permissions you've already given to websites and apps + </message> + </if> + +- <if expr="is_win or is_macosx or is_linux"> ++ <if expr="is_win or is_macosx or is_posix"> + <message name="IDS_UPDATE_RECOMMENDED_DIALOG_TITLE_ALT" desc="Alternate window title for the Update Recommended dialog."> + Relaunch to finish Chrome update + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_profiles__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_profiles__strings.grdp new file mode 100644 index 000000000000..1d8767a94030 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_profiles__strings.grdp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/app/profiles_strings.grdp.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/app/profiles_strings.grdp +@@ -54,7 +54,7 @@ + Add Profile... + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_PROFILES_ADD_PROFILE_LABEL" desc="Menu item for adding a new profile."> + Add profile... + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_settings__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_settings__strings.grdp new file mode 100644 index 000000000000..09d3a37079d2 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_settings__strings.grdp @@ -0,0 +1,35 @@ +--- src/3rdparty/chromium/chrome/app/settings_strings.grdp.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/app/settings_strings.grdp +@@ -183,12 +183,12 @@ + Manage accessibility features + </message> + </if> +- <if expr="is_win or is_linux or is_macosx"> ++ <if expr="is_win or is_posix or is_macosx"> + <message name="IDS_SETTINGS_OVERSCROLL_HISTORY_NAVIGATION_TITLE" desc="Title for the overscroll history navigation setting, which allows you to navigate back and forward by swiping left or right with a touch device."> + Swipe between pages + </message> + </if> +- <if expr="is_win or is_linux"> ++ <if expr="is_win or is_posix"> + <message name="IDS_SETTINGS_OVERSCROLL_HISTORY_NAVIGATION_SUBTITLE" desc="Subtitle for the overscroll history navigation setting, which allows you to navigate back and forward by swiping left or right with a touch device."> + Navigate back and forward with swipe gesture + </message> +@@ -222,7 +222,7 @@ + Theme + </message> + </if> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <message name="IDS_SETTINGS_GTK_THEME" desc="Text of the label describing the system (GTK) browser theme on Linux"> + GTK + </message> +@@ -242,7 +242,7 @@ + Use Classic + </message> + </if> +- <if expr="not is_linux or is_chromeos or is_fuchsia"> ++ <if expr="not is_posix or is_chromeos or is_fuchsia"> + <message name="IDS_SETTINGS_RESET_TO_DEFAULT_THEME" desc="Name of the control which resets the browser theme back to the default theme."> + Reset to default + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd new file mode 100644 index 000000000000..f3ceafba7bcb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/app/theme/chrome_unscaled_resources.grd.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/chrome/app/theme/chrome_unscaled_resources.grd +@@ -16,7 +16,7 @@ + <includes> + <if expr="_google_chrome"> + <then> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <include name="IDR_PRODUCT_LOGO_64" file="google_chrome/linux/product_logo_64.png" type="BINDATA" /> + <include name="IDR_PRODUCT_LOGO_128" file="google_chrome/linux/product_logo_128.png" type="BINDATA" /> +@@ -61,7 +61,7 @@ + <else> <!-- not _google_chrome --> + <if expr="_is_chrome_for_testing_branded"> + <then> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <include name="IDR_PRODUCT_LOGO_64" file="google_chrome/google_chrome_for_testing/linux/product_logo_64.png" type="BINDATA" /> + <include name="IDR_PRODUCT_LOGO_128" file="google_chrome/google_chrome_for_testing/linux/product_logo_128.png" type="BINDATA" /> +@@ -75,7 +75,7 @@ + </if> + </then> + <else> <!-- not _is_chrome_for_testing_branded --> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <include name="IDR_PRODUCT_LOGO_64" file="chromium/linux/product_logo_64.png" type="BINDATA" /> + <include name="IDR_PRODUCT_LOGO_128" file="chromium/linux/product_logo_128.png" type="BINDATA" /> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_theme__resources.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_theme__resources.grd new file mode 100644 index 000000000000..10224bce93ce --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_theme__resources.grd @@ -0,0 +1,59 @@ +--- src/3rdparty/chromium/chrome/app/theme/theme_resources.grd.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/app/theme/theme_resources.grd +@@ -146,14 +146,14 @@ + </if> + <if expr="_google_chrome"> + <then> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="google_chrome/linux/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="google_chrome/linux/product_logo_32.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32_BETA" file="google_chrome/linux/product_logo_32_beta.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32_DEV" file="google_chrome/linux/product_logo_32_dev.png" /> + </then> +- <else> <!-- not is_linux --> ++ <else> <!-- not is_posix --> + <if expr="not is_android"> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="google_chrome/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="google_chrome/product_logo_32.png" /> +@@ -161,7 +161,7 @@ + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32_BETA" file="google_chrome/product_logo_32_beta.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32_DEV" file="google_chrome/product_logo_32_dev.png" /> + </else> +- </if> <!-- is_linux --> ++ </if> <!-- is_posix --> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32_CANARY" file="google_chrome/product_logo_32_canary.png" /> + <if expr="not is_android"> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_NAME_22" file="google_chrome/product_logo_name_22.png" /> +@@ -173,7 +173,7 @@ + <else> <!-- not _google_chrome --> + <if expr="_is_chrome_for_testing_branded"> + <then> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="google_chrome/google_chrome_for_testing/linux/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="google_chrome/google_chrome_for_testing/linux/product_logo_32.png" /> +@@ -182,10 +182,10 @@ + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="google_chrome/google_chrome_for_testing/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="google_chrome/google_chrome_for_testing/product_logo_32.png" /> + </else> +- </if> <!-- is_linux --> ++ </if> <!-- is_posix --> + </then> + <else> <!-- not _is_chrome_for_testing_branded --> +- <if expr="is_linux"> ++ <if expr="is_posix"> + <then> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="chromium/linux/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="chromium/linux/product_logo_32.png" /> +@@ -194,7 +194,7 @@ + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_16" file="chromium/product_logo_16.png" /> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_32" file="chromium/product_logo_32.png" /> + </else> +- </if> <!-- is_linux --> ++ </if> <!-- is_posix --> + </else> + </if> <!-- _is_chrome_for_testing_branded --> + <structure type="chrome_scaled_image" name="IDR_PRODUCT_LOGO_NAME_22" file="chromium/product_logo_name_22.png" /> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_BUILD.gn new file mode 100644 index 000000000000..95970a4cb06a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_BUILD.gn @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/chrome/browser/BUILD.gn.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/BUILD.gn +@@ -6312,6 +6312,13 @@ static_library("browser") { + } + } + ++ if (is_bsd) { ++ sources -= [ ++ "metrics/bluetooth_metrics_provider.cc", ++ "metrics/bluetooth_metrics_provider.h", ++ ] ++ } ++ + if (is_linux && use_dbus) { + sources += [ + "dbus_memory_pressure_evaluator_linux.cc", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_custom__handlers_chrome__protocol__handler__registry__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_custom__handlers_chrome__protocol__handler__registry__delegate.cc new file mode 100644 index 000000000000..808db0af5867 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_custom__handlers_chrome__protocol__handler__registry__delegate.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/custom_handlers/chrome_protocol_handler_registry_delegate.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/custom_handlers/chrome_protocol_handler_registry_delegate.cc +@@ -77,7 +77,7 @@ bool ChromeProtocolHandlerRegistryDelegate::ShouldRemo + // If true default protocol handlers will be removed if the OS level + // registration for a protocol is no longer Chrome. + bool ChromeProtocolHandlerRegistryDelegate::ShouldRemoveHandlersNotInOS() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // We don't do this on Linux as the OS registration there is not reliable, + // and Chrome OS doesn't have any notion of OS registration. + // TODO(benwells): When Linux support is more reliable remove this diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_BUILD.gn new file mode 100644 index 000000000000..06da7024e1e3 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_BUILD.gn @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/BUILD.gn.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/BUILD.gn +@@ -1372,6 +1372,10 @@ static_library("extensions") { + deps += [ "//chrome/services/printing/public/mojom" ] + } + ++ if (is_bsd) { ++ sources -= [ "api/image_writer_private/removable_storage_provider_linux.cc" ] ++ } ++ + if (enable_service_discovery) { + sources += [ + "api/mdns/mdns_api.cc", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc new file mode 100644 index 000000000000..06a864400955 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc +@@ -43,7 +43,7 @@ + #include "extensions/browser/api/bluetooth_low_energy/bluetooth_low_energy_api.h" + #include "extensions/browser/api/networking_private/networking_private_delegate_factory.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "chrome/browser/extensions/api/system_indicator/system_indicator_manager_factory.h" + #endif + +@@ -108,7 +108,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt + extensions::SettingsPrivateEventRouterFactory::GetInstance(); + extensions::SettingsOverridesAPI::GetFactoryInstance(); + extensions::SidePanelService::GetFactoryInstance(); +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + extensions::SystemIndicatorManagerFactory::GetInstance(); + #endif + extensions::TabGroupsEventRouterFactory::GetInstance(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc new file mode 100644 index 000000000000..5f0523de5f4c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc.orig 2022-07-22 17:30:31 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc +@@ -24,7 +24,7 @@ + #include "base/win/registry.h" + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "base/environment.h" + #include "base/nix/xdg_util.h" + #endif +@@ -256,7 +256,7 @@ base::FilePath GetEndpointVerificationDir() { + bool got_path = false; + #if BUILDFLAG(IS_WIN) + got_path = base::PathService::Get(base::DIR_LOCAL_APP_DATA, &path); +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + std::unique_ptr<base::Environment> env(base::Environment::Create()); + path = base::nix::GetXDGDirectory(env.get(), base::nix::kXdgConfigHomeEnvVar, + base::nix::kDotConfigDir); +@@ -267,7 +267,7 @@ base::FilePath GetEndpointVerificationDir() { + if (!got_path) + return path; + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + path = path.AppendASCII("google"); + #else + path = path.AppendASCII("Google"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.cc new file mode 100644 index 000000000000..277b0a7db4ab --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.cc.orig 2022-11-30 08:12:58 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.cc +@@ -8,7 +8,7 @@ + + #include "build/build_config.h" + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + #include <memory> + #include <utility> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h new file mode 100644 index 000000000000..36906235599b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h.orig 2022-08-31 12:19:35 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h +@@ -7,7 +7,7 @@ + + #include "build/build_config.h" + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + #include <vector> + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc new file mode 100644 index 000000000000..971325d39aff --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.cc +@@ -32,7 +32,7 @@ + #include "components/reporting/util/statusor.h" + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/strings/string_util.h" + #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" + #include "chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h" +@@ -149,7 +149,7 @@ api::enterprise_reporting_private::ContextInfo ToConte + return info; + } + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + device_signals::SignalsAggregationRequest CreateAggregationRequest( + device_signals::SignalName signal_name) { +@@ -210,7 +210,7 @@ EnterpriseReportingPrivateGetDeviceIdFunction:: + + // getPersistentSecret + +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + + EnterpriseReportingPrivateGetPersistentSecretFunction:: + EnterpriseReportingPrivateGetPersistentSecretFunction() = default; +@@ -637,7 +637,7 @@ void EnterpriseReportingPrivateEnqueueRecordFunction:: + } + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + // getFileSystemInfo + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.h new file mode 100644 index 000000000000..f8809f86b0d8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.h.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.h +@@ -20,7 +20,7 @@ + #include "components/reporting/proto/synced/record.pb.h" + #include "components/reporting/proto/synced/record_constants.pb.h" + #include "components/reporting/util/statusor.h" +-#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/time/time.h" + #include "components/device_signals/core/browser/signals_types.h" + #endif // BUILDFLAG(IS_CHROMEOS) +@@ -56,7 +56,7 @@ class EnterpriseReportingPrivateGetDeviceIdFunction : + ~EnterpriseReportingPrivateGetDeviceIdFunction() override; + }; + +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + + class EnterpriseReportingPrivateGetPersistentSecretFunction + : public ExtensionFunction { +@@ -266,7 +266,7 @@ class EnterpriseReportingPrivateEnqueueRecordFunction + + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + class EnterpriseReportingPrivateGetFileSystemInfoFunction + : public ExtensionFunction { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc new file mode 100644 index 000000000000..87a92318daf3 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc +@@ -20,6 +20,7 @@ static base::LazyInstance<scoped_refptr<StorageDeviceL + + void RemovableStorageProvider::GetAllDevices(DeviceListReadyCallback callback) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); ++#if !BUILDFLAG(IS_BSD) + if (g_test_device_list.Get().get() != nullptr) { + base::SingleThreadTaskRunner::GetCurrentDefault()->PostTask( + FROM_HERE, +@@ -33,6 +34,9 @@ void RemovableStorageProvider::GetAllDevices(DeviceLis + base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN}, + base::BindOnce(&RemovableStorageProvider::PopulateDeviceList), + std::move(callback)); ++#else ++ NOTIMPLEMENTED(); ++#endif + } + + // static diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc new file mode 100644 index 000000000000..91fcc20ed463 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/messaging/native_process_launcher_posix.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/messaging/native_process_launcher_posix.cc +@@ -82,7 +82,7 @@ bool NativeProcessLauncher::LaunchNativeProcess( + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + // Don't use no_new_privs mode, e.g. in case the host needs to use sudo. + options.allow_new_privs = true; + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc new file mode 100644 index 000000000000..802634836f97 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc +@@ -603,7 +603,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem + } + + void PasswordsPrivateDelegateImpl::OsReauthTimeoutCall() { +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + PasswordsPrivateEventRouter* router = + PasswordsPrivateEventRouterFactory::GetForProfile(profile_); + if (router) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc new file mode 100644 index 000000000000..5c9454eeb598 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc.orig 2023-09-29 10:14:06 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc +@@ -280,7 +280,9 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(Platfor + } else if (strcmp(os, "linux") == 0) { + info->os = extensions::api::runtime::PlatformOs::kLinux; + } else if (strcmp(os, "openbsd") == 0) { +- info->os = extensions::api::runtime::PlatformOs::kOpenbsd; ++ info->os = extensions::api::runtime::PlatformOs::kLinux; ++ } else if (strcmp(os, "freebsd") == 0) { ++ info->os = extensions::api::runtime::PlatformOs::kLinux; + } else if (strcmp(os, "fuchsia") == 0) { + info->os = extensions::api::runtime::PlatformOs::kFuchsia; + } else { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc new file mode 100644 index 000000000000..ab7ab9a7009d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/settings_private/prefs_util.cc +@@ -199,7 +199,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist + (*s_allowlist)[::prefs::kSidePanelHorizontalAlignment] = + settings_api::PrefType::PREF_TYPE_BOOLEAN; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + (*s_allowlist)[::prefs::kUseCustomChromeFrame] = + settings_api::PrefType::PREF_TYPE_BOOLEAN; + #endif +@@ -211,7 +211,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist + settings_api::PrefType::PREF_TYPE_STRING; + (*s_allowlist)[::prefs::kPolicyThemeColor] = + settings_api::PrefType::PREF_TYPE_NUMBER; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + (*s_allowlist)[::prefs::kSystemTheme] = + settings_api::PrefType::PREF_TYPE_NUMBER; + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_tabs_tabs__api.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_tabs_tabs__api.cc new file mode 100644 index 000000000000..0a42e29cfbed --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_tabs_tabs__api.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/tabs/tabs_api.cc +@@ -860,7 +860,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio + // ui::SHOW_STATE_MINIMIZED above, on Linux the window is not created as + // minimized. + // TODO(crbug.com/1410400): Remove this workaround when linux is fixed. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // TODO(crbug.com/1410400): Find a fix for wayland as well. + + // Must be defined inside IS_LINUX to compile on windows/mac. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc new file mode 100644 index 000000000000..e0f8858decb5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc +@@ -31,7 +31,7 @@ + #include "extensions/browser/process_manager.h" + #include "extensions/common/error_utils.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "extensions/common/permissions/permissions_data.h" + #endif + +@@ -40,7 +40,7 @@ bool CanEnableAudioDebugRecordingsFromExtension( + bool CanEnableAudioDebugRecordingsFromExtension( + const extensions::Extension* extension) { + bool enabled_by_permissions = false; +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (extension) { + enabled_by_permissions = + extension->permissions_data()->active_permissions().HasAPIPermission( +@@ -598,7 +598,7 @@ WebrtcLoggingPrivateGetLogsDirectoryFunction::Run() { + + ExtensionFunction::ResponseAction + WebrtcLoggingPrivateGetLogsDirectoryFunction::Run() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Unlike other WebrtcLoggingPrivate functions that take a RequestInfo object, + // this function shouldn't be called by a component extension on behalf of + // some web code. It returns a DirectoryEntry for use directly in the calling diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webstore__private_webstore__private__api.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webstore__private_webstore__private__api.cc new file mode 100644 index 000000000000..da9a51a03c39 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_webstore__private_webstore__private__api.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc +@@ -924,7 +924,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: + RequestExtensionApproval(contents); + return; + } +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Shows a parental permission dialog directly bypassing the extension + // install dialog view. The parental permission dialog contains a superset + // of data from the extension install dialog: requested extension diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_gcm__profile__service__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_gcm__profile__service__factory.cc new file mode 100644 index 000000000000..2f92338c3b30 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_gcm__profile__service__factory.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/gcm/gcm_profile_service_factory.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/gcm/gcm_profile_service_factory.cc +@@ -91,7 +91,7 @@ GCMProfileService* GCMProfileServiceFactory::GetForPro + // static + GCMProfileService* GCMProfileServiceFactory::GetForProfile( + content::BrowserContext* profile) { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On desktop, incognito profiles are checked with IsIncognitoProfile(). + // It's possible for non-incognito profiles to also be off-the-record. + bool is_profile_supported = +@@ -131,7 +131,7 @@ KeyedService* GCMProfileServiceFactory::BuildServiceIn + KeyedService* GCMProfileServiceFactory::BuildServiceInstanceFor( + content::BrowserContext* context) const { + Profile* profile = Profile::FromBrowserContext(context); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + DCHECK(!profile->IsIncognitoProfile()); + #else + DCHECK(!profile->IsOffTheRecord()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_instance__id_instance__id__profile__service__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_instance__id_instance__id__profile__service__factory.cc new file mode 100644 index 000000000000..de8d94187879 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_gcm_instance__id_instance__id__profile__service__factory.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/gcm/instance_id/instance_id_profile_service_factory.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/browser/gcm/instance_id/instance_id_profile_service_factory.cc +@@ -16,7 +16,7 @@ namespace instance_id { + // static + InstanceIDProfileService* InstanceIDProfileServiceFactory::GetForProfile( + content::BrowserContext* profile) { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On desktop, the guest profile is actually the primary OTR profile of + // the "regular" guest profile. The regular guest profile is never used + // directly by users. Also, user are not able to create child OTR profiles +@@ -61,7 +61,7 @@ InstanceIDProfileServiceFactory::~InstanceIDProfileSer + KeyedService* InstanceIDProfileServiceFactory::BuildServiceInstanceFor( + content::BrowserContext* context) const { + Profile* profile = Profile::FromBrowserContext(context); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On desktop, incognito profiles are checked with IsIncognitoProfile(). + // It's possible for non-incognito profiles to also be off-the-record. + bool is_incognito = profile->IsIncognitoProfile(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_router_discovery_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_router_discovery_BUILD.gn new file mode 100644 index 000000000000..483961bbc5a5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_router_discovery_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/media/router/discovery/BUILD.gn.orig 2022-10-24 13:33:33 UTC ++++ src/3rdparty/chromium/chrome/browser/media/router/discovery/BUILD.gn +@@ -80,7 +80,7 @@ static_library("discovery") { + "media_sink_discovery_metrics.h", + ] + +- if (is_linux || is_chromeos) { ++ if ((is_linux || is_chromeos) && !is_bsd) { + sources += [ "discovery_network_list_wifi_linux.cc" ] + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_capture__policy__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_capture__policy__utils.cc index 77d0b039dee3..91903778b113 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_capture__policy__utils.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_capture__policy__utils.cc @@ -1,20 +1,20 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/capture_policy_utils.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/capture_policy_utils.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/capture_policy_utils.cc -@@ -118,7 +118,7 @@ AllowedScreenCaptureLevel GetAllowedCaptureLevel(const +@@ -139,7 +139,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry + } - bool IsGetDisplayMediaSetSelectAllScreensAllowedForAnySite( - content::BrowserContext* context) { + bool IsGetAllScreensMediaAllowedForAnySite(content::BrowserContext* context) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) Profile* profile = Profile::FromBrowserContext(context); if (!profile) { return false; -@@ -145,7 +145,7 @@ bool IsGetDisplayMediaSetSelectAllScreensAllowedForAny - bool IsGetDisplayMediaSetSelectAllScreensAllowed( - content::BrowserContext* context, - const GURL& url) { +@@ -174,7 +174,7 @@ bool IsGetAllScreensMediaAllowedForAnySite(content::Br + + bool IsGetAllScreensMediaAllowed(content::BrowserContext* context, + const GURL& url) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) Profile* profile = Profile::FromBrowserContext(context); - if (!profile) + if (!profile) { return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_chrome__screen__enumerator.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_chrome__screen__enumerator.cc index c53c86c51fbd..e3b515d773a3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_chrome__screen__enumerator.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_chrome__screen__enumerator.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/chrome_screen_enumerator.cc -@@ -20,7 +20,7 @@ +@@ -21,7 +21,7 @@ #if BUILDFLAG(IS_CHROMEOS_ASH) #include "ash/shell.h" #include "ui/aura/window.h" @@ -9,7 +9,7 @@ #include "base/functional/callback.h" #include "content/public/browser/desktop_capture.h" #endif -@@ -31,7 +31,7 @@ base::LazyInstance<std::vector<aura::Window*>>::Destru +@@ -32,7 +32,7 @@ base::LazyInstance<std::vector<aura::Window*>>::Destru root_windows_for_testing_ = LAZY_INSTANCE_INITIALIZER; } // namespace @@ -18,7 +18,7 @@ namespace { base::LazyInstance<std::unique_ptr<webrtc::DesktopCapturer>>::DestructorAtExit g_desktop_capturer_for_testing = LAZY_INSTANCE_INITIALIZER; -@@ -77,7 +77,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( +@@ -78,7 +78,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( return stream_devices_set; } @@ -27,7 +27,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( blink::mojom::MediaStreamType stream_type) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); -@@ -128,7 +128,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( +@@ -129,7 +129,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( root_windows_for_testing_.Get() = std::move(root_windows); } @@ -36,9 +36,9 @@ void ChromeScreenEnumerator::SetDesktopCapturerForTesting( std::unique_ptr<webrtc::DesktopCapturer> capturer) { g_desktop_capturer_for_testing.Get() = std::move(capturer); -@@ -144,7 +144,7 @@ void ChromeScreenEnumerator::EnumerateScreens( - DCHECK(base::FeatureList::IsEnabled( - features::kGetDisplayMediaSetAutoSelectAllScreens)); +@@ -143,7 +143,7 @@ void ChromeScreenEnumerator::EnumerateScreens( + DCHECK_CURRENTLY_ON(content::BrowserThread::IO); + DCHECK(base::FeatureList::IsEnabled(blink::features::kGetAllScreensMedia)); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__event__log__uploader.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__event__log__uploader.cc index 226274e7a074..1997053b0136 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__event__log__uploader.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__event__log__uploader.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc -@@ -43,7 +43,7 @@ const char kProduct[] = "Chrome_ChromeOS"; +@@ -44,7 +44,7 @@ const char kProduct[] = "Chrome_ChromeOS"; const char kProduct[] = "Chrome_Mac"; #elif BUILDFLAG(IS_CHROMEOS_ASH) const char kProduct[] = "Chrome_ChromeOS"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__log__uploader.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__log__uploader.cc index 647f9df48f94..de2a37accf04 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__log__uploader.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__log__uploader.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_log_uploader.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_log_uploader.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_log_uploader.cc -@@ -365,6 +365,10 @@ void WebRtcLogUploader::SetupMultipart( +@@ -375,6 +375,10 @@ void WebRtcLogUploader::SetupMultipart( const char product[] = "Chrome_ChromeOS"; #elif BUILDFLAG(IS_FUCHSIA) const char product[] = "Chrome_Fuchsia"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.cc index fdebe744f962..c74047f8bfa1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.cc -@@ -23,10 +23,10 @@ - #include "content/public/browser/browser_context.h" +@@ -25,10 +25,10 @@ + #include "components/webrtc_logging/browser/text_log_list.h" #include "content/public/browser/render_process_host.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -13,7 +13,7 @@ using webrtc_event_logging::WebRtcEventLogManager; -@@ -278,7 +278,7 @@ void WebRtcLoggingController::StartEventLogging( +@@ -285,7 +285,7 @@ void WebRtcLoggingController::StartEventLogging( web_app_id, callback); } @@ -22,7 +22,7 @@ void WebRtcLoggingController::GetLogsDirectory( LogsDirectoryCallback callback, LogsDirectoryErrorCallback error_callback) { -@@ -323,7 +323,7 @@ void WebRtcLoggingController::GrantLogsDirectoryAccess +@@ -330,7 +330,7 @@ void WebRtcLoggingController::GrantLogsDirectoryAccess FROM_HERE, base::BindOnce(std::move(callback), file_system.id(), registered_name)); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.h index 1ba821af9e7a..49b8eb69053c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/browser/media/webrtc/webrtc_logging_controller.h -@@ -137,7 +137,7 @@ class WebRtcLoggingController +@@ -138,7 +138,7 @@ class WebRtcLoggingController size_t web_app_id, const StartEventLoggingCallback& callback); @@ -9,9 +9,9 @@ // Ensures that the WebRTC Logs directory exists and then grants render // process access to the 'WebRTC Logs' directory, and invokes |callback| with // the ids necessary to create a DirectoryEntry object. -@@ -196,7 +196,7 @@ class WebRtcLoggingController - bool success, - const std::string& error_message); +@@ -203,7 +203,7 @@ class WebRtcLoggingController + + content::BrowserContext* GetBrowserContext() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.cc new file mode 100644 index 000000000000..f3128071a53f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.cc @@ -0,0 +1,115 @@ +--- src/3rdparty/chromium/chrome/browser/net/system_network_context_manager.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/net/system_network_context_manager.cc +@@ -92,7 +92,7 @@ + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + #include "chrome/common/chrome_paths_internal.h" + #include "chrome/grit/chromium_strings.h" + #include "ui/base/l10n/l10n_util.h" +@@ -183,7 +183,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut + auth_dynamic_params->basic_over_http_enabled = + local_state->GetBoolean(prefs::kBasicAuthOverHttpEnabled); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + auth_dynamic_params->delegate_by_kdc_policy = + local_state->GetBoolean(prefs::kAuthNegotiateDelegateByKdcPolicy); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +@@ -241,7 +241,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() + if (g_previously_failed_to_launch_sandboxed_service) { + return NetworkSandboxState::kDisabledBecauseOfFailedLaunch; + } +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + auto* local_state = g_browser_process->local_state(); + #endif + +@@ -262,7 +262,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() + } + #endif // BUILDFLAG(IS_WIN) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (local_state && + local_state->HasPrefPath(prefs::kNetworkServiceSandboxEnabled)) { + return local_state->GetBoolean(prefs::kNetworkServiceSandboxEnabled) +@@ -457,7 +457,7 @@ void SystemNetworkContextManager::DeleteInstance() { + g_system_network_context_manager = nullptr; + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + SystemNetworkContextManager::GssapiLibraryLoadObserver:: + GssapiLibraryLoadObserver(SystemNetworkContextManager* owner) + : owner_(owner) {} +@@ -515,7 +515,7 @@ SystemNetworkContextManager::SystemNetworkContextManag + pref_change_registrar_.Add(prefs::kAllHttpAuthSchemesAllowedForOrigins, + auth_pref_callback); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + pref_change_registrar_.Add(prefs::kAuthNegotiateDelegateByKdcPolicy, + auth_pref_callback); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +@@ -562,7 +562,7 @@ SystemNetworkContextManager::SystemNetworkContextManag + #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + pref_change_registrar_.Add( + prefs::kEnforceLocalAnchorConstraintsEnabled, + base::BindRepeating(&SystemNetworkContextManager:: +@@ -611,7 +611,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe + registry->RegisterBooleanPref(prefs::kKerberosEnabled, false); + #endif // BUILDFLAG(IS_CHROMEOS_LACROS) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + registry->RegisterBooleanPref(prefs::kAuthNegotiateDelegateByKdcPolicy, + false); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +@@ -640,7 +640,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe + registry->RegisterBooleanPref(prefs::kChromeRootStoreEnabled, false); + #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + // Note that the default value is not relevant because the pref is only + // evaluated when it is managed. + registry->RegisterBooleanPref(prefs::kEnforceLocalAnchorConstraintsEnabled, +@@ -649,11 +649,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe + + registry->RegisterListPref(prefs::kExplicitlyAllowedNetworkPorts); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + registry->RegisterBooleanPref(prefs::kNetworkServiceSandboxEnabled, true); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + registry->RegisterBooleanPref(prefs::kReceivedHttpAuthNegotiateHeader, false); + #endif // BUILDFLAG(IS_LINUX) + } +@@ -702,7 +702,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea + OnNewHttpAuthDynamicParams(http_auth_dynamic_params); + network_service->ConfigureHttpAuthPrefs(std::move(http_auth_dynamic_params)); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + gssapi_library_loader_observer_.Install(network_service); + #endif // BUILDFLAG(IS_LINUX) + +@@ -1009,7 +1009,7 @@ void SystemNetworkContextManager::UpdateChromeRootStor + #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + void SystemNetworkContextManager::UpdateEnforceLocalAnchorConstraintsEnabled() { + const PrefService::Preference* enforce_local_anchor_constraints_enabled_pref = + local_state_->FindPreference( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.h new file mode 100644 index 000000000000..03783d1b1351 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/net/system_network_context_manager.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/net/system_network_context_manager.h +@@ -185,7 +185,7 @@ class SystemNetworkContextManager { + class URLLoaderFactoryForSystem; + class NetworkProcessLaunchWatcher; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + class GssapiLibraryLoadObserver + : public network::mojom::GssapiLibraryLoadObserver { + public: +@@ -229,7 +229,7 @@ class SystemNetworkContextManager { + #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + // Applies the current value of the kEnforceLocalAnchorConstraintsEnabled + // pref to the enforcement state. + void UpdateEnforceLocalAnchorConstraintsEnabled(); +@@ -275,7 +275,7 @@ class SystemNetworkContextManager { + + static absl::optional<bool> certificate_transparency_enabled_for_testing_; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + GssapiLibraryLoadObserver gssapi_library_loader_observer_{this}; + #endif // BUILDFLAG(IS_LINUX) + }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_browser__prefs.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_browser__prefs.cc new file mode 100644 index 000000000000..01dbe1ca48f5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_browser__prefs.cc @@ -0,0 +1,69 @@ +--- src/3rdparty/chromium/chrome/browser/prefs/browser_prefs.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/prefs/browser_prefs.cc +@@ -478,13 +478,13 @@ + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + #include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897 + #endif + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) + #include "chrome/browser/browser_switcher/browser_switcher_prefs.h" + #endif +@@ -517,7 +517,7 @@ + #include "chrome/browser/sessions/session_service_log.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "ui/color/system_theme.h" + #endif + +@@ -662,7 +662,7 @@ const char kPluginsPluginsList[] = "plugins.plugins_li + const char kPluginsShowDetails[] = "plugins.show_details"; + + // Deprecated 02/2023. +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const char kWebAppsUrlHandlerInfo[] = "web_apps.url_handler_info"; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + +@@ -948,7 +948,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistryS + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + + // Deprecated 02/2023. +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + registry->RegisterDictionaryPref(kWebAppsUrlHandlerInfo); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + +@@ -1863,12 +1863,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + device_signals::RegisterProfilePrefs(registry); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS_ASH) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry); + #endif + +@@ -2018,7 +2018,7 @@ void MigrateObsoleteLocalStatePrefs(PrefService* local + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + + // Added 02/2023 +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + local_state->ClearPref(kWebAppsUrlHandlerInfo); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_pref__service__incognito__allowlist.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_pref__service__incognito__allowlist.cc new file mode 100644 index 000000000000..30ddf9a2ebc9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_prefs_pref__service__incognito__allowlist.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/prefs/pref_service_incognito_allowlist.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/chrome/browser/prefs/pref_service_incognito_allowlist.cc +@@ -168,7 +168,7 @@ const char* const kPersistentPrefNames[] = { + prefs::kShowFullscreenToolbar, + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Toggleing custom frames affects all open windows in the profile, hence + // should be written to the regular profile when changed in incognito mode. + prefs::kUseCustomChromeFrame, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_print__backend__service__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_print__backend__service__manager.cc new file mode 100644 index 000000000000..8139fb923780 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_print__backend__service__manager.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/printing/print_backend_service_manager.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/browser/printing/print_backend_service_manager.cc +@@ -33,7 +33,7 @@ + #include "printing/buildflags/buildflags.h" + #include "printing/printing_features.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "content/public/common/content_switches.h" + #endif + +@@ -851,7 +851,7 @@ PrintBackendServiceManager::GetServiceFromBundle( + host.BindNewPipeAndPassReceiver(), + content::ServiceProcessHost::Options() + .WithDisplayName(IDS_UTILITY_PROCESS_PRINT_BACKEND_SERVICE_NAME) +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + .WithExtraCommandLineSwitches({switches::kMessageLoopTypeUi}) + #endif + .Pass()); +@@ -1024,7 +1024,7 @@ PrintBackendServiceManager::DetermineIdleTimeoutUpdate + return kNoClientsRegisteredResetOnIdleTimeout; + + case ClientType::kQueryWithUi: +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // No need to update if there were other query with UI clients. + if (HasQueryWithUiClientForRemoteId(remote_id)) { + return absl::nullopt; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_printer__query.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_printer__query.cc new file mode 100644 index 000000000000..125dba287eaa --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_printing_printer__query.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/printing/printer_query.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/printing/printer_query.cc +@@ -361,7 +361,7 @@ void PrinterQuery::UpdatePrintSettings(base::Value::Di + crash_key = std::make_unique<crash_keys::ScopedPrinterInfo>( + print_backend->GetPrinterDriverInfo(printer_name)); + +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS) ++#if (BUILDFLAG(IS_BSD) || BUILDFLAG(IS_LINUX)) && BUILDFLAG(USE_CUPS) + PrinterBasicInfo basic_info; + if (print_backend->GetPrinterBasicInfo(printer_name, &basic_info) == + mojom::ResultCode::kSuccess) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_sandbox__internals_sandbox__internals.ts b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_sandbox__internals_sandbox__internals.ts new file mode 100644 index 000000000000..e10b79e480c1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_sandbox__internals_sandbox__internals.ts @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/resources/sandbox_internals/sandbox_internals.ts.orig 2023-02-08 09:03:45 UTC ++++ src/3rdparty/chromium/chrome/browser/resources/sandbox_internals/sandbox_internals.ts +@@ -2,7 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-// <if expr="is_linux or is_chromeos"> ++// <if expr="is_posix or is_chromeos"> + import './strings.m.js'; + + import {loadTimeData} from 'chrome://resources/js/load_time_data.js'; +@@ -121,7 +121,7 @@ function androidHandler() { + } + // </if> + +-// <if expr="is_linux or is_chromeos"> ++// <if expr="is_posix or is_chromeos"> + + /** + * Adds a status row that reports either Yes or No. +@@ -182,7 +182,7 @@ document.addEventListener('DOMContentLoaded', () => { + // <if expr="is_android"> + androidHandler(); + // </if> +- // <if expr="is_linux or is_chromeos"> ++ // <if expr="is_posix or is_chromeos"> + linuxHandler(); + // </if> + }); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_signin__shared.css b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_signin__shared.css new file mode 100644 index 000000000000..1a3008147862 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_signin__shared.css @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/resources/signin/signin_shared.css.orig 2022-11-30 08:12:58 UTC ++++ src/3rdparty/chromium/chrome/browser/resources/signin/signin_shared.css +@@ -54,7 +54,7 @@ a { + border-radius: var(--scrollbar-width); + } + +-<if expr="is_macosx or is_linux or is_chromeos"> ++<if expr="is_macosx or is_posix or is_chromeos"> + .action-container { + flex-flow: row-reverse; + justify-content: flex-start; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_sync__confirmation_sync__confirmation__app.html b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_sync__confirmation_sync__confirmation__app.html new file mode 100644 index 000000000000..5ec551183f86 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_resources_signin_sync__confirmation_sync__confirmation__app.html @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/resources/signin/sync_confirmation/sync_confirmation_app.html.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/chrome/browser/resources/signin/sync_confirmation/sync_confirmation_app.html +@@ -290,7 +290,7 @@ + autofocus="[[isModalDialog_]]"> + $i18n{syncConfirmationConfirmLabel} + </cr-button> +- <if expr="is_macosx or is_linux or chromeos_ash or chromeos_lacros"> ++ <if expr="is_macosx or is_posix or chromeos_ash or chromeos_lacros"> + <cr-button id="settingsButton" on-click="onGoToSettings_" + disabled="[[anyButtonClicked_]]" consent-confirmation> + $i18n{syncConfirmationSettingsLabel} +@@ -300,7 +300,7 @@ + disabled="[[anyButtonClicked_]]"> + $i18n{syncConfirmationUndoLabel} + </cr-button> +- <if expr="not (is_macosx or is_linux or chromeos_ash or chromeos_lacros)"> ++ <if expr="not (is_macosx or is_posix or chromeos_ash or chromeos_lacros)"> + <cr-button id="settingsButton" on-click="onGoToSettings_" + disabled="[[anyButtonClicked_]]" consent-confirmation> + $i18n{syncConfirmationSettingsLabel} diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about__ui.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about__ui.cc new file mode 100644 index 000000000000..565fc76382d7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about__ui.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/about_ui.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/about_ui.cc +@@ -635,7 +635,7 @@ std::string ChromeURLs() { + return html; + } + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + std::string AboutLinuxProxyConfig() { + std::string data; + AppendHeader(&data, +@@ -689,7 +689,7 @@ void AboutUIHTMLSource::StartDataRequest( + response = + ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(idr); + } +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + } else if (source_name_ == chrome::kChromeUILinuxProxyConfigHost) { + response = AboutLinuxProxyConfig(); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc new file mode 100644 index 000000000000..a7b61b1f993f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.cc +@@ -415,7 +415,7 @@ app_home::mojom::AppInfoPtr AppHomePageHandler::Create + + bool deprecated_app = false; + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + auto* context = extension_system_->extension_service()->GetBrowserContext(); + deprecated_app = + extensions::IsExtensionUnsupportedDeprecatedApp(context, extension->id()); +@@ -478,7 +478,7 @@ void AppHomePageHandler::FillExtensionInfoList( + } + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + auto* context = extension_system_->extension_service()->GetBrowserContext(); + const bool is_deprecated_app = + extensions::IsExtensionUnsupportedDeprecatedApp(context, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc new file mode 100644 index 000000000000..a717e9efc5ce --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc @@ -0,0 +1,92 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +@@ -213,7 +213,7 @@ + #include "chrome/browser/ui/webui/chromeos/chrome_url_disabled/chrome_url_disabled_ui.h" + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "chrome/browser/ui/webui/webui_js_error/webui_js_error_ui.h" + #endif + +@@ -239,17 +239,17 @@ + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "chrome/browser/ui/webui/discards/discards_ui.h" + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include "chrome/browser/ui/webui/sandbox/sandbox_internals_ui.h" + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + #include "chrome/browser/ui/webui/connectors_internals/connectors_internals_ui.h" + #endif + +@@ -402,7 +402,7 @@ bool IsAboutUI(const GURL& url) { + #if !BUILDFLAG(IS_ANDROID) + || url.host_piece() == chrome::kChromeUITermsHost + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + || url.host_piece() == chrome::kChromeUILinuxProxyConfigHost + #endif + #if BUILDFLAG(IS_CHROMEOS_ASH) +@@ -663,7 +663,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we + if (url.host_piece() == chrome::kChromeUIMobileSetupHost) + return &NewWebUI<ash::cellular_setup::MobileSetupUI>; + #endif // BUILDFLAG(IS_CHROMEOS_ASH) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUIWebUIJsErrorHost) + return &NewWebUI<WebUIJsErrorUI>; + #endif +@@ -725,7 +725,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we + if (url.host_piece() == chrome::kChromeUINaClHost) + return &NewWebUI<NaClUI>; + #endif +-#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ ++#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ + defined(TOOLKIT_VIEWS)) || \ + defined(USE_AURA) + if (url.host_piece() == chrome::kChromeUITabModalConfirmDialogHost) +@@ -794,27 +794,27 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we + } + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUISandboxHost) { + return &NewWebUI<SandboxInternalsUI>; + } + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUIConnectorsInternalsHost) + return &NewWebUI<enterprise_connectors::ConnectorsInternalsUI>; + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUIDiscardsHost) + return &NewWebUI<DiscardsUI>; + #endif +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUIBrowserSwitchHost) + return &NewWebUI<BrowserSwitchUI>; + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + if (url.host_piece() == chrome::kChromeUIWebAppSettingsHost) + return &NewWebUI<WebAppSettingsUI>; + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc new file mode 100644 index 000000000000..1ef21d90c51b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/connectors_internals/device_trust_utils.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/connectors_internals/device_trust_utils.cc +@@ -6,7 +6,7 @@ + + #include "build/build_config.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + #include "base/base64url.h" + #include "chrome/browser/browser_process.h" + #include "chrome/browser/policy/chrome_browser_policy_connector.h" +@@ -24,7 +24,7 @@ namespace utils { + + namespace { + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + + connectors_internals::mojom::KeyTrustLevel ParseTrustLevel( + BPKUR::KeyTrustLevel trust_level) { +@@ -92,7 +92,7 @@ connectors_internals::mojom::Int32ValuePtr ToMojomValu + } // namespace + + connectors_internals::mojom::KeyInfoPtr GetKeyInfo() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + auto* key_manager = g_browser_process->browser_policy_connector() + ->chrome_browser_cloud_management_controller() + ->GetDeviceTrustKeyManager(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui.cc new file mode 100644 index 000000000000..c5e532d3d32b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui.cc +@@ -92,7 +92,7 @@ content::WebUIDataSource* CreateAndAddManagementUIHtml + {kManagementOnFileTransferVisibleData, + IDS_MANAGEMENT_FILE_TRANSFER_VISIBLE_DATA}, + #endif // BUILDFLAG(IS_CHROMEOS) +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {kManagementScreenCaptureEvent, IDS_MANAGEMENT_SCREEN_CAPTURE_EVENT}, + {kManagementScreenCaptureData, IDS_MANAGEMENT_SCREEN_CAPTURE_DATA}, + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.cc new file mode 100644 index 000000000000..084248a340c7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.cc @@ -0,0 +1,53 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_handler.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_handler.cc +@@ -94,7 +94,7 @@ + #include "components/policy/core/common/cloud/user_cloud_policy_manager.h" + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/enterprise/signals/user_permission_service_factory.h" + #include "components/device_signals/core/browser/user_permission_service.h" // nogncheck + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -190,12 +190,12 @@ enum class ReportingType { + kLegacyTech, + }; + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const char kManagementScreenCaptureEvent[] = "managementScreenCaptureEvent"; + const char kManagementScreenCaptureData[] = "managementScreenCaptureData"; + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const char kManagementDeviceSignalsDisclosure[] = + "managementDeviceSignalsDisclosure"; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -773,7 +773,7 @@ void ManagementUIHandler::AddReportingInfo(base::Value + GetReportingTypeValue(report_definition.reporting_type)); + report_sources->Append(std::move(data)); + } +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Insert the device signals consent disclosure at the end of browser + // reporting section. + auto* user_permission_service = GetUserPermissionService(); +@@ -1061,7 +1061,7 @@ base::Value::Dict ManagementUIHandler::GetThreatProtec + kManagementOnPageVisitedVisibleData, &info); + } + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (capture_policy::IsGetAllScreensMediaAllowedForAnySite(profile)) { + AddThreatProtectionPermission(kManagementScreenCaptureEvent, + kManagementScreenCaptureData, &info); +@@ -1145,7 +1145,7 @@ policy::PolicyService* ManagementUIHandler::GetPolicyS + ->policy_service(); + } + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + device_signals::UserPermissionService* + ManagementUIHandler::GetUserPermissionService() { + return enterprise_signals::UserPermissionServiceFactory::GetForProfile( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.h new file mode 100644 index 000000000000..fb7c7572967b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.h @@ -0,0 +1,37 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_handler.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_handler.h +@@ -24,14 +24,14 @@ + #include "extensions/common/extension_id.h" + #include "url/gurl.h" + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Constants defining the IDs for the localized strings sent to the page as + // load time data. + extern const char kManagementScreenCaptureEvent[]; + extern const char kManagementScreenCaptureData[]; + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + extern const char kManagementDeviceSignalsDisclosure[]; + #endif // #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + +@@ -117,7 +117,7 @@ class StatusCollector; + class SystemLogUploader; + } // namespace policy + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + namespace device_signals { + class UserPermissionService; + } // namespace device_signals +@@ -177,7 +177,7 @@ class ManagementUIHandler : public content::WebUIMessa + base::Value::List GetManagedWebsitesInfo(Profile* profile) const; + base::Value::List GetApplicationsInfo(Profile* profile) const; + virtual policy::PolicyService* GetPolicyService(); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + virtual device_signals::UserPermissionService* GetUserPermissionService(); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_ntp_app__launcher__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_ntp_app__launcher__handler.cc new file mode 100644 index 000000000000..8bf838a52106 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_ntp_app__launcher__handler.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/ntp/app_launcher_handler.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/ntp/app_launcher_handler.cc +@@ -320,7 +320,7 @@ base::Value::Dict AppLauncherHandler::CreateExtensionI + bool is_deprecated_app = false; + auto* context = extension_service_->GetBrowserContext(); + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + is_deprecated_app = + extensions::IsExtensionUnsupportedDeprecatedApp(context, extension->id()); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_realbox_realbox__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_realbox_realbox__handler.cc new file mode 100644 index 000000000000..286837de110d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_realbox_realbox__handler.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/realbox/realbox_handler.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/realbox/realbox_handler.cc +@@ -146,7 +146,7 @@ constexpr char kMacShareIconResourceName[] = + #elif BUILDFLAG(IS_WIN) + constexpr char kWinShareIconResourceName[] = + "//resources/cr_components/omnibox/icons/win_share.svg"; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + constexpr char kLinuxShareIconResourceName[] = + "//resources/cr_components/omnibox/icons/share.svg"; + #else +@@ -745,7 +745,7 @@ std::string RealboxHandler::PedalVectorIconToResourceN + icon.name == omnibox::kShareWinChromeRefreshIcon.name) { + return kWinShareIconResourceName; + } +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (icon.name == omnibox::kShareIcon.name || + icon.name == omnibox::kShareLinuxChromeRefreshIcon.name) { + return kLinuxShareIconResourceName; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_appearance__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_appearance__handler.cc new file mode 100644 index 000000000000..17580c061f6b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_appearance__handler.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2022-10-24 13:33:33 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/settings/appearance_handler.cc +@@ -28,7 +28,7 @@ void AppearanceHandler::RegisterMessages() { + "useDefaultTheme", + base::BindRepeating(&AppearanceHandler::HandleUseTheme, + base::Unretained(this), ui::SystemTheme::kDefault)); +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + web_ui()->RegisterMessageCallback( + "useGtkTheme", + base::BindRepeating(&AppearanceHandler::HandleUseTheme, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc new file mode 100644 index 000000000000..e93abe0efa2d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc @@ -0,0 +1,65 @@ +--- src/3rdparty/chromium/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +@@ -135,7 +135,7 @@ + #include "ash/webui/settings/public/constants/routes.mojom.h" + #endif + +-#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS) ++#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) + #include "ui/display/screen.h" + #endif + +@@ -155,7 +155,7 @@ + #include "chrome/browser/ui/webui/certificate_manager_localized_strings_provider.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "ui/linux/linux_ui_factory.h" + #include "ui/ozone/public/ozone_platform.h" + #endif +@@ -263,7 +263,7 @@ void AddCommonStrings(content::WebUIDataSource* html_s + base::FeatureList::IsEnabled( + supervised_user::kClearingCookiesKeepsSupervisedUsersSignedIn)); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool allow_qt_theme = base::FeatureList::IsEnabled(ui::kAllowQt); + #else + bool allow_qt_theme = false; +@@ -294,7 +294,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou + {"focusHighlightLabel", + IDS_SETTINGS_ACCESSIBILITY_FOCUS_HIGHLIGHT_DESCRIPTION}, + #endif +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + {"overscrollHistoryNavigationTitle", + IDS_SETTINGS_OVERSCROLL_HISTORY_NAVIGATION_TITLE}, + {"overscrollHistoryNavigationSubtitle", +@@ -433,7 +433,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht + {"huge", IDS_SETTINGS_HUGE_FONT_SIZE}, + {"sidePanelAlignLeft", IDS_SETTINGS_SIDE_PANEL_ALIGN_LEFT}, + {"sidePanelAlignRight", IDS_SETTINGS_SIDE_PANEL_ALIGN_RIGHT}, +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {"gtkTheme", IDS_SETTINGS_GTK_THEME}, + {"useGtkTheme", IDS_SETTINGS_USE_GTK_THEME}, + {"qtTheme", IDS_SETTINGS_QT_THEME}, +@@ -443,7 +443,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht + #else + {"resetToDefaultTheme", IDS_SETTINGS_RESET_TO_DEFAULT_THEME}, + #endif +-#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS) ++#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) + {"showWindowDecorations", IDS_SHOW_WINDOW_DECORATIONS}, + #endif + #if BUILDFLAG(IS_MAC) +@@ -468,7 +468,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS) ++#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) + bool show_custom_chrome_frame = ui::OzonePlatform::GetInstance() + ->GetPlatformRuntimeProperties() + .supports_server_side_window_decorations; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info.h new file mode 100644 index 000000000000..2c5c06693e34 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info.h @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/chrome/common/channel_info.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/chrome/common/channel_info.h +@@ -104,13 +104,13 @@ void ClearChannelForTesting(); + std::string GetChannelSuffixForDataDir(); + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::string GetChannelSuffixForExtraFlagsEnvVarName(); + #endif + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + // Returns the channel-specific filename of the desktop shortcut used to launch + // the browser. + std::string GetDesktopName(base::Environment* env); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info__posix.cc new file mode 100644 index 000000000000..e0d82654c4e1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_channel__info__posix.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/common/channel_info_posix.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/chrome/common/channel_info_posix.cc +@@ -92,7 +92,7 @@ std::string GetChannelSuffixForDataDir() { + } + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::string GetChannelSuffixForExtraFlagsEnvVarName() { + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) + const auto channel_state = GetChannelImpl(); +@@ -118,7 +118,7 @@ std::string GetChannelSuffixForExtraFlagsEnvVarName() + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + std::string GetDesktopName(base::Environment* env) { + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) + // Google Chrome packaged as a snap is a special case: the application name diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.cc new file mode 100644 index 000000000000..18a04c2ad7dd --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.cc @@ -0,0 +1,83 @@ +--- src/3rdparty/chromium/chrome/common/chrome_features.cc.orig 2024-01-23 10:07:29 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_features.cc +@@ -74,7 +74,7 @@ BASE_FEATURE(kAppShimNotificationAttribution, + + // Enables the built-in DNS resolver. + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kAsyncDns, + "AsyncDns", + base::FEATURE_ENABLED_BY_DEFAULT +@@ -87,7 +87,7 @@ BASE_FEATURE(kAsyncDns, + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + // Enables or disables the Autofill survey triggered by opening a prompt to + // save address info. + BASE_FEATURE(kAutofillAddressSurvey, +@@ -105,7 +105,7 @@ BASE_FEATURE(kAutofillPasswordSurvey, + base::FEATURE_DISABLED_BY_DEFAULT); + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Enables the Restart background mode optimization. When all Chrome UI is + // closed and it goes in the background, allows to restart the browser to + // discard memory. +@@ -301,7 +301,7 @@ BASE_FEATURE(kDesktopPWAsEnforceWebAppSettingsPolicy, + base::FEATURE_ENABLED_BY_DEFAULT); + + // Enables or disables Desktop PWAs to be auto-started on OS login. +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kDesktopPWAsRunOnOsLogin, + "DesktopPWAsRunOnOsLogin", + base::FEATURE_ENABLED_BY_DEFAULT +@@ -335,7 +335,7 @@ BASE_FEATURE(kDesktopPWAsWebBundles, + base::FEATURE_DISABLED_BY_DEFAULT); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + // Controls whether Chrome Apps are supported. See https://crbug.com/1221251. + // If the feature is disabled, Chrome Apps continue to work. If enabled, Chrome + // Apps will not launch and will be marked in the UI as deprecated. +@@ -366,7 +366,7 @@ BASE_FEATURE(kDisruptiveNotificationPermissionRevocati + + // Enable DNS over HTTPS (DoH). + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kDnsOverHttps, + "DnsOverHttps", + base::FEATURE_ENABLED_BY_DEFAULT +@@ -387,7 +387,7 @@ const base::FeatureParam<bool> kDnsOverHttpsShowUiPara + const base::FeatureParam<bool> kDnsOverHttpsShowUiParam { + &kDnsOverHttps, "ShowUi", + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + true + #else + false +@@ -875,7 +875,7 @@ BASE_FEATURE(kKAnonymityServiceStorage, + "KAnonymityServiceStorage", + base::FEATURE_ENABLED_BY_DEFAULT); + +-#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) ++#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kLinuxLowMemoryMonitor, + "LinuxLowMemoryMonitor", + base::FEATURE_DISABLED_BY_DEFAULT); +@@ -888,7 +888,7 @@ constexpr base::FeatureParam<int> kLinuxLowMemoryMonit + &kLinuxLowMemoryMonitor, "critical_level", 255}; + #endif // BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kListWebAppsSwitch, + "ListWebAppsSwitch", + base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.h new file mode 100644 index 000000000000..033e2af8b846 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__features.h @@ -0,0 +1,45 @@ +--- src/3rdparty/chromium/chrome/common/chrome_features.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_features.h +@@ -61,13 +61,13 @@ BASE_DECLARE_FEATURE(kAppShimNotificationAttribution); + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAsyncDns); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillAddressSurvey); + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillCardSurvey); + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillPasswordSurvey); + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(CHROME_FEATURES) + BASE_DECLARE_FEATURE(kBackgroundModeAllowRestart); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +@@ -201,7 +201,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsTabStripSettings); + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kDesktopPWAsWebBundles); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kChromeAppsDeprecation); + COMPONENT_EXPORT(CHROME_FEATURES) + BASE_DECLARE_FEATURE(kKeepForceInstalledPreinstalledApps); +@@ -499,7 +499,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); + COMPONENT_EXPORT(CHROME_FEATURES) + BASE_DECLARE_FEATURE(kKAnonymityServiceStorage); + +-#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) ++#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kLinuxLowMemoryMonitor); + COMPONENT_EXPORT(CHROME_FEATURES) + extern const base::FeatureParam<int> kLinuxLowMemoryMonitorModerateLevel; +@@ -507,7 +507,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) + extern const base::FeatureParam<int> kLinuxLowMemoryMonitorCriticalLevel; + #endif // BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kListWebAppsSwitch); + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc new file mode 100644 index 000000000000..5ea4fc7401a8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc @@ -0,0 +1,84 @@ +--- src/3rdparty/chromium/chrome/common/chrome_paths.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_paths.cc +@@ -30,7 +30,7 @@ + #include "base/apple/foundation_util.h" + #endif + +-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) ++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) + #include "components/policy/core/common/policy_paths.h" + #endif + +@@ -49,14 +49,14 @@ + + namespace { + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // The path to the external extension <id>.json files. + // /usr/share seems like a good choice, see: http://www.pathname.com/fhs/ + const base::FilePath::CharType kFilepathSinglePrefExtensions[] = + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) +- FILE_PATH_LITERAL("/usr/share/google-chrome/extensions"); ++ FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); + #else +- FILE_PATH_LITERAL("/usr/share/chromium/extensions"); ++ FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); + #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) + + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +@@ -211,7 +211,7 @@ bool PathProvider(int key, base::FilePath* result) { + } + break; + case chrome::DIR_DEFAULT_DOWNLOADS_SAFE: +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (!GetUserDownloadsDirectorySafe(&cur)) { + return false; + } +@@ -504,7 +504,7 @@ bool PathProvider(int key, base::FilePath* result) { + return false; + } + break; +-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) ++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) + case chrome::DIR_POLICY_FILES: { + cur = base::FilePath(policy::kPolicyPath); + break; +@@ -515,7 +515,7 @@ bool PathProvider(int key, base::FilePath* result) { + #if BUILDFLAG(IS_CHROMEOS_ASH) || \ + ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \ + BUILDFLAG(CHROMIUM_BRANDING)) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + case chrome::DIR_USER_EXTERNAL_EXTENSIONS: { + if (!base::PathService::Get(chrome::DIR_USER_DATA, &cur)) { + return false; +@@ -524,7 +524,7 @@ bool PathProvider(int key, base::FilePath* result) { + break; + } + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + case chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS: { + cur = base::FilePath(kFilepathSinglePrefExtensions); + break; +@@ -571,7 +571,7 @@ bool PathProvider(int key, base::FilePath* result) { + break; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + case chrome::DIR_NATIVE_MESSAGING: + #if BUILDFLAG(IS_MAC) + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) +@@ -585,6 +585,9 @@ bool PathProvider(int key, base::FilePath* result) { + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) + cur = base::FilePath( + FILE_PATH_LITERAL("/etc/opt/chrome/native-messaging-hosts")); ++#elif BUILDFLAG(IS_FREEBSD) ++ cur = base::FilePath(FILE_PATH_LITERAL( ++ "/usr/local/etc/chromium/native-messaging-hosts")); + #else + cur = base::FilePath( + FILE_PATH_LITERAL("/etc/chromium/native-messaging-hosts")); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h new file mode 100644 index 000000000000..7a1e8b1854d5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/chrome/common/chrome_paths.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_paths.h +@@ -57,7 +57,7 @@ enum { + #if BUILDFLAG(IS_CHROMEOS_ASH) || \ + ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \ + BUILDFLAG(CHROMIUM_BRANDING)) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + DIR_USER_EXTERNAL_EXTENSIONS, // Directory for per-user external extensions + // on Chrome Mac and Chromium Linux. + // On Chrome OS, this path is used for OEM +@@ -65,7 +65,7 @@ enum { + // create it. + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + DIR_STANDALONE_EXTERNAL_EXTENSIONS, // Directory for 'per-extension' + // definition manifest files that + // describe extensions which are to be +@@ -123,7 +123,7 @@ enum { + // must be cleared on device reboot. + + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + DIR_NATIVE_MESSAGING, // System directory where native messaging host + // manifest files are stored. + DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths__internal.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths__internal.h new file mode 100644 index 000000000000..ef783e50e09d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths__internal.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/chrome_paths_internal.h.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_paths_internal.h +@@ -43,7 +43,7 @@ void GetUserCacheDirectory(const base::FilePath& profi + // Get the path to the user's documents directory. + bool GetUserDocumentsDirectory(base::FilePath* result); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Gets the path to a safe default download directory for a user. + bool GetUserDownloadsDirectorySafe(base::FilePath* result); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc new file mode 100644 index 000000000000..a75007a16709 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc @@ -0,0 +1,19 @@ +--- src/3rdparty/chromium/chrome/common/chrome_switches.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_switches.cc +@@ -849,14 +849,14 @@ const char kAllowNaClSocketAPI[] = "allow-nacl-socket- + #endif + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + const char kEnableNewAppMenuIcon[] = "enable-new-app-menu-icon"; + + // Causes the browser to launch directly in guest mode. + const char kGuest[] = "guest"; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Writes open and installed web apps for each profile to the specified file + // without launching a new browser window or tab. Pass a absolute file path to + // specify where to output the information. Can be used together with optional diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h new file mode 100644 index 000000000000..409d50bc04d6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h @@ -0,0 +1,17 @@ +--- src/3rdparty/chromium/chrome/common/chrome_switches.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/chrome_switches.h +@@ -269,12 +269,12 @@ extern const char kAllowNaClSocketAPI[]; + #endif + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + extern const char kEnableNewAppMenuIcon[]; + extern const char kGuest[]; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + extern const char kListApps[]; + extern const char kProfileBaseName[]; + extern const char kProfileManagementAttributes[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_extensions_permissions_chrome__permission__message__rules.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_extensions_permissions_chrome__permission__message__rules.cc new file mode 100644 index 000000000000..495166345ead --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_extensions_permissions_chrome__permission__message__rules.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/extensions/permissions/chrome_permission_message_rules.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/common/extensions/permissions/chrome_permission_message_rules.cc +@@ -287,7 +287,7 @@ int GetEnterpriseReportingPrivatePermissionMessageId() + #endif + #if BUILDFLAG(IS_WIN) + return IDS_EXTENSION_PROMPT_WARNING_ENTERPRISE_REPORTING_PRIVATE_ENABLED_WIN; +-#elif BUILDFLAG(IS_LINUX) or BUILDFLAG(IS_MAC) ++#elif BUILDFLAG(IS_LINUX) or BUILDFLAG(IS_MAC) or BUILDFLAG(IS_BSD) + return IDS_EXTENSION_PROMPT_WARNING_ENTERPRISE_REPORTING_PRIVATE_ENABLED_LINUX_AND_MACOS; + #else + return IDS_EXTENSION_PROMPT_WARNING_ENTERPRISE_REPORTING_PRIVATE; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__host__file__path.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__host__file__path.cc new file mode 100644 index 000000000000..1ae38d605706 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__host__file__path.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/media/cdm_host_file_path.cc.orig 2023-02-08 09:03:45 UTC ++++ src/3rdparty/chromium/chrome/common/media/cdm_host_file_path.cc +@@ -90,7 +90,7 @@ void AddCdmHostFilePaths( + cdm_host_file_paths->emplace_back(chrome_framework_path, + chrome_framework_sig_path); + +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + + base::FilePath chrome_exe_dir; + if (!base::PathService::Get(base::DIR_EXE, &chrome_exe_dir)) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.cc new file mode 100644 index 000000000000..e6eee8f508c5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.cc @@ -0,0 +1,52 @@ +--- src/3rdparty/chromium/chrome/common/media/cdm_registration.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/media/cdm_registration.cc +@@ -25,11 +25,11 @@ + + #if BUILDFLAG(ENABLE_WIDEVINE) + #include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "base/native_library.h" + #include "chrome/common/chrome_paths.h" + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "base/no_destructor.h" + #include "chrome/common/media/component_widevine_cdm_hint_file_linux.h" + #include "components/cdm/common/cdm_manifest.h" +@@ -56,7 +56,7 @@ using Robustness = content::CdmInfo::Robustness; + #if BUILDFLAG(ENABLE_WIDEVINE) + #if (BUILDFLAG(BUNDLE_WIDEVINE_CDM) || \ + BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)) && \ +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) + // Create a CdmInfo for a Widevine CDM, using |version|, |cdm_library_path|, and + // |capability|. + std::unique_ptr<content::CdmInfo> CreateWidevineCdmInfo( +@@ -101,7 +101,7 @@ std::unique_ptr<content::CdmInfo> CreateCdmInfoFromWid + // BUILDFLAG(IS_CHROMEOS)) + + #if BUILDFLAG(BUNDLE_WIDEVINE_CDM) && \ +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) + // On Linux/ChromeOS we have to preload the CDM since it uses the zygote + // sandbox. On Windows and Mac, the bundled CDM is handled by the component + // updater. +@@ -125,7 +125,7 @@ content::CdmInfo* GetBundledWidevine() { + // (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) + + #if BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT) && \ +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) + // This code checks to see if a component updated Widevine CDM can be found. If + // there is one and it looks valid, return the CdmInfo for that CDM. Otherwise + // return nullptr. +@@ -160,7 +160,7 @@ void AddSoftwareSecureWidevine(std::vector<content::Cd + /*supports_sub_key_systems=*/false, kWidevineCdmDisplayName, + kWidevineCdmType, base::Version(), base::FilePath()); + +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #if defined(WIDEVINE_CDM_MIN_GLIBC_VERSION) + base::Version glibc_version(gnu_get_libc_version()); + DCHECK(glibc_version.IsValid()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_component__widevine__cdm__hint__file__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_component__widevine__cdm__hint__file__linux.h new file mode 100644 index 000000000000..c5be9ae3d7d6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_media_component__widevine__cdm__hint__file__linux.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/media/component_widevine_cdm_hint_file_linux.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/media/component_widevine_cdm_hint_file_linux.h +@@ -15,7 +15,7 @@ + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) ++#if !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) + #error "This file only applies to desktop Linux and ChromeOS." + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_pref__names.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_pref__names.h new file mode 100644 index 000000000000..b83fa0c4e311 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_pref__names.h @@ -0,0 +1,82 @@ +--- src/3rdparty/chromium/chrome/common/pref_names.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/pref_names.h +@@ -1316,7 +1316,7 @@ inline constexpr char kUseAshProxy[] = "lacros.proxy.u + + // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + // Linux specific preference on whether we should match the system theme. + inline constexpr char kSystemTheme[] = "extensions.theme.system_theme"; + #endif +@@ -1442,7 +1442,7 @@ inline constexpr char kShowUpdatePromotionInfoBar[] = + "browser.show_update_promotion_info_bar"; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Boolean that is false if we should show window manager decorations. If + // true, we draw a custom chrome frame (thicker title bar and blue border). + inline constexpr char kUseCustomChromeFrame[] = "browser.custom_chrome_frame"; +@@ -1986,7 +1986,7 @@ inline constexpr char kDownloadLastCompleteTime[] = + "download.last_complete_time"; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + inline constexpr char kOpenPdfDownloadInSystemReader[] = + "download.open_pdf_in_system_reader"; + #endif +@@ -2392,14 +2392,14 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s + inline constexpr char kMediaCdmOriginData[] = "media.cdm.origin_data"; + #endif // BUILDFLAG(IS_WIN) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // A boolean pref to determine whether or not the network service is running + // sandboxed. + inline constexpr char kNetworkServiceSandboxEnabled[] = + "net.network_service_sandbox"; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Records whether the user has seen an HTTP auth "negotiate" header. + inline constexpr char kReceivedHttpAuthNegotiateHeader[] = + "net.received_http_auth_negotiate_headers"; +@@ -2477,7 +2477,7 @@ inline constexpr char kAmbientAuthenticationInPrivateM + inline constexpr char kBasicAuthOverHttpEnabled[] = + "auth.basic_over_http_enabled"; + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Boolean that specifies whether OK-AS-DELEGATE flag from KDC is respected + // along with kAuthNegotiateDelegateAllowlist. + inline constexpr char kAuthNegotiateDelegateByKdcPolicy[] = +@@ -3551,7 +3551,7 @@ inline constexpr char kFileOrDirectoryPickerWithoutGes + inline constexpr char kSandboxExternalProtocolBlocked[] = + "profile.sandbox_external_protocol_blocked"; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Boolean that indicates if system notifications are allowed to be used in + // place of Chrome notifications. + inline constexpr char kAllowSystemNotifications[] = +@@ -3607,7 +3607,7 @@ inline constexpr char kCACertificateManagementAllowed[ + inline constexpr char kChromeRootStoreEnabled[] = "chrome_root_store_enabled"; + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + inline constexpr char kEnforceLocalAnchorConstraintsEnabled[] = + "enforce_local_anchor_constraints_enabled"; + #endif +@@ -3921,7 +3921,7 @@ inline constexpr char kThrottleNonVisibleCrossOriginIf + inline constexpr char kNewBaseUrlInheritanceBehaviorAllowed[] = + "new_base_url_inheritance_behavior_allowed"; + +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // If this exists and is true, Chrome may run system DNS resolution out of the + // network process. If false, Chrome will run system DNS resolution in the + // network process. If non-existent, Chrome will decide where to run system DNS diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.cc new file mode 100644 index 000000000000..4e4c4256a7c0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/url_constants.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/url_constants.cc +@@ -560,7 +560,7 @@ const char kPhoneHubPermissionLearnMoreURL[] = + "https://support.google.com/chromebook/?p=multidevice"; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + const char kChromeAppsDeprecationLearnMoreURL[] = + "https://support.google.com/chrome/?p=chrome_app_deprecation"; + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.h new file mode 100644 index 000000000000..f6a5d2a1b0dd --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_url__constants.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/common/url_constants.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/chrome/common/url_constants.h +@@ -537,7 +537,7 @@ extern const char kOutdatedPluginLearnMoreURL[]; + extern const char kPhoneHubPermissionLearnMoreURL[]; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + + // "Learn more" URL for the chrome apps deprecation dialog. + extern const char kChromeAppsDeprecationLearnMoreURL[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc index d77fe97d96d2..b6a7bd6460f4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/common/webui_url_constants.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/common/webui_url_constants.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/common/webui_url_constants.cc -@@ -514,18 +514,18 @@ const char kOsUIVersionURL[] = "os://version"; +@@ -503,18 +503,18 @@ const char kOsUIVersionURL[] = "os://version"; const char kOsUIVersionURL[] = "os://version"; #endif @@ -22,7 +22,7 @@ const char kChromeUIDiscardsHost[] = "discards"; const char kChromeUIDiscardsURL[] = "chrome://discards/"; #endif -@@ -540,14 +540,14 @@ const char kChromeUILinuxProxyConfigHost[] = "linux-pr +@@ -529,14 +529,14 @@ const char kChromeUILinuxProxyConfigHost[] = "linux-pr #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ @@ -39,7 +39,7 @@ const char kChromeUIBrowserSwitchHost[] = "browser-switch"; const char kChromeUIBrowserSwitchURL[] = "chrome://browser-switch/"; const char kChromeUIEnterpriseProfileWelcomeHost[] = -@@ -564,7 +564,7 @@ const char kChromeUIProfilePickerStartupQuery[] = "sta +@@ -555,7 +555,7 @@ const char kChromeUIProfilePickerStartupQuery[] = "sta const char kChromeUIProfilePickerStartupQuery[] = "startup"; #endif @@ -48,7 +48,7 @@ defined(TOOLKIT_VIEWS)) || \ defined(USE_AURA) const char kChromeUITabModalConfirmDialogHost[] = "tab-modal-confirm-dialog"; -@@ -644,7 +644,7 @@ const char kPrivacySandboxSubPagePath[] = "/privacySan +@@ -637,7 +637,7 @@ const char kPrivacySandboxSubPagePath[] = "/privacySan #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ @@ -57,7 +57,7 @@ const char kChromeUIWebAppSettingsURL[] = "chrome://app-settings/"; const char kChromeUIWebAppSettingsHost[] = "app-settings"; #endif -@@ -880,7 +880,7 @@ const char* const kChromeDebugURLs[] = { +@@ -888,7 +888,7 @@ const char* const kChromeDebugURLs[] = { blink::kChromeUIGpuJavaCrashURL, kChromeUIJavaCrashURL, #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h index 595b89b1194f..0d4b951f5af2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/chrome/common/webui_url_constants.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/chrome/common/webui_url_constants.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/chrome/common/webui_url_constants.h -@@ -433,24 +433,24 @@ extern const char kOsUIVersionURL[]; +@@ -420,24 +420,24 @@ extern const char kOsUIVersionURL[]; extern const char kOsUIVersionURL[]; #endif @@ -29,7 +29,7 @@ extern const char kChromeUIWebAppSettingsURL[]; extern const char kChromeUIWebAppSettingsHost[]; #endif -@@ -465,14 +465,14 @@ extern const char kChromeUILinuxProxyConfigHost[]; +@@ -452,7 +452,7 @@ extern const char kChromeUILinuxProxyConfigHost[]; #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ @@ -38,15 +38,16 @@ extern const char kChromeUISandboxHost[]; #endif +@@ -464,7 +464,7 @@ extern const char kChromeUISearchEngineChoiceHost[]; // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) extern const char kChromeUIBrowserSwitchHost[]; extern const char kChromeUIBrowserSwitchURL[]; extern const char kChromeUIEnterpriseProfileWelcomeHost[]; -@@ -486,7 +486,7 @@ extern const char kChromeUIProfilePickerStartupQuery[] +@@ -480,7 +480,7 @@ extern const char kChromeUIProfilePickerStartupQuery[] extern const char kChromeUIProfilePickerStartupQuery[]; #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_renderer_chrome__render__frame__observer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_renderer_chrome__render__frame__observer.cc new file mode 100644 index 000000000000..92600c40052b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_renderer_chrome__render__frame__observer.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/renderer/chrome_render_frame_observer.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/renderer/chrome_render_frame_observer.cc +@@ -349,7 +349,7 @@ void ChromeRenderFrameObserver::OnDestruct() { + + void ChromeRenderFrameObserver::DraggableRegionsChanged() { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Only the main frame is allowed to control draggable regions, to avoid other + // frames manipulate the regions in the browser process. + if (!render_frame()->IsMainFrame()) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_BUILD.gn new file mode 100644 index 000000000000..67fbfe0dbd94 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/chrome/test/BUILD.gn.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/chrome/test/BUILD.gn +@@ -11028,7 +11028,7 @@ test("chrome_app_unittests") { + "//components/heap_profiling/in_process", + "//components/safe_browsing:buildflags", + ] +- if (!is_fuchsia && !is_mac) { ++ if (!is_fuchsia && !is_mac && !is_bsd) { + deps += [ "//third_party/breakpad:client" ] + } + if (is_android) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome__launcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome__launcher.cc new file mode 100644 index 000000000000..3445ef9a0d31 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome__launcher.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/chrome/test/chromedriver/chrome_launcher.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/chrome/test/chromedriver/chrome_launcher.cc +@@ -69,6 +69,7 @@ + #include <fcntl.h> + #include <sys/stat.h> + #include <sys/types.h> ++#include <sys/wait.h> + #include <unistd.h> + #elif BUILDFLAG(IS_WIN) + #include <windows.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome_chrome__finder.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome_chrome__finder.cc new file mode 100644 index 000000000000..0bdc905691f4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome_chrome__finder.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/chrome/test/chromedriver/chrome/chrome_finder.cc.orig 2023-08-04 12:03:57 UTC ++++ src/3rdparty/chromium/chrome/test/chromedriver/chrome/chrome_finder.cc +@@ -57,7 +57,7 @@ void GetApplicationDirs(std::vector<base::FilePath>* l + installation_locations[i].Append(L"Chromium\\Application")); + } + } +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + void GetApplicationDirs(std::vector<base::FilePath>* locations) { + // TODO: Respect users' PATH variables. + // Until then, we use an approximation of the most common defaults. +@@ -157,7 +157,7 @@ bool FindChrome(base::FilePath* browser_exe) { + base::FilePath(chrome::kGoogleChromeForTestingBrowserProcessExecutablePath), + base::FilePath(chrome::kGoogleChromeBrowserProcessExecutablePath), + base::FilePath(chrome::kChromiumBrowserProcessExecutablePath), +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + base::FilePath(chrome::kBrowserProcessExecutablePath), + base::FilePath("chrome"), // Chrome for Testing or Google Chrome + base::FilePath("google-chrome"), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill__payments__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill__payments__strings.grdp index 2b6ae7227567..1e0b53511ea1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill__payments__strings.grdp +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill__payments__strings.grdp @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/autofill_payments_strings.grdp.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/components/autofill_payments_strings.grdp.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/autofill_payments_strings.grdp -@@ -118,7 +118,7 @@ +@@ -130,7 +130,7 @@ <message name="IDS_AUTOFILL_FIX_FLOW_PROMPT_SAVE_CARD_LABEL" desc="Text to show on the button to save the card to Google when the fix flow dialog is shown after the Autofill save card prompt." formatter_data="android_java"> Save card </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_contact__info__sync__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_contact__info__sync__util.cc new file mode 100644 index 000000000000..b80b75fc5ee4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_contact__info__sync__util.cc @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/components/autofill/core/browser/contact_info_sync_util.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/autofill/core/browser/contact_info_sync_util.cc +@@ -174,9 +174,15 @@ class ContactInfoProfileSetter { + CHECK(observations.empty()); + for (const sync_pb::ContactInfoSpecifics::Observation& proto_observation : + proto_observations) { ++#if defined(__clang__) && (__clang_major__ >= 15) + observations.emplace_back(proto_observation.type(), + ProfileTokenQuality::FormSignatureHash( + proto_observation.form_hash())); ++#else ++ observations.emplace_back() = { static_cast<unsigned char>(proto_observation.type()), ++ ProfileTokenQuality::FormSignatureHash( ++ proto_observation.form_hash()) }; ++#endif + } + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_personal__data__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_personal__data__manager.cc index 2b1ac7181e5a..69dc752cebd1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_personal__data__manager.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_personal__data__manager.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/autofill/core/browser/personal_data_manager.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/autofill/core/browser/personal_data_manager.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/autofill/core/browser/personal_data_manager.cc -@@ -2253,7 +2253,8 @@ bool PersonalDataManager::ShouldShowCardsFromAccountOp +@@ -2492,7 +2492,8 @@ bool PersonalDataManager::ShouldShowCardsFromAccountOp // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ @@ -9,4 +9,4 @@ + BUILDFLAG(IS_BSD) // This option should only be shown for users that have not enabled the Sync // Feature and that have server credit cards available. - if (!sync_service_ || sync_service_->IsSyncFeatureEnabled() || + // TODO(crbug.com/1462552): Simplify once ConsentLevel::kSync and diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_webdata_autofill__sync__bridge__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_webdata_autofill__sync__bridge__util.cc new file mode 100644 index 000000000000..8e4f33f7ee9e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_browser_webdata_autofill__sync__bridge__util.cc @@ -0,0 +1,22 @@ +--- src/3rdparty/chromium/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc +@@ -553,11 +553,19 @@ ServerCvc AutofillWalletCvcStructDataFromWalletCredent + base::StringToInt64(wallet_credential_specifics.instrument_id(), + &instrument_id); + ++#if defined(__clang__) && (__clang_major__ >= 15) + return ServerCvc( + instrument_id, base::UTF8ToUTF16(wallet_credential_specifics.cvc()), + base::Time::UnixEpoch() + + base::Milliseconds(wallet_credential_specifics + .last_updated_time_unix_epoch_millis())); ++#else ++ return ServerCvc( { ++ instrument_id, base::UTF8ToUTF16(wallet_credential_specifics.cvc()), ++ base::Time::UnixEpoch() + ++ base::Milliseconds(wallet_credential_specifics ++ .last_updated_time_unix_epoch_millis()) }); ++#endif + } + + VirtualCardUsageData VirtualCardUsageDataFromUsageSpecifics( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.cc index 175dce1c3881..a9efef1f1241 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/autofill/core/common/autofill_payments_features.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/autofill/core/common/autofill_payments_features.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/autofill/core/common/autofill_payments_features.cc -@@ -270,7 +270,7 @@ const base::FeatureParam<int> +@@ -281,7 +281,7 @@ BASE_FEATURE(kEnablePixPayments, bool ShouldShowImprovedUserConsentForCreditCardSave() { // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__util.cc index 45ed3e6c7a57..3050c1af8432 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__util.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/autofill/core/common/autofill_util.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/autofill/core/common/autofill_util.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/autofill/core/common/autofill_util.cc -@@ -156,7 +156,7 @@ bool SanitizedFieldIsEmpty(const std::u16string& value +@@ -153,7 +153,7 @@ bool SanitizedFieldIsEmpty(const std::u16string& value bool ShouldAutoselectFirstSuggestionOnArrowDown() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_commerce__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_commerce__strings.grdp new file mode 100644 index 000000000000..c2c2bfd11d9c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_commerce__strings.grdp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/commerce_strings.grdp.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/commerce_strings.grdp +@@ -292,7 +292,7 @@ + <message name="IDS_PRICE_HISTORY_DESCRIPTION" desc="The description of the Price History section in the Shopping Insights side panel explaining how the prices are gathered."> + Typical prices are based on stores across the web over the past 90 days. + </message> +- <if expr="is_win or is_linux"> ++ <if expr="is_win or is_posix"> + <then> + <message name="IDS_PRICE_HISTORY_GRAPH_ACCESSIBILITY" desc="Accessibility string for the price history graph indicating how users can review the price changes on the graph."> + Browse mode, you can change to Forms mode to use the left/right arrow to review price changes on the graph diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__chromium__strings.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__chromium__strings.grd index 33e63f90895e..e9a83b5cca65 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__chromium__strings.grd +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__chromium__strings.grd @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/components_chromium_strings.grd.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/components/components_chromium_strings.grd.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/components/components_chromium_strings.grd -@@ -220,7 +220,7 @@ +@@ -226,7 +226,7 @@ </message> </if> <!-- The ChromeOS version of this string is defined in //components/error_page_strings.grdp. --> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__google__chrome__strings.grd b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__google__chrome__strings.grd index d3c31feb7f34..9e9e4e219df3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__google__chrome__strings.grd +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_components__google__chrome__strings.grd @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/components_google_chrome_strings.grd.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/components/components_google_chrome_strings.grd.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/components/components_google_chrome_strings.grd -@@ -220,7 +220,7 @@ +@@ -226,7 +226,7 @@ </message> </if> <!-- The ChromeOS version of this string is defined in //components/error_page_strings.grdp. --> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_BUILD.gn index 0a45f6bb117d..0df6ae034759 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/crash/core/app/BUILD.gn.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/components/crash/core/app/BUILD.gn.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/crash/core/app/BUILD.gn -@@ -52,7 +52,7 @@ static_library("app") { +@@ -72,7 +72,7 @@ static_library("app") { "crashpad.h", ] @@ -9,7 +9,7 @@ sources += [ "crashpad_linux.cc" ] } -@@ -65,6 +65,10 @@ static_library("app") { +@@ -85,6 +85,10 @@ static_library("app") { ] } @@ -20,7 +20,7 @@ defines = [ "CRASH_IMPLEMENTATION" ] public_deps = [ ":lib" ] -@@ -96,7 +100,7 @@ static_library("app") { +@@ -113,7 +117,7 @@ static_library("app") { libs = [ "log" ] } @@ -29,7 +29,7 @@ deps += [ "//base:base_static", "//components/crash/core/common", -@@ -224,11 +228,6 @@ if (is_mac || is_android || is_linux || is_chromeos) { +@@ -241,11 +245,6 @@ if (is_mac || is_android || is_linux || is_chromeos) { # define custom UserStreamDataSources. executable("chrome_crashpad_handler") { sources = [ "chrome_crashpad_handler.cc" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_chrome__crashpad__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_chrome__crashpad__handler.cc new file mode 100644 index 000000000000..c8ec0dfb2bf6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_app_chrome__crashpad__handler.cc @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/components/crash/core/app/chrome_crashpad_handler.cc.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/components/crash/core/app/chrome_crashpad_handler.cc +@@ -6,5 +6,9 @@ + extern "C" int CrashpadHandlerMain(int argc, char* argv[]); + + int main(int argc, char* argv[]) { ++#if defined(__OpenBSD__) || defined(__FreeBSD__) ++ return -1; ++#else + return CrashpadHandlerMain(argc, argv); ++#endif + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_browser_crash__upload__list__crashpad.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_browser_crash__upload__list__crashpad.cc new file mode 100644 index 000000000000..52f8cda11e33 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_browser_crash__upload__list__crashpad.cc @@ -0,0 +1,26 @@ +--- src/3rdparty/chromium/components/crash/core/browser/crash_upload_list_crashpad.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/crash/core/browser/crash_upload_list_crashpad.cc +@@ -38,7 +38,9 @@ CrashUploadListCrashpad::~CrashUploadListCrashpad() = + std::vector<std::unique_ptr<UploadList::UploadInfo>> + CrashUploadListCrashpad::LoadUploadList() { + std::vector<crash_reporter::Report> reports; ++#if !BUILDFLAG(IS_BSD) + crash_reporter::GetReports(&reports); ++#endif + + std::vector<std::unique_ptr<UploadInfo>> uploads; + for (const crash_reporter::Report& report : reports) { +@@ -52,9 +54,13 @@ CrashUploadListCrashpad::LoadUploadList() { + + void CrashUploadListCrashpad::ClearUploadList(const base::Time& begin, + const base::Time& end) { ++#if !BUILDFLAG(IS_BSD) + crash_reporter::ClearReportsBetween(begin, end); ++#endif + } + + void CrashUploadListCrashpad::RequestSingleUpload(const std::string& local_id) { ++#if !BUILDFLAG(IS_BSD) + crash_reporter::RequestSingleCrashUpload(local_id); ++#endif + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn index f1bbd08b7b3a..71e24e436073 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/crash/core/common/BUILD.gn.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/components/crash/core/common/BUILD.gn.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/components/crash/core/common/BUILD.gn -@@ -8,7 +8,7 @@ import("//components/gwp_asan/buildflags/buildflags.gn +@@ -9,7 +9,7 @@ import("//components/gwp_asan/buildflags/buildflags.gn declare_args() { # If set to true, this will stub out and disable the entire crash key system. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_mock__signals__aggregator.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_mock__signals__aggregator.h new file mode 100644 index 000000000000..c10e886469e8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_mock__signals__aggregator.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/mock_signals_aggregator.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/mock_signals_aggregator.h +@@ -17,7 +17,7 @@ class MockSignalsAggregator : public SignalsAggregator + MockSignalsAggregator(); + ~MockSignalsAggregator() override; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + MOCK_METHOD(void, + GetSignalsForUser, + (const UserContext&, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator.h new file mode 100644 index 000000000000..8945a39bfae4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator.h +@@ -22,7 +22,7 @@ class SignalsAggregator : public KeyedService { + + ~SignalsAggregator() override = default; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Will asynchronously collect signals whose names are specified in the + // `request` object, and will also use a `user_context` to validate that the + // user has permissions to the device's signals. Invokes `callback` with the diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.cc new file mode 100644 index 000000000000..b969d8274da0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator_impl.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator_impl.cc +@@ -65,7 +65,7 @@ SignalsAggregatorImpl::SignalsAggregatorImpl( + + SignalsAggregatorImpl::~SignalsAggregatorImpl() = default; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void SignalsAggregatorImpl::GetSignalsForUser( + const UserContext& user_context, + const SignalsAggregationRequest& request, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.h new file mode 100644 index 000000000000..16687e49a244 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_signals__aggregator__impl.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator_impl.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/signals_aggregator_impl.h +@@ -29,7 +29,7 @@ class SignalsAggregatorImpl : public SignalsAggregator + ~SignalsAggregatorImpl() override; + + // SignalsAggregator: +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void GetSignalsForUser(const UserContext& user_context, + const SignalsAggregationRequest& request, + GetSignalsCallback callback) override; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service.h new file mode 100644 index 000000000000..7e4320d11974 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service.h +@@ -57,7 +57,7 @@ class UserPermissionService : public KeyedService { + // missing. + virtual bool ShouldCollectConsent() const = 0; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Will verify whether context-aware signals can be collected + // on behalf of the user represented by `user_context`. Returns `kGranted` if + // collection is allowed. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.cc new file mode 100644 index 000000000000..64bcd72f3ed5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service_impl.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service_impl.cc +@@ -92,7 +92,7 @@ bool UserPermissionServiceImpl::ShouldCollectConsent() + consent_required_by_dependent_policy; + } + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + UserPermission UserPermissionServiceImpl::CanUserCollectSignals( + const UserContext& user_context) const { + // Return "unknown user" if no user ID was given. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.h new file mode 100644 index 000000000000..d13ac5ce39bc --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_browser_user__permission__service__impl.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service_impl.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/device_signals/core/browser/user_permission_service_impl.h +@@ -39,7 +39,7 @@ class UserPermissionServiceImpl : public UserPermissio + + // UserPermissionService: + bool ShouldCollectConsent() const override; +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + UserPermission CanUserCollectSignals( + const UserContext& user_context) const override; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.cc new file mode 100644 index 000000000000..e4133bba0bd3 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/common/signals_features.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/components/device_signals/core/common/signals_features.cc +@@ -46,7 +46,7 @@ bool IsNewFunctionEnabled(NewEvFunction new_ev_functio + } + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + // Enables the triggering of device signals consent dialog when conditions met + // This feature also requires UnmanagedDeviceSignalsConsentFlowEnabled policy to + // be enabled diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.h new file mode 100644 index 000000000000..5dc4cb05216f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_common_signals__features.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/common/signals_features.h.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/components/device_signals/core/common/signals_features.h +@@ -28,7 +28,7 @@ enum class NewEvFunction { kFileSystemInfo, kSettings, + bool IsNewFunctionEnabled(NewEvFunction new_ev_function); + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + BASE_DECLARE_FEATURE(kDeviceSignalsConsentDialog); + + // Returns true if device signals consent dialog has been enabled for diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_system__signals_platform__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_system__signals_platform__delegate.cc new file mode 100644 index 000000000000..ba31ef8c88fa --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_device__signals_core_system__signals_platform__delegate.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/device_signals/core/system_signals/platform_delegate.cc.orig 2022-09-24 10:57:32 UTC ++++ src/3rdparty/chromium/components/device_signals/core/system_signals/platform_delegate.cc +@@ -11,7 +11,7 @@ namespace device_signals { + + bool CustomFilePathComparator::operator()(const base::FilePath& a, + const base::FilePath& b) const { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On Linux, the file system is case sensitive. + return a < b; + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_embedder__support_user__agent__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_embedder__support_user__agent__utils.cc new file mode 100644 index 000000000000..df08ebcae4e2 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_embedder__support_user__agent__utils.cc @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/components/embedder_support/user_agent_utils.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/embedder_support/user_agent_utils.cc +@@ -432,6 +432,9 @@ std::string GetPlatformForUAMetadata() { + # else + return "Chromium OS"; + # endif ++#elif BUILDFLAG(IS_BSD) ++ // The internet is weird... ++ return "Linux"; + #else + return std::string(version_info::GetOSType()); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.cc new file mode 100644 index 000000000000..45d8fe3c9b29 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/event_constants.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/event_constants.cc +@@ -11,7 +11,7 @@ namespace feature_engagement { + namespace events { + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + const char kNewTabOpened[] = "new_tab_opened"; + const char kSixthTabOpened[] = "sixth_tab_opened"; + const char kTabGroupCreated[] = "tab_group_created"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.h new file mode 100644 index 000000000000..1c61f2507d9f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/event_constants.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/event_constants.h +@@ -14,7 +14,7 @@ namespace events { + + // Desktop + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + // The user has explicitly opened a new tab via an entry point from inside of + // Chrome. + extern const char kNewTabOpened[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__configurations.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__configurations.cc new file mode 100644 index 000000000000..eacb45825e24 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__configurations.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/feature_configurations.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/feature_configurations.cc +@@ -46,7 +46,7 @@ FeatureConfig CreateAlwaysTriggerConfig(const base::Fe + absl::optional<FeatureConfig> GetClientSideFeatureConfig( + const base::Feature* feature) { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (kIPHPasswordsAccountStorageFeature.name == feature->name) { + absl::optional<FeatureConfig> config = FeatureConfig(); + config->valid = true; +@@ -1336,7 +1336,8 @@ absl::optional<FeatureConfig> GetClientSideFeatureConf + #endif // BUILDFLAG(IS_ANDROID) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + + if (kIPHAutofillExternalAccountProfileSuggestionFeature.name == + feature->name) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.cc new file mode 100644 index 000000000000..8dd1aa2f62ed --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/feature_constants.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/feature_constants.cc +@@ -21,7 +21,7 @@ BASE_FEATURE(kUseClientConfigIPH, + BASE_FEATURE(kIPHDummyFeature, "IPH_Dummy", base::FEATURE_DISABLED_BY_DEFAULT); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kIPHAutofillFeedbackNewBadgeFeature, + "IPH_AutofillFeedbackNewBadge", + base::FEATURE_DISABLED_BY_DEFAULT); +@@ -519,7 +519,8 @@ BASE_FEATURE(kIPHiOSPromoPasswordManagerWidgetFeature, + #endif // BUILDFLAG(IS_IOS) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + BASE_FEATURE(kIPHAutofillExternalAccountProfileSuggestionFeature, + "IPH_AutofillExternalAccountProfileSuggestion", + base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.h new file mode 100644 index 000000000000..67ad6e46d739 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__constants.h @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/feature_constants.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/feature_constants.h +@@ -23,7 +23,7 @@ BASE_DECLARE_FEATURE(kUseClientConfigIPH); + BASE_DECLARE_FEATURE(kIPHDummyFeature); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + BASE_DECLARE_FEATURE(kIPHAutofillFeedbackNewBadgeFeature); + BASE_DECLARE_FEATURE(kIPHBatterySaverModeFeature); + BASE_DECLARE_FEATURE(kIPHCompanionSidePanelFeature); +@@ -211,7 +211,8 @@ BASE_DECLARE_FEATURE(kIPHiOSPromoPasswordManagerWidget + #endif // BUILDFLAG(IS_IOS) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + BASE_DECLARE_FEATURE(kIPHAutofillExternalAccountProfileSuggestionFeature); + BASE_DECLARE_FEATURE(kIPHAutofillVirtualCardCVCSuggestionFeature); + BASE_DECLARE_FEATURE(kIPHAutofillVirtualCardSuggestionFeature); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.cc new file mode 100644 index 000000000000..17611addcc17 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/feature_list.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/feature_list.cc +@@ -139,7 +139,7 @@ const base::Feature* const kAllFeatures[] = { + &kIPHiOSPromoPasswordManagerWidgetFeature, + #endif // BUILDFLAG(IS_IOS) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + &kIPHAutofillFeedbackNewBadgeFeature, + &kIPHBatterySaverModeFeature, + &kIPHCompanionSidePanelFeature, +@@ -186,7 +186,8 @@ const base::Feature* const kAllFeatures[] = { + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + &kIPHAutofillExternalAccountProfileSuggestionFeature, + &kIPHAutofillVirtualCardCVCSuggestionFeature, + &kIPHAutofillVirtualCardSuggestionFeature, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.h new file mode 100644 index 000000000000..f39c82c3a1b9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feature__engagement_public_feature__list.h @@ -0,0 +1,40 @@ +--- src/3rdparty/chromium/components/feature_engagement/public/feature_list.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/feature_engagement/public/feature_list.h +@@ -259,7 +259,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSPromoPasswordManagerWidg + #endif // BUILDFLAG(IS_IOS) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + DEFINE_VARIATION_PARAM(kIPHAutofillFeedbackNewBadgeFeature, + "IPH_AutofillFeedbackNewBadge"); + DEFINE_VARIATION_PARAM(kIPHBatterySaverModeFeature, "IPH_BatterySaverMode"); +@@ -335,7 +335,8 @@ DEFINE_VARIATION_PARAM(kIPHBackNavigationMenuFeature, + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + DEFINE_VARIATION_PARAM(kIPHAutofillExternalAccountProfileSuggestionFeature, + "IPH_AutofillExternalAccountProfileSuggestion"); + DEFINE_VARIATION_PARAM(kIPHAutofillVirtualCardCVCSuggestionFeature, +@@ -541,7 +542,7 @@ constexpr flags_ui::FeatureEntry::FeatureVariation + VARIATION_ENTRY(kIPHiOSPromoPostRestoreDefaultBrowserFeature), + VARIATION_ENTRY(kIPHiOSPromoPasswordManagerWidgetFeature), + #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + VARIATION_ENTRY(kIPHAutofillFeedbackNewBadgeFeature), + VARIATION_ENTRY(kIPHBatterySaverModeFeature), + VARIATION_ENTRY(kIPHCompanionSidePanelFeature), +@@ -589,7 +590,8 @@ constexpr flags_ui::FeatureEntry::FeatureVariation + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ ++ BUILDFLAG(IS_BSD) + VARIATION_ENTRY(kIPHAutofillExternalAccountProfileSuggestionFeature), + VARIATION_ENTRY(kIPHAutofillVirtualCardCVCSuggestionFeature), + VARIATION_ENTRY(kIPHAutofillVirtualCardSuggestionFeature), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_proto_v2_wire_version.proto b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_proto_v2_wire_version.proto new file mode 100644 index 000000000000..626494912842 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_proto_v2_wire_version.proto @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/components/feed/core/proto/v2/wire/version.proto.orig 2021-05-12 22:05:49 UTC ++++ src/3rdparty/chromium/components/feed/core/proto/v2/wire/version.proto +@@ -25,8 +25,8 @@ message Version { + BETA = 3; + RELEASE = 4; + } +- optional int32 major = 1; +- optional int32 minor = 2; ++ optional int32 gmajor = 1; ++ optional int32 gminor = 2; + optional int32 build = 3; + optional int32 revision = 4; + optional Architecture architecture = 5; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_v2_proto__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_v2_proto__util.cc new file mode 100644 index 000000000000..076274fd9203 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_feed_core_v2_proto__util.cc @@ -0,0 +1,24 @@ +--- src/3rdparty/chromium/components/feed/core/v2/proto_util.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/feed/core/v2/proto_util.cc +@@ -93,8 +93,8 @@ feedwire::Version GetPlatformVersionMessage() { + + int32_t major, minor, revision; + base::SysInfo::OperatingSystemVersionNumbers(&major, &minor, &revision); +- result.set_major(major); +- result.set_minor(minor); ++ result.set_gmajor(major); ++ result.set_gminor(minor); + result.set_revision(revision); + #if BUILDFLAG(IS_ANDROID) + result.set_api_version(base::android::BuildInfo::GetInstance()->sdk_int()); +@@ -109,8 +109,8 @@ feedwire::Version GetAppVersionMessage(const ChromeInf + // Chrome's version is in the format: MAJOR,MINOR,BUILD,PATCH. + const std::vector<uint32_t>& numbers = chrome_info.version.components(); + if (numbers.size() > 3) { +- result.set_major(static_cast<int32_t>(numbers[0])); +- result.set_minor(static_cast<int32_t>(numbers[1])); ++ result.set_gmajor(static_cast<int32_t>(numbers[0])); ++ result.set_gminor(static_cast<int32_t>(numbers[1])); + result.set_build(static_cast<int32_t>(numbers[2])); + result.set_revision(static_cast<int32_t>(numbers[3])); + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_flags__ui_flags__state.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_flags__ui_flags__state.cc index 56dd7feeee6c..4c38ab9ecbd8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_flags__ui_flags__state.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_flags__ui_flags__state.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/flags_ui/flags_state.cc.orig 2022-07-22 17:30:31 UTC +--- src/3rdparty/chromium/components/flags_ui/flags_state.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/flags_ui/flags_state.cc -@@ -672,7 +672,7 @@ unsigned short FlagsState::GetCurrentPlatform() { +@@ -741,7 +741,7 @@ unsigned short FlagsState::GetCurrentPlatform() { return kOsCrOS; #elif BUILDFLAG(IS_CHROMEOS_LACROS) return kOsLacros; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_BUILD.gn new file mode 100644 index 000000000000..07b7216ee88b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/gwp_asan/BUILD.gn.orig 2022-11-30 08:12:58 UTC ++++ src/3rdparty/chromium/components/gwp_asan/BUILD.gn +@@ -15,7 +15,7 @@ test("gwp_asan_unittests") { + "//testing/gtest", + "//third_party/boringssl", + ] +- if (is_win || is_mac || is_linux || is_chromeos || is_android) { ++ if ((is_win || is_mac || is_linux || is_chromeos || is_android) && !is_bsd) { + deps += [ + "//components/gwp_asan/client:unit_tests", + "//components/gwp_asan/crash_handler:unit_tests", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_guarded__page__allocator__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_guarded__page__allocator__posix.cc new file mode 100644 index 000000000000..b9a40268566b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_guarded__page__allocator__posix.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/components/gwp_asan/client/guarded_page_allocator_posix.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/gwp_asan/client/guarded_page_allocator_posix.cc +@@ -35,8 +35,9 @@ void GuardedPageAllocator::MarkPageInaccessible(void* + // mmap() a PROT_NONE page over the address to release it to the system, if + // we used mprotect() here the system would count pages in the quarantine + // against the RSS. ++ // MAP_ANONYMOUS requires the fd to be -1 on !linux + void* err = mmap(ptr, state_.page_size, PROT_NONE, +- MAP_FIXED | MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); ++ MAP_FIXED | MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + PCHECK(err == ptr) << "mmap"; + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_gwp__asan.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_gwp__asan.cc new file mode 100644 index 000000000000..45ec484e308d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_client_gwp__asan.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/gwp_asan/client/gwp_asan.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/gwp_asan/client/gwp_asan.cc +@@ -64,7 +64,7 @@ constexpr bool kCpuIs64Bit = + // ProcessSamplingBoost is the multiplier to increase the + // ProcessSamplingProbability in scenarios where we want to perform additional + // testing (e.g., on canary/dev builds). +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + constexpr int kDefaultMaxAllocations = 50; + constexpr int kDefaultMaxMetadata = 210; + constexpr int kDefaultTotalPages = kCpuIs64Bit ? 2048 : kDefaultMaxMetadata * 2; +@@ -84,7 +84,7 @@ constexpr int kDefaultProcessSamplingBoost2 = 10; + // BUILDFLAG(IS_FUCHSIA) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + constexpr base::FeatureState kDefaultEnabled = base::FEATURE_ENABLED_BY_DEFAULT; + #else + constexpr base::FeatureState kDefaultEnabled = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_crash__handler_crash__analyzer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_crash__handler_crash__analyzer.cc new file mode 100644 index 000000000000..2e677802856f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_gwp__asan_crash__handler_crash__analyzer.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/gwp_asan/crash_handler/crash_analyzer.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/components/gwp_asan/crash_handler/crash_analyzer.cc +@@ -30,7 +30,7 @@ + #include "third_party/crashpad/crashpad/snapshot/process_snapshot.h" + #include "third_party/crashpad/crashpad/util/process/process_memory.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include <signal.h> + #elif BUILDFLAG(IS_APPLE) + #include <mach/exception_types.h> +@@ -90,7 +90,7 @@ bool CrashAnalyzer::GetExceptionInfo( + + crashpad::VMAddress CrashAnalyzer::GetAccessAddress( + const crashpad::ExceptionSnapshot& exception) { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + if (exception.Exception() == SIGSEGV || exception.Exception() == SIGBUS) + return exception.ExceptionAddress(); + #elif BUILDFLAG(IS_APPLE) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.cc new file mode 100644 index 000000000000..ce4ef2e65108 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/live_caption/caption_util.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/live_caption/caption_util.cc +@@ -145,7 +145,7 @@ bool IsLiveCaptionFeatureSupported() { + return false; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Check if the CPU has the required instruction set to run the Speech + // On-Device API (SODA) library. + static bool has_sse41 = base::CPU().has_sse41(); +@@ -167,7 +167,7 @@ std::string GetCaptionSettingsUrl() { + return "chrome://os-settings/audioAndCaptions"; + #endif // BUILDFLAG(IS_CHROMEOS) + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return "chrome://settings/captions"; + #endif // BUILDFLAG(IS_LINUX) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.h new file mode 100644 index 000000000000..8a704f098a16 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_live__caption_caption__util.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/live_caption/caption_util.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/live_caption/caption_util.h +@@ -14,7 +14,7 @@ class PrefService; + namespace captions { + + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + extern const char kCaptionSettingsUrl[]; + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || + // BUILDFLAG(IS_MAC) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_management__strings.grdp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_management__strings.grdp new file mode 100644 index 000000000000..e45b81485e41 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_management__strings.grdp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/management_strings.grdp.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/management_strings.grdp +@@ -346,7 +346,7 @@ + </if> + + <!-- Strings related to Chrome Enterprise Device Signals Sharing --> +- <if expr="is_win or is_linux or is_macosx"> ++ <if expr="is_win or is_posix or is_macosx"> + <message name="IDS_MANAGEMENT_DEVICE_SIGNALS_DISCLOSURE" desc="Disclosure message explaining that device signals can be shared."> + Information about your browser, OS, device, installed software, and files + </message> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_media__router_common_providers_cast_channel_cast__message__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_media__router_common_providers_cast_channel_cast__message__util.cc new file mode 100644 index 000000000000..68fff7e336fe --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_media__router_common_providers_cast_channel_cast__message__util.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/media_router/common/providers/cast/channel/cast_message_util.cc.orig 2022-11-30 08:12:58 UTC ++++ src/3rdparty/chromium/components/media_router/common/providers/cast/channel/cast_message_util.cc +@@ -170,7 +170,7 @@ int GetVirtualConnectPlatformValue() { + return 4; + #elif BUILDFLAG(IS_CHROMEOS_ASH) + return 5; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + return 6; + #else + return 0; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_drive__metrics__provider__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_drive__metrics__provider__linux.cc index d4aadea8dca0..0fde59efeb73 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_drive__metrics__provider__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_drive__metrics__provider__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/components/metrics/drive_metrics_provider_linux.cc.orig 2021-04-14 18:40:59 UTC +--- src/3rdparty/chromium/components/metrics/drive_metrics_provider_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/metrics/drive_metrics_provider_linux.cc @@ -4,7 +4,13 @@ #include "components/metrics/drive_metrics_provider.h" -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) +#include <sys/types.h> +#define MAJOR(dev) major(dev) +#define MINOR(dev) minor(dev) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_metrics__log.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_metrics__log.cc index 76142e0ff3bf..baa13d124508 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_metrics__log.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_metrics_metrics__log.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/components/metrics/metrics_log.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/components/metrics/metrics_log.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/metrics/metrics_log.cc @@ -53,7 +53,7 @@ #include "base/win/current_module.h" @@ -9,7 +9,7 @@ #include "base/environment.h" #include "base/nix/xdg_util.h" #endif -@@ -123,7 +123,7 @@ void RecordCurrentTime( +@@ -139,7 +139,7 @@ void RecordCurrentTime( } } @@ -18,7 +18,7 @@ metrics::SystemProfileProto::OS::XdgSessionType ToProtoSessionType( base::nix::SessionType session_type) { switch (session_type) { -@@ -375,7 +375,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -399,7 +399,7 @@ void MetricsLog::RecordCoreSystemProfile( // OperatingSystemVersion refers to the ChromeOS release version. #if BUILDFLAG(IS_CHROMEOS_ASH) os->set_kernel_version(base::SysInfo::KernelVersion()); @@ -27,7 +27,7 @@ // Linux operating system version is copied over into kernel version to be // consistent. os->set_kernel_version(base::SysInfo::OperatingSystemVersion()); -@@ -392,7 +392,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -416,7 +416,7 @@ void MetricsLog::RecordCoreSystemProfile( os->set_build_number(base::SysInfo::GetIOSBuildNumber()); #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_network__session__configurator_browser_network__session__configurator.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_network__session__configurator_browser_network__session__configurator.cc index 63b224579fe1..9fef706ac19d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_network__session__configurator_browser_network__session__configurator.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_network__session__configurator_browser_network__session__configurator.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/components/network_session_configurator/browser/network_session_configurator.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/network_session_configurator/browser/network_session_configurator.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/network_session_configurator/browser/network_session_configurator.cc -@@ -807,7 +807,7 @@ net::URLRequestContextBuilder::HttpCacheParams::Type C - } - #endif // #if !BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +@@ -793,7 +793,7 @@ net::URLRequestContextBuilder::HttpCacheParams::Type C + // backport, having it behave differently than in stable would be a bigger + // problem. TODO: Does this work in later macOS releases? + #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return net::URLRequestContextBuilder::HttpCacheParams::DISK_SIMPLE; #else return net::URLRequestContextBuilder::HttpCacheParams::DISK_BLOCKFILE; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_optimization__guide__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_optimization__guide__util.cc new file mode 100644 index 000000000000..50c12084abdd --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_optimization__guide__util.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/optimization_guide/core/optimization_guide_util.cc.orig 2022-10-24 13:33:33 UTC ++++ src/3rdparty/chromium/components/optimization_guide/core/optimization_guide_util.cc +@@ -27,7 +27,7 @@ optimization_guide::proto::Platform GetPlatform() { + return optimization_guide::proto::PLATFORM_CHROMEOS; + #elif BUILDFLAG(IS_ANDROID) + return optimization_guide::proto::PLATFORM_ANDROID; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return optimization_guide::proto::PLATFORM_LINUX; + #else + return optimization_guide::proto::PLATFORM_UNKNOWN; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_tflite__model__executor.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_tflite__model__executor.h new file mode 100644 index 000000000000..1382842194a0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_optimization__guide_core_tflite__model__executor.h @@ -0,0 +1,62 @@ +--- src/3rdparty/chromium/components/optimization_guide/core/tflite_model_executor.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/optimization_guide/core/tflite_model_executor.h +@@ -240,7 +240,11 @@ class TFLiteModelExecutor : public ModelExecutor<Outpu + void SendForBatchExecution( + BatchExecutionCallback callback_on_complete, + base::TimeTicks start_time, ++#if defined(__clang__) && (__clang_major__ >= 15) + ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) ++#else ++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) ++#endif + override { + DCHECK(execution_task_runner_->RunsTasksInCurrentSequence()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +@@ -262,7 +266,11 @@ class TFLiteModelExecutor : public ModelExecutor<Outpu + // Starts the synchronous execution of the model. Returns model outputs. + // Model needs to be loaded. Synchronous calls do not load or unload model. + std::vector<absl::optional<OutputType>> SendForBatchExecutionSync( ++#if defined(__clang__) && (__clang_major__ >= 15) + ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) ++#else ++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) ++#endif + override { + DCHECK(execution_task_runner_->RunsTasksInCurrentSequence()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +@@ -417,7 +425,11 @@ class TFLiteModelExecutor : public ModelExecutor<Outpu + // executes it on the model execution thread. + void LoadModelFileAndBatchExecute( + BatchExecutionCallback callback_on_complete, ++#if defined(__clang__) && (__clang_major__ >= 15) + ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) { ++#else ++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) { ++#endif + DCHECK(execution_task_runner_->RunsTasksInCurrentSequence()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + +@@ -434,7 +446,11 @@ class TFLiteModelExecutor : public ModelExecutor<Outpu + + // Batch executes the loaded model for inputs. + void BatchExecuteLoadedModel( ++#if defined(__clang__) && (__clang_major__ >= 15) + ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs, ++#else ++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs, ++#endif + std::vector<absl::optional<OutputType>>* outputs) { + DCHECK(execution_task_runner_->RunsTasksInCurrentSequence()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +@@ -494,7 +510,11 @@ class TFLiteModelExecutor : public ModelExecutor<Outpu + // Unloads the model if needed. + void BatchExecuteLoadedModelAndRunCallback( + BatchExecutionCallback callback_on_complete, ++#if defined(__clang__) && (__clang_major__ >= 15) + ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs, ++#else ++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs, ++#endif + ExecutionStatus execution_status) { + DCHECK(execution_task_runner_->RunsTasksInCurrentSequence()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_keyring__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_keyring__util__linux.cc deleted file mode 100644 index dc3bd7fb17c4..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_keyring__util__linux.cc +++ /dev/null @@ -1,17 +0,0 @@ ---- src/3rdparty/chromium/components/os_crypt/keyring_util_linux.cc.orig 2022-04-21 18:48:31 UTC -+++ src/3rdparty/chromium/components/os_crypt/keyring_util_linux.cc -@@ -68,12 +68,12 @@ bool GnomeKeyringLoader::LoadGnomeKeyring() { - if (keyring_loaded) - return true; - -- void* handle = dlopen("libgnome-keyring.so.0", RTLD_NOW | RTLD_GLOBAL); -+ void* handle = dlopen("libgnome-keyring.so", RTLD_NOW | RTLD_GLOBAL); - if (!handle) { - // We wanted to use GNOME Keyring, but we couldn't load it. Warn, because - // either the user asked for this, or we autodetected it incorrectly. (Or - // the system has broken libraries, which is also good to warn about.) -- LOG(WARNING) << "Could not load libgnome-keyring.so.0: " << dlerror(); -+ LOG(WARNING) << "Could not load libgnome-keyring.so: " << dlerror(); - return false; - } - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_libsecret__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_libsecret__util__linux.cc deleted file mode 100644 index 5d331a6d8dcb..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_libsecret__util__linux.cc +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/components/os_crypt/libsecret_util_linux.cc.orig 2022-06-17 14:20:10 UTC -+++ src/3rdparty/chromium/components/os_crypt/libsecret_util_linux.cc -@@ -102,13 +102,13 @@ bool LibsecretLoader::LoadLibsecret() { - if (libsecret_loaded_) - return true; - -- static void* handle = dlopen("libsecret-1.so.0", RTLD_NOW | RTLD_GLOBAL); -+ static void* handle = dlopen("libsecret-1.so", RTLD_NOW | RTLD_GLOBAL); - if (!handle) { - // We wanted to use libsecret, but we couldn't load it. Warn, because - // either the user asked for this, or we autodetected it incorrectly. (Or - // the system has broken libraries, which is also good to warn about.) - // TODO(crbug.com/607435): Channel this message to the user-facing log -- VLOG(1) << "Could not load libsecret-1.so.0: " << dlerror(); -+ VLOG(1) << "Could not load libsecret-1.so: " << dlerror(); - return false; - } - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_sync_libsecret__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_sync_libsecret__util__linux.cc new file mode 100644 index 000000000000..82e9cd60a576 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_sync_libsecret__util__linux.cc @@ -0,0 +1,27 @@ +--- src/3rdparty/chromium/components/os_crypt/sync/libsecret_util_linux.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/components/os_crypt/sync/libsecret_util_linux.cc +@@ -99,16 +99,22 @@ bool LibsecretLoader::EnsureLibsecretLoaded() { + + // static + bool LibsecretLoader::LoadLibsecret() { ++#if BUILDFLAG(IS_BSD) ++ const char* kSecretLib = "libsecret-1.so"; ++#else ++ const char* kSecretLib = "libsecret-1.so.0"; ++#endif ++ + if (libsecret_loaded_) + return true; + +- static void* handle = dlopen("libsecret-1.so.0", RTLD_NOW | RTLD_GLOBAL); ++ static void* handle = dlopen(kSecretLib, RTLD_NOW | RTLD_GLOBAL); + if (!handle) { + // We wanted to use libsecret, but we couldn't load it. Warn, because + // either the user asked for this, or we autodetected it incorrectly. (Or + // the system has broken libraries, which is also good to warn about.) + // TODO(crbug.com/607435): Channel this message to the user-facing log +- VLOG(1) << "Could not load libsecret-1.so.0: " << dlerror(); ++ VLOG(1) << "Could not load << " << kSecretLib << ": " << dlerror(); + return false; + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_os__crypt.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_sync_os__crypt.h index 948a26a809bc..8bbbbc3083c8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_os__crypt.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_os__crypt_sync_os__crypt.h @@ -1,5 +1,5 @@ ---- src/3rdparty/chromium/components/os_crypt/os_crypt.h.orig 2023-01-11 09:17:16 UTC -+++ src/3rdparty/chromium/components/os_crypt/os_crypt.h +--- src/3rdparty/chromium/components/os_crypt/sync/os_crypt.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/components/os_crypt/sync/os_crypt.h @@ -14,7 +14,7 @@ #include "build/build_config.h" #include "build/chromecast_buildflags.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_browser_paint__preview__client.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_browser_paint__preview__client.cc new file mode 100644 index 000000000000..69c6b096d20a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_browser_paint__preview__client.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/components/paint_preview/browser/paint_preview_client.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/components/paint_preview/browser/paint_preview_client.cc +@@ -310,8 +310,8 @@ void PaintPreviewClient::CapturePaintPreview( + metadata->set_url(url.spec()); + metadata->set_version(kPaintPreviewVersion); + auto* chromeVersion = metadata->mutable_chrome_version(); +- chromeVersion->set_major(CHROME_VERSION_MAJOR); +- chromeVersion->set_minor(CHROME_VERSION_MINOR); ++ chromeVersion->set_gmajor(CHROME_VERSION_MAJOR); ++ chromeVersion->set_gminor(CHROME_VERSION_MINOR); + chromeVersion->set_build(CHROME_VERSION_BUILD); + chromeVersion->set_patch(CHROME_VERSION_PATCH); + document_data.callback = std::move(callback); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_player_player__compositor__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_player_player__compositor__delegate.cc new file mode 100644 index 000000000000..43b3203fc18b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_paint__preview_player_player__compositor__delegate.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/components/paint_preview/player/player_compositor_delegate.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/components/paint_preview/player/player_compositor_delegate.cc +@@ -452,8 +452,8 @@ void PlayerCompositorDelegate::ValidateProtoAndLoadAXT + // use the AXTreeUpdate. + auto chrome_version = capture_result_->proto.metadata().chrome_version(); + if (capture_result_->proto.metadata().has_chrome_version() && +- chrome_version.major() == CHROME_VERSION_MAJOR && +- chrome_version.minor() == CHROME_VERSION_MINOR && ++ chrome_version.gmajor() == CHROME_VERSION_MAJOR && ++ chrome_version.gminor() == CHROME_VERSION_MINOR && + chrome_version.build() == CHROME_VERSION_BUILD && + chrome_version.patch() == CHROME_VERSION_PATCH) { + paint_preview_service_->GetFileMixin()->GetAXTreeUpdate( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_features_password__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_features_password__features.cc new file mode 100644 index 000000000000..01678c9ccaf3 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_features_password__features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/password_manager/core/browser/features/password_features.cc.orig 2023-10-27 05:38:38 UTC ++++ src/3rdparty/chromium/components/password_manager/core/browser/features/password_features.cc +@@ -27,7 +27,7 @@ BASE_FEATURE(kBiometricTouchToFill, + // Delete undecryptable passwords from the store when Sync is active. + BASE_FEATURE(kClearUndecryptablePasswordsOnSync, + "ClearUndecryptablePasswordsInSync", +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_sync_password__sync__bridge.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_sync_password__sync__bridge.cc new file mode 100644 index 000000000000..93e1c684834f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_browser_sync_password__sync__bridge.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/password_manager/core/browser/sync/password_sync_bridge.cc.orig 2023-10-27 05:38:38 UTC ++++ src/3rdparty/chromium/components/password_manager/core/browser/sync/password_sync_bridge.cc +@@ -197,7 +197,7 @@ bool ShouldRecoverPasswordsDuringMerge() { + } + + bool ShouldCleanSyncMetadataDuringStartupWhenDecryptionFails() { +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return ShouldRecoverPasswordsDuringMerge() && + base::FeatureList::IsEnabled( + features::kForceInitialSyncWhenDecryptionFails); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.cc index 6e905d43147c..a43967c49118 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.cc.orig 2023-10-27 05:38:38 UTC +++ src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.cc -@@ -76,7 +76,7 @@ BASE_FEATURE(kFillOnAccountSelect, - "fill-on-account-select", +@@ -18,7 +18,7 @@ BASE_FEATURE(kEnableOverwritingPlaceholderUsernames, + "EnableOverwritingPlaceholderUsernames", base::FEATURE_DISABLED_BY_DEFAULT); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) @@ -9,12 +9,3 @@ // When enabled, initial sync will be forced during startup if the password // store has encryption service failures. BASE_FEATURE(kForceInitialSyncWhenDecryptionFails, -@@ -197,7 +197,7 @@ BASE_FEATURE(kPasswordStrengthIndicator, - "PasswordStrengthIndicator", - base::FEATURE_DISABLED_BY_DEFAULT); - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Displays at least the decryptable and never saved logins in the password - // manager - BASE_FEATURE(kSkipUndecryptablePasswords, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.h index 01f51114dce4..38d2d8679d7d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__features.h @@ -1,20 +1,11 @@ ---- src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.h.orig 2023-10-27 05:38:38 UTC +++ src/3rdparty/chromium/components/password_manager/core/common/password_manager_features.h -@@ -35,7 +35,7 @@ BASE_DECLARE_FEATURE(kEnablePasswordGenerationForClear - BASE_DECLARE_FEATURE(kEnablePasswordManagerWithinFencedFrame); - BASE_DECLARE_FEATURE(kFillingAcrossAffiliatedWebsites); - BASE_DECLARE_FEATURE(kFillOnAccountSelect); +@@ -24,7 +24,7 @@ namespace password_manager::features { + // alongside the definition of their values in the .cc file. + BASE_DECLARE_FEATURE(kEnableOverwritingPlaceholderUsernames); + -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kForceInitialSyncWhenDecryptionFails); #endif - BASE_DECLARE_FEATURE(kInferConfirmationPasswordField); -@@ -67,7 +67,7 @@ BASE_DECLARE_FEATURE(kRecoverFromNeverSaveAndroid); - #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) // Desktop - BASE_DECLARE_FEATURE(kRevampedPasswordManagementBubble); - #endif --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - BASE_DECLARE_FEATURE(kSkipUndecryptablePasswords); - #endif - #if BUILDFLAG(IS_ANDROID) + BASE_DECLARE_FEATURE(kForgotPasswordFormSupport); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_performance__manager_public_features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_performance__manager_public_features.h index 4b534d0d55ea..c16bc41b33e8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_performance__manager_public_features.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_performance__manager_public_features.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/performance_manager/public/features.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/components/performance_manager/public/features.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/components/performance_manager/public/features.h -@@ -20,7 +20,7 @@ BASE_DECLARE_FEATURE(kRunOnMainThread); +@@ -28,7 +28,7 @@ BASE_DECLARE_FEATURE(kRunOnDedicatedThreadPoolThread); #if !BUILDFLAG(IS_ANDROID) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_permissions_prediction__service_prediction__common.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_permissions_prediction__service_prediction__common.cc new file mode 100644 index 000000000000..67fbbfb894e4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_permissions_prediction__service_prediction__common.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/permissions/prediction_service/prediction_common.cc.orig 2022-08-31 12:19:35 UTC ++++ src/3rdparty/chromium/components/permissions/prediction_service/prediction_common.cc +@@ -33,7 +33,7 @@ int BucketizeValue(int count) { + + ClientFeatures_Platform GetCurrentPlatformProto() { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + return permissions::ClientFeatures_Platform_PLATFORM_DESKTOP; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + return permissions::ClientFeatures_Platform_PLATFORM_MOBILE; +@@ -44,7 +44,7 @@ ClientFeatures_Platform GetCurrentPlatformProto() { + + ClientFeatures_PlatformEnum GetCurrentPlatformEnumProto() { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + return permissions::ClientFeatures_PlatformEnum_PLATFORM_DESKTOP_V2; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + return permissions::ClientFeatures_PlatformEnum_PLATFORM_MOBILE_V2; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_browser_policy__pref__mapping__test.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_browser_policy__pref__mapping__test.cc new file mode 100644 index 000000000000..ef087ec77852 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_browser_policy__pref__mapping__test.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/policy/core/browser/policy_pref_mapping_test.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/components/policy/core/browser/policy_pref_mapping_test.cc +@@ -327,7 +327,7 @@ class PolicyTestCase { + const std::string os("chromeos_lacros"); + #elif BUILDFLAG(IS_IOS) + const std::string os("ios"); +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const std::string os("linux"); + #elif BUILDFLAG(IS_MAC) + const std::string os("mac"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__client.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__client.cc new file mode 100644 index 000000000000..54ac5041816a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__client.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_client.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_client.cc +@@ -455,7 +455,7 @@ void CloudPolicyClient::FetchPolicy() { + fetch_request->set_invalidation_payload(invalidation_payload_); + } + } +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Only set browser device identifier for CBCM Chrome cloud policy on + // desktop. + if (type_to_fetch.first == diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__util.cc new file mode 100644 index 000000000000..2a5e84693fdb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__util.cc @@ -0,0 +1,55 @@ +--- src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_util.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_util.cc +@@ -20,7 +20,7 @@ + #endif + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + #include <pwd.h> + #include <sys/types.h> + #include <unistd.h> +@@ -35,10 +35,15 @@ + #import <SystemConfiguration/SCDynamicStoreCopySpecific.h> + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + #include <limits.h> // For HOST_NAME_MAX + #endif + ++#if BUILDFLAG(IS_FREEBSD) ++#include <sys/param.h> ++#define HOST_NAME_MAX MAXHOSTNAMELEN ++#endif ++ + #include <algorithm> + #include <utility> + +@@ -86,7 +91,7 @@ namespace em = enterprise_management; + + std::string GetMachineName() { + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + char hostname[HOST_NAME_MAX]; + if (gethostname(hostname, HOST_NAME_MAX) == 0) // Success. + return hostname; +@@ -144,7 +149,7 @@ std::string GetMachineName() { + + std::string GetOSVersion() { + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_APPLE) || \ +- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + return base::SysInfo::OperatingSystemVersion(); + #elif BUILDFLAG(IS_WIN) + base::win::OSInfo::VersionNumber version_number = +@@ -167,7 +172,7 @@ std::string GetOSArchitecture() { + } + + std::string GetOSUsername() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + struct passwd* creds = getpwuid(getuid()); + if (!creds || !creds->pw_name) + return std::string(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__loader__common.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__loader__common.cc new file mode 100644 index 000000000000..9e7c70f6615e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__loader__common.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/policy/core/common/policy_loader_common.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/policy/core/common/policy_loader_common.cc +@@ -46,7 +46,7 @@ const char* kSensitivePolicies[] = { + key::kDefaultSearchProviderEnabled, + key::kSafeBrowsingEnabled, + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + key::kAutoOpenFileTypes, + key::kSafeBrowsingAllowlistDomains, + key::kHomepageIsNewTabPage, +@@ -55,7 +55,7 @@ const char* kSensitivePolicies[] = { + key::kRestoreOnStartup, + key::kRestoreOnStartupURLs, + #endif +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + key::kCommandLineFlagSecurityWarningsEnabled, + #endif + #if !BUILDFLAG(IS_IOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__paths.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__paths.cc new file mode 100644 index 000000000000..d9ed95b999a8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_core_common_policy__paths.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/policy/core/common/policy_paths.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/policy/core/common/policy_paths.cc +@@ -16,6 +16,8 @@ namespace policy { + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) || \ + BUILDFLAG(GOOGLE_CHROME_FOR_TESTING_BRANDING) + const char kPolicyPath[] = "/etc/opt/chrome/policies"; ++#elif BUILDFLAG(IS_FREEBSD) ++const char kPolicyPath[] = "/usr/local/etc/chromium/policies"; + #else + const char kPolicyPath[] = "/etc/chromium/policies"; + #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_tools_generate__policy__source.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_tools_generate__policy__source.py new file mode 100644 index 000000000000..fb0b794ebdc6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_policy_tools_generate__policy__source.py @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/components/policy/tools/generate_policy_source.py.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/policy/tools/generate_policy_source.py +@@ -37,9 +37,9 @@ PLATFORM_STRINGS = { + 'ios': ['ios'], + 'fuchsia': ['fuchsia'], + 'chrome.win': ['win'], +- 'chrome.linux': ['linux'], ++ 'chrome.linux': ['linux', 'openbsd', 'freebsd'], + 'chrome.mac': ['mac'], +- 'chrome.*': ['win', 'mac', 'linux'], ++ 'chrome.*': ['win', 'mac', 'linux', 'openbsd', 'freebsd'], + 'chrome.win7': ['win'], + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_BUILD.gn new file mode 100644 index 000000000000..27faeb446ffb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/power_metrics/BUILD.gn.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/power_metrics/BUILD.gn +@@ -41,7 +41,7 @@ static_library("power_metrics") { + ldflags = [ "/DELAYLOAD:setupapi.dll" ] + } + +- if (is_linux || is_chromeos) { ++ if ((is_linux && !is_bsd) || is_chromeos) { + sources += [ + "energy_metrics_provider_linux.cc", + "energy_metrics_provider_linux.h", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_energy__metrics__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_energy__metrics__provider.cc new file mode 100644 index 000000000000..8858d3024b34 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_power__metrics_energy__metrics__provider.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/power_metrics/energy_metrics_provider.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/components/power_metrics/energy_metrics_provider.cc +@@ -9,6 +9,8 @@ + #include "components/power_metrics/energy_metrics_provider_win.h" + #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + #include "components/power_metrics/energy_metrics_provider_linux.h" ++#elif BUILDFLAG(IS_BSD) ++#include "base/notreached.h" + #endif // BUILDFLAG(IS_WIN) + + namespace power_metrics { +@@ -22,6 +24,9 @@ std::unique_ptr<EnergyMetricsProvider> EnergyMetricsPr + return EnergyMetricsProviderWin::Create(); + #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + return EnergyMetricsProviderLinux::Create(); ++#elif BUILDFLAG(IS_BSD) ++ NOTIMPLEMENTED(); ++ return nullptr; + #else + return nullptr; + #endif // BUILDFLAG(IS_WIN) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_content_resources_gen__file__type__proto.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_content_resources_gen__file__type__proto.py new file mode 100644 index 000000000000..bdf0bdb12355 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_content_resources_gen__file__type__proto.py @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/components/safe_browsing/content/resources/gen_file_type_proto.py.orig 2023-01-11 09:17:16 UTC ++++ src/3rdparty/chromium/components/safe_browsing/content/resources/gen_file_type_proto.py +@@ -38,6 +38,8 @@ def PlatformTypes(): + "fuchsia": + download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_FUCHSIA, + "linux": download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_LINUX, ++ "openbsd": download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_LINUX, ++ "freebsd": download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_LINUX, + "mac": download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_MAC, + "win": download_file_types_pb2.DownloadFileType.PLATFORM_TYPE_WINDOWS, + } +@@ -181,7 +183,7 @@ class DownloadFileTypeProtoGenerator(BinaryProtoGenera + '-t', + '--type', + help='The platform type. One of android, chromeos, ' + +- 'linux, mac, win') ++ 'linux, mac, win, openbsd, freebsd') + + def AddExtraCommandLineArgsForVirtualEnvRun(self, opts, command): + if opts.type is not None: diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_db_v4__protocol__manager__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_db_v4__protocol__manager__util.cc new file mode 100644 index 000000000000..6bfbade8af4e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_db_v4__protocol__manager__util.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/safe_browsing/core/browser/db/v4_protocol_manager_util.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/components/safe_browsing/core/browser/db/v4_protocol_manager_util.cc +@@ -117,7 +117,7 @@ std::ostream& operator<<(std::ostream& os, const ListI + PlatformType GetCurrentPlatformType() { + #if BUILDFLAG(IS_WIN) + return WINDOWS_PLATFORM; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return LINUX_PLATFORM; + #elif BUILDFLAG(IS_IOS) + return IOS_PLATFORM; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_realtime_url__lookup__service__base.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_realtime_url__lookup__service__base.cc new file mode 100644 index 000000000000..a1dc6484a884 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_safe__browsing_core_browser_realtime_url__lookup__service__base.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/safe_browsing/core/browser/realtime/url_lookup_service_base.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/components/safe_browsing/core/browser/realtime/url_lookup_service_base.cc +@@ -109,7 +109,7 @@ RTLookupRequest::OSType GetRTLookupRequestOSType() { + return RTLookupRequest::OS_TYPE_FUCHSIA; + #elif BUILDFLAG(IS_IOS) + return RTLookupRequest::OS_TYPE_IOS; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return RTLookupRequest::OS_TYPE_LINUX; + #elif BUILDFLAG(IS_MAC) + return RTLookupRequest::OS_TYPE_MAC; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc new file mode 100644 index 000000000000..69a7909e2f4e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/segmentation_platform/embedder/default_model/cross_device_user_segment.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/segmentation_platform/embedder/default_model/cross_device_user_segment.cc +@@ -179,7 +179,7 @@ void CrossDeviceUserSegment::ExecuteModelWithInput( + // Check for current device type and subtract it from the device count + // calculation. + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + desktop_count -= 1; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) + if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_paint__preview__compositor_paint__preview__compositor__collection__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_paint__preview__compositor_paint__preview__compositor__collection__impl.cc new file mode 100644 index 000000000000..a6c20612bade --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_paint__preview__compositor_paint__preview__compositor__collection__impl.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/components/services/paint_preview_compositor/paint_preview_compositor_collection_impl.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/services/paint_preview_compositor/paint_preview_compositor_collection_impl.cc +@@ -21,7 +21,7 @@ + + #if BUILDFLAG(IS_WIN) + #include "content/public/child/dwrite_font_proxy_init_win.h" +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "components/services/font/public/cpp/font_loader.h" + #endif + +@@ -78,7 +78,7 @@ PaintPreviewCompositorCollectionImpl::PaintPreviewComp + // Initialize font access for Skia. + #if BUILDFLAG(IS_WIN) + content::InitializeDWriteFontProxy(); +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + mojo::PendingRemote<font_service::mojom::FontService> font_service; + content::UtilityThread::Get()->BindHostReceiver( + font_service.InitWithNewPipeAndPassReceiver()); +@@ -101,7 +101,7 @@ PaintPreviewCompositorCollectionImpl::PaintPreviewComp + base::BindOnce([] { SkFontMgr::RefDefault(); })); + + // Sanity check that fonts are working. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // No WebSandbox is provided on Linux so the local fonts aren't accessible. + // This is fine since since the subsetted fonts are provided in the SkPicture. + // However, we still need to check that the SkFontMgr starts as it is used by diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc index 23f0ffd45cb3..2e9a316712ba 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc @@ -53,6 +53,7 @@ bool ScreenAIPreSandboxHook(sandbox::policy::SandboxLi } @@ -8,7 +8,7 @@ auto* instance = sandbox::policy::SandboxLinux::GetInstance(); std::vector<BrokerFilePermission> permissions{ -@@ -76,6 +77,7 @@ bool ScreenAIPreSandboxHook(sandbox::policy::SandboxLi +@@ -82,6 +83,7 @@ bool ScreenAIPreSandboxHook(sandbox::policy::SandboxLi sandbox::syscall_broker::COMMAND_OPEN}), permissions, sandbox::policy::SandboxLinux::PreSandboxHook(), options); instance->EngageNamespaceSandboxIfPossible(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h index 4a345456a725..6b7b6ea44244 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h @@ -5,7 +5,13 @@ #ifndef COMPONENTS_SERVICES_SCREEN_AI_SANDBOX_SCREEN_AI_SANDBOX_HOOK_LINUX_H_ @@ -7,7 +7,7 @@ +#include "build/build_config.h" + +#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_screen__ai__library__wrapper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_screen__ai__library__wrapper.cc new file mode 100644 index 000000000000..60d321baf24c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_services_screen__ai_screen__ai__library__wrapper.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/components/services/screen_ai/screen_ai_library_wrapper.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/services/screen_ai/screen_ai_library_wrapper.cc +@@ -187,7 +187,7 @@ ScreenAILibraryWrapper::PerformOcr(const SkBitmap& ima + + // TODO(crbug.com/1443341): Remove this after fixing the crash issue on Linux + // official. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + free_library_allocated_char_array_(library_buffer.release()); + #endif + +@@ -219,7 +219,7 @@ ScreenAILibraryWrapper::ExtractLayout(const SkBitmap& + + // TODO(crbug.com/1443341): Remove this after fixing the crash issue on Linux + // official. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + free_library_allocated_char_array_(library_buffer.release()); + #endif + +@@ -253,7 +253,7 @@ absl::optional<std::vector<int32_t>> ScreenAILibraryWr + + // TODO(crbug.com/1443341): Remove this after fixing the crash issue on Linux + // official. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + free_library_allocated_int32_array_(library_buffer.release()); + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc new file mode 100644 index 000000000000..f1659cc70599 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/startup_metric_utils/common/startup_metric_utils.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/startup_metric_utils/common/startup_metric_utils.cc +@@ -78,7 +78,7 @@ base::TimeTicks CommonStartupMetricRecorder::StartupTi + // Enabling this logic on OS X causes a significant performance regression. + // TODO(crbug.com/601270): Remove IS_APPLE ifdef once priority changes are + // ignored on Mac main thread. +-#if !BUILDFLAG(IS_APPLE) ++#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) + static bool statics_initialized = false; + if (!statics_initialized) { + statics_initialized = true; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn index 516f089d4638..1318ba5b920a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/components/storage_monitor/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/components/storage_monitor/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/components/storage_monitor/BUILD.gn @@ -75,7 +75,7 @@ jumbo_static_library("storage_monitor") { deps += [ "//services/device/public/mojom" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.cc new file mode 100644 index 000000000000..011f6a2d4585 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.cc @@ -0,0 +1,39 @@ +--- src/3rdparty/chromium/components/supervised_user/core/browser/proto_fetcher.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/supervised_user/core/browser/proto_fetcher.cc +@@ -398,8 +398,11 @@ class RetryingFetcherImpl final : public DeferredFetch + // Not copyable. + RetryingFetcherImpl(const RetryingFetcherImpl&) = delete; + RetryingFetcherImpl& operator=(const RetryingFetcherImpl&) = delete; +- ++#if defined(__clang__) && (__clang_major__ >= 15) + void Start(ProtoFetcher<Response>::Callback callback) override { ++#else ++ void Start(typename ProtoFetcher<Response>::Callback callback) override { ++#endif + callback_ = std::move(callback); + Retry(); + } +@@ -435,7 +438,11 @@ class RetryingFetcherImpl final : public DeferredFetch + } + + // Client callback. ++#if defined(__clang__) && (__clang_major__ >= 15) + ProtoFetcher<Response>::Callback callback_; ++#else ++ typename ProtoFetcher<Response>::Callback callback_; ++#endif + + // Retry controls. + base::OneShotTimer timer_; +@@ -578,7 +585,11 @@ ParallelFetchManager<Request, Response>::ParallelFetch + template <typename Request, typename Response> + void ParallelFetchManager<Request, Response>::Fetch( + const Request& request, ++#if defined(__clang__) && (__clang_major__ >= 15) + Fetcher::Callback callback) { ++#else ++ typename Fetcher::Callback callback) { ++#endif + CHECK(callback) << "Use base::DoNothing() instead of empty callback."; + KeyType key = requests_in_flight_.Add(MakeFetcher(request)); + requests_in_flight_.Lookup(key)->Start( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.h new file mode 100644 index 000000000000..e84de128d3f5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_proto__fetcher.h @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/components/supervised_user/core/browser/proto_fetcher.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/supervised_user/core/browser/proto_fetcher.h +@@ -165,10 +165,18 @@ class ParallelFetchManager { + + // Starts the fetch. Underlying fetcher is stored internally, and will be + // cleaned up after finish or when this manager is destroyed. ++#if defined(__clang__) && (__clang_major__ >= 15) + void Fetch(const Request& request, Fetcher::Callback callback); ++#else ++ void Fetch(const Request& request, typename Fetcher::Callback callback); ++#endif + + private: ++#if defined(__clang__) && (__clang_major__ >= 15) + using KeyType = base::IDMap<std::unique_ptr<Fetcher>>::KeyType; ++#else ++ using KeyType = typename base::IDMap<std::unique_ptr<Fetcher>>::KeyType; ++#endif + + // Remove fetcher under key from requests_in_flight_. + void Remove(KeyType key); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__service.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__service.cc new file mode 100644 index 000000000000..eac3cbdb5091 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__service.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_service.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_service.cc +@@ -206,7 +206,7 @@ FirstTimeInterstitialBannerState SupervisedUserService + const FirstTimeInterstitialBannerState original_state) { + FirstTimeInterstitialBannerState target_state = original_state; + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_IOS) ++ BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD) + if (supervised_user::CanDisplayFirstTimeInterstitialBanner()) { + if (original_state != FirstTimeInterstitialBannerState::kSetupComplete && + can_show_first_time_interstitial_banner_) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util.cc new file mode 100644 index 000000000000..4c825d79ccdb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/components/sync_device_info/local_device_info_util.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/sync_device_info/local_device_info_util.cc +@@ -82,7 +82,7 @@ void OnMachineStatisticsLoaded(LocalDeviceNameInfo* na + sync_pb::SyncEnums::DeviceType GetLocalDeviceType() { + #if BUILDFLAG(IS_CHROMEOS) + return sync_pb::SyncEnums_DeviceType_TYPE_CROS; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return sync_pb::SyncEnums_DeviceType_TYPE_LINUX; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) + switch (ui::GetDeviceFormFactor()) { +@@ -107,7 +107,7 @@ DeviceInfo::OsType GetLocalDeviceOSType() { + return DeviceInfo::OsType::kChromeOsAsh; + #elif BUILDFLAG(IS_CHROMEOS_LACROS) + return DeviceInfo::OsType::kChromeOsLacros; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return DeviceInfo::OsType::kLinux; + #elif BUILDFLAG(IS_ANDROID) + return DeviceInfo::OsType::kAndroid; +@@ -126,7 +126,7 @@ DeviceInfo::OsType GetLocalDeviceOSType() { + + DeviceInfo::FormFactor GetLocalDeviceFormFactor() { + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + return DeviceInfo::FormFactor::kDesktop; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) + return ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util__linux.cc new file mode 100644 index 000000000000..7ce16715d205 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util__linux.cc @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/components/sync_device_info/local_device_info_util_linux.cc.orig 2022-09-24 10:57:32 UTC ++++ src/3rdparty/chromium/components/sync_device_info/local_device_info_util_linux.cc +@@ -9,6 +9,11 @@ + + #include "base/linux_util.h" + ++#if defined(__FreeBSD__) ++#include <sys/param.h> ++#define HOST_NAME_MAX MAXHOSTNAMELEN ++#endif ++ + namespace syncer { + + std::string GetPersonalizableDeviceNameInternal() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc new file mode 100644 index 000000000000..8e39f14d2c90 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/update_client/update_query_params.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/components/update_client/update_query_params.cc +@@ -42,6 +42,8 @@ const char kOs[] = + "fuchsia"; + #elif BUILDFLAG(IS_OPENBSD) + "openbsd"; ++#elif defined(OS_FREEBSD) ++ "freebsd"; + #else + #error "unknown os" + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_url__formatter_spoof__checks_idn__spoof__checker.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_url__formatter_spoof__checks_idn__spoof__checker.cc index 844f2cc5b7d5..ffe19ad21e15 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_url__formatter_spoof__checks_idn__spoof__checker.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_url__formatter_spoof__checks_idn__spoof__checker.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/url_formatter/spoof_checks/idn_spoof_checker.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/components/url_formatter/spoof_checks/idn_spoof_checker.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/components/url_formatter/spoof_checks/idn_spoof_checker.cc -@@ -292,7 +292,7 @@ IDNSpoofChecker::IDNSpoofChecker() { +@@ -293,7 +293,7 @@ IDNSpoofChecker::IDNSpoofChecker() { // The ideal fix would be to change the omnibox font used for Thai. In // that case, the Linux-only list should be revisited and potentially // removed. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_user__education_views_help__bubble__view.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_user__education_views_help__bubble__view.cc new file mode 100644 index 000000000000..bb21c601c3c9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_user__education_views_help__bubble__view.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/user_education/views/help_bubble_view.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/user_education/views/help_bubble_view.cc +@@ -991,7 +991,7 @@ gfx::Rect HelpBubbleView::GetAnchorRect() const { + void HelpBubbleView::OnBeforeBubbleWidgetInit(views::Widget::InitParams* params, + views::Widget* widget) const { + BubbleDialogDelegateView::OnBeforeBubbleWidgetInit(params, widget); +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Help bubbles anchored to menus may be clipped to their anchors' bounds, + // resulting in visual errors, unless they use accelerated rendering. See + // crbug.com/1445770 for details. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_google__groups__updater__service.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_google__groups__updater__service.cc new file mode 100644 index 000000000000..3086aa685276 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_google__groups__updater__service.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/variations/service/google_groups_updater_service.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/components/variations/service/google_groups_updater_service.cc +@@ -15,7 +15,7 @@ + // information from per-profile data to local-state. + BASE_FEATURE(kVariationsGoogleGroupFiltering, + "VariationsGoogleGroupFiltering", +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + // TODO(b/286365351): launch on Android, iOS and ChromeOS. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_variations__service.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_variations__service.cc new file mode 100644 index 000000000000..7b28e911fd3e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_variations_service_variations__service.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/components/variations/service/variations_service.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/components/variations/service/variations_service.cc +@@ -95,7 +95,7 @@ std::string GetPlatformString() { + return "android"; + #elif BUILDFLAG(IS_FUCHSIA) + return "fuchsia"; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) || BUILDFLAG(IS_BSD) + // Default BSD and SOLARIS to Linux to not break those builds, although these + // platforms are not officially supported by Chrome. + return "linux"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_common_gpu_dawn__context__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_common_gpu_dawn__context__provider.cc deleted file mode 100644 index b67426e510f3..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_common_gpu_dawn__context__provider.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/components/viz/common/gpu/dawn_context_provider.cc.orig 2022-02-28 16:54:41 UTC -+++ src/3rdparty/chromium/components/viz/common/gpu/dawn_context_provider.cc -@@ -20,7 +20,7 @@ namespace { - wgpu::BackendType GetDefaultBackendType() { - #if BUILDFLAG(IS_WIN) - return wgpu::BackendType::D3D12; --#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - return wgpu::BackendType::Vulkan; - #else - NOTREACHED(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_host_renderer__settings__creation.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_host_renderer__settings__creation.cc deleted file mode 100644 index b6ddc3aeb62c..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_host_renderer__settings__creation.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/components/viz/host/renderer_settings_creation.cc.orig 2022-02-28 16:54:41 UTC -+++ src/3rdparty/chromium/components/viz/host/renderer_settings_creation.cc -@@ -52,7 +52,7 @@ RendererSettings CreateRendererSettings() { - renderer_settings.partial_swap_enabled = - !command_line->HasSwitch(switches::kUIDisablePartialSwap); - --#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Simple frame rate throttling only works on macOS and Linux - renderer_settings.apply_simple_frame_rate_throttling = - features::IsSimpleFrameRateThrottlingEnabled(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl.cc index d94d56e6ed9a..fc18626498c3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/viz/service/display_embedder/skia_output_surface_impl.cc -@@ -1259,7 +1259,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor +@@ -1485,7 +1485,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor ->GetDeviceQueue() ->GetVulkanPhysicalDevice(), VK_IMAGE_TILING_OPTIMAL, ycbcr_info); @@ -8,4 +8,4 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Textures that were allocated _on linux_ with ycbcr info came from // VaapiVideoDecoder, which exports using DRM format modifiers. - return GrBackendFormat::MakeVk(gr_ycbcr_info, + return GrBackendFormats::MakeVk(gr_ycbcr_info, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl__on__gpu.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl__on__gpu.cc new file mode 100644 index 000000000000..edde402f0b2b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl__on__gpu.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc +@@ -1521,7 +1521,12 @@ void SkiaOutputSurfaceImplOnGpu::CopyOutputNV12( + + // Issue readbacks from the surfaces: + for (size_t i = 0; i < CopyOutputResult::kNV12MaxPlanes; ++i) { +- SkISize size{plane_surfaces[i]->width(), plane_surfaces[i]->height()}; ++#if defined(__clang__) && (__clang_major__ >= 16) ++ SkISize size(plane_surfaces[i]->width(), plane_surfaces[i]->height()); ++#else ++ SkISize s = { plane_surfaces[i]->width(), plane_surfaces[i]->height() }; ++ SkISize size(s); ++#endif + SkImageInfo dst_info = SkImageInfo::Make( + size, (i == 0) ? kAlpha_8_SkColorType : kR8G8_unorm_SkColorType, + kUnpremul_SkAlphaType); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display_skia__renderer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display_skia__renderer.cc index 01be933c151f..a82120f17057 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display_skia__renderer.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_display_skia__renderer.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/viz/service/display/skia_renderer.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/components/viz/service/display/skia_renderer.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/viz/service/display/skia_renderer.cc -@@ -1149,7 +1149,7 @@ void SkiaRenderer::ClearFramebuffer() { +@@ -1218,7 +1218,7 @@ void SkiaRenderer::ClearFramebuffer() { if (current_frame()->current_render_pass->has_transparent_background) { ClearCanvas(SkColors::kTransparent); } else { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc index e8f179652c9a..d56254e6b6a5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc -@@ -98,7 +98,7 @@ RootCompositorFrameSinkImpl::Create( +@@ -110,7 +110,7 @@ RootCompositorFrameSinkImpl::Create( // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -9,7 +9,7 @@ // For X11, we need notify client about swap completion after resizing, so the // client can use it for synchronize with X11 WM. output_surface->SetNeedsSwapSizeNotifications(true); -@@ -585,7 +585,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw +@@ -709,7 +709,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw display_client_->DidCompleteSwapWithSize(pixel_size); // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h index 817f9307c9f1..c33ac3839d6f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h -@@ -200,7 +200,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl +@@ -211,7 +211,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main.cc index 9df54ad2e565..e3db4f3c8780 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/app/content_main.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/app/content_main.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/app/content_main.cc @@ -207,7 +207,7 @@ RunContentProcess(ContentMainParams params, base::EnableTerminationOnOutOfMemory(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main__runner__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main__runner__impl.cc index 453c8ae225c4..242f9043efcc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main__runner__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_app_content__main__runner__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/app/content_main_runner_impl.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/app/content_main_runner_impl.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/app/content_main_runner_impl.cc -@@ -139,13 +139,13 @@ +@@ -142,13 +142,13 @@ #include "content/browser/posix_file_descriptor_info_impl.h" #include "content/public/common/content_descriptors.h" @@ -16,21 +16,16 @@ #include "base/files/file_path_watcher_inotify.h" #include "base/native_library.h" #include "base/rand_util.h" -@@ -170,6 +170,11 @@ - #include "content/public/common/content_client.h" +@@ -183,12 +183,16 @@ + #include "content/public/common/zygote/zygote_handle.h" + #include "content/zygote/zygote_main.h" + #include "media/base/media_switches.h" ++#endif // BUILDFLAG(USE_ZYGOTE_HANDLE) + + #if BUILDFLAG(ENABLE_WEBRTC) + #include "third_party/webrtc_overrides/init_webrtc.h" // nogncheck #endif - -+//XXX -+#if BUILDFLAG(ENABLE_WEBRTC) -+#include "third_party/webrtc_overrides/init_webrtc.h" // nogncheck -+#endif -+ - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - - #if BUILDFLAG(USE_ZYGOTE) -@@ -189,6 +194,10 @@ - #endif - #endif // BUILDFLAG(USE_ZYGOTE_HANDLE) +-#endif // BUILDFLAG(USE_ZYGOTE_HANDLE) +#if BUILDFLAG(IS_BSD) +#include "base/system/sys_info.h" @@ -39,7 +34,7 @@ #if BUILDFLAG(IS_ANDROID) #include "base/system/sys_info.h" #include "content/browser/android/battery_metrics.h" -@@ -377,7 +386,7 @@ void InitializeZygoteSandboxForBrowserProcess( +@@ -378,7 +382,7 @@ void InitializeZygoteSandboxForBrowserProcess( } #endif // BUILDFLAG(USE_ZYGOTE) @@ -48,17 +43,26 @@ #if BUILDFLAG(ENABLE_PPAPI) // Loads the (native) libraries but does not initialize them (i.e., does not -@@ -413,15 +422,17 @@ void PreloadLibraryCdms() { - } - #endif // BUILDFLAG(ENABLE_LIBRARY_CDMS) +@@ -416,7 +420,10 @@ void PreSandboxInit() { --#if BUILDFLAG(USE_ZYGOTE) -+#if BUILDFLAG(USE_ZYGOTE) || BUILDFLAG(IS_BSD) void PreSandboxInit() { - // Pre-acquire resources needed by BoringSSL. See + // Ensure the /dev/urandom is opened. ++ // we use arc4random ++#if !BUILDFLAG(IS_BSD) + base::GetUrandomFD(); ++#endif + + // May use sysinfo(), sched_getaffinity(), and open various /sys/ and /proc/ + // files. +@@ -427,9 +434,16 @@ void PreSandboxInit() { // https://boringssl.googlesource.com/boringssl/+/HEAD/SANDBOXING.md CRYPTO_pre_sandbox_init(); ++#if BUILDFLAG(IS_BSD) ++ // "cache" the amount of physical memory before pledge(2) ++ base::SysInfo::AmountOfPhysicalMemoryMB(); ++#endif ++ +#if !BUILDFLAG(IS_BSD) // Pre-read /proc/sys/fs/inotify/max_user_watches so it doesn't have to be // allowed by the sandbox. @@ -67,28 +71,7 @@ #if BUILDFLAG(ENABLE_PPAPI) // Ensure access to the Pepper plugins before the sandbox is turned on. -@@ -442,6 +453,11 @@ void PreSandboxInit() { - } - #endif - -+#if BUILDFLAG(IS_BSD) -+ // "cache" the amount of physical memory before pledge(2) -+ base::SysInfo::AmountOfPhysicalMemoryMB(); -+#endif -+ - // Set the android SkFontMgr for blink. We need to ensure this is done - // before the sandbox is initialized to allow the font manager to access - // font configuration files on disk. -@@ -629,7 +645,7 @@ int NO_STACK_PROTECTOR RunZygote(ContentMainDelegate* - delegate->ZygoteStarting(&zygote_fork_delegates); - media::InitializeMediaLibrary(); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - PreSandboxInit(); - #endif - -@@ -832,11 +848,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -838,11 +852,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam kFieldTrialDescriptor + base::GlobalDescriptors::kBaseDescriptor); #endif // !BUILDFLAG(IS_ANDROID) @@ -102,8 +85,12 @@ #endif // !BUILDFLAG(IS_WIN) -@@ -1033,6 +1048,16 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1039,8 +1052,20 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam + process_type == switches::kZygoteProcess) { + PreSandboxInit(); } ++#elif BUILDFLAG(IS_BSD) ++ PreSandboxInit(); #endif +#if BUILDFLAG(IS_BSD) @@ -119,7 +106,7 @@ delegate_->SandboxInitialized(process_type); #if BUILDFLAG(USE_ZYGOTE) -@@ -1100,7 +1125,7 @@ int NO_STACK_PROTECTOR ContentMainRunnerImpl::Run() { +@@ -1108,7 +1133,7 @@ int NO_STACK_PROTECTOR ContentMainRunnerImpl::Run() { ->ReconfigureAfterFeatureListInit(process_type); } @@ -128,7 +115,7 @@ // If dynamic Mojo Core is being used, ensure that it's loaded very early in // the child/zygote process, before any sandbox is initialized. The library // is not fully initialized with IPC support until a ChildProcess is later -@@ -1138,6 +1163,11 @@ int NO_STACK_PROTECTOR ContentMainRunnerImpl::Run() { +@@ -1143,6 +1168,11 @@ int NO_STACK_PROTECTOR ContentMainRunnerImpl::Run() { content_main_params_.reset(); RegisterMainThreadFactories(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn index cfc7edccc312..5c5ca02fd01c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/BUILD.gn -@@ -2360,6 +2360,13 @@ source_set("browser") { - ] +@@ -2463,6 +2463,13 @@ jumbo_source_set("browser") { + deps += [ "//media/mojo/mojom/stable:stable_video_decoder" ] } + if (is_bsd) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__child__process__host__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__child__process__host__impl.cc index 0c89457a2238..4519ecdbfe58 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__child__process__host__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__child__process__host__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/browser_child_process_host_impl.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/content/browser/browser_child_process_host_impl.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/content/browser/browser_child_process_host_impl.cc -@@ -316,6 +316,7 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo +@@ -321,6 +321,7 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo switches::kDisableBestEffortTasks, switches::kDisableLogging, switches::kEnableLogging, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__main__loop.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__main__loop.cc index 517ac077bc56..3cba864debd2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__main__loop.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__main__loop.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/browser_main_loop.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/browser/browser_main_loop.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/browser_main_loop.cc -@@ -250,6 +250,12 @@ +@@ -251,6 +251,12 @@ #include "mojo/public/cpp/bindings/lib/test_random_mojo_delays.h" #endif @@ -13,7 +13,7 @@ // One of the linux specific headers defines this as a macro. #ifdef DestroyAll #undef DestroyAll -@@ -543,6 +549,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -544,6 +550,12 @@ int BrowserMainLoop::EarlyInitialization() { // by now since a thread to start the ServiceManager has been created // before the browser main loop starts. DCHECK(SandboxHostLinux::GetInstance()->IsInitialized()); @@ -26,12 +26,12 @@ #endif // GLib's spawning of new processes is buggy, so it's important that at this -@@ -580,7 +592,7 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -581,7 +593,7 @@ int BrowserMainLoop::EarlyInitialization() { base::PlatformThread::SetCurrentThreadType(base::ThreadType::kCompositing); - #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ + #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // We use quite a few file descriptors for our IPC as well as disk the disk - // cache,and the default limit on the Mac is low (256), so bump it up. + // cache, and the default limit on Apple is low (256), so bump it up. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_child__process__launcher__helper__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_child__process__launcher__helper__linux.cc index 5b1da7855c20..7fee1010940d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_child__process__launcher__helper__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_child__process__launcher__helper__linux.cc @@ -1,16 +1,19 @@ ---- src/3rdparty/chromium/content/browser/child_process_launcher_helper_linux.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/child_process_launcher_helper_linux.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/child_process_launcher_helper_linux.cc -@@ -20,7 +20,9 @@ +@@ -21,8 +21,12 @@ #include "content/public/common/result_codes.h" #include "content/public/common/sandboxed_process_launcher_delegate.h" #include "content/public/common/zygote/sandbox_support_linux.h" +#if !BUILDFLAG(IS_BSD) #include "content/public/common/zygote/zygote_handle.h" -+#endif #include "sandbox/policy/linux/sandbox_linux.h" ++#else ++#include "sandbox/policy/sandbox.h" ++#endif namespace content { -@@ -45,14 +47,20 @@ ChildProcessLauncherHelper::GetFilesToMap() { + namespace internal { +@@ -46,14 +50,20 @@ bool ChildProcessLauncherHelper::IsUsingLaunchOptions( } bool ChildProcessLauncherHelper::IsUsingLaunchOptions() { @@ -31,7 +34,7 @@ // Convert FD mapping to FileHandleMappingVector options->fds_to_remap = files_to_register.GetMappingWithIDAdjustment( base::GlobalDescriptors::kBaseDescriptor); -@@ -64,7 +72,9 @@ bool ChildProcessLauncherHelper::BeforeLaunchOnLaunche +@@ -65,7 +75,9 @@ bool ChildProcessLauncherHelper::BeforeLaunchOnLaunche options->environment = delegate_->GetEnvironment(); } else { @@ -41,7 +44,7 @@ // Environment variables could be supported in the future, but are not // currently supported when launching with the zygote. DCHECK(delegate_->GetEnvironment().empty()); -@@ -81,6 +91,7 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr +@@ -82,6 +94,7 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr int* launch_result) { *is_synchronous_launch = true; Process process; @@ -49,7 +52,7 @@ ZygoteCommunication* zygote_handle = GetZygoteForLaunch(); if (zygote_handle) { // TODO(crbug.com/569191): If chrome supported multiple zygotes they could -@@ -91,7 +102,6 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr +@@ -92,7 +105,6 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr GetProcessType()); *launch_result = LAUNCH_RESULT_SUCCESS; @@ -57,7 +60,7 @@ if (handle) { // It could be a renderer process or an utility process. int oom_score = content::kMiscOomScore; -@@ -100,15 +110,17 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr +@@ -101,15 +113,17 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThr oom_score = content::kLowestRendererOomScore; ZygoteHostImpl::GetInstance()->AdjustRendererOOMScore(handle, oom_score); } @@ -76,7 +79,7 @@ #if BUILDFLAG(IS_CHROMEOS) if (GetProcessType() == switches::kRendererProcess) { -@@ -130,10 +142,14 @@ ChildProcessTerminationInfo ChildProcessLauncherHelper +@@ -131,10 +145,14 @@ ChildProcessTerminationInfo ChildProcessLauncherHelper const ChildProcessLauncherHelper::Process& process, bool known_dead) { ChildProcessTerminationInfo info; @@ -91,7 +94,7 @@ info.status = base::GetKnownDeadTerminationStatus(process.process.Handle(), &info.exit_code); } else { -@@ -157,13 +173,17 @@ void ChildProcessLauncherHelper::ForceNormalProcessTer +@@ -160,13 +178,17 @@ void ChildProcessLauncherHelper::ForceNormalProcessTer DCHECK(CurrentlyOnProcessLauncherTaskRunner()); process.process.Terminate(RESULT_CODE_NORMAL_EXIT, false); // On POSIX, we must additionally reap the child. @@ -108,9 +111,9 @@ +#endif } - void ChildProcessLauncherHelper::SetProcessBackgroundedOnLauncherThread( -@@ -174,11 +194,13 @@ void ChildProcessLauncherHelper::SetProcessBackgrounde - process.SetProcessBackgrounded(is_background); + void ChildProcessLauncherHelper::SetProcessPriorityOnLauncherThread( +@@ -178,11 +200,13 @@ void ChildProcessLauncherHelper::SetProcessPriorityOnL + } } +#if !BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_compositor_viz__process__transport__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_compositor_viz__process__transport__factory.cc index 3d0d2bcbdf8f..82013d2983c7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_compositor_viz__process__transport__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_compositor_viz__process__transport__factory.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/compositor/viz_process_transport_factory.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/compositor/viz_process_transport_factory.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/browser/compositor/viz_process_transport_factory.cc -@@ -116,7 +116,7 @@ class HostDisplayClient : public viz::HostDisplayClien +@@ -108,7 +108,7 @@ class HostDisplayClient : public viz::HostDisplayClien // viz::HostDisplayClient: // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_devtools_protocol_system__info__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_devtools_protocol_system__info__handler.cc index 47562eb7d940..bc5aeb9a8c03 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_devtools_protocol_system__info__handler.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_devtools_protocol_system__info__handler.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/devtools/protocol/system_info_handler.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/content/browser/devtools/protocol/system_info_handler.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/browser/devtools/protocol/system_info_handler.cc -@@ -50,7 +50,7 @@ std::unique_ptr<SystemInfo::Size> GfxSizeToSystemInfoS +@@ -49,7 +49,7 @@ std::unique_ptr<SystemInfo::Size> GfxSizeToSystemInfoS // 1046598, and 1153667. // Windows builds need more time -- see Issue 873112 and 1004472. // Mac builds need more time - see Issue angleproject:6182. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_file__system__access_file__system__access__local__path__watcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_file__system__access_file__system__access__local__path__watcher.cc new file mode 100644 index 000000000000..95bcf928750a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_file__system__access_file__system__access__local__path__watcher.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/content/browser/file_system_access/file_system_access_local_path_watcher.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/content/browser/file_system_access/file_system_access_local_path_watcher.cc +@@ -56,7 +56,7 @@ void FileSystemAccessLocalPathWatcher::Initialize( + base::FilePathWatcher::WatchOptions watch_options { + .type = scope().IsRecursive() ? base::FilePathWatcher::Type::kRecursive + : base::FilePathWatcher::Type::kNonRecursive, +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Note: `report_modified_path` is also present on Android + // and Fuchsia. Update this switch if support for watching + // the local file system is added on those platforms. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.cc new file mode 100644 index 000000000000..9d9098464fef --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl.cc +@@ -405,7 +405,7 @@ void GpuDataManagerImpl::OnDisplayMetricsChanged( + private_->OnDisplayMetricsChanged(display, changed_metrics); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool GpuDataManagerImpl::IsGpuMemoryBufferNV12Supported() { + base::AutoLock auto_lock(lock_); + return private_->IsGpuMemoryBufferNV12Supported(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.h new file mode 100644 index 000000000000..40e498c97e5f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl.h +@@ -221,7 +221,7 @@ class CONTENT_EXPORT GpuDataManagerImpl : public GpuDa + void OnDisplayMetricsChanged(const display::Display& display, + uint32_t changed_metrics) override; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool IsGpuMemoryBufferNV12Supported(); + void SetGpuMemoryBufferNV12Supported(bool supported); + #endif // BUILDFLAG(IS_LINUX) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.cc new file mode 100644 index 000000000000..1af2cff7314f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl_private.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl_private.cc +@@ -1787,7 +1787,7 @@ void GpuDataManagerImplPrivate::RecordCompositingMode( + UMA_HISTOGRAM_ENUMERATION("GPU.CompositingMode", compositing_mode); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool GpuDataManagerImplPrivate::IsGpuMemoryBufferNV12Supported() { + return is_gpu_memory_buffer_NV12_supported_; + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.h new file mode 100644 index 000000000000..18bd9de3b825 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__data__manager__impl__private.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl_private.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/content/browser/gpu/gpu_data_manager_impl_private.h +@@ -151,7 +151,7 @@ class CONTENT_EXPORT GpuDataManagerImplPrivate { + void OnDisplayMetricsChanged(const display::Display& display, + uint32_t changed_metrics); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool IsGpuMemoryBufferNV12Supported(); + void SetGpuMemoryBufferNV12Supported(bool supported); + #endif // BUILDFLAG(IS_LINUX) +@@ -306,7 +306,7 @@ class CONTENT_EXPORT GpuDataManagerImplPrivate { + bool application_is_visible_ = true; + + bool disable_gpu_compositing_ = false; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool is_gpu_memory_buffer_NV12_supported_ = false; + #endif // BUILDFLAG(IS_LINUX) + }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__memory__buffer__manager__singleton.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__memory__buffer__manager__singleton.cc new file mode 100644 index 000000000000..fb3c0191ec87 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__memory__buffer__manager__singleton.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/browser/gpu/gpu_memory_buffer_manager_singleton.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/content/browser/gpu/gpu_memory_buffer_manager_singleton.cc +@@ -53,7 +53,7 @@ scoped_refptr<base::SingleThreadTaskRunner> GetTaskRun + #endif + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool IsGpuMemoryBufferNV12Supported() { + static bool is_computed = false; + static bool supported = false; +@@ -116,7 +116,7 @@ void GpuMemoryBufferManagerSingleton::OnGpuExtraInfoUp + SetNativeConfigurations(std::move(configs)); + } + #endif +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Dynamic check whether the NV12 format is supported as it may be + // inconsistent between the system GBM (Generic Buffer Management) and + // chromium miniGBM. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc index 7d86c8262770..930a6df857d5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/gpu/gpu_process_host.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/browser/gpu/gpu_process_host.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/gpu/gpu_process_host.cc -@@ -252,6 +252,7 @@ static const char* const kSwitchNames[] = { +@@ -256,6 +256,7 @@ static const char* const kSwitchNames[] = { switches::kEnableBackgroundThreadPool, switches::kEnableGpuRasterization, switches::kEnableLogging, @@ -8,7 +8,7 @@ switches::kDoubleBufferCompositing, switches::kHeadless, switches::kLoggingLevel, -@@ -283,7 +284,7 @@ static const char* const kSwitchNames[] = { +@@ -289,7 +290,7 @@ static const char* const kSwitchNames[] = { switches::kOzoneDumpFile, switches::kDisableBufferBWCompression, #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_frameless__media__interface__proxy.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_frameless__media__interface__proxy.cc deleted file mode 100644 index 6d49b8fe66c9..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_frameless__media__interface__proxy.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- src/3rdparty/chromium/content/browser/media/frameless_media_interface_proxy.cc.orig 2022-08-31 12:19:35 UTC -+++ src/3rdparty/chromium/content/browser/media/frameless_media_interface_proxy.cc -@@ -16,7 +16,7 @@ - #include "media/mojo/mojom/renderer_extensions.mojom.h" - #include "media/mojo/mojom/stable/stable_video_decoder.mojom.h" - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "content/public/browser/stable_video_decoder_factory.h" - #include "media/base/media_switches.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -67,7 +67,7 @@ void FramelessMediaInterfaceProxy::CreateVideoDecoder( - - mojo::PendingRemote<media::stable::mojom::StableVideoDecoder> - oop_video_decoder; --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - if (base::FeatureList::IsEnabled(media::kUseOutOfProcessVideoDecoding)) { - if (!render_process_host_) { - if (!stable_vd_factory_remote_.is_bound()) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__interface__proxy.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__interface__proxy.cc deleted file mode 100644 index d7025daf2fd0..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__interface__proxy.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- src/3rdparty/chromium/content/browser/media/media_interface_proxy.cc.orig 2022-10-24 13:33:33 UTC -+++ src/3rdparty/chromium/content/browser/media/media_interface_proxy.cc -@@ -73,7 +73,7 @@ - #include "media/mojo/services/mojo_renderer_service.h" // nogncheck - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "content/public/browser/stable_video_decoder_factory.h" - #include "media/base/media_switches.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -286,7 +286,7 @@ void MediaInterfaceProxy::CreateVideoDecoder( - - mojo::PendingRemote<media::stable::mojom::StableVideoDecoder> - oop_video_decoder; --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - if (base::FeatureList::IsEnabled(media::kUseOutOfProcessVideoDecoding)) { - render_frame_host().GetProcess()->CreateStableVideoDecoder( - oop_video_decoder.InitWithNewPipeAndPassReceiver()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__keys__listener__manager__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__keys__listener__manager__impl.cc index c4ec45daf0d9..ab773b105b71 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__keys__listener__manager__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__keys__listener__manager__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/media/media_keys_listener_manager_impl.cc.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/content/browser/media/media_keys_listener_manager_impl.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/content/browser/media/media_keys_listener_manager_impl.cc -@@ -233,7 +233,7 @@ void MediaKeysListenerManagerImpl::StartListeningForMe +@@ -234,7 +234,7 @@ void MediaKeysListenerManagerImpl::StartListeningForMe // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is // complete. #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_network__service__instance__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_network__service__instance__impl.cc index 3f3775cc4b05..7b48f931d99a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_network__service__instance__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_network__service__instance__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/network_service_instance_impl.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/network_service_instance_impl.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/browser/network_service_instance_impl.cc -@@ -76,7 +76,7 @@ +@@ -82,7 +82,7 @@ #include "content/browser/network/network_service_process_tracker_win.h" #endif @@ -9,12 +9,21 @@ #include "content/browser/system_dns_resolution/system_dns_resolver.h" #include "services/network/public/mojom/system_dns_resolution.mojom-forward.h" #endif -@@ -404,7 +404,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS +@@ -421,7 +421,7 @@ void CreateInProcessNetworkService( + #endif + } + +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Runs a self-owned SystemDnsResolverMojoImpl. This is meant to run on a + // high-priority thread pool. + void RunSystemDnsResolverOnThreadPool( +@@ -488,7 +488,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS } #endif // BUILDFLAG(IS_POSIX) --#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (GetContentClient() ->browser() ->ShouldRunOutOfProcessSystemDnsResolution() && diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_back__forward__cache__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_back__forward__cache__impl.cc deleted file mode 100644 index 80adf88d5161..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_back__forward__cache__impl.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/back_forward_cache_impl.cc.orig 2023-03-09 06:31:50 UTC -+++ src/3rdparty/chromium/content/browser/renderer_host/back_forward_cache_impl.cc -@@ -56,7 +56,7 @@ BASE_FEATURE(kBackForwardCacheSize, - // Sets the BackForwardCache size for desktop. - // See crbug.com/1291435. - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - base::FEATURE_ENABLED_BY_DEFAULT - #else - base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_delegated__frame__host.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_delegated__frame__host.cc index db196c7b2f00..bc9b7da1b672 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_delegated__frame__host.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_delegated__frame__host.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/delegated_frame_host.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/delegated_frame_host.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/delegated_frame_host.cc -@@ -295,7 +295,7 @@ void DelegatedFrameHost::EmbedSurface( +@@ -312,7 +312,7 @@ void DelegatedFrameHost::EmbedSurface( if (!primary_surface_id || primary_surface_id->local_surface_id() != local_surface_id_) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_media_service__video__capture__device__launcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_media_service__video__capture__device__launcher.cc new file mode 100644 index 000000000000..fd80eb76142b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_media_service__video__capture__device__launcher.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/browser/renderer_host/media/service_video_capture_device_launcher.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/content/browser/renderer_host/media/service_video_capture_device_launcher.cc +@@ -24,7 +24,7 @@ + #include "media/base/media_switches.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "content/browser/gpu/gpu_data_manager_impl.h" + #endif + +@@ -166,7 +166,7 @@ void ServiceVideoCaptureDeviceLauncher::LaunchDeviceAs + } + #else + if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled()) { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On Linux, additionally check whether the NV12 GPU memory buffer is + // supported. + if (GpuDataManagerImpl::GetInstance()->IsGpuMemoryBufferNV12Supported()) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc index 7721b63b40fe..c4ce8d2eff8f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.cc -@@ -212,7 +212,7 @@ +@@ -218,7 +218,7 @@ #include "third_party/blink/public/mojom/android_font_lookup/android_font_lookup.mojom.h" #endif @@ -9,7 +9,7 @@ #include <sys/resource.h> #include "components/services/font/public/mojom/font_service.mojom.h" // nogncheck -@@ -1148,7 +1148,7 @@ size_t GetPlatformProcessLimit() { +@@ -955,7 +955,7 @@ size_t GetPlatformProcessLimit() { // to indicate failure and std::numeric_limits<size_t>::max() to indicate // unlimited. size_t GetPlatformProcessLimit() { @@ -18,7 +18,7 @@ struct rlimit limit; if (getrlimit(RLIMIT_NPROC, &limit) != 0) return kUnknownPlatformProcessLimit; -@@ -1240,7 +1240,7 @@ class RenderProcessHostImpl::IOThreadHostImpl : public +@@ -1098,7 +1098,7 @@ class RenderProcessHostImpl::IOThreadHostImpl : public return; } @@ -27,7 +27,7 @@ if (auto font_receiver = receiver.As<font_service::mojom::FontService>()) { ConnectToFontService(std::move(font_receiver)); return; -@@ -1329,7 +1329,7 @@ class RenderProcessHostImpl::IOThreadHostImpl : public +@@ -1187,7 +1187,7 @@ class RenderProcessHostImpl::IOThreadHostImpl : public std::unique_ptr<service_manager::BinderRegistry> binders_; mojo::Receiver<mojom::ChildProcessHost> receiver_{this}; @@ -36,29 +36,20 @@ mojo::Remote<media::mojom::VideoEncodeAcceleratorProviderFactory> video_encode_accelerator_factory_remote_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -2168,7 +2168,7 @@ void RenderProcessHostImpl::ReinitializeLogging( - } - #endif // BUILDFLAG(IS_CHROMEOS_ASH) +@@ -3287,7 +3287,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( + base::TimeTicks::UnixEpoch().since_origin().InMicroseconds())); + } --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - void RenderProcessHostImpl::CreateStableVideoDecoder( - mojo::PendingReceiver<media::stable::mojom::StableVideoDecoder> receiver) { - DCHECK_CURRENTLY_ON(BrowserThread::UI); -@@ -3356,6 +3356,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Append `kDisableVideoCaptureUseGpuMemoryBuffer` flag if there is no support + // for NV12 GPU memory buffer. + if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled() && +@@ -3347,6 +3347,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin switches::kDisableSpeechAPI, switches::kDisableThreadedCompositing, switches::kDisableTouchDragDrop, + switches::kDisableUnveil, - switches::kDisableUseMojoVideoDecoderForPepper, switches::kDisableV8IdleTasks, switches::kDisableVideoCaptureUseGpuMemoryBuffer, -@@ -4847,7 +4848,7 @@ void RenderProcessHostImpl::ResetIPC() { - coordinator_connector_receiver_.reset(); - tracing_registration_.reset(); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - stable_video_decoder_factory_remote_.reset(); - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - + switches::kDisableWebGLImageChromium, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h index 9595b09fccf6..9f56dc81fc8f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h -@@ -85,7 +85,7 @@ - #include "content/public/browser/android/child_process_importance.h" - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "media/mojo/mojom/stable/stable_video_decoder.mojom.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - -@@ -495,7 +495,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -545,7 +545,7 @@ class CONTENT_EXPORT RenderProcessHostImpl // Sets this RenderProcessHost to be guest only. For Testing only. void SetForGuestsOnlyForTesting(); @@ -18,21 +9,3 @@ // Launch the zygote early in the browser startup. static void EarlyZygoteLaunch(); #endif // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_MAC) -@@ -704,7 +704,7 @@ class CONTENT_EXPORT RenderProcessHostImpl - mojo::PendingReceiver<blink::mojom::WebSocketConnector> receiver) - override; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - void CreateStableVideoDecoder( - mojo::PendingReceiver<media::stable::mojom::StableVideoDecoder> receiver) - override; -@@ -1181,7 +1181,7 @@ class CONTENT_EXPORT RenderProcessHostImpl - // RenderProcessHost. This is destroyed early in ResetIPC() method. - std::unique_ptr<PermissionServiceContext> permission_service_context_; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // Connection to the StableVideoDecoderFactory that lives in a utility - // process. This is only used for out-of-process video decoding. - mojo::Remote<media::stable::mojom::StableVideoDecoderFactory> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__view__host__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__view__host__impl.cc index cf2fc7e43e27..7d964a964f7e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__view__host__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__view__host__impl.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_view_host_impl.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_view_host_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_view_host_impl.cc -@@ -250,7 +250,7 @@ void RenderViewHostImpl::GetPlatformSpecificPrefs( +@@ -273,7 +273,7 @@ void RenderViewHostImpl::GetPlatformSpecificPrefs( display::win::ScreenWin::GetSystemMetricsInDIP(SM_CYVSCROLL); prefs->arrow_bitmap_width_horizontal_scroll_bar_in_dips = display::win::ScreenWin::GetSystemMetricsInDIP(SM_CXHSCROLL); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - prefs->system_font_family_name = gfx::Font().GetFontName(); - #elif BUILDFLAG(IS_FUCHSIA) - // Make Blink's "focus ring" invisible. The focus ring is a hairline border + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + if (command_line->HasSwitch(switches::kSystemFontFamily)) { + prefs->system_font_family_name = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.cc index bf643fd9f732..ae80ad304554 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -119,7 +119,7 @@ +@@ -121,7 +121,7 @@ #include "ui/gfx/gdi_util.h" #endif @@ -9,7 +9,7 @@ #include "content/browser/accessibility/browser_accessibility_auralinux.h" #include "ui/base/ime/linux/text_edit_command_auralinux.h" #include "ui/linux/linux_ui.h" -@@ -452,7 +452,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge +@@ -461,7 +461,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge return ToBrowserAccessibilityWin(manager->GetBrowserAccessibilityRoot()) ->GetCOM(); @@ -18,7 +18,7 @@ BrowserAccessibilityManager* manager = host()->GetOrCreateRootBrowserAccessibilityManager(); if (manager && manager->GetBrowserAccessibilityRoot()) -@@ -1588,7 +1588,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { +@@ -1720,7 +1720,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { return GetTextInputManager() && GetTextInputManager()->should_do_learning(); } @@ -27,7 +27,7 @@ bool RenderWidgetHostViewAura::SetCompositionFromExistingText( const gfx::Range& range, const std::vector<ui::ImeTextSpan>& ui_ime_text_spans) { -@@ -2420,7 +2420,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { +@@ -2565,7 +2565,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { } bool RenderWidgetHostViewAura::NeedsMouseCapture() { @@ -36,7 +36,7 @@ return NeedsInputGrab(); #else return false; -@@ -2597,7 +2597,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit +@@ -2748,7 +2748,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit if (!target_host) return; @@ -44,4 +44,4 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto* linux_ui = ui::LinuxUi::instance(); std::vector<ui::TextEditCommandAuraLinux> commands; - if (!event.skip_in_browser && linux_ui && event.os_event && + if (!event.skip_if_unhandled && linux_ui && event.os_event && diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.h index 287bb394b0e3..0322e463770c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_aura.h -@@ -244,7 +244,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAura +@@ -257,7 +257,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAura ukm::SourceId GetClientSourceForMetrics() const override; bool ShouldDoLearning() override; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__event__handler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__event__handler.cc index 92d32cbb737a..22b15cee0a8c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__event__handler.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__event__handler.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_event_handler.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_event_handler.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/content/browser/renderer_host/render_widget_host_view_event_handler.cc -@@ -596,7 +596,7 @@ bool RenderWidgetHostViewEventHandler::CanRendererHand +@@ -597,7 +597,7 @@ bool RenderWidgetHostViewEventHandler::CanRendererHand if (event->type() == ui::ET_MOUSE_EXITED) { if (mouse_locked || selection_popup) return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_sandbox__host__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_sandbox__host__linux.cc index 6a3e81247fd9..98daadc85c81 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_sandbox__host__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_sandbox__host__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/content/browser/sandbox_host_linux.cc.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/content/browser/sandbox_host_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/browser/sandbox_host_linux.cc @@ -45,6 +45,7 @@ void SandboxHostLinux::Init() { // Instead, it replies on a temporary socket provided by the caller. PCHECK(0 == shutdown(browser_socket, SHUT_WR)) << "shutdown"; -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) int pipefds[2]; CHECK(0 == pipe(pipefds)); const int child_lifeline_fd = pipefds[0]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor__impl.cc index 5943ba589267..290ad1688b2d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/scheduler/responsiveness/jank_monitor_impl.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/content/browser/scheduler/responsiveness/jank_monitor_impl.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/content/browser/scheduler/responsiveness/jank_monitor_impl.cc -@@ -334,7 +334,7 @@ void JankMonitorImpl::ThreadExecutionState::DidRunTask +@@ -340,7 +340,7 @@ void JankMonitorImpl::ThreadExecutionState::DidRunTask // in context menus, among others). Simply ignore the mismatches for now. // See https://crbug.com/929813 for the details of why the mismatch // happens. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_service__worker_service__worker__context__wrapper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_service__worker_service__worker__context__wrapper.cc new file mode 100644 index 000000000000..477a7524b89c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_service__worker_service__worker__context__wrapper.cc @@ -0,0 +1,15 @@ +--- src/3rdparty/chromium/content/browser/service_worker/service_worker_context_wrapper.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/content/browser/service_worker/service_worker_context_wrapper.cc +@@ -1409,7 +1409,12 @@ void ServiceWorkerContextWrapper::MaybeProcessPendingW + return; + } + ++#if defined(__clang__) && (__clang_major__ >= 16) + auto [document_url, key, callback] = std::move(*request); ++#else ++ auto [d_u, key, callback] = std::move(*request); ++ auto document_url = d_u; ++#endif + + DCHECK(document_url.is_valid()); + TRACE_EVENT1("ServiceWorker", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc new file mode 100644 index 000000000000..82c2bac9c1b1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc @@ -0,0 +1,56 @@ +--- src/3rdparty/chromium/content/browser/utility_process_host.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/content/browser/utility_process_host.cc +@@ -59,7 +59,7 @@ + #include "content/browser/v8_snapshot_files.h" + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "base/files/file_util.h" + #include "base/files/scoped_file.h" + #include "base/pickle.h" +@@ -69,7 +69,7 @@ + #include "media/capture/capture_switches.h" + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "base/task/sequenced_task_runner.h" + #include "components/viz/host/gpu_client.h" + #include "media/capture/capture_switches.h" +@@ -80,7 +80,7 @@ namespace { + + namespace { + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + base::ScopedFD PassNetworkContextParentDirs( + std::vector<base::FilePath> network_context_parent_dirs) { + base::Pickle pickle; +@@ -129,7 +129,7 @@ UtilityProcessHost::UtilityProcessHost(std::unique_ptr + started_(false), + name_(u"utility process"), + file_data_(std::make_unique<ChildProcessLauncherFileData>()), +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + gpu_client_(nullptr, base::OnTaskRunnerDeleter(nullptr)), + #endif + client_(std::move(client)) { +@@ -421,7 +421,7 @@ bool UtilityProcessHost::StartProcess() { + file_data_->files_to_preload.merge(GetV8SnapshotFilesToPreload()); + #endif // BUILDFLAG(IS_POSIX) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // The network service should have access to the parent directories + // necessary for its usage. + if (sandbox_type_ == sandbox::mojom::Sandbox::kNetwork) { +@@ -432,7 +432,7 @@ bool UtilityProcessHost::StartProcess() { + } + #endif // BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Pass `kVideoCaptureUseGpuMemoryBuffer` flag to video capture service only + // when the video capture use GPU memory buffer enabled and NV12 GPU memory + // buffer supported. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.h new file mode 100644 index 000000000000..aea00e23d172 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/browser/utility_process_host.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/content/browser/utility_process_host.h +@@ -39,7 +39,7 @@ namespace base { + class Thread; + } // namespace base + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + namespace viz { + class GpuClient; + } // namespace viz +@@ -225,7 +225,7 @@ class CONTENT_EXPORT UtilityProcessHost + std::vector<RunServiceDeprecatedCallback> pending_run_service_callbacks_; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + std::unique_ptr<viz::GpuClient, base::OnTaskRunnerDeleter> gpu_client_; + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host__receiver__bindings.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host__receiver__bindings.cc index 314f93bed1bb..d35523053a30 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host__receiver__bindings.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host__receiver__bindings.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/utility_process_host_receiver_bindings.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/browser/utility_process_host_receiver_bindings.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/browser/utility_process_host_receiver_bindings.cc -@@ -10,7 +10,7 @@ +@@ -10,12 +10,12 @@ #include "content/public/browser/content_browser_client.h" #include "content/public/common/content_client.h" @@ -9,7 +9,13 @@ #include "components/services/font/public/mojom/font_service.mojom.h" // nogncheck #include "content/browser/font_service.h" // nogncheck #endif -@@ -19,7 +19,7 @@ namespace content { + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "components/viz/host/gpu_client.h" + #include "content/public/browser/gpu_client.h" + #endif +@@ -24,13 +24,13 @@ namespace content { void UtilityProcessHost::BindHostReceiver( mojo::GenericPendingReceiver receiver) { @@ -18,3 +24,10 @@ if (auto font_receiver = receiver.As<font_service::mojom::FontService>()) { ConnectToFontService(std::move(font_receiver)); return; + } + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (auto gpu_receiver = receiver.As<viz::mojom::Gpu>()) { + gpu_client_ = + content::CreateGpuClient(std::move(gpu_receiver), base::DoNothing()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__sandbox__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__sandbox__delegate.cc index 1b208bccaa05..7ce84ddd1fc5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__sandbox__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__sandbox__delegate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/utility_sandbox_delegate.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/utility_sandbox_delegate.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/content/browser/utility_sandbox_delegate.cc -@@ -64,13 +64,13 @@ UtilitySandboxedProcessLauncherDelegate:: +@@ -63,13 +63,13 @@ UtilitySandboxedProcessLauncherDelegate:: #if BUILDFLAG(ENABLE_PPAPI) sandbox_type_ == sandbox::mojom::Sandbox::kPpapi || #endif @@ -17,7 +17,7 @@ sandbox_type_ == sandbox::mojom::Sandbox::kHardwareVideoEncoding || #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_CHROMEOS_ASH) -@@ -117,10 +117,10 @@ ZygoteCommunication* UtilitySandboxedProcessLauncherDe +@@ -124,10 +124,10 @@ ZygoteCommunication* UtilitySandboxedProcessLauncherDe // unsandboxed zygote and then apply their actual sandboxes in the forked // process upon startup. if (sandbox_type_ == sandbox::mojom::Sandbox::kNetwork || diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_web__contents_web__contents__view__aura.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_web__contents_web__contents__view__aura.cc index d24e69eab48d..7fa4e49ef2cf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_web__contents_web__contents__view__aura.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_web__contents_web__contents__view__aura.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/browser/web_contents/web_contents_view_aura.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/web_contents/web_contents_view_aura.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/browser/web_contents/web_contents_view_aura.cc @@ -178,7 +178,7 @@ class WebDragSourceAura : public content::WebContentsO raw_ptr<aura::Window> window_; @@ -18,7 +18,7 @@ // We set the file contents before the URL because the URL also sets file // contents (to a .URL shortcut). We want to prefer file content data over // a shortcut so we add it first. -@@ -1371,7 +1371,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* +@@ -1340,7 +1340,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* // Linux window managers like to handle raise-on-click themselves. If we // raise-on-click manually, this may override user settings that prevent // focus-stealing. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_web__ui__main__frame__observer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_web__ui__main__frame__observer.cc index ba73c6926ab2..d4e2edce9b70 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_web__ui__main__frame__observer.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_web__ui__main__frame__observer.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/browser/webui/web_ui_main_frame_observer.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/browser/webui/web_ui_main_frame_observer.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/content/browser/webui/web_ui_main_frame_observer.cc @@ -13,7 +13,7 @@ #include "content/public/browser/navigation_handle.h" @@ -27,7 +27,7 @@ void WebUIMainFrameObserver::OnDidAddMessageToConsole( RenderFrameHost* source_frame, blink::mojom::ConsoleMessageLevel log_level, -@@ -163,7 +163,7 @@ void WebUIMainFrameObserver::ReadyToCommitNavigation( +@@ -167,7 +167,7 @@ void WebUIMainFrameObserver::ReadyToCommitNavigation( // TODO(crbug.com/1129544) This is currently disabled due to Windows DLL // thunking issues. Fix & re-enable. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_zygote__host_zygote__host__impl__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_zygote__host_zygote__host__impl__linux.cc index 0ad768406f15..dde0143d78ed 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_zygote__host_zygote__host__impl__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_browser_zygote__host_zygote__host__impl__linux.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2023-11-20 16:08:07 UTC +--- src/3rdparty/chromium/content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/browser/zygote_host/zygote_host_impl_linux.cc -@@ -20,8 +20,10 @@ +@@ -20,13 +20,19 @@ #include "build/chromeos_buildflags.h" #include "content/common/zygote/zygote_commands_linux.h" #include "content/common/zygote/zygote_communication_linux.h" @@ -11,7 +11,16 @@ #include "sandbox/linux/services/credentials.h" #include "sandbox/linux/services/namespace_sandbox.h" #include "sandbox/linux/suid/client/setuid_sandbox_host.h" -@@ -39,6 +41,7 @@ namespace { + #include "sandbox/linux/suid/common/sandbox.h" ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" ++#else + #include "sandbox/policy/linux/sandbox_linux.h" ++#endif + #include "sandbox/policy/switches.h" + + #if BUILDFLAG(IS_CHROMEOS) +@@ -39,6 +45,7 @@ namespace { namespace { @@ -19,7 +28,7 @@ // Receive a fixed message on fd and return the sender's PID. // Returns true if the message received matches the expected message. bool ReceiveFixedMessage(int fd, -@@ -60,6 +63,7 @@ bool ReceiveFixedMessage(int fd, +@@ -60,6 +67,7 @@ bool ReceiveFixedMessage(int fd, return false; return true; } @@ -27,7 +36,7 @@ } // namespace -@@ -69,9 +73,13 @@ ZygoteHostImpl::ZygoteHostImpl() +@@ -69,9 +77,13 @@ ZygoteHostImpl::ZygoteHostImpl() } ZygoteHostImpl::ZygoteHostImpl() @@ -41,7 +50,7 @@ sandbox_binary_(), zygote_pids_lock_(), zygote_pids_() {} -@@ -84,6 +92,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com +@@ -84,6 +96,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com } void ZygoteHostImpl::Init(const base::CommandLine& command_line) { @@ -49,7 +58,7 @@ if (command_line.HasSwitch(sandbox::policy::switches::kNoSandbox)) { return; } -@@ -134,6 +143,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com +@@ -134,6 +147,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com "you can try using --" << sandbox::policy::switches::kNoSandbox << "."; } @@ -57,7 +66,7 @@ } void ZygoteHostImpl::AddZygotePid(pid_t pid) { -@@ -158,6 +168,7 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -158,6 +172,7 @@ pid_t ZygoteHostImpl::LaunchZygote( base::CommandLine* cmd_line, base::ScopedFD* control_fd, base::FileHandleMappingVector additional_remapped_fds) { @@ -65,7 +74,7 @@ int fds[2]; #if !defined(TOOLKIT_QT) CHECK_EQ(0, socketpair(AF_UNIX, SOCK_SEQPACKET, 0, fds)); -@@ -232,9 +243,12 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -232,9 +247,12 @@ pid_t ZygoteHostImpl::LaunchZygote( AddZygotePid(pid); return pid; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_child_child__process.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_child_child__process.cc index 39e9f408b7dc..5e6ce6e52391 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_child_child__process.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_child_child__process.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/content/child/child_process.cc.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/content/child/child_process.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/child/child_process.cc -@@ -68,7 +68,7 @@ ChildProcess::ChildProcess(base::ThreadType io_thread_ - DCHECK(!g_lazy_child_process_tls.Pointer()->Get()); - g_lazy_child_process_tls.Pointer()->Set(this); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +@@ -70,7 +70,7 @@ ChildProcess::ChildProcess(base::ThreadType io_thread_ + io_thread_(std::make_unique<ChildIOThread>()) { const base::CommandLine& command_line = *base::CommandLine::ForCurrentProcess(); +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const bool is_embedded_in_browser_process = + !command_line.HasSwitch(switches::kProcessType); + if (IsMojoCoreSharedLibraryEnabled() && !is_embedded_in_browser_process) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_BUILD.gn index 22c49257a7b5..2c3e5ed10695 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/common/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/common/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/common/BUILD.gn -@@ -449,6 +449,9 @@ if (is_linux || is_chromeos) { +@@ -452,6 +452,9 @@ if (is_linux || is_chromeos) { public = [ "set_process_title_linux.h" ] sources = [ "set_process_title_linux.cc" ] deps = [ "//base" ] @@ -10,7 +10,7 @@ } } -@@ -497,7 +500,7 @@ mojom("mojo_bindings") { +@@ -498,7 +501,7 @@ mojom("mojo_bindings") { if (enable_ipc_logging) { enabled_features += [ "ipc_logging" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_zygote_sandbox__support__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_zygote_sandbox__support__linux.cc new file mode 100644 index 000000000000..068d9a30097e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_common_zygote_sandbox__support__linux.cc @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/content/common/zygote/sandbox_support_linux.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/content/common/zygote/sandbox_support_linux.cc +@@ -8,7 +8,11 @@ + #include "base/posix/global_descriptors.h" + #include "base/posix/unix_domain_socket.h" + #include "content/public/common/content_descriptors.h" ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" ++#else + #include "sandbox/policy/linux/sandbox_linux.h" ++#endif + + namespace content { + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_BUILD.gn new file mode 100644 index 000000000000..c28dadfad11f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_BUILD.gn @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/gpu/BUILD.gn.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/content/gpu/BUILD.gn +@@ -107,6 +107,17 @@ target(link_target_type, "gpu_sources") { + } + } + ++ if (is_bsd) { ++ sources -= [ ++ "gpu_sandbox_hook_linux.cc", ++ "gpu_sandbox_hook_linux.h", ++ ] ++ sources += [ ++ "gpu_sandbox_hook_bsd.cc", ++ "gpu_sandbox_hook_bsd.h", ++ ] ++ } ++ + if (is_chromeos_ash) { + deps += [ + "//components/services/font/public/cpp", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc index f50f4c5dfade..e0b2facb3e42 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc @@ -1,15 +1,19 @@ ---- src/3rdparty/chromium/content/gpu/gpu_main.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/gpu/gpu_main.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/gpu/gpu_main.cc -@@ -89,7 +89,7 @@ - #include "sandbox/win/src/sandbox.h" +@@ -96,6 +96,12 @@ + #include "sandbox/policy/sandbox_type.h" #endif --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "content/gpu/gpu_sandbox_hook_linux.h" - #include "sandbox/policy/linux/sandbox_linux.h" - #include "sandbox/policy/sandbox_type.h" -@@ -110,7 +110,7 @@ namespace content { ++#if BUILDFLAG(IS_BSD) ++#include "content/gpu/gpu_sandbox_hook_bsd.h" ++#include "sandbox/policy/sandbox.h" ++#include "sandbox/policy/sandbox_type.h" ++#endif ++ + #if BUILDFLAG(IS_MAC) + #include "base/message_loop/message_pump_apple.h" + #include "components/metal_util/device_removal.h" +@@ -112,7 +118,7 @@ namespace { namespace { @@ -18,7 +22,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread*, const gpu::GPUInfo*, const gpu::GpuPreferences&); -@@ -172,7 +172,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel +@@ -177,7 +183,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel bool EnsureSandboxInitialized(gpu::GpuWatchdogThread* watchdog_thread, const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) override { @@ -27,7 +31,7 @@ return StartSandboxLinux(watchdog_thread, gpu_info, gpu_prefs); #elif BUILDFLAG(IS_WIN) return StartSandboxWindows(sandbox_info_); -@@ -270,7 +270,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -287,7 +293,7 @@ int GpuMain(MainFunctionParams parameters) { std::make_unique<base::SingleThreadTaskExecutor>( gpu_preferences.message_pump_type); } @@ -36,7 +40,7 @@ #error "Unsupported Linux platform." #elif BUILDFLAG(IS_MAC) // Cross-process CoreAnimation requires a CFRunLoop to function at all, and -@@ -405,7 +405,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -422,7 +428,7 @@ namespace { namespace { @@ -45,3 +49,12 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread, const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) { +@@ -462,7 +468,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo + sandbox_options.accelerated_video_encode_enabled = + !gpu_prefs.disable_accelerated_video_encode; + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Video decoding of many video streams can use thousands of FDs as well as + // Exo clients like Lacros. + // See https://crbug.com/1417237 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.cc new file mode 100644 index 000000000000..0ec98f987d6d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.cc @@ -0,0 +1,72 @@ +--- src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_bsd.cc.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_bsd.cc +@@ -0,0 +1,69 @@ ++// Copyright 2023 The Chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++#include "content/gpu/gpu_sandbox_hook_bsd.h" ++ ++#include <dlfcn.h> ++#include <errno.h> ++#include <sys/stat.h> ++ ++#include <memory> ++#include <sstream> ++#include <utility> ++#include <vector> ++ ++#include "base/base_paths.h" ++#include "base/files/file_enumerator.h" ++#include "base/files/file_path.h" ++#include "base/files/scoped_file.h" ++#include "base/functional/bind.h" ++#include "base/logging.h" ++#include "base/path_service.h" ++#include "base/strings/stringprintf.h" ++#include "build/build_config.h" ++#include "build/buildflag.h" ++#include "build/chromeos_buildflags.h" ++#include "content/common/set_process_title.h" ++#include "content/public/common/content_switches.h" ++#include "media/gpu/buildflags.h" ++ ++namespace content { ++namespace { ++ ++constexpr int dlopen_flag = RTLD_NOW | RTLD_GLOBAL | RTLD_NODELETE; ++ ++void LoadVulkanLibraries() { ++ // Try to preload Vulkan libraries. Failure is not an error as not all may be ++ // present. ++ const char* kLibraries[] = { ++ "libvulkan.so", ++ "libvulkan_intel.so", ++ "libvulkan_intel_hasvk.so", ++ "libvulkan_radeon.so", ++ }; ++ for (const auto* library : kLibraries) { ++ dlopen(library, dlopen_flag); ++ } ++} ++ ++bool LoadLibrariesForGpu( ++ const sandbox::policy::SandboxSeccompBPF::Options& options) { ++ LoadVulkanLibraries(); ++ ++ return true; ++} ++ ++} // namespace ++ ++bool GpuProcessPreSandboxHook(sandbox::policy::SandboxLinux::Options options) { ++ if (!LoadLibrariesForGpu(options)) ++ return false; ++ ++ // TODO(tsepez): enable namspace sandbox here once crashes are understood. ++ ++ errno = 0; ++ return true; ++} ++ ++} // namespace content diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.h new file mode 100644 index 000000000000..128ed7a19949 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__bsd.h @@ -0,0 +1,19 @@ +--- src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_bsd.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_bsd.h +@@ -0,0 +1,16 @@ ++// Copyright 2023 The Chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++#ifndef CONTENT_GPU_GPU_SANDBOX_HOOK_BSD_H_ ++#define CONTENT_GPU_GPU_SANDBOX_HOOK_BSD_H_ ++ ++#include "sandbox/policy/sandbox.h" ++ ++namespace content { ++ ++bool GpuProcessPreSandboxHook(sandbox::policy::SandboxLinux::Options options); ++ ++} // namespace content ++ ++#endif // CONTENT_GPU_GPU_SANDBOX_HOOK_BSD_H_ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__linux.cc deleted file mode 100644 index 6920209bd382..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__sandbox__hook__linux.cc +++ /dev/null @@ -1,70 +0,0 @@ ---- src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_linux.cc.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/content/gpu/gpu_sandbox_hook_linux.cc -@@ -126,6 +126,7 @@ void AddStandardChromeOsPermissions( - } - } - -+#if !defined(OS_BSD) - void AddV4L2GpuPermissions( - std::vector<BrokerFilePermission>* permissions, - const sandbox::policy::SandboxSeccompBPF::Options& options) { -@@ -484,8 +485,10 @@ std::vector<BrokerFilePermission> FilePermissionsForGp - AddStandardGpuPermissions(&permissions); - return permissions; - } -+#endif - - void LoadArmGpuLibraries() { -+#if !defined(OS_BSD) - // Preload the Mali library. - if (UseChromecastSandboxAllowlist()) { - for (const char* path : kAllowedChromecastPaths) { -@@ -530,6 +533,7 @@ void LoadArmGpuLibraries() { - dlopen(driver_paths[i], dlopen_flag); - } - } -+#endif - } - - bool LoadAmdGpuLibraries() { -@@ -597,12 +601,14 @@ void LoadV4L2Libraries( - } - - void LoadChromecastV4L2Libraries() { -+#if !defined(OS_BSD) - for (const char* path : kAllowedChromecastPaths) { - const std::string library_path(std::string(path) + - std::string("libvpcodec.so")); - if (dlopen(library_path.c_str(), dlopen_flag)) - break; - } -+#endif - } - - bool LoadLibrariesForGpu( -@@ -629,6 +635,7 @@ bool LoadLibrariesForGpu( - return true; - } - -+#if !defined(OS_BSD) - sandbox::syscall_broker::BrokerCommandSet CommandSetForGPU( - const sandbox::policy::SandboxLinux::Options& options) { - sandbox::syscall_broker::BrokerCommandSet command_set; -@@ -652,13 +659,17 @@ bool BrokerProcessPreSandboxHook( - SetProcessTitleFromCommandLine(nullptr); - return true; - } -+#endif - - } // namespace - - bool GpuProcessPreSandboxHook(sandbox::policy::SandboxLinux::Options options) { -+ NOTIMPLEMENTED(); -+#if !defined(OS_BSD) - sandbox::policy::SandboxLinux::GetInstance()->StartBrokerProcess( - CommandSetForGPU(options), FilePermissionsForGpu(options), - base::BindOnce(BrokerProcessPreSandboxHook), options); -+#endif - - if (!LoadLibrariesForGpu(options)) - return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.cc index d5e6a99f12c2..f863f26662e2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.cc @@ -20,7 +20,7 @@ @@ -18,7 +18,7 @@ mojo::PendingRemote<font_service::mojom::FontService> font_service; ChildThread::Get()->BindHostReceiver( font_service.InitWithNewPipeAndPassReceiver()); -@@ -53,7 +53,7 @@ PpapiBlinkPlatformImpl::~PpapiBlinkPlatformImpl() { +@@ -54,7 +54,7 @@ PpapiBlinkPlatformImpl::~PpapiBlinkPlatformImpl() { void PpapiBlinkPlatformImpl::Shutdown() {} blink::WebSandboxSupport* PpapiBlinkPlatformImpl::GetSandboxSupport() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.h index de15ece47ec6..f5eb17471071 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.h @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.h.orig 2022-07-22 17:30:31 UTC +--- src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/content/ppapi_plugin/ppapi_blink_platform_impl.h -@@ -12,7 +12,7 @@ - #include "build/build_config.h" - #include "content/child/blink_platform_impl.h" - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "components/services/font/public/cpp/font_loader.h" - #include "third_party/skia/include/core/SkRefCnt.h" - #endif -@@ -38,11 +38,11 @@ class PpapiBlinkPlatformImpl : public BlinkPlatformImp +@@ -33,7 +33,7 @@ class PpapiBlinkPlatformImpl : public BlinkPlatformImp blink::WebString DefaultLocale() override; private: @@ -17,9 +8,4 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) std::unique_ptr<blink::WebSandboxSupport> sandbox_support_; #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - sk_sp<font_service::FontLoader> font_loader_; - #endif }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__plugin__main.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__plugin__main.cc index 58b3d3f9e158..e70ef9f3685c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__plugin__main.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__plugin__main.cc @@ -1,18 +1,18 @@ ---- src/3rdparty/chromium/content/ppapi_plugin/ppapi_plugin_main.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/content/ppapi_plugin/ppapi_plugin_main.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/content/ppapi_plugin/ppapi_plugin_main.cc @@ -54,6 +54,11 @@ #include "gin/v8_initializer.h" #endif -+#if BUILDFLAG(IS_OPENBSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" +#include "sandbox/policy/sandbox_type.h" +#endif + #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID) #include <stdlib.h> #endif -@@ -148,7 +153,7 @@ int PpapiPluginMain(MainFunctionParams parameters) { +@@ -150,7 +155,7 @@ int PpapiPluginMain(MainFunctionParams parameters) { gin::V8Initializer::LoadV8Snapshot(); #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_browser_render__process__host.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_browser_render__process__host.h deleted file mode 100644 index cf9b4383ff71..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_browser_render__process__host.h +++ /dev/null @@ -1,20 +0,0 @@ ---- src/3rdparty/chromium/content/public/browser/render_process_host.h.orig 2023-08-16 19:50:41 UTC -+++ src/3rdparty/chromium/content/public/browser/render_process_host.h -@@ -53,7 +53,7 @@ - #include "content/public/browser/android/child_process_importance.h" - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "media/mojo/mojom/stable/stable_video_decoder.mojom-forward.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - -@@ -643,7 +643,7 @@ class CONTENT_EXPORT RenderProcessHost : public IPC::S - const blink::StorageKey& storage_key, - mojo::PendingReceiver<blink::mojom::WebSocketConnector> receiver) = 0; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - virtual void CreateStableVideoDecoder( - mojo::PendingReceiver<media::stable::mojom::StableVideoDecoder> - receiver) = 0; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_common__param__traits__macros.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_common__param__traits__macros.h deleted file mode 100644 index 37d5f65f805d..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_common__param__traits__macros.h +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/content/public/common/common_param_traits_macros.h.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/content/public/common/common_param_traits_macros.h -@@ -113,7 +113,7 @@ IPC_STRUCT_TRAITS_BEGIN(blink::RendererPreferences) - IPC_STRUCT_TRAITS_MEMBER(accept_languages) - IPC_STRUCT_TRAITS_MEMBER(plugin_fullscreen_allowed) - IPC_STRUCT_TRAITS_MEMBER(caret_browsing_enabled) --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - IPC_STRUCT_TRAITS_MEMBER(system_font_family_name) - #endif - #if BUILDFLAG(IS_WIN) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc index d592aeeaf729..3084de3ef633 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/public/common/content_features.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/public/common/content_features.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/public/common/content_features.cc -@@ -39,7 +39,7 @@ CONSTINIT const base::Feature kAudioServiceOutOfProces +@@ -53,7 +53,7 @@ CONSTINIT const base::Feature kAudioServiceOutOfProces "AudioServiceOutOfProcess", // TODO(crbug.com/1052397): Remove !IS_CHROMEOS_LACROS once lacros starts being // built with OS_CHROMEOS instead of OS_LINUX. @@ -9,7 +9,7 @@ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) base::FEATURE_ENABLED_BY_DEFAULT #else -@@ -51,7 +51,7 @@ CONSTINIT const base::Feature kAudioServiceSandbox( +@@ -65,7 +65,7 @@ CONSTINIT const base::Feature kAudioServiceSandbox( // kAudioServiceOutOfProcess feature is enabled. CONSTINIT const base::Feature kAudioServiceSandbox( "AudioServiceSandbox", @@ -18,7 +18,7 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -547,7 +547,7 @@ BASE_FEATURE(kGreaseUACH, "GreaseUACH", base::FEATURE_ +@@ -553,7 +553,7 @@ BASE_FEATURE(kGreaseUACH, "GreaseUACH", base::FEATURE_ // (activated by kUserAgentClientHint) BASE_FEATURE(kGreaseUACH, "GreaseUACH", base::FEATURE_ENABLED_BY_DEFAULT); @@ -27,7 +27,7 @@ // Supports proxying thread type changes of renderer processes to browser // process and having browser process handle adjusting thread properties (nice // value, c-group, latency sensitivity...) for renderers which have sandbox -@@ -1367,7 +1367,7 @@ CONSTINIT const base::Feature kWebAssemblyTrapHandler( +@@ -1463,7 +1463,7 @@ CONSTINIT const base::Feature kWebAssemblyTrapHandler( CONSTINIT const base::Feature kWebAssemblyTrapHandler( "WebAssemblyTrapHandler", #if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ @@ -36,7 +36,7 @@ defined(ARCH_CPU_X86_64)) || \ (BUILDFLAG(IS_MAC) && defined(ARCH_CPU_ARM64)) base::FEATURE_ENABLED_BY_DEFAULT -@@ -1425,7 +1425,11 @@ BASE_FEATURE(kWebUICodeCache, +@@ -1515,7 +1515,11 @@ BASE_FEATURE(kWebUICodeCache, // Controls whether the WebUSB API is enabled: // https://wicg.github.io/webusb diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.h index de357c63ced2..d7ee045c1029 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.h @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/content/public/common/content_features.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/public/common/content_features.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/public/common/content_features.h -@@ -115,7 +115,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kFractionalScrollO - CONTENT_EXPORT BASE_DECLARE_FEATURE(kGetDisplayMediaSet); - CONTENT_EXPORT BASE_DECLARE_FEATURE(kGetDisplayMediaSetAutoSelectAllScreens); +@@ -120,7 +120,7 @@ CONTENT_EXPORT extern const base::FeatureParam<int> + kFledgeLimitNumAuctionsParam; + CONTENT_EXPORT BASE_DECLARE_FEATURE(kFractionalScrollOffsets); CONTENT_EXPORT BASE_DECLARE_FEATURE(kGreaseUACH); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.cc index 535f44c60e96..99948ec551ee 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/public/common/content_switches.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/public/common/content_switches.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/public/common/content_switches.cc -@@ -368,6 +368,8 @@ const char kEnableLogging[] = "enable- +@@ -367,6 +367,8 @@ const char kEnableLogging[] = "enable- // builds. const char kEnableLogging[] = "enable-logging"; @@ -9,7 +9,7 @@ // Enables the type, downlinkMax attributes of the NetInfo API. Also, enables // triggering of change attribute of the NetInfo API when there is a change in // the connection type. -@@ -997,7 +999,7 @@ const char kEnableAutomation[] = "enable-automation"; +@@ -994,7 +996,7 @@ const char kEnableAutomation[] = "enable-automation"; // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.h index ba30c2a1a589..ce4c47018ec3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__switches.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/public/common/content_switches.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/public/common/content_switches.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/public/common/content_switches.h -@@ -117,6 +117,7 @@ CONTENT_EXPORT extern const char kEnableLogging[]; +@@ -116,6 +116,7 @@ CONTENT_EXPORT extern const char kEnableLogging[]; CONTENT_EXPORT extern const char kEnableIsolatedWebAppsInRenderer[]; CONTENT_EXPORT extern const char kEnableLCDText[]; CONTENT_EXPORT extern const char kEnableLogging[]; @@ -8,12 +8,12 @@ CONTENT_EXPORT extern const char kEnableNetworkInformationDownlinkMax[]; CONTENT_EXPORT extern const char kEnableCanvas2DLayers[]; CONTENT_EXPORT extern const char kEnablePluginPlaceholderTesting[]; -@@ -269,7 +270,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD +@@ -267,7 +268,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) CONTENT_EXPORT extern const char kEnableSpeechDispatcher[]; + CONTENT_EXPORT extern const char kLLVMProfileFile[]; #endif - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_BUILD.gn index 4410e83b82ca..bf4e7b20e0a2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/renderer/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/renderer/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/renderer/BUILD.gn -@@ -201,6 +201,13 @@ target(link_target_type, "renderer") { +@@ -202,6 +202,13 @@ target(link_target_type, "renderer") { ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc index 14d4ad1a1c8d..af37d4bcacc1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/renderer/render_process_impl.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/content/renderer/render_process_impl.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/content/renderer/render_process_impl.cc -@@ -46,7 +46,7 @@ +@@ -45,7 +45,7 @@ #if BUILDFLAG(IS_WIN) #include "base/win/win_util.h" #endif @@ -9,9 +9,9 @@ #include "v8/include/v8-wasm-trap-handler-posix.h" #endif -@@ -223,7 +223,7 @@ RenderProcessImpl::RenderProcessImpl() - SetV8FlagIfNotFeature(features::kWebAssemblyDynamicTiering, - "--no-wasm-dynamic-tiering"); +@@ -211,7 +211,7 @@ RenderProcessImpl::RenderProcessImpl() + v8::V8::SetFlagsFromString(kSABPerContextFlag, sizeof(kSABPerContextFlag)); + } -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(ARCH_CPU_X86_64) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_X86_64) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc index ffa541d18f0a..26b8b530e9d3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/renderer/render_thread_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/renderer/render_thread_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/renderer/render_thread_impl.cc -@@ -201,6 +201,8 @@ +@@ -204,6 +204,8 @@ #if BUILDFLAG(IS_APPLE) #include <malloc/malloc.h> @@ -9,8 +9,8 @@ #else #include <malloc.h> #endif -@@ -1069,7 +1071,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: - kGpuStreamPriorityMedia); +@@ -1054,7 +1056,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: + kGpuStreamIdMedia, kGpuStreamPriorityMedia); const bool enable_video_decode_accelerator = -#if BUILDFLAG(IS_LINUX) @@ -18,7 +18,7 @@ base::FeatureList::IsEnabled(media::kVaapiVideoDecodeLinux) && #endif // BUILDFLAG(IS_LINUX) !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) && -@@ -1078,7 +1080,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -1063,7 +1065,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: gpu::kGpuFeatureStatusEnabled); const bool enable_video_encode_accelerator = @@ -27,7 +27,7 @@ base::FeatureList::IsEnabled(media::kVaapiVideoEncodeLinux) && #else !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoEncode) && -@@ -1863,7 +1865,7 @@ std::unique_ptr<CodecFactory> RenderThreadImpl::Create +@@ -1835,7 +1837,7 @@ std::unique_ptr<CodecFactory> RenderThreadImpl::Create bool enable_video_encode_accelerator) { mojo::PendingRemote<media::mojom::VideoEncodeAcceleratorProvider> vea_provider; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.cc index 3bfa097f2559..060686c4c243 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.cc -@@ -111,7 +111,7 @@ +@@ -114,7 +114,7 @@ #if BUILDFLAG(IS_MAC) #include "content/child/child_process_sandbox_support_impl_mac.h" @@ -9,8 +9,15 @@ #include "content/child/child_process_sandbox_support_impl_linux.h" #endif -@@ -177,7 +177,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -182,13 +182,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( + sudden_termination_disables_(0), + is_locked_to_site_(false), main_thread_scheduler_(main_thread_scheduler) { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + sk_sp<font_service::FontLoader> font_loader; + #endif + // RenderThread may not exist in some tests. if (RenderThreadImpl::current()) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -18,7 +25,7 @@ mojo::PendingRemote<font_service::mojom::FontService> font_service; RenderThreadImpl::current()->BindHostReceiver( font_service.InitWithNewPipeAndPassReceiver()); -@@ -187,7 +187,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -197,7 +197,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( #endif } @@ -27,7 +34,7 @@ if (sandboxEnabled()) { #if BUILDFLAG(IS_MAC) sandbox_support_ = std::make_unique<WebSandboxSupportMac>(); -@@ -245,7 +245,7 @@ void RendererBlinkPlatformImpl::SetThreadType(base::Pl +@@ -255,7 +255,7 @@ void RendererBlinkPlatformImpl::SetThreadType(base::Pl #endif blink::WebSandboxSupport* RendererBlinkPlatformImpl::GetSandboxSupport() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.h index 2789c4d5a798..dcb3e128fd14 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__impl.h @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/renderer/renderer_blink_platform_impl.h -@@ -32,7 +32,7 @@ - #include "third_party/blink/public/common/user_agent/user_agent_metadata.h" - #include "third_party/blink/public/mojom/cache_storage/cache_storage.mojom.h" - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "components/services/font/public/cpp/font_loader.h" // nogncheck - #include "third_party/skia/include/core/SkRefCnt.h" // nogncheck - #endif -@@ -245,7 +245,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi +@@ -238,7 +238,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi void Collect3DContextInformation(blink::Platform::GraphicsInfo* gl_info, const gpu::GPUInfo& gpu_info) const; @@ -18,12 +9,3 @@ std::unique_ptr<blink::WebSandboxSupport> sandbox_support_; #endif -@@ -265,7 +265,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi - mutable base::WaitableEvent io_thread_id_ready_event_; - base::PlatformThreadId io_thread_id_ = base::kInvalidThreadId; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - sk_sp<font_service::FontLoader> font_loader_; - #endif - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc index 1ebfc9a23937..b85856e382f0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/content/renderer/renderer_main_platform_delegate_linux.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/renderer/renderer_main_platform_delegate_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/renderer/renderer_main_platform_delegate_linux.cc @@ -44,6 +44,7 @@ bool RendererMainPlatformDelegate::EnableSandbox() { // any renderer has been started. // Here, we test that the status of SeccompBpf in the renderer is consistent // with what SandboxLinux::GetStatus() said we would do. -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) auto* linux_sandbox = sandbox::policy::SandboxLinux::GetInstance(); if (linux_sandbox->GetStatus() & sandbox::policy::SandboxLinux::kSeccompBPF) { CHECK(linux_sandbox->seccomp_bpf_started()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn index a7caeb229c6f..f359dfb9b3cf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/shell/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/shell/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/shell/BUILD.gn -@@ -968,7 +968,7 @@ group("content_shell_crash_test") { +@@ -1029,7 +1029,7 @@ group("content_shell_crash_test") { if (is_win) { data_deps += [ "//build/win:copy_cdb_to_output" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_app_shell__main__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_app_shell__main__delegate.cc index 228b6a2a1272..e486515dc0f5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_app_shell__main__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_shell_app_shell__main__delegate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/shell/app/shell_main_delegate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/shell/app/shell_main_delegate.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/content/shell/app/shell_main_delegate.cc -@@ -221,7 +221,7 @@ void ShellMainDelegate::PreSandboxStartup() { +@@ -223,7 +223,7 @@ void ShellMainDelegate::PreSandboxStartup() { // Reporting for sub-processes will be initialized in ZygoteForked. if (process_type != switches::kZygoteProcess) { crash_reporter::InitializeCrashpad(process_type.empty(), process_type); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_test_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_test_BUILD.gn index d395863a26de..3ab8bdf4ba9f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_test_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_test_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/content/test/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/test/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/test/BUILD.gn -@@ -2129,7 +2129,7 @@ static_library("run_all_unittests") { +@@ -2235,7 +2235,7 @@ static_library("run_all_unittests") { ":test_support", "//base/test:test_support", ] @@ -9,7 +9,7 @@ deps += [ "//content/common:set_process_title_linux" ] } } -@@ -3162,7 +3162,7 @@ test("content_unittests") { +@@ -3304,7 +3304,7 @@ test("content_unittests") { deps += [ "//third_party/boringssl" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_services.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_services.cc index 3466a1eababe..b9c83c39cd00 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_services.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_services.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/utility/services.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/content/utility/services.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/utility/services.cc @@ -64,7 +64,7 @@ extern sandbox::TargetServices* g_utility_target_services; @@ -18,7 +18,16 @@ (BUILDFLAG(USE_VAAPI) || BUILDFLAG(USE_V4L2_CODEC)) #include "media/mojo/services/stable_video_decoder_factory_process_service.h" // nogncheck #endif // (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)) && -@@ -215,7 +215,7 @@ auto RunAudio(mojo::PendingReceiver<audio::mojom::Audi +@@ -109,7 +109,7 @@ extern sandbox::TargetServices* g_utility_target_servi + #include "ui/accessibility/accessibility_features.h" + #endif // BUILDFLAG(ENABLE_ACCESSIBILITY_SERVICE) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "media/capture/capture_switches.h" + #include "services/viz/public/cpp/gpu/gpu.h" + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +@@ -226,7 +226,7 @@ auto RunAudio(mojo::PendingReceiver<audio::mojom::Audi << "task_policy_set TASK_QOS_POLICY"; #endif @@ -27,7 +36,16 @@ auto* command_line = base::CommandLine::ForCurrentProcess(); if (sandbox::policy::SandboxTypeFromCommandLine(*command_line) == sandbox::mojom::Sandbox::kNoSandbox) { -@@ -319,7 +319,7 @@ auto RunOOPArcVideoAcceleratorFactoryService( +@@ -308,7 +308,7 @@ auto RunVideoCapture( + mojo::PendingReceiver<video_capture::mojom::VideoCaptureService> receiver) { + auto service = std::make_unique<UtilityThreadVideoCaptureServiceImpl>( + std::move(receiver), base::SingleThreadTaskRunner::GetCurrentDefault()); +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled()) { + mojo::PendingRemote<viz::mojom::Gpu> remote_gpu; + content::UtilityThread::Get()->BindHostReceiver( +@@ -340,7 +340,7 @@ auto RunOOPArcVideoAcceleratorFactoryService( #endif // BUILDFLAG(IS_CHROMEOS_ASH) && (BUILDFLAG(USE_VAAPI) || // BUILDFLAG(USE_V4L2_CODEC)) @@ -36,7 +54,7 @@ (BUILDFLAG(USE_VAAPI) || BUILDFLAG(USE_V4L2_CODEC)) auto RunStableVideoDecoderFactoryProcessService( mojo::PendingReceiver< -@@ -330,7 +330,7 @@ auto RunStableVideoDecoderFactoryProcessService( +@@ -351,7 +351,7 @@ auto RunStableVideoDecoderFactoryProcessService( #endif // (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)) && // (BUILDFLAG(USE_VAAPI) || BUILDFLAG(USE_V4L2_CODEC)) @@ -45,7 +63,7 @@ auto RunVideoEncodeAcceleratorProviderFactory( mojo::PendingReceiver<media::mojom::VideoEncodeAcceleratorProviderFactory> receiver) { -@@ -388,13 +388,13 @@ void RegisterMainThreadServices(mojo::ServiceFactory& +@@ -415,13 +415,13 @@ void RegisterMainThreadServices(mojo::ServiceFactory& #endif // BUILDFLAG(IS_CHROMEOS_ASH) && (BUILDFLAG(USE_VAAPI) || // BUILDFLAG(USE_V4L2_CODEC)) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_speech_speech__recognition__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_speech_speech__recognition__sandbox__hook__linux.h index 47ea1e2db86d..2318cee151ab 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_speech_speech__recognition__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_speech_speech__recognition__sandbox__hook__linux.h @@ -1,11 +1,13 @@ ---- src/3rdparty/chromium/content/utility/speech/speech_recognition_sandbox_hook_linux.h.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/content/utility/speech/speech_recognition_sandbox_hook_linux.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/utility/speech/speech_recognition_sandbox_hook_linux.h -@@ -5,7 +5,11 @@ +@@ -5,7 +5,13 @@ #ifndef CONTENT_UTILITY_SPEECH_SPEECH_RECOGNITION_SANDBOX_HOOK_LINUX_H_ #define CONTENT_UTILITY_SPEECH_SPEECH_RECOGNITION_SANDBOX_HOOK_LINUX_H_ -+#if defined(OS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "build/build_config.h" ++ ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.cc index 6d1f254912d1..74a53a4cf400 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.cc @@ -9,7 +9,7 @@ @@ -18,7 +18,7 @@ mojo::PendingRemote<font_service::mojom::FontService> font_service; UtilityThread::Get()->BindHostReceiver( font_service.InitWithNewPipeAndPassReceiver()); -@@ -34,7 +34,7 @@ UtilityBlinkPlatformWithSandboxSupportImpl:: +@@ -35,7 +35,7 @@ UtilityBlinkPlatformWithSandboxSupportImpl:: blink::WebSandboxSupport* UtilityBlinkPlatformWithSandboxSupportImpl::GetSandboxSupport() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.h index 2f75ecf9db8d..6d6a2dd0654e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__blink__platform__with__sandbox__support__impl.h @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.h.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/content/utility/utility_blink_platform_with_sandbox_support_impl.h -@@ -10,7 +10,7 @@ - #include "build/build_config.h" - #include "third_party/blink/public/platform/platform.h" - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "components/services/font/public/cpp/font_loader.h" // nogncheck - #include "third_party/skia/include/core/SkRefCnt.h" // nogncheck - #endif -@@ -38,10 +38,10 @@ class UtilityBlinkPlatformWithSandboxSupportImpl : pub +@@ -33,7 +33,7 @@ class UtilityBlinkPlatformWithSandboxSupportImpl : pub blink::WebSandboxSupport* GetSandboxSupport() override; private: @@ -17,8 +8,4 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) std::unique_ptr<blink::WebSandboxSupport> sandbox_support_; #endif --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - sk_sp<font_service::FontLoader> font_loader_; - #endif }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__main.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__main.cc index ec6534574ccd..686fe2e4cc1b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__main.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_utility_utility__main.cc @@ -1,23 +1,26 @@ ---- src/3rdparty/chromium/content/utility/utility_main.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/utility/utility_main.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/utility/utility_main.cc -@@ -31,7 +31,7 @@ +@@ -34,7 +34,7 @@ #include "third_party/icu/source/common/unicode/unistr.h" #include "third_party/icu/source/i18n/unicode/timezone.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "base/file_descriptor_store.h" + #include "base/files/file_util.h" + #include "base/pickle.h" +@@ -42,7 +42,9 @@ #include "content/utility/speech/speech_recognition_sandbox_hook_linux.h" #include "gpu/config/gpu_info_collector.h" #include "media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h" -@@ -42,15 +42,21 @@ - #if BUILDFLAG(ENABLE_PRINTING) - #include "printing/sandbox/print_backend_sandbox_hook_linux.h" - #endif +#if !BUILDFLAG(IS_BSD) #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "services/audio/audio_sandbox_hook_linux.h" #include "services/network/network_sandbox_hook_linux.h" + // gn check is not smart enough to realize that this include only applies to +@@ -54,10 +56,14 @@ + #endif #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) @@ -26,13 +29,13 @@ #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) +#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#endif + #if BUILDFLAG(IS_CHROMEOS_ASH) #include "chromeos/ash/components/assistant/buildflags.h" #include "chromeos/ash/services/ime/ime_sandbox_hook.h" -@@ -62,7 +68,7 @@ +@@ -69,7 +75,7 @@ #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if (BUILDFLAG(ENABLE_SCREEN_AI_SERVICE) && \ @@ -41,12 +44,17 @@ #include "components/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h" // nogncheck #endif -@@ -83,10 +89,10 @@ namespace { +@@ -95,7 +101,7 @@ namespace { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + std::vector<std::string> GetNetworkContextsParentDirectories() { + base::MemoryMappedFile::Region region; + base::ScopedFD read_pipe_fd = base::FileDescriptorStore::GetInstance().TakeFD( +@@ -123,7 +129,7 @@ bool ShouldUseAmdGpuPolicy(sandbox::mojom::Sandbox san + bool ShouldUseAmdGpuPolicy(sandbox::mojom::Sandbox sandbox_type) { const bool obtain_gpu_info = -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) @@ -54,7 +62,7 @@ sandbox_type == sandbox::mojom::Sandbox::kHardwareVideoDecoding || #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) sandbox_type == sandbox::mojom::Sandbox::kHardwareVideoEncoding; -@@ -168,7 +174,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -239,7 +245,7 @@ int UtilityMain(MainFunctionParams parameters) { } } @@ -63,7 +71,7 @@ // Initializes the sandbox before any threads are created. // TODO(jorgelo): move this after GTK initialization when we enable a strict // Seccomp-BPF policy. -@@ -200,7 +206,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -272,7 +278,7 @@ int UtilityMain(MainFunctionParams parameters) { #endif break; #endif @@ -72,7 +80,7 @@ case sandbox::mojom::Sandbox::kHardwareVideoDecoding: pre_sandbox_hook = base::BindOnce(&media::HardwareVideoDecodingPreSandboxHook); -@@ -227,6 +233,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -299,6 +305,7 @@ int UtilityMain(MainFunctionParams parameters) { default: break; } @@ -80,7 +88,7 @@ if (!sandbox::policy::IsUnsandboxedSandboxType(sandbox_type) && (parameters.zygote_child || !pre_sandbox_hook.is_null())) { sandbox::policy::SandboxLinux::Options sandbox_options; -@@ -235,6 +242,11 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -307,6 +314,11 @@ int UtilityMain(MainFunctionParams parameters) { sandbox::policy::Sandbox::Initialize( sandbox_type, std::move(pre_sandbox_hook), sandbox_options); } @@ -89,6 +97,6 @@ + sandbox_type, std::move(pre_sandbox_hook), + sandbox::policy::SandboxLinux::Options()); +#endif - #elif BUILDFLAG(IS_WIN) - g_utility_target_services = parameters.sandbox_info->target_services; - #endif + + // Start the HangWatcher now that the sandbox is engaged, if it hasn't + // already been started. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__linux.cc index 89dbfd1880d8..ef586f15e77a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__linux.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/content/zygote/zygote_linux.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/content/zygote/zygote_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/content/zygote/zygote_linux.cc @@ -1,6 +1,7 @@ // Copyright 2012 The Chromium Authors @@ -8,7 +8,7 @@ #include "content/zygote/zygote_linux.h" -@@ -706,3 +707,4 @@ void Zygote::HandleReinitializeLoggingRequest(base::Pi +@@ -707,3 +708,4 @@ void Zygote::HandleReinitializeLoggingRequest(base::Pi } } // namespace content diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__main__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__main__linux.cc index c3951e0b9545..ec201757b5e7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__main__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_content_zygote_zygote__main__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/content/zygote/zygote_main_linux.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/content/zygote/zygote_main_linux.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/content/zygote/zygote_main_linux.cc @@ -11,7 +11,9 @@ #include <stddef.h> #include <stdint.h> #include <string.h> -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) #include <sys/prctl.h> +#endif #include <sys/socket.h> @@ -14,33 +14,27 @@ #include "sandbox/linux/services/thread_helpers.h" #include "sandbox/linux/suid/client/setuid_sandbox_client.h" #include "sandbox/policy/linux/sandbox_debug_handling_linux.h" -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "sandbox/policy/sandbox.h" #include "sandbox/policy/switches.h" #include "third_party/icu/source/i18n/unicode/timezone.h" -@@ -50,6 +54,7 @@ namespace { +@@ -50,11 +54,13 @@ namespace { namespace { -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) void CloseFds(const std::vector<int>& fds) { for (const auto& it : fds) { PCHECK(0 == IGNORE_EINTR(close(it))); -@@ -67,9 +72,11 @@ base::OnceClosure ClosureFromTwoClosures(base::OnceClo - }, - std::move(one), std::move(two)); + } } +#endif - } // namespace - -+#if !defined(OS_BSD) - // This function triggers the static and lazy construction of objects that need - // to be created before imposing the sandbox. - static void ZygotePreSandboxInit() { -@@ -176,9 +183,11 @@ static void EnterLayerOneSandbox(sandbox::policy::Sand + base::OnceClosure ClosureFromTwoClosures(base::OnceClosure one, + base::OnceClosure two) { +@@ -159,9 +165,11 @@ static void EnterLayerOneSandbox(sandbox::policy::Sand CHECK(!using_layer1_sandbox); } } @@ -48,11 +42,11 @@ bool ZygoteMain( std::vector<std::unique_ptr<ZygoteForkDelegate>> fork_delegates) { -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) sandbox::SetAmZygoteOrRenderer(true, GetSandboxFD()); auto* linux_sandbox = sandbox::policy::SandboxLinux::GetInstance(); -@@ -244,6 +253,9 @@ bool ZygoteMain( +@@ -227,6 +235,9 @@ bool ZygoteMain( // This function call can return multiple times, once per fork(). return zygote.ProcessRequests(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_device_bluetooth_bluetooth__adapter.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_device_bluetooth_bluetooth__adapter.cc index 55b7424dad44..852ac4023dd0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_device_bluetooth_bluetooth__adapter.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_device_bluetooth_bluetooth__adapter.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/device/bluetooth/bluetooth_adapter.cc.orig 2022-07-28 06:05:58 UTC +--- src/3rdparty/chromium/device/bluetooth/bluetooth_adapter.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/device/bluetooth/bluetooth_adapter.cc -@@ -32,7 +32,7 @@ BluetoothAdapter::ServiceOptions::ServiceOptions() = d +@@ -31,7 +31,7 @@ namespace device { + BluetoothAdapter::ServiceOptions::ServiceOptions() = default; BluetoothAdapter::ServiceOptions::~ServiceOptions() = default; - #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_MAC) && \ -- !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) -+ !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) +-#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && \ ++#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) && \ + !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) // static scoped_refptr<BluetoothAdapter> BluetoothAdapter::CreateAdapter() { - return nullptr; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_api__browser__context__keyed__service__factories.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_api__browser__context__keyed__service__factories.cc index 0bf6af43124a..bc444409da16 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_api__browser__context__keyed__service__factories.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_api__browser__context__keyed__service__factories.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/extensions/browser/api/api_browser_context_keyed_service_factories.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/extensions/browser/api/api_browser_context_keyed_service_factories.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/extensions/browser/api/api_browser_context_keyed_service_factories.cc -@@ -108,7 +108,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt +@@ -118,7 +118,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt MessageService::GetFactoryInstance(); MessagingAPIMessageFilter::EnsureAssociatedFactoryBuilt(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc index 572556abc8fb..bfbb3c283998 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc -@@ -70,7 +70,7 @@ const char kReceivingEndDoesntExistError[] = +@@ -71,7 +71,7 @@ const char kReceivingEndDoesntExistError[] = const char kReceivingEndDoesntExistError[] = "Could not establish connection. Receiving end does not exist."; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ @@ -9,7 +9,7 @@ const char kMissingPermissionError[] = "Access to native messaging requires nativeMessaging permission."; const char kProhibitedByPoliciesError[] = -@@ -468,7 +468,7 @@ void MessageService::OpenChannelToNativeApp( +@@ -490,7 +490,7 @@ void MessageService::OpenChannelToNativeApp( return; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_networking__private_networking__private__delegate__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_networking__private_networking__private__delegate__factory.cc index 15803e1f8aa5..49a77a57e9d3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_networking__private_networking__private__delegate__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_networking__private_networking__private__delegate__factory.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/extensions/browser/api/networking_private/networking_private_delegate_factory.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/extensions/browser/api/networking_private/networking_private_delegate_factory.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/extensions/browser/api/networking_private/networking_private_delegate_factory.cc @@ -14,7 +14,7 @@ #include "extensions/browser/api/networking_private/networking_private_chromeos.h" @@ -9,12 +9,12 @@ #include "extensions/browser/api/networking_private/networking_private_linux.h" #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) #include "components/wifi/wifi_service.h" -@@ -68,7 +68,7 @@ KeyedService* NetworkingPrivateDelegateFactory::BuildS - delegate = new NetworkingPrivateChromeOS(browser_context); +@@ -67,7 +67,7 @@ NetworkingPrivateDelegateFactory::BuildServiceInstance + delegate = std::make_unique<NetworkingPrivateChromeOS>(browser_context); #elif BUILDFLAG(IS_CHROMEOS_LACROS) - delegate = new NetworkingPrivateLacros(browser_context); + delegate = std::make_unique<NetworkingPrivateLacros>(browser_context); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - delegate = new NetworkingPrivateLinux(); + delegate = std::make_unique<NetworkingPrivateLinux>(); #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) std::unique_ptr<wifi::WiFiService> wifi_service(wifi::WiFiService::Create()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_extension__prefs.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_extension__prefs.cc deleted file mode 100644 index 07b7480a08cf..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_extension__prefs.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/extensions/browser/extension_prefs.cc.orig 2023-08-16 19:50:41 UTC -+++ src/3rdparty/chromium/extensions/browser/extension_prefs.cc -@@ -2230,7 +2230,7 @@ void ExtensionPrefs::RegisterProfilePrefs( - registry->RegisterListPref( - pref_names::kExtendedBackgroundLifetimeForPortConnectionsToUrls); - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - registry->RegisterBooleanPref(pref_names::kChromeAppsEnabled, false); - #endif - registry->RegisterBooleanPref( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.cc deleted file mode 100644 index 9bd3fbe3ec8d..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/extensions/browser/pref_names.cc.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/extensions/browser/pref_names.cc -@@ -53,7 +53,7 @@ const char kManifestV2Availability[] = "extensions.man - const char kPinnedExtensions[] = "extensions.pinned_extensions"; - const char kStorageGarbageCollect[] = "extensions.storage.garbagecollect"; - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - extern const char kChromeAppsEnabled[] = "extensions.chrome_apps_enabled"; - #endif - const char kChromeAppsWebViewPermissiveBehaviorAllowed[] = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.h deleted file mode 100644 index 8d538f1e7198..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_browser_pref__names.h +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/extensions/browser/pref_names.h.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/extensions/browser/pref_names.h -@@ -114,7 +114,7 @@ extern const char kPinnedExtensions[]; - extern const char kStorageGarbageCollect[]; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - // A preference for whether Chrome Apps should be allowed. The default depends - // on the ChromeAppsDeprecation feature flag, and this pref can extend support - // for Chrome Apps by enterprise policy. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api___permission__features.json b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api___permission__features.json index 6666f58735d2..8b64105a88f3 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api___permission__features.json +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api___permission__features.json @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/extensions/common/api/_permission_features.json.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/extensions/common/api/_permission_features.json.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/extensions/common/api/_permission_features.json -@@ -134,7 +134,7 @@ +@@ -138,7 +138,7 @@ { "channel": "stable", "extension_types": ["platform_app"], -- "platforms": ["chromeos", "win", "mac", "linux"], -+ "platforms": ["chromeos", "win", "mac", "linux", "openbsd", "freebsd"], +- "platforms": ["chromeos", "lacros", "win", "mac", "linux"], ++ "platforms": ["chromeos", "lacros", "win", "mac", "linux", "openbsd", "freebsd"], "allowlist": [ "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/387169 "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE", // http://crbug.com/387169 -@@ -427,7 +427,7 @@ +@@ -432,7 +432,7 @@ }, { "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], @@ -18,7 +18,7 @@ "allowlist": [ "0DE0F05680A4A056BCEC864ED8DDA84296F82B40", // http://crbug.com/434651 "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/293683 -@@ -469,7 +469,7 @@ +@@ -474,7 +474,7 @@ "networkingPrivate": { "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api_runtime.json b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api_runtime.json index a2bd4cf5a954..60c4d4bfbe25 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api_runtime.json +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_api_runtime.json @@ -1,12 +1,10 @@ ---- src/3rdparty/chromium/extensions/common/api/runtime.json.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/extensions/common/api/runtime.json.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/extensions/common/api/runtime.json -@@ -86,7 +86,8 @@ - "cros", - "linux", - "openbsd", -- "fuchsia" -+ "fuchsia", -+ "freebsd" +@@ -89,6 +89,7 @@ + {"name": "cros", "description": "Specifies the Chrome operating system."}, + {"name": "linux", "description": "Specifies the Linux operating system."}, + {"name": "openbsd", "description": "Specifies the OpenBSD operating system."}, ++ {"name": "freebsd", "description": "Specifies the FreeBSD operating system."}, + {"name": "fuchsia", "description": "Specifies the Fuchsia operating system."} ] }, - { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_command.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_command.cc index cd2f112b6bbb..ba234ebaf7f5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_command.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_command.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/extensions/common/command.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/extensions/common/command.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/extensions/common/command.cc -@@ -280,7 +280,7 @@ std::string Command::CommandPlatform() { +@@ -282,7 +282,7 @@ std::string Command::CommandPlatform() { return values::kKeybindingPlatformMac; #elif BUILDFLAG(IS_CHROMEOS) return values::kKeybindingPlatformChromeOs; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_features_feature.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_features_feature.cc index 4711f762b9c2..14a43d6eddf2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_features_feature.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_common_features_feature.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/extensions/common/features/feature.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/extensions/common/features/feature.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/extensions/common/features/feature.cc @@ -34,6 +34,8 @@ Feature::Platform Feature::GetCurrentPlatform() { return WIN_PLATFORM; #elif BUILDFLAG(IS_FUCHSIA) return FUCHSIA_PLATFORM; -+#elif defined(OS_BSD) ++#elif BUILDFLAG(IS_BSD) + return LINUX_PLATFORM; #else return UNSPECIFIED_PLATFORM; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_shell_browser_api_runtime_shell__runtime__api__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_shell_browser_api_runtime_shell__runtime__api__delegate.cc index 20c2b082fae7..478bd8df8e65 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_shell_browser_api_runtime_shell__runtime__api__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_extensions_shell_browser_api_runtime_shell__runtime__api__delegate.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/extensions/shell/browser/api/runtime/shell_runtime_api_delegate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/extensions/shell/browser/api/runtime/shell_runtime_api_delegate.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/extensions/shell/browser/api/runtime/shell_runtime_api_delegate.cc @@ -44,7 +44,7 @@ void ShellRuntimeAPIDelegate::OpenURL(const GURL& unin bool ShellRuntimeAPIDelegate::GetPlatformInfo(PlatformInfo* info) { #if BUILDFLAG(IS_CHROMEOS_ASH) - info->os = api::runtime::PLATFORM_OS_CROS; + info->os = api::runtime::PlatformOs::kCros; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) - info->os = api::runtime::PLATFORM_OS_LINUX; + info->os = api::runtime::PlatformOs::kLinux; #endif return true; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_google__apis_gcm_engine_heartbeat__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_google__apis_gcm_engine_heartbeat__manager.cc index 534926c686b0..abd723e1e979 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_google__apis_gcm_engine_heartbeat__manager.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_google__apis_gcm_engine_heartbeat__manager.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/google_apis/gcm/engine/heartbeat_manager.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/google_apis/gcm/engine/heartbeat_manager.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/google_apis/gcm/engine/heartbeat_manager.cc -@@ -33,7 +33,7 @@ const int kMinClientHeartbeatIntervalMs = 1000 * 30; +@@ -32,7 +32,7 @@ const int kMinClientHeartbeatIntervalMs = 1000 * 30; // Minimum time spent sleeping before we force a new heartbeat. const int kMinSuspendTimeMs = 1000 * 10; // 10 seconds. @@ -9,7 +9,7 @@ // The period at which to check if the heartbeat time has passed. Used to // protect against platforms where the timer is delayed by the system being // suspended. Only needed on linux because the other OSes provide a standard -@@ -193,7 +193,7 @@ void HeartbeatManager::RestartTimer() { +@@ -191,7 +191,7 @@ void HeartbeatManager::RestartTimer() { base::BindRepeating(&HeartbeatManager::OnHeartbeatTriggered, weak_ptr_factory_.GetWeakPtr())); @@ -18,7 +18,7 @@ // Windows, Mac, Android, iOS, and Chrome OS all provide a way to be notified // when the system is suspending or resuming. The only one that does not is // Linux so we need to poll to check for missed heartbeats. -@@ -218,7 +218,7 @@ void HeartbeatManager::CheckForMissedHeartbeat() { +@@ -214,7 +214,7 @@ void HeartbeatManager::CheckForMissedHeartbeat() { return; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_common_gpu__memory__buffer__support.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_common_gpu__memory__buffer__support.cc index 773d8d038c0b..12e6456454a5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_common_gpu__memory__buffer__support.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_common_gpu__memory__buffer__support.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/command_buffer/common/gpu_memory_buffer_support.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/common/gpu_memory_buffer_support.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/command_buffer/common/gpu_memory_buffer_support.cc -@@ -173,7 +173,7 @@ uint32_t GetPlatformSpecificTextureTarget() { +@@ -182,7 +182,7 @@ uint32_t GetPlatformSpecificTextureTarget() { #if BUILDFLAG(IS_MAC) return macos_specific_texture_target; #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || \ @@ -9,7 +9,7 @@ return GL_TEXTURE_EXTERNAL_OES; #elif BUILDFLAG(IS_IOS) return GL_TEXTURE_2D; -@@ -208,7 +208,7 @@ GPU_EXPORT bool NativeBufferNeedsPlatformSpecificTextu +@@ -217,7 +217,7 @@ GPU_EXPORT bool NativeBufferNeedsPlatformSpecificTextu gfx::BufferFormat format, gfx::BufferPlane plane) { #if BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_dawn__context__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_dawn__context__provider.cc new file mode 100644 index 000000000000..df5720390dd5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_dawn__context__provider.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/gpu/command_buffer/service/dawn_context_provider.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/gpu/command_buffer/service/dawn_context_provider.cc +@@ -145,7 +145,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke + return base::FeatureList::IsEnabled(features::kSkiaGraphiteDawnUseD3D12) + ? wgpu::BackendType::D3D12 + : wgpu::BackendType::D3D11; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return wgpu::BackendType::Vulkan; + #elif BUILDFLAG(IS_APPLE) + return wgpu::BackendType::Metal; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_gles2__cmd__decoder.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_gles2__cmd__decoder.cc index 738ed7fdf341..c71dfc2e8b62 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_gles2__cmd__decoder.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_gles2__cmd__decoder.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2023-09-11 15:16:04 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -3462,7 +3462,7 @@ GLES2Decoder* GLES2Decoder::Create( +@@ -2982,7 +2982,7 @@ GLES2Decoder* GLES2Decoder::Create( // Fix for Qt WebEngine Crash when QSG_RHI_BACKEND=opengl // Allow linux to run fuzzers. #if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc index bbacacb8268a..e7b1efc2ebbd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc -@@ -20,7 +20,7 @@ namespace { +@@ -21,7 +21,7 @@ namespace { // TODO(penghuang): verify the scanout is the right usage for video playback. // crbug.com/1280798 constexpr uint32_t kSupportedUsage = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing.cc index 8182d2c3594c..46fe9b90ef76 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing.cc @@ -1,20 +1,20 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/external_vk_image_backing.cc -@@ -36,7 +36,7 @@ +@@ -47,7 +47,7 @@ #include "ui/gl/gl_version_info.h" #include "ui/gl/scoped_binders.h" --#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && BUILDFLAG(USE_DAWN) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) #include "gpu/command_buffer/service/shared_image/external_vk_image_dawn_representation.h" #endif -@@ -534,7 +534,7 @@ std::unique_ptr<DawnImageRepresentation> ExternalVkIma - WGPUDevice wgpuDevice, - WGPUBackendType backend_type, - std::vector<WGPUTextureFormat> view_formats) { --#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && BUILDFLAG(USE_DAWN) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) - auto wgpu_format = ToWGPUFormat(format()); +@@ -673,7 +673,7 @@ std::unique_ptr<DawnImageRepresentation> ExternalVkIma + const wgpu::Device& wgpuDevice, + wgpu::BackendType backend_type, + std::vector<wgpu::TextureFormat> view_formats) { +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) + auto wgpu_format = ToDawnFormat(format()); - if (wgpu_format == WGPUTextureFormat_Undefined) { + if (wgpu_format == wgpu::TextureFormat::Undefined) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc new file mode 100644 index 000000000000..7e0e594df65b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.cc +@@ -89,7 +89,7 @@ constexpr uint32_t kSupportedUsage = + } // namespace + + constexpr uint32_t kSupportedUsage = +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) + SHARED_IMAGE_USAGE_WEBGPU | SHARED_IMAGE_USAGE_WEBGPU_SWAP_CHAIN_TEXTURE | + SHARED_IMAGE_USAGE_WEBGPU_STORAGE_TEXTURE | + #endif +@@ -258,7 +258,7 @@ bool ExternalVkImageBackingFactory::IsSupported( + return false; + } + +-#if BUILDFLAG(IS_LINUX) && !defined(TOOLKIT_QT) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && !defined(TOOLKIT_QT) + if (format.IsLegacyMultiplanar()) { + // ExternalVkImageBacking doesn't work properly with external sampler + // multi-planar formats on Linux, see https://crbug.com/1394888. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__factory.cc new file mode 100644 index 000000000000..beaf9fc60a42 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__factory.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/shared_image_factory.cc +@@ -142,7 +142,7 @@ gfx::GpuMemoryBufferType GetNativeBufferType() { + return gfx::GpuMemoryBufferType::IO_SURFACE_BUFFER; + #elif BUILDFLAG(IS_ANDROID) + return gfx::GpuMemoryBufferType::ANDROID_HARDWARE_BUFFER; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + return gfx::GpuMemoryBufferType::NATIVE_PIXMAP; + #elif BUILDFLAG(IS_WIN) + return gfx::GpuMemoryBufferType::DXGI_SHARED_HANDLE; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__manager.cc index c27a0d5a303c..ff053561c04e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__manager.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_shared__image__manager.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/shared_image_manager.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/shared_image_manager.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/shared_image_manager.cc -@@ -481,7 +481,7 @@ bool SharedImageManager::SupportsScanoutImages() { +@@ -507,7 +507,7 @@ bool SharedImageManager::SupportsScanoutImages() { return true; #elif BUILDFLAG(IS_ANDROID) return base::AndroidHardwareBufferCompat::IsSupportAvailable(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc index e5577a041f70..bb5a1de33a97 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc @@ -1,9 +1,9 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc -@@ -181,7 +181,7 @@ bool WrappedSkImageBacking::Initialize() { - for (int plane = 0; plane < num_planes; ++plane) { - auto& texture = textures_[plane]; - gfx::Size plane_size = format().GetPlaneSize(plane, size()); +@@ -211,7 +211,7 @@ bool WrappedSkImageBacking::Initialize(const std::stri + + constexpr GrRenderable is_renderable = GrRenderable::kYes; + constexpr GrProtected is_protected = GrProtected::kNo; -#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) +#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) // Blue for single-planar and magenta-ish for multi-planar. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_webgpu__decoder__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_webgpu__decoder__impl.cc index 26146461e135..118c8c18e993 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_webgpu__decoder__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_webgpu__decoder__impl.cc @@ -1,11 +1,20 @@ ---- src/3rdparty/chromium/gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1225,7 +1225,7 @@ void WebGPUDecoderImpl::RequestAdapterImpl( +@@ -1194,7 +1194,7 @@ void WebGPUDecoderImpl::RequestAdapterImpl( + force_fallback_adapter = true; + } - if (gr_context_type_ != GrContextType::kVulkan && - use_webgpu_adapter_ != WebGPUAdapterName::kCompat) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - callback(WGPURequestAdapterStatus_Unavailable, nullptr, - "WebGPU on Linux requires command-line flag " - "--enable-features=Vulkan", + if (!shared_context_state_->GrContextIsVulkan() && + !shared_context_state_->IsGraphiteDawnVulkan() && + use_webgpu_adapter_ != WebGPUAdapterName::kOpenGLES) { +@@ -1849,7 +1849,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( + } + + #if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_APPLE) && \ +- !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) ++ !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + if (usage & wgpu::TextureUsage::StorageBinding) { + LOG(ERROR) << "AssociateMailbox: wgpu::TextureUsage::StorageBinding is NOT " + "supported yet on this platform."; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__control__list.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__control__list.cc index 4389712ef599..0aa02325b5b0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__control__list.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__control__list.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/config/gpu_control_list.cc.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/gpu/config/gpu_control_list.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/gpu/config/gpu_control_list.cc -@@ -302,7 +302,7 @@ bool GpuControlList::More::GLVersionInfoMismatch( +@@ -276,7 +276,7 @@ bool GpuControlList::More::GLVersionInfoMismatch( GpuControlList::GLType GpuControlList::More::GetDefaultGLType() { #if BUILDFLAG(IS_CHROMEOS) return kGLTypeGL; @@ -9,7 +9,7 @@ return kGLTypeGL; #elif BUILDFLAG(IS_MAC) return kGLTypeGL; -@@ -844,7 +844,7 @@ GpuControlList::OsType GpuControlList::GetOsType() { +@@ -817,7 +817,7 @@ GpuControlList::OsType GpuControlList::GetOsType() { return kOsAndroid; #elif BUILDFLAG(IS_FUCHSIA) return kOsFuchsia; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__finch__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__finch__features.cc index 614aa738dd8e..5d0e01de4b5b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__finch__features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_config_gpu__finch__features.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/config/gpu_finch_features.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/gpu/config/gpu_finch_features.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/gpu/config/gpu_finch_features.cc -@@ -57,7 +57,7 @@ CONSTINIT const base::Feature kUseGles2ForOopR( +@@ -58,7 +58,7 @@ CONSTINIT const base::Feature kUseGles2ForOopR( CONSTINIT const base::Feature kUseGles2ForOopR( "UseGles2ForOopR", #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ @@ -9,7 +9,7 @@ base::FEATURE_DISABLED_BY_DEFAULT #else base::FEATURE_ENABLED_BY_DEFAULT -@@ -135,7 +135,8 @@ CONSTINIT const base::Feature kDefaultEnableGpuRasteri +@@ -142,7 +142,8 @@ CONSTINIT const base::Feature kDefaultEnableGpuRasteri CONSTINIT const base::Feature kDefaultEnableGpuRasterization( "DefaultEnableGpuRasterization", #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc index 2fd265e348df..4b96fd768921 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc -@@ -21,7 +21,7 @@ +@@ -26,7 +26,7 @@ #include "ui/ozone/public/ozone_platform.h" #endif @@ -9,7 +9,7 @@ #include "gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.h" #endif -@@ -50,7 +50,7 @@ GpuMemoryBufferSupport::GetNativeGpuMemoryBufferType() +@@ -56,7 +56,7 @@ GpuMemoryBufferSupport::GetNativeGpuMemoryBufferType() return gfx::IO_SURFACE_BUFFER; #elif BUILDFLAG(IS_ANDROID) return gfx::ANDROID_HARDWARE_BUFFER; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.h index b72358947503..9744deb2ad0b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.h -@@ -18,7 +18,7 @@ +@@ -21,7 +21,7 @@ #include "ui/gfx/geometry/size.h" #include "ui/gfx/gpu_memory_buffer.h" @@ -8,4 +8,4 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_BSD) namespace gfx { class ClientNativePixmapFactory; - } + } // namespace gfx diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc index 735eb8c1d624..1e31e8949854 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc -@@ -357,7 +357,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -363,7 +363,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL enable_watchdog = false; #endif @@ -9,7 +9,7 @@ bool gpu_sandbox_start_early = gpu_preferences_.gpu_sandbox_start_early; #else // !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) // For some reasons MacOSX's VideoToolbox might crash when called after -@@ -393,7 +393,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -400,7 +400,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } bool attempted_startsandbox = false; @@ -18,16 +18,7 @@ // On Chrome OS ARM Mali, GPU driver userspace creates threads when // initializing a GL context, so start the sandbox early. // TODO(zmo): Need to collect OS version before this. -@@ -442,7 +442,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL - - if (gl_initialized && gl_use_swiftshader_ && - !gl::IsSoftwareGLImplementation(gl::GetGLImplementationParts())) { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - VLOG(1) << "Quit GPU process launch to fallback to SwiftShader cleanly " - << "on Linux"; - return false; -@@ -493,7 +493,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -457,7 +457,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } } @@ -36,7 +27,7 @@ // The ContentSandboxHelper is currently the only one implementation of // GpuSandboxHelper and it has no dependency. Except on Linux where // VaapiWrapper checks the GL implementation to determine which display -@@ -579,7 +579,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -539,7 +539,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL command_line, gpu_feature_info_, gpu_preferences_.disable_software_rasterizer, false); if (gl_use_swiftshader_) { @@ -45,7 +36,7 @@ VLOG(1) << "Quit GPU process launch to fallback to SwiftShader cleanly " << "on Linux"; return false; -@@ -707,7 +707,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -692,7 +692,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL InitializePlatformOverlaySettings(&gpu_info_, gpu_feature_info_); @@ -54,8 +45,8 @@ // Driver may create a compatibility profile context when collect graphics // information on Linux platform. Try to collect graphics information // based on core profile context after disabling platform extensions. -@@ -759,7 +759,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL - gl_use_swiftshader_ = true; +@@ -746,7 +746,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL + } } } -#if BUILDFLAG(IS_LINUX) || \ @@ -63,7 +54,7 @@ (BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_CHROMEOS_DEVICE)) if (!gl_disabled && !gl_use_swiftshader_ && std::getenv("RUNNING_UNDER_RR")) { // https://rr-project.org/ is a Linux-only record-and-replay debugger that -@@ -903,7 +903,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -900,7 +900,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c } bool gl_disabled = gl::GetGLImplementation() == gl::kGLImplementationDisabled; @@ -72,9 +63,9 @@ (BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_CHROMEOS_DEVICE)) if (!gl_disabled && !gl_use_swiftshader_ && std::getenv("RUNNING_UNDER_RR")) { // https://rr-project.org/ is a Linux-only record-and-replay debugger that -@@ -973,7 +973,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c - - InitializePlatformOverlaySettings(&gpu_info_, gpu_feature_info_); +@@ -976,7 +976,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c + } + } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_generate__bindings.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_generate__bindings.py index 76b73961ae24..3fc4935c7a65 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_generate__bindings.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_generate__bindings.py @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/vulkan/generate_bindings.py.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/gpu/vulkan/generate_bindings.py.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/vulkan/generate_bindings.py -@@ -259,7 +259,7 @@ VULKAN_DEVICE_FUNCTIONS = [ +@@ -260,7 +260,7 @@ VULKAN_DEVICE_FUNCTIONS = [ ] }, { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_semaphore__handle.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_semaphore__handle.cc new file mode 100644 index 000000000000..a7b61ad210ab --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_semaphore__handle.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/gpu/vulkan/semaphore_handle.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/gpu/vulkan/semaphore_handle.cc +@@ -39,7 +39,7 @@ SemaphoreHandle::SemaphoreHandle(gfx::GpuFenceHandle f + // https://fuchsia.dev/reference/fidl/fuchsia.ui.scenic. + Init(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA, + std::move(fence_handle.owned_event)); +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + Init(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR, + std::move(fence_handle.owned_fd)); + #elif BUILDFLAG(IS_POSIX) +@@ -64,7 +64,7 @@ gfx::GpuFenceHandle SemaphoreHandle::ToGpuFenceHandle( + // VkSemaphore, which can then be used to submit present work, see + // https://fuchsia.dev/reference/fidl/fuchsia.ui.scenic. + fence_handle.owned_event = TakeHandle(); +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + if (type_ == VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR) { + fence_handle.owned_fd = TakeHandle(); + } else { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.cc index 1755a836be13..d67111ec0331 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.cc -@@ -89,7 +89,7 @@ bool VulkanDeviceQueue::Initialize( +@@ -121,7 +121,7 @@ bool VulkanDeviceQueue::Initialize( // In dual-CPU cases, we cannot detect the active GPU correctly on Linux, // so don't select GPU device based on the |gpu_info|. @@ -9,12 +9,12 @@ // If gpu_info is provided, the device should match it. if (gpu_info && (device_properties.vendorID != gpu_info->gpu.vendor_id || device_properties.deviceID != gpu_info->gpu.device_id)) { -@@ -229,7 +229,7 @@ bool VulkanDeviceQueue::Initialize( - enabled_device_features_2_ = {VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2}; - - // Android, Fuchsia, and Linux(VaapiVideoDecoder) need YCbCr sampler support. --#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) +@@ -263,7 +263,7 @@ bool VulkanDeviceQueue::Initialize( + // Android, Fuchsia, Linux, and CrOS (VaapiVideoDecoder) need YCbCr sampler + // support. + #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!physical_device_info.feature_sampler_ycbcr_conversion) { LOG(ERROR) << "samplerYcbcrConversion is not supported."; return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.h index d3f545db878e..bc33c334dbab 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__device__queue.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.h.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/vulkan/vulkan_device_queue.h -@@ -158,7 +158,7 @@ class COMPONENT_EXPORT(VULKAN) VulkanDeviceQueue { - +@@ -166,7 +166,7 @@ class COMPONENT_EXPORT(VULKAN) VulkanDeviceQueue bool allow_protected_memory_ = false; --#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) VkPhysicalDeviceSamplerYcbcrConversionFeatures sampler_ycbcr_conversion_features_{ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES}; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc index bdc303a1f776..cfa5f590ebf5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.cc.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.cc -@@ -1151,7 +1151,7 @@ bool VulkanFunctionPointers::BindDeviceFunctionPointer +@@ -1161,7 +1161,7 @@ bool VulkanFunctionPointers::BindDeviceFunctionPointer } } @@ -9,3 +9,12 @@ if (gfx::HasExtension(enabled_extensions, VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME)) { vkGetImageDrmFormatModifierPropertiesEXT = +@@ -1350,7 +1350,7 @@ void VulkanFunctionPointers::ResetForTesting() { + vkGetSwapchainImagesKHR = nullptr; + vkQueuePresentKHR = nullptr; + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + vkGetImageDrmFormatModifierPropertiesEXT = nullptr; + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h index 4e7be2fb3567..8c52f65fe0a8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.h.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.h -@@ -305,7 +305,7 @@ struct COMPONENT_EXPORT(VULKAN) VulkanFunctionPointers +@@ -311,7 +311,7 @@ struct COMPONENT_EXPORT(VULKAN) VulkanFunctionPointers VulkanFunction<PFN_vkGetSwapchainImagesKHR> vkGetSwapchainImagesKHR; VulkanFunction<PFN_vkQueuePresentKHR> vkQueuePresentKHR; @@ -9,7 +9,7 @@ VulkanFunction<PFN_vkGetImageDrmFormatModifierPropertiesEXT> vkGetImageDrmFormatModifierPropertiesEXT; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -1212,7 +1212,7 @@ ALWAYS_INLINE VkResult vkQueuePresentKHR(VkQueue queue +@@ -1235,7 +1235,7 @@ ALWAYS_INLINE VkResult vkQueuePresentKHR(VkQueue queue pPresentInfo); } @@ -18,7 +18,7 @@ ALWAYS_INLINE VkResult vkGetImageDrmFormatModifierPropertiesEXT( VkDevice device, VkImage image, -@@ -1222,4 +1222,4 @@ ALWAYS_INLINE VkResult vkGetImageDrmFormatModifierProp +@@ -1245,4 +1245,4 @@ ALWAYS_INLINE VkResult vkGetImageDrmFormatModifierProp } #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__image.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__image.cc deleted file mode 100644 index d00fc83963f5..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__image.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_image.cc.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/gpu/vulkan/vulkan_image.cc -@@ -392,7 +392,7 @@ bool VulkanImage::InitializeWithExternalMemory( - - // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is - // complete. --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) - VkPhysicalDeviceImageDrmFormatModifierInfoEXT modifier_info = { - .sType = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__util.cc index 8ff623025c71..16b86dba4c0b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__util.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/gpu/vulkan/vulkan_util.cc.orig 2022-07-22 17:30:31 UTC +--- src/3rdparty/chromium/gpu/vulkan/vulkan_util.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/gpu/vulkan/vulkan_util.cc -@@ -199,7 +199,7 @@ bool CheckVulkanCompabilities(const VulkanInfo& vulkan +@@ -343,7 +343,7 @@ bool CheckVulkanCompabilities(const VulkanInfo& vulkan } } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__browser__main__parts__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__browser__main__parts__posix.cc index fc98746712ee..2579ca453b33 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__browser__main__parts__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__browser__main__parts__posix.cc @@ -1,14 +1,14 @@ ---- src/3rdparty/chromium/headless/lib/browser/headless_browser_main_parts_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/headless/lib/browser/headless_browser_main_parts_posix.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/headless/lib/browser/headless_browser_main_parts_posix.cc -@@ -19,13 +19,13 @@ +@@ -21,13 +21,13 @@ #include "content/public/browser/browser_thread.h" #include "headless/lib/browser/headless_browser_impl.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/command_line.h" - #include "components/os_crypt/key_storage_config_linux.h" - #include "components/os_crypt/os_crypt.h" + #include "components/os_crypt/sync/key_storage_config_linux.h" + #include "components/os_crypt/sync/os_crypt.h" #include "headless/public/switches.h" -#if defined(USE_DBUS) @@ -16,7 +16,7 @@ #include "device/bluetooth/dbus/bluez_dbus_manager.h" #endif -@@ -120,7 +120,7 @@ class BrowserShutdownHandler { +@@ -161,7 +161,7 @@ class BrowserShutdownHandler { } // namespace @@ -25,9 +25,9 @@ constexpr char kProductName[] = "HeadlessChrome"; #endif -@@ -128,9 +128,9 @@ void HeadlessBrowserMainParts::PostCreateMainMessageLo - BrowserShutdownHandler::Install( - base::BindOnce(&HeadlessBrowserImpl::Shutdown, browser_->GetWeakPtr())); +@@ -169,9 +169,9 @@ void HeadlessBrowserMainParts::PostCreateMainMessageLo + BrowserShutdownHandler::Install(base::BindOnce( + &HeadlessBrowserImpl::ShutdownWithExitCode, browser_->GetWeakPtr())); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__web__contents__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__web__contents__impl.cc index 00c2637191db..d3dd85b56342 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__web__contents__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__web__contents__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/headless/lib/browser/headless_web_contents_impl.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/headless/lib/browser/headless_web_contents_impl.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/headless/lib/browser/headless_web_contents_impl.cc -@@ -61,7 +61,7 @@ namespace headless { +@@ -60,7 +60,7 @@ namespace headless { namespace { void UpdatePrefsFromSystemSettings(blink::RendererPreferences* prefs) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc index 8205206723ff..85f9b3d5814d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/headless/lib/headless_content_main_delegate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/headless/lib/headless_content_main_delegate.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/headless/lib/headless_content_main_delegate.cc -@@ -327,7 +327,7 @@ void HeadlessContentMainDelegate::InitCrashReporter( +@@ -344,7 +344,7 @@ void HeadlessContentMainDelegate::InitCrashReporter( if (process_type != ::switches::kZygoteProcess) { g_headless_crash_client.Pointer()->set_crash_dumps_dir( command_line.GetSwitchValuePath(switches::kCrashDumpsDir)); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ipc_ipc__message__utils.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ipc_ipc__message__utils.cc index 36e6fd9f3df8..0b4fb6c20bac 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ipc_ipc__message__utils.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ipc_ipc__message__utils.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ipc/ipc_message_utils.cc.orig 2022-05-19 14:06:27 UTC +--- src/3rdparty/chromium/ipc/ipc_message_utils.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ipc/ipc_message_utils.cc -@@ -359,7 +359,7 @@ void ParamTraits<unsigned int>::Log(const param_type& +@@ -393,7 +393,7 @@ void ParamTraits<unsigned int>::Log(const param_type& } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_BUILD.gn index b74a242be8ae..196ee0c0a3c4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_BUILD.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/media/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/media/BUILD.gn @@ -96,6 +96,9 @@ config("media_config") { defines += [ "DLOPEN_PULSEAUDIO" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_BUILD.gn index 0aa9a075cc2d..db6fd122165c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/audio/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/media/audio/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/media/audio/BUILD.gn -@@ -264,9 +264,20 @@ source_set("audio") { +@@ -278,9 +278,20 @@ jumbo_source_set("audio") { ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_audio__input__device.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_audio__input__device.cc index 7763c850bf22..5ca79c181554 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_audio__input__device.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_audio__input__device.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/audio/audio_input_device.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/media/audio/audio_input_device.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/media/audio/audio_input_device.cc -@@ -259,7 +259,7 @@ void AudioInputDevice::OnStreamCreated( +@@ -262,7 +262,7 @@ void AudioInputDevice::OnStreamCreated( // here. See comments in AliveChecker and PowerObserverHelper for details and // todos. if (detect_dead_stream_ == DeadStreamDetection::kEnabled) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_sndio_sndio__input.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_sndio_sndio__input.cc index bb502dad81a3..aebbac4f7a18 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_sndio_sndio__input.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_audio_sndio_sndio__input.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/audio/sndio/sndio_input.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/media/audio/sndio/sndio_input.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/media/audio/sndio/sndio_input.cc @@ -0,0 +1,200 @@ +// Copyright 2013 The Chromium Authors. All rights reserved. @@ -196,7 +196,7 @@ + + + // invoke callback -+ callback->OnData(audio_bus.get(), base::TimeTicks::Now() - delay, 1.); ++ callback->OnData(audio_bus.get(), base::TimeTicks::Now() - delay, 1., {}); + } +} + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_cdm__promise__adapter.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_cdm__promise__adapter.cc new file mode 100644 index 000000000000..8661d571c150 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_cdm__promise__adapter.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/media/base/cdm_promise_adapter.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/media/base/cdm_promise_adapter.cc +@@ -94,7 +94,13 @@ void CdmPromiseAdapter::RejectPromise(uint32_t promise + void CdmPromiseAdapter::Clear(ClearReason reason) { + // Reject all outstanding promises. + DCHECK(thread_checker_.CalledOnValidThread()); ++#if defined(__clang__) && (__clang_major__ >= 16) + for (auto& [promise_id, promise] : promises_) { ++#else ++ for (auto& [p_i, p_e] : promises_) { ++ auto& promise_id = p_i; ++ auto& promise = p_e; ++#endif + TRACE_EVENT_NESTABLE_ASYNC_END1( + "media", "CdmPromise", TRACE_ID_WITH_SCOPE("CdmPromise", promise_id), + "status", "cleared"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.cc index 82fd131702ba..5cfee7ed784c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.cc @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/media/base/media_switches.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/media/base/media_switches.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/media/base/media_switches.cc -@@ -12,7 +12,7 @@ - #include "components/system_media_controls/linux/buildflags/buildflags.h" - #include "media/media_buildflags.h" +@@ -17,7 +17,7 @@ + #include "ui/gl/gl_features.h" + #include "ui/gl/gl_utils.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/cpu.h" #endif -@@ -586,7 +586,7 @@ CONSTINIT const base::Feature kGlobalMediaControls( +@@ -673,7 +673,7 @@ CONSTINIT const base::Feature kGlobalMediaControls( // Show toolbar button that opens dialog for controlling media sessions. CONSTINIT const base::Feature kGlobalMediaControls( "GlobalMediaControls", @@ -18,7 +18,16 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -634,7 +634,7 @@ CONSTINIT const base::Feature kGlobalMediaControlsPict +@@ -696,7 +696,7 @@ CONSTINIT const base::Feature kMediaRemotingWithoutFul + // If enabled, users can request Media Remoting without fullscreen-in-tab. + CONSTINIT const base::Feature kMediaRemotingWithoutFullscreen( + "MediaRemotingWithoutFullscreen", +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT +@@ -708,7 +708,7 @@ CONSTINIT const base::Feature kGlobalMediaControlsPict CONSTINIT const base::Feature kGlobalMediaControlsPictureInPicture( "GlobalMediaControlsPictureInPicture", #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ @@ -27,7 +36,7 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -678,7 +678,7 @@ BASE_FEATURE(kUnifiedAutoplay, +@@ -752,7 +752,7 @@ BASE_FEATURE(kUnifiedAutoplay, "UnifiedAutoplay", base::FEATURE_ENABLED_BY_DEFAULT); @@ -36,17 +45,18 @@ // Enable vaapi video decoding on linux. This is already enabled by default on // chromeos, but needs an experiment on linux. BASE_FEATURE(kVaapiVideoDecodeLinux, -@@ -1198,14 +1198,14 @@ BASE_FEATURE(kAllowClearDolbyVisionInMseWhenPlatformEn - base::FEATURE_DISABLED_BY_DEFAULT); - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // Spawn utility processes to perform hardware decode acceleration instead of - // using the GPU process. - const base::Feature MEDIA_EXPORT kUseOutOfProcessVideoDecoding{ - "UseOutOfProcessVideoDecoding", base::FEATURE_DISABLED_BY_DEFAULT}; - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +@@ -832,7 +832,7 @@ BASE_FEATURE(kVaapiVp9kSVCHWEncoding, + "VaapiVp9kSVCHWEncoding", + base::FEATURE_ENABLED_BY_DEFAULT); + #endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS) +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Enables the new V4L2StatefulVideoDecoder instead of V4L2VideoDecoder. + BASE_FEATURE(kV4L2FlatStatelessVideoDecoder, + "V4L2FlatStatelessVideoDecoder", +@@ -1348,7 +1348,7 @@ const base::Feature MEDIA_EXPORT kUseOutOfProcessVideo + }; + #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.h index a9a8002374ce..7bf6a2138bd1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_media__switches.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/base/media_switches.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/base/media_switches.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/base/media_switches.h -@@ -277,7 +277,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseDecoderStreamFor +@@ -305,7 +305,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseElementInsteadOf MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseFakeDeviceForMediaStream); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseMediaHistoryStore); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseR16Texture); @@ -9,14 +9,18 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVideoDecodeLinux); MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVideoDecodeLinuxGL); MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVideoEncodeLinux); -@@ -396,11 +396,11 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE( - kAllowClearDolbyVisionInMseWhenPlatformEncryptedDvEnabled); - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +@@ -323,7 +323,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiH264TemporalLa + MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVp8TemporalLayerHWEncoding); + MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVp9kSVCHWEncoding); + #endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS) +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + MEDIA_EXPORT BASE_DECLARE_FEATURE(kV4L2FlatStatelessVideoDecoder); + MEDIA_EXPORT BASE_DECLARE_FEATURE(kV4L2FlatStatefulVideoDecoder); + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +@@ -443,7 +443,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kExposeOutOfProcessV MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoDecoding); - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc index f5821433164b..347d8ca3beab 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/base/video_frame.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/base/video_frame.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/base/video_frame.cc @@ -80,7 +80,7 @@ std::string VideoFrame::StorageTypeToString( return "OWNED_MEMORY"; @@ -18,7 +18,7 @@ // This is not strictly needed but makes explicit that, at VideoFrame // level, DmaBufs are not mappable from userspace. storage_type != VideoFrame::STORAGE_DMABUFS && -@@ -307,7 +307,7 @@ static absl::optional<VideoFrameLayout> GetDefaultLayo +@@ -306,7 +306,7 @@ static absl::optional<VideoFrameLayout> GetDefaultLayo return VideoFrameLayout::CreateWithPlanes(format, coded_size, planes); } @@ -27,7 +27,7 @@ // This class allows us to embed a vector<ScopedFD> into a scoped_refptr, and // thus to have several VideoFrames share the same set of DMABUF FDs. class VideoFrame::DmabufHolder -@@ -636,7 +636,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalGpuM +@@ -635,7 +635,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalGpuM for (size_t i = 0; i < num_planes; ++i) planes[i].stride = gpu_memory_buffer->stride(i); uint64_t modifier = gfx::NativePixmapHandle::kNoModifier; @@ -36,7 +36,7 @@ if (gpu_memory_buffer->GetType() == gfx::NATIVE_PIXMAP) { const auto gmb_handle = gpu_memory_buffer->CloneHandle(); if (gmb_handle.is_null() || -@@ -682,7 +682,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalGpuM +@@ -681,7 +681,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalGpuM return frame; } @@ -54,7 +54,7 @@ DCHECK(frame->dmabuf_fds_); // If there are any |dmabuf_fds_| plugged in, we should refer them too. wrapping_frame->dmabuf_fds_ = frame->dmabuf_fds_; -@@ -1302,7 +1302,7 @@ const gpu::MailboxHolder& VideoFrame::mailbox_holder( +@@ -1310,7 +1310,7 @@ const gpu::MailboxHolder& VideoFrame::mailbox_holder( : mailbox_holders_[texture_index]; } @@ -63,7 +63,7 @@ const std::vector<base::ScopedFD>& VideoFrame::DmabufFds() const { DCHECK_EQ(storage_type_, STORAGE_DMABUFS); -@@ -1415,7 +1415,7 @@ VideoFrame::VideoFrame(const VideoFrameLayout& layout, +@@ -1423,7 +1423,7 @@ VideoFrame::VideoFrame(const VideoFrameLayout& layout, storage_type_(storage_type), visible_rect_(Intersection(visible_rect, gfx::Rect(layout.coded_size()))), natural_size_(natural_size), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h index d764548e57fc..537115395142 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/media/base/video_frame.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/base/video_frame.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/base/video_frame.h @@ -44,7 +44,7 @@ - #include "base/mac/scoped_cftyperef.h" - #endif // BUILDFLAG(IS_MAC) + #include "base/apple/scoped_cftyperef.h" + #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/scoped_file.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -113,7 +113,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -110,7 +110,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte STORAGE_UNOWNED_MEMORY = 2, // External, non owned data pointers. STORAGE_OWNED_MEMORY = 3, // VideoFrame has allocated its own data buffer. STORAGE_SHMEM = 4, // Backed by read-only shared memory. @@ -18,7 +18,7 @@ // TODO(mcasas): Consider turning this type into STORAGE_NATIVE // based on the idea of using this same enum value for both DMA // buffers on Linux and CVPixelBuffers on Mac (which currently use -@@ -308,7 +308,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -313,7 +313,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte ReleaseMailboxAndGpuMemoryBufferCB mailbox_holder_and_gmb_release_cb, base::TimeDelta timestamp); @@ -27,7 +27,7 @@ // Wraps provided dmabufs // (https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html) with a // VideoFrame. The frame will take ownership of |dmabuf_fds|, and will -@@ -596,7 +596,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -593,7 +593,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // mailbox, the caller must wait for the included sync point. const gpu::MailboxHolder& mailbox_holder(size_t texture_index) const; @@ -36,7 +36,7 @@ // Returns a vector containing the backing DmaBufs for this frame. The number // of returned DmaBufs will be equal or less than the number of planes of // the frame. If there are less, this means that the last FD contains the -@@ -809,7 +809,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -811,7 +811,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // GPU memory buffer, if this frame is STORAGE_GPU_MEMORY_BUFFER. std::unique_ptr<gfx::GpuMemoryBuffer> gpu_memory_buffer_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_fake__video__capture__device__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_fake__video__capture__device__factory.cc index 3a78d3db1cd3..286f02368daf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_fake__video__capture__device__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_fake__video__capture__device__factory.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/capture/video/fake_video_capture_device_factory.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/fake_video_capture_device_factory.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/media/capture/video/fake_video_capture_device_factory.cc -@@ -213,7 +213,7 @@ void FakeVideoCaptureDeviceFactory::GetDevicesInfo( +@@ -229,7 +229,7 @@ void FakeVideoCaptureDeviceFactory::GetDevicesInfo( int entry_index = 0; for (const auto& entry : devices_config_) { VideoCaptureApi api = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.cc index caba3e655650..d5c23f1e1c31 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.cc -@@ -486,7 +486,7 @@ int FakeV4L2Impl::close(int fd) { +@@ -560,7 +560,7 @@ int FakeV4L2Impl::close(int fd) { return kSuccessReturnValue; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.h index 62da82dbf905..08dd4ff954b9 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_fake__v4l2__impl.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.h.orig 2022-03-01 11:59:41 UTC +--- src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/media/capture/video/linux/fake_v4l2_impl.h @@ -8,7 +8,13 @@ #include <map> @@ -14,7 +14,7 @@ #include "base/synchronization/lock.h" #include "media/capture/capture_export.h" -@@ -36,7 +42,7 @@ class CAPTURE_EXPORT FakeV4L2Impl : public V4L2Capture +@@ -38,7 +44,7 @@ class CAPTURE_EXPORT FakeV4L2Impl : public V4L2Capture // Implementation of V4L2CaptureDevice interface: int open(const char* device_name, int flags) override; int close(int fd) override; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc index a67fe37b61e0..2bbd51b2e2c5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc @@ -1,30 +1,80 @@ ---- src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.cc @@ -4,8 +4,10 @@ #include "media/capture/video/linux/v4l2_capture_delegate.h" -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) #include <linux/version.h> #include <linux/videodev2.h> +#endif #include <poll.h> #include <sys/fcntl.h> #include <sys/ioctl.h> -@@ -29,10 +31,10 @@ +@@ -26,17 +28,19 @@ + #include "media/capture/video/blob_utils.h" + #include "media/capture/video/linux/video_capture_device_linux.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "media/capture/capture_switches.h" + #include "media/capture/video/linux/v4l2_capture_delegate_gpu_helper.h" + #endif // BUILDFLAG(IS_LINUX) using media::mojom::MeteringMode; --#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) -+// #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) ++#if !BUILDFLAG(IS_BSD) + #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) // 16 bit depth, Realsense F200. #define V4L2_PIX_FMT_Z16 v4l2_fourcc('Z', '1', '6', ' ') --#endif -+// #endif + #endif ++#endif // TODO(aleksandar.stojiljkovic): Wrap this with kernel version check once the // format is introduced to kernel. -@@ -728,7 +730,7 @@ base::WeakPtr<V4L2CaptureDelegate> V4L2CaptureDelegate +@@ -46,6 +50,14 @@ using media::mojom::MeteringMode; + #define V4L2_PIX_FMT_INVZ v4l2_fourcc('I', 'N', 'V', 'Z') + #endif + ++#ifndef V4L2_COLORSPACE_OPRGB ++#define V4L2_COLORSPACE_OPRGB V4L2_COLORSPACE_ADOBERGB ++#endif ++ ++#ifndef V4L2_XFER_FUNC_OPRGB ++#define V4L2_XFER_FUNC_OPRGB V4L2_XFER_FUNC_ADOBERGB ++#endif ++ + namespace media { + + namespace { +@@ -260,7 +272,7 @@ bool V4L2CaptureDelegate::IsBlockedControl(int control + // static + bool V4L2CaptureDelegate::IsControllableControl( + int control_id, +- const base::RepeatingCallback<int(int, void*)>& do_ioctl) { ++ const base::RepeatingCallback<int(unsigned int, void*)>& do_ioctl) { + const int special_control_id = GetControllingSpecialControl(control_id); + if (!special_control_id) { + // The control is not controlled by a special control thus the control is +@@ -316,7 +328,7 @@ V4L2CaptureDelegate::V4L2CaptureDelegate( + is_capturing_(false), + timeout_count_(0), + rotation_(rotation) { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + use_gpu_buffer_ = switches::IsVideoCaptureUseGpuMemoryBufferEnabled(); + #endif // BUILDFLAG(IS_LINUX) + } +@@ -443,7 +455,7 @@ void V4L2CaptureDelegate::AllocateAndStart( + + client_->OnStarted(); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (use_gpu_buffer_) { + v4l2_gpu_helper_ = std::make_unique<V4L2CaptureDelegateGpuHelper>( + std::move(gmb_support_test_)); +@@ -793,7 +805,7 @@ void V4L2CaptureDelegate::SetGPUEnvironmentForTesting( V4L2CaptureDelegate::~V4L2CaptureDelegate() = default; @@ -33,7 +83,7 @@ int num_retries = 0; for (; DoIoctl(request, argp) < 0 && num_retries < kMaxIOCtrlRetries; ++num_retries) { -@@ -738,7 +740,7 @@ bool V4L2CaptureDelegate::RunIoctl(int request, void* +@@ -803,7 +815,7 @@ bool V4L2CaptureDelegate::RunIoctl(int request, void* return num_retries != kMaxIOCtrlRetries; } @@ -42,18 +92,15 @@ return HANDLE_EINTR(v4l2_->ioctl(device_fd_.get(), request, argp)); } -@@ -778,6 +780,10 @@ bool V4L2CaptureDelegate::IsControllableControl(int co +@@ -814,6 +826,7 @@ bool V4L2CaptureDelegate::IsControllableControl(int co } void V4L2CaptureDelegate::ReplaceControlEventSubscriptions() { -+// these ioctls are not implemented on *BSDs -+#if BUILDFLAG(IS_BSD) -+ NOTIMPLEMENTED(); -+#else ++#if !BUILDFLAG(IS_BSD) constexpr uint32_t kControlIds[] = {V4L2_CID_AUTO_EXPOSURE_BIAS, V4L2_CID_AUTO_WHITE_BALANCE, V4L2_CID_BRIGHTNESS, -@@ -805,6 +811,7 @@ void V4L2CaptureDelegate::ReplaceControlEventSubscript +@@ -841,6 +854,7 @@ void V4L2CaptureDelegate::ReplaceControlEventSubscript << ", {type = V4L2_EVENT_CTRL, id = " << control_id << "}"; } } @@ -61,3 +108,49 @@ } mojom::RangePtr V4L2CaptureDelegate::RetrieveUserControlRange(int control_id) { +@@ -1021,7 +1035,11 @@ void V4L2CaptureDelegate::DoCapture() { + + pollfd device_pfd = {}; + device_pfd.fd = device_fd_.get(); ++#if !BUILDFLAG(IS_BSD) + device_pfd.events = POLLIN | POLLPRI; ++#else ++ device_pfd.events = POLLIN; ++#endif + + const int result = + HANDLE_EINTR(v4l2_->poll(&device_pfd, 1, kCaptureTimeoutMs)); +@@ -1059,6 +1077,7 @@ void V4L2CaptureDelegate::DoCapture() { + timeout_count_ = 0; + } + ++#if !BUILDFLAG(IS_BSD) + // Dequeue events if the driver has filled in some. + if (device_pfd.revents & POLLPRI) { + bool controls_changed = false; +@@ -1093,6 +1112,7 @@ void V4L2CaptureDelegate::DoCapture() { + client_->OnCaptureConfigurationChanged(); + } + } ++#endif + + // Deenqueue, send and reenqueue a buffer if the driver has filled one in. + if (device_pfd.revents & POLLIN) { +@@ -1146,7 +1166,7 @@ void V4L2CaptureDelegate::DoCapture() { + // workable on Linux. + + // See http://crbug.com/959919. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (use_gpu_buffer_) { + v4l2_gpu_helper_->OnIncomingCapturedData( + client_.get(), buffer_tracker->start(), +@@ -1219,7 +1239,7 @@ void V4L2CaptureDelegate::SetErrorState(VideoCaptureEr + client_->OnError(error, from_here, reason); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + gfx::ColorSpace V4L2CaptureDelegate::BuildColorSpaceFromv4l2() { + v4l2_colorspace v4l2_primary = (v4l2_colorspace)video_fmt_.fmt.pix.colorspace; + v4l2_quantization v4l2_range = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.h index 725ca9301f3b..543d9fb3ec80 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.h @@ -1,6 +1,24 @@ ---- src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.h -@@ -87,10 +87,10 @@ class CAPTURE_EXPORT V4L2CaptureDelegate final { +@@ -35,7 +35,7 @@ class Location; + + namespace media { + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + class V4L2CaptureDelegateGpuHelper; + #endif // BUILDFLAG(IS_LINUX) + +@@ -86,7 +86,7 @@ class CAPTURE_EXPORT V4L2CaptureDelegate final { + static bool IsBlockedControl(int control_id); + static bool IsControllableControl( + int control_id, +- const base::RepeatingCallback<int(int, void*)>& do_ioctl); ++ const base::RepeatingCallback<int(unsigned int, void*)>& do_ioctl); + + void SetGPUEnvironmentForTesting( + std::unique_ptr<gpu::GpuMemoryBufferSupport> gmb_support); +@@ -100,10 +100,10 @@ class CAPTURE_EXPORT V4L2CaptureDelegate final { // device file descriptor or (re)starting streaming, can fail but works after // retrying (https://crbug.com/670262). Returns false if the |request| ioctl // fails too many times. @@ -13,3 +31,21 @@ // Check whether the control is controllable (and not changed automatically). bool IsControllableControl(int control_id); +@@ -133,7 +133,7 @@ class CAPTURE_EXPORT V4L2CaptureDelegate final { + const base::Location& from_here, + const std::string& reason); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Systems which describe a "color space" usually map that to one or more of + // {primary, matrix, transfer, range}. BuildColorSpaceFromv4l2() will use the + // matched value as first priority. Otherwise, if there is no best matching +@@ -167,7 +167,7 @@ class CAPTURE_EXPORT V4L2CaptureDelegate final { + // Clockwise rotation in degrees. This value should be 0, 90, 180, or 270. + int rotation_; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Support GPU memory buffer. + bool use_gpu_buffer_; + std::unique_ptr<V4L2CaptureDelegateGpuHelper> v4l2_gpu_helper_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__v4l2.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__v4l2.cc index cd743a293f11..1bd27f575454 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__v4l2.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__v4l2.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_v4l2.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_v4l2.cc.orig 2023-05-02 13:49:23 UTC +++ src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_v4l2.cc @@ -75,6 +75,9 @@ class DevVideoFilePathsDeviceProvider : public VideoCaptureDeviceFactoryV4L2::DeviceProvider { public: void GetDeviceIds(std::vector<std::string>* target_container) override { -+#if defined(OS_OPENBSD) ++#if BUILDFLAG(IS_OPENBSD) + target_container->emplace_back("/dev/video"); +#else const base::FilePath path("/dev/"); @@ -18,7 +18,7 @@ } std::string GetDeviceModelId(const std::string& device_id) override { -+#if defined(OS_OPENBSD) ++#if BUILDFLAG(IS_OPENBSD) + return std::string(); +#endif const std::string file_name = ExtractFileNameFromDeviceId(device_id); @@ -28,7 +28,7 @@ } std::string GetDeviceDisplayName(const std::string& device_id) override { -+#if defined(OS_OPENBSD) ++#if BUILDFLAG(IS_OPENBSD) + return std::string(); +#endif const std::string file_name = ExtractFileNameFromDeviceId(device_id); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__tracker__factory__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__tracker__factory__impl.cc new file mode 100644 index 000000000000..bfa563fa7b66 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__tracker__factory__impl.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/media/capture/video/video_capture_buffer_tracker_factory_impl.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/media/capture/video/video_capture_buffer_tracker_factory_impl.cc +@@ -14,7 +14,7 @@ + #include "media/capture/video/chromeos/gpu_memory_buffer_tracker_cros.h" + #elif BUILDFLAG(IS_APPLE) + #include "media/capture/video/apple/gpu_memory_buffer_tracker_apple.h" +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "media/capture/video/linux/v4l2_gpu_memory_buffer_tracker.h" + #elif BUILDFLAG(IS_WIN) + #include "media/capture/video/shared_memory_buffer_tracker.h" +@@ -43,7 +43,7 @@ VideoCaptureBufferTrackerFactoryImpl::CreateTracker( + return std::make_unique<GpuMemoryBufferTrackerCros>(); + #elif BUILDFLAG(IS_APPLE) + return std::make_unique<GpuMemoryBufferTrackerApple>(); +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return std::make_unique<V4L2GpuMemoryBufferTracker>(); + #elif BUILDFLAG(IS_WIN) + if (!dxgi_device_manager_) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc index 69f741431c9f..842b9dda9100 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc -@@ -322,7 +322,7 @@ void VideoCaptureDeviceClient::OnIncomingCapturedData( - // see http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html. - // Windows RGB24 defines blue at lowest byte, - // see https://msdn.microsoft.com/en-us/library/windows/desktop/dd407253 --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - fourcc_format = libyuv::FOURCC_RAW; - #elif BUILDFLAG(IS_WIN) - fourcc_format = libyuv::FOURCC_24BG; +@@ -149,7 +149,7 @@ FourccAndFlip GetFourccAndFlipFromPixelFormat( + CHECK(!is_width_odd && !is_height_odd); + return {libyuv::FOURCC_UYVY}; + case media::PIXEL_FORMAT_RGB24: +- if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) { ++ if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { + // Linux RGB24 defines red at lowest byte address, + // see http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html. + return {libyuv::FOURCC_RAW}; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_cdm_library__cdm_cdm__paths.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_cdm_library__cdm_cdm__paths.gni new file mode 100644 index 000000000000..02b8f3d6b112 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_cdm_library__cdm_cdm__paths.gni @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/media/cdm/library_cdm/cdm_paths.gni.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/media/cdm/library_cdm/cdm_paths.gni +@@ -15,7 +15,7 @@ assert(enable_library_cdms) + # Explicitly define what we use to avoid confusion. + if (is_chromeos) { + component_os = "cros" +-} else if (is_linux) { ++} else if (is_linux || is_bsd) { + component_os = "linux" + } else if (is_win) { + component_os = "win" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_buffer__validation.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_buffer__validation.cc index 2bc969973e5a..68e7cc0f92f2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_buffer__validation.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_buffer__validation.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/gpu/buffer_validation.cc.orig 2022-05-19 14:06:27 UTC +--- src/3rdparty/chromium/media/gpu/buffer_validation.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/media/gpu/buffer_validation.cc @@ -15,7 +15,7 @@ #include "ui/gfx/geometry/size.h" @@ -18,7 +18,7 @@ if (fd < 0) { VLOG(1) << "Invalid file descriptor"; return false; -@@ -73,7 +73,7 @@ bool VerifyGpuMemoryBufferHandle( +@@ -76,7 +76,7 @@ bool VerifyGpuMemoryBufferHandle( VLOG(1) << "Unsupported: " << pixel_format; return false; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_chromeos_video__decoder__pipeline.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_chromeos_video__decoder__pipeline.cc index 3eb5fcdfe8ba..2a6874c36898 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_chromeos_video__decoder__pipeline.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_chromeos_video__decoder__pipeline.cc @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/media/gpu/chromeos/video_decoder_pipeline.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/gpu/chromeos/video_decoder_pipeline.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/gpu/chromeos/video_decoder_pipeline.cc -@@ -213,7 +213,7 @@ std::unique_ptr<VideoDecoder> VideoDecoderPipeline::Cr - #if BUILDFLAG(USE_VAAPI) - create_decoder_function_cb = base::BindOnce(&VaapiVideoDecoder::Create); - #elif BUILDFLAG(USE_V4L2_CODEC) && \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD)) - create_decoder_function_cb = base::BindOnce(&V4L2VideoDecoder::Create); - #else - return nullptr; -@@ -860,14 +860,14 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1026,14 +1026,14 @@ VideoDecoderPipeline::PickDecoderOutputFormat( } } @@ -26,7 +17,7 @@ // Linux w/ V4L2 should not use a custom allocator // Only tested with video_decode_accelerator_tests // TODO(wenst@) Test with full Chromium Browser -@@ -997,7 +997,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1170,7 +1170,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( << " VideoFrames"; auxiliary_frame_pool_->set_parent_task_runner(decoder_task_runner_); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_gpu__video__encode__accelerator__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_gpu__video__encode__accelerator__factory.cc index 84730e3c08b2..bad61d8e7bd2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_gpu__video__encode__accelerator__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_gpu__video__encode__accelerator__factory.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/gpu/gpu_video_encode_accelerator_factory.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/media/gpu/gpu_video_encode_accelerator_factory.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/media/gpu/gpu_video_encode_accelerator_factory.cc -@@ -121,7 +121,7 @@ std::vector<VEAFactoryFunction> GetVEAFactoryFunctions +@@ -119,7 +119,7 @@ std::vector<VEAFactoryFunction> GetVEAFactoryFunctions return vea_factory_functions; #if BUILDFLAG(USE_VAAPI) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc index b054db0ad44b..1e2c2a8f7327 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc @@ -15,7 +15,9 @@ #include "media/gpu/vaapi/vaapi_wrapper.h" @@ -18,15 +18,15 @@ void AllowAccessToRenderNodes(std::vector<BrokerFilePermission>& permissions, bool include_sys_dev_char, bool read_write) { -@@ -160,6 +163,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( - return false; +@@ -165,6 +168,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( + NOTREACHED_NORETURN(); #endif // BUILDFLAG(USE_V4L2_CODEC) } +#endif } // namespace -@@ -175,6 +179,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( +@@ -180,6 +184,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( // (at least). bool HardwareVideoDecodingPreSandboxHook( sandbox::policy::SandboxLinux::Options options) { @@ -34,7 +34,7 @@ using HardwareVideoDecodingProcessPolicy = sandbox::policy::HardwareVideoDecodingProcessPolicy; using PolicyType = -@@ -212,6 +217,7 @@ bool HardwareVideoDecodingPreSandboxHook( +@@ -217,6 +222,7 @@ bool HardwareVideoDecodingPreSandboxHook( sandbox::policy::SandboxLinux::GetInstance()->StartBrokerProcess( command_set, permissions, sandbox::policy::SandboxLinux::PreSandboxHook(), options); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.h index 4063da78a1f8..3ef02d85160d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.h.orig 2022-05-19 14:06:27 UTC +--- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.h @@ -5,7 +5,13 @@ #ifndef MEDIA_GPU_SANDBOX_HARDWARE_VIDEO_DECODING_SANDBOX_HOOK_LINUX_H_ @@ -7,7 +7,7 @@ +#include "build/build_config.h" + +#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc index 973bd9244d1a..881836be0cc9 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc @@ -18,12 +18,15 @@ #include "media/gpu/v4l2/v4l2_device.h" @@ -16,15 +16,11 @@ sandbox::syscall_broker::BrokerCommandSet command_set; std::vector<BrokerFilePermission> permissions; -@@ -125,8 +128,8 @@ bool HardwareVideoEncodingPreSandboxHook( - #endif // defined(__aarch64__) +@@ -121,6 +124,7 @@ bool HardwareVideoEncodingPreSandboxHook( + return false; + } } - #endif -- +#endif + #endif return true; } - --} // namespace media -\ No newline at end of file -+} // namespace media diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.h index 02783baff405..9cc18190d195 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h @@ -5,7 +5,13 @@ #ifndef MEDIA_GPU_SANDBOX_HARDWARE_VIDEO_ENCODING_SANDBOX_HOOK_LINUX_H_ @@ -7,7 +7,7 @@ +#include "build/build_config.h" + +#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__video__decoder.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__video__decoder.cc index 3ac879eb290b..541298f16108 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__video__decoder.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__video__decoder.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/gpu/vaapi/vaapi_video_decoder.cc.orig 2023-10-03 19:49:54 UTC +--- src/3rdparty/chromium/media/gpu/vaapi/vaapi_video_decoder.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/media/gpu/vaapi/vaapi_video_decoder.cc -@@ -772,7 +772,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree +@@ -782,7 +782,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree const gfx::Size decoder_natural_size = aspect_ratio_.GetNaturalSize(decoder_visible_rect); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__wrapper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__wrapper.cc new file mode 100644 index 000000000000..78386389a125 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_gpu_vaapi_vaapi__wrapper.cc @@ -0,0 +1,56 @@ +--- src/3rdparty/chromium/media/gpu/vaapi/vaapi_wrapper.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/media/gpu/vaapi/vaapi_wrapper.cc +@@ -70,7 +70,7 @@ + using media_gpu_vaapi::kModuleVa_prot; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/files/file_util.h" + #include "base/strings/string_split.h" + #endif +@@ -1441,7 +1441,7 @@ bool IsVBREncodingSupported(VAProfile va_profile) { + return VASupportedProfiles::Get().IsProfileSupported(mode, va_profile); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Some VA-API drivers (vdpau-va-driver) will crash if used with VA/DRM on + // NVIDIA GPUs. This function checks if such drivers are present. + bool IsBrokenNvidiaVaapiDriverPresent() { +@@ -1502,7 +1502,7 @@ void VADisplayStateSingleton::PreSandboxInitialization + VADisplayStateSingleton& va_display_state = GetInstance(); + base::AutoLock lock(va_display_state.lock_); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::string va_driver_name; + auto env = base::Environment::Create(); + if (env->GetVar("LIBVA_DRIVER_NAME", &va_driver_name) && +@@ -1539,7 +1539,7 @@ void VADisplayStateSingleton::PreSandboxInitialization + if (base::EqualsCaseInsensitiveASCII(version_name, "vgem")) { + continue; + } +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Skip NVIDIA GPUs if the VA-API driver used for them is known for crashing + // with VA/DRM. + if (is_nvidia_va_drm_broken && +@@ -1572,7 +1572,7 @@ VADisplayStateHandle VADisplayStateSingleton::GetHandl + return {}; + } + +-#if BUILDFLAG(IS_OZONE) && BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_OZONE) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) + // TODO(crbug.com/1116701): add vaapi support for other Ozone platforms on + // Linux. See comment in OzonePlatform::PlatformProperties::supports_vaapi + // for more details. This will also require revisiting everything that's +@@ -2403,7 +2403,7 @@ scoped_refptr<VASurface> VaapiWrapper::CreateVASurface + return nullptr; + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // TODO(crbug.com/1326754): enable use DRIME_PRIME_2 API on Linux with the + // iHD driver. + const bool use_drm_prime_2 = false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_media__options.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_media__options.gni index 13d6f8e6fee3..737749461c1f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_media__options.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_media__options.gni @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/media_options.gni.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/media/media_options.gni.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/media/media_options.gni -@@ -196,12 +196,15 @@ declare_args() { +@@ -189,12 +189,15 @@ declare_args() { # Enables runtime selection of ALSA library for audio. use_alsa = false @@ -17,7 +17,7 @@ (!is_castos || (target_cpu == "x86" || target_cpu == "x64") || is_cast_audio_only)) { use_alsa = true -@@ -217,6 +220,10 @@ declare_args() { +@@ -210,6 +213,10 @@ declare_args() { if (!use_cras && !is_castos && !is_asan && !is_tsan) { use_pulseaudio = true } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.cc index 929095529690..32f0c1350902 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.cc @@ -1,15 +1,6 @@ ---- src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.cc -@@ -39,7 +39,7 @@ gfx::GpuMemoryBufferHandle GetVideoFrameGpuMemoryBuffe - gfx::GpuMemoryBufferHandle gpu_memory_buffer_handle = - input->GetGpuMemoryBuffer()->CloneHandle(); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - CHECK_EQ(gpu_memory_buffer_handle.type, gfx::NATIVE_PIXMAP); - CHECK(!gpu_memory_buffer_handle.native_pixmap_handle.planes.empty()); - #else -@@ -751,7 +751,7 @@ const gfx::GpuMemoryBufferId& StructTraits< +@@ -837,7 +837,7 @@ const gfx::GpuMemoryBufferId& StructTraits< return input.id; } @@ -18,7 +9,7 @@ // static gfx::NativePixmapHandle StructTraits< media::stable::mojom::NativeGpuMemoryBufferHandleDataView, -@@ -772,7 +772,7 @@ bool StructTraits<media::stable::mojom::NativeGpuMemor +@@ -858,7 +858,7 @@ bool StructTraits<media::stable::mojom::NativeGpuMemor output->type = gfx::NATIVE_PIXMAP; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.h index 58c76e3dad1f..badd3fb67fa7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_mojo_mojom_stable_stable__video__decoder__types__mojom__traits.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.h.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.h -@@ -695,7 +695,7 @@ struct StructTraits<media::stable::mojom::NativeGpuMem +@@ -693,7 +693,7 @@ struct StructTraits<media::stable::mojom::NativeGpuMem static const gfx::GpuMemoryBufferId& id( const gfx::GpuMemoryBufferHandle& input); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_gpu__memory__buffer__video__frame__pool.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_gpu__memory__buffer__video__frame__pool.cc index 4ceffe452896..7330db5c2cd0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_gpu__memory__buffer__video__frame__pool.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_gpu__memory__buffer__video__frame__pool.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/video/gpu_memory_buffer_video_frame_pool.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/media/video/gpu_memory_buffer_video_frame_pool.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/media/video/gpu_memory_buffer_video_frame_pool.cc @@ -727,7 +727,7 @@ void GpuMemoryBufferVideoFramePool::PoolImpl::CreateHa } @@ -9,8 +9,8 @@ is_software_backed_video_frame &= !video_frame->HasDmaBufs(); #endif -@@ -1158,7 +1158,7 @@ scoped_refptr<VideoFrame> GpuMemoryBufferVideoFramePoo - is_webgpu_compatible = (gpu_memory_buffer != nullptr); +@@ -1199,7 +1199,7 @@ scoped_refptr<VideoFrame> GpuMemoryBufferVideoFramePoo + } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -18,7 +18,7 @@ is_webgpu_compatible = (gpu_memory_buffer != nullptr); if (is_webgpu_compatible) { is_webgpu_compatible &= -@@ -1177,7 +1177,7 @@ scoped_refptr<VideoFrame> GpuMemoryBufferVideoFramePoo +@@ -1218,7 +1218,7 @@ scoped_refptr<VideoFrame> GpuMemoryBufferVideoFramePoo gpu::SHARED_IMAGE_USAGE_DISPLAY_READ | gpu::SHARED_IMAGE_USAGE_SCANOUT; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter.cc index 3975d337f8cb..035aa5896513 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/media/video/video_encode_accelerator_adapter.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/media/video/video_encode_accelerator_adapter.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/media/video/video_encode_accelerator_adapter.cc @@ -140,7 +140,7 @@ VideoEncodeAccelerator::Config SetUpVeaConfig( if (is_rgb) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter__test.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter__test.cc index 6ac94ed8b548..566d26253613 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter__test.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_media_video_video__encode__accelerator__adapter__test.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/media/video/video_encode_accelerator_adapter_test.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/media/video/video_encode_accelerator_adapter_test.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/media/video/video_encode_accelerator_adapter_test.cc -@@ -449,7 +449,7 @@ TEST_P(VideoEncodeAcceleratorAdapterTest, TwoFramesRes +@@ -459,7 +459,7 @@ TEST_P(VideoEncodeAcceleratorAdapterTest, TwoFramesRes CreateGreenFrame(large_size, pixel_format, base::Milliseconds(2)); VideoPixelFormat expected_input_format = PIXEL_FORMAT_I420; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_BUILD.gn index 3c99434c12d2..a96a138f0536 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/mojo/core/BUILD.gn.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/mojo/core/BUILD.gn.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/mojo/core/BUILD.gn -@@ -164,7 +164,7 @@ template("core_impl_source_set") { +@@ -166,7 +166,7 @@ template("core_impl_source_set") { ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_embedder_features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_embedder_features.h index 9ed0dc06fcdd..e36f5ba80304 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_embedder_features.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_core_embedder_features.h @@ -1,9 +1,9 @@ ---- src/3rdparty/chromium/mojo/core/embedder/features.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/mojo/core/embedder/features.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/mojo/core/embedder/features.h -@@ -14,7 +14,7 @@ namespace mojo { - namespace core { +@@ -16,7 +16,7 @@ namespace core { - #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_MAC) + #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_NACL) && \ + !BUILDFLAG(MOJO_USE_APPLE_CHANNEL) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(MOJO_CORE_EMBEDDER_FEATURES) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_public_tools_bindings_mojom.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_public_tools_bindings_mojom.gni index ddad9b308a12..da3560fe7f91 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_public_tools_bindings_mojom.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_mojo_public_tools_bindings_mojom.gni @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/mojo/public/tools/bindings/mojom.gni.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/mojo/public/tools/bindings/mojom.gni.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/mojo/public/tools/bindings/mojom.gni -@@ -722,6 +722,16 @@ template("mojom") { +@@ -743,6 +743,16 @@ template("mojom") { enabled_features += [ "is_apple" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn index 3b132db0a7d7..b35ef2592495 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/net/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/net/BUILD.gn -@@ -108,7 +108,7 @@ net_configs = [ +@@ -126,7 +126,7 @@ net_configs = [ "//build/config/compiler:wexit_time_destructors", ] @@ -9,12 +9,16 @@ net_configs += [ "//build/config/linux:libresolv" ] } -@@ -1228,6 +1228,15 @@ component("net") { +@@ -1255,6 +1255,19 @@ component("net") { deps += [ "//third_party/xdg_shared_mime_info" ] } + if (is_bsd) { + sources -= [ ++ "base/address_map_cache_linux.cc", ++ "base/address_map_cache_linux.h", ++ "base/address_map_linux.cc", ++ "base/address_map_linux.h", + "base/address_tracker_linux.cc", + "base/address_tracker_linux.h", + "base/network_change_notifier_linux.cc", @@ -25,16 +29,7 @@ if (is_mac) { sources += [ "base/network_notification_thread_mac.cc", -@@ -1360,7 +1369,7 @@ component("net") { - } - } - -- if (is_android || is_chromeos) { -+ if (is_android || is_chromeos || is_bsd) { - sources += [ - "base/network_change_notifier_posix.cc", - "base/network_change_notifier_posix.h", -@@ -1393,7 +1402,7 @@ component("net") { +@@ -1410,7 +1423,7 @@ component("net") { } # Use getifaddrs() on POSIX platforms, except Linux. @@ -43,8 +38,8 @@ sources += [ "base/network_interfaces_getifaddrs.cc", "base/network_interfaces_getifaddrs.h", -@@ -2837,7 +2846,7 @@ test("net_unittests") { - sources += [ "proxy_resolution/proxy_config_service_linux_unittest.cc" ] +@@ -2905,7 +2918,7 @@ test("net_unittests") { + ] } - if (is_linux || is_chromeos) { @@ -52,7 +47,7 @@ sources += [ "base/address_tracker_linux_unittest.cc", "base/network_interfaces_linux_unittest.cc", -@@ -2909,6 +2918,10 @@ test("net_unittests") { +@@ -2973,6 +2986,10 @@ test("net_unittests") { "//url:buildflags", ] @@ -63,7 +58,7 @@ if (enable_websockets) { deps += [ "//net/server:tests" ] } -@@ -2976,7 +2989,7 @@ test("net_unittests") { +@@ -3055,7 +3072,7 @@ test("net_unittests") { ] } @@ -72,7 +67,7 @@ sources += [ "tools/quic/quic_simple_server_test.cc" ] } -@@ -3101,7 +3114,7 @@ test("net_unittests") { +@@ -3190,7 +3207,7 @@ test("net_unittests") { } # Use getifaddrs() on POSIX platforms, except Linux. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_features.cc new file mode 100644 index 000000000000..f9d3da04f73d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/net/base/features.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/net/base/features.cc +@@ -181,7 +181,7 @@ BASE_FEATURE(kChromeRootStoreUsed, + #if BUILDFLAG(CHROME_ROOT_STORE_OPTIONAL) + BASE_FEATURE(kChromeRootStoreUsed, + "ChromeRootStoreUsed", +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.cc new file mode 100644 index 000000000000..54f65b481329 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/net/base/mock_network_change_notifier.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/net/base/mock_network_change_notifier.cc +@@ -103,7 +103,7 @@ MockNetworkChangeNotifier::GetCurrentConnectionCost() + return connection_cost_; + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + AddressMapOwnerLinux* MockNetworkChangeNotifier::GetAddressMapOwnerInternal() { + return address_map_owner_; + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.h new file mode 100644 index 000000000000..fa6daf99c99f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_mock__network__change__notifier.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/net/base/mock_network_change_notifier.h.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/net/base/mock_network_change_notifier.h +@@ -84,7 +84,7 @@ class MockNetworkChangeNotifier : public NetworkChange + // use_default_connection_cost_implementation is set to true. + ConnectionCost GetCurrentConnectionCost() override; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void SetAddressMapOwnerLinux(AddressMapOwnerLinux* address_map_owner) { + address_map_owner_ = address_map_owner; + } +@@ -104,7 +104,7 @@ class MockNetworkChangeNotifier : public NetworkChange + bool use_default_connection_cost_implementation_ = false; + NetworkChangeNotifier::NetworkList connected_networks_; + std::unique_ptr<SystemDnsConfigChangeNotifier> dns_config_notifier_; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + raw_ptr<AddressMapOwnerLinux> address_map_owner_ = nullptr; + #endif + }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier.cc index 614239a8ac70..54dd12bf63a8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/net/base/network_change_notifier.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/net/base/network_change_notifier.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/base/network_change_notifier.cc @@ -37,7 +37,7 @@ #include "net/base/network_change_notifier_linux.h" @@ -6,10 +6,10 @@ #include "net/base/network_change_notifier_mac.h" -#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - #include "net/base/network_change_notifier_posix.h" + #include "net/base/network_change_notifier_passive.h" #elif BUILDFLAG(IS_FUCHSIA) #include "net/base/network_change_notifier_fuchsia.h" -@@ -327,6 +327,9 @@ std::unique_ptr<NetworkChangeNotifier> NetworkChangeNo +@@ -329,6 +329,9 @@ std::unique_ptr<NetworkChangeNotifier> NetworkChangeNo #elif BUILDFLAG(IS_FUCHSIA) return std::make_unique<NetworkChangeNotifierFuchsia>( /*require_wlan=*/false); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier__passive.cc index 19b2300e0bba..4ab4523fae18 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_base_network__change__notifier__passive.cc @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/net/base/network_change_notifier_posix.cc.orig 2022-08-31 12:19:35 UTC -+++ src/3rdparty/chromium/net/base/network_change_notifier_posix.cc -@@ -92,7 +92,7 @@ void NetworkChangeNotifierPosix::GetCurrentMaxBandwidt +--- src/3rdparty/chromium/net/base/network_change_notifier_passive.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/net/base/network_change_notifier_passive.cc +@@ -107,7 +107,7 @@ NetworkChangeNotifierPassive::GetAddressMapOwnerIntern NetworkChangeNotifier::NetworkChangeCalculatorParams - NetworkChangeNotifierPosix::NetworkChangeCalculatorParamsPosix() { + NetworkChangeNotifierPassive::NetworkChangeCalculatorParamsPassive() { NetworkChangeCalculatorParams params; -#if BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verifier.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verifier.cc index 75371fc06d21..49de64966dff 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verifier.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verifier.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/net/cert/cert_verifier.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/net/cert/cert_verifier.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/cert/cert_verifier.cc -@@ -87,7 +87,7 @@ std::unique_ptr<CertVerifier> CertVerifier::CreateDefa - } - #endif - if (!verify_proc) { --#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - verify_proc = - CertVerifyProc::CreateBuiltinVerifyProc(std::move(cert_net_fetcher)); +@@ -40,7 +40,7 @@ class DefaultCertVerifyProcFactory : public net::CertV + return CertVerifyProc::CreateBuiltinWithChromeRootStore( + std::move(cert_net_fetcher), impl_params.crl_set, + base::OptionalToPtr(impl_params.root_store_data)); +-#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return CertVerifyProc::CreateBuiltinVerifyProc(std::move(cert_net_fetcher), + impl_params.crl_set); #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.cc index 5da70a7c4a36..99e797965813 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/net/cert/cert_verify_proc.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/net/cert/cert_verify_proc.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/cert/cert_verify_proc.cc -@@ -414,7 +414,7 @@ base::Value CertVerifyParams(X509Certificate* cert, +@@ -409,7 +409,7 @@ base::Value::Dict CertVerifyParams( } // namespace --#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) +-#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ ++#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(CHROME_ROOT_STORE_ONLY)) // static scoped_refptr<CertVerifyProc> CertVerifyProc::CreateSystemVerifyProc( - scoped_refptr<CertNetFetcher> cert_net_fetcher) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.h index d2ff3390f0eb..9946d7f3a1f4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_cert__verify__proc.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/net/cert/cert_verify_proc.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/net/cert/cert_verify_proc.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/net/cert/cert_verify_proc.h -@@ -68,7 +68,7 @@ class NET_EXPORT CertVerifyProc +@@ -79,7 +79,7 @@ class NET_EXPORT CertVerifyProc kMaxValue = kChainLengthOne }; --#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) +-#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ ++#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(CHROME_ROOT_STORE_ONLY)) // Creates and returns a CertVerifyProc that uses the system verifier. // |cert_net_fetcher| may not be used, depending on the implementation. - static scoped_refptr<CertVerifyProc> CreateSystemVerifyProc( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_pki_general__names.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_pki_general__names.h new file mode 100644 index 000000000000..3beddde56ec9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_cert_pki_general__names.h @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/net/cert/pki/general_names.h.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/net/cert/pki/general_names.h +@@ -8,6 +8,7 @@ + #include <memory> + #include <string_view> + #include <vector> ++#include <string> + + #include "net/base/net_export.h" + #include "net/cert/pki/cert_error_id.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_disk__cache_blockfile_disk__format.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_disk__cache_blockfile_disk__format.h deleted file mode 100644 index f9ae7455c2f3..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_disk__cache_blockfile_disk__format.h +++ /dev/null @@ -1,12 +0,0 @@ ---- src/3rdparty/chromium/net/disk_cache/blockfile/disk_format.h.orig 2022-08-31 12:19:35 UTC -+++ src/3rdparty/chromium/net/disk_cache/blockfile/disk_format.h -@@ -153,7 +153,9 @@ struct RankingsNode { - }; - #pragma pack(pop) - -+#if !defined(OS_BSD) - static_assert(sizeof(RankingsNode) == 36, "bad RankingsNode"); -+#endif - - } // namespace disk_cache - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_BUILD.gn index 93250dcd0367..3617747ac2ba 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/dns/BUILD.gn.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/net/dns/BUILD.gn.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/net/dns/BUILD.gn -@@ -124,7 +124,7 @@ source_set("dns") { +@@ -128,7 +128,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] @@ -9,16 +9,26 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -165,6 +165,7 @@ source_set("dns") { +@@ -162,6 +162,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//components/services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -169,6 +172,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", + "//printing/buildflags", ] - + allow_circular_includes_from = [ -@@ -428,9 +429,9 @@ source_set("tests") { - +@@ -436,9 +440,9 @@ source_set("tests") { + if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] - } else if (is_linux) { @@ -28,4 +38,4 @@ + } else if (is_posix && !is_bsd) { sources += [ "dns_config_service_posix_unittest.cc" ] } - + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__info.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__info.cc new file mode 100644 index 000000000000..645bc6db9596 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__info.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/net/dns/address_info.cc.orig 2023-09-29 10:14:06 UTC ++++ src/3rdparty/chromium/net/dns/address_info.cc +@@ -77,8 +77,12 @@ AddressInfo::AddressInfoAndResult AddressInfo::Get( + // error. + // http://crbug.com/134142 + err = ERR_NAME_NOT_RESOLVED; +-#elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_FREEBSD) ++#elif BUILDFLAG(IS_POSIX) ++#ifdef EAI_NODATA + if (os_error != EAI_NONAME && os_error != EAI_NODATA) ++#else ++ if (os_error != EAI_NONAME) ++#endif + err = ERR_NAME_RESOLUTION_FAILED; + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc index 6e159df9c59f..56f6e5420624 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/net/dns/address_sorter_posix.cc.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/net/dns/address_sorter_posix.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/net/dns/address_sorter_posix.cc -@@ -18,6 +18,7 @@ - #include <ifaddrs.h> - #include <net/if.h> +@@ -27,6 +27,7 @@ + #include "net/dns/netinet_in_var_ios.h" + #else #include <netinet/in_var.h> +#include <netinet6/in6_var.h> - #include <string.h> - #include <sys/ioctl.h> + #endif // BUILDFLAG(IS_IOS) #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.cc index 981b7ed99ffb..56580ae1ca4e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/http/http_auth_gssapi_posix.cc.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/net/http/http_auth_gssapi_posix.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/net/http/http_auth_gssapi_posix.cc -@@ -368,8 +368,9 @@ base::NativeLibrary GSSAPISharedLibrary::LoadSharedLib +@@ -370,8 +370,9 @@ base::NativeLibrary GSSAPISharedLibrary::LoadSharedLib static const char* const kDefaultLibraryNames[] = { #if BUILDFLAG(IS_APPLE) "/System/Library/Frameworks/GSS.framework/GSS" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__handler__negotiate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__handler__negotiate.cc new file mode 100644 index 000000000000..8433aae87595 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__handler__negotiate.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/net/http/http_auth_handler_negotiate.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/net/http/http_auth_handler_negotiate.cc +@@ -121,7 +121,7 @@ int HttpAuthHandlerNegotiate::Factory::CreateAuthHandl + #elif BUILDFLAG(IS_POSIX) + if (is_unsupported_) + return ERR_UNSUPPORTED_AUTH_SCHEME; +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Note: Don't set is_unsupported_ = true here. AllowGssapiLibraryLoad() + // might change to true during a session. + if (!http_auth_preferences() || diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.cc new file mode 100644 index 000000000000..a4a4207ce0bf --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/net/http/http_auth_preferences.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/net/http/http_auth_preferences.cc +@@ -39,7 +39,7 @@ std::string HttpAuthPreferences::AuthAndroidNegotiateA + } + #endif // BUILDFLAG(IS_ANDROID) + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool HttpAuthPreferences::AllowGssapiLibraryLoad() const { + return allow_gssapi_library_load_; + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.h new file mode 100644 index 000000000000..7b8e4bdd586c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__preferences.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/net/http/http_auth_preferences.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/net/http/http_auth_preferences.h +@@ -50,7 +50,7 @@ class NET_EXPORT HttpAuthPreferences { + #if BUILDFLAG(IS_ANDROID) + virtual std::string AuthAndroidNegotiateAccountType() const; + #endif +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + virtual bool AllowGssapiLibraryLoad() const; + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) + virtual bool CanUseDefaultCredentials( +@@ -86,7 +86,7 @@ class NET_EXPORT HttpAuthPreferences { + } + #endif // BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void set_allow_gssapi_library_load(bool allow_gssapi_library_load) { + allow_gssapi_library_load_ = allow_gssapi_library_load; + } +@@ -137,7 +137,7 @@ class NET_EXPORT HttpAuthPreferences { + std::string auth_android_negotiate_account_type_; + #endif // BUILDFLAG(IS_ANDROID) + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool allow_gssapi_library_load_ = true; + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_proxy__resolution_proxy__config__service__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_proxy__resolution_proxy__config__service__linux.cc index bed4b7b584a5..a9af59c8661f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_proxy__resolution_proxy__config__service__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_proxy__resolution_proxy__config__service__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/net/proxy_resolution/proxy_config_service_linux.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/net/proxy_resolution/proxy_config_service_linux.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/proxy_resolution/proxy_config_service_linux.cc @@ -6,7 +6,9 @@ #include <errno.h> #include <limits.h> -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) #include <sys/inotify.h> +#endif #include <unistd.h> @@ -14,7 +14,7 @@ } #endif // defined(USE_GIO) -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) // Converts |value| from a decimal string to an int. If there was a failure // parsing, returns |default_value|. int StringToIntOrDefault(base::StringPiece value, int default_value) { @@ -26,11 +26,11 @@ } // namespace -@@ -1248,9 +1252,11 @@ ProxyConfigServiceLinux::Delegate::Delegate( - case base::nix::DESKTOP_ENVIRONMENT_KDE3: +@@ -1249,9 +1253,11 @@ ProxyConfigServiceLinux::Delegate::Delegate( case base::nix::DESKTOP_ENVIRONMENT_KDE4: case base::nix::DESKTOP_ENVIRONMENT_KDE5: -+#if !defined(OS_BSD) + case base::nix::DESKTOP_ENVIRONMENT_KDE6: ++#if !BUILDFLAG(IS_BSD) setting_getter_ = std::make_unique<SettingGetterImplKDE>(env_var_getter_.get()); break; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_tcp__socket__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_tcp__socket__posix.cc index a2eb5a7980c2..1e27146b95fe 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_tcp__socket__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_tcp__socket__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/socket/tcp_socket_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/net/socket/tcp_socket_posix.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/socket/tcp_socket_posix.cc -@@ -99,6 +99,17 @@ bool SetTCPKeepAlive(int fd, bool enable, int delay) { +@@ -98,6 +98,17 @@ bool SetTCPKeepAlive(int fd, bool enable, int delay) { PLOG(ERROR) << "Failed to set TCP_KEEPALIVE on fd: " << fd; return false; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.cc index d6ad69879dbd..68a680130778 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/socket/udp_socket_posix.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/net/socket/udp_socket_posix.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/net/socket/udp_socket_posix.cc -@@ -577,7 +577,7 @@ int UDPSocketPosix::SetDoNotFragment() { +@@ -591,7 +591,7 @@ int UDPSocketPosix::SetDoNotFragment() { } void UDPSocketPosix::SetMsgConfirm(bool confirm) { @@ -9,7 +9,7 @@ if (confirm) { sendto_flags_ |= MSG_CONFIRM; } else { -@@ -598,7 +598,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { +@@ -612,7 +612,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); int value = broadcast ? 1 : 0; int rv; @@ -18,7 +18,7 @@ // SO_REUSEPORT on OSX permits multiple processes to each receive // UDP multicast or broadcast datagrams destined for the bound // port. -@@ -911,7 +911,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) +@@ -925,7 +925,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) #if BUILDFLAG(IS_CHROMEOS_ASH) if (last_error == EINVAL) return ERR_ADDRESS_IN_USE; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__comparision__tool.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__comparision__tool.cc index 92fd48113d9e..c715ee91ed28 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__comparision__tool.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__comparision__tool.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_comparision_tool.cc.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_comparision_tool.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_comparision_tool.cc @@ -35,7 +35,7 @@ #include "net/url_request/url_request_context_builder.h" @@ -18,12 +18,12 @@ // On Linux, use a fixed ProxyConfigService, since the default one // depends on glib. // -@@ -127,7 +127,7 @@ class CertVerifyImpl { +@@ -126,7 +126,7 @@ class CertVerifyImpl { std::unique_ptr<CertVerifyImpl> CreateCertVerifyImplFromName( base::StringPiece impl_name, scoped_refptr<net::CertNetFetcher> cert_net_fetcher) { --#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) +-#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ ++#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(CHROME_ROOT_STORE_ONLY)) if (impl_name == "platform") { return std::make_unique<CertVerifyImpl>( - "CertVerifyProc (system)", net::CertVerifyProc::CreateSystemVerifyProc( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__tool.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__tool.cc index 21a600136e64..4d2b90081384 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__tool.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_tools_cert__verify__tool_cert__verify__tool.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_tool.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_tool.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/net/tools/cert_verify_tool/cert_verify_tool.cc @@ -31,7 +31,7 @@ #include "net/url_request/url_request_context_builder.h" @@ -18,21 +18,21 @@ // On Linux, use a fixed ProxyConfigService, since the default one // depends on glib. // -@@ -222,7 +222,7 @@ std::unique_ptr<CertVerifyImpl> CreateCertVerifyImplFr - base::StringPiece impl_name, +@@ -223,7 +223,7 @@ std::unique_ptr<CertVerifyImpl> CreateCertVerifyImplFr scoped_refptr<net::CertNetFetcher> cert_net_fetcher, + scoped_refptr<net::CRLSet> crl_set, RootStoreType root_store_type) { --#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) +-#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ ++#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(CHROME_ROOT_STORE_ONLY)) if (impl_name == "platform") { if (root_store_type != RootStoreType::kSystem) { - std::cerr << "WARNING: platform verifier not supported with " -@@ -534,7 +534,7 @@ int main(int argc, char** argv) { +@@ -537,7 +537,7 @@ int main(int argc, char** argv) { std::string impls_str = command_line.GetSwitchValueASCII("impls"); if (impls_str.empty()) { // Default value. --#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) +-#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ ++#if !(BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(CHROME_ROOT_STORE_ONLY)) impls_str = "platform,"; #endif - impls_str += "builtin,pathbuilder"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context__builder.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context__builder.cc index 89ac3cd25dc2..1d82ab2392fc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context__builder.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context__builder.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/net/url_request/url_request_context_builder.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/net/url_request/url_request_context_builder.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/net/url_request/url_request_context_builder.cc -@@ -443,7 +443,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu +@@ -446,7 +446,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu } if (!proxy_resolution_service_) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc index 150ef4b2664b..7bfd41e35275 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc -@@ -84,7 +84,7 @@ +@@ -83,7 +83,7 @@ #include "gin/public/cppgc.h" #endif @@ -9,7 +9,7 @@ #include "pdf/pdfium/pdfium_font_linux.h" #endif -@@ -526,7 +526,7 @@ void InitializeSDK(bool enable_v8, FontMappingMode fon +@@ -525,7 +525,7 @@ void InitializeSDK(bool enable_v8, FPDF_InitLibraryWithConfig(&config); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__helper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__helper.cc deleted file mode 100644 index 5a90544a5b4f..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__helper.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/printing/backend/cups_helper.cc.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/printing/backend/cups_helper.cc -@@ -127,7 +127,7 @@ void GetResolutionSettings(ppd_file_t* ppd, - // found. - #if BUILDFLAG(IS_MAC) - constexpr gfx::Size kDefaultMissingDpi(kDefaultMacDpi, kDefaultMacDpi); --#elif BUILDFLAG(IS_LINUX) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - constexpr gfx::Size kDefaultMissingDpi(kPixelsPerInch, kPixelsPerInch); - #else - constexpr gfx::Size kDefaultMissingDpi(kDefaultPdfDpi, kDefaultPdfDpi); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__ipp__helper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__ipp__helper.cc index a0de02e92b31..e3b7090806f5 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__ipp__helper.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_backend_cups__ipp__helper.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/printing/backend/cups_ipp_helper.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/printing/backend/cups_ipp_helper.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/printing/backend/cups_ipp_helper.cc -@@ -210,7 +210,7 @@ void ExtractResolutions(const CupsOptionProvider& prin +@@ -215,7 +215,7 @@ void ExtractResolutions(const CupsOptionProvider& prin // Provide a default DPI if no valid DPI is found. #if BUILDFLAG(IS_MAC) constexpr gfx::Size kDefaultMissingDpi(kDefaultMacDpi, kDefaultMacDpi); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.cc index f7f14d9a11f0..5e70a52bef9b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.cc @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.cc -@@ -15,7 +15,7 @@ - #include "ui/gfx/geometry/mojom/geometry_mojom_traits.h" - #include "ui/gfx/geometry/size.h" +@@ -19,7 +19,7 @@ + #include "base/numerics/safe_conversions.h" + #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "mojo/public/mojom/base/values.mojom.h" #endif -@@ -150,7 +150,7 @@ bool StructTraits< +@@ -161,7 +161,7 @@ bool StructTraits< } out->set_pages_per_sheet(data.pages_per_sheet()); @@ -18,3 +18,12 @@ DCHECK(out->advanced_settings().empty()); if (!data.ReadAdvancedSettings(&out->advanced_settings())) return false; +@@ -239,7 +239,7 @@ bool StructTraits< + return false; + } + +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // The dictionary must contain three strings. + base::Value* value = system_print_dialog_data.Find( + printing::kLinuxSystemPrintDialogDataPrinter); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.h index aa26b6bb7df4..fcdfc946bf1f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.h.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/mojom/printing_context_mojom_traits.h -@@ -158,7 +158,7 @@ struct StructTraits<printing::mojom::PrintSettingsData +@@ -166,7 +166,7 @@ struct StructTraits<printing::mojom::PrintSettingsData return s.pages_per_sheet(); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.cc index 363d83e8e5d5..a4f4d9d86d32 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/printing/print_settings.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/printing/print_settings.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/print_settings.cc -@@ -314,7 +314,7 @@ PrintSettings& PrintSettings::operator=(const PrintSet +@@ -320,7 +320,7 @@ PrintSettings& PrintSettings::operator=(const PrintSet #endif is_modifiable_ = settings.is_modifiable_; pages_per_sheet_ = settings.pages_per_sheet_; @@ -9,7 +9,25 @@ for (const auto& item : settings.advanced_settings_) advanced_settings_.emplace(item.first, item.second.Clone()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -405,7 +405,7 @@ void PrintSettings::Clear() { +@@ -350,7 +350,7 @@ bool PrintSettings::operator==(const PrintSettings& ot + #endif + is_modifiable_, requested_custom_margins_in_points_, + pages_per_sheet_ +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + , + advanced_settings_ + #endif +@@ -374,7 +374,7 @@ bool PrintSettings::operator==(const PrintSettings& ot + other.is_modifiable_, + other.requested_custom_margins_in_points_, + other.pages_per_sheet_ +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + , + other.advanced_settings_ + #endif +@@ -414,7 +414,7 @@ void PrintSettings::Clear() { #endif is_modifiable_ = true; pages_per_sheet_ = 1; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.h index bf497f113add..3d7d309de02d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings.h @@ -1,15 +1,24 @@ ---- src/3rdparty/chromium/printing/print_settings.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/printing/print_settings.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/print_settings.h -@@ -21,7 +21,7 @@ - #include "ui/gfx/geometry/rect.h" - #include "ui/gfx/geometry/size.h" +@@ -25,7 +25,7 @@ + #include "base/values.h" + #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include <map> #include "base/values.h" -@@ -74,7 +74,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { +@@ -51,7 +51,7 @@ inline constexpr char kMacSystemPrintDialogDataPrintSe + "print_settings"; + #endif // BUILDFLAG(IS_MAC) + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + inline constexpr char kLinuxSystemPrintDialogDataPrinter[] = "printer_name"; + inline constexpr char kLinuxSystemPrintDialogDataPrintSettings[] = + "print_settings"; +@@ -101,7 +101,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { std::string vendor_id; }; @@ -18,7 +27,7 @@ using AdvancedSettings = std::map<std::string, base::Value>; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -241,7 +241,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { +@@ -276,7 +276,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { pages_per_sheet_ = pages_per_sheet; } @@ -27,7 +36,7 @@ AdvancedSettings& advanced_settings() { return advanced_settings_; } const AdvancedSettings& advanced_settings() const { return advanced_settings_; -@@ -372,7 +372,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { +@@ -429,7 +429,7 @@ class COMPONENT_EXPORT(PRINTING) PrintSettings { // Number of pages per sheet. int pages_per_sheet_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings__conversion.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings__conversion.cc index 124d6ab84e9d..5da292797b4a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings__conversion.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_print__settings__conversion.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/printing/print_settings_conversion.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/printing/print_settings_conversion.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/print_settings_conversion.cc -@@ -277,7 +277,7 @@ std::unique_ptr<PrintSettings> PrintSettingsFromJobSet +@@ -287,7 +287,7 @@ std::unique_ptr<PrintSettings> PrintSettingsFromJobSet settings->set_is_modifiable(is_modifiable.value()); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_printing__context__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_printing__context__linux.cc index 5849f4064098..948fad7aa10e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_printing__context__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_printing__context__linux.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/printing/printing_context_linux.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/printing/printing_context_linux.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/printing/printing_context_linux.cc -@@ -19,7 +19,7 @@ - #include "printing/units.h" +@@ -23,7 +23,7 @@ + #endif // Avoid using LinuxUi on Fuchsia. -#if BUILDFLAG(IS_LINUX) @@ -9,7 +9,7 @@ #include "ui/linux/linux_ui.h" #endif -@@ -68,7 +68,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett +@@ -72,7 +72,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett ResetSettings(); @@ -18,7 +18,7 @@ if (!ui::LinuxUi::instance()) return mojom::ResultCode::kSuccess; -@@ -84,7 +84,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett +@@ -88,7 +88,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett } gfx::Size PrintingContextLinux::GetPdfPaperSizeDeviceUnits() { @@ -27,7 +27,7 @@ if (ui::LinuxUi::instance()) return ui::LinuxUi::instance()->GetPdfPaperSize(this); #endif -@@ -97,7 +97,7 @@ mojom::ResultCode PrintingContextLinux::UpdatePrinterS +@@ -101,7 +101,7 @@ mojom::ResultCode PrintingContextLinux::UpdatePrinterS DCHECK(!printer_settings.show_system_dialog); DCHECK(!in_print_job_); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.cc index 3abb9b1db71f..8f2aa000c2c1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.cc -@@ -10,21 +10,28 @@ +@@ -10,20 +10,27 @@ #include "base/path_service.h" #include "build/build_config.h" #include "printing/buildflags/buildflags.h" @@ -9,9 +9,8 @@ #include "sandbox/linux/syscall_broker/broker_file_permission.h" #include "sandbox/policy/export.h" #include "sandbox/policy/linux/sandbox_linux.h" - #include "services/network/network_sandbox_hook_linux.h" +#else -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#endif #if BUILDFLAG(IS_CHROMEOS) && BUILDFLAG(USE_CUPS) @@ -29,7 +28,7 @@ namespace { sandbox::syscall_broker::BrokerCommandSet GetPrintBackendBrokerCommandSet() { -@@ -85,9 +92,11 @@ std::vector<BrokerFilePermission> GetPrintBackendFileP +@@ -76,9 +83,11 @@ std::vector<BrokerFilePermission> GetPrintBackendFileP } } // namespace @@ -41,7 +40,7 @@ #if BUILDFLAG(IS_CHROMEOS) && BUILDFLAG(USE_CUPS) // Create the socket connections to the CUPS server before engaging the // sandbox, since new connections cannot be made after that. -@@ -101,6 +110,7 @@ bool PrintBackendPreSandboxHook( +@@ -92,6 +101,7 @@ bool PrintBackendPreSandboxHook( sandbox::policy::SandboxLinux::PreSandboxHook(), options); instance->EngageNamespaceSandboxIfPossible(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.h index 562558862c61..57c55c4add93 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_printing_sandbox_print__backend__sandbox__hook__linux.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.h.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/printing/sandbox/print_backend_sandbox_hook_linux.h @@ -5,8 +5,13 @@ #ifndef PRINTING_SANDBOX_PRINT_BACKEND_SANDBOX_HOOK_LINUX_H_ @@ -6,8 +6,8 @@ +#include "build/build_config.h" #include "base/component_export.h" -+#if defined(OS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_BUILD.gn index ee65ecf8a3a5..cfdee966f711 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_BUILD.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/sandbox/linux/BUILD.gn.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/sandbox/linux/BUILD.gn.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/sandbox/linux/BUILD.gn @@ -12,11 +12,11 @@ if (is_android) { } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_services_libc__interceptor.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_services_libc__interceptor.cc index 1007bb73db43..7593efce8eed 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_services_libc__interceptor.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_linux_services_libc__interceptor.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/sandbox/linux/services/libc_interceptor.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/sandbox/linux/services/libc_interceptor.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/sandbox/linux/services/libc_interceptor.cc @@ -12,7 +12,9 @@ #include <stddef.h> #include <stdint.h> #include <string.h> -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) #include <sys/prctl.h> +#endif #include <sys/socket.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_BUILD.gn index 3f5ef1a4abdd..2d970ec34ee7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_BUILD.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/sandbox/policy/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/sandbox/policy/BUILD.gn.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/sandbox/policy/BUILD.gn @@ -35,7 +35,7 @@ component("policy") { "//sandbox/policy/mojom", @@ -9,7 +9,7 @@ sources += [ "linux/bpf_audio_policy_linux.cc", "linux/bpf_audio_policy_linux.h", -@@ -103,6 +103,27 @@ component("policy") { +@@ -106,6 +106,27 @@ component("policy") { "//sandbox/linux:sandbox_services", "//sandbox/linux:seccomp_bpf", "//sandbox/linux:suid_sandbox_client", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_features.cc index c85e54bcce00..b5c11fdb5f0b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_features.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/sandbox/policy/features.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/sandbox/policy/features.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/sandbox/policy/features.cc -@@ -15,7 +15,11 @@ namespace sandbox::policy::features { - // (Only causes an effect when feature kNetworkService is enabled.) +@@ -19,7 +19,11 @@ namespace sandbox::policy::features { + // (Only causes an effect when feature kNetworkServiceInProcess is disabled.) BASE_FEATURE(kNetworkServiceSandbox, "NetworkServiceSandbox", +#if BUILDFLAG(IS_BSD) @@ -9,6 +9,6 @@ +#else base::FEATURE_DISABLED_BY_DEFAULT); +#endif - #endif // !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_FUCHSIA) - #if BUILDFLAG(IS_WIN) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + // Enables a fine-grained seccomp-BPF syscall filter for the network service. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.cc index 113fe2c35295..2c31ebe63ce2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.cc @@ -120,7 +120,7 @@ + base::FilePath cache_directory, local_directory; + + base::PathService::Get(base::DIR_CACHE, &cache_directory); -+ base::PathService::Get(base::DIR_HOME, &local_directory); ++ base::PathService::Get(base::DIR_HOME, &local_directory); + + cache_directory = cache_directory.AppendASCII("chromium"); + local_directory = local_directory.AppendASCII(".local").AppendASCII("share").AppendASCII("applications"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.h index 63c091d8eaab..bf58da39099d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_freebsd_sandbox__freebsd.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/sandbox/policy/freebsd/sandbox_freebsd.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/sandbox/policy/freebsd/sandbox_freebsd.h.orig 2023-12-22 15:04:02 UTC +++ src/3rdparty/chromium/sandbox/policy/freebsd/sandbox_freebsd.h @@ -0,0 +1,278 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_mojom_sandbox.mojom b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_mojom_sandbox.mojom index 8534b0cee625..39ac0d6e34b4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_mojom_sandbox.mojom +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_mojom_sandbox.mojom @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/sandbox/policy/mojom/sandbox.mojom.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/sandbox/policy/mojom/sandbox.mojom.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/sandbox/policy/mojom/sandbox.mojom -@@ -76,6 +76,12 @@ enum Sandbox { - [EnableIf=is_win] - kFileUtil, +@@ -72,6 +72,12 @@ enum Sandbox { + [EnableIf=is_fuchsia] + kVideoCapture, + [EnableIf=is_openbsd] + kVideoCapture, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_openbsd_sandbox__openbsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_openbsd_sandbox__openbsd.cc index 79833e898578..dbc297b8a2ab 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_openbsd_sandbox__openbsd.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_openbsd_sandbox__openbsd.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/sandbox/policy/openbsd/sandbox_openbsd.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/sandbox/policy/openbsd/sandbox_openbsd.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/sandbox/policy/openbsd/sandbox_openbsd.cc -@@ -0,0 +1,399 @@ +@@ -0,0 +1,420 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. @@ -37,6 +37,8 @@ +#include "base/threading/thread.h" +#include "base/time/time.h" +#include "build/build_config.h" ++#include "crypto/crypto_buildflags.h" ++#include "ppapi/buildflags/buildflags.h" +#include "sandbox/constants.h" +#include "sandbox/linux/services/credentials.h" +#include "sandbox/linux/services/namespace_sandbox.h" @@ -55,7 +57,7 @@ +#include <sanitizer/common_interface_defs.h> +#endif + -+#if defined(USE_NSS_CERTS) ++#if BUILDFLAG(USE_NSS_CERTS) +#include "crypto/nss_util.h" +#endif + @@ -66,10 +68,7 @@ +#define MAXTOKENS 3 + +#define _UNVEIL_MAIN "/etc/chromium/unveil.main"; -+#define _UNVEIL_RENDERER "/etc/chromium/unveil.renderer"; +#define _UNVEIL_GPU "/etc/chromium/unveil.gpu"; -+#define _UNVEIL_PLUGIN "/etc/chromium/unveil.plugin"; -+#define _UNVEIL_UTILITY "/etc/chromium/unveil.utility"; +#define _UNVEIL_UTILITY_NETWORK "/etc/chromium/unveil.utility_network"; +#define _UNVEIL_UTILITY_AUDIO "/etc/chromium/unveil.utility_audio"; +#define _UNVEIL_UTILITY_VIDEO "/etc/chromium/unveil.utility_video"; @@ -118,40 +117,41 @@ + base::SysInfo::NumberOfProcessors(); + base::SysInfo::CPUModelName(); + -+#if defined(USE_NSS_CERTS) -+ // The main process has to initialize the ~/.pki dir which won't work -+ // after unveil(2). -+ if (process_type.empty()) -+ crypto::EnsureNSSInit(); ++ switch (sandbox_type) { ++ case sandbox::mojom::Sandbox::kNoSandbox: ++ { ++#if BUILDFLAG(USE_NSS_CERTS) ++ // The main process has to initialize the ~/.pki dir which won't work ++ // after unveil(2). ++ crypto::EnsureNSSInit(); +#endif ++ CRYPTO_pre_sandbox_init(); + -+ if (process_type.empty()) -+ CRYPTO_pre_sandbox_init(); ++ base::FilePath cache_directory, local_directory; + -+ if (process_type.empty()) { -+ base::FilePath cache_directory, local_directory; ++ base::PathService::Get(base::DIR_CACHE, &cache_directory); ++ base::PathService::Get(base::DIR_HOME, &local_directory); + -+ base::PathService::Get(base::DIR_CACHE, &cache_directory); -+ base::PathService::Get(base::DIR_HOME, &local_directory); ++ cache_directory = cache_directory.AppendASCII("chromium"); ++ local_directory = local_directory.AppendASCII(".local").AppendASCII("share").AppendASCII("applications"); + -+ cache_directory = cache_directory.AppendASCII("chromium"); -+ local_directory = local_directory.AppendASCII(".local").AppendASCII("share").AppendASCII("applications"); ++ if (!base::CreateDirectory(cache_directory)) { ++ LOG(ERROR) << "Failed to create " << cache_directory.value() << " directory."; ++ } + -+ if (!base::CreateDirectory(cache_directory)) { -+ LOG(ERROR) << "Failed to create " << cache_directory.value() << " directory."; -+ } ++ if (!base::CreateDirectory(local_directory)) { ++ LOG(ERROR) << "Failed to create " << local_directory.value() << " directory."; ++ } + -+ if (!base::CreateDirectory(local_directory)) { -+ LOG(ERROR) << "Failed to create " << local_directory.value() << " directory."; ++ break; + } ++ case sandbox::mojom::Sandbox::kRenderer: ++ gfx::InitializeFonts(); ++ break; ++ default: ++ break; + } + -+ if (process_type == switches::kRendererProcess) -+ gfx::InitializeFonts(); -+ -+ if (!command_line->HasSwitch(switches::kDisableUnveil)) -+ SetUnveil(process_type, sandbox_type); -+ + pre_initialized_ = true; +} + @@ -164,6 +164,7 @@ + if (pstring != NULL) { + if (pledge(pstring, NULL) == -1) + goto err; ++ VLOG(5) << "pledge " << pstring; + } else if (ppath != NULL) { + fp = fopen(ppath, "r"); + if (fp != NULL) { @@ -172,10 +173,11 @@ + s[strlen(s)-1] = '\0'; + if (pledge(s, NULL) == -1) + goto err; ++ VLOG(5) << "pledge " << s; + } + fclose(fp); + } else { -+ LOG(ERROR) << "fopen() failed, errno: " << errno; ++ LOG(ERROR) << "fopen(" << ppath << ") failed, errno: " << errno; + return false; + } + } @@ -192,24 +194,25 @@ + const char *ufile; + size_t len = 0, lineno = 0; + -+ if (process_type.empty()) { -+ ufile = _UNVEIL_MAIN; -+ } else if (process_type == switches::kRendererProcess) { -+ ufile = _UNVEIL_RENDERER; -+ } else if (process_type == switches::kGpuProcess) { -+ ufile = _UNVEIL_GPU; -+ } else if (process_type == switches::kPpapiPluginProcess) { -+ ufile = _UNVEIL_PLUGIN; -+ } else if (process_type == switches::kUtilityProcess) { -+ if (sandbox_type == sandbox::mojom::Sandbox::kNetwork) { ++ switch (sandbox_type) { ++ case sandbox::mojom::Sandbox::kNoSandbox: ++ ufile = _UNVEIL_MAIN; ++ break; ++ case sandbox::mojom::Sandbox::kGpu: ++ ufile = _UNVEIL_GPU; ++ break; ++ case sandbox::mojom::Sandbox::kNetwork: + ufile = _UNVEIL_UTILITY_NETWORK; -+ } else if (sandbox_type == sandbox::mojom::Sandbox::kAudio) { ++ break; ++ case sandbox::mojom::Sandbox::kAudio: + ufile = _UNVEIL_UTILITY_AUDIO; -+ } else if (sandbox_type == sandbox::mojom::Sandbox::kVideoCapture) { ++ break; ++ case sandbox::mojom::Sandbox::kVideoCapture: + ufile = _UNVEIL_UTILITY_VIDEO; -+ } else { -+ ufile = _UNVEIL_UTILITY; -+ } ++ break; ++ default: ++ unveil("/dev/null", "r"); ++ goto done; + } + + fp = fopen(ufile, "r"); @@ -259,7 +262,7 @@ + LOG(ERROR) << "failed unveiling " << path << " with permissions " << tokens[1]; + _exit(1); + } else { -+ VLOG(1) << "unveiling " << path << " with permissions " << tokens[1]; ++ VLOG(5) << "unveiling " << path << " with permissions " << tokens[1]; + } + } + fclose(fp); @@ -268,6 +271,7 @@ + _exit(1); + } + ++done: + unveil_initialized_ = true; + + return true; @@ -307,31 +311,46 @@ + PCHECK(limited_as); + } + -+ if (process_type.empty()) { -+ // XXX use a file for listing pledges of the main process for now -+ // XXX not having the file is not a fatal error -+ SetPledge(NULL, "/etc/chromium/pledge.main"); -+ } else if (process_type == switches::kRendererProcess) { -+ // prot_exec needed by v8 -+ // flock needed by sqlite3 locking -+ SetPledge("stdio rpath flock prot_exec recvfd sendfd ps", NULL); -+ } else if (process_type == switches::kGpuProcess) { -+ SetPledge("stdio rpath flock cpath wpath getpw drm prot_exec recvfd sendfd tmppath", NULL); -+ } else if (process_type == switches::kPpapiPluginProcess) { -+ // prot_exec needed by v8 -+ SetPledge("stdio rpath prot_exec recvfd sendfd", NULL); -+ } else if (process_type == switches::kUtilityProcess) { -+ if (sandbox_type == sandbox::mojom::Sandbox::kAudio) ++ if (hook) ++ CHECK(std::move(hook).Run(options)); ++ ++ if (!command_line->HasSwitch(switches::kDisableUnveil)) ++ SetUnveil(process_type, sandbox_type); ++ ++ switch(sandbox_type) { ++ case sandbox::mojom::Sandbox::kNoSandbox: ++ SetPledge(NULL, "/etc/chromium/pledge.main"); ++ break; ++ case sandbox::mojom::Sandbox::kRenderer: ++ // prot_exec needed by v8 ++ // flock needed by sqlite3 locking ++ SetPledge("stdio rpath flock prot_exec recvfd sendfd ps", NULL); ++ break; ++ case sandbox::mojom::Sandbox::kGpu: ++ SetPledge("stdio drm rpath flock cpath wpath prot_exec recvfd sendfd tmppath", NULL); ++ break; ++#if BUILDFLAG(ENABLE_PPAPI) ++ case sandbox::mojom::Sandbox::kPpapi: ++ // prot_exec needed by v8 ++ SetPledge("stdio rpath prot_exec recvfd sendfd", NULL); ++ break; ++#endif ++ case sandbox::mojom::Sandbox::kAudio: + SetPledge(NULL, "/etc/chromium/pledge.utility_audio"); -+ else if (sandbox_type == sandbox::mojom::Sandbox::kNetwork) ++ break; ++ case sandbox::mojom::Sandbox::kNetwork: + SetPledge(NULL, "/etc/chromium/pledge.utility_network"); -+ else if (sandbox_type == sandbox::mojom::Sandbox::kVideoCapture) ++ break; ++ case sandbox::mojom::Sandbox::kVideoCapture: + SetPledge(NULL, "/etc/chromium/pledge.utility_video"); -+ else ++ break; ++ case sandbox::mojom::Sandbox::kUtility: ++ case sandbox::mojom::Sandbox::kService: + SetPledge("stdio rpath cpath wpath fattr flock sendfd recvfd prot_exec", NULL); -+ } else { -+ LOG(ERROR) << "non-pledge()'d process: " << process_type; -+ return false; ++ break; ++ default: ++ LOG(ERROR) << "non-pledge()'d process: " << GetSandboxTypeInEnglish(sandbox_type); ++ break; + } + + return true; @@ -377,8 +396,10 @@ + return "Utility"; + case sandbox::mojom::Sandbox::kGpu: + return "GPU"; ++#if BUILDFLAG(ENABLE_PPAPI) + case sandbox::mojom::Sandbox::kPpapi: + return "PPAPI"; ++#endif + case sandbox::mojom::Sandbox::kNetwork: + return "Network"; + case sandbox::mojom::Sandbox::kCdm: diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.cc index 227228695db7..3adb46cdb0a8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/sandbox/policy/sandbox.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/sandbox/policy/sandbox.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/sandbox/policy/sandbox.cc @@ -18,6 +18,10 @@ #include "sandbox/policy/linux/sandbox_linux.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "sandbox/policy/sandbox.h" +#endif // BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_MAC) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.h index cd61caa4672c..4c335f283a21 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox.h @@ -1,17 +1,19 @@ ---- src/3rdparty/chromium/sandbox/policy/sandbox.h.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/sandbox/policy/sandbox.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/sandbox/policy/sandbox.h -@@ -12,6 +12,10 @@ +@@ -12,6 +12,12 @@ #include "sandbox/policy/linux/sandbox_linux.h" #endif -+#if BUILDFLAG(IS_BSD) ++#if BUILDFLAG(IS_OPENBSD) +#include "sandbox/policy/openbsd/sandbox_openbsd.h" -+#endif ++#elif BUILDFLAG(IS_FREEBSD) ++#include "sandbox/policy/freebsd/sandbox_freebsd.h" ++#endif + namespace sandbox { namespace mojom { enum class Sandbox; -@@ -32,7 +36,7 @@ namespace policy { +@@ -32,7 +38,7 @@ namespace policy { class SANDBOX_POLICY_EXPORT Sandbox { public: diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox__type.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox__type.cc index 19c190830793..a9c05cd93b7d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox__type.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_sandbox__type.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/sandbox/policy/sandbox_type.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/sandbox/policy/sandbox_type.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/sandbox/policy/sandbox_type.cc -@@ -39,7 +39,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { +@@ -38,7 +38,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { #endif case Sandbox::kAudio: return false; @@ -9,7 +9,7 @@ case Sandbox::kVideoCapture: return false; #endif -@@ -62,7 +62,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { +@@ -61,7 +61,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { case Sandbox::kMirroring: case Sandbox::kNaClLoader: #endif @@ -18,7 +18,7 @@ case Sandbox::kHardwareVideoDecoding: #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) #if BUILDFLAG(IS_CHROMEOS_ASH) -@@ -72,7 +72,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { +@@ -71,7 +71,7 @@ bool IsUnsandboxedSandboxType(Sandbox sandbox_type) { case Sandbox::kLibassistant: #endif // BUILDFLAG(ENABLE_CROS_LIBASSISTANT) #endif // // BUILDFLAG(IS_CHROMEOS_ASH) @@ -27,7 +27,7 @@ case Sandbox::kZygoteIntermediateSandbox: case Sandbox::kHardwareVideoEncoding: #endif -@@ -128,7 +128,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -127,7 +127,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi #endif case Sandbox::kPrintCompositor: case Sandbox::kAudio: @@ -36,9 +36,9 @@ case Sandbox::kVideoCapture: #endif #if BUILDFLAG(IS_WIN) -@@ -140,10 +140,10 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -138,10 +138,10 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi + case Sandbox::kMediaFoundationCdm: case Sandbox::kWindowsSystemProxyResolver: - case Sandbox::kFileUtil: #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) @@ -49,7 +49,7 @@ case Sandbox::kHardwareVideoEncoding: #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_CHROMEOS_ASH) -@@ -171,7 +171,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -169,7 +169,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi case Sandbox::kNaClLoader: break; #endif // BUILDFLAG(IS_MAC) @@ -58,7 +58,7 @@ case Sandbox::kZygoteIntermediateSandbox: break; #endif -@@ -218,7 +218,7 @@ sandbox::mojom::Sandbox SandboxTypeFromCommandLine( +@@ -216,7 +216,7 @@ sandbox::mojom::Sandbox SandboxTypeFromCommandLine( if (process_type == switches::kNaClBrokerProcess) return Sandbox::kNoSandbox; @@ -67,7 +67,7 @@ // Intermediate process gains a sandbox later. if (process_type == switches::kZygoteProcessType) return Sandbox::kZygoteIntermediateSandbox; -@@ -262,7 +262,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -260,7 +260,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb return switches::kUtilitySandbox; case Sandbox::kAudio: return switches::kAudioSandbox; @@ -76,7 +76,7 @@ case Sandbox::kVideoCapture: return switches::kVideoCaptureSandbox; #endif -@@ -292,11 +292,11 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -290,11 +290,11 @@ std::string StringFromUtilitySandboxType(Sandbox sandb case Sandbox::kMirroring: return switches::kMirroringSandbox; #endif @@ -90,7 +90,7 @@ case Sandbox::kHardwareVideoEncoding: return switches::kHardwareVideoEncodingSandbox; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -320,7 +320,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -314,7 +314,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb #if BUILDFLAG(IS_MAC) case Sandbox::kNaClLoader: #endif // BUILDFLAG(IS_MAC) @@ -99,7 +99,7 @@ case Sandbox::kZygoteIntermediateSandbox: #endif NOTREACHED(); -@@ -391,11 +391,11 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( +@@ -382,11 +382,11 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( if (sandbox_string == switches::kScreenAISandbox) return Sandbox::kScreenAI; #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.cc index 0bd48e0c9d4e..90b08ff08439 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/sandbox/policy/switches.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/sandbox/policy/switches.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/sandbox/policy/switches.cc -@@ -54,10 +54,10 @@ const char kFileUtilSandbox[] = "file_util"; +@@ -53,10 +53,10 @@ const char kWindowsSystemProxyResolverSandbox[] = "pro const char kMirroringSandbox[] = "mirroring"; #endif // BUILDFLAG(IS_MAC) @@ -13,7 +13,7 @@ const char kHardwareVideoEncodingSandbox[] = "hardware_video_encoding"; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -104,7 +104,9 @@ const char kGpuSandboxFailuresFatal[] = "gpu-sandbox-f +@@ -95,7 +95,9 @@ const char kGpuSandboxFailuresFatal[] = "gpu-sandbox-f // Meant to be used as a browser-level switch for testing purposes only. const char kNoSandbox[] = "no-sandbox"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.h index 7b40176617d3..592df44c1c2b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_sandbox_policy_switches.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/sandbox/policy/switches.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/sandbox/policy/switches.h.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/sandbox/policy/switches.h -@@ -57,10 +57,10 @@ SANDBOX_POLICY_EXPORT extern const char kFileUtilSandb +@@ -56,10 +56,10 @@ SANDBOX_POLICY_EXPORT extern const char kWindowsSystem SANDBOX_POLICY_EXPORT extern const char kMirroringSandbox[]; #endif // BUILDFLAG(IS_MAC) @@ -13,7 +13,7 @@ SANDBOX_POLICY_EXPORT extern const char kHardwareVideoEncodingSandbox[]; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -82,7 +82,8 @@ SANDBOX_POLICY_EXPORT extern const char kDisableSetuid +@@ -80,7 +80,8 @@ SANDBOX_POLICY_EXPORT extern const char kDisableSetuid SANDBOX_POLICY_EXPORT extern const char kGpuSandboxAllowSysVShm[]; SANDBOX_POLICY_EXPORT extern const char kGpuSandboxFailuresFatal[]; SANDBOX_POLICY_EXPORT extern const char kNoSandbox[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.cc index faadfc71d1b0..b1f86a21a7c0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.cc.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.cc @@ -143,6 +143,7 @@ void AddPulseAudioFilePermissions( } #endif -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) std::vector<BrokerFilePermission> GetAudioFilePermissions() { std::vector<BrokerFilePermission> permissions{ BrokerFilePermission::ReadOnly("/dev/urandom"), @@ -17,7 +17,7 @@ } // namespace bool AudioPreSandboxHook(sandbox::policy::SandboxLinux::Options options) { -+#if !defined(OS_BSD) ++#if !BUILDFLAG(IS_BSD) LoadAudioLibraries(); auto* instance = sandbox::policy::SandboxLinux::GetInstance(); instance->StartBrokerProcess(MakeBrokerCommandSet({ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.h index 14582b531ce2..bbb595ea5940 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.h @@ -1,11 +1,13 @@ ---- src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.h.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/services/audio/audio_sandbox_hook_linux.h -@@ -5,7 +5,11 @@ +@@ -5,7 +5,13 @@ #ifndef SERVICES_AUDIO_AUDIO_SANDBOX_HOOK_LINUX_H_ #define SERVICES_AUDIO_AUDIO_SANDBOX_HOOK_LINUX_H_ -+#if defined(OS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#include "build/build_config.h" ++ ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_cert__verifier_cert__verifier__creation.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_cert__verifier_cert__verifier__creation.cc index 133b559de600..992107b54222 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_cert__verifier_cert__verifier__creation.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_cert__verifier_cert__verifier__creation.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/services/cert_verifier/cert_verifier_creation.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/services/cert_verifier/cert_verifier_creation.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/services/cert_verifier/cert_verifier_creation.cc -@@ -12,7 +12,7 @@ - #include "net/cert_net/cert_net_fetcher_url_request.h" +@@ -13,7 +13,7 @@ + #include "net/cert/multi_threaded_cert_verifier.h" #include "net/net_buildflags.h" -#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -9,16 +9,16 @@ #include "net/cert/cert_verify_proc_builtin.h" #include "net/cert/internal/system_trust_store.h" #endif -@@ -89,7 +89,7 @@ class OldDefaultCertVerifyProcFactory : public net::Ce +@@ -112,7 +112,7 @@ class CertVerifyProcFactoryImpl : public net::CertVeri user_slot_restriction_ ? crypto::ScopedPK11Slot(PK11_ReferenceSlot( user_slot_restriction_.get())) : nullptr)); -#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - verify_proc = net::CreateCertVerifyProcBuiltin( - std::move(cert_net_fetcher), net::CreateSslSystemTrustStore()); - #else -@@ -226,6 +226,7 @@ std::unique_ptr<net::CertVerifierWithUpdatableProc> Cr + return net::CreateCertVerifyProcBuiltin(std::move(cert_net_fetcher), + std::move(crl_set), + net::CreateSslSystemTrustStore()); +@@ -212,6 +212,7 @@ std::unique_ptr<net::CertVerifierWithUpdatableProc> Cr bool IsUsingCertNetFetcher() { #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_compute__pressure_cpu__probe.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_compute__pressure_cpu__probe.cc index 401ce80fbf17..34292de6c8f9 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_compute__pressure_cpu__probe.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_compute__pressure_cpu__probe.cc @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/services/device/compute_pressure/cpu_probe.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/services/device/compute_pressure/cpu_probe.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/services/device/compute_pressure/cpu_probe.cc -@@ -29,6 +29,7 @@ std::unique_ptr<CpuProbe> CpuProbe::Create() { +@@ -44,6 +44,7 @@ std::unique_ptr<CpuProbe> CpuProbe::Create( #elif BUILDFLAG(IS_MAC) - return CpuProbeMac::Create(); + return CpuProbeMac::Create(sampling_interval, std::move(sampling_callback)); #else + NOTIMPLEMENTED(); return nullptr; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_geolocation_location__arbitrator.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_geolocation_location__arbitrator.cc index c62c8e44c171..118fd20757cb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_geolocation_location__arbitrator.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_geolocation_location__arbitrator.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/device/geolocation/location_arbitrator.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/services/device/geolocation/location_arbitrator.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/services/device/geolocation/location_arbitrator.cc -@@ -162,7 +162,7 @@ LocationArbitrator::NewSystemLocationProvider() { +@@ -190,7 +190,7 @@ LocationArbitrator::NewSystemLocationProvider() { std::unique_ptr<LocationProvider> LocationArbitrator::NewSystemLocationProvider() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_hid_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_hid_BUILD.gn index 5d27502e2a44..5ab6b092215f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_hid_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_hid_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/device/hid/BUILD.gn.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/services/device/hid/BUILD.gn.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/services/device/hid/BUILD.gn -@@ -35,7 +35,26 @@ source_set("hid") { +@@ -34,7 +34,26 @@ source_set("hid") { "//services/device/public/mojom", ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_cpp_generic__sensor_sensor__reading.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_cpp_generic__sensor_sensor__reading.h new file mode 100644 index 000000000000..021f577d67fc --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_cpp_generic__sensor_sensor__reading.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/device/public/cpp/generic_sensor/sensor_reading.h.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/services/device/public/cpp/generic_sensor/sensor_reading.h +@@ -8,6 +8,8 @@ + #include <stddef.h> + #include <stdint.h> + ++#include <cstdint> ++ + #include <type_traits> + + namespace device { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_mojom_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_mojom_BUILD.gn index 0699fae497ce..88ef09f6821b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_mojom_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_public_mojom_BUILD.gn @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/services/device/public/mojom/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/services/device/public/mojom/BUILD.gn.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/services/device/public/mojom/BUILD.gn -@@ -90,7 +90,7 @@ mojom("device_service") { - cpp_only = true +@@ -97,7 +97,7 @@ mojom("device_service") { + enable_js_fuzzing = false enabled_features = [] - if ((is_linux || is_chromeos) && use_udev) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_BUILD.gn new file mode 100644 index 000000000000..9496dbd69359 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/device/serial/BUILD.gn.orig 2022-11-30 08:12:58 UTC ++++ src/3rdparty/chromium/services/device/serial/BUILD.gn +@@ -5,7 +5,7 @@ + import("//build/config/chromeos/ui_mode.gni") + import("//build/config/features.gni") + +-if (is_win || ((is_linux || is_chromeos) && use_udev) || is_mac) { ++if (is_win || ((!is_bsd && is_linux || is_chromeos) && use_udev) || is_mac) { + config("platform_support") { + visibility = [ ":serial" ] + if (is_win) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__device__enumerator.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__device__enumerator.cc new file mode 100644 index 000000000000..4551edb6aefa --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__device__enumerator.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/services/device/serial/serial_device_enumerator.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/services/device/serial/serial_device_enumerator.cc +@@ -12,7 +12,7 @@ + #include "build/build_config.h" + #include "components/device_event_log/device_event_log.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "services/device/serial/serial_device_enumerator_linux.h" + #elif BUILDFLAG(IS_MAC) + #include "services/device/serial/serial_device_enumerator_mac.h" +@@ -25,7 +25,7 @@ namespace device { + // static + std::unique_ptr<SerialDeviceEnumerator> SerialDeviceEnumerator::Create( + scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner) { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return SerialDeviceEnumeratorLinux::Create(); + #elif BUILDFLAG(IS_MAC) + return std::make_unique<SerialDeviceEnumeratorMac>(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__io__handler__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__io__handler__posix.cc new file mode 100644 index 000000000000..b3316232bea7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_serial_serial__io__handler__posix.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/device/serial/serial_io_handler_posix.cc.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/services/device/serial/serial_io_handler_posix.cc +@@ -68,7 +68,7 @@ bool BitrateToSpeedConstant(int bitrate, speed_t* spee + BITRATE_TO_SPEED_CASE(9600) + BITRATE_TO_SPEED_CASE(19200) + BITRATE_TO_SPEED_CASE(38400) +-#if !BUILDFLAG(IS_MAC) ++#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) + BITRATE_TO_SPEED_CASE(57600) + BITRATE_TO_SPEED_CASE(115200) + BITRATE_TO_SPEED_CASE(230400) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_time__zone__monitor_time__zone__monitor__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_time__zone__monitor_time__zone__monitor__linux.cc index bb7e24c66c52..fce74f22c9bb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_time__zone__monitor_time__zone__monitor__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_time__zone__monitor_time__zone__monitor__linux.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/services/device/time_zone_monitor/time_zone_monitor_linux.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/services/device/time_zone_monitor/time_zone_monitor_linux.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/services/device/time_zone_monitor/time_zone_monitor_linux.cc @@ -131,7 +131,11 @@ class TimeZoneMonitorLinuxImpl // false positives are harmless, assuming the false positive rate is // reasonable. const char* const kFilesToWatch[] = { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + "/etc/localtime", +#else "/etc/localtime", "/etc/timezone", "/etc/TZ", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn index 4911a73de228..0f25748aedb0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/device/usb/BUILD.gn.orig 2022-10-29 13:32:26 UTC +--- src/3rdparty/chromium/services/device/usb/BUILD.gn.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/services/device/usb/BUILD.gn -@@ -103,15 +103,17 @@ static_library("usb") { +@@ -89,15 +89,17 @@ static_library("usb") { deps += [ "//third_party/re2" ] } @@ -27,7 +27,7 @@ # These sources and deps are required for libusb. # TODO(https://crbug.com/1096743) Remove these sources. -@@ -135,6 +137,13 @@ static_library("usb") { +@@ -121,6 +123,13 @@ static_library("usb") { deps += [ "//third_party/libusb" ] } @@ -41,7 +41,7 @@ if (is_linux || is_chromeos) { sources += [ "usb_device_linux.cc", -@@ -152,7 +161,7 @@ static_library("usb") { +@@ -138,7 +147,7 @@ static_library("usb") { deps += [ "//device/udev_linux" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_BUILD.gn index 8b746237f99b..dd715b10d896 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/network/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/services/network/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/services/network/BUILD.gn -@@ -339,7 +339,6 @@ if (is_linux || is_chromeos) { +@@ -393,7 +393,6 @@ if (is_linux || is_chromeos) { ] deps = [ "//base:base", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc new file mode 100644 index 000000000000..5c50f6899215 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/services/network/network_context.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/services/network/network_context.cc +@@ -447,7 +447,7 @@ NetworkContext::NetworkContextHttpAuthPreferences:: + NetworkContext::NetworkContextHttpAuthPreferences:: + ~NetworkContextHttpAuthPreferences() = default; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool NetworkContext::NetworkContextHttpAuthPreferences::AllowGssapiLibraryLoad() + const { + if (network_service_) { +@@ -2322,7 +2322,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( + http_auth_dynamic_network_service_params->android_negotiate_account_type); + #endif // BUILDFLAG(IS_ANDROID) + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + http_auth_merged_preferences_.set_allow_gssapi_library_load( + http_auth_dynamic_network_service_params->allow_gssapi_library_load); + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.h new file mode 100644 index 000000000000..ef65756f7dca --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/network/network_context.h.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/services/network/network_context.h +@@ -668,7 +668,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext + public: + explicit NetworkContextHttpAuthPreferences(NetworkService* network_service); + ~NetworkContextHttpAuthPreferences() override; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + bool AllowGssapiLibraryLoad() const override; + #endif // BUILDFLAG(IS_LINUX) + private: diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.cc index ea09515f2353..a7e1ceef53df 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.cc @@ -1,26 +1,37 @@ ---- src/3rdparty/chromium/services/network/network_sandbox_hook_linux.cc.orig 2022-03-19 12:56:15 UTC +--- src/3rdparty/chromium/services/network/network_sandbox_hook_linux.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/services/network/network_sandbox_hook_linux.cc -@@ -26,12 +26,15 @@ sandbox::syscall_broker::BrokerCommandSet GetNetworkBr - }); - } +@@ -14,11 +14,14 @@ + #include "sandbox/policy/features.h" + #include "third_party/abseil-cpp/absl/types/optional.h" -+#if !defined(OS_BSD) - std::vector<BrokerFilePermission> GetNetworkFilePermissions() { - // TODO(tsepez): remove universal permission under filesystem root. - return {BrokerFilePermission::ReadWriteCreateRecursive("/")}; - } ++#if !BUILDFLAG(IS_BSD) + using sandbox::syscall_broker::BrokerFilePermission; + using sandbox::syscall_broker::MakeBrokerCommandSet; +#endif - bool NetworkPreSandboxHook(sandbox::policy::SandboxLinux::Options options) { -+#if !defined(OS_BSD) - auto* instance = sandbox::policy::SandboxLinux::GetInstance(); + namespace network { - instance->StartBrokerProcess( -@@ -39,6 +42,7 @@ bool NetworkPreSandboxHook(sandbox::policy::SandboxLin - sandbox::policy::SandboxLinux::PreSandboxHook(), options); ++#if !BUILDFLAG(IS_BSD) + sandbox::syscall_broker::BrokerCommandSet GetNetworkBrokerCommandSet() { + return MakeBrokerCommandSet({ + sandbox::syscall_broker::COMMAND_ACCESS, +@@ -102,9 +105,11 @@ void LoadNetworkLibraries() { + } + } + #endif // BUILDFLAG(IS_CHROMEOS) ++#endif - instance->EngageNamespaceSandboxIfPossible(); + bool NetworkPreSandboxHook(std::vector<std::string> network_context_parent_dirs, + sandbox::policy::SandboxLinux::Options options) { ++#if !BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_CHROMEOS) + LoadNetworkLibraries(); + #endif +@@ -117,6 +122,7 @@ bool NetworkPreSandboxHook(std::vector<std::string> ne + GetNetworkBrokerCommandSet(), + GetNetworkFilePermissions(std::move(network_context_parent_dirs)), + sandbox::policy::SandboxLinux::PreSandboxHook(), options); +#endif + return true; } - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.h index ebc2e1117b38..b7f9e169b92b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__sandbox__hook__linux.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/services/network/network_sandbox_hook_linux.h.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/services/network/network_sandbox_hook_linux.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/services/network/network_sandbox_hook_linux.h -@@ -10,7 +10,11 @@ +@@ -6,7 +6,11 @@ + #define SERVICES_NETWORK_NETWORK_SANDBOX_HOOK_LINUX_H_ + #include "base/component_export.h" - #include "sandbox/linux/syscall_broker/broker_command.h" - #include "sandbox/linux/syscall_broker/broker_file_permission.h" -+#if defined(OS_BSD) -+#include "sandbox/policy/openbsd/sandbox_openbsd.h" ++#if defined(__OpenBSD__) || defined(__FreeBSD__) ++#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.cc index 41b2a15c06f6..0387004ccf70 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/network/network_service.cc.orig 2023-10-03 19:49:54 UTC +--- src/3rdparty/chromium/services/network/network_service.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/services/network/network_service.cc -@@ -92,7 +92,7 @@ +@@ -96,7 +96,7 @@ #include "third_party/boringssl/src/include/openssl/cpu.h" #endif @@ -8,4 +8,22 @@ +#if ((BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD)) || \ BUILDFLAG(IS_CHROMEOS_LACROS) - #include "components/os_crypt/key_storage_config_linux.h" + #include "components/os_crypt/sync/key_storage_config_linux.h" +@@ -1003,7 +1003,7 @@ void NetworkService::SetExplicitlyAllowedPorts( + net::SetExplicitlyAllowedPorts(ports); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void NetworkService::SetGssapiLibraryLoadObserver( + mojo::PendingRemote<mojom::GssapiLibraryLoadObserver> + gssapi_library_load_observer) { +@@ -1085,7 +1085,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo + ); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void NetworkService::OnBeforeGssapiLibraryLoad() { + if (gssapi_library_load_observer_.is_bound()) { + gssapi_library_load_observer_->OnBeforeGssapiLibraryLoad(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.h new file mode 100644 index 000000000000..49004dda8f15 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_network__service.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/services/network/network_service.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/services/network/network_service.h +@@ -235,7 +235,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService + mojo::PendingReceiver<mojom::NetworkServiceTest> receiver) override; + void SetFirstPartySets(net::GlobalFirstPartySets sets) override; + void SetExplicitlyAllowedPorts(const std::vector<uint16_t>& ports) override; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void SetGssapiLibraryLoadObserver( + mojo::PendingRemote<mojom::GssapiLibraryLoadObserver> + gssapi_library_load_observer) override; +@@ -266,7 +266,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService + std::unique_ptr<net::HttpAuthHandlerFactory> CreateHttpAuthHandlerFactory( + NetworkContext* network_context); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // This is called just before a GSSAPI library may be loaded. + void OnBeforeGssapiLibraryLoad(); + #endif // BUILDFLAG(IS_LINUX) +@@ -507,7 +507,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService + // leaking stale listeners between tests. + std::unique_ptr<net::NetworkChangeNotifier> mock_network_change_notifier_; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + mojo::Remote<mojom::GssapiLibraryLoadObserver> gssapi_library_load_observer_; + #endif // BUILDFLAG(IS_LINUX) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_BUILD.gn new file mode 100644 index 000000000000..98fa9af485a3 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_BUILD.gn @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/network/public/cpp/BUILD.gn.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/services/network/public/cpp/BUILD.gn +@@ -481,7 +481,7 @@ jumbo_component("cpp_base") { + sources += [ "transferable_directory_fuchsia.cc" ] + } + +- if (is_linux) { ++ if (is_linux && !is_bsd) { + sources += [ + "network_interface_change_listener_mojom_traits.cc", + "network_interface_change_listener_mojom_traits.h", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_features.cc new file mode 100644 index 000000000000..d2cc30bdf15a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_cpp_features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/network/public/cpp/features.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/services/network/public/cpp/features.cc +@@ -383,7 +383,7 @@ CONSTINIT const base::Feature kOutOfProcessSystemDnsRe + // that can be adequately sandboxed. + CONSTINIT const base::Feature kOutOfProcessSystemDnsResolution( + "OutOfProcessSystemDnsResolution", +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_mojom_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_mojom_BUILD.gn new file mode 100644 index 000000000000..05b8728422f8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_public_mojom_BUILD.gn @@ -0,0 +1,25 @@ +--- src/3rdparty/chromium/services/network/public/mojom/BUILD.gn.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/services/network/public/mojom/BUILD.gn +@@ -515,11 +515,11 @@ mojom("url_loader_base") { + } + + enabled_features = [] +- if (is_android || is_chromeos || is_linux) { ++ if (!is_bsd && (is_android || is_chromeos || is_linux)) { + enabled_features += [ "network_change_notifier_in_browser" ] + } + +- if (is_linux) { ++ if (is_linux && !is_bsd) { + # TODO(crbug.com/1431866): Remove this once is_linux in the mojom IDL does + # not include lacros. + enabled_features += [ "use_network_interface_change_listener" ] +@@ -1435,7 +1435,7 @@ mojom("mojom") { + } + } + +- if (is_linux) { ++ if (is_linux && !is_bsd) { + # TODO(crbug.com/1431866): Remove this once is_linux in the mojom IDL does + # not include lacros. + enabled_features += [ "use_network_interface_change_listener" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_shared__dictionary_shared__dictionary__writer__in__memory.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_shared__dictionary_shared__dictionary__writer__in__memory.h new file mode 100644 index 000000000000..be502691c819 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_network_shared__dictionary_shared__dictionary__writer__in__memory.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/services/network/shared_dictionary/shared_dictionary_writer_in_memory.h.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/services/network/shared_dictionary/shared_dictionary_writer_in_memory.h +@@ -9,6 +9,8 @@ + #include <string> + #include <vector> + ++#include <vector> ++ + #include "base/component_export.h" + #include "base/functional/callback.h" + #include "crypto/secure_hash.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc index 3b7b3cff2c06..13f892b50c1b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc -@@ -54,7 +54,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO +@@ -53,7 +53,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO uint32_t shared_resident_kb) { DCHECK(os_dump.platform_private_footprint); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ @@ -9,7 +9,7 @@ uint64_t rss_anon_bytes = os_dump.platform_private_footprint->rss_anon_bytes; uint64_t vm_swap_bytes = os_dump.platform_private_footprint->vm_swap_bytes; return (rss_anon_bytes + vm_swap_bytes) / 1024; -@@ -82,7 +82,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl +@@ -81,7 +81,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl os_dump->is_peak_rss_resettable = internal_os_dump.is_peak_rss_resettable; os_dump->private_footprint_kb = CalculatePrivateFootprintKb(internal_os_dump, shared_resident_kb); @@ -18,7 +18,7 @@ os_dump->private_footprint_swap_kb = internal_os_dump.platform_private_footprint->vm_swap_bytes / 1024; #endif -@@ -261,7 +261,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -217,7 +217,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // On most platforms each process can dump data about their own process // so ask each process to do so Linux is special see below. @@ -27,7 +27,7 @@ request->pending_responses.insert({client_info.pid, ResponseType::kOSDump}); client->RequestOSMemoryDump(request->memory_map_option(), {base::kNullProcessId}, -@@ -276,7 +276,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -232,7 +232,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // In some cases, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). @@ -36,7 +36,7 @@ std::vector<base::ProcessId> pids; mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = base::kNullProcessId; -@@ -322,7 +322,7 @@ void QueuedRequestDispatcher::SetUpAndDispatchVmRegion +@@ -278,7 +278,7 @@ void QueuedRequestDispatcher::SetUpAndDispatchVmRegion const OsCallback& os_callback) { // On Linux, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). @@ -45,7 +45,7 @@ mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = 0; for (const auto& client_info : clients) { -@@ -372,7 +372,7 @@ QueuedRequestDispatcher::FinalizeVmRegionRequest( +@@ -328,7 +328,7 @@ QueuedRequestDispatcher::FinalizeVmRegionRequest( // each client process provides 1 OS dump, % the case where the client is // disconnected mid dump. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; @@ -54,7 +54,7 @@ for (auto& kv : extra_os_dumps) { auto pid = kv.first == base::kNullProcessId ? original_pid : kv.first; DCHECK(results.find(pid) == results.end()); -@@ -434,7 +434,7 @@ void QueuedRequestDispatcher::Finalize(QueuedRequest* +@@ -389,7 +389,7 @@ void QueuedRequestDispatcher::Finalize(QueuedRequest* // crash). In the latter case (OS_LINUX) we expect the full map to come // from the browser process response. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_BUILD.gn index 7a5ee75672b2..04cda496465e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/BUILD.gn.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/BUILD.gn -@@ -33,8 +33,12 @@ component("memory_instrumentation") { +@@ -29,8 +29,12 @@ component("memory_instrumentation") { sources += [ "os_metrics_win.cc" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc index 98424621078e..da4d13bb211d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc @@ -39,7 +39,7 @@ #include "third_party/perfetto/protos/perfetto/trace/track_event/process_descriptor.pbzero.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.cc new file mode 100644 index 000000000000..75a613c10a31 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.cc @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/services/video_capture/video_capture_service_impl.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/services/video_capture/video_capture_service_impl.cc +@@ -40,7 +40,7 @@ + #include "services/video_capture/lacros/device_factory_adapter_lacros.h" + #endif // BUILDFLAG(IS_CHROMEOS_LACROS) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "media/capture/capture_switches.h" + #include "media/capture/video/video_capture_gpu_channel_host.h" + #include "services/viz/public/cpp/gpu/context_provider_command_buffer.h" +@@ -107,7 +107,7 @@ class VideoCaptureServiceImpl::GpuDependenciesContext + this}; + }; + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Intended usage of this class is to create viz::Gpu in utility process and + // connect to viz::GpuClient of browser process, which will call to Gpu service. + // Also, this class holds the viz::ContextProvider to listen and monitor Gpu +@@ -288,7 +288,7 @@ void VideoCaptureServiceImpl::LazyInitializeGpuDepende + if (!gpu_dependencies_context_) + gpu_dependencies_context_ = std::make_unique<GpuDependenciesContext>(); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled()) { + if (!viz_gpu_context_provider_) { + viz_gpu_context_provider_ = +@@ -384,7 +384,7 @@ void VideoCaptureServiceImpl::OnGpuInfoUpdate(const CH + } + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + void VideoCaptureServiceImpl::SetVizGpu(std::unique_ptr<viz::Gpu> viz_gpu) { + viz_gpu_ = std::move(viz_gpu); + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.h new file mode 100644 index 000000000000..acb5813fd8f4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_services_video__capture_video__capture__service__impl.h @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/services/video_capture/video_capture_service_impl.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/services/video_capture/video_capture_service_impl.h +@@ -24,7 +24,7 @@ + #include "services/video_capture/ash/video_capture_device_factory_ash.h" + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "services/viz/public/cpp/gpu/gpu.h" + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) + +@@ -62,7 +62,7 @@ class VideoCaptureServiceImpl : public mojom::VideoCap + #if BUILDFLAG(IS_WIN) + void OnGpuInfoUpdate(const CHROME_LUID& luid) override; + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + void SetVizGpu(std::unique_ptr<viz::Gpu> viz_gpu); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) + private: +@@ -87,7 +87,7 @@ class VideoCaptureServiceImpl : public mojom::VideoCap + factory_receivers_ash_; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + class VizGpuContextProvider; + std::unique_ptr<VizGpuContextProvider> viz_gpu_context_provider_; + std::unique_ptr<viz::Gpu> viz_gpu_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_SkMemory__new__handler.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_SkMemory__new__handler.cpp index 55bfcd8fe428..151e9652875e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_SkMemory__new__handler.cpp +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_SkMemory__new__handler.cpp @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/skia/ext/SkMemory_new_handler.cpp.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/skia/ext/SkMemory_new_handler.cpp.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/skia/ext/SkMemory_new_handler.cpp -@@ -79,7 +79,7 @@ static void* malloc_nothrow(size_t size) { +@@ -86,7 +86,7 @@ static void* malloc_nothrow(size_t size) { // TODO(b.kelemen): we should always use UncheckedMalloc but currently it // doesn't work as intended everywhere. void* result; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_skcolorspace__trfn.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_skcolorspace__trfn.cc new file mode 100644 index 000000000000..cb22466885c4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_skia_ext_skcolorspace__trfn.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/skia/ext/skcolorspace_trfn.cc.orig 2023-08-17 07:33:31 UTC ++++ src/3rdparty/chromium/skia/ext/skcolorspace_trfn.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include <cmath> ++ + #include "skia/ext/skcolorspace_trfn.h" + + #include <cmath> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_config.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_config.h index d0ca2bd9ca3f..f34a7506e942 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_config.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_config.h @@ -1,21 +1,21 @@ ---- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/config.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/config.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/abseil-cpp/absl/base/config.h -@@ -460,7 +460,8 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != - // POSIX.1-2001. +@@ -450,7 +450,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != #ifdef ABSL_HAVE_SCHED_YIELD #error ABSL_HAVE_SCHED_YIELD cannot be directly set --#elif defined(__linux__) || defined(__ros__) || defined(__native_client__) -+#elif defined(__linux__) || defined(__ros__) || defined(__native_client__) || \ -+ defined(__OpenBSD__) || defined(__FreeBSD__) + #elif defined(__linux__) || defined(__ros__) || defined(__native_client__) || \ +- defined(__VXWORKS__) ++ defined(__VXWORKS__) || defined(__OpenBSD__) || defined(__FreeBSD__) #define ABSL_HAVE_SCHED_YIELD 1 #endif -@@ -475,7 +476,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != +@@ -465,7 +465,8 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != // platforms. #ifdef ABSL_HAVE_SEMAPHORE_H #error ABSL_HAVE_SEMAPHORE_H cannot be directly set --#elif defined(__linux__) || defined(__ros__) -+#elif defined(__linux__) || defined(__ros__) || defined(__OpenBSD__) || defined(__FreeBSD__) +-#elif defined(__linux__) || defined(__ros__) || defined(__VXWORKS__) ++#elif defined(__linux__) || defined(__ros__) || defined(__VXWORKS__) || \ ++ defined(__OpenBSD__) || defined(__FreeBSD__) #define ABSL_HAVE_SEMAPHORE_H 1 #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_raw__logging.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_raw__logging.cc index ade86489b072..a00606557592 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_raw__logging.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_raw__logging.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/raw_logging.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/raw_logging.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/raw_logging.cc -@@ -52,10 +52,12 @@ +@@ -56,10 +56,12 @@ // ABSL_HAVE_SYSCALL_WRITE is defined when the platform provides the syscall // syscall(SYS_write, /*int*/ fd, /*char* */ buf, /*size_t*/ len); // for low level operations that want to avoid libc. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_sysinfo.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_sysinfo.cc index 8b5c784ee738..b8e4d18eabb0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_sysinfo.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_base_internal_sysinfo.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/sysinfo.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/sysinfo.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/abseil-cpp/absl/base/internal/sysinfo.cc -@@ -30,7 +30,7 @@ +@@ -30,10 +30,14 @@ #include <sys/syscall.h> #endif @@ -9,7 +9,30 @@ #include <sys/sysctl.h> #endif -@@ -310,9 +310,11 @@ static double GetNominalCPUFrequency() { ++#if defined(__FreeBSD__) ++#include <pthread_np.h> ++#endif ++ + #if defined(__myriad2__) + #include <rtems.h> + #endif +@@ -186,6 +190,7 @@ static double GetNominalCPUFrequency() { + + #else + ++#if !defined(__OpenBSD__) && !defined(__FreeBSD__) + // Helper function for reading a long from a file. Returns true if successful + // and the memory location pointed to by value is set to the value read. + static bool ReadLongFromFile(const char *file, long *value) { +@@ -218,6 +223,7 @@ static bool ReadLongFromFile(const char *file, long *v + } + return ret; + } ++#endif + + #if defined(ABSL_INTERNAL_UNSCALED_CYCLECLOCK_FREQUENCY_IS_CPU_FREQUENCY) + +@@ -317,9 +323,11 @@ static double GetNominalCPUFrequency() { // a new mode (turbo mode). Essentially, those frequencies cannot // always be relied upon. The same reasons apply to /proc/cpuinfo as // well. @@ -21,3 +44,35 @@ #if defined(ABSL_INTERNAL_UNSCALED_CYCLECLOCK_FREQUENCY_IS_CPU_FREQUENCY) // On these platforms, the TSC frequency is the nominal CPU +@@ -338,10 +346,12 @@ static double GetNominalCPUFrequency() { + // If CPU scaling is in effect, we want to use the *maximum* + // frequency, not whatever CPU speed some random processor happens + // to be using now. ++#if !defined(__OpenBSD__) && !defined(__FreeBSD__) // pledge violation + if (ReadLongFromFile("/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq", + &freq)) { + return freq * 1e3; // Value is kHz. + } ++#endif + + return 1.0; + #endif // !ABSL_INTERNAL_UNSCALED_CYCLECLOCK_FREQUENCY_IS_CPU_FREQUENCY +@@ -439,6 +449,18 @@ pid_t GetTID() { + static_assert(sizeof(pid_t) == sizeof(thread), + "In NaCL int expected to be the same size as a pointer"); + return reinterpret_cast<pid_t>(thread); ++} ++ ++#elif defined(__OpenBSD__) ++ ++pid_t GetTID() { ++ return getthrid(); ++} ++ ++#elif defined(__FreeBSD__) ++ ++pid_t GetTID() { ++ return pthread_getthreadid_np(); + } + + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_debugging_internal_elf__mem__image.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_debugging_internal_elf__mem__image.h index 44235736ba9a..d375d14c6dbe 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_debugging_internal_elf__mem__image.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_debugging_internal_elf__mem__image.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h.orig 2022-08-31 12:19:35 UTC +--- src/3rdparty/chromium/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h -@@ -33,7 +33,7 @@ - +@@ -34,7 +34,7 @@ #if defined(__ELF__) && !defined(__OpenBSD__) && !defined(__QNX__) && \ !defined(__native_client__) && !defined(__asmjs__) && \ -- !defined(__wasm__) && !defined(__HAIKU__) -+ !defined(__wasm__) && !defined(__HAIKU__) && !defined(__FreeBSD__) + !defined(__wasm__) && !defined(__HAIKU__) && !defined(__sun) && \ +- !defined(__VXWORKS__) && !defined(__hexagon__) ++ !defined(__VXWORKS__) && !defined(__hexagon__) && !defined(__FreeBSD__) #define ABSL_HAVE_ELF_MEM_IMAGE 1 #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_time_internal_cctz_src_time__zone__format.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_time_internal_cctz_src_time__zone__format.cc deleted file mode 100644 index 4db0493638ae..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_abseil-cpp_absl_time_internal_cctz_src_time__zone__format.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc.orig 2022-09-24 10:57:32 UTC -+++ src/3rdparty/chromium/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc -@@ -19,7 +19,7 @@ - #endif - - #if defined(HAS_STRPTIME) && HAS_STRPTIME --#if !defined(_XOPEN_SOURCE) && !defined(__OpenBSD__) -+#if !defined(_XOPEN_SOURCE) && !defined(__OpenBSD__) && !defined(__FreeBSD__) - #define _XOPEN_SOURCE // Definedness suffices for strptime. - #endif - #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_BUILD.gn index a611e87d0332..8829526ae674 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/angle/BUILD.gn.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/angle/BUILD.gn.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/angle/BUILD.gn -@@ -280,7 +280,6 @@ config("extra_warnings") { +@@ -325,7 +325,6 @@ config("extra_warnings") { "-Wtautological-type-limit-compare", "-Wundefined-reinterpret-cast", "-Wunneeded-internal-declaration", @@ -8,7 +8,7 @@ "-Wsuggest-destructor-override", "-Wsuggest-override", -@@ -451,7 +450,7 @@ template("angle_common_lib") { +@@ -496,7 +495,7 @@ template("angle_common_lib") { all_dependent_configs = [ ":angle_disable_pool_alloc" ] } @@ -17,7 +17,7 @@ libs = [ "dl" ] } -@@ -606,6 +605,9 @@ angle_static_library("angle_gpu_info_util") { +@@ -651,6 +650,9 @@ angle_static_library("angle_gpu_info_util") { "Xi", "Xext", ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_platform__helpers.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_platform__helpers.h new file mode 100644 index 000000000000..ba4eb7f74eee --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_platform__helpers.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/angle/src/common/platform_helpers.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/angle/src/common/platform_helpers.h +@@ -62,7 +62,7 @@ inline constexpr bool IsIOS() + + inline constexpr bool IsLinux() + { +-#if defined(ANGLE_PLATFORM_LINUX) ++#if defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) + return true; + #else + return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_vulkan_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_vulkan_BUILD.gn deleted file mode 100644 index 19c3b7997a88..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_common_vulkan_BUILD.gn +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/angle/src/common/vulkan/BUILD.gn.orig 2023-03-28 19:45:02 UTC -+++ src/3rdparty/chromium/third_party/angle/src/common/vulkan/BUILD.gn -@@ -33,7 +33,7 @@ if (angle_enable_vulkan || angle_build_vulkan_system_i - if (angle_shared_libvulkan) { - defines = [ "ANGLE_SHARED_LIBVULKAN=1" ] - } -- if (angle_use_wayland) { -+ if (angle_use_wayland && !use_system_libwayland) { - include_dirs = [ "$wayland_dir/src" ] - } - configs = [ "$angle_root:angle_vulkan_wayland_config" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_gpu__info__util_SystemInfo__internal.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_gpu__info__util_SystemInfo__internal.h index 74ed5951c3cb..721f6c16dbde 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_gpu__info__util_SystemInfo__internal.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_gpu__info__util_SystemInfo__internal.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/angle/src/gpu_info_util/SystemInfo_internal.h.orig 2022-02-23 19:25:59 UTC +--- src/3rdparty/chromium/third_party/angle/src/gpu_info_util/SystemInfo_internal.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/third_party/angle/src/gpu_info_util/SystemInfo_internal.h -@@ -14,6 +14,13 @@ +@@ -15,6 +15,13 @@ namespace angle { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_Display.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_Display.cpp index 67f708c8ae60..8d52ddf1e027 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_Display.cpp +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_Display.cpp @@ -1,16 +1,16 @@ ---- src/3rdparty/chromium/third_party/angle/src/libANGLE/Display.cpp.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/angle/src/libANGLE/Display.cpp.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/angle/src/libANGLE/Display.cpp -@@ -55,7 +55,7 @@ - # include "libANGLE/renderer/gl/wgl/DisplayWGL.h" - # elif defined(ANGLE_PLATFORM_MACOS) || defined(ANGLE_PLATFORM_IOS) - # include "libANGLE/renderer/gl/apple/DisplayApple_api.h" +@@ -60,7 +60,7 @@ + # include "libANGLE/renderer/gl/cgl/DisplayCGL.h" + # elif ANGLE_ENABLE_EAGL + # include "libANGLE/renderer/gl/eagl/DisplayEAGL.h" -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # include "libANGLE/renderer/gl/egl/DisplayEGL.h" # if defined(ANGLE_USE_X11) # include "libANGLE/renderer/gl/glx/DisplayGLX.h" -@@ -346,7 +346,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di - impl = rx::CreateDisplayCGLOrEAGL(state); +@@ -411,7 +411,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di + impl = new rx::DisplayEAGL(state); break; -# elif defined(ANGLE_PLATFORM_LINUX) @@ -18,16 +18,16 @@ # if defined(ANGLE_USE_GBM) if (platformType == 0) { -@@ -387,7 +387,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -457,7 +457,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di #if defined(ANGLE_ENABLE_OPENGL) # if defined(ANGLE_PLATFORM_WINDOWS) impl = new rx::DisplayWGL(state); -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # if defined(ANGLE_USE_GBM) - if (platformType == 0 || - platformType == EGL_PLATFORM_VULKAN_DISPLAY_MODE_HEADLESS_ANGLE) -@@ -436,7 +436,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di + if (platformType == 0) + { +@@ -508,7 +508,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di impl = rx::CreateVulkanWin32Display(state); } break; @@ -36,7 +36,7 @@ # if defined(ANGLE_USE_GBM) if (platformType == EGL_PLATFORM_GBM_KHR && rx::IsVulkanGbmDisplayAvailable()) { -@@ -2046,7 +2046,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2148,7 +2148,7 @@ static ClientExtensions GenerateClientExtensions() extensions.x11Visual = true; #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_formatutils.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_formatutils.cpp index d4a68f0b4eed..e59e83967111 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_formatutils.cpp +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_formatutils.cpp @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/angle/src/libANGLE/formatutils.cpp.orig 2023-04-20 13:16:39 UTC +--- src/3rdparty/chromium/third_party/angle/src/libANGLE/formatutils.cpp.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/angle/src/libANGLE/formatutils.cpp -@@ -1486,7 +1486,7 @@ static InternalFormatInfoMap BuildInternalFormatInfoMa +@@ -1475,7 +1475,7 @@ static InternalFormatInfoMap BuildInternalFormatInfoMa AddYUVFormat(&map, GL_G8_B8R8_2PLANE_420_UNORM_ANGLE, true, 8, 8, 8, 0, 0, GL_G8_B8R8_2PLANE_420_UNORM_ANGLE, GL_UNSIGNED_BYTE, GL_UNSIGNED_NORMALIZED, false, RequireExt<&Extensions::yuvInternalFormatANGLE>, RequireExt<&Extensions::yuvInternalFormatANGLE>, RequireExt<&Extensions::yuvInternalFormatANGLE>, NeverSupported, NeverSupported); AddYUVFormat(&map, GL_G8_B8_R8_3PLANE_420_UNORM_ANGLE, true, 8, 8, 8, 0, 0, GL_G8_B8_R8_3PLANE_420_UNORM_ANGLE, GL_UNSIGNED_BYTE, GL_UNSIGNED_NORMALIZED, false, RequireExt<&Extensions::yuvInternalFormatANGLE>, RequireExt<&Extensions::yuvInternalFormatANGLE>, RequireExt<&Extensions::yuvInternalFormatANGLE>, NeverSupported, NeverSupported); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_renderer_driver__utils.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_renderer_driver__utils.h deleted file mode 100644 index c83f0e5a4fb5..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_libANGLE_renderer_driver__utils.h +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/angle/src/libANGLE/renderer/driver_utils.h.orig 2023-03-09 06:31:50 UTC -+++ src/3rdparty/chromium/third_party/angle/src/libANGLE/renderer/driver_utils.h -@@ -206,7 +206,7 @@ inline bool IsWindows() - - inline bool IsLinux() - { --#if defined(ANGLE_PLATFORM_LINUX) -+#if defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) - return true; - #else - return false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_third__party_volk_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_third__party_volk_BUILD.gn deleted file mode 100644 index 8882c027c537..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_src_third__party_volk_BUILD.gn +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/angle/src/third_party/volk/BUILD.gn.orig 2023-03-28 19:45:02 UTC -+++ src/3rdparty/chromium/third_party/angle/src/third_party/volk/BUILD.gn -@@ -20,7 +20,7 @@ source_set("volk") { - public_configs = [ ":volk_config" ] - configs += [ "$angle_root:angle_no_cfi_icall" ] - public_deps = [ "$angle_vulkan_headers_dir:vulkan_headers" ] -- if (angle_use_wayland) { -+ if (angle_use_wayland && !use_system_libwayland) { - include_dirs = [ "$wayland_dir/src" ] - } - } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_util_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_util_BUILD.gn index bdcc8380c778..89e05cbb806f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_util_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_angle_util_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/angle/util/BUILD.gn.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/third_party/angle/util/BUILD.gn.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/angle/util/BUILD.gn -@@ -292,7 +292,7 @@ foreach(is_shared_library, +@@ -311,7 +311,7 @@ foreach(is_shared_library, ] libs = [] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_privacy__budget_active__sampling.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_privacy__budget_active__sampling.cc deleted file mode 100644 index 2498eff5ae1c..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_privacy__budget_active__sampling.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/blink/common/privacy_budget/active_sampling.cc.orig 2022-08-31 12:19:35 UTC -+++ src/3rdparty/chromium/third_party/blink/common/privacy_budget/active_sampling.cc -@@ -24,7 +24,7 @@ namespace blink { - bool IdentifiabilityActiveSampler::IsFontFamilyAvailable(const char* family, - SkFontMgr* fm) { - base::ScopedAllowBaseSyncPrimitives allow; --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - return !!fm->legacyMakeTypeface(family, SkFontStyle()); - #else - sk_sp<SkFontStyleSet> set(fm->matchFamily(family)); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc index 633d3d8166d0..9e33b07c62d0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc -@@ -64,7 +64,7 @@ bool StructTraits<blink::mojom::RendererPreferencesDat - if (!data.ReadAcceptLanguages(&out->accept_languages)) - return false; +@@ -66,7 +66,7 @@ bool StructTraits<blink::mojom::RendererPreferencesDat + + out->send_subresource_notification = data.send_subresource_notification(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences.h index db513ac3f494..32cad4b736ee 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences.h @@ -1,9 +1,9 @@ ---- src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences.h.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences.h -@@ -50,7 +50,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { - bool webrtc_allow_legacy_tls_protocols{false}; +@@ -64,7 +64,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { UserAgentOverride user_agent_override; std::string accept_languages; + bool send_subresource_notification{false}; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::string system_font_family_name; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h index e4805d43e10b..67169fd8511f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h -@@ -157,7 +157,7 @@ struct BLINK_COMMON_EXPORT - return data.accept_languages; +@@ -162,7 +162,7 @@ struct BLINK_COMMON_EXPORT + return data.send_subresource_notification; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_platform_platform.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_platform_platform.h index 3b10091dc9cc..23a41de0d93b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_platform_platform.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_public_platform_platform.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/public/platform/platform.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/public/platform/platform.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/public/platform/platform.h -@@ -349,7 +349,7 @@ class BLINK_PLATFORM_EXPORT Platform { +@@ -338,7 +338,7 @@ class BLINK_PLATFORM_EXPORT Platform { return nullptr; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_blink__initializer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_blink__initializer.cc index 6bca1da72ea0..ac6d110766df 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_blink__initializer.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_blink__initializer.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/controller/blink_initializer.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/controller/blink_initializer.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/controller/blink_initializer.cc -@@ -74,12 +74,12 @@ +@@ -78,12 +78,12 @@ #include "third_party/blink/renderer/controller/private_memory_footprint_provider.h" #endif @@ -10,12 +10,12 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "third_party/blink/renderer/controller/highest_pmf_reporter.h" #include "third_party/blink/renderer/controller/user_level_memory_pressure_signal_generator.h" #endif -@@ -222,7 +222,7 @@ void BlinkInitializer::RegisterInterfaces(mojo::Binder +@@ -227,7 +227,7 @@ void BlinkInitializer::RegisterInterfaces(mojo::Binder main_thread_task_runner); #endif @@ -24,12 +24,12 @@ binders.Add<mojom::blink::MemoryUsageMonitorLinux>( ConvertToBaseRepeatingCallback( CrossThreadBindRepeating(&MemoryUsageMonitorPosix::Bind)), -@@ -255,7 +255,7 @@ void BlinkInitializer::RegisterMemoryWatchers() { +@@ -266,7 +266,7 @@ void BlinkInitializer::RegisterMemoryWatchers(Platform #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // Initialize UserLevelMemoryPressureSignalGenerator so it starts monitoring. - UserLevelMemoryPressureSignalGenerator::Initialize(main_thread_task_runner); - +- BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Start reporting the highest private memory footprint after the first + // navigation. + HighestPmfReporter::Initialize(main_thread_task_runner); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_memory__usage__monitor__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_memory__usage__monitor__posix.cc index 5feca7d63c91..4fcc364618f1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_memory__usage__monitor__posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_controller_memory__usage__monitor__posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/controller/memory_usage_monitor_posix.cc.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/controller/memory_usage_monitor_posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/controller/memory_usage_monitor_posix.cc -@@ -129,15 +129,17 @@ void MemoryUsageMonitorPosix::ResetFileDescriptors() { +@@ -128,15 +128,17 @@ void MemoryUsageMonitorPosix::ResetFileDescriptors() { void MemoryUsageMonitorPosix::SetProcFiles(base::File statm_file, base::File status_file) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_exported_web__view__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_exported_web__view__impl.cc index 3504310a3820..9687f1a1ba46 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_exported_web__view__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_exported_web__view__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -408,7 +408,7 @@ SkFontHinting RendererPreferencesToSkiaHinting( +@@ -421,7 +421,7 @@ SkFontHinting RendererPreferencesToSkiaHinting( const blink::RendererPreferences& prefs) { // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is // complete. @@ -9,7 +9,7 @@ if (!prefs.should_antialias_text) { // When anti-aliasing is off, GTK maps all non-zero hinting settings to // 'Normal' hinting so we do the same. Otherwise, folks who have 'Slight' -@@ -3344,7 +3344,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs +@@ -3323,7 +3323,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs renderer_preferences_.use_subpixel_positioning); // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is // complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_frame_web__frame__test.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_frame_web__frame__test.cc index fb2c5dc7e1f3..7f9ab08a9e53 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_frame_web__frame__test.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_frame_web__frame__test.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -6439,7 +6439,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { +@@ -6456,7 +6456,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { } #if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ @@ -9,7 +9,7 @@ // TODO(crbug.com/1090246): Fix these tests on Fuchsia and re-enable. // TODO(crbug.com/1317375): Build these tests on all platforms. #define MAYBE_SelectRangeStaysHorizontallyAlignedWhenMoved \ -@@ -6847,7 +6847,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc +@@ -6865,7 +6865,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc TEST_F(CompositedSelectionBoundsTest, LargeSelectionNoScroll) { RunTest("composited_selection_bounds_large_selection_noscroll.html"); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_html_canvas_canvas__async__blob__creator.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_html_canvas_canvas__async__blob__creator.cc index 911e3e5bdf4d..f11b44ff51f0 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_html_canvas_canvas__async__blob__creator.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_html_canvas_canvas__async__blob__creator.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc.orig 2022-05-19 14:06:27 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc -@@ -45,7 +45,7 @@ constexpr base::TimeDelta kEncodeRowSlackBeforeDeadlin +@@ -48,7 +48,7 @@ constexpr base::TimeDelta kEncodeRowSlackBeforeDeadlin /* The value is based on user statistics on Nov 2017. */ #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc index 400c6dcc4bf6..304806dd92eb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc -@@ -190,7 +190,7 @@ InspectorMemoryAgent::GetSamplingProfileById(uint32_t +@@ -189,7 +189,7 @@ InspectorMemoryAgent::GetSamplingProfileById(uint32_t Vector<String> InspectorMemoryAgent::Symbolize( const WebVector<void*>& addresses) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_layout_layout__view.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_layout_ng_layout__ng__view.cc index bc56f72530fd..f850372415f1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_layout_layout__view.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_layout_ng_layout__ng__view.cc @@ -1,17 +1,17 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/layout/layout_view.cc.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/blink/renderer/core/layout/layout_view.cc -@@ -67,7 +67,7 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/core/layout/ng/layout_ng_view.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/core/layout/ng/layout_ng_view.cc +@@ -15,7 +15,7 @@ + #include "third_party/blink/renderer/core/svg/svg_document_extensions.h" #include "ui/display/screen_info.h" - #include "ui/gfx/geometry/quad_f.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "third_party/blink/renderer/platform/fonts/font_cache.h" #endif -@@ -365,7 +365,7 @@ void LayoutView::UpdateLayout() { - DCHECK(!layout_state_); - LayoutState root_layout_state(*this); +@@ -53,7 +53,7 @@ void LayoutNGView::UpdateLayout() { + fragmentation_context_.Clear(); + } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_paint_paint__layer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_paint_paint__layer.cc index c621e73fe9ec..fba7e07799ee 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_paint_paint__layer.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_paint_paint__layer.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/paint/paint_layer.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/paint/paint_layer.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/paint/paint_layer.cc -@@ -114,7 +114,7 @@ namespace blink { +@@ -118,7 +118,7 @@ namespace blink { namespace { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc index 9b232d22a2f2..66cc9a32e6e7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc.orig 2022-10-24 13:33:33 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc @@ -155,7 +155,7 @@ bool ScrollbarThemeAura::SupportsDragSnapBack() const // is true for at least GTK and QT apps). @@ -9,7 +9,7 @@ return false; #else return true; -@@ -329,7 +329,7 @@ bool ScrollbarThemeAura::ShouldCenterOnThumb(const Scr +@@ -355,7 +355,7 @@ bool ScrollbarThemeAura::ShouldCenterOnThumb(const Scr const WebMouseEvent& event) { // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is // complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_canvas_canvas2d_canvas__style.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_canvas_canvas2d_canvas__style.cc new file mode 100644 index 000000000000..faf4d28f3312 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_canvas_canvas2d_canvas__style.cc @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc +@@ -76,6 +76,9 @@ void CanvasStyle::ApplyToFlags(cc::PaintFlags& flags, + + void CanvasStyle::ApplyToFlags(cc::PaintFlags& flags, + float global_alpha) const { ++#if defined(__clang__) && (__clang_major__ < 16) ++ SkColor4f custom_color = SkColor4f{0.0f, 0.0f, 0.0f, global_alpha}; ++#endif + switch (type_) { + case kColor: + ApplyColorToFlags(flags, global_alpha); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_media_audio_audio__renderer__mixer__manager__test.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_media_audio_audio__renderer__mixer__manager__test.cc index 96842118dc7d..0a7db99120cf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_media_audio_audio__renderer__mixer__manager__test.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_media_audio_audio__renderer__mixer__manager__test.cc @@ -1,9 +1,9 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/media/audio/audio_renderer_mixer_manager_test.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/media/audio/audio_renderer_mixer_manager_test.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/media/audio/audio_renderer_mixer_manager_test.cc -@@ -722,7 +722,7 @@ TEST_F(AudioRendererMixerManagerTest, MixerParamsLaten +@@ -724,7 +724,7 @@ TEST_F(AudioRendererMixerManagerTest, MixerParamsLaten mixer->get_output_params_for_testing().sample_rate()); - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_APPLE) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // Use 10 ms buffer (441 frames per buffer). diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_features.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_features.gni index f80bb2c5bc70..3486073555fc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_features.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_features.gni @@ -1,9 +1,11 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/features.gni.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/features.gni.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/features.gni -@@ -7,5 +7,5 @@ declare_args() { +@@ -7,7 +7,7 @@ declare_args() { # This enables building WebNN with XNNPACK. Currently only available for - # Windows on x64 or x86. + # Windows and Linux on x64 or x86. build_webnn_with_xnnpack = -- is_win && (current_cpu == "x64" || current_cpu == "x86") +- (is_linux || is_win) && (current_cpu == "x64" || current_cpu == "x86") + !is_bsd && (is_win && (current_cpu == "x64" || current_cpu == "x86")) - } + + # This build flag enables WebNN on ChromeOS platform to access hardware + # acceleration by using ModelLoader mojo interface. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_ml__graph__xnnpack.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_ml__graph__xnnpack.cc index 1bad3278c937..b232a528b725 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_ml__graph__xnnpack.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_ml_webnn_ml__graph__xnnpack.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/ml_graph_xnnpack.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/ml_graph_xnnpack.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/ml/webnn/ml_graph_xnnpack.cc -@@ -177,7 +177,7 @@ class SharedXnnpackContext : public ThreadSafeRefCount +@@ -191,7 +191,7 @@ class SharedXnnpackContext : public ThreadSafeRefCount ~SharedXnnpackContext() { base::AutoLock auto_lock(SharedXnnpackContextLock()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc index f786e2c56e04..07b7f12fde5d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc -@@ -290,7 +290,7 @@ TEST_F(WebRtcAudioRendererTest, DISABLED_VerifySinkPar +@@ -297,7 +297,7 @@ TEST_F(WebRtcAudioRendererTest, DISABLED_VerifySinkPar SetupRenderer(kDefaultOutputDeviceId); renderer_proxy_->Start(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_APPLE) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc index 0bb8db1053a4..668add41a422 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -6231,7 +6231,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid +@@ -6321,7 +6321,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid constexpr bool kAllowZeroCopyImages = true; #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__webcodecs__video__frame.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__webcodecs__video__frame.cc deleted file mode 100644 index 1f3d5b2d4492..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgl_webgl__webcodecs__video__frame.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/webgl/webgl_webcodecs_video_frame.cc.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/blink/renderer/modules/webgl/webgl_webcodecs_video_frame.cc -@@ -102,7 +102,7 @@ bool WebGLWebCodecsVideoFrame::Supported(WebGLRenderin - // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is - // complete. - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - // TODO(jie.a.chen@intel.com): Add Linux support. - return false; - #elif BUILDFLAG(IS_APPLE) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgpu_gpu__queue.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgpu_gpu__queue.cc index 4a16beaf548c..2d061233f1b7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgpu_gpu__queue.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_modules_webgpu_gpu__queue.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/modules/webgpu/gpu_queue.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/modules/webgpu/gpu_queue.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/modules/webgpu/gpu_queue.cc -@@ -707,7 +707,7 @@ bool GPUQueue::CopyFromCanvasSourceImage( - // platform requires interop supported. According to the bug, this change will - // be a long time task. So disable using webgpu mailbox texture uploading path +@@ -746,7 +746,7 @@ bool GPUQueue::CopyFromCanvasSourceImage( // on linux platform. + // TODO(crbug.com/1424119): using a webgpu mailbox texture on the OpenGLES + // backend is failing for unknown reasons. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - use_webgpu_mailbox_texture = false; - unaccelerated_image = image->MakeUnaccelerated(); - image = unaccelerated_image.get(); + bool forceReadback = true; + #elif BUILDFLAG(IS_WIN) + bool forceReadback = diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_BUILD.gn index 9e67a519c9bb..ca33eca74907 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/BUILD.gn -@@ -1976,7 +1976,7 @@ jumbo_static_library("test_support") { +@@ -1975,7 +1975,7 @@ jumbo_static_library("test_support") { ] # fuzzed_data_provider may not work with a custom toolchain. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc index 62b9add21a53..0ebf2995f22c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc @@ -72,7 +72,7 @@ extern const char kNotoColorEmojiCompat[] = "Noto Colo @@ -9,7 +9,7 @@ float FontCache::device_scale_factor_ = 1.0; #endif -@@ -119,7 +119,7 @@ FontPlatformData* FontCache::SystemFontPlatformData( +@@ -118,7 +118,7 @@ FontPlatformData* FontCache::SystemFontPlatformData( const FontDescription& font_description) { const AtomicString& family = FontCache::SystemFontFamily(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h index 14048654d8b4..b3e27e71c678 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h -@@ -57,7 +57,7 @@ +@@ -56,7 +56,7 @@ #include "third_party/skia/include/core/SkFontMgr.h" #include "third_party/skia/include/core/SkRefCnt.h" @@ -9,7 +9,7 @@ #include "ui/gfx/font_fallback_linux.h" #endif -@@ -180,7 +180,7 @@ class PLATFORM_EXPORT FontCache final { +@@ -174,7 +174,7 @@ class PLATFORM_EXPORT FontCache final { static void PrewarmFamily(const AtomicString& family_name) {} #endif @@ -18,7 +18,7 @@ // These are needed for calling QueryRenderStyleForStrike, since // gfx::GetFontRenderParams makes distinctions based on DSF. static float DeviceScaleFactor() { return device_scale_factor_; } -@@ -264,7 +264,7 @@ class PLATFORM_EXPORT FontCache final { +@@ -250,7 +250,7 @@ class PLATFORM_EXPORT FontCache final { const char* locale_family_name); #endif // BUILDFLAG(IS_ANDROID) @@ -27,7 +27,7 @@ static bool GetFontForCharacter(UChar32, const char* preferred_locale, gfx::FallbackFontData*); -@@ -344,7 +344,7 @@ class PLATFORM_EXPORT FontCache final { +@@ -330,7 +330,7 @@ class PLATFORM_EXPORT FontCache final { const FontFaceCreationParams&, std::string& name); @@ -36,8 +36,8 @@ static AtomicString GetFamilyNameForCharacter(SkFontMgr*, UChar32, const FontDescription&, -@@ -387,7 +387,7 @@ class PLATFORM_EXPORT FontCache final { - std::unique_ptr<FallbackFamilyStyleCache> fallback_params_cache_; +@@ -368,7 +368,7 @@ class PLATFORM_EXPORT FontCache final { + bool is_test_font_mgr_ = false; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc index 6e59b05a818a..21a42c1fcb59 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc @@ -39,7 +39,7 @@ #include "third_party/blink/renderer/platform/wtf/text/string_hash.h" @@ -9,7 +9,7 @@ #include "third_party/blink/renderer/platform/fonts/font_cache.h" #endif -@@ -275,7 +275,7 @@ FontCacheKey FontDescription::CacheKey( +@@ -274,7 +274,7 @@ FontCacheKey FontDescription::CacheKey( static_cast<unsigned>(fields_.orientation_) << 1 | // bit 2-3 static_cast<unsigned>(fields_.subpixel_text_position_); // bit 1 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__palette.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__palette.h new file mode 100644 index 000000000000..74578b876a36 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__palette.h @@ -0,0 +1,28 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_palette.h.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_palette.h +@@ -96,7 +96,11 @@ class PLATFORM_EXPORT FontPalette : public RefCounted< + Color::ColorSpace color_interpolation_space, + absl::optional<Color::HueInterpolationMethod> hue_interpolation_method) { + return base::AdoptRef(new FontPalette( +- start, end, NonNormalizedPercentages{start_percentage, end_percentage}, ++#if defined(__clang__) && (__clang_major__ >= 16) ++ start, end, NonNormalizedPercentages(start_percentage, end_percentage), ++#else ++ start, end, NonNormalizedPercentages(NonNormalizedPercentages{start_percentage, end_percentage}), ++#endif + normalized_percentage, alpha_multiplier, color_interpolation_space, + hue_interpolation_method)); + } +@@ -170,7 +174,11 @@ class PLATFORM_EXPORT FontPalette : public RefCounted< + double normalized_percentage) { + double end_percentage = normalized_percentage * 100.0; + double start_percentage = 100.0 - end_percentage; +- return NonNormalizedPercentages{start_percentage, end_percentage}; ++#if defined(__clang__) && (__clang_major__ >= 16) ++ return NonNormalizedPercentages(start_percentage, end_percentage); ++#else ++ return NonNormalizedPercentages(NonNormalizedPercentages{start_percentage, end_percentage}); ++#endif + } + + double GetAlphaMultiplier() const { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__platform__data.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__platform__data.cc index 65b7bf46d0b1..f4fe74bacd65 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__platform__data.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__platform__data.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_platform_data.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_platform_data.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_platform_data.cc @@ -51,7 +51,7 @@ namespace { namespace blink { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_palette__interpolation.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_palette__interpolation.cc new file mode 100644 index 000000000000..65e93bb77bc0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_palette__interpolation.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/palette_interpolation.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/palette_interpolation.cc +@@ -31,7 +31,12 @@ Vector<FontPalette::FontPaletteOverride> PaletteInterp + color_interpolation_space, hue_interpolation_method, start_color, + end_color, percentage, alpha_multiplier); + +- FontPalette::FontPaletteOverride result_color_record{(int)i, result_color}; ++#if defined(__clang__) && (__clang_major__ >= 16) ++ FontPalette::FontPaletteOverride result_color_record(i, result_color); ++#else ++ FontPalette::FontPaletteOverride fpo = { static_cast<int>(i), result_color }; ++ FontPalette::FontPaletteOverride result_color_record(fpo); ++#endif + result_color_records.push_back(result_color_record); + } + return result_color_records; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc index 041279edd07b..4041c0ad526e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc -@@ -60,7 +60,7 @@ AtomicString ToAtomicString(const SkString& str) { +@@ -64,7 +64,7 @@ AtomicString ToAtomicString(const SkString& str) { return AtomicString::FromUTF8(str.c_str(), str.size()); } @@ -9,16 +9,7 @@ // This function is called on android or when we are emulating android fonts on // linux and the embedder has overriden the default fontManager with // WebFontRendering::setSkiaFontMgr. -@@ -235,7 +235,7 @@ sk_sp<SkTypeface> FontCache::CreateTypeface( - } - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // On linux if the fontManager has been overridden then we should be calling - // the embedder provided font Manager rather than calling - // SkTypeface::CreateFromName which may redirect the call to the default font -@@ -262,7 +262,7 @@ std::unique_ptr<FontPlatformData> FontCache::CreateFon +@@ -246,7 +246,7 @@ std::unique_ptr<FontPlatformData> FontCache::CreateFon std::string name; sk_sp<SkTypeface> typeface; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_begin__frame__provider.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_begin__frame__provider.cc index 495ee9e234ce..b05f28ed8769 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_begin__frame__provider.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_begin__frame__provider.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc -@@ -77,8 +77,12 @@ void BeginFrameProvider::CreateCompositorFrameSinkIfNe +@@ -71,8 +71,12 @@ void BeginFrameProvider::CreateCompositorFrameSinkIfNe // Once we are using RAF, this thread is driving user interactive display // updates. Update priority accordingly. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_video__frame__submitter.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_video__frame__submitter.cc index 53474e91ff22..dc308173b771 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_video__frame__submitter.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_video__frame__submitter.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc -@@ -358,7 +358,7 @@ void VideoFrameSubmitter::OnBeginFrame( +@@ -356,7 +356,7 @@ void VideoFrameSubmitter::OnBeginFrame( continue; auto& feedback = timing_details.find(frame_token)->value.presentation_feedback; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_peerconnection_rtc__video__encoder__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_peerconnection_rtc__video__encoder__factory.cc index 1ae8befc0f50..cfc8e3fbf7eb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_peerconnection_rtc__video__encoder__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_peerconnection_rtc__video__encoder__factory.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/peerconnection/rtc_video_encoder_factory.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/peerconnection/rtc_video_encoder_factory.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/peerconnection/rtc_video_encoder_factory.cc -@@ -197,12 +197,12 @@ SupportedFormats GetSupportedFormatsInternal( +@@ -198,12 +198,12 @@ SupportedFormats GetSupportedFormatsInternal( supported_formats.scalability_modes.push_back(profile.scalability_modes); supported_formats.sdp_formats.push_back(std::move(*format)); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_runtime__enabled__features.json5 b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_runtime__enabled__features.json5 index 89970e0e44de..f729bbaa5d14 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_runtime__enabled__features.json5 +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_runtime__enabled__features.json5 @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -1531,7 +1531,7 @@ - depends_on: ["FileSystemAccessLocal"], - status: {"Android": "test", "default": "stable"}, - origin_trial_feature_name: "FileHandling", +@@ -2781,7 +2781,7 @@ + name: "PaymentHandlerMinimalHeaderUX", + origin_trial_feature_name: "PaymentHandlerMinimalHeaderUX", + origin_trial_allows_third_party: true, - origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos", "openbsd", "freebsd"], - base_feature: "FileHandlingAPI", }, { -@@ -3358,7 +3358,7 @@ + name: "PaymentInstruments", +@@ -3803,7 +3803,7 @@ name: "UnrestrictedSharedArrayBuffer", base_feature: "none", origin_trial_feature_name: "UnrestrictedSharedArrayBuffer", @@ -18,16 +18,7 @@ }, { name: "URLPatternCompareComponent", -@@ -3379,7 +3379,7 @@ - origin_trial_feature_name: "UserAgentReduction", - origin_trial_allows_third_party: true, - // iOS not included as it should not send a reduced User-Agent string. -- origin_trial_os: ["android", "chromeos", "fuchsia", "linux", "mac", "win"], -+ origin_trial_os: ["android", "chromeos", "fuchsia", "linux", "mac", "win", "openbsd", "freebsd"], - base_feature: "ReduceUserAgent", - }, - { -@@ -3553,12 +3553,12 @@ +@@ -4006,12 +4006,12 @@ status: "experimental", base_feature: "none", origin_trial_feature_name: "WebAppUrlHandling", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_scheduler_common_thread.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_scheduler_common_thread.cc index cab2808e46a6..d8fc91ddadb8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_scheduler_common_thread.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_scheduler_common_thread.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/scheduler/common/thread.cc.orig 2022-10-24 13:33:33 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/scheduler/common/thread.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/scheduler/common/thread.cc -@@ -87,7 +87,7 @@ void Thread::CreateAndSetCompositorThread() { +@@ -82,7 +82,7 @@ void Thread::CreateAndSetCompositorThread() { std::make_unique<scheduler::CompositorThread>(params); compositor_thread->Init(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_video__capture_video__capture__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_video__capture_video__capture__impl.cc new file mode 100644 index 000000000000..ac8abe61fb37 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_video__capture_video__capture__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/platform/video_capture/video_capture_impl.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/video_capture/video_capture_impl.cc +@@ -621,7 +621,7 @@ bool VideoCaptureImpl::VideoFrameBufferPreparer::BindV + } + + const unsigned texture_target = +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Explicitly set GL_TEXTURE_EXTERNAL_OES as the + // `media::VideoFrame::RequiresExternalSampler()` requires it for NV12 + // format, while the `ImageTextureTarget()` will return GL_TEXTURE_2D. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_blink__categorized__worker__pool__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_blink__categorized__worker__pool__delegate.cc new file mode 100644 index 000000000000..a957cfd32446 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_blink__categorized__worker__pool__delegate.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/blink/renderer/platform/widget/compositing/blink_categorized_worker_pool_delegate.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/third_party/blink/renderer/platform/widget/compositing/blink_categorized_worker_pool_delegate.cc +@@ -27,7 +27,7 @@ BlinkCategorizedWorkerPoolDelegate& BlinkCategorizedWo + + void BlinkCategorizedWorkerPoolDelegate::NotifyThreadWillRun( + base::PlatformThreadId tid) { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + scoped_refptr<base::TaskRunner> task_runner = + Thread::MainThread()->GetTaskRunner(MainThreadTaskRunnerRestricted()); + task_runner->PostTask(FROM_HERE, base::BindOnce( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_categorized__worker__pool.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_categorized__worker__pool.cc deleted file mode 100644 index b80eab4f0b29..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_widget_compositing_categorized__worker__pool.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/widget/compositing/categorized_worker_pool.cc.orig 2023-03-09 06:31:50 UTC -+++ src/3rdparty/chromium/third_party/blink/renderer/platform/widget/compositing/categorized_worker_pool.cc -@@ -242,7 +242,7 @@ void CategorizedWorkerPoolImpl::Start(int max_concurre - "CompositorTileWorkerBackground", thread_options, this, - background_thread_prio_categories, - &has_task_for_background_priority_thread_cv_); --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - thread->SetBackgroundingCallback( - Thread::MainThread()->GetTaskRunner(MainThreadTaskRunnerRestricted()), - base::BindOnce([](base::PlatformThreadId thread_id) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_math__extras.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_math__extras.h index 54822740990c..0c99b83324b4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_math__extras.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_math__extras.h @@ -1,17 +1,6 @@ ---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/math_extras.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/math_extras.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/math_extras.h -@@ -128,6 +128,10 @@ constexpr float Grad2turn(float g) { - return g * (1.0f / 400.0f); - } - -+#if defined(OS_FREEBSD) -+#pragma clang diagnostic push -+#pragma clang diagnostic ignored "-Winvalid-constexpr" -+#endif - inline double RoundHalfTowardsPositiveInfinity(double value) { - return std::floor(value + 0.5); - } -@@ -135,6 +139,9 @@ inline float RoundHalfTowardsPositiveInfinity(float va +@@ -135,6 +135,9 @@ inline float RoundHalfTowardsPositiveInfinity(float va inline float RoundHalfTowardsPositiveInfinity(float value) { return std::floor(value + 0.5f); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.generated.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.generated.gni deleted file mode 100644 index f23df4066ad8..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.generated.gni +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/BUILD.generated.gni.orig 2023-09-07 16:02:00 UTC -+++ src/3rdparty/chromium/third_party/boringssl/BUILD.generated.gni -@@ -87,6 +87,7 @@ crypto_sources = [ - "src/crypto/cpu_aarch64_freebsd.c", - "src/crypto/cpu_aarch64_fuchsia.c", - "src/crypto/cpu_aarch64_linux.c", -+ "src/crypto/cpu_aarch64_openbsd.c", - "src/crypto/cpu_aarch64_win.c", - "src/crypto/cpu_arm.c", - "src/crypto/cpu_arm_freebsd.c", -@@ -193,6 +194,7 @@ crypto_sources = [ - "src/crypto/rand_extra/deterministic.c", - "src/crypto/rand_extra/forkunsafe.c", - "src/crypto/rand_extra/fuchsia.c", -+ "src/crypto/rand_extra/arc4random.c", - "src/crypto/rand_extra/passive.c", - "src/crypto/rand_extra/rand_extra.c", - "src/crypto/rand_extra/windows.c", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.gn deleted file mode 100644 index 7bc990a32f49..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_BUILD.gn +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/BUILD.gn.orig 2022-03-25 21:59:56 UTC -+++ src/3rdparty/chromium/third_party/boringssl/BUILD.gn -@@ -92,7 +92,7 @@ if (is_win && !is_msan && current_cpu != "arm64") { - public_configs = [ ":no_asm_config" ] - } - } else if (current_cpu == "arm64") { -- if (is_linux || is_chromeos || is_android) { -+ if ((is_linux || is_chromeos || is_android) && !is_freebsd) { - sources += crypto_sources_linux_aarch64 - } else if (is_apple) { - sources += crypto_sources_apple_aarch64 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_chacha_asm_chacha-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_chacha_asm_chacha-x86__64.pl deleted file mode 100644 index 0d7a6c505632..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_chacha_asm_chacha-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/chacha/asm/chacha-x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/chacha/asm/chacha-x86_64.pl -@@ -78,6 +78,7 @@ $code.=<<___; - - .extern OPENSSL_ia32cap_P - -+.rodata - .align 64 - .Lzero: - .long 0,0,0,0 -@@ -107,6 +108,7 @@ $code.=<<___; - .Lsixteen: - .long 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16 - .asciz "ChaCha20 for x86_64, CRYPTOGAMS by <appro\@openssl.org>" -+.previous - ___ - - sub AUTOLOAD() # thunk [simplified] 32-bit style perlasm diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_aes128gcmsiv-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_aes128gcmsiv-x86__64.pl deleted file mode 100644 index 23fc58a63e69..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_aes128gcmsiv-x86__64.pl +++ /dev/null @@ -1,19 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl -@@ -32,7 +32,7 @@ open OUT,"| \"$^X\" \"$xlate\" $flavour \"$output\""; - *STDOUT=*OUT; - - $code.=<<___; --.data -+.rodata - - .align 16 - one: -@@ -66,6 +66,7 @@ con3: - .byte -1,-1,-1,-1,-1,-1,-1,-1,4,5,6,7,4,5,6,7 - and_mask: - .long 0,0xffffffff, 0xffffffff, 0xffffffff -+.previous - ___ - - $code.=<<___; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_chacha20__poly1305__x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_chacha20__poly1305__x86__64.pl deleted file mode 100644 index a3bb3e648f9a..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cipher__extra_asm_chacha20__poly1305__x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl -@@ -42,6 +42,7 @@ $code.=<<___; - - chacha20_poly1305_constants: - -+.rodata - .align 64 - .Lchacha20_consts: - .byte 'e','x','p','a','n','d',' ','3','2','-','b','y','t','e',' ','k' -@@ -79,6 +80,7 @@ chacha20_poly1305_constants: - .byte 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00 - .byte 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00 - .byte 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff -+.previous - ___ - - my ($oup,$inp,$inl,$adp,$keyp,$itr1,$itr2,$adl)=("%rdi","%rsi","%rbx","%rcx","%r9","%rcx","%r8","%r8"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cpu__aarch64__openbsd.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cpu__aarch64__openbsd.c deleted file mode 100644 index 60fd01169810..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_cpu__aarch64__openbsd.c +++ /dev/null @@ -1,60 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/cpu_aarch64_openbsd.c.orig 2022-03-25 21:59:56 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/cpu_aarch64_openbsd.c -@@ -0,0 +1,57 @@ -+/* Copyright (c) 2022, Robert Nagy <robert@openbsd.org> -+ * -+ * Permission to use, copy, modify, and/or distribute this software for any -+ * purpose with or without fee is hereby granted, provided that the above -+ * copyright notice and this permission notice appear in all copies. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION -+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN -+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -+ -+#include <openssl/cpu.h> -+ -+#if defined(OPENSSL_AARCH64) && defined(OPENSSL_OPENBSD) && \ -+ !defined(OPENSSL_STATIC_ARMCAP) -+ -+#include <sys/sysctl.h> -+#include <machine/cpu.h> -+#include <machine/armreg.h> -+#include <stdio.h> -+ -+#include <openssl/arm_arch.h> -+ -+#include "internal.h" -+ -+extern uint32_t OPENSSL_armcap_P; -+ -+void OPENSSL_cpuid_setup(void) { -+ int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 }; -+ size_t len = sizeof(uint64_t); -+ uint64_t cpu_id = 0; -+ -+ if (sysctl(isar0_mib, 2, &cpu_id, &len, NULL, 0) < 0) -+ return; -+ -+ OPENSSL_armcap_P |= ARMV7_NEON; -+ -+ if (ID_AA64ISAR0_AES(cpu_id) >= ID_AA64ISAR0_AES_BASE) -+ OPENSSL_armcap_P |= ARMV8_AES; -+ -+ if (ID_AA64ISAR0_AES(cpu_id) >= ID_AA64ISAR0_AES_PMULL) -+ OPENSSL_armcap_P |= ARMV8_PMULL; -+ -+ if (ID_AA64ISAR0_SHA1(cpu_id) >= ID_AA64ISAR0_SHA1_BASE) -+ OPENSSL_armcap_P |= ARMV8_SHA1; -+ -+ if (ID_AA64ISAR0_SHA2(cpu_id) >= ID_AA64ISAR0_SHA2_BASE) -+ OPENSSL_armcap_P |= ARMV8_SHA256; -+ -+ if (ID_AA64ISAR0_SHA2(cpu_id) >= ID_AA64ISAR0_SHA2_512) -+ OPENSSL_armcap_P |= ARMV8_SHA512; -+} -+ -+#endif // OPENSSL_AARCH64 && OPENSSL_OPENBSD && !OPENSSL_STATIC_ARMCAP diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_aesni-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_aesni-x86__64.pl deleted file mode 100644 index eec96103d4ec..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_aesni-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesni-x86_64.pl.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesni-x86_64.pl -@@ -3778,6 +3778,7 @@ ___ - } - - $code.=<<___; -+.rodata - .align 64 - .Lbswap_mask: - .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -@@ -3800,6 +3801,7 @@ $code.=<<___; - - .asciz "AES for Intel AES-NI, CRYPTOGAMS by <appro\@openssl.org>" - .align 64 -+.previous - ___ - - # EXCEPTION_DISPOSITION handler (EXCEPTION_RECORD *rec,ULONG64 frame, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_vpaes-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_vpaes-x86__64.pl deleted file mode 100644 index a12e445991f2..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_aes_asm_vpaes-x86__64.pl +++ /dev/null @@ -1,10 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/aes/asm/vpaes-x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/aes/asm/vpaes-x86_64.pl -@@ -1288,6 +1288,7 @@ _vpaes_preheat: - ## ## - ######################################################## - .type _vpaes_consts,\@object -+.rodata - .align 64 - _vpaes_consts: - .Lk_inv: # inv, inva diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_bn_asm_x86__64-mont5.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_bn_asm_x86__64-mont5.pl deleted file mode 100644 index f7ef4e8e55ba..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_bn_asm_x86__64-mont5.pl +++ /dev/null @@ -1,16 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/bn/asm/x86_64-mont5.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/bn/asm/x86_64-mont5.pl -@@ -3576,11 +3576,13 @@ $code.=<<___; - ___ - } - $code.=<<___; -+.rodata - .align 64 - .Linc: - .long 0,0, 1,1 - .long 2,2, 2,2 - .asciz "Montgomery Multiplication with scatter/gather for x86_64, CRYPTOGAMS by <appro\@openssl.org>" -+.previous - ___ - - # EXCEPTION_DISPOSITION handler (EXCEPTION_RECORD *rec,ULONG64 frame, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_ec_asm_p256-x86__64-asm.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_ec_asm_p256-x86__64-asm.pl deleted file mode 100644 index 383c6889b710..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_ec_asm_p256-x86__64-asm.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl -@@ -62,6 +62,7 @@ $code.=<<___; - .extern OPENSSL_ia32cap_P - - # The polynomial -+.rodata - .align 64 - .Lpoly: - .quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001 -@@ -80,6 +81,7 @@ $code.=<<___; - .quad 0xf3b9cac2fc632551, 0xbce6faada7179e84, 0xffffffffffffffff, 0xffffffff00000000 - .LordK: - .quad 0xccd1c8aaee00bc4f -+.previous - ___ - - { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_aesni-gcm-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_aesni-gcm-x86__64.pl deleted file mode 100644 index e28864dfceb4..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_aesni-gcm-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl -@@ -1053,6 +1053,7 @@ $code.=<<___; - ___ - - $code.=<<___; -+.rodata - .align 64 - .Lbswap_mask: - .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -@@ -1066,6 +1067,7 @@ $code.=<<___; - .byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - .asciz "AES-NI GCM module for x86_64, CRYPTOGAMS by <appro\@openssl.org>" - .align 64 -+.previous - ___ - }}} else {{{ - $code=<<___; # assembler is too old diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-ssse3-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-ssse3-x86__64.pl deleted file mode 100644 index 2cea056c5b0c..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-ssse3-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghash-ssse3-x86_64.pl.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghash-ssse3-x86_64.pl -@@ -331,6 +331,7 @@ $code .= <<____; - .seh_endproc - .size gcm_ghash_ssse3,.-gcm_ghash_ssse3 - -+.rodata - .align 16 - # .Lreverse_bytes is a permutation which, if applied with pshufb, reverses the - # bytes in an XMM register. -@@ -339,6 +340,7 @@ $code .= <<____; - # .Llow4_mask is an XMM mask which selects the low four bits of each byte. - .Llow4_mask: - .quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f -+.previous - ____ - - print $code; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-x86__64.pl deleted file mode 100644 index 4124a866436a..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_asm_ghash-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghash-x86_64.pl.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghash-x86_64.pl -@@ -1297,6 +1297,7 @@ ___ - } - - $code.=<<___; -+.rodata - .align 64 - .Lbswap_mask: - .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 -@@ -1308,6 +1309,7 @@ $code.=<<___; - - .asciz "GHASH for x86_64, CRYPTOGAMS by <appro\@openssl.org>" - .align 64 -+.previous - ___ - - $code =~ s/\`([^\`]*)\`/eval($1)/gem; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_rand_internal.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_rand_internal.h deleted file mode 100644 index 29b0a6683006..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_rand_internal.h +++ /dev/null @@ -1,12 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/rand/internal.h.orig 2022-09-24 10:57:32 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/rand/internal.h -@@ -27,7 +27,8 @@ extern "C" { - - - #if !defined(OPENSSL_WINDOWS) && !defined(OPENSSL_FUCHSIA) && \ -- !defined(BORINGSSL_UNSAFE_DETERMINISTIC_MODE) && !defined(OPENSSL_TRUSTY) -+ !defined(BORINGSSL_UNSAFE_DETERMINISTIC_MODE) && !defined(OPENSSL_TRUSTY) && \ -+ !defined(OPENSSL_ARC4RANDOM) - #define OPENSSL_URANDOM - #endif - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha1-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha1-x86__64.pl deleted file mode 100644 index 387ba2cba7af..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha1-x86__64.pl +++ /dev/null @@ -1,18 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/sha/asm/sha1-x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/sha/asm/sha1-x86_64.pl -@@ -1815,6 +1815,7 @@ ___ - } - } - $code.=<<___; -+.rodata - .align 64 - K_XX_XX: - .long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 # K_00_19 -@@ -1833,6 +1834,7 @@ ___ - $code.=<<___; - .asciz "SHA1 block transform for x86_64, CRYPTOGAMS by <appro\@openssl.org>" - .align 64 -+.previous - ___ - - # EXCEPTION_DISPOSITION handler (EXCEPTION_RECORD *rec,ULONG64 frame, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha512-x86__64.pl b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha512-x86__64.pl deleted file mode 100644 index 49553e42ba57..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_sha_asm_sha512-x86__64.pl +++ /dev/null @@ -1,30 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/sha/asm/sha512-x86_64.pl.orig 2023-02-08 09:03:45 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/sha/asm/sha512-x86_64.pl -@@ -404,6 +404,7 @@ ___ - - if ($SZ==4) { - $code.=<<___; -+.rodata - .align 64 - .type $TABLE,\@object - $TABLE: -@@ -447,9 +448,11 @@ $TABLE: - .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 - .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 - .asciz "SHA256 block transform for x86_64, CRYPTOGAMS by <appro\@openssl.org>" -+.previous - ___ - } else { - $code.=<<___; -+.rodata - .align 64 - .type $TABLE,\@object - $TABLE: -@@ -537,6 +540,7 @@ $TABLE: - .quad 0x0001020304050607,0x08090a0b0c0d0e0f - .quad 0x0001020304050607,0x08090a0b0c0d0e0f - .asciz "SHA512 block transform for x86_64, CRYPTOGAMS by <appro\@openssl.org>" -+.previous - ___ - } - diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_rand__extra_arc4random.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_rand__extra_arc4random.c deleted file mode 100644 index 0c920ae35733..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_rand__extra_arc4random.c +++ /dev/null @@ -1,36 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/rand_extra/arc4random.c.orig 2022-02-07 13:39:41 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/rand_extra/arc4random.c -@@ -0,0 +1,33 @@ -+/* Copyright (c) 2018, Robert Nagy <robert@openbsd.org> -+ * -+ * Permission to use, copy, modify, and/or distribute this software for any -+ * purpose with or without fee is hereby granted, provided that the above -+ * copyright notice and this permission notice appear in all copies. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION -+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN -+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -+ -+#define _BSD_SOURCE 1 -+ -+#include <openssl/rand.h> -+ -+#if defined(OPENSSL_ARC4RANDOM) && !defined(BORINGSSL_UNSAFE_DETERMINISTIC_MODE) -+ -+#include <stdlib.h> -+ -+#include "../fipsmodule/rand/internal.h" -+ -+void CRYPTO_sysrand_for_seed(uint8_t *out, size_t requested) { -+ CRYPTO_sysrand(out, requested); -+} -+ -+void CRYPTO_sysrand(uint8_t *out, size_t requested) { -+ arc4random_buf(out, requested); -+} -+ -+#endif // OPENSSL_ARC4RANDOM && !BORINGSSL_UNSAFE_DETERMINISTIC_MODE diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_refcount__c11.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_refcount__c11.c deleted file mode 100644 index 25cae0821ee0..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_refcount__c11.c +++ /dev/null @@ -1,12 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/crypto/refcount_c11.c.orig 2022-09-24 10:57:32 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/refcount_c11.c -@@ -22,6 +22,9 @@ - #include <stdatomic.h> - #include <stdlib.h> - -+#if !defined(__cplusplus) && !defined(static_assert) -+#define static_assert _Static_assert -+#endif - - // See comment above the typedef of CRYPTO_refcount_t about these tests. - static_assert(alignof(CRYPTO_refcount_t) == alignof(_Atomic CRYPTO_refcount_t), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_base.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_base.h deleted file mode 100644 index 209350e7f0a6..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_base.h +++ /dev/null @@ -1,14 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/include/openssl/base.h.orig 2023-04-05 11:05:06 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/include/openssl/base.h -@@ -151,6 +151,11 @@ extern "C" { - #define OPENSSL_FUCHSIA - #endif - -+#if defined(__OpenBSD__) -+#define OPENSSL_OPENBSD -+#define OPENSSL_ARC4RANDOM -+#endif -+ - #if defined(__TRUSTY__) - #define OPENSSL_TRUSTY - #define OPENSSL_NO_THREADS_CORRUPT_MEMORY_AND_LEAK_SECRETS_IF_THREADED diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_thread.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_thread.h deleted file mode 100644 index b62795e17f60..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_thread.h +++ /dev/null @@ -1,10 +0,0 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/include/openssl/thread.h.orig 2022-05-19 14:06:27 UTC -+++ src/3rdparty/chromium/third_party/boringssl/src/include/openssl/thread.h -@@ -78,6 +78,7 @@ typedef union crypto_mutex_st { - void *handle; - } CRYPTO_MUTEX; - #elif !defined(__GLIBC__) -+#include <pthread.h> - typedef pthread_rwlock_t CRYPTO_MUTEX; - #else - // On glibc, |pthread_rwlock_t| is hidden under feature flags, and we can't diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_util_generate__build__files.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_util_generate__build__files.py index 3759a6f23805..3efd7510b554 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_util_generate__build__files.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_util_generate__build__files.py @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/boringssl/src/util/generate_build_files.py.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/boringssl/src/util/generate_build_files.py.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/boringssl/src/util/generate_build_files.py -@@ -785,10 +785,10 @@ def main(platforms): +@@ -766,10 +766,10 @@ def main(platforms): ] # Generate err_data.c @@ -15,7 +15,7 @@ crypto_c_files.append('err_data.c') crypto_c_files.sort() -@@ -801,11 +801,11 @@ def main(platforms): +@@ -780,11 +780,11 @@ def main(platforms): crypto_test_files = [] if EMBED_TEST_DATA: # Generate crypto_test_data.cc @@ -29,6 +29,6 @@ +# ['go', 'run', 'util/embed_test_data.go'] + cmake['CRYPTO_TEST_DATA'], +# cwd='src', +# stdout=out) - crypto_test_files += ['crypto_test_data.cc'] + crypto_test_files.append('crypto_test_data.cc') - crypto_test_files += FindCFiles(os.path.join('src', 'crypto'), OnlyTests) + crypto_test_files += PrefixWithSrc(cmake['CRYPTO_TEST_SOURCES']) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_cpuinfo_cpuinfo.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_cpuinfo_cpuinfo.gni new file mode 100644 index 000000000000..fb61d3ecf290 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_cpuinfo_cpuinfo.gni @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/cpuinfo/cpuinfo.gni.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/third_party/cpuinfo/cpuinfo.gni +@@ -7,7 +7,7 @@ use_cpuinfo = + current_cpu != "ppc64" && current_cpu != "ppc64le" && + current_cpu != "s390" && current_cpu != "s390x" && + # cpuinfo is not supported on fuchsia. +- !is_fuchsia && ++ !is_fuchsia && !is_bsd && + # There's a few arm architectures that are not supported by cpuinfo, + # especially amongst ChromeOS devices. + # See //third_party/cpuinfo/src/src/arm/linux/cp.h. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_build_crashpad__buildconfig.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_build_crashpad__buildconfig.gni new file mode 100644 index 000000000000..14c9411abecc --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_build_crashpad__buildconfig.gni @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/build/crashpad_buildconfig.gni.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/build/crashpad_buildconfig.gni +@@ -61,7 +61,7 @@ if (crashpad_is_in_chromium) { + crashpad_is_ios = is_ios + crashpad_is_apple = is_apple + crashpad_is_win = is_win +- crashpad_is_linux = is_linux || is_chromeos ++ crashpad_is_linux = (is_linux || is_chromeos) && !is_bsd + crashpad_is_android = is_android + crashpad_is_fuchsia = is_fuchsia + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_BUILD.gn new file mode 100644 index 000000000000..8964a52ea7f7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_BUILD.gn @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/client/BUILD.gn.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/client/BUILD.gn +@@ -137,6 +137,13 @@ static_library("common") { + if (crashpad_is_win) { + sources += [ "crash_report_database_win.cc" ] + } ++ ++ if (crashpad_is_posix) { ++ sources += [ ++ "crashpad_client_posix.cc", ++ ] ++ } ++ + if (crashpad_is_linux || crashpad_is_android || crashpad_is_fuchsia) { + sources += [ + "crash_report_database_generic.cc", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_crashpad__client__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_crashpad__client__posix.cc new file mode 100644 index 000000000000..eaa3a41627ed --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_client_crashpad__client__posix.cc @@ -0,0 +1,43 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/client/crashpad_client_posix.cc.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/client/crashpad_client_posix.cc +@@ -0,0 +1,40 @@ ++// Copyright 2017 The Crashpad Authors. All rights reserved. ++// ++// Licensed under the Apache License, Version 2.0 (the "License"); ++// you may not use this file except in compliance with the License. ++// You may obtain a copy of the License at ++// ++// http://www.apache.org/licenses/LICENSE-2.0 ++// ++// Unless required by applicable law or agreed to in writing, software ++// distributed under the License is distributed on an "AS IS" BASIS, ++// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ++// See the License for the specific language governing permissions and ++// limitations under the License. ++ ++#include "client/crashpad_client.h" ++ ++#include "base/logging.h" ++#include "base/notreached.h" ++ ++namespace crashpad { ++ ++CrashpadClient::CrashpadClient() {} ++ ++CrashpadClient::~CrashpadClient() {} ++ ++bool CrashpadClient::StartHandler( ++ const base::FilePath& handler, ++ const base::FilePath& database, ++ const base::FilePath& metrics_dir, ++ const std::string& url, ++ const std::map<std::string, std::string>& annotations, ++ const std::vector<std::string>& arguments, ++ bool restartable, ++ bool asynchronous_start, ++ const std::vector<base::FilePath>& attachments) { ++ NOTREACHED(); // TODO(scottmg): https://crashpad.chromium.org/bug/196 ++ return false; ++} ++ ++} // namespace crashpad diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_minidump_minidump__misc__info__writer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_minidump_minidump__misc__info__writer.cc new file mode 100644 index 000000000000..f337430eb9d6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_minidump_minidump__misc__info__writer.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc.orig 2022-07-22 17:30:31 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc +@@ -159,6 +159,10 @@ std::string MinidumpMiscInfoDebugBuildString() { + static constexpr char kOS[] = "win"; + #elif BUILDFLAG(IS_FUCHSIA) + static constexpr char kOS[] = "fuchsia"; ++#elif defined(OS_OPENBSD) ++ static constexpr char kOS[] = "openbsd"; ++#elif defined(OS_FREEBSD) ++ static constexpr char kOS[] = "freebsd"; + #else + #error define kOS for this operating system + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_address__types.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_address__types.h new file mode 100644 index 000000000000..ada89edcb833 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_address__types.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/address_types.h.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/address_types.h +@@ -25,7 +25,7 @@ + #include <mach/mach_types.h> + #elif BUILDFLAG(IS_WIN) + #include "util/win/address_types.h" +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include "util/linux/address_types.h" + #elif BUILDFLAG(IS_FUCHSIA) + #include <zircon/types.h> +@@ -55,7 +55,7 @@ using VMSize = mach_vm_size_t; + using VMAddress = WinVMAddress; + using VMSize = WinVMSize; + +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + + using VMAddress = LinuxVMAddress; + using VMSize = LinuxVMSize; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_capture__context.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_capture__context.h new file mode 100644 index 000000000000..fddd74c41f77 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_capture__context.h @@ -0,0 +1,22 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/capture_context.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/capture_context.h +@@ -21,7 +21,8 @@ + #include <mach/mach.h> + #elif BUILDFLAG(IS_WIN) + #include <windows.h> +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ ++ BUILDFLAG(IS_FREEBSD) + #include <ucontext.h> + #endif // BUILDFLAG(IS_APPLE) + +@@ -35,7 +36,8 @@ using NativeCPUContext = arm_unified_thread_state; + #endif + #elif BUILDFLAG(IS_WIN) + using NativeCPUContext = CONTEXT; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ ++ BUILDFLAG(IS_BSD) + using NativeCPUContext = ucontext_t; + #endif // BUILDFLAG(IS_APPLE) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_metrics.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_metrics.cc new file mode 100644 index 000000000000..ae45aff49a98 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_metrics.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/metrics.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/metrics.cc +@@ -25,7 +25,7 @@ + #define METRICS_OS_NAME "Win" + #elif BUILDFLAG(IS_ANDROID) + #define METRICS_OS_NAME "Android" +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #define METRICS_OS_NAME "Linux" + #elif BUILDFLAG(IS_FUCHSIA) + #define METRICS_OS_NAME "Fuchsia" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_uuid.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_uuid.cc new file mode 100644 index 000000000000..022e44d4763e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_misc_uuid.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/uuid.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/misc/uuid.cc +@@ -101,7 +101,7 @@ bool UUID::InitializeWithNew() { + InitializeFromBytes(uuid); + return true; + #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + // Linux, Android, and Fuchsia do not provide a UUID generator in a + // widely-available system library. On Linux and Android, uuid_generate() + // from libuuid is not available everywhere. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_close__multiple.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_close__multiple.cc new file mode 100644 index 000000000000..051d9df2784d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_close__multiple.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/close_multiple.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/close_multiple.cc +@@ -72,7 +72,7 @@ void CloseNowOrOnExec(int fd, bool ebadf_ok) { + // This is an advantage over looping over all possible file descriptors, because + // no attempt needs to be made to close file descriptors that are not open. + bool CloseMultipleNowOrOnExecUsingFDDir(int min_fd, int preserve_fd) { +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + static constexpr char kFDDir[] = "/dev/fd"; + #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + static constexpr char kFDDir[] = "/proc/self/fd"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_drop__privileges.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_drop__privileges.cc new file mode 100644 index 000000000000..07d2646d3883 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_drop__privileges.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/drop_privileges.cc.orig 2022-02-28 16:54:41 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/drop_privileges.cc +@@ -25,7 +25,7 @@ void DropPrivileges() { + gid_t gid = getgid(); + uid_t uid = getuid(); + +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + // Based on the POSIX.1-2008 2013 edition documentation for setreuid() and + // setregid(), setreuid() and setregid() alone should be sufficient to drop + // privileges. The standard specifies that the saved ID should be set to the diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_signals.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_signals.cc new file mode 100644 index 000000000000..af3e3cb7d4d0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_signals.cc @@ -0,0 +1,33 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/signals.cc.orig 2022-08-31 12:19:35 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/signals.cc +@@ -51,7 +51,7 @@ constexpr int kCrashSignals[] = { + #if defined(SIGEMT) + SIGEMT, + #endif // defined(SIGEMT) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + SIGXCPU, + SIGXFSZ, + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +@@ -91,7 +91,7 @@ constexpr int kTerminateSignals[] = { + SIGXCPU, + SIGXFSZ, + #endif // BUILDFLAG(IS_APPLE) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + SIGIO, + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + }; +@@ -251,8 +251,12 @@ bool Signals::WillSignalReraiseAutonomously(const sigi + // remains. See 10.12.3 xnu-3789.41.3/bsd/kern/kern_sig.c + // psignal_internal(). + (code > 0 && ++#if defined(SI_ASYNCIO) + code != SI_ASYNCIO && ++#endif ++#if defined(SI_MESGQ) + code != SI_MESGQ && ++#endif + code != SI_QUEUE && + code != SI_TIMER && + code != SI_USER && diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_symbolic__constants__posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_symbolic__constants__posix.cc new file mode 100644 index 000000000000..4de23be51e5a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crashpad_crashpad_util_posix_symbolic__constants__posix.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/symbolic_constants_posix.cc.orig 2022-04-21 18:48:31 UTC ++++ src/3rdparty/chromium/third_party/crashpad/crashpad/util/posix/symbolic_constants_posix.cc +@@ -67,7 +67,7 @@ constexpr const char* kSignalNames[] = { + "INFO", + "USR1", + "USR2", +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #if defined(ARCH_CPU_MIPS_FAMILY) + "HUP", + "INT", +@@ -138,7 +138,7 @@ constexpr const char* kSignalNames[] = { + #endif // defined(ARCH_CPU_MIPS_FAMILY) + #endif + }; +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + // NSIG is 64 to account for real-time signals. + static_assert(std::size(kSignalNames) == 32, "kSignalNames length"); + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crc32c_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crc32c_BUILD.gn index 43f6c7e72760..f6bf968b709f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crc32c_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_crc32c_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/crc32c/BUILD.gn.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/third_party/crc32c/BUILD.gn.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/crc32c/BUILD.gn -@@ -47,7 +47,7 @@ config("crc32c_config") { +@@ -46,7 +46,7 @@ config("crc32c_config") { } # Android added <sys/auxv.h> in API level 18. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_dawn_include_dawn_native_VulkanBackend.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_dawn_include_dawn_native_VulkanBackend.h index 790f62477c31..bb7e4435422f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_dawn_include_dawn_native_VulkanBackend.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_dawn_include_dawn_native_VulkanBackend.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/dawn/include/dawn/native/VulkanBackend.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/third_party/dawn/include/dawn/native/VulkanBackend.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/dawn/include/dawn/native/VulkanBackend.h -@@ -82,7 +82,7 @@ struct ExternalImageExportInfoVk : ExternalImageExport +@@ -80,7 +80,7 @@ struct ExternalImageExportInfoVk : ExternalImageExport }; // Can't use DAWN_PLATFORM_IS(LINUX) since header included in both Dawn and Chrome diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_BUILD.gn new file mode 100644 index 000000000000..4917ac78d8ac --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_BUILD.gn @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/BUILD.gn.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/BUILD.gn +@@ -357,7 +357,6 @@ target(link_target_type, "ffmpeg_internal") { + libs += [ + "m", + "z", +- "rt", + ] + } + if (is_component_ffmpeg) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_build__ffmpeg.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_build__ffmpeg.py new file mode 100644 index 000000000000..7399348201c9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_build__ffmpeg.py @@ -0,0 +1,121 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/chromium/scripts/build_ffmpeg.py.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/chromium/scripts/build_ffmpeg.py +@@ -32,7 +32,7 @@ NDK_ROOT_DIR = os.path.abspath( + SUCCESS_TOKEN = 'THIS_BUILD_WORKED' + + sys.path.append(os.path.join(CHROMIUM_ROOT_DIR, 'build')) +-import gn_helpers ++#import gn_helpers + + BRANDINGS = [ + 'Chrome', +@@ -45,6 +45,8 @@ ARCH_MAP = { + 'linux': [ + 'ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64' + ], ++ 'openbsd': ['x64', 'arm64', 'ia32'], ++ 'freebsd': ['x64', 'arm64', 'ia32'], + 'mac': ['x64', 'arm64'], + 'win': ['ia32', 'x64', 'arm64'], + } +@@ -54,6 +56,8 @@ USAGE_END = """ + Valid combinations are android [%(android)s] + linux [%(linux)s] + mac [%(mac)s] ++ openbsd [%(openbsd)s] ++ freebsd [%(freebsd)s] + win [%(win)s] + + If no target architecture is specified all will be built. +@@ -126,6 +130,10 @@ def PrintAndCheckCall(argv, *args, **kwargs): + def DetermineHostOsAndArch(): + if platform.system() == 'Linux': + host_os = 'linux' ++ if platform.system() == 'OpenBSD': ++ host_os = 'openbsd' ++ elif platform.system() == 'FreeBSD': ++ host_os = 'freebsd' + elif platform.system() == 'Darwin': + host_os = 'mac' + elif platform.system() == 'Windows' or 'CYGWIN_NT' in platform.system(): +@@ -135,7 +143,7 @@ def DetermineHostOsAndArch(): + + if re.match(r'i.86', platform.machine()): + host_arch = 'ia32' +- elif platform.machine() == 'x86_64' or platform.machine() == 'AMD64': ++ elif platform.machine() == 'x86_64' or platform.machine() == 'AMD64' or platform.machine() == 'amd64': + host_arch = 'x64' + elif platform.machine() == 'aarch64': + host_arch = 'arm64' +@@ -152,7 +160,7 @@ def DetermineHostOsAndArch(): + + + def GetDsoName(target_os, dso_name, dso_version): +- if target_os in ('linux', 'linux-noasm', 'android'): ++ if target_os in ('linux', 'linux-noasm', 'android', 'openbsd', 'freebsd'): + return 'lib%s.so.%s' % (dso_name, dso_version) + elif target_os == 'mac': + return 'lib%s.%s.dylib' % (dso_name, dso_version) +@@ -495,7 +503,7 @@ def BuildFFmpeg(target_os, target_arch, host_os, host_ + # removing <sys/sysctl.h> soon, so this is needed to silence a deprecation + # #warning which will be converted to an error via -Werror. + # There is also no prctl.h +- if target_os in ['linux', 'linux-noasm']: ++ if target_os in ['linux', 'linux-noasm', 'openbsd', 'freebsd']: + pre_make_rewrites += [ + (r'(#define HAVE_SYSCTL [01])', + r'#define HAVE_SYSCTL 0 /* \1 -- forced to 0 for Fuchsia */'), +@@ -622,7 +630,7 @@ def main(argv): + configure_args = args[2:] + + +- if target_os not in ('android', 'linux', 'linux-noasm', 'mac', 'win', 'all'): ++ if target_os not in ('android', 'linux', 'linux-noasm', 'mac', 'win', 'all', 'openbsd', 'freebsd'): + parser.print_help() + return 1 + +@@ -744,7 +752,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, + '--enable-parser=vp3,vp8', + ]) + +- if target_os in ('linux', 'linux-noasm', 'android'): ++ if target_os in ('linux', 'linux-noasm', 'android', 'openbsd', 'freebsd'): + if target_arch == 'x64': + if target_os == 'android': + configure_flags['Common'].extend([ +@@ -754,7 +762,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, + configure_flags['Common'].extend([ + '--enable-lto', + '--arch=x86_64', +- '--target-os=linux', ++ '--target-os=' + target_os, + ]) + + if host_arch != 'x64': +@@ -845,7 +853,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, + '--extra-cflags=-mfpu=vfpv3-d16', + ]) + elif target_arch == 'arm64': +- if target_os != 'android': ++ if target_os != 'android' and target_os != 'openbsd' and target_os != 'freebsd': + if host_arch != 'arm64': + configure_flags['Common'].extend([ + '--enable-cross-compile', +@@ -910,7 +918,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, + '--disable-mips64r2', + '--enable-msa', + ]) +- if target_os == 'linux': ++ if target_os == 'Linux': + configure_flags['Common'].extend([ + '--enable-cross-compile', + '--target-os=linux', +@@ -1061,7 +1069,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, + 'Chrome', configure_flags['Common'] + configure_flags['ChromeAndroid'] + + configure_args) + +- if target_os in ['linux', 'linux-noasm']: ++ if target_os in ['linux', 'linux-noasm', 'openbsd', 'freebsd']: + # ChromeOS enables MPEG4 which requires error resilience :( + chrome_os_flags = ( + configure_flags['Common'] + configure_flags['Chrome'] + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_robo__lib_config.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_robo__lib_config.py new file mode 100644 index 000000000000..c75d668bf1be --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_chromium_scripts_robo__lib_config.py @@ -0,0 +1,53 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/chromium/scripts/robo_lib/config.py.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/chromium/scripts/robo_lib/config.py +@@ -35,7 +35,7 @@ class RoboConfiguration: + self._patches_commit_title = "Chromium patches file" + # Title of the commit with README.chromium + self._readme_chromium_commit_title = "README.chromium file" +- self.EnsureHostInfo() ++ #self.EnsureHostInfo() + self.EnsureChromeSrc() + self.EnsureScriptDirectory() + +@@ -47,18 +47,15 @@ class RoboConfiguration: + self._llvm_path = os.path.join(self.chrome_src(), "third_party", + "llvm-build", "Release+Asserts", "bin") + +- self.EnsurePathContainsLLVM() +- self.EnsureNoMakeInfo() ++ #self.EnsurePathContainsLLVM() ++ #self.EnsureNoMakeInfo() + self.EnsureFFmpegHome() + self.EnsureASANConfig() +- self.ComputeBranchName() ++ #self.ComputeBranchName() + if not quiet: + shell.log(f"Using chrome src: {self.chrome_src()}") + shell.log(f"Using script dir: {self._script_directory}") + shell.log(f"Using ffmpeg home:{self.ffmpeg_home()}") +- shell.log(f"On branch: {self.branch_name()}") +- if self.sushi_branch_name(): +- shell.log(f"On sushi branch: {self.sushi_branch_name()}") + + # Filename that we'll ask generate_gn.py to write git commands to. + # TODO: Should this use script_directory, or stay with ffmpeg? As long as +@@ -149,7 +146,7 @@ class RoboConfiguration: + """Ensure that the host architecture and platform are set.""" + kernel, host, os, *rest = shell.output_or_error(["uname", "-a"]).split() + assert kernel in ("Linux", "linux") +- assert "x86_64" in rest ++ assert ("x86_64", "amd64") in rest + self._host_operating_system = "linux" + self._host_architecture = "x64" + +@@ -165,8 +162,8 @@ class RoboConfiguration: + wd = os.getcwd() + # Walk up the tree until we find src/AUTHORS + while wd != "/": +- if os.path.isfile(os.path.join(wd, "src", "AUTHORS")): +- self._chrome_src = os.path.join(wd, "src") ++ if os.path.isfile(os.path.join(wd, "third_party", "DEPS")): ++ self._chrome_src = wd + return + wd = os.path.dirname(wd) + raise Exception("could not find src/AUTHORS in any parent of the wd") diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_configure b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_configure new file mode 100644 index 000000000000..7978d8f99f43 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_configure @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/configure.orig 2023-10-12 11:37:12 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/configure +@@ -5613,6 +5613,7 @@ case $target_os in + disable symver + ;; + freebsd) ++ enable section_data_rel_ro + ;; + bsd/os) + add_extralibs -lpoll -lgnugetopt diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_cabac.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_cabac.h new file mode 100644 index 000000000000..67db6588d1e4 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_cabac.h @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/cabac.h.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/cabac.h +@@ -31,7 +31,8 @@ + + #if (defined(__i386) && defined(__clang__) && (__clang_major__<2 || (__clang_major__==2 && __clang_minor__<10)))\ + || ( !defined(__clang__) && defined(__llvm__) && __GNUC__==4 && __GNUC_MINOR__==2 && __GNUC_PATCHLEVEL__<=1)\ +- || (defined(__INTEL_COMPILER) && defined(_MSC_VER)) ++ || (defined(__INTEL_COMPILER) && defined(_MSC_VER)) \ ++ || ((defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386)) + # define BROKEN_COMPILER 1 + #else + # define BROKEN_COMPILER 0 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_fft.asm b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_fft.asm new file mode 100644 index 000000000000..54e1caaeae4e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavcodec_x86_fft.asm @@ -0,0 +1,108 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/fft.asm.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/fft.asm +@@ -296,6 +296,7 @@ INIT_YMM avx + %if HAVE_AVX_EXTERNAL + align 16 + fft8_avx: ++ _CET_ENDBR + mova m0, Z(0) + mova m1, Z(1) + T8_AVX m0, m1, m2, m3, m4 +@@ -306,6 +307,7 @@ fft8_avx: + + align 16 + fft16_avx: ++ _CET_ENDBR + mova m2, Z(2) + mova m3, Z(3) + T4_SSE m2, m3, m7 +@@ -343,6 +345,7 @@ fft16_avx: + + align 16 + fft32_avx: ++ _CET_ENDBR + call fft16_avx + + mova m0, Z(4) +@@ -367,6 +370,7 @@ fft32_avx: + ret + + fft32_interleave_avx: ++ _CET_ENDBR + call fft32_avx + mov r2d, 32 + .deint_loop: +@@ -390,6 +394,7 @@ INIT_XMM sse + align 16 + fft4_avx: + fft4_sse: ++ _CET_ENDBR + mova m0, Z(0) + mova m1, Z(1) + T4_SSE m0, m1, m2 +@@ -399,6 +404,7 @@ fft4_sse: + + align 16 + fft8_sse: ++ _CET_ENDBR + mova m0, Z(0) + mova m1, Z(1) + T4_SSE m0, m1, m2 +@@ -413,6 +419,7 @@ fft8_sse: + + align 16 + fft16_sse: ++ _CET_ENDBR + mova m0, Z(0) + mova m1, Z(1) + T4_SSE m0, m1, m2 +@@ -441,6 +448,7 @@ fft16_sse: + %macro DECL_PASS 2+ ; name, payload + align 16 + %1: ++ _CET_ENDBR + DEFINE_ARGS zc, w, n, o1, o3 + lea o3q, [nq*3] + lea o1q, [nq*8] +@@ -457,10 +465,6 @@ DEFINE_ARGS zc, w, n, o1, o3 + %macro FFT_DISPATCH 2; clobbers 5 GPRs, 8 XMMs + lea r2, [dispatch_tab%1] + mov r2, [r2 + (%2q-2)*gprsize] +-%ifdef PIC +- lea r3, [$$] +- add r2, r3 +-%endif + call r2 + %endmacro ; FFT_DISPATCH + +@@ -585,11 +589,7 @@ cglobal imdct_calc, 3,5,3 + jl .loop + RET + +-%ifdef PIC +-%define SECTION_REL - $$ +-%else + %define SECTION_REL +-%endif + + %macro DECL_FFT 1-2 ; nbits, suffix + %ifidn %0, 1 +@@ -613,6 +613,7 @@ cglobal imdct_calc, 3,5,3 + + align 16 + fft %+ n %+ fullsuffix: ++ _CET_ENDBR + call fft %+ n2 %+ SUFFIX + add r0, n*4 - (n&(-2<<%1)) + call fft %+ n4 %+ SUFFIX +@@ -627,8 +628,10 @@ fft %+ n %+ fullsuffix: + %endrep + %undef n + ++[SECTION .data.rel.ro write] + align 8 + dispatch_tab %+ fullsuffix: pointer list_of_fft ++__?SECT?__ + %endmacro ; DECL_FFT + + %if HAVE_AVX_EXTERNAL diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_cpu.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_cpu.c new file mode 100644 index 000000000000..bdf96b980918 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_cpu.c @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavutil/cpu.c.orig 2022-07-22 17:30:31 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavutil/cpu.c +@@ -38,10 +38,7 @@ + #if HAVE_GETPROCESSAFFINITYMASK || HAVE_WINRT + #include <windows.h> + #endif +-#if HAVE_SYSCTL +-#if HAVE_SYS_PARAM_H +-#include <sys/param.h> +-#endif ++#if HAVE_SYSCTL && !defined(__OpenBSD__) + #include <sys/types.h> + #include <sys/sysctl.h> + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c new file mode 100644 index 000000000000..ee8d0e6f047f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavutil/mem.c.orig 2022-05-19 14:06:27 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavutil/mem.c +@@ -33,9 +33,6 @@ + #include <stdlib.h> + #include <stdatomic.h> + #include <string.h> +-#if HAVE_MALLOC_H +-#include <malloc.h> +-#endif + + #include "attributes.h" + #include "avassert.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_random__seed.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_random__seed.c new file mode 100644 index 000000000000..56f6d74cfa8e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_random__seed.c @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavutil/random_seed.c.orig 2023-09-13 13:13:30 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavutil/random_seed.c +@@ -35,6 +35,11 @@ + #elif CONFIG_OPENSSL + #include <openssl/rand.h> + #endif ++#if HAVE_ARC4RANDOM_BUF ++#undef __BSD_VISIBLE ++#define __BSD_VISIBLE 1 ++#include <stdlib.h> ++#endif + #include <fcntl.h> + #include <math.h> + #include <time.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_x86_x86inc.asm b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_x86_x86inc.asm new file mode 100644 index 000000000000..b7c6baa11d8b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_x86_x86inc.asm @@ -0,0 +1,23 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavutil/x86/x86inc.asm.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavutil/x86/x86inc.asm +@@ -53,6 +53,12 @@ + %endif + %endif + ++%if ARCH_X86_64 ++ %define _CET_ENDBR endbr64 ++%else ++ %define _CET_ENDBR ++%endif ++ + %define WIN64 0 + %define UNIX64 0 + %if ARCH_X86_64 +@@ -768,6 +774,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, + %endif + align function_align + %2: ++ _CET_ENDBR + RESET_MM_PERMUTATION ; needed for x86-64, also makes disassembly somewhat nicer + %xdefine rstk rsp ; copy of the original stack pointer, used when greater alignment than the known stack alignment is required + %assign stack_offset 0 ; stack pointer offset relative to the return address diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_include_config.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_include_config.h new file mode 100644 index 000000000000..5e821ba16c3d --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_include_config.h @@ -0,0 +1,89 @@ +--- src/3rdparty/chromium/third_party/fontconfig/include/config.h.orig 2023-04-05 11:05:06 UTC ++++ src/3rdparty/chromium/third_party/fontconfig/include/config.h +@@ -18,13 +18,13 @@ + #define ENABLE_NLS 1 + + /* Additional font directories */ +-#define FC_ADD_FONTS "yes" ++#define FC_ADD_FONTS "/usr/local/share/fonts" + + /* Architecture prefix to use for cache file names */ + /* #undef FC_ARCHITECTURE */ + + /* System font directory */ +-#define FC_DEFAULT_FONTS "<dir>/usr/share/fonts</dir>" ++#define FC_DEFAULT_FONTS "<dir>/usr/X11R6/lib/X11/fonts</dir>" + + /* The type of len parameter of the gperf hash/lookup function */ + #define FC_GPERF_SIZE_T size_t +@@ -99,7 +99,7 @@ + #define HAVE_GETPAGESIZE 1 + + /* Define to 1 if you have the `getprogname' function. */ +-/* #undef HAVE_GETPROGNAME */ ++#define HAVE_GETPROGNAME 1 + + /* Define if the GNU gettext() function is already present or preinstalled. */ + #define HAVE_GETTEXT 1 +@@ -141,7 +141,7 @@ + /* #undef HAVE_NDIR_H */ + + /* Define to 1 if you have the 'posix_fadvise' function. */ +-#define HAVE_POSIX_FADVISE 1 ++#define HAVE_POSIX_FADVISE 0 + + /* Have POSIX threads */ + #define HAVE_PTHREAD 1 +@@ -156,11 +156,14 @@ + #define HAVE_RANDOM 1 + + /* Define to 1 if you have the `random_r' function. */ +-#define HAVE_RANDOM_R 1 ++/* #undef HAVE_RANDOM_R */ + + /* Define to 1 if you have the `rand_r' function. */ + #define HAVE_RAND_R 1 + ++/* Define to 1 if you have the `arc4_random' function. */ ++#define HAVE_ARC4RANDOM 1 ++ + /* Define to 1 if you have the `readlink' function. */ + #define HAVE_READLINK 1 + +@@ -204,7 +207,7 @@ + #define HAVE_STRUCT_STATFS_F_FLAGS 1 + + /* Define to 1 if `f_fstypename' is a member of `struct statfs'. */ +-/* #undef HAVE_STRUCT_STATFS_F_FSTYPENAME */ ++#define HAVE_STRUCT_STATFS_F_FSTYPENAME 1 + + /* Define to 1 if `f_basetype' is a member of `struct statvfs'. */ + /* #undef HAVE_STRUCT_STATVFS_F_BASETYPE */ +@@ -230,7 +233,7 @@ + #define HAVE_SYS_PARAM_H 1 + + /* Define to 1 if you have the <sys/statfs.h> header file. */ +-#define HAVE_SYS_STATFS_H 1 ++/* #undef HAVE_SYS_STATFS_H */ + + /* Define to 1 if you have the <sys/statvfs.h> header file. */ + #define HAVE_SYS_STATVFS_H 1 +@@ -242,7 +245,7 @@ + #define HAVE_SYS_TYPES_H 1 + + /* Define to 1 if you have the <sys/vfs.h> header file. */ +-#define HAVE_SYS_VFS_H 1 ++/* #undef HAVE_SYS_VFS_H */ + + /* Define to 1 if you have the <unistd.h> header file. */ + #define HAVE_UNISTD_H 1 +@@ -265,7 +268,8 @@ + /* Define to 1 if you have the `_mktemp_s' function. */ + /* #undef HAVE__MKTEMP_S */ + +-/* Define to the sub-directory where libtool stores uninstalled libraries. */ ++/* Define to the sub-directory in which libtool stores uninstalled libraries. ++ */ + #define LT_OBJDIR ".libs/" + + /* Name of package */ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_src_src_fccompat.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_src_src_fccompat.c new file mode 100644 index 000000000000..d61aaa4c78cc --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_fontconfig_src_src_fccompat.c @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/third_party/fontconfig/src/src/fccompat.c.orig 2023-04-05 11:05:06 UTC ++++ src/3rdparty/chromium/third_party/fontconfig/src/src/fccompat.c +@@ -184,7 +184,9 @@ FcRandom(void) + { + int32_t result; + +-#if HAVE_RANDOM_R ++#if HAVE_ARC4RANDOM ++ result = arc4random() & 0x7fffffff; ++#elif HAVE_RANDOM_R + static struct random_data fcrandbuf; + static char statebuf[256]; + static FcBool initialized = FcFalse; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ipcz_src_reference__drivers_random.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ipcz_src_reference__drivers_random.cc index 07420a924166..37f7dfaef0fc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ipcz_src_reference__drivers_random.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_ipcz_src_reference__drivers_random.cc @@ -1,16 +1,16 @@ ---- src/3rdparty/chromium/third_party/ipcz/src/reference_drivers/random.cc.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/third_party/ipcz/src/reference_drivers/random.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/ipcz/src/reference_drivers/random.cc -@@ -15,7 +15,7 @@ - #include <limits> +@@ -14,7 +14,7 @@ + #include <windows.h> #elif BUILDFLAG(IS_FUCHSIA) #include <zircon/syscalls.h> -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include <asm/unistd.h> - #include <errno.h> #include <sys/syscall.h> -@@ -78,7 +78,7 @@ void RandomBytes(absl::Span<uint8_t> destination) { - ABSL_ASSERT(ok); + #include <unistd.h> +@@ -86,7 +86,7 @@ void RandomBytes(absl::Span<uint8_t> destination) { + process_prng_fn(destination.data(), destination.size()); #elif BUILDFLAG(IS_FUCHSIA) zx_cprng_draw(destination.data(), destination.size()); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_leveldatabase_env__chromium.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_leveldatabase_env__chromium.cc index c42f7036b5ad..d3327af989cd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_leveldatabase_env__chromium.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_leveldatabase_env__chromium.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/leveldatabase/env_chromium.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/leveldatabase/env_chromium.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/leveldatabase/env_chromium.cc -@@ -318,7 +318,8 @@ ChromiumWritableFile::ChromiumWritableFile(const std:: +@@ -320,7 +320,8 @@ ChromiumWritableFile::ChromiumWritableFile(const std:: Status ChromiumWritableFile::SyncParent() { TRACE_EVENT0("leveldb", "SyncParent"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libaom_source_libaom_aom__ports_aarch64__cpudetect.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libaom_source_libaom_aom__ports_aarch64__cpudetect.c new file mode 100644 index 000000000000..e9a5a5d7dccb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libaom_source_libaom_aom__ports_aarch64__cpudetect.c @@ -0,0 +1,39 @@ +--- src/3rdparty/chromium/third_party/libaom/source/libaom/aom_ports/aarch64_cpudetect.c.orig 2023-09-17 18:22:45 UTC ++++ src/3rdparty/chromium/third_party/libaom/source/libaom/aom_ports/aarch64_cpudetect.c +@@ -85,13 +85,35 @@ static int arm_get_cpu_caps(void) { + return flags; + } + +-#elif defined(ANDROID_USE_CPU_FEATURES_LIB) ++#elif defined(ANDROID_USE_CPU_FEATURES_LIB) || defined(__FreeBSD__) + + static int arm_get_cpu_caps(void) { + int flags = 0; + #if HAVE_NEON + flags |= HAS_NEON; // Neon is mandatory in Armv8.0-A. + #endif // HAVE_NEON ++ return flags; ++} ++ ++#elif defined(__OpenBSD__) ++#include <sys/sysctl.h> ++#include <machine/cpu.h> ++#include <machine/armreg.h> ++ ++static int arm_get_cpu_caps(void) { ++ int flags = 0; ++ int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 }; ++ uint64_t cpu_id = 0; ++ size_t len = sizeof(cpu_id); ++ ++ flags |= HAS_NEON; // Neon is mandatory in Armv8.0-A. ++ ++ if (sysctl(isar0_mib, 2, &cpu_id, &len, NULL, 0) < 0) ++ return flags; ++ ++ if (ID_AA64ISAR0_AES(cpu_id) >= ID_AA64ISAR0_CRC32_BASE) ++ flags |= HAS_ARM_CRC32; ++ + return flags; + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libsync_src_sync.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libsync_src_sync.c index 4506da637606..7ea69d700512 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libsync_src_sync.c +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libsync_src_sync.c @@ -1,16 +1,16 @@ ---- src/3rdparty/chromium/third_party/libsync/src/sync.c.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/third_party/libsync/src/sync.c.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/libsync/src/sync.c -@@ -17,7 +17,9 @@ +@@ -17,8 +17,8 @@ */ #include <fcntl.h> -+#if !defined(__OpenBSD__) - #include <malloc.h> -+#endif +-#include <malloc.h> #include <stdint.h> ++#include <stdlib.h> #include <string.h> #include <errno.h> -@@ -29,6 +31,12 @@ + #include <poll.h> +@@ -29,6 +29,12 @@ #include <sync/sync.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_BUILD.gn new file mode 100644 index 000000000000..22b7c68e1787 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_BUILD.gn @@ -0,0 +1,52 @@ +--- src/3rdparty/chromium/third_party/libusb/BUILD.gn.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/libusb/BUILD.gn +@@ -3,7 +3,7 @@ + # found in the LICENSE file. + + # libusb is only used by //services/device/usb on macOS. +-assert(is_mac) ++assert(is_mac || is_bsd) + + import("//build/config/chromeos/ui_mode.gni") + import("//build/config/features.gni") +@@ -103,7 +103,7 @@ static_library("libusb") { + ] + } + +- if (is_linux || is_chromeos) { ++ if ((is_linux || is_chromeos) && !is_bsd) { + sources += [ + "src/libusb/os/linux_usbfs.c", + "src/libusb/os/linux_usbfs.h", +@@ -114,11 +114,21 @@ static_library("libusb") { + ] + } + ++ if (is_openbsd) { ++ sources += [ ++ "src/libusb/os/openbsd_usb.c", ++ ] ++ defines += [ ++ "OS_OPENBSD=1", ++ "_GNU_SOURCE=1", ++ ] ++ } ++ + if (is_chromeos_ash) { + defines += [ "USBI_TIMERFD_AVAILABLE" ] + } + +- if (use_udev) { ++ if (use_udev && !is_bsd) { + sources += [ "src/libusb/os/linux_udev.cc" ] + defines += [ + "HAVE_LIBUDEV=1", +@@ -127,7 +137,7 @@ static_library("libusb") { + deps += [ "//build/linux/libudev" ] + } + +- if ((is_linux || is_chromeos) && !use_udev) { ++ if ((is_linux || is_chromeos) && !use_udev && !is_bsd) { + sources += [ "src/libusb/os/linux_netlink.c" ] + defines += [ "HAVE_LINUX_NETLINK_H" ] + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_core.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_core.c new file mode 100644 index 000000000000..e26d42ffdd14 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_core.c @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/libusb/src/libusb/core.c.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/libusb/src/libusb/core.c +@@ -448,7 +448,7 @@ libusb_free_device_list(list, 1); + * which grows when required. it can be freed once discovery has completed, + * eliminating the need for a list node in the libusb_device structure + * itself. */ +-#define DISCOVERED_DEVICES_SIZE_STEP 8 ++#define DISCOVERED_DEVICES_SIZE_STEP 16 + + static struct discovered_devs *discovered_devs_alloc(void) + { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_os_threads__posix.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_os_threads__posix.c new file mode 100644 index 000000000000..369d72508877 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libusb_src_libusb_os_threads__posix.c @@ -0,0 +1,24 @@ +--- src/3rdparty/chromium/third_party/libusb/src/libusb/os/threads_posix.c.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/third_party/libusb/src/libusb/os/threads_posix.c +@@ -19,9 +19,11 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +-#if defined(__linux__) || defined(__OpenBSD__) ++#if defined(__linux__) + # include <unistd.h> + # include <sys/syscall.h> ++#elif defined(__OpenBSD__) ++# include <unistd.h> + #elif defined(__APPLE__) + # include <mach/mach.h> + #elif defined(__CYGWIN__) +@@ -65,7 +67,7 @@ int usbi_get_tid(void) + #elif defined(__OpenBSD__) + /* The following only works with OpenBSD > 5.1 as it requires + real thread support. For 5.1 and earlier, -1 is returned. */ +- ret = syscall(SYS_getthrid); ++ ret = getthrid(); + #elif defined(__APPLE__) + ret = mach_thread_self(); + mach_port_deallocate(mach_task_self(), ret); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_linux_config.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_linux_config.h new file mode 100644 index 000000000000..34e828185f7b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_linux_config.h @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/libxml/linux/config.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/libxml/linux/config.h +@@ -69,6 +69,9 @@ + /* Define to 1 if you have the <pthread.h> header file. */ + #define HAVE_PTHREAD_H /**/ + ++/* Define to 1 if you have the `arc4random' function. */ ++#define HAVE_ARC4RANDOM 1 ++ + /* Define to 1 if you have the `rand_r' function. */ + + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_src_dict.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_src_dict.c new file mode 100644 index 000000000000..ce42ad8fb0f6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_libxml_src_dict.c @@ -0,0 +1,41 @@ +--- src/3rdparty/chromium/third_party/libxml/src/dict.c.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/third_party/libxml/src/dict.c +@@ -133,7 +133,7 @@ struct _xmlDict { + static xmlMutex xmlDictMutex; + + #ifdef DICT_RANDOMIZATION +-#ifdef HAVE_RAND_R ++#if defined(HAVE_RAND_R) && !defined(HAVE_ARC4RANDOM) + /* + * Internal data for random function, protected by xmlDictMutex + */ +@@ -160,7 +160,7 @@ int xmlInitializeDict(void) { + int __xmlInitializeDict(void) { + xmlInitMutex(&xmlDictMutex); + +-#ifdef DICT_RANDOMIZATION ++#if defined(DICT_RANDOMIZATION) && !defined(HAVE_ARC4RANDOM) + #ifdef HAVE_RAND_R + rand_seed = time(NULL); + rand_r(& rand_seed); +@@ -175,13 +175,17 @@ int __xmlInitializeDict(void) { + int __xmlRandom(void) { + int ret; + ++#ifdef HAVE_ARC4RANDOM ++ ret = arc4random(); ++#else + xmlMutexLock(&xmlDictMutex); +-#ifdef HAVE_RAND_R ++# ifdef HAVE_RAND_R + ret = rand_r(& rand_seed); +-#else ++# else + ret = rand(); +-#endif ++# endif + xmlMutexUnlock(&xmlDictMutex); ++#endif + return(ret); + } + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_lzma__sdk_C_CpuArch.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_lzma__sdk_C_CpuArch.c new file mode 100644 index 000000000000..de897e5ab5f8 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_lzma__sdk_C_CpuArch.c @@ -0,0 +1,44 @@ +--- src/3rdparty/chromium/third_party/lzma_sdk/C/CpuArch.c.orig 2022-09-04 11:56:14 UTC ++++ src/3rdparty/chromium/third_party/lzma_sdk/C/CpuArch.c +@@ -412,12 +412,40 @@ BoolInt CPU_IsSupported_SHA1(void) { return APPLE_CRYP + BoolInt CPU_IsSupported_SHA2(void) { return APPLE_CRYPTO_SUPPORT_VAL; } + BoolInt CPU_IsSupported_AES (void) { return APPLE_CRYPTO_SUPPORT_VAL; } + ++#elif defined(__OpenBSD__) + ++#include <sys/param.h> ++#include <sys/sysctl.h> ++#include <machine/cpu.h> ++#include <machine/armreg.h> ++ ++BoolInt CPU_IsSupported_NEON() { return 1; } ++ ++#define MY_HWCAP_CHECK_FUNC_2(name1, name2) \ ++ BoolInt CPU_IsSupported_ ## name1() { \ ++ int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 }; \ ++ size_t len = sizeof(uint64_t); \ ++ uint64_t cpu_id = 0; \ ++ if (sysctl(isar0_mib, 2, &cpu_id, &len, NULL, 0) < 0) \ ++ return 0; \ ++ if (ID_AA64ISAR0_ ## name2(cpu_id) >= ID_AA64ISAR0_## name2 ##_BASE) \ ++ return 1; \ ++ return 0; \ ++ } ++ ++#define MY_HWCAP_CHECK_FUNC(name) \ ++ MY_HWCAP_CHECK_FUNC_2(name, name) ++ ++MY_HWCAP_CHECK_FUNC (CRC32) ++MY_HWCAP_CHECK_FUNC (SHA1) ++MY_HWCAP_CHECK_FUNC (SHA2) ++MY_HWCAP_CHECK_FUNC (AES) ++ + #else // __APPLE__ + + #include <sys/auxv.h> + +-#if !defined(ARMV8_OS_FUCHSIA) ++#if !defined(ARMV8_OS_FUCHSIA) && !defined(__FreeBSD__) + #define USE_HWCAP + #endif // !defined(ARMV8_OS_FUCHSIA) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_BUILD.gn new file mode 100644 index 000000000000..22f2c7c85230 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_BUILD.gn @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/third_party/maldoca/BUILD.gn.orig 2023-04-05 11:05:06 UTC ++++ src/3rdparty/chromium/third_party/maldoca/BUILD.gn +@@ -264,6 +264,10 @@ source_set("maldoca-public-headers") { + ":maldoca_chromium_config", + ":maldoca_flags", + ] ++ ++ if (is_bsd) { ++ libs = [ "iconv" ] ++ } + } + + static_library("maldoca") { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_base_get__runfiles__dir.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_base_get__runfiles__dir.cc new file mode 100644 index 000000000000..012d63151999 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_base_get__runfiles__dir.cc @@ -0,0 +1,32 @@ +--- src/3rdparty/chromium/third_party/maldoca/src/maldoca/base/get_runfiles_dir.cc.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/maldoca/src/maldoca/base/get_runfiles_dir.cc +@@ -24,11 +24,6 @@ + #error "__APPLE__ not supported." + #endif + +-#if defined(__FreeBSD__) +-// TODO(#110) FreeBSD-specific headers. +-#error "__FreeBSD__ not supported." +-#endif +- + #if defined(_WIN32) + #include <windows.h> + #define PATH_MAX MAX_PATH +@@ -50,8 +45,6 @@ std::string GetExecutablePath() { + char exe_path[PATH_MAX] = {0}; + #ifdef __APPLE__ + #error "__APPLE__ not supported."; +-#elif defined(__FreeBSD__) +-#error "__FreeBSD__ not supported."; + #elif defined(_WIN32) + HMODULE hModule = GetModuleHandleW(NULL); + WCHAR wc_file_path[MAX_PATH] = {0}; +@@ -97,8 +90,6 @@ std::string GetExecutablePath() { + absl::Status IsDirectory(const std::string& name) { + #ifdef __APPLE__ + #error "__APPLE__ not supported."; +-#elif defined(__FreeBSD__) +-#error "__FreeBSD__ not supported."; + #else + struct stat sbuf; + if (stat(name.c_str(), &sbuf) != 0) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_service_common_process__doc__wrapper.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_service_common_process__doc__wrapper.cc new file mode 100644 index 000000000000..1124a33989b5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_maldoca_src_maldoca_service_common_process__doc__wrapper.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/third_party/maldoca/src/maldoca/service/common/process_doc_wrapper.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/maldoca/src/maldoca/service/common/process_doc_wrapper.cc +@@ -7,7 +7,7 @@ + #include "build/build_config.h" + + #include "base/files/file_util.h" +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/strings/string_util.h" + #else + #include "base/strings/string_util_win.h" +@@ -21,7 +21,7 @@ namespace third_party_maldoca { + + + bool ExtensionEqualInCaseSensitive(base::FilePath file_path, std::string extension){ +- #if defined(OS_LINUX) ++ #if defined(OS_LINUX) || BUILDFLAG(IS_BSD) + std::string file_extension = file_path.FinalExtension(); + return base::CompareCaseInsensitiveASCII(file_extension, extension) == 0; + #else +@@ -74,7 +74,7 @@ void AnalyzeOfficeDocument(base::File office_file, + maldoca::DocProcessor doc_processor(processor_config); + + maldoca::ProcessDocumentRequest process_doc_request; +- #if defined(OS_LINUX) ++ #if defined(OS_LINUX) || BUILDFLAG(IS_BSD) + const std::string file_name = file_path.BaseName().value().c_str(); + process_doc_request.set_file_name(file_name); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_material__color__utilities_src_cpp_palettes_tones.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_material__color__utilities_src_cpp_palettes_tones.cc new file mode 100644 index 000000000000..5756f922f7d5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_material__color__utilities_src_cpp_palettes_tones.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/material_color_utilities/src/cpp/palettes/tones.cc.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/material_color_utilities/src/cpp/palettes/tones.cc +@@ -14,6 +14,8 @@ + * limitations under the License. + */ + ++#include <cmath> ++ + #include "cpp/palettes/tones.h" + + #include <cmath> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_node_node.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_node_node.py new file mode 100644 index 000000000000..8252cc43cf87 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_node_node.py @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/node/node.py.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/node/node.py +@@ -35,6 +35,8 @@ def GetBinaryPath(): + return os_path.join(os_path.dirname(__file__), *{ + 'Darwin': ('mac', darwin_name, 'bin', 'node'), + 'Linux': ('linux', 'node-linux-x64', 'bin', 'node'), ++ 'OpenBSD': ('openbsd', 'node-openbsd', 'bin', 'node'), ++ 'FreeBSD': ('freebsd', 'node-freebsd', 'bin', 'node'), + 'Windows': ('win', 'node.exe'), + }[platform.system()]) + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxge_cfx__fontmapper.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxge_cfx__fontmapper.cpp index 841874419cc8..cefcd897251a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxge_cfx__fontmapper.cpp +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxge_cfx__fontmapper.cpp @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/pdfium/core/fxge/cfx_fontmapper.cpp.orig 2022-09-24 10:57:32 UTC +--- src/3rdparty/chromium/third_party/pdfium/core/fxge/cfx_fontmapper.cpp.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/pdfium/core/fxge/cfx_fontmapper.cpp @@ -157,7 +157,7 @@ constexpr AltFontFamily kAltFontFamilies[] = { {"ForteMT", "Forte"}, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_pdfium.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_pdfium.gni index 5a5ccd520ed8..838db5141373 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_pdfium.gni +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_pdfium.gni @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/third_party/pdfium/pdfium.gni.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/third_party/pdfium/pdfium.gni.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/pdfium/pdfium.gni -@@ -42,7 +42,7 @@ declare_args() { - pdf_use_cxx20 = is_win && is_component_build - - # Build PDFium with PartitionAlloc as the memory allocator. +@@ -46,7 +46,7 @@ declare_args() { + # PDFium will use PartitionAlloc partitions to separate strings, scalars, + # etc. from other allocations. However, the use of PartitionAlloc for new or + # malloc is controlled by args in build_overrides/partition_alloc.gni. - pdf_use_partition_alloc = pdf_use_partition_alloc_override + pdf_use_partition_alloc = pdf_use_partition_alloc_override && use_partition_alloc_as_malloc - # Build PDFium to use Skia (experimental) for all PDFium graphics. - # If enabled, coexists in build with AGG graphics and the default + # Temporary config allowing chromium to switch its location of the + # partition_alloc library. https://crbug.com/1467773 diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_compiler__specific.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_compiler__specific.h new file mode 100644 index 000000000000..0479b60ec02a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_compiler__specific.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/pdfium/third_party/base/compiler_specific.h.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/third_party/pdfium/third_party/base/compiler_specific.h +@@ -17,7 +17,7 @@ + // Annotate a function indicating it should not be inlined. + // Use like: + // NOINLINE void DoStuff() { ... } +-#if defined(__clang__) && HAS_ATTRIBUTE(noinline) ++#if defined(__clang__) && (__clang_major__ >= 15) && HAS_ATTRIBUTE(noinline) + #define NOINLINE [[clang::noinline]] + #elif defined(COMPILER_GCC) && HAS_ATTRIBUTE(noinline) + #define NOINLINE __attribute__((noinline)) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_tracing_track__event__legacy.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_tracing_internal_track__event__legacy.h index 26507d13fb91..01cf9543d4f4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_tracing_track__event__legacy.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_tracing_internal_track__event__legacy.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/perfetto/include/perfetto/tracing/track_event_legacy.h.orig 2023-04-05 11:59:13 UTC -+++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/tracing/track_event_legacy.h -@@ -267,7 +267,7 @@ class PERFETTO_EXPORT_COMPONENT LegacyTraceId { +--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/tracing/internal/track_event_legacy.h.orig 2023-04-28 17:01:32 UTC ++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/tracing/internal/track_event_legacy.h +@@ -249,7 +249,7 @@ class PERFETTO_EXPORT_COMPONENT LegacyTraceId { // are different. E.g. on Mac size_t is considered a different type from // uint64_t even though it has the same size and signedness. // Below we add overloads for those types that are known to cause ambiguity. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc index 94ef36aa2b95..18afd297453e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/perfetto/src/base/unix_socket.cc.orig 2022-10-24 13:33:33 UTC +--- src/3rdparty/chromium/third_party/perfetto/src/base/unix_socket.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/perfetto/src/base/unix_socket.cc -@@ -42,7 +42,7 @@ +@@ -44,7 +44,7 @@ #include <unistd.h> #endif @@ -9,7 +9,7 @@ #include <sys/ucred.h> #endif -@@ -803,9 +803,13 @@ void UnixSocket::ReadPeerCredentialsPosix() { +@@ -917,9 +917,13 @@ void UnixSocket::ReadPeerCredentialsPosix() { return; PERFETTO_CHECK(peer_cred_mode_ != SockPeerCredMode::kIgnore); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_trace__processor_db_storage_numeric__storage.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_trace__processor_db_storage_numeric__storage.cc new file mode 100644 index 000000000000..565f390bca05 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_trace__processor_db_storage_numeric__storage.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/storage/numeric_storage.cc.orig 2023-10-14 11:56:57 UTC ++++ src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/storage/numeric_storage.cc +@@ -245,8 +245,13 @@ BitVector NumericStorage::LinearSearch(FilterOp op, + } else if (const auto* i32 = std::get_if<int32_t>(&*val)) { + auto* start = static_cast<const int32_t*>(data_) + range.start; + TypedLinearSearch(*i32, start, op, builder); ++#if (defined(__OpenBSD__) || defined(__FreeBSD__)) && defined(__i386__) ++ } else if (const auto* db = std::get_if<long double>(&*val)) { ++ auto* start = static_cast<const long double*>(data_) + range.start; ++#else + } else if (const auto* db = std::get_if<double>(&*val)) { + auto* start = static_cast<const double*>(data_) + range.start; ++#endif + TypedLinearSearch(*db, start, op, builder); + } else { + PERFETTO_DFATAL("Invalid"); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc index a9d978192472..6efdf1fe26fe 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/perfetto/src/tracing/core/tracing_service_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/third_party/perfetto/src/tracing/core/tracing_service_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/perfetto/src/tracing/core/tracing_service_impl.cc -@@ -3122,7 +3122,8 @@ bool TracingServiceImpl::SnapshotClocks( +@@ -3213,7 +3213,8 @@ bool TracingServiceImpl::SnapshotClocks( #if !PERFETTO_BUILDFLAG(PERFETTO_OS_APPLE) && \ !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) && \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_ipc_memfd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_ipc_memfd.cc new file mode 100644 index 000000000000..fb3732693530 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_ipc_memfd.cc @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/perfetto/src/tracing/ipc/memfd.cc.orig 2023-09-13 18:23:44 UTC ++++ src/3rdparty/chromium/third_party/perfetto/src/tracing/ipc/memfd.cc +@@ -20,7 +20,8 @@ + + #define PERFETTO_MEMFD_ENABLED() \ + PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \ +- PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) ++ (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) && \ ++ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) + + #if PERFETTO_MEMFD_ENABLED() + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_track.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_track.cc new file mode 100644 index 000000000000..fdff02b8b3c7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_track.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/perfetto/src/tracing/track.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/third_party/perfetto/src/tracing/track.cc +@@ -143,7 +143,7 @@ namespace internal { + namespace { + + uint64_t GetProcessStartTime() { +-#if !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) ++#if !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) && !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD) + std::string stat; + if (!base::ReadFile("/proc/self/stat", &stat)) + return 0u; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_core_SkCpu.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_core_SkCpu.cpp deleted file mode 100644 index 85318d909ea7..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_core_SkCpu.cpp +++ /dev/null @@ -1,69 +0,0 @@ ---- src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp.orig 2023-11-20 16:08:07 UTC -+++ src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp -@@ -73,6 +73,42 @@ - return features; - } - -+#elif defined(SK_CPU_ARM64) && defined(__OpenBSD__) -+ #include <sys/sysctl.h> -+ #include <machine/cpu.h> -+ #include <machine/armreg.h> -+ -+ static uint32_t read_cpu_features() { -+ int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 }; -+ size_t len = sizeof(uint64_t); -+ uint64_t cpu_id = 0; -+ uint32_t features = 0; -+ -+ if (sysctl(isar0_mib, 2, &cpu_id, &len, NULL, 0) == 0) { -+ if (ID_AA64ISAR0_CRC32(cpu_id) >= ID_AA64ISAR0_CRC32_BASE) -+ features |= SkCpu::CRC32; -+ } -+ -+ return features; -+ } -+ -+#elif defined(SK_CPU_ARM64) && defined(__FreeBSD__) -+ #include <machine/armreg.h> -+ #ifndef ID_AA64ISAR0_CRC32_VAL -+ #define ID_AA64ISAR0_CRC32_VAL ID_AA64ISAR0_CRC32 -+ #endif -+ -+ static uint32_t read_cpu_features() { -+ uint32_t features = 0; -+ uint64_t id_aa64isar0; -+ -+ id_aa64isar0 = READ_SPECIALREG(id_aa64isar0_el1); -+ if (ID_AA64ISAR0_CRC32_VAL(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE) { -+ features |= SkCpu::CRC32; -+ } -+ return features; -+ } -+ - #elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>) - #include <sys/auxv.h> - -@@ -110,6 +146,23 @@ - if (std::size(buf) != midr_el1.read(buf, std::size(buf)) - || 0 == memcmp(kMongoose3, buf, std::size(buf))) { - features &= ~(SkCpu::ASIMDHP); -+ } -+ } -+ return features; -+ } -+ -+#elif defined(SK_CPU_ARM32) && defined(__FreeBSD__) -+ #include <sys/auxv.h> -+ -+ static uint32_t read_cpu_features() { -+ unsigned long hwcaps = 0; -+ uint32_t features = 0; -+ -+ elf_aux_info(AT_HWCAP, (void *)&hwcaps, sizeof hwcaps); -+ if (hwcaps & HWCAP_NEON) { -+ features |= SkCpu::NEON; -+ if (hwcaps & HWCAP_VFPv4) { -+ features |= SkCpu::NEON_FMA|SkCpu::VFP_FP16; - } - } - return features; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_sqlite_src_amalgamation_sqlite3.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_sqlite_src_amalgamation_sqlite3.c index a01061bd59ab..751b46f30d9d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_sqlite_src_amalgamation_sqlite3.c +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_sqlite_src_amalgamation_sqlite3.c @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/sqlite/src/amalgamation/sqlite3.c.orig 2023-04-20 13:16:39 UTC +--- src/3rdparty/chromium/third_party/sqlite/src/amalgamation/sqlite3.c.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/third_party/sqlite/src/amalgamation/sqlite3.c -@@ -43595,7 +43595,12 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB +@@ -43843,7 +43843,12 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB memset(zBuf, 0, nBuf); randomnessPid = osGetpid(0); #if !defined(SQLITE_TEST) && !defined(SQLITE_OMIT_RANDOMNESS) @@ -13,7 +13,7 @@ int fd, got; fd = robust_open("/dev/urandom", O_RDONLY, 0); if( fd<0 ){ -@@ -43610,6 +43615,7 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB +@@ -43858,6 +43863,7 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB robust_close(0, fd, __LINE__); } } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Reactor_Debug.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Reactor_Debug.cpp new file mode 100644 index 000000000000..7a5739bd8b76 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Reactor_Debug.cpp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/swiftshader/src/Reactor/Debug.cpp.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/swiftshader/src/Reactor/Debug.cpp +@@ -46,7 +46,7 @@ namespace { + + bool IsUnderDebugger() + { +-#if defined(PTRACE) && !defined(__APPLE__) && !defined(__MACH__) ++#if defined(PTRACE) && !defined(__APPLE__) && !defined(__MACH__) && !defined(__OpenBSD__) && !defined(__FreeBSD__) + static bool checked = false; + static bool res = false; + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Configurator.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Configurator.cpp new file mode 100644 index 000000000000..4f44dbe0672b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Configurator.cpp @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/swiftshader/src/System/Configurator.cpp.orig 2022-06-17 14:20:10 UTC ++++ src/3rdparty/chromium/third_party/swiftshader/src/System/Configurator.cpp +@@ -38,6 +38,9 @@ namespace sw { + + Configurator::Configurator(const std::string &filePath) + { ++#if defined(__OpenBSD__) || defined(__FreeBSD__) ++ return; ++#endif + std::fstream file(filePath, std::ios::in); + if(file.fail()) + { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Linux_MemFd.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Linux_MemFd.cpp new file mode 100644 index 000000000000..b29f4c1c736a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_System_Linux_MemFd.cpp @@ -0,0 +1,37 @@ +--- src/3rdparty/chromium/third_party/swiftshader/src/System/Linux/MemFd.cpp.orig 2023-09-13 18:23:44 UTC ++++ src/3rdparty/chromium/third_party/swiftshader/src/System/Linux/MemFd.cpp +@@ -25,6 +25,7 @@ + # define MFD_CLOEXEC 0x0001U + #endif + ++#if !defined(__OpenBSD__) && !defined(__FreeBSD__) + #if __aarch64__ + # define __NR_memfd_create 279 + #elif __arm__ +@@ -36,6 +37,7 @@ + #elif __x86_64__ + # define __NR_memfd_create 319 + #endif /* __NR_memfd_create__ */ ++#endif + + LinuxMemFd::~LinuxMemFd() + { +@@ -63,13 +65,17 @@ bool LinuxMemFd::allocate(const char *name, size_t siz + { + close(); + +-#ifndef __NR_memfd_create ++#if !defined(__NR_memfd_create) || defined(__OpenBSD__) + TRACE("memfd_create() not supported on this system!"); + return false; + #else + // In the event of no system call this returns -1 with errno set + // as ENOSYS. ++#if defined(__FreeBSD__) ++ fd_ = memfd_create(name, MFD_CLOEXEC); ++#else + fd_ = syscall(__NR_memfd_create, name, MFD_CLOEXEC); ++#endif + if(fd_ < 0) + { + TRACE("memfd_create() returned %d: %s", errno, strerror(errno)); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Vulkan_VkSemaphoreExternalLinux.hpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Vulkan_VkSemaphoreExternalLinux.hpp new file mode 100644 index 000000000000..9abee3a057df --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_Vulkan_VkSemaphoreExternalLinux.hpp @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkSemaphoreExternalLinux.hpp.orig 2022-02-07 13:39:41 UTC ++++ src/3rdparty/chromium/third_party/swiftshader/src/Vulkan/VkSemaphoreExternalLinux.hpp +@@ -49,13 +49,17 @@ class SharedSemaphore (public) + { + pthread_mutexattr_t mattr; + pthread_mutexattr_init(&mattr); ++#if 0 + pthread_mutexattr_setpshared(&mattr, PTHREAD_PROCESS_SHARED); ++#endif + pthread_mutex_init(&mutex, &mattr); + pthread_mutexattr_destroy(&mattr); + + pthread_condattr_t cattr; + pthread_condattr_init(&cattr); ++#if 0 + pthread_condattr_setpshared(&cattr, PTHREAD_PROCESS_SHARED); ++#endif + pthread_cond_init(&cond, &cattr); + pthread_condattr_destroy(&cattr); + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_WSI_libXCB.cpp b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_WSI_libXCB.cpp new file mode 100644 index 000000000000..befa5de154a5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_swiftshader_src_WSI_libXCB.cpp @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/third_party/swiftshader/src/WSI/libXCB.cpp.orig 2023-03-09 06:31:50 UTC ++++ src/3rdparty/chromium/third_party/swiftshader/src/WSI/libXCB.cpp +@@ -57,7 +57,7 @@ LibXcbExports *LibXCB::loadExports() + } + else + { +- libxcb = loadLibrary("libxcb.so.1"); ++ libxcb = loadLibrary("libxcb.so"); + } + + if(getProcAddress(RTLD_DEFAULT, "xcb_shm_query_version")) // Search the global scope for pre-loaded XCB library. +@@ -66,7 +66,7 @@ LibXcbExports *LibXCB::loadExports() + } + else + { +- libshm = loadLibrary("libxcb-shm.so.0"); ++ libshm = loadLibrary("libxcb-shm.so"); + } + + return LibXcbExports(libxcb, libshm); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_BUILD.gn new file mode 100644 index 000000000000..0ec45d02194b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_BUILD.gn @@ -0,0 +1,15 @@ +--- src/3rdparty/chromium/third_party/test_fonts/fontconfig/BUILD.gn.orig 2022-03-01 11:59:41 UTC ++++ src/3rdparty/chromium/third_party/test_fonts/fontconfig/BUILD.gn +@@ -26,7 +26,11 @@ if (is_linux || is_chromeos) { + + copy("fonts_conf") { + sources = [ "fonts.conf" ] +- outputs = [ "$root_out_dir/etc/fonts/{{source_file_part}}" ] ++ if (is_freebsd) { ++ outputs = [ "$root_out_dir/usr/local/etc/fonts/{{source_file_part}}" ] ++ } else { ++ outputs = [ "$root_out_dir/etc/fonts/{{source_file_part}}" ] ++ } + } + + if (current_toolchain == host_toolchain) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_fontconfig__util__linux.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_fontconfig__util__linux.cc new file mode 100644 index 000000000000..2166d1d0e2eb --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_fontconfig__util__linux.cc @@ -0,0 +1,27 @@ +--- src/3rdparty/chromium/third_party/test_fonts/fontconfig/fontconfig_util_linux.cc.orig 2022-03-25 21:59:56 UTC ++++ src/3rdparty/chromium/third_party/test_fonts/fontconfig/fontconfig_util_linux.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include "build/build_config.h" ++ + #include "third_party/test_fonts/fontconfig/fontconfig_util_linux.h" + + #include <fontconfig/fontconfig.h> +@@ -15,11 +17,15 @@ + namespace test_fonts { + + std::string GetSysrootDir() { ++#if BUILDFLAG(IS_BSD) ++ return std::string("."); ++#else + char buf[PATH_MAX + 1]; + auto count = readlink("/proc/self/exe", buf, PATH_MAX); + assert(count > 0); + buf[count] = '\0'; + return dirname(buf); ++#endif + } + + void SetUpFontconfig() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_generate__fontconfig__caches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_generate__fontconfig__caches.cc new file mode 100644 index 000000000000..ba43c4f788ae --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_generate__fontconfig__caches.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/test_fonts/fontconfig/generate_fontconfig_caches.cc.orig 2023-04-05 11:05:06 UTC ++++ src/3rdparty/chromium/third_party/test_fonts/fontconfig/generate_fontconfig_caches.cc +@@ -56,7 +56,7 @@ int main() { + FcFini(); + + // Check existence of intended fontconfig cache file. +- auto cache = fontconfig_caches + "/" + kCacheKey + "-le64.cache-9"; ++ auto cache = fontconfig_caches + "/" + kCacheKey + "-le64.cache-" + FC_CACHE_VERSION; + bool cache_exists = access(cache.c_str(), F_OK) == 0; + return !cache_exists; + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_BUILD.gn index a10cd1178266..bf385233e1f8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_BUILD.gn @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/BUILD.gn.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/BUILD.gn.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/BUILD.gn @@ -59,7 +59,7 @@ config("vulkan_internal_config") { defines += [ @@ -8,4 +8,4 @@ + "FALLBACK_DATA_DIRS=\"/usr/X11R6/share:/usr/local/share:/usr/share\"", ] } - } + if (!vulkan_loader_shared) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_loader_vk__loader__platform.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_loader_vk__loader__platform.h index 615a939c5599..78722a23698c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_loader_vk__loader__platform.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-loader_src_loader_vk__loader__platform.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/loader/vk_loader_platform.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/loader/vk_loader_platform.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/third_party/vulkan-deps/vulkan-loader/src/loader/vk_loader_platform.h -@@ -294,7 +294,15 @@ static inline char *loader_platform_executable_path(ch +@@ -304,7 +304,15 @@ static inline char *loader_platform_executable_path(ch return buffer; } @@ -15,5 +15,5 @@ +} +#elif defined(__Fuchsia__) static inline char *loader_platform_executable_path(char *buffer, size_t size) { return NULL; } - #elif defined(__QNXNTO__) + #elif defined(__QNX__) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-validation-layers_src_layers_vk__mem__alloc.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h index d759643467ec..262b38b443fc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-validation-layers_src_layers_vk__mem__alloc.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan-deps_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-validation-layers/src/layers/vk_mem_alloc.h.orig 2023-03-09 06:31:50 UTC -+++ src/3rdparty/chromium/third_party/vulkan-deps/vulkan-validation-layers/src/layers/vk_mem_alloc.h -@@ -2703,7 +2703,7 @@ static void* vma_aligned_alloc(size_t alignment, size_ +--- src/3rdparty/chromium/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h +@@ -2740,7 +2740,7 @@ static void* vma_aligned_alloc(size_t alignment, size_ return memalign(alignment, size); } -#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC)) +#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC)) || defined(__OpenBSD__) || defined(__FreeBSD__) - #define ALIGNED_ALLOC_WITH_POSIX_MEMALIGN - #elif defined(__GNU_LIBRARY__) - # if !defined(__GLIBC_PREREQ) || !__GLIBC_PREREQ(2, 16) + #include <cstdlib> + + #if defined(__APPLE__) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan__memory__allocator_include_vk__mem__alloc.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan__memory__allocator_include_vk__mem__alloc.h index 51abae4160d2..79fb83e67a78 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan__memory__allocator_include_vk__mem__alloc.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_vulkan__memory__allocator_include_vk__mem__alloc.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h @@ -2507,7 +2507,7 @@ void *vma_aligned_alloc(size_t alignment, size_t size) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_wayland_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_wayland_BUILD.gn new file mode 100644 index 000000000000..e7d1cf81aa50 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_wayland_BUILD.gn @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/third_party/wayland/BUILD.gn.orig 2023-02-08 15:40:14 UTC ++++ src/3rdparty/chromium/third_party/wayland/BUILD.gn +@@ -22,6 +22,11 @@ config("wayland_config") { + "src/src", + ] + ++ if (is_bsd) { ++ include_dirs += [ "/usr/local/include/libepoll-shim" ] ++ libs = [ "epoll-shim" ] ++ } ++ + # Client/Server headers are automatically generated. Though, we still need + # to pass the path where these headers are located. + include_dirs += [ "$root_gen_dir/third_party/wayland/src/protocol" ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_BUILD.gn index 8b8bdc8af8aa..ab2fc3d5a55d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/webrtc/BUILD.gn.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/webrtc/BUILD.gn.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/webrtc/BUILD.gn -@@ -211,6 +211,9 @@ config("common_inherited_config") { +@@ -216,6 +216,9 @@ config("common_inherited_config") { if (is_linux || is_chromeos) { defines += [ "WEBRTC_LINUX" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_audio__device_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_audio__device_BUILD.gn index 9b9fabb12f88..bbb9e9aecb9a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_audio__device_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_audio__device_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/webrtc/modules/audio_device/BUILD.gn.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/third_party/webrtc/modules/audio_device/BUILD.gn.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/third_party/webrtc/modules/audio_device/BUILD.gn -@@ -300,7 +300,7 @@ rtc_library("audio_device_impl") { +@@ -349,7 +349,7 @@ rtc_library("audio_device_impl") { if (rtc_use_dummy_audio_file_devices) { defines += [ "WEBRTC_DUMMY_FILE_DEVICES" ] } else { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_wayland_egl__dmabuf.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_wayland_egl__dmabuf.cc new file mode 100644 index 000000000000..d68e7a9f0a52 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_wayland_egl__dmabuf.cc @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc.orig 2023-08-23 11:41:11 UTC ++++ src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc +@@ -10,11 +10,15 @@ + + #include "modules/desktop_capture/linux/wayland/egl_dmabuf.h" + ++#if !defined(WEBRTC_BSD) + #include <asm/ioctl.h> ++#endif + #include <dlfcn.h> + #include <fcntl.h> + #include <libdrm/drm_fourcc.h> ++#if !defined(WEBRTC_BSD) + #include <linux/types.h> ++#endif + #include <spa/param/video/format-utils.h> + #include <unistd.h> + #include <xf86drm.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_x11_x__server__pixel__buffer.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_x11_x__server__pixel__buffer.cc index c3a3263e64d8..ced8e98eea09 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_x11_x__server__pixel__buffer.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_x11_x__server__pixel__buffer.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/x11/x_server_pixel_buffer.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/x11/x_server_pixel_buffer.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/x11/x_server_pixel_buffer.cc -@@ -212,6 +212,12 @@ bool XServerPixelBuffer::Init(XAtomCache* cache, Windo +@@ -203,6 +203,12 @@ bool XServerPixelBuffer::Init(XAtomCache* cache, Windo void XServerPixelBuffer::InitShm(const XWindowAttributes& attributes) { Visual* default_visual = attributes.visual; int default_depth = attributes.depth; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_pc_legacy__stats__collector.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_pc_legacy__stats__collector.cc index 7c8461b8c921..d2078c74e315 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_pc_legacy__stats__collector.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_pc_legacy__stats__collector.cc @@ -14,9 +14,9 @@ Date: 2023-12-21T14:08:26+01:00 Reviewed-by: Henrik Bostr旦m <hbos@webrtc.org> Cr-Commit-Position: refs/heads/main@{#41432} ---- src/3rdparty/chromium/third_party/webrtc/pc/legacy_stats_collector.cc.orig 2023-11-20 16:08:07 UTC +--- src/3rdparty/chromium/third_party/webrtc/pc/legacy_stats_collector.cc.orig 2024-02-10 00:27:53 UTC +++ src/3rdparty/chromium/third_party/webrtc/pc/legacy_stats_collector.cc -@@ -189,9 +189,10 @@ void ExtractStats(const cricket::VoiceReceiverInfo& in +@@ -188,9 +188,10 @@ void ExtractStats(const cricket::VoiceReceiverInfo& in {StatsReport::kStatsValueNameAccelerateRate, info.accelerate_rate}, {StatsReport::kStatsValueNamePreemptiveExpandRate, info.preemptive_expand_rate}, @@ -29,7 +29,7 @@ Date: 2023-12-21T14:08:26+01:00 const IntForAdd ints[] = { {StatsReport::kStatsValueNameCurrentDelayMs, info.delay_estimate_ms}, -@@ -245,9 +246,10 @@ void ExtractStats(const cricket::VoiceSenderInfo& info +@@ -244,9 +245,10 @@ void ExtractStats(const cricket::VoiceSenderInfo& info SetAudioProcessingStats(report, info.apm_statistics); const FloatForAdd floats[] = { @@ -42,7 +42,7 @@ Date: 2023-12-21T14:08:26+01:00 RTC_DCHECK_GE(info.audio_level, 0); const IntForAdd ints[] = { -@@ -341,7 +343,8 @@ void ExtractStats(const cricket::VideoReceiverInfo& in +@@ -340,7 +342,8 @@ void ExtractStats(const cricket::VideoReceiverInfo& in {StatsReport::kStatsValueNamePlisSent, info.plis_sent}, {StatsReport::kStatsValueNameRenderDelayMs, info.render_delay_ms}, {StatsReport::kStatsValueNameTargetDelayMs, info.target_delay_ms}, @@ -52,21 +52,21 @@ Date: 2023-12-21T14:08:26+01:00 }; for (const auto& i : ints) -@@ -385,15 +388,19 @@ void ExtractStats(const cricket::VideoSenderInfo& info +@@ -384,15 +387,19 @@ void ExtractStats(const cricket::VideoSenderInfo& info info.encode_usage_percent}, - {StatsReport::kStatsValueNameFirsReceived, info.firs_rcvd}, + {StatsReport::kStatsValueNameFirsReceived, info.firs_received}, {StatsReport::kStatsValueNameFrameHeightSent, info.send_frame_height}, - {StatsReport::kStatsValueNameFrameRateInput, round(info.framerate_input)}, + {StatsReport::kStatsValueNameFrameRateInput, + static_cast<int>(round(info.framerate_input))}, {StatsReport::kStatsValueNameFrameRateSent, info.framerate_sent}, {StatsReport::kStatsValueNameFrameWidthSent, info.send_frame_width}, -- {StatsReport::kStatsValueNameNacksReceived, info.nacks_rcvd}, +- {StatsReport::kStatsValueNameNacksReceived, info.nacks_received}, + {StatsReport::kStatsValueNameNacksReceived, -+ static_cast<int>(info.nacks_rcvd)}, ++ static_cast<int>(info.nacks_received)}, {StatsReport::kStatsValueNamePacketsLost, info.packets_lost}, {StatsReport::kStatsValueNamePacketsSent, info.packets_sent}, - {StatsReport::kStatsValueNamePlisReceived, info.plis_rcvd}, + {StatsReport::kStatsValueNamePlisReceived, info.plis_received}, - {StatsReport::kStatsValueNameFramesEncoded, info.frames_encoded}, - {StatsReport::kStatsValueNameHugeFramesSent, info.huge_frames_sent}, + {StatsReport::kStatsValueNameFramesEncoded, @@ -76,7 +76,7 @@ Date: 2023-12-21T14:08:26+01:00 }; for (const auto& i : ints) -@@ -782,19 +789,25 @@ StatsReport* LegacyStatsCollector::AddConnectionInfoRe +@@ -780,19 +787,25 @@ StatsReport* LegacyStatsCollector::AddConnectionInfoRe AddCandidateReport(remote_candidate_stats, false)->id()); const Int64ForAdd int64s[] = { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_net__test__helpers.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_net__test__helpers.cc new file mode 100644 index 000000000000..296ec5680e28 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_net__test__helpers.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/third_party/webrtc/rtc_base/net_test_helpers.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/third_party/webrtc/rtc_base/net_test_helpers.cc +@@ -21,6 +21,7 @@ + #endif + #if defined(WEBRTC_POSIX) && !defined(__native_client__) + #include <arpa/inet.h> ++#include <sys/socket.h> + #if defined(WEBRTC_ANDROID) + #include "rtc_base/ifaddrs_android.h" + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_network.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_network.cc index 27858ffdac55..38d531526387 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_network.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_network.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/webrtc/rtc_base/network.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/third_party/webrtc/rtc_base/network.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/third_party/webrtc/rtc_base/network.cc -@@ -288,7 +288,12 @@ AdapterType GetAdapterTypeFromName(absl::string_view n +@@ -292,7 +292,12 @@ AdapterType GetAdapterTypeFromName(absl::string_view n } #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.cc index 240bdcbb2e31..b3621f020698 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc -@@ -54,7 +54,7 @@ +@@ -56,7 +56,7 @@ #include "rtc_base/time_utils.h" #include "system_wrappers/include/field_trial.h" @@ -9,7 +9,7 @@ #include <linux/sockios.h> #endif -@@ -73,7 +73,7 @@ typedef void* SockOptArg; +@@ -75,7 +75,7 @@ typedef void* SockOptArg; #endif // WEBRTC_POSIX @@ -18,7 +18,7 @@ int64_t GetSocketRecvTimestamp(int socket) { struct timeval tv_ioctl; -@@ -308,7 +308,7 @@ int PhysicalSocket::GetOption(Option opt, int* value) +@@ -310,7 +310,7 @@ int PhysicalSocket::GetOption(Option opt, int* value) return -1; } if (opt == OPT_DONTFRAGMENT) { @@ -27,7 +27,7 @@ *value = (*value != IP_PMTUDISC_DONT) ? 1 : 0; #endif } else if (opt == OPT_DSCP) { -@@ -326,7 +326,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { +@@ -328,7 +328,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { if (TranslateOption(opt, &slevel, &sopt) == -1) return -1; if (opt == OPT_DONTFRAGMENT) { @@ -36,7 +36,7 @@ value = (value) ? IP_PMTUDISC_DO : IP_PMTUDISC_DONT; #endif } else if (opt == OPT_DSCP) { -@@ -354,7 +354,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { +@@ -356,7 +356,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { int PhysicalSocket::Send(const void* pv, size_t cb) { int sent = DoSend( s_, reinterpret_cast<const char*>(pv), static_cast<int>(cb), @@ -45,7 +45,7 @@ // Suppress SIGPIPE. Without this, attempting to send on a socket whose // other end is closed will result in a SIGPIPE signal being raised to // our process, which by default will terminate the process, which we -@@ -383,7 +383,7 @@ int PhysicalSocket::SendTo(const void* buffer, +@@ -385,7 +385,7 @@ int PhysicalSocket::SendTo(const void* buffer, size_t len = addr.ToSockAddrStorage(&saddr); int sent = DoSendTo(s_, static_cast<const char*>(buffer), static_cast<int>(length), @@ -54,7 +54,7 @@ // Suppress SIGPIPE. See above for explanation. MSG_NOSIGNAL, #else -@@ -641,7 +641,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* s +@@ -643,7 +643,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* s *slevel = IPPROTO_IP; *sopt = IP_DONTFRAGMENT; break; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.h index d24fa878f15f..2ad61cfbad04 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_physical__socket__server.h @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.h.orig 2022-10-24 13:33:33 UTC +--- src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.h -@@ -12,7 +12,7 @@ - #define RTC_BASE_PHYSICAL_SOCKET_SERVER_H_ - +@@ -14,7 +14,7 @@ #include "api/units/time_delta.h" --#if defined(WEBRTC_POSIX) && defined(WEBRTC_LINUX) -+#if defined(WEBRTC_POSIX) && defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD) + + #if defined(WEBRTC_POSIX) +-#if defined(WEBRTC_LINUX) ++#if defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD) + // On Linux, use epoll. #include <sys/epoll.h> #define WEBRTC_USE_EPOLL 1 - #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_widevine_cdm_widevine.gni b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_widevine_cdm_widevine.gni new file mode 100644 index 000000000000..e47da639e240 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_widevine_cdm_widevine.gni @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/widevine/cdm/widevine.gni.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/third_party/widevine/cdm/widevine.gni +@@ -27,6 +27,8 @@ library_widevine_cdm_available = + (is_chromeos && + (target_cpu == "x64" || target_cpu == "arm" || target_cpu == "arm64")) || + (target_os == "linux" && target_cpu == "x64") || ++ (target_os == "openbsd" && target_cpu == "x64") || ++ (target_os == "freebsd" && target_cpu == "x64") || + (target_os == "mac" && (target_cpu == "x64" || target_cpu == "arm64")) || + (target_os == "win" && + (target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm64")) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_BUILD.gn index b99d7342d389..d64f15ad9b82 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_BUILD.gn @@ -1,6 +1,26 @@ ---- src/3rdparty/chromium/third_party/zlib/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/third_party/zlib/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/third_party/zlib/BUILD.gn -@@ -455,7 +455,7 @@ static_library("bundled_minizip") { +@@ -139,7 +139,7 @@ if (use_arm_neon_optimizations) { + defines = [ "CRC32_ARMV8_CRC32" ] + if (is_android) { + defines += [ "ARMV8_OS_ANDROID" ] +- } else if (is_linux || is_chromeos) { ++ } else if ((is_linux || is_chromeos) && !is_bsd) { + defines += [ "ARMV8_OS_LINUX" ] + } else if (is_mac) { + defines += [ "ARMV8_OS_MACOS" ] +@@ -149,6 +149,10 @@ if (use_arm_neon_optimizations) { + defines += [ "ARMV8_OS_FUCHSIA" ] + } else if (is_win) { + defines += [ "ARMV8_OS_WINDOWS" ] ++ } else if (is_openbsd) { ++ defines += [ "ARMV8_OS_OPENBSD" ] ++ } else if (is_freebsd) { ++ defines += [ "ARMV8_OS_FREEBSD" ] + } else { + assert(false, "Unsupported ARM OS") + } +@@ -462,7 +466,7 @@ static_library("bundled_minizip") { ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_cpu__features.c b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_cpu__features.c new file mode 100644 index 000000000000..38c136535f1c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_cpu__features.c @@ -0,0 +1,50 @@ +--- src/3rdparty/chromium/third_party/zlib/cpu_features.c.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/third_party/zlib/cpu_features.c +@@ -35,7 +35,8 @@ int ZLIB_INTERNAL x86_cpu_enable_avx512 = 0; + + #ifndef CPU_NO_SIMD + +-#if defined(ARMV8_OS_ANDROID) || defined(ARMV8_OS_LINUX) || defined(ARMV8_OS_FUCHSIA) || defined(ARMV8_OS_IOS) ++#if defined(ARMV8_OS_ANDROID) || defined(ARMV8_OS_LINUX) || defined(ARMV8_OS_FUCHSIA) || defined(ARMV8_OS_IOS) || \ ++ defined(ARMV8_OS_OPENBSD) || defined(ARMV8_OS_FREEBSD) + #include <pthread.h> + #endif + +@@ -52,6 +53,10 @@ int ZLIB_INTERNAL x86_cpu_enable_avx512 = 0; + #include <windows.h> + #elif defined(ARMV8_OS_IOS) + #include <sys/sysctl.h> ++#elif defined(ARMV8_OS_OPENBSD) ++#include <sys/sysctl.h> ++#include <machine/cpu.h> ++#include <machine/armreg.h> + #elif !defined(_MSC_VER) + #include <pthread.h> + #else +@@ -62,7 +67,7 @@ static void _cpu_check_features(void); + static void _cpu_check_features(void); + #endif + +-#if defined(ARMV8_OS_ANDROID) || defined(ARMV8_OS_LINUX) || defined(ARMV8_OS_MACOS) || defined(ARMV8_OS_FUCHSIA) || defined(X86_NOT_WINDOWS) || defined(ARMV8_OS_IOS) || defined(__ARM_NEON__) || defined(__ARM_NEON) ++#if defined(ARMV8_OS_ANDROID) || defined(ARMV8_OS_LINUX) || defined(ARMV8_OS_MACOS) || defined(ARMV8_OS_FUCHSIA) || defined(X86_NOT_WINDOWS) || defined(ARMV8_OS_IOS) || defined(__ARM_NEON__) || defined(__ARM_NEON) || defined(ARMV8_OS_OPENBSD) || defined(ARMV8_OS_FREEBSD) + #if !defined(ARMV8_OS_MACOS) + // _cpu_check_features() doesn't need to do anything on mac/arm since all + // features are known at build time, so don't call it. +@@ -115,6 +120,17 @@ static void _cpu_check_features(void) + unsigned long features = getauxval(AT_HWCAP2); + arm_cpu_enable_crc32 = !!(features & HWCAP2_CRC32); + arm_cpu_enable_pmull = !!(features & HWCAP2_PMULL); ++#elif defined(ARMV8_OS_OPENBSD) ++ int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 }; ++ uint64_t cpu_id = 0; ++ size_t len = sizeof(cpu_id); ++ if (sysctl(isar0_mib, 2, &cpu_id, &len, NULL, 0) < 0) ++ return; ++ if (ID_AA64ISAR0_AES(cpu_id) >= ID_AA64ISAR0_AES_PMULL) ++ arm_cpu_enable_pmull = 1; ++ ++ if (ID_AA64ISAR0_AES(cpu_id) >= ID_AA64ISAR0_CRC32_BASE) ++ arm_cpu_enable_crc32 = 1; + #elif defined(ARMV8_OS_FUCHSIA) + uint32_t features; + zx_status_t rc = zx_system_get_features(ZX_FEATURE_KIND_CPU, &features); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_json__schema__compiler_feature__compiler.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_json__schema__compiler_feature__compiler.py index abbee2641c5b..7b114a5793ba 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_json__schema__compiler_feature__compiler.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_json__schema__compiler_feature__compiler.py @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/tools/json_schema_compiler/feature_compiler.py.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/tools/json_schema_compiler/feature_compiler.py.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/tools/json_schema_compiler/feature_compiler.py -@@ -271,6 +271,8 @@ FEATURE_GRAMMAR = ({ +@@ -272,6 +272,8 @@ FEATURE_GRAMMAR = ({ 'linux': 'Feature::LINUX_PLATFORM', 'mac': 'Feature::MACOSX_PLATFORM', 'win': 'Feature::WIN_PLATFORM', diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_licenses_licenses.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_licenses_licenses.py index 0dfa9b3a4808..eece09516469 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_licenses_licenses.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_licenses_licenses.py @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/tools/licenses/licenses.py.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/tools/licenses/licenses.py.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/tools/licenses/licenses.py -@@ -618,6 +618,8 @@ def _GnBinary(): +@@ -751,6 +751,8 @@ def _GnBinary(): exe = 'gn' if sys.platform.startswith('linux'): subdir = 'linux64' diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_perf_chrome__telemetry__build_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_perf_chrome__telemetry__build_BUILD.gn index c6354c6a16d6..a6355ce7ed8d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_perf_chrome__telemetry__build_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_perf_chrome__telemetry__build_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/tools/perf/chrome_telemetry_build/BUILD.gn.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/tools/perf/chrome_telemetry_build/BUILD.gn.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/tools/perf/chrome_telemetry_build/BUILD.gn -@@ -45,7 +45,7 @@ group("telemetry_chrome_test") { +@@ -47,7 +47,7 @@ group("telemetry_chrome_test") { data_deps += [ "//chrome:reorder_imports" ] } @@ -9,7 +9,7 @@ data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ] # CrOS currently has issues with the locally compiled version of -@@ -186,7 +186,7 @@ group("telemetry_chrome_test_without_chrome") { +@@ -172,7 +172,7 @@ group("telemetry_chrome_test_without_chrome") { ] # Cr-Fuchsia doesn't support breakpad. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_protoc__wrapper_protoc__wrapper.py b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_protoc__wrapper_protoc__wrapper.py index 24c78f4641d1..30a967525268 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_protoc__wrapper_protoc__wrapper.py +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_tools_protoc__wrapper_protoc__wrapper.py @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/tools/protoc_wrapper/protoc_wrapper.py.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/tools/protoc_wrapper/protoc_wrapper.py.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/tools/protoc_wrapper/protoc_wrapper.py -@@ -175,15 +175,19 @@ def main(argv): +@@ -179,15 +179,19 @@ def main(argv): if not options.exclude_imports: protoc_cmd += ["--include_imports"] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_clipboard_clipboard__constants.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_clipboard_clipboard__constants.h index 7924af9905e5..d028631ecb43 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_clipboard_clipboard__constants.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_clipboard_clipboard__constants.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/base/clipboard/clipboard_constants.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/clipboard/clipboard_constants.h.orig 2023-02-08 09:03:45 UTC +++ src/3rdparty/chromium/ui/base/clipboard/clipboard_constants.h @@ -47,7 +47,7 @@ extern const char kMimeTypeDataTransferEndpoint[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.cc index 79de80575550..3c8c2dc646ff 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.cc @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/ui/base/cursor/cursor_factory.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/base/cursor/cursor_factory.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/cursor/cursor_factory.cc -@@ -89,7 +89,7 @@ void CursorFactory::ObserveThemeChanges() { - - void CursorFactory::SetDeviceScaleFactor(float scale) {} +@@ -98,7 +98,7 @@ void CursorFactory::ObserveThemeChanges() { + NOTIMPLEMENTED(); + } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.h index e07f7a7e8cea..a491a495b6dd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_cursor_cursor__factory.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/base/cursor/cursor_factory.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/base/cursor/cursor_factory.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/cursor/cursor_factory.h -@@ -88,7 +88,7 @@ class COMPONENT_EXPORT(UI_BASE_CURSOR) CursorFactory { +@@ -93,7 +93,7 @@ class COMPONENT_EXPORT(UI_BASE_CURSOR) CursorFactory { base::ObserverList<CursorFactoryObserver>::Unchecked observers_; }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc index 6b838ecccde6..5edfe0015072 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc @@ -7,7 +7,7 @@ #include "base/notreached.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.cc index 138eaeb23614..d46504db82ba 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/base/ime/fake_text_input_client.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/ime/fake_text_input_client.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/ime/fake_text_input_client.cc -@@ -167,7 +167,7 @@ bool FakeTextInputClient::ShouldDoLearning() { +@@ -171,7 +171,7 @@ bool FakeTextInputClient::ShouldDoLearning() { return false; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.h index 7a662ed6b560..9d7f2c1f6dc4 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_fake__text__input__client.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/base/ime/fake_text_input_client.h.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/ime/fake_text_input_client.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/ime/fake_text_input_client.h -@@ -73,7 +73,7 @@ class FakeTextInputClient : public TextInputClient { +@@ -74,7 +74,7 @@ class FakeTextInputClient : public TextInputClient { void SetTextEditCommandForNextKeyEvent(TextEditCommand command) override; ukm::SourceId GetClientSourceForMetrics() const override; bool ShouldDoLearning() override; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_text__input__client.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_text__input__client.h index e9fc52934e5a..6c1bcf28e30b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_text__input__client.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_text__input__client.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/base/ime/text_input_client.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/ui/base/ime/text_input_client.h.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/ui/base/ime/text_input_client.h -@@ -242,7 +242,7 @@ class COMPONENT_EXPORT(UI_BASE_IME) TextInputClient +@@ -265,7 +265,7 @@ class COMPONENT_EXPORT(UI_BASE_IME) TextInputClient // fields that are considered 'private' (e.g. in incognito tabs). virtual bool ShouldDoLearning() = 0; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_resource_resource__bundle.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_resource_resource__bundle.cc index 720099c22c09..06c7bc0d03bd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_resource_resource__bundle.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_resource_resource__bundle.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/base/resource/resource_bundle.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/ui/base/resource/resource_bundle.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/resource/resource_bundle.cc -@@ -885,7 +885,7 @@ void ResourceBundle::ReloadFonts() { +@@ -926,7 +926,7 @@ void ResourceBundle::ReloadFonts() { } ResourceScaleFactor ResourceBundle::GetMaxResourceScaleFactor() const { @@ -8,4 +8,4 @@ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return max_scale_factor_; #else - return GetSupportedResourceScaleFactors().back(); + return GetMaxSupportedResourceScaleFactor(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc index 5b1a5e7a453c..fe398bc13563 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc @@ -1,6 +1,15 @@ ---- src/3rdparty/chromium/ui/base/ui_base_features.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/ui_base_features.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/base/ui_base_features.cc -@@ -210,7 +210,7 @@ CONSTINIT const base::Feature kExperimentalFlingAnimat +@@ -135,7 +135,7 @@ bool AreF11AndF12ShortcutsEnabled() { + } + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + +-#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kRedundantImeCompositionClearing, + "RedundantImeCompositionClearing", + base::FEATURE_ENABLED_BY_DEFAULT); +@@ -234,7 +234,7 @@ CONSTINIT const base::Feature kExperimentalFlingAnimat "ExperimentalFlingAnimation", // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -9,7 +18,7 @@ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_ASH) && \ !BUILDFLAG(IS_CHROMEOS_LACROS)) base::FEATURE_ENABLED_BY_DEFAULT -@@ -315,7 +315,7 @@ CONSTINIT const base::Feature kEyeDropper( +@@ -346,7 +346,7 @@ CONSTINIT const base::Feature kEyeDropper( // milestones. CONSTINIT const base::Feature kEyeDropper( "EyeDropper", @@ -18,3 +27,12 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT +@@ -565,7 +565,7 @@ ChromeRefresh2023Level GetChromeRefresh2023Level() { + return level; + } + +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + BASE_FEATURE(kWebUiSystemFont, + "WebUiSystemFont", + base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h new file mode 100644 index 000000000000..b987c796364c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/ui/base/ui_base_features.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/ui/base/ui_base_features.h +@@ -138,7 +138,7 @@ BASE_DECLARE_FEATURE(kSupportF11AndF12KeyShortcuts); + COMPONENT_EXPORT(UI_BASE_FEATURES) bool AreF11AndF12ShortcutsEnabled(); + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + +-#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(UI_BASE_FEATURES) + BASE_DECLARE_FEATURE(kRedundantImeCompositionClearing); + #endif // BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +@@ -273,7 +273,7 @@ enum class ChromeRefresh2023Level { + COMPONENT_EXPORT(UI_BASE_FEATURES) + ChromeRefresh2023Level GetChromeRefresh2023Level(); + +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(UI_BASE_FEATURES) BASE_DECLARE_FEATURE(kWebUiSystemFont); + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.cc new file mode 100644 index 000000000000..77cebb838ff9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.cc @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/ui/base/ui_base_switches.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/ui/base/ui_base_switches.cc +@@ -31,13 +31,13 @@ const char kShowMacOverlayBorders[] = "show-mac-overla + const char kEnableResourcesFileSharing[] = "enable-resources-file-sharing"; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Specifies system font family name. Improves determenism when rendering + // pages in headless mode. + const char kSystemFontFamily[] = "system-font-family"; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Specify the toolkit used to construct the Linux GUI. + const char kUiToolkitFlag[] = "ui-toolkit"; + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.h new file mode 100644 index 000000000000..4c9288b0f702 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__switches.h @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/ui/base/ui_base_switches.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/ui/base/ui_base_switches.h +@@ -27,11 +27,11 @@ COMPONENT_EXPORT(UI_BASE) extern const char kShowMacOv + COMPONENT_EXPORT(UI_BASE) extern const char kEnableResourcesFileSharing[]; + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(UI_BASE) extern const char kSystemFontFamily[]; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + COMPONENT_EXPORT(UI_BASE) extern const char kUiToolkitFlag[]; + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_webui_web__ui__util.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_webui_web__ui__util.cc index 12b5a81f1fd8..b5511aa3402b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_webui_web__ui__util.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_webui_web__ui__util.cc @@ -1,6 +1,15 @@ ---- src/3rdparty/chromium/ui/base/webui/web_ui_util.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/base/webui/web_ui_util.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/base/webui/web_ui_util.cc -@@ -214,7 +214,7 @@ std::string GetFontFamily() { +@@ -41,7 +41,7 @@ std::string GetFontFamilyMd() { + constexpr float kMaxScaleFactor = 1000.0f; + + std::string GetFontFamilyMd() { +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + if (base::FeatureList::IsEnabled(features::kWebUiSystemFont)) { + return GetFontFamily(); + } +@@ -221,7 +221,7 @@ std::string GetFontFamily() { // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.cc index 05cf581b5e9e..0553168d37d7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/base/x/x11_cursor_factory.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/base/x/x11_cursor_factory.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/ui/base/x/x11_cursor_factory.cc @@ -13,7 +13,7 @@ #include "ui/gfx/geometry/point.h" @@ -9,7 +9,7 @@ #include "ui/linux/linux_ui.h" #endif -@@ -60,7 +60,7 @@ scoped_refptr<PlatformCursor> X11CursorFactory::Create +@@ -62,7 +62,7 @@ scoped_refptr<PlatformCursor> X11CursorFactory::Create } void X11CursorFactory::ObserveThemeChanges() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.h index f9b74e96aca2..650ac821a0cb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__factory.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/base/x/x11_cursor_factory.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/base/x/x11_cursor_factory.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/ui/base/x/x11_cursor_factory.h @@ -20,7 +20,7 @@ namespace ui { class X11Cursor; @@ -9,7 +9,7 @@ class LinuxUi; #endif -@@ -59,7 +59,7 @@ class COMPONENT_EXPORT(UI_BASE_X) X11CursorFactory +@@ -60,7 +60,7 @@ class COMPONENT_EXPORT(UI_BASE_X) X11CursorFactory std::map<mojom::CursorType, scoped_refptr<X11Cursor>> default_cursors_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__loader.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__loader.cc index e016355a3077..d525415d88bc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__loader.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_base_x_x11__cursor__loader.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/base/x/x11_cursor_loader.cc.orig 2022-10-24 13:33:33 UTC +--- src/3rdparty/chromium/ui/base/x/x11_cursor_loader.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/base/x/x11_cursor_loader.cc @@ -32,7 +32,7 @@ #include "ui/gfx/x/xproto.h" @@ -13,7 +13,7 @@ void operator()(void* ptr) const { dlclose(ptr); } }; -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + std::unique_ptr<void, DlCloser> lib(dlopen("libXcursor.so", RTLD_LAZY)); +#else std::unique_ptr<void, DlCloser> lib(dlopen("libXcursor.so.1", RTLD_LAZY)); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_color_color__id.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_color_color__id.h index 647b25e49a43..6abcc24d15b8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_color_color__id.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_color_color__id.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/color/color_id.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/color/color_id.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/color/color_id.h -@@ -435,7 +435,7 @@ +@@ -567,7 +567,7 @@ E_CPONLY(kColorNativeColor6) \ E_CPONLY(kColorNativeBaseColor) \ E_CPONLY(kColorNativeSecondaryColor) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.cc index 6f1bdae0e629..f5f4dcb524d1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/compositor/compositor.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/compositor/compositor.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/compositor/compositor.cc -@@ -886,7 +886,7 @@ void Compositor::OnResume() { +@@ -896,7 +896,7 @@ void Compositor::OnResume() { // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.h index 268a48a59e0d..73b1e1444a7c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_compositor_compositor.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/compositor/compositor.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/compositor/compositor.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/ui/compositor/compositor.h -@@ -453,7 +453,7 @@ class COMPOSITOR_EXPORT Compositor : public base::Powe +@@ -458,7 +458,7 @@ class COMPOSITOR_EXPORT Compositor : public base::Powe // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_devices_x11_device__data__manager__x11.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_devices_x11_device__data__manager__x11.cc index 6d82a0c801b0..a3c44d8dc29d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_devices_x11_device__data__manager__x11.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_devices_x11_device__data__manager__x11.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/ui/events/devices/x11/device_data_manager_x11.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/events/devices/x11/device_data_manager_x11.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/ui/events/devices/x11/device_data_manager_x11.cc -@@ -875,6 +875,7 @@ void DeviceDataManagerX11::SetDisabledKeyboardAllowedK +@@ -876,6 +876,7 @@ void DeviceDataManagerX11::SetDisabledKeyboardAllowedK } void DeviceDataManagerX11::DisableDevice(x11::Input::DeviceId deviceid) { + NOTIMPLEMENTED(); blocked_devices_.set(static_cast<uint32_t>(deviceid), true); // TODO(rsadam@): Support blocking touchscreen devices. - std::vector<InputDevice> keyboards = GetKeyboardDevices(); + std::vector<KeyboardDevice> keyboards = GetKeyboardDevices(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_event.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_event.cc index eb84a2adffd6..a25d4a145c88 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_event.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_event.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/events/event.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/events/event.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/events/event.cc -@@ -419,7 +419,7 @@ std::string LocatedEvent::ToString() const { +@@ -427,7 +427,7 @@ std::string LocatedEvent::ToString() const { MouseEvent::MouseEvent(const PlatformEvent& native_event) : LocatedEvent(native_event), changed_button_flags_(GetChangedMouseButtonFlagsFromNative(native_event)), @@ -9,7 +9,7 @@ movement_(GetMouseMovementFromNative(native_event)), #endif pointer_details_(GetMousePointerDetailsFromNative(native_event)) { -@@ -674,7 +674,7 @@ std::unique_ptr<Event> MouseWheelEvent::Clone() const +@@ -676,7 +676,7 @@ std::unique_ptr<Event> MouseWheelEvent::Clone() const return std::make_unique<MouseWheelEvent>(*this); } @@ -18,7 +18,7 @@ // This value matches Windows, Fuchsia WHEEL_DELTA, and (roughly) Firefox on // Linux. // static -@@ -923,7 +923,7 @@ void KeyEvent::InitializeNative() { +@@ -936,7 +936,7 @@ void KeyEvent::InitializeNative() { if (synthesize_key_repeat_enabled_ && IsRepeated(GetLastKeyEvent())) set_flags(flags() | EF_IS_REPEAT); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_gesture__detection_motion__event__generic.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_gesture__detection_motion__event__generic.h new file mode 100644 index 000000000000..a67968ebae51 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_events_gesture__detection_motion__event__generic.h @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/ui/events/gesture_detection/motion_event_generic.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/events/gesture_detection/motion_event_generic.h +@@ -7,6 +7,7 @@ + + #include <stddef.h> + #include <stdint.h> ++#include <vector> + + #include "base/time/time.h" + #include "third_party/abseil-cpp/absl/container/inlined_vector.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_BUILD.gn index e508661c0172..5dfb92dcf6f8 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gfx/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gfx/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gfx/BUILD.gn -@@ -611,7 +611,7 @@ jumbo_source_set("memory_buffer_sources") { +@@ -646,7 +646,7 @@ jumbo_source_set("memory_buffer_sources") { deps += [ "//build/config/linux/libdrm" ] } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_canvas__skia.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_canvas__skia.cc index 58dab0f666d0..e8d0097a48fd 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_canvas__skia.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_canvas__skia.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gfx/canvas_skia.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/ui/gfx/canvas_skia.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/gfx/canvas_skia.cc -@@ -200,7 +200,7 @@ void Canvas::DrawStringRectWithFlags(const std::u16str +@@ -212,7 +212,7 @@ void Canvas::DrawStringRectWithFlags(const std::u16str Range range = StripAcceleratorChars(flags, &adjusted_text); bool elide_text = ((flags & NO_ELLIPSIS) == 0); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_png__codec.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_png__codec.cc index 49c8a36f170a..9a21e49de835 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_png__codec.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_png__codec.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/ui/gfx/codec/png_codec.cc.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/ui/gfx/codec/png_codec.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/gfx/codec/png_codec.cc -@@ -10,7 +10,7 @@ - #include "base/memory/raw_ptr.h" +@@ -12,7 +12,7 @@ + #include "base/metrics/histogram_macros.h" #include "base/notreached.h" #include "base/strings/string_util.h" -#include "third_party/libpng/png.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__list.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__list.cc deleted file mode 100644 index ed0c71d87717..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__list.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- src/3rdparty/chromium/ui/gfx/font_list.cc.orig 2022-02-28 16:54:41 UTC -+++ src/3rdparty/chromium/ui/gfx/font_list.cc -@@ -27,7 +27,7 @@ base::LazyInstance<scoped_refptr<gfx::FontListImpl>>:: - bool g_default_impl_initialized = false; - - bool IsFontFamilyAvailable(const std::string& family, SkFontMgr* fontManager) { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - return !!fontManager->legacyMakeTypeface(family.c_str(), SkFontStyle()); - #else - sk_sp<SkFontStyleSet> set(fontManager->matchFamily(family.c_str())); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_client__native__pixmap__dmabuf.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_client__native__pixmap__dmabuf.cc deleted file mode 100644 index d398efd7f79c..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_client__native__pixmap__dmabuf.cc +++ /dev/null @@ -1,25 +0,0 @@ ---- src/3rdparty/chromium/ui/gfx/linux/client_native_pixmap_dmabuf.cc.orig 2022-02-07 13:39:41 UTC -+++ src/3rdparty/chromium/ui/gfx/linux/client_native_pixmap_dmabuf.cc -@@ -5,7 +5,9 @@ - #include "ui/gfx/linux/client_native_pixmap_dmabuf.h" - - #include <fcntl.h> -+#if !defined(__OpenBSD__) && !defined(__FreeBSD__) - #include <linux/version.h> -+#endif - #include <stddef.h> - #include <sys/ioctl.h> - #include <sys/mman.h> -@@ -27,11 +29,7 @@ - #include "ui/gfx/buffer_format_util.h" - #include "ui/gfx/switches.h" - --#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) --#include <linux/dma-buf.h> --#else --#include <linux/types.h> -- -+#if defined(__OpenBSD__) || defined(__FreeBSD__) - struct dma_buf_sync { - __u64 flags; - }; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_dmabuf__uapi.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_dmabuf__uapi.h new file mode 100644 index 000000000000..2746d1e87073 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_linux_dmabuf__uapi.h @@ -0,0 +1,36 @@ +--- src/3rdparty/chromium/ui/gfx/linux/dmabuf_uapi.h.orig 2023-12-12 22:08:45 UTC ++++ src/3rdparty/chromium/ui/gfx/linux/dmabuf_uapi.h +@@ -5,12 +5,11 @@ + #ifndef UI_GFX_LINUX_DMABUF_UAPI_H_ + #define UI_GFX_LINUX_DMABUF_UAPI_H_ + +-#include <linux/version.h> ++#include <sys/types.h> + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) +-#include <linux/dma-buf.h> +-#else +-#include <linux/types.h> ++typedef int32_t __s32; ++typedef uint32_t __u32; ++typedef uint64_t __u64; + + struct dma_buf_sync { + __u64 flags; +@@ -26,9 +25,7 @@ constexpr unsigned long DMA_BUF_IOCTL_SYNC = + constexpr char DMA_BUF_BASE = 'b'; + constexpr unsigned long DMA_BUF_IOCTL_SYNC = + _IOW(DMA_BUF_BASE, 0, struct dma_buf_sync); +-#endif + +-#ifndef DMA_BUF_IOCTL_EXPORT_SYNC_FILE + struct dma_buf_export_sync_file { + __u32 flags; + __s32 fd; +@@ -43,6 +40,5 @@ constexpr unsigned long DMA_BUF_IOCTL_IMPORT_SYNC_FILE + _IOWR(DMA_BUF_BASE, 2, struct dma_buf_export_sync_file); + constexpr unsigned long DMA_BUF_IOCTL_IMPORT_SYNC_FILE = + _IOW(DMA_BUF_BASE, 3, struct dma_buf_import_sync_file); +-#endif + + #endif // UI_GFX_LINUX_DMABUF_UAPI_H_ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc index 650932b68276..d244dfdc7cfe 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc @@ -11,7 +11,7 @@ #include "ui/gfx/buffer_format_util.h" diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__widget__types.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__widget__types.h index 401c8ea1d46b..de4ba874bf44 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__widget__types.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__widget__types.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gfx/native_widget_types.h.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/ui/gfx/native_widget_types.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/gfx/native_widget_types.h -@@ -106,7 +106,7 @@ class SkBitmap; +@@ -103,7 +103,7 @@ class SkBitmap; // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -8,13 +8,13 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) extern "C" { struct _AtkObject; - typedef struct _AtkObject AtkObject; -@@ -209,7 +209,7 @@ typedef NSFont* NativeFont; - typedef id NativeViewAccessible; + using AtkObject = struct _AtkObject; +@@ -221,7 +221,7 @@ using NativeViewAccessible = struct objc_object*; + #endif // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) // Linux doesn't have a native font type. - typedef AtkObject* NativeViewAccessible; + using NativeViewAccessible = AtkObject*; #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.cc index 7b19c6ccc833..7e79bf0f77bb 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gfx/switches.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/gfx/switches.cc.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/ui/gfx/switches.cc -@@ -33,7 +33,7 @@ const char kForcePrefersReducedMotion[] = "force-prefe +@@ -28,7 +28,7 @@ const char kForcePrefersReducedMotion[] = "force-prefe // Run in headless mode, i.e., without a UI or display server dependencies. const char kHeadless[] = "headless"; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.h index cb08def77887..3f2994715608 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_switches.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gfx/switches.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/gfx/switches.h.orig 2023-07-16 15:47:57 UTC +++ src/3rdparty/chromium/ui/gfx/switches.h -@@ -19,7 +19,7 @@ GFX_SWITCHES_EXPORT extern const char kEnableNativeGpu +@@ -18,7 +18,7 @@ GFX_SWITCHES_EXPORT extern const char kEnableNativeGpu GFX_SWITCHES_EXPORT extern const char kForcePrefersReducedMotion[]; GFX_SWITCHES_EXPORT extern const char kHeadless[]; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_x_xlib__support.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_x_xlib__support.cc index 934f12ccb635..25f1781933fa 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_x_xlib__support.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gfx_x_xlib__support.cc @@ -1,17 +1,17 @@ ---- src/3rdparty/chromium/ui/gfx/x/xlib_support.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gfx/x/xlib_support.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gfx/x/xlib_support.cc @@ -42,10 +42,18 @@ void InitXlib() { if (xlib_loader->loaded()) return; -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + CHECK(xlib_loader->Load("libX11.so")); +#else CHECK(xlib_loader->Load("libX11.so.6")); +#endif auto* xlib_xcb_loader = GetXlibXcbLoader(); -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + CHECK(xlib_xcb_loader->Load("libX11-xcb.so")); +#else CHECK(xlib_xcb_loader->Load("libX11-xcb.so.1")); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_BUILD.gn index b75fb8ce4836..4173ed9ea7cf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gl/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gl/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gl/BUILD.gn -@@ -172,8 +172,6 @@ jumbo_component("gl") { +@@ -165,8 +165,6 @@ jumbo_component("gl") { defines += [ "GPU_ENABLE_SERVICE_LOGGING" ] } @@ -9,7 +9,7 @@ all_dependent_configs = [ ":gl_config" ] public_configs = [ "//third_party/khronos:khronos_headers" ] -@@ -190,7 +188,6 @@ jumbo_component("gl") { +@@ -183,7 +181,6 @@ jumbo_component("gl") { ] public_deps = [ "//base", @@ -17,7 +17,7 @@ "//ui/events/platform", "//ui/gfx", "//ui/gfx/geometry", -@@ -455,7 +452,6 @@ jumbo_component("gl") { +@@ -433,7 +430,6 @@ jumbo_component("gl") { data_deps += [ "//third_party/angle:libEGL", "//third_party/angle:libGLESv2", @@ -25,7 +25,7 @@ ] if (enable_swiftshader) { data_deps += [ -@@ -709,7 +705,6 @@ test("gl_unittests") { +@@ -648,7 +644,6 @@ test("gl_unittests") { data_deps = [ "//testing/buildbot/filters:gl_unittests_filters", diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__context.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__context.cc index 41a4c19bebb3..100b11319b17 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__context.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__context.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gl/gl_context.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/gl/gl_context.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gl/gl_context.cc -@@ -416,7 +416,7 @@ bool GLContext::MakeVirtuallyCurrent( +@@ -445,7 +445,7 @@ bool GLContext::MakeVirtuallyCurrent( DCHECK(virtual_context->IsCurrent(surface)); if (switched_real_contexts || virtual_context != current_virtual_context_) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__fence.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__fence.cc new file mode 100644 index 000000000000..6f776755ee17 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__fence.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/gl/gl_fence.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/gl/gl_fence.cc +@@ -20,7 +20,7 @@ + #endif + + #if defined(USE_EGL) +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #define USE_GL_FENCE_ANDROID_NATIVE_FENCE_SYNC + #include "ui/gl/gl_fence_android_native_fence_sync.h" + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__implementation.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__implementation.cc index 4a3afa687cde..bae39201ddc7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__implementation.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__implementation.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gl/gl_implementation.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gl/gl_implementation.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gl/gl_implementation.cc -@@ -288,7 +288,7 @@ GetRequestedGLImplementationFromCommandLine( +@@ -291,7 +291,7 @@ GetRequestedGLImplementationFromCommandLine( *fallback_to_software_gl = false; bool overrideUseSoftwareGL = command_line->HasSwitch(switches::kOverrideUseSoftwareGLForTests); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__switches.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__switches.cc index c918d5c71f4a..71aa3de0060b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__switches.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__switches.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/gl/gl_switches.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/ui/gl/gl_switches.cc.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/ui/gl/gl_switches.cc @@ -12,7 +12,7 @@ #include "base/android/build_info.h" @@ -9,7 +9,7 @@ #include <vulkan/vulkan_core.h> #include "third_party/angle/src/gpu_info_util/SystemInfo.h" // nogncheck #endif -@@ -298,7 +298,7 @@ bool IsDefaultANGLEVulkan() { +@@ -297,7 +297,7 @@ bool IsDefaultANGLEVulkan() { base::android::SDK_VERSION_Q) return false; #endif // BUILDFLAG(IS_ANDROID) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__compat.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__compat.cc index 5e60d9bccb3f..fdd51d2768de 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__compat.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__compat.cc @@ -1,10 +1,10 @@ ---- src/3rdparty/chromium/ui/gtk/gtk_compat.cc.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/ui/gtk/gtk_compat.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/gtk/gtk_compat.cc @@ -62,27 +62,47 @@ auto DlCast(void* symbol) { } void* GetLibGio() { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + static void* libgio = DlOpen("libgio-2.0.so"); +#else static void* libgio = DlOpen("libgio-2.0.so.0"); @@ -13,7 +13,7 @@ } void* GetLibGdkPixbuf() { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + static void* libgdk_pixbuf = DlOpen("libgdk_pixbuf-2.0.so"); +#else static void* libgdk_pixbuf = DlOpen("libgdk_pixbuf-2.0.so.0"); @@ -22,7 +22,7 @@ } void* GetLibGdk3() { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + static void* libgdk3 = DlOpen("libgdk-3.so"); +#else static void* libgdk3 = DlOpen("libgdk-3.so.0"); @@ -31,7 +31,7 @@ } void* GetLibGtk3(bool check = true) { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + static void* libgtk3 = DlOpen("libgtk-3.so", check); +#else static void* libgtk3 = DlOpen("libgtk-3.so.0", check); @@ -40,7 +40,7 @@ } void* GetLibGtk4(bool check = true) { -+#if defined(OS_BSD) ++#if BUILDFLAG(IS_BSD) + static void* libgtk4 = DlOpen("libgtk-4.so", check); +#else static void* libgtk4 = DlOpen("libgtk-4.so.1", check); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__ui.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__ui.cc new file mode 100644 index 000000000000..777ee2dbd431 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_gtk__ui.cc @@ -0,0 +1,22 @@ +--- src/3rdparty/chromium/ui/gtk/gtk_ui.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/gtk/gtk_ui.cc +@@ -955,11 +955,19 @@ ui::DisplayConfig GtkUi::GetDisplayConfig() const { + GdkRectangle geometry; + gdk_monitor_get_geometry(monitor, &geometry); + int monitor_scale = std::max(1, gdk_monitor_get_scale_factor(monitor)); ++#if defined(__clang__) && (__clang_major__ >= 16) + config.display_geometries.emplace_back( + gfx::Rect(monitor_scale * geometry.x, monitor_scale * geometry.y, + monitor_scale * geometry.width, + monitor_scale * geometry.height), + monitor_scale * font_scale); ++#else ++ config.display_geometries.emplace_back() = { ++ gfx::Rect(monitor_scale * geometry.x, monitor_scale * geometry.y, ++ monitor_scale * geometry.width, ++ monitor_scale * geometry.height), ++ static_cast<float>(monitor_scale * font_scale)}; ++#endif + } + return config; + } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_printing_print__dialog__gtk.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_printing_print__dialog__gtk.cc index b6194b735755..2d08cd914c58 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_printing_print__dialog__gtk.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_gtk_printing_print__dialog__gtk.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/gtk/printing/print_dialog_gtk.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/gtk/printing/print_dialog_gtk.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/gtk/printing/print_dialog_gtk.cc -@@ -403,7 +403,7 @@ void PrintDialogGtk::ShowDialog( +@@ -440,7 +440,7 @@ void PrintDialogGtk::ShowDialog( GtkPrintCapabilities cap = static_cast<GtkPrintCapabilities>( GTK_PRINT_CAPABILITY_GENERATE_PDF | GTK_PRINT_CAPABILITY_PAGE_SET | GTK_PRINT_CAPABILITY_COPIES | GTK_PRINT_CAPABILITY_COLLATE | diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme.h index dac2cd783482..3fa0142466ac 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/native_theme/native_theme.h.orig 2022-03-25 21:59:56 UTC +--- src/3rdparty/chromium/ui/native_theme/native_theme.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/native_theme/native_theme.h -@@ -59,7 +59,7 @@ class NATIVE_THEME_EXPORT NativeTheme { +@@ -62,7 +62,7 @@ class NATIVE_THEME_EXPORT NativeTheme { kCheckbox, // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme__base.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme__base.cc index 9f5cbc157524..07bb9392d23e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme__base.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_native__theme_native__theme__base.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/ui/native_theme/native_theme_base.cc.orig 2023-02-08 09:03:45 UTC +--- src/3rdparty/chromium/ui/native_theme/native_theme_base.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/native_theme/native_theme_base.cc -@@ -273,7 +273,7 @@ void NativeThemeBase::Paint(cc::PaintCanvas* canvas, +@@ -275,7 +275,7 @@ void NativeThemeBase::Paint(cc::PaintCanvas* canvas, break; // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) case kFrameTopArea: - PaintFrameTopArea(canvas, state, rect, extra.frame_top_area, - color_scheme); + PaintFrameTopArea(canvas, state, rect, + absl::get<FrameTopAreaExtraParams>(extra), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_common_features.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_common_features.cc new file mode 100644 index 000000000000..9d319f36638e --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_common_features.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/ozone/common/features.cc.orig 2023-05-31 08:12:17 UTC ++++ src/3rdparty/chromium/ui/ozone/common/features.cc +@@ -30,7 +30,7 @@ BASE_FEATURE(kWaylandSurfaceSubmissionInPixelCoordinat + // enabled. + BASE_FEATURE(kWaylandFractionalScaleV1, + "WaylandFractionalScaleV1", +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_headless_vulkan__implementation__headless.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_headless_vulkan__implementation__headless.cc index 33e247782197..91765f7c1d9e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_headless_vulkan__implementation__headless.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_headless_vulkan__implementation__headless.cc @@ -1,6 +1,24 @@ ---- src/3rdparty/chromium/ui/ozone/platform/headless/vulkan_implementation_headless.cc.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/ui/ozone/platform/headless/vulkan_implementation_headless.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/headless/vulkan_implementation_headless.cc -@@ -155,7 +155,7 @@ VulkanImplementationHeadless::CreateImageFromGpuMemory +@@ -117,7 +117,7 @@ VulkanImplementationHeadless::ExportVkFenceToGpuFence( + + VkExternalSemaphoreHandleTypeFlagBits + VulkanImplementationHeadless::GetExternalSemaphoreHandleType() { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT; + #else + return VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT; +@@ -127,7 +127,7 @@ VulkanImplementationHeadless::GetExternalSemaphoreHand + bool VulkanImplementationHeadless::CanImportGpuMemoryBuffer( + gpu::VulkanDeviceQueue* device_queue, + gfx::GpuMemoryBufferType memory_buffer_type) { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const auto& enabled_extensions = device_queue->enabled_extensions(); + return gfx::HasExtension(enabled_extensions, + VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME) && +@@ -150,7 +150,7 @@ VulkanImplementationHeadless::CreateImageFromGpuMemory VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT; auto tiling = VK_IMAGE_TILING_OPTIMAL; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.cc index 8ee267a44110..028006979cbc 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc -@@ -448,7 +448,7 @@ void WaylandToplevelWindow::HandleAuraToplevelConfigur +@@ -539,7 +539,7 @@ void WaylandToplevelWindow::HandleAuraToplevelConfigur const bool did_active_change = is_active_ != window_states.is_activated; is_active_ = window_states.is_activated; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.h index 8ae031564f3a..f3e424c41695 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_toplevel_window.h -@@ -250,7 +250,7 @@ class WaylandToplevelWindow : public WaylandWindow, +@@ -244,7 +244,7 @@ class WaylandToplevelWindow : public WaylandWindow, // Contains the previous state of the window. PlatformWindowState previous_state_ = PlatformWindowState::kUnknown; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.cc new file mode 100644 index 000000000000..c53ee9f8d1ce --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.cc @@ -0,0 +1,44 @@ +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_window.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_window.cc +@@ -233,7 +233,7 @@ void WaylandWindow::OnPointerFocusChanged(bool focused + // Whenever the window gets the pointer focus back, the cursor shape must be + // updated. Otherwise, it is invalidated upon wl_pointer::leave and is not + // restored by the Wayland compositor. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (focused && async_cursor_) { + async_cursor_->AddCursorLoadedCallback( + base::BindOnce(&WaylandWindow::OnCursorLoaded, +@@ -490,7 +490,7 @@ bool WaylandWindow::ShouldUseNativeFrame() const { + void WaylandWindow::SetCursor(scoped_refptr<PlatformCursor> platform_cursor) { + DCHECK(platform_cursor); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + auto async_cursor = WaylandAsyncCursor::FromPlatformCursor(platform_cursor); + + if (async_cursor_ == async_cursor) { +@@ -661,7 +661,7 @@ std::string WaylandWindow::WindowStates::ToString() co + } else { + base::TrimString(states, " ", &states); + } +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + states += "; tiled_edges: "; + std::string tiled = ""; + if (tiled_edges.left) { +@@ -1111,12 +1111,12 @@ void WaylandWindow::UpdateCursorShape(scoped_refptr<Bi + cursor->bitmaps(), hotspot_in_dips, + std::ceil(cursor->cursor_image_scale_factor())); + } +-#if !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + cursor_ = cursor; + #endif + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void WaylandWindow::OnCursorLoaded(scoped_refptr<WaylandAsyncCursor> cursor, + scoped_refptr<BitmapCursor> bitmap_cursor) { + if (HasPointerFocus() && async_cursor_ == cursor && bitmap_cursor) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.h index 4dd51dee4908..eb31e1e1535d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.h @@ -1,6 +1,15 @@ ---- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_window.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_window.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_window.h -@@ -231,7 +231,7 @@ class WaylandWindow : public PlatformWindow, +@@ -39,7 +39,7 @@ + #include "ui/platform_window/platform_window_init_properties.h" + #include "ui/platform_window/wm/wm_drag_handler.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "ui/ozone/platform/wayland/host/wayland_async_cursor.h" + #endif + +@@ -241,7 +241,7 @@ class WaylandWindow : public PlatformWindow, bool is_snapped_primary = false; bool is_snapped_secondary = false; bool is_floated = false; @@ -8,4 +17,22 @@ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) WindowTiledEdges tiled_edges; #endif - }; + +@@ -492,7 +492,7 @@ class WaylandWindow : public PlatformWindow, + + void UpdateCursorShape(scoped_refptr<BitmapCursor> cursor); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void OnCursorLoaded(scoped_refptr<WaylandAsyncCursor> cursor, + scoped_refptr<BitmapCursor> bitmap_cursor); + #endif +@@ -551,7 +551,7 @@ class WaylandWindow : public PlatformWindow, + + wl::Object<zaura_surface> aura_surface_; + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // The current asynchronously loaded cursor (Linux specific). + scoped_refptr<WaylandAsyncCursor> async_cursor_; + #else diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_xdg__toplevel__wrapper__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_xdg__toplevel__wrapper__impl.cc index d46e1bcac45c..3c2a96a74fe6 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_xdg__toplevel__wrapper__impl.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_xdg__toplevel__wrapper__impl.cc @@ -1,11 +1,11 @@ ---- src/3rdparty/chromium/ui/ozone/platform/wayland/host/xdg_toplevel_wrapper_impl.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/xdg_toplevel_wrapper_impl.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/xdg_toplevel_wrapper_impl.cc -@@ -272,7 +272,7 @@ void XDGToplevelWrapperImpl::ConfigureTopLevel( +@@ -308,7 +308,7 @@ void XDGToplevelWrapperImpl::OnToplevelConfigure(void* CheckIfWlArrayHasValue(states, XDG_TOPLEVEL_STATE_ACTIVATED), }; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) - if (xdg_toplevel_get_version(xdg_toplevel) >= + if (xdg_toplevel_get_version(toplevel) >= XDG_TOPLEVEL_STATE_TILED_LEFT_SINCE_VERSION) { // All four tiled states have the same since version, so it is enough to diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_zwp__text__input__wrapper__v1.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_zwp__text__input__wrapper__v1.cc new file mode 100644 index 000000000000..5f5cdc1f1626 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_zwp__text__input__wrapper__v1.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc +@@ -226,6 +226,10 @@ void ZWPTextInputWrapperV1::SetSurroundingText( + // so if it exceeds 16 bits, it may be broken. + static constexpr size_t kSizeLimit = 60000; + if (HasAdvancedSurroundingTextSupport() && text.length() > kSizeLimit) { ++#if defined(__FreeBSD_version) && __FreeBSD_version < 1300048 ++ PLOG(ERROR) << "memfd is not supported"; ++ return; ++#else + base::ScopedFD memfd(memfd_create("surrounding_text", MFD_CLOEXEC)); + if (!memfd.get()) { + PLOG(ERROR) << "Failed to create memfd"; +@@ -238,6 +242,7 @@ void ZWPTextInputWrapperV1::SetSurroundingText( + zcr_extended_text_input_v1_set_large_surrounding_text( + extended_obj_.get(), memfd.get(), text.length(), + selection_range.start(), selection_range.end()); ++#endif + } else { + zwp_text_input_v1_set_surrounding_text(obj_.get(), text.c_str(), + selection_range.start(), diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_ozone__platform__wayland.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_ozone__platform__wayland.cc index 223bac5db10c..07714b9614c1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_ozone__platform__wayland.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_ozone__platform__wayland.cc @@ -1,7 +1,14 @@ ---- src/3rdparty/chromium/ui/ozone/platform/wayland/ozone_platform_wayland.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/ozone/platform/wayland/ozone_platform_wayland.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/wayland/ozone_platform_wayland.cc -@@ -71,7 +71,7 @@ +@@ -66,13 +66,13 @@ + #include "ui/events/ozone/layout/stub/stub_keyboard_layout_engine.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/ozone/platform/wayland/host/wayland_cursor_factory.h" + #else + #include "ui/ozone/common/bitmap_cursor_factory.h" #endif -#if BUILDFLAG(IS_LINUX) @@ -9,7 +16,16 @@ #include "ui/ozone/platform/wayland/host/linux_ui_delegate_wayland.h" #endif -@@ -246,7 +246,7 @@ class OzonePlatformWayland : public OzonePlatform, +@@ -262,7 +262,7 @@ class OzonePlatformWayland : public OzonePlatform, + + buffer_manager_connector_ = std::make_unique<WaylandBufferManagerConnector>( + connection_->buffer_manager_host()); +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + cursor_factory_ = std::make_unique<WaylandCursorFactory>(connection_.get()); + #else + cursor_factory_ = std::make_unique<BitmapCursorFactory>(); +@@ -272,7 +272,7 @@ class OzonePlatformWayland : public OzonePlatform, supported_buffer_formats_ = connection_->buffer_manager_host()->GetSupportedBufferFormats(); @@ -18,7 +34,7 @@ linux_ui_delegate_ = std::make_unique<LinuxUiDelegateWayland>(connection_.get()); #endif -@@ -470,7 +470,7 @@ class OzonePlatformWayland : public OzonePlatform, +@@ -510,7 +510,7 @@ class OzonePlatformWayland : public OzonePlatform, DrmRenderNodePathFinder path_finder_; #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_ozone__platform__x11.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_ozone__platform__x11.cc index 77f27f258b14..69946fcd81ce 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_ozone__platform__x11.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_ozone__platform__x11.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/ozone/platform/x11/ozone_platform_x11.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/ozone/platform/x11/ozone_platform_x11.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/ozone/platform/x11/ozone_platform_x11.cc @@ -196,7 +196,7 @@ class OzonePlatformX11 : public OzonePlatform, properties->supports_global_application_menus = true; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.cc new file mode 100644 index 000000000000..b28474d43445 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/ozone/platform/x11/x11_screen_ozone.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/ozone/platform/x11/x11_screen_ozone.cc +@@ -235,7 +235,7 @@ base::Value::List X11ScreenOzone::GetGpuExtraInfo( + return result; + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void X11ScreenOzone::SetDisplayConfig(const DisplayConfig& display_config) { + display_config_ = &display_config; + // See DesktopScreenLinux, which sets the |device_scale_factor| before |this| diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.h new file mode 100644 index 000000000000..052a328150d7 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_platform_x11_x11__screen__ozone.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/ozone/platform/x11/x11_screen_ozone.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/ozone/platform/x11/x11_screen_ozone.h +@@ -61,7 +61,7 @@ class X11ScreenOzone : public PlatformScreen, + std::string GetCurrentWorkspace() override; + base::Value::List GetGpuExtraInfo( + const gfx::GpuExtraInfo& gpu_extra_info) override; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void SetDisplayConfig(const DisplayConfig& display_config) override; + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_ozone__platform.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_ozone__platform.h index 69ac9d2ee115..a51739fee085 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_ozone__platform.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_ozone__platform.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/ozone/public/ozone_platform.h.orig 2022-11-30 08:12:58 UTC +--- src/3rdparty/chromium/ui/ozone/public/ozone_platform.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/ui/ozone/public/ozone_platform.h -@@ -144,7 +144,7 @@ class COMPONENT_EXPORT(OZONE) OzonePlatform { +@@ -143,7 +143,7 @@ class COMPONENT_EXPORT(OZONE) OzonePlatform { // back via gpu extra info. bool fetch_buffer_formats_for_gmb_on_gpu = false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.cc new file mode 100644 index 000000000000..a81db05108b1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/ozone/public/platform_screen.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/ozone/public/platform_screen.cc +@@ -61,7 +61,7 @@ display::TabletState PlatformScreen::GetTabletState() + } + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void PlatformScreen::SetDisplayConfig(const DisplayConfig& display_config) {} + #endif + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.h new file mode 100644 index 000000000000..0527962d31c0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_ozone_public_platform__screen.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/ui/ozone/public/platform_screen.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/ui/ozone/public/platform_screen.h +@@ -15,7 +15,7 @@ + #include "ui/gfx/gpu_extra_info.h" + #include "ui/gfx/native_widget_types.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "ui/linux/linux_ui.h" + #endif + +@@ -136,7 +136,7 @@ class COMPONENT_EXPORT(OZONE_BASE) PlatformScreen { + virtual base::Value::List GetGpuExtraInfo( + const gfx::GpuExtraInfo& gpu_extra_info); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Sets device scale factor received from external sources such as toolkits. + virtual void SetDisplayConfig(const DisplayConfig& display_config); + #endif diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.cc index 3e295b22fc60..a234f6b09567 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/platform_window/platform_window_delegate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/platform_window/platform_window_delegate.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/ui/platform_window/platform_window_delegate.cc -@@ -29,7 +29,7 @@ PlatformWindowDelegate::PlatformWindowDelegate() = def +@@ -36,7 +36,7 @@ PlatformWindowDelegate::PlatformWindowDelegate() = def PlatformWindowDelegate::~PlatformWindowDelegate() = default; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.h index 6c4c24b12e2f..8078b0e1a956 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_platform__window_platform__window__delegate.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/platform_window/platform_window_delegate.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/platform_window/platform_window_delegate.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/ui/platform_window/platform_window_delegate.h -@@ -130,7 +130,7 @@ class COMPONENT_EXPORT(PLATFORM_WINDOW) PlatformWindow +@@ -134,7 +134,7 @@ class COMPONENT_EXPORT(PLATFORM_WINDOW) PlatformWindow virtual void OnWindowStateChanged(PlatformWindowState old_state, PlatformWindowState new_state) = 0; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.cc index aab08dfe6cb7..b7f5e5968daf 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/controls/textfield/textfield.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/views/controls/textfield/textfield.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/controls/textfield/textfield.cc -@@ -74,7 +74,7 @@ +@@ -79,7 +79,7 @@ #include "base/win/win_util.h" #endif @@ -9,7 +9,7 @@ #include "ui/base/ime/linux/text_edit_command_auralinux.h" #include "ui/linux/linux_ui.h" #endif -@@ -168,7 +168,7 @@ bool IsControlKeyModifier(int flags) { +@@ -173,7 +173,7 @@ bool IsControlKeyModifier(int flags) { // Control-modified key combination, but we cannot extend it to other platforms // as Control has different meanings and behaviors. // https://crrev.com/2580483002/#msg46 @@ -18,7 +18,7 @@ return flags & ui::EF_CONTROL_DOWN; #else return false; -@@ -706,7 +706,7 @@ bool Textfield::OnKeyPressed(const ui::KeyEvent& event +@@ -742,7 +742,7 @@ bool Textfield::OnKeyPressed(const ui::KeyEvent& event if (!textfield) return handled; @@ -27,7 +27,7 @@ auto* linux_ui = ui::LinuxUi::instance(); std::vector<ui::TextEditCommandAuraLinux> commands; if (!handled && linux_ui && -@@ -878,7 +878,7 @@ void Textfield::AboutToRequestFocusFromTabTraversal(bo +@@ -924,7 +924,7 @@ void Textfield::AboutToRequestFocusFromTabTraversal(bo } bool Textfield::SkipDefaultKeyEventProcessing(const ui::KeyEvent& event) { @@ -36,7 +36,7 @@ // Skip any accelerator handling that conflicts with custom keybindings. auto* linux_ui = ui::LinuxUi::instance(); std::vector<ui::TextEditCommandAuraLinux> commands; -@@ -1831,7 +1831,7 @@ bool Textfield::ShouldDoLearning() { +@@ -1929,7 +1929,7 @@ bool Textfield::ShouldDoLearning() { return false; } @@ -45,7 +45,7 @@ // TODO(https://crbug.com/952355): Implement this method to support Korean IME // reconversion feature on native text fields (e.g. find bar). bool Textfield::SetCompositionFromExistingText( -@@ -2344,14 +2344,14 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( +@@ -2442,14 +2442,14 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( #endif return ui::TextEditCommand::DELETE_BACKWARD; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.h index a18da2326123..f57e7d05b71f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_textfield_textfield.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/controls/textfield/textfield.h.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/views/controls/textfield/textfield.h.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/controls/textfield/textfield.h -@@ -42,7 +42,7 @@ +@@ -44,7 +44,7 @@ #include "ui/views/view.h" #include "ui/views/word_lookup_client.h" @@ -9,7 +9,7 @@ #include <vector> #endif -@@ -450,7 +450,7 @@ class VIEWS_EXPORT Textfield : public View, +@@ -452,7 +452,7 @@ class VIEWS_EXPORT Textfield : public View, // Set whether the text should be used to improve typing suggestions. void SetShouldDoLearning(bool value) { should_do_learning_ = value; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc index 658dfa312d5e..20dd34306bb6 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc -@@ -51,7 +51,7 @@ constexpr int kVerticalPaddingBottom = 5; +@@ -38,7 +38,7 @@ namespace { bool CanUseTranslucentTooltipWidget() { // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_focus_focus__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_focus_focus__manager.cc index 01f65e8da5fa..56647f4fc04d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_focus_focus__manager.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_focus_focus__manager.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/focus/focus_manager.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/views/focus/focus_manager.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/ui/views/focus/focus_manager.cc -@@ -625,7 +625,7 @@ bool FocusManager::RedirectAcceleratorToBubbleAnchorWi +@@ -577,7 +577,7 @@ bool FocusManager::RedirectAcceleratorToBubbleAnchorWi // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -9,7 +9,7 @@ // Processing an accelerator can delete things. Because we // need these objects afterwards on Linux, save widget_ as weak pointer and // save the close_on_deactivate property value of widget_delegate in a -@@ -642,7 +642,7 @@ bool FocusManager::RedirectAcceleratorToBubbleAnchorWi +@@ -594,7 +594,7 @@ bool FocusManager::RedirectAcceleratorToBubbleAnchorWi // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc index c60c14fcaaa5..07d81668aa10 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc @@ -194,7 +194,7 @@ DragOperation DesktopDragDropClientOzone::StartDragAnd return drag_operation_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc index 27dde6a0455b..bf67f7ad257b 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -@@ -43,7 +43,7 @@ +@@ -44,7 +44,7 @@ #include "ui/wm/core/window_util.h" #include "ui/wm/public/window_move_client.h" @@ -9,7 +9,7 @@ #include "ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone_linux.h" #endif -@@ -257,7 +257,7 @@ void DesktopWindowTreeHostPlatform::Init(const Widget: +@@ -265,7 +265,7 @@ void DesktopWindowTreeHostPlatform::Init(const Widget: if (params.type == Widget::InitParams::TYPE_WINDOW) GetContentWindow()->SetProperty(aura::client::kAnimationsDisabledKey, true); @@ -18,7 +18,7 @@ const bool requires_accelerated_widget = params.requires_accelerated_widget; #else const bool requires_accelerated_widget = false; -@@ -329,7 +329,7 @@ std::unique_ptr<aura::client::DragDropClient> +@@ -346,7 +346,7 @@ std::unique_ptr<aura::client::DragDropClient> DesktopWindowTreeHostPlatform::CreateDragDropClient() { ui::WmDragHandler* drag_handler = ui::GetWmDragHandler(*(platform_window())); std::unique_ptr<DesktopDragDropClientOzone> drag_drop_client = @@ -27,7 +27,7 @@ std::make_unique<DesktopDragDropClientOzoneLinux>(window(), drag_handler); #else std::make_unique<DesktopDragDropClientOzone>(window(), drag_handler); -@@ -1039,7 +1039,7 @@ display::Display DesktopWindowTreeHostPlatform::GetDis +@@ -1081,7 +1081,7 @@ bool DesktopWindowTreeHostPlatform::RotateFocusForWidg // DesktopWindowTreeHost: // Linux subclasses this host and adds some Linux specific bits. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.cc index 90f4d3025dd4..819ebb710d6d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/widget/widget.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/ui/views/widget/widget.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/widget/widget.cc -@@ -52,7 +52,7 @@ +@@ -54,7 +54,7 @@ #include "ui/views/window/custom_frame_view.h" #include "ui/views/window/dialog_delegate.h" @@ -9,7 +9,7 @@ #include "ui/linux/linux_ui.h" #endif -@@ -1989,7 +1989,7 @@ const ui::NativeTheme* Widget::GetNativeTheme() const +@@ -2041,7 +2041,7 @@ const ui::NativeTheme* Widget::GetNativeTheme() const if (parent_) return parent_->GetNativeTheme(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.h index 84a4e98c1e40..53a8abcb720d 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_widget_widget.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/widget/widget.h.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/ui/views/widget/widget.h.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/ui/views/widget/widget.h -@@ -408,7 +408,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWid +@@ -410,7 +410,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWid // If set, the widget was created in headless mode. bool headless_mode = false; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_dialog__delegate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_dialog__delegate.cc index 5afcd6af4470..f4d7dfbe9cb1 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_dialog__delegate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_dialog__delegate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/ui/views/window/dialog_delegate.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/ui/views/window/dialog_delegate.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/window/dialog_delegate.cc -@@ -73,7 +73,7 @@ Widget* DialogDelegate::CreateDialogWidget( +@@ -78,7 +78,7 @@ Widget* DialogDelegate::CreateDialogWidget( // static bool DialogDelegate::CanSupportCustomFrame(gfx::NativeView parent) { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_frame__background.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_frame__background.cc index 4f644ce8b9bc..b34d95a6105f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_frame__background.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_ui_views_window_frame__background.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/ui/views/window/frame_background.cc.orig 2022-02-28 16:54:41 UTC +--- src/3rdparty/chromium/ui/views/window/frame_background.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/ui/views/window/frame_background.cc @@ -110,7 +110,7 @@ void FrameBackground::PaintMaximized(gfx::Canvas* canv int width) const { @@ -7,5 +7,5 @@ -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(ENABLE_DESKTOP_AURA) - ui::NativeTheme::ExtraParams params; - params.frame_top_area.use_custom_frame = use_custom_frame_; + ui::NativeTheme::FrameTopAreaExtraParams frame_top_area; + frame_top_area.use_custom_frame = use_custom_frame_; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_BUILD.gn b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_BUILD.gn index 14c7a8d8a55c..13e4649ae0be 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_BUILD.gn +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_BUILD.gn @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/BUILD.gn.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/v8/BUILD.gn.orig 2023-12-12 22:08:45 UTC +++ src/3rdparty/chromium/v8/BUILD.gn -@@ -1305,6 +1305,14 @@ config("toolchain") { +@@ -1418,6 +1418,14 @@ config("toolchain") { } else if (target_os == "chromeos") { defines += [ "V8_HAVE_TARGET_OS" ] defines += [ "V8_TARGET_OS_CHROMEOS" ] @@ -15,7 +15,20 @@ } # TODO(infra): Support v8_enable_prof on Windows. -@@ -5777,7 +5785,7 @@ v8_component("v8_libbase") { +@@ -2381,6 +2389,12 @@ template("run_mksnapshot") { + if (!v8_enable_builtins_profiling && v8_enable_builtins_reordering) { + args += [ "--reorder-builtins" ] + } ++ ++ if (v8_current_cpu == "x86") { ++ args -= [ ++ "--abort-on-bad-builtin-profile-data", ++ ] ++ } + } + + # This is needed to distinguish between generating code for the simulator +@@ -6173,7 +6187,7 @@ v8_component("v8_libbase") { } } @@ -24,7 +37,7 @@ sources += [ "src/base/debug/stack_trace_posix.cc", "src/base/platform/platform-linux.cc", -@@ -5788,6 +5796,18 @@ v8_component("v8_libbase") { +@@ -6184,6 +6198,18 @@ v8_component("v8_libbase") { "dl", "rt", ] diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_include_v8-internal.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_include_v8-internal.h index 3e0eecb4313f..0c56f6f4652e 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_include_v8-internal.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_include_v8-internal.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/include/v8-internal.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/v8/include/v8-internal.h.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/v8/include/v8-internal.h -@@ -176,7 +176,7 @@ using SandboxedPointer_t = Address; +@@ -172,7 +172,7 @@ using SandboxedPointer_t = Address; #ifdef V8_ENABLE_SANDBOX // Size of the sandbox, excluding the guard regions surrounding it. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc index 3254a55f7306..9f96f37381e7 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc @@ -1,15 +1,15 @@ ---- src/3rdparty/chromium/v8/src/api/api.cc.orig 2023-08-16 19:50:41 UTC +--- src/3rdparty/chromium/v8/src/api/api.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/v8/src/api/api.cc -@@ -142,7 +142,7 @@ +@@ -141,7 +141,7 @@ #include "src/wasm/wasm-serialization.h" #endif // V8_ENABLE_WEBASSEMBLY -#if V8_OS_LINUX || V8_OS_DARWIN || V8_OS_FREEBSD +#if V8_OS_LINUX || V8_OS_DARWIN || V8_OS_FREEBSD || V8_OS_OPENBSD #include <signal.h> + #include <unistd.h> - #if V8_ENABLE_WEBASSEMBLY -@@ -6354,7 +6354,7 @@ bool v8::V8::Initialize(const int build_config) { +@@ -6352,7 +6352,7 @@ bool v8::V8::Initialize(const int build_config) { return true; } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_atomicops.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_atomicops.h index 446117838b0a..51d11ee69264 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_atomicops.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_atomicops.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/v8/src/base/atomicops.h.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/v8/src/base/atomicops.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/v8/src/base/atomicops.h @@ -57,10 +57,10 @@ using Atomic64 = SbAtomic64; using Atomic8 = char; @@ -13,7 +13,7 @@ using Atomic64 = int64_t; #else using Atomic64 = intptr_t; -@@ -258,7 +258,7 @@ inline Atomic32 SeqCst_Load(volatile const Atomic32* p +@@ -266,7 +266,7 @@ inline Atomic32 SeqCst_Load(volatile const Atomic32* p std::memory_order_seq_cst); } diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-openbsd.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-openbsd.cc index 3e8509780585..bf245be77f38 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-openbsd.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-openbsd.cc @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/v8/src/base/platform/platform-openbsd.cc.orig 2022-02-07 13:39:41 UTC +--- src/3rdparty/chromium/v8/src/base/platform/platform-openbsd.cc.orig 2023-04-28 17:01:32 UTC +++ src/3rdparty/chromium/v8/src/base/platform/platform-openbsd.cc @@ -6,6 +6,7 @@ // POSIX-compatible parts, the implementation is in platform-posix.cc. @@ -14,7 +14,7 @@ void OS::AdjustSchedulingParams() {} + +// static -+Stack::StackSlot Stack::GetStackStart() { ++Stack::StackSlot Stack::ObtainCurrentThreadStackStart() { + stack_t ss; + void *base; + if (pthread_stackseg_np(pthread_self(), &ss) != 0) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-posix.cc index a6ab51a09133..b08c34559dd2 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/src/base/platform/platform-posix.cc.orig 2023-03-09 06:31:50 UTC +--- src/3rdparty/chromium/v8/src/base/platform/platform-posix.cc.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/v8/src/base/platform/platform-posix.cc -@@ -53,7 +53,7 @@ +@@ -55,7 +55,7 @@ #if V8_OS_DARWIN #include <mach/mach.h> #include <malloc/malloc.h> @@ -9,7 +9,7 @@ #include <malloc.h> #endif -@@ -71,7 +71,7 @@ +@@ -73,7 +73,7 @@ #include <sys/syscall.h> #endif @@ -18,7 +18,7 @@ #define MAP_ANONYMOUS MAP_ANON #endif -@@ -297,8 +297,15 @@ void OS::SetRandomMmapSeed(int64_t seed) { +@@ -305,8 +305,15 @@ void OS::SetRandomMmapSeed(int64_t seed) { } } @@ -34,7 +34,7 @@ uintptr_t raw_addr; { MutexGuard guard(rng_mutex.Pointer()); -@@ -393,6 +400,7 @@ void* OS::GetRandomMmapAddr() { +@@ -401,6 +408,7 @@ void* OS::GetRandomMmapAddr() { #endif return reinterpret_cast<void*>(raw_addr); } @@ -42,7 +42,7 @@ // TODO(bbudge) Move Cygwin and Fuchsia stuff into platform-specific files. #if !V8_OS_CYGWIN && !V8_OS_FUCHSIA -@@ -661,7 +669,7 @@ void OS::DestroySharedMemoryHandle(PlatformSharedMemor +@@ -674,7 +682,7 @@ void OS::DestroySharedMemoryHandle(PlatformSharedMemor // static bool OS::HasLazyCommits() { @@ -51,12 +51,12 @@ return true; #else // TODO(bbudge) Return true for all POSIX platforms. -@@ -1238,7 +1246,7 @@ void Thread::SetThreadLocal(LocalStorageKey key, void* +@@ -1281,7 +1289,7 @@ void Thread::SetThreadLocal(LocalStorageKey key, void* // keep this version in POSIX as most Linux-compatible derivatives will // support it. MacOS and FreeBSD are different here. #if !defined(V8_OS_FREEBSD) && !defined(V8_OS_DARWIN) && !defined(_AIX) && \ - !defined(V8_OS_SOLARIS) + !defined(V8_OS_SOLARIS) && !defined(V8_OS_OPENBSD) - // static - Stack::StackSlot Stack::GetStackStart() { + namespace { + #if DEBUG diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_baseline_x64_baseline-assembler-x64-inl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_baseline_x64_baseline-assembler-x64-inl.h new file mode 100644 index 000000000000..a21a55072cd9 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_baseline_x64_baseline-assembler-x64-inl.h @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/v8/src/baseline/x64/baseline-assembler-x64-inl.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/baseline/x64/baseline-assembler-x64-inl.h +@@ -73,9 +73,7 @@ MemOperand BaselineAssembler::FeedbackVectorOperand() + + void BaselineAssembler::Bind(Label* label) { __ bind(label); } + +-void BaselineAssembler::JumpTarget() { +- // NOP on x64. +-} ++void BaselineAssembler::JumpTarget() { __ endbr64(); } + + void BaselineAssembler::Jump(Label* target, Label::Distance distance) { + __ jmp(target, distance); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_builtins_x64_builtins-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_builtins_x64_builtins-x64.cc new file mode 100644 index 000000000000..8aa573e775b6 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_builtins_x64_builtins-x64.cc @@ -0,0 +1,46 @@ +--- src/3rdparty/chromium/v8/src/builtins/x64/builtins-x64.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/v8/src/builtins/x64/builtins-x64.cc +@@ -44,6 +44,8 @@ namespace internal { + #define __ ACCESS_MASM(masm) + + void Builtins::Generate_Adaptor(MacroAssembler* masm, Address address) { ++ __ CodeEntry(); ++ + __ LoadAddress(kJavaScriptCallExtraArg1Register, + ExternalReference::Create(address)); + __ Jump(BUILTIN_CODE(masm->isolate(), AdaptorWithBuiltinExitFrame), +@@ -430,7 +432,7 @@ void Generate_JSEntryVariant(MacroAssembler* masm, Sta + // Jump to a faked try block that does the invoke, with a faked catch + // block that sets the pending exception. + __ jmp(&invoke); +- __ bind(&handler_entry); ++ __ BindExceptionHandler(&handler_entry); + + // Store the current pc as the handler offset. It's used later to create the + // handler table. +@@ -3327,6 +3329,9 @@ void SwitchBackAndReturnPromise(MacroAssembler* masm, + void GenerateExceptionHandlingLandingPad(MacroAssembler* masm, + Label* return_promise) { + int catch_handler = __ pc_offset(); ++ ++ __ endbr64(); ++ + // Restore rsp to free the reserved stack slots for the sections. + __ leaq(rsp, MemOperand(rbp, StackSwitchFrameConstants::kLastSpillOffset)); + +@@ -3658,6 +3663,7 @@ void Builtins::Generate_WasmSuspend(MacroAssembler* ma + LoadJumpBuffer(masm, jmpbuf, true); + __ Trap(); + __ bind(&resume); ++ __ endbr64(); + __ LeaveFrame(StackFrame::STACK_SWITCH); + __ ret(0); + } +@@ -3790,6 +3796,7 @@ void Generate_WasmResumeHelper(MacroAssembler* masm, w + } + __ Trap(); + __ bind(&suspend); ++ __ endbr64(); + __ LeaveFrame(StackFrame::STACK_SWITCH); + // Pop receiver + parameter. + __ ret(2 * kSystemPointerSize); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.cc new file mode 100644 index 000000000000..294357791729 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.cc @@ -0,0 +1,42 @@ +--- src/3rdparty/chromium/v8/src/codegen/x64/assembler-x64.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/codegen/x64/assembler-x64.cc +@@ -1316,6 +1316,14 @@ void Assembler::hlt() { + emit(0xF4); + } + ++void Assembler::endbr64() { ++ EnsureSpace ensure_space(this); ++ emit(0xF3); ++ emit(0x0f); ++ emit(0x1e); ++ emit(0xfa); ++} ++ + void Assembler::emit_idiv(Register src, int size) { + EnsureSpace ensure_space(this); + emit_rex(src, size); +@@ -1583,16 +1591,22 @@ void Assembler::jmp(Handle<Code> target, RelocInfo::Mo + emitl(code_target_index); + } + +-void Assembler::jmp(Register target) { ++void Assembler::jmp(Register target, bool notrack) { + EnsureSpace ensure_space(this); ++ if (notrack) { ++ emit(0x3e); ++ } + // Opcode FF/4 r64. + emit_optional_rex_32(target); + emit(0xFF); + emit_modrm(0x4, target); + } + +-void Assembler::jmp(Operand src) { ++void Assembler::jmp(Operand src, bool notrack) { + EnsureSpace ensure_space(this); ++ if (notrack) { ++ emit(0x3e); ++ } + // Opcode FF/4 m64. + emit_optional_rex_32(src); + emit(0xFF); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.h new file mode 100644 index 000000000000..f455280dc92b --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_assembler-x64.h @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/v8/src/codegen/x64/assembler-x64.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/codegen/x64/assembler-x64.h +@@ -860,6 +860,7 @@ class V8_EXPORT_PRIVATE Assembler : public AssemblerBa + void ret(int imm16); + void ud2(); + void setcc(Condition cc, Register reg); ++ void endbr64(); + + void pblendw(XMMRegister dst, Operand src, uint8_t mask); + void pblendw(XMMRegister dst, XMMRegister src, uint8_t mask); +@@ -917,8 +918,8 @@ class V8_EXPORT_PRIVATE Assembler : public AssemblerBa + void jmp(Handle<Code> target, RelocInfo::Mode rmode); + + // Jump near absolute indirect (r64) +- void jmp(Register adr); +- void jmp(Operand src); ++ void jmp(Register adr, bool notrack = false); ++ void jmp(Operand src, bool notrack = false); + + // Unconditional jump relative to the current address. Low-level routine, + // use with caution! diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.cc new file mode 100644 index 000000000000..26cc3ba91684 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/v8/src/codegen/x64/macro-assembler-x64.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/codegen/x64/macro-assembler-x64.cc +@@ -51,6 +51,8 @@ Operand StackArgumentsAccessor::GetArgumentOperand(int + return Operand(rsp, kPCOnStackSize + index * kSystemPointerSize); + } + ++void MacroAssembler::CodeEntry() { endbr64(); } ++ + void MacroAssembler::Load(Register destination, ExternalReference source) { + if (root_array_available_ && options().enable_root_relative_access) { + intptr_t delta = RootRegisterOffsetForExternalReference(isolate(), source); +@@ -2046,7 +2048,7 @@ void MacroAssembler::Switch(Register scratch, Register + cmpq(reg, Immediate(num_labels)); + j(above_equal, &fallthrough); + leaq(table, MemOperand(&jump_table)); +- jmp(MemOperand(table, reg, times_8, 0)); ++ jmp(MemOperand(table, reg, times_8, 0), /*notrack=*/true); + // Emit the jump table inline, under the assumption that it's not too big. + Align(kSystemPointerSize); + bind(&jump_table); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.h new file mode 100644 index 000000000000..e230f6225052 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_x64_macro-assembler-x64.h @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/v8/src/codegen/x64/macro-assembler-x64.h.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/v8/src/codegen/x64/macro-assembler-x64.h +@@ -646,11 +646,14 @@ class V8_EXPORT_PRIVATE MacroAssembler + + // Define a function entrypoint. This doesn't emit any code for this + // architecture, as control-flow integrity is not supported for it. +- void CodeEntry() {} ++ void CodeEntry(); + // Define an exception handler. +- void ExceptionHandler() {} ++ void ExceptionHandler() { CodeEntry(); } + // Define an exception handler and bind a label. +- void BindExceptionHandler(Label* label) { bind(label); } ++ void BindExceptionHandler(Label* label) { ++ bind(label); ++ CodeEntry(); ++ } + + // --------------------------------------------------------------------------- + // Pointer compression support diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_ia32_instruction-selector-ia32.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_ia32_instruction-selector-ia32.cc deleted file mode 100644 index 080323f60714..000000000000 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_ia32_instruction-selector-ia32.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- src/3rdparty/chromium/v8/src/compiler/backend/ia32/instruction-selector-ia32.cc.orig 2022-11-30 08:12:58 UTC -+++ src/3rdparty/chromium/v8/src/compiler/backend/ia32/instruction-selector-ia32.cc -@@ -3034,6 +3034,7 @@ void InstructionSelector::VisitI8x16Shuffle(Node* node - Emit(opcode, 1, &dst, input_count, inputs, temp_count, temps); - } - -+#if V8_ENABLE_WEBASSEMBLY - void InstructionSelector::VisitI8x16Swizzle(Node* node) { - InstructionCode op = kIA32I8x16Swizzle; - -@@ -3087,6 +3088,9 @@ void VisitMinOrMax(InstructionSelector* selector, Node - void InstructionSelector::VisitF32x4Pmin(Node* node) { - VisitMinOrMax(this, node, kIA32Minps, true); - } -+#else -+void InstructionSelector::VisitI8x16Swizzle(Node* node) { UNREACHABLE(); } -+#endif // V8_ENABLE_WEBASSEMBLY - - void InstructionSelector::VisitF32x4Pmax(Node* node) { - VisitMinOrMax(this, node, kIA32Maxps, true); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_x64_code-generator-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_x64_code-generator-x64.cc new file mode 100644 index 000000000000..92ad4b47ce7f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_compiler_backend_x64_code-generator-x64.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/v8/src/compiler/backend/x64/code-generator-x64.cc.orig 2023-10-11 18:22:24 UTC ++++ src/3rdparty/chromium/v8/src/compiler/backend/x64/code-generator-x64.cc +@@ -6828,11 +6828,11 @@ void CodeGenerator::AssembleArchTableSwitch(Instructio + // target = table + (target - table) + __ addq(input, kScratchRegister); + // Jump to the target. +- __ jmp(input); ++ __ jmp(input, /*notrack=*/true); + } else { + // For non builtins, the value in the table is 'target_address' (8 bytes) + // jmp [table + index*8] +- __ jmp(Operand(kScratchRegister, input, times_8, 0)); ++ __ jmp(Operand(kScratchRegister, input, times_8, 0), /*notrack=*/true); + } + } + diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_deoptimizer_x64_deoptimizer-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_deoptimizer_x64_deoptimizer-x64.cc new file mode 100644 index 000000000000..0fcb108f05d5 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_deoptimizer_x64_deoptimizer-x64.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/v8/src/deoptimizer/x64/deoptimizer-x64.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/deoptimizer/x64/deoptimizer-x64.cc +@@ -21,7 +21,7 @@ ASSERT_OFFSET(Builtin::kDeoptimizationEntry_Lazy); + #undef ASSERT_OFFSET + + const int Deoptimizer::kEagerDeoptExitSize = 4; +-const int Deoptimizer::kLazyDeoptExitSize = 4; ++const int Deoptimizer::kLazyDeoptExitSize = 8; + + Float32 RegisterValues::GetFloatRegister(unsigned n) const { + return Float32::FromBits( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_diagnostics_perf-jit.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_diagnostics_perf-jit.cc index 6b2abb31d0dd..fbe7e994da93 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_diagnostics_perf-jit.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_diagnostics_perf-jit.cc @@ -1,7 +1,7 @@ ---- src/3rdparty/chromium/v8/src/diagnostics/perf-jit.cc.orig 2022-06-17 14:20:10 UTC +--- src/3rdparty/chromium/v8/src/diagnostics/perf-jit.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/v8/src/diagnostics/perf-jit.cc -@@ -30,7 +30,7 @@ - #include "src/common/assert-scope.h" +@@ -31,7 +31,7 @@ + #include "src/flags/flags.h" // Only compile the {LinuxPerfJitLogger} on Linux. -#if V8_OS_LINUX diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_execution_isolate.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_execution_isolate.cc index 25ea084c2370..b10e18c34b65 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_execution_isolate.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_execution_isolate.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/src/execution/isolate.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/v8/src/execution/isolate.cc.orig 2023-10-11 18:22:24 UTC +++ src/3rdparty/chromium/v8/src/execution/isolate.cc -@@ -146,6 +146,10 @@ +@@ -147,6 +147,10 @@ #include "src/execution/simulator-base.h" #endif @@ -11,7 +11,7 @@ extern "C" const uint8_t v8_Default_embedded_blob_code_[]; extern "C" uint32_t v8_Default_embedded_blob_code_size_; extern "C" const uint8_t v8_Default_embedded_blob_data_[]; -@@ -3849,6 +3853,11 @@ void Isolate::InitializeDefaultEmbeddedBlob() { +@@ -4034,6 +4038,11 @@ void Isolate::InitializeDefaultEmbeddedBlob() { uint32_t code_size = DefaultEmbeddedBlobCodeSize(); const uint8_t* data = DefaultEmbeddedBlobData(); uint32_t data_size = DefaultEmbeddedBlobDataSize(); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_flags_flags.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_flags_flags.cc new file mode 100644 index 000000000000..a704bb280780 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_flags_flags.cc @@ -0,0 +1,36 @@ +--- src/3rdparty/chromium/v8/src/flags/flags.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/flags/flags.cc +@@ -12,6 +12,10 @@ + #include <iomanip> + #include <sstream> + ++#if V8_OS_OPENBSD ++#include <sys/mman.h> ++#endif ++ + #include "src/base/functional.h" + #include "src/base/logging.h" + #include "src/base/platform/platform.h" +@@ -31,7 +35,11 @@ + namespace v8::internal { + + // Define {v8_flags}, declared in flags.h. ++#if V8_OS_OPENBSD ++FlagValues v8_flags __attribute__((section(".openbsd.mutable"))); ++#else + FlagValues v8_flags; ++#endif + + // {v8_flags} needs to be aligned to a memory page, and the size needs to be a + // multiple of a page size. This is required for memory-protection of the memory +@@ -824,6 +832,10 @@ void FlagList::FreezeFlags() { + // Note that for string flags we only protect the pointer itself, but not the + // string storage. TODO(12887): Fix this. + base::OS::SetDataReadOnly(&v8_flags, sizeof(v8_flags)); ++#if V8_OS_OPENBSD ++ if (mimmutable(&v8_flags, sizeof(v8_flags)) == -1) ++ FATAL("unable to set immutability of v8_flags"); ++#endif + } + + // static diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64-inl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64-inl.h new file mode 100644 index 000000000000..a38884e12313 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64-inl.h @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/v8/src/maglev/x64/maglev-assembler-x64-inl.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/maglev/x64/maglev-assembler-x64-inl.h +@@ -229,7 +229,10 @@ void MaglevAssembler::PushReverse(T... vals) { + detail::PushAllHelper<T...>::PushReverse(this, vals...); + } + +-inline void MaglevAssembler::BindJumpTarget(Label* label) { bind(label); } ++inline void MaglevAssembler::BindJumpTarget(Label* label) { ++ bind(label); ++ endbr64(); ++} + + inline void MaglevAssembler::BindBlock(BasicBlock* block) { + bind(block->label()); diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64.cc new file mode 100644 index 000000000000..20252707ee65 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_maglev_x64_maglev-assembler-x64.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/v8/src/maglev/x64/maglev-assembler-x64.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/v8/src/maglev/x64/maglev-assembler-x64.cc +@@ -433,10 +433,12 @@ void MaglevAssembler::OSRPrologue(Graph* graph) { + void MaglevAssembler::Prologue(Graph* graph) { + DCHECK(!graph->is_osr()); + ++ CodeEntry(); ++ + BailoutIfDeoptimized(rbx); + + if (graph->has_recursive_calls()) { +- bind(code_gen_state()->entry_label()); ++ BindJumpTarget(code_gen_state()->entry_label()); + } + + // Tiering support. diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.cc new file mode 100644 index 000000000000..8c27106d5ad1 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.cc @@ -0,0 +1,22 @@ +--- src/3rdparty/chromium/v8/src/regexp/x64/regexp-macro-assembler-x64.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/regexp/x64/regexp-macro-assembler-x64.cc +@@ -110,6 +110,7 @@ RegExpMacroAssemblerX64::RegExpMacroAssemblerX64(Isola + backtrack_label_(), + exit_label_() { + DCHECK_EQ(0, registers_to_save % 2); ++ __ CodeEntry(); + __ jmp(&entry_label_); // We'll write the entry code when we know more. + __ bind(&start_label_); // And then continue from here. + } +@@ -714,6 +715,11 @@ bool RegExpMacroAssemblerX64::CheckSpecialClassRanges( + // Match any character. + return true; + } ++} ++ ++void RegExpMacroAssemblerX64::BindJumpTarget(Label* label) { ++ Bind(label); ++ __ CodeEntry(); + } + + void RegExpMacroAssemblerX64::Fail() { diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.h new file mode 100644 index 000000000000..43fbe6a20691 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_regexp_x64_regexp-macro-assembler-x64.h @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/v8/src/regexp/x64/regexp-macro-assembler-x64.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/regexp/x64/regexp-macro-assembler-x64.h +@@ -59,6 +59,9 @@ class V8_EXPORT_PRIVATE RegExpMacroAssemblerX64 + void CheckPosition(int cp_offset, Label* on_outside_input) override; + bool CheckSpecialClassRanges(StandardCharacterSet type, + Label* on_no_match) override; ++ ++ void BindJumpTarget(Label* label) override; ++ + void Fail() override; + Handle<HeapObject> GetCode(Handle<String> source) override; + void GoTo(Label* label) override; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_snapshot_embedded_platform-embedded-file-writer-generic.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_snapshot_embedded_platform-embedded-file-writer-generic.cc index 956817daf095..8f34904e9bbe 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_snapshot_embedded_platform-embedded-file-writer-generic.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_snapshot_embedded_platform-embedded-file-writer-generic.cc @@ -1,8 +1,8 @@ ---- src/3rdparty/chromium/v8/src/snapshot/embedded/platform-embedded-file-writer-generic.cc.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/v8/src/snapshot/embedded/platform-embedded-file-writer-generic.cc.orig 2023-08-17 07:33:31 UTC +++ src/3rdparty/chromium/v8/src/snapshot/embedded/platform-embedded-file-writer-generic.cc @@ -9,6 +9,10 @@ - #include "src/objects/code.h" + #include "src/objects/instruction-stream.h" +#if V8_OS_OPENBSD +#include <sys/param.h> diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.cc index dc0542162ea5..7ec4e44c855f 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.cc +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.cc @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/src/trap-handler/handler-inside-posix.cc.orig 2023-01-11 09:17:16 UTC +--- src/3rdparty/chromium/v8/src/trap-handler/handler-inside-posix.cc.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/v8/src/trap-handler/handler-inside-posix.cc -@@ -55,6 +55,8 @@ namespace trap_handler { +@@ -59,6 +59,8 @@ namespace trap_handler { #define CONTEXT_REG(reg, REG) &uc->uc_mcontext->__ss.__##reg #elif V8_OS_FREEBSD #define CONTEXT_REG(reg, REG) &uc->uc_mcontext.mc_##reg @@ -9,7 +9,7 @@ #else #error "Unsupported platform." #endif -@@ -64,8 +66,12 @@ bool IsKernelGeneratedSignal(siginfo_t* info) { +@@ -68,8 +70,12 @@ bool IsKernelGeneratedSignal(siginfo_t* info) { // si_code at its default of 0 for signals that dont originate in hardware. // The other conditions are only relevant for Linux. return info->si_code > 0 && info->si_code != SI_USER && diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_trap-handler.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_trap-handler.h index d9d610892469..b22dfb97260a 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_trap-handler.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_trap-handler_trap-handler.h @@ -1,4 +1,4 @@ ---- src/3rdparty/chromium/v8/src/trap-handler/trap-handler.h.orig 2022-04-21 18:48:31 UTC +--- src/3rdparty/chromium/v8/src/trap-handler/trap-handler.h.orig 2023-05-31 08:12:17 UTC +++ src/3rdparty/chromium/v8/src/trap-handler/trap-handler.h @@ -20,7 +20,7 @@ namespace trap_handler { // X64 on Linux, Windows, MacOS, FreeBSD. @@ -7,5 +7,5 @@ - V8_OS_FREEBSD) + V8_OS_FREEBSD || V8_OS_OPENBSD) #define V8_TRAP_HANDLER_SUPPORTED true - // Arm64 (non-simulator) on Mac. - #elif V8_TARGET_ARCH_ARM64 && V8_HOST_ARCH_ARM64 && V8_OS_DARWIN + // Arm64 (non-simulator) on Mac and Linux. + #elif V8_TARGET_ARCH_ARM64 && V8_HOST_ARCH_ARM64 && \ diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_baseline_ia32_liftoff-assembler-ia32.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_baseline_ia32_liftoff-assembler-ia32.h index 174870543e59..3dc87904205c 100644 --- a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_baseline_ia32_liftoff-assembler-ia32.h +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_baseline_ia32_liftoff-assembler-ia32.h @@ -1,6 +1,6 @@ ---- src/3rdparty/chromium/v8/src/wasm/baseline/ia32/liftoff-assembler-ia32.h.orig 2023-04-05 11:05:06 UTC +--- src/3rdparty/chromium/v8/src/wasm/baseline/ia32/liftoff-assembler-ia32.h.orig 2023-09-13 12:11:42 UTC +++ src/3rdparty/chromium/v8/src/wasm/baseline/ia32/liftoff-assembler-ia32.h -@@ -424,7 +424,7 @@ void LiftoffAssembler::StoreTaggedPointer(Register dst +@@ -491,7 +491,7 @@ void LiftoffAssembler::StoreTaggedPointer(Register dst } void LiftoffAssembler::Load(LiftoffRegister dst, Register src_addr, @@ -9,7 +9,7 @@ LoadType type, uint32_t* protected_load_pc, bool /* is_load_mem */, bool /* i64_offset */, bool needs_shift) { -@@ -504,7 +504,7 @@ void LiftoffAssembler::Load(LiftoffRegister dst, Regis +@@ -571,7 +571,7 @@ void LiftoffAssembler::Load(LiftoffRegister dst, Regis } void LiftoffAssembler::Store(Register dst_addr, Register offset_reg, @@ -18,7 +18,7 @@ StoreType type, LiftoffRegList pinned, uint32_t* protected_store_pc, bool /* is_store_mem */, bool /* i64_offset */) { -@@ -573,7 +573,7 @@ void LiftoffAssembler::Store(Register dst_addr, Regist +@@ -651,7 +651,7 @@ void LiftoffAssembler::Store(Register dst_addr, Regist } void LiftoffAssembler::AtomicLoad(LiftoffRegister dst, Register src_addr, @@ -27,7 +27,7 @@ LoadType type, LiftoffRegList /* pinned */, bool /* i64_offset */) { if (type.value() != LoadType::kI64Load) { -@@ -593,7 +593,7 @@ void LiftoffAssembler::AtomicLoad(LiftoffRegister dst, +@@ -671,7 +671,7 @@ void LiftoffAssembler::AtomicLoad(LiftoffRegister dst, } void LiftoffAssembler::AtomicStore(Register dst_addr, Register offset_reg, @@ -36,7 +36,7 @@ StoreType type, LiftoffRegList pinned, bool /* i64_offset */) { DCHECK_NE(offset_reg, no_reg); -@@ -663,7 +663,7 @@ enum Binop { kAdd, kSub, kAnd, kOr, kXor, kExchange }; +@@ -741,7 +741,7 @@ enum Binop { kAdd, kSub, kAnd, kOr, kXor, kExchange }; inline void AtomicAddOrSubOrExchange32(LiftoffAssembler* lasm, Binop binop, Register dst_addr, Register offset_reg, @@ -45,7 +45,7 @@ LiftoffRegister value, LiftoffRegister result, StoreType type) { DCHECK_EQ(value, result); -@@ -730,7 +730,7 @@ inline void AtomicAddOrSubOrExchange32(LiftoffAssemble +@@ -808,7 +808,7 @@ inline void AtomicAddOrSubOrExchange32(LiftoffAssemble } inline void AtomicBinop32(LiftoffAssembler* lasm, Binop op, Register dst_addr, @@ -54,7 +54,7 @@ LiftoffRegister value, LiftoffRegister result, StoreType type) { DCHECK_EQ(value, result); -@@ -842,7 +842,7 @@ inline void AtomicBinop32(LiftoffAssembler* lasm, Bino +@@ -920,7 +920,7 @@ inline void AtomicBinop32(LiftoffAssembler* lasm, Bino } inline void AtomicBinop64(LiftoffAssembler* lasm, Binop op, Register dst_addr, @@ -63,7 +63,7 @@ LiftoffRegister value, LiftoffRegister result) { // We need {ebx} here, which is the root register. As the root register it // needs special treatment. As we use {ebx} directly in the code below, we -@@ -934,7 +934,7 @@ inline void AtomicBinop64(LiftoffAssembler* lasm, Bino +@@ -1012,7 +1012,7 @@ inline void AtomicBinop64(LiftoffAssembler* lasm, Bino } // namespace liftoff void LiftoffAssembler::AtomicAdd(Register dst_addr, Register offset_reg, @@ -72,7 +72,7 @@ LiftoffRegister result, StoreType type, bool /* i64_offset */) { if (type.value() == StoreType::kI64Store) { -@@ -948,7 +948,7 @@ void LiftoffAssembler::AtomicAdd(Register dst_addr, Re +@@ -1026,7 +1026,7 @@ void LiftoffAssembler::AtomicAdd(Register dst_addr, Re } void LiftoffAssembler::AtomicSub(Register dst_addr, Register offset_reg, @@ -81,7 +81,7 @@ LiftoffRegister result, StoreType type, bool /* i64_offset */) { if (type.value() == StoreType::kI64Store) { -@@ -961,7 +961,7 @@ void LiftoffAssembler::AtomicSub(Register dst_addr, Re +@@ -1039,7 +1039,7 @@ void LiftoffAssembler::AtomicSub(Register dst_addr, Re } void LiftoffAssembler::AtomicAnd(Register dst_addr, Register offset_reg, @@ -90,7 +90,7 @@ LiftoffRegister result, StoreType type, bool /* i64_offset */) { if (type.value() == StoreType::kI64Store) { -@@ -975,7 +975,7 @@ void LiftoffAssembler::AtomicAnd(Register dst_addr, Re +@@ -1053,7 +1053,7 @@ void LiftoffAssembler::AtomicAnd(Register dst_addr, Re } void LiftoffAssembler::AtomicOr(Register dst_addr, Register offset_reg, @@ -99,7 +99,7 @@ LiftoffRegister result, StoreType type, bool /* i64_offset */) { if (type.value() == StoreType::kI64Store) { -@@ -989,7 +989,7 @@ void LiftoffAssembler::AtomicOr(Register dst_addr, Reg +@@ -1067,7 +1067,7 @@ void LiftoffAssembler::AtomicOr(Register dst_addr, Reg } void LiftoffAssembler::AtomicXor(Register dst_addr, Register offset_reg, @@ -108,7 +108,7 @@ LiftoffRegister result, StoreType type, bool /* i64_offset */) { if (type.value() == StoreType::kI64Store) { -@@ -1003,7 +1003,7 @@ void LiftoffAssembler::AtomicXor(Register dst_addr, Re +@@ -1081,7 +1081,7 @@ void LiftoffAssembler::AtomicXor(Register dst_addr, Re } void LiftoffAssembler::AtomicExchange(Register dst_addr, Register offset_reg, @@ -117,7 +117,7 @@ LiftoffRegister value, LiftoffRegister result, StoreType type, bool /* i64_offset */) { -@@ -1018,7 +1018,7 @@ void LiftoffAssembler::AtomicExchange(Register dst_add +@@ -1096,7 +1096,7 @@ void LiftoffAssembler::AtomicExchange(Register dst_add } void LiftoffAssembler::AtomicCompareExchange( diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.cc new file mode 100644 index 000000000000..57c26827fc25 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.cc @@ -0,0 +1,51 @@ +--- src/3rdparty/chromium/v8/src/wasm/jump-table-assembler.cc.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/wasm/jump-table-assembler.cc +@@ -52,15 +52,21 @@ void JumpTableAssembler::InitializeJumpsToLazyCompileT + #if V8_TARGET_ARCH_X64 + void JumpTableAssembler::EmitLazyCompileJumpSlot(uint32_t func_index, + Address lazy_compile_target) { ++ intptr_t displacement = ++ static_cast<intptr_t>(reinterpret_cast<uint8_t*>(lazy_compile_target) - ++ (pc_ + 9) - kNearJmpInstrSize); ++ if (!is_int32(displacement)) return; ++ CodeEntry(); // 4 bytes + // Use a push, because mov to an extended register takes 6 bytes. +- pushq_imm32(func_index); // 5 bytes +- EmitJumpSlot(lazy_compile_target); // 5 bytes ++ pushq_imm32(func_index); // 5 bytes ++ near_jmp(displacement, RelocInfo::NO_INFO); // 5 bytes + } + + bool JumpTableAssembler::EmitJumpSlot(Address target) { + intptr_t displacement = static_cast<intptr_t>( +- reinterpret_cast<uint8_t*>(target) - pc_ - kNearJmpInstrSize); ++ reinterpret_cast<uint8_t*>(target) - (pc_ + 4) - kNearJmpInstrSize); + if (!is_int32(displacement)) return false; ++ CodeEntry(); // 4 bytes + near_jmp(displacement, RelocInfo::NO_INFO); // 5 bytes + return true; + } +@@ -68,11 +74,12 @@ bool JumpTableAssembler::EmitJumpSlot(Address target) + void JumpTableAssembler::EmitFarJumpSlot(Address target) { + Label data; + int start_offset = pc_offset(); ++ CodeEntry(); // 4 bytes + jmp(Operand(&data)); // 6 bytes +- Nop(2); // 2 bytes ++ Nop(6); // 6 bytes + // The data must be properly aligned, so it can be patched atomically (see + // {PatchFarJumpSlot}). +- DCHECK_EQ(start_offset + kSystemPointerSize, pc_offset()); ++ DCHECK_EQ(start_offset + kFarJumpTableSlotOffset, pc_offset()); + USE(start_offset); + bind(&data); + dq(target); // 8 bytes +@@ -83,7 +90,7 @@ void JumpTableAssembler::PatchFarJumpSlot(Address slot + // The slot needs to be pointer-size aligned so we can atomically update it. + DCHECK(IsAligned(slot, kSystemPointerSize)); + // Offset of the target is at 8 bytes, see {EmitFarJumpSlot}. +- reinterpret_cast<std::atomic<Address>*>(slot + kSystemPointerSize) ++ reinterpret_cast<std::atomic<Address>*>(slot + kFarJumpTableSlotOffset) + ->store(target, std::memory_order_relaxed); + // The update is atomic because the address is properly aligned. + // Because of cache coherence, the data update will eventually be seen by all diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.h new file mode 100644 index 000000000000..b1f3d1d5539f --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_v8_src_wasm_jump-table-assembler.h @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/v8/src/wasm/jump-table-assembler.h.orig 2023-07-16 15:47:57 UTC ++++ src/3rdparty/chromium/v8/src/wasm/jump-table-assembler.h +@@ -185,9 +185,10 @@ class V8_EXPORT_PRIVATE JumpTableAssembler : public Ma + // boundaries. The jump table line size has been chosen to satisfy this. + #if V8_TARGET_ARCH_X64 + static constexpr int kJumpTableLineSize = 64; +- static constexpr int kJumpTableSlotSize = 5; +- static constexpr int kFarJumpTableSlotSize = 16; +- static constexpr int kLazyCompileTableSlotSize = 10; ++ static constexpr int kJumpTableSlotSize = 5 + 4; ++ static constexpr int kFarJumpTableSlotOffset = 2 * kSystemPointerSize; ++ static constexpr int kFarJumpTableSlotSize = 16 + 8; ++ static constexpr int kLazyCompileTableSlotSize = 10 + 4; + #elif V8_TARGET_ARCH_IA32 + static constexpr int kJumpTableLineSize = 64; + static constexpr int kJumpTableSlotSize = 5; diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_browser__main__parts__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_browser__main__parts__impl.cc new file mode 100644 index 000000000000..bc76caba35f0 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_browser__main__parts__impl.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/weblayer/browser/browser_main_parts_impl.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/weblayer/browser/browser_main_parts_impl.cc +@@ -82,7 +82,7 @@ + + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. +-#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) ++#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD)) + #include "ui/base/ime/init/input_method_initializer.h" + #endif + +@@ -201,7 +201,7 @@ int BrowserMainPartsImpl::PreEarlyInitialization() { + + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. +-#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) ++#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD)) + ui::InitializeInputMethodForTesting(); + #endif + #if BUILDFLAG(IS_ANDROID) diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.cc new file mode 100644 index 000000000000..e30491b9f28a --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/weblayer/browser/content_browser_client_impl.cc.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/weblayer/browser/content_browser_client_impl.cc +@@ -154,7 +154,7 @@ + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include "content/public/common/content_descriptors.h" + #endif + +@@ -1025,7 +1025,7 @@ SafeBrowsingService* ContentBrowserClientImpl::GetSafe + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + void ContentBrowserClientImpl::GetAdditionalMappedFilesForChildProcess( + const base::CommandLine& command_line, + int child_process_id, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.h b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.h new file mode 100644 index 000000000000..bcf8fe116242 --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_content__browser__client__impl.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/weblayer/browser/content_browser_client_impl.h.orig 2023-09-13 12:11:42 UTC ++++ src/3rdparty/chromium/weblayer/browser/content_browser_client_impl.h +@@ -184,7 +184,7 @@ class ContentBrowserClientImpl : public content::Conte + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + void GetAdditionalMappedFilesForChildProcess( + const base::CommandLine& command_line, + int child_process_id, diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_system__network__context__manager.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_system__network__context__manager.cc new file mode 100644 index 000000000000..9b1ea960f8ef --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_browser_system__network__context__manager.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/weblayer/browser/system_network_context_manager.cc.orig 2022-03-25 21:59:56 UTC ++++ src/3rdparty/chromium/weblayer/browser/system_network_context_manager.cc +@@ -69,7 +69,7 @@ void SystemNetworkContextManager::ConfigureDefaultNetw + network_context_params->user_agent = user_agent; + // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // complete. +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // We're not configuring the cookie encryption on these platforms yet. + network_context_params->enable_encrypted_cookies = false; + #endif // (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || diff --git a/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_common_weblayer__paths.cc b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_common_weblayer__paths.cc new file mode 100644 index 000000000000..80c3836c307c --- /dev/null +++ b/www/qt6-webengine/files/patch-src_3rdparty_chromium_weblayer_common_weblayer__paths.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/weblayer/common/weblayer_paths.cc.orig 2022-03-25 21:59:56 UTC ++++ src/3rdparty/chromium/weblayer/common/weblayer_paths.cc +@@ -18,7 +18,7 @@ + + #if BUILDFLAG(IS_WIN) + #include "base/base_paths_win.h" +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + #include "base/nix/xdg_util.h" + #endif + +@@ -36,7 +36,7 @@ bool GetDefaultUserDataDirectory(base::FilePath* resul + return false; + *result = result->AppendASCII("weblayer"); + return true; +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + std::unique_ptr<base::Environment> env(base::Environment::Create()); + base::FilePath config_dir(base::nix::GetXDGDirectory( + env.get(), base::nix::kXdgConfigHomeEnvVar, base::nix::kDotConfigDir)); diff --git a/www/qt6-webengine/files/patch-src_core_CMakeLists.txt b/www/qt6-webengine/files/patch-src_core_CMakeLists.txt index 2c1eeafc4734..ce8adebaa3df 100644 --- a/www/qt6-webengine/files/patch-src_core_CMakeLists.txt +++ b/www/qt6-webengine/files/patch-src_core_CMakeLists.txt @@ -1,6 +1,6 @@ ---- src/core/CMakeLists.txt.orig 2023-08-16 19:50:41 UTC +--- src/core/CMakeLists.txt.orig 2023-12-12 22:08:45 UTC +++ src/core/CMakeLists.txt -@@ -20,7 +20,7 @@ add_subdirectory(tools) +@@ -20,7 +20,7 @@ add_subdirectory(tools/qwebengine_convert_dict) # TOOLCHAIN SETUP ## @@ -9,7 +9,7 @@ setup_toolchains() endif() -@@ -405,7 +405,7 @@ foreach(arch ${archs}) +@@ -409,7 +409,7 @@ foreach(arch ${archs}) CONDITION QT_FEATURE_webengine_embedded_build ) @@ -18,7 +18,7 @@ list(APPEND gnArgArg use_gtk=false # GTK toolkit bindings use_qt=false # Qt5 toolkit bindings -@@ -415,7 +415,7 @@ foreach(arch ${archs}) +@@ -418,7 +418,7 @@ foreach(arch ${archs}) use_bundled_fontconfig=false use_glib=false use_bluez=false @@ -27,7 +27,7 @@ is_cfi=false use_ozone=true ozone_auto_platforms=false -@@ -474,6 +474,10 @@ foreach(arch ${archs}) +@@ -477,6 +477,10 @@ foreach(arch ${archs}) extend_gn_list(gnArgArg ARGS use_pulseaudio CONDITION QT_FEATURE_webengine_system_pulseaudio @@ -37,4 +37,4 @@ + CONDITION QT_FEATURE_webengine_system_sndio ) extend_gn_list(gnArgArg - ARGS use_vaapi + ARGS use_system_minigbm diff --git a/www/qt6-webengine/files/patch-src_core_api_configure.cmake b/www/qt6-webengine/files/patch-src_core_api_configure.cmake index 37bf6d26192b..ddeccc69e5bb 100644 --- a/www/qt6-webengine/files/patch-src_core_api_configure.cmake +++ b/www/qt6-webengine/files/patch-src_core_api_configure.cmake @@ -1,14 +1,14 @@ ---- src/core/api/configure.cmake.orig 2023-11-20 16:08:07 UTC +--- src/core/api/configure.cmake.orig 2023-12-12 22:08:45 UTC +++ src/core/api/configure.cmake @@ -10,6 +10,7 @@ if(NOT QT_CONFIGURE_RUNNING) - if(PkgConfig_FOUND) + if(PkgConfig_FOUND AND QT_FEATURE_pkg_config) pkg_check_modules(ALSA alsa IMPORTED_TARGET) pkg_check_modules(PULSEAUDIO libpulse>=0.9.10 libpulse-mainloop-glib) + pkg_check_modules(SNDIO libsndio) pkg_check_modules(XDAMAGE xdamage) pkg_check_modules(POPPLER_CPP poppler-cpp IMPORTED_TARGET) pkg_check_modules(GBM gbm) -@@ -84,6 +85,11 @@ qt_feature("webengine-printing-and-pdf" PRIVATE +@@ -90,6 +91,11 @@ qt_feature("webengine-printing-and-pdf" PRIVATE CONDITION TARGET Qt::PrintSupport AND QT_FEATURE_printer AND (CUPS_FOUND OR WIN32) ) @@ -20,7 +20,7 @@ qt_feature("webengine-pepper-plugins" PRIVATE LABEL "Pepper Plugins" PURPOSE "Enables use of Pepper plugins." -@@ -164,7 +170,7 @@ qt_feature("webengine-vaapi" PRIVATE +@@ -170,7 +176,7 @@ qt_feature("webengine-vaapi" PRIVATE PURPOSE "Enables support for VA-API hardware acceleration" AUTODETECT GBM_FOUND AND LIBVA_FOUND AND QT_FEATURE_vulkan # hardware accelerated encoding requires bundled libvpx @@ -29,7 +29,7 @@ ) # internal testing feature qt_feature("webengine-system-poppler" PRIVATE -@@ -199,15 +205,19 @@ qt_configure_add_summary_entry( +@@ -205,15 +211,19 @@ qt_configure_add_summary_entry( ) qt_configure_add_summary_entry( ARGS "webengine-vaapi" diff --git a/www/qt6-webengine/files/patch-src_pdf_CMakeLists.txt b/www/qt6-webengine/files/patch-src_pdf_CMakeLists.txt index 02f80b1dfddd..c5fd9473264d 100644 --- a/www/qt6-webengine/files/patch-src_pdf_CMakeLists.txt +++ b/www/qt6-webengine/files/patch-src_pdf_CMakeLists.txt @@ -1,16 +1,16 @@ ---- src/pdf/CMakeLists.txt.orig 2023-10-03 19:49:54 UTC +--- src/pdf/CMakeLists.txt.orig 2023-12-12 22:08:45 UTC +++ src/pdf/CMakeLists.txt @@ -71,7 +71,7 @@ add_dependencies(docs generate_pdf_attributions) # TOOLCHAIN SETUP ## --if(LINUX OR MINGW) -+if(LINUX OR MINGW OR FREEBSD) +-if(LINUX OR MINGW OR ANDROID) ++if(LINUX OR MINGW OR ANDROID OR FREEBSD) setup_toolchains() endif() -@@ -134,7 +134,7 @@ foreach(arch ${archs}) - strip_absolute_paths_from_debug_symbols=false +@@ -138,7 +138,7 @@ foreach(arch ${archs}) + v8_enable_webassembly=false ) - if(LINUX OR ANDROID) diff --git a/www/qt6-webengine/pkg-plist b/www/qt6-webengine/pkg-plist index 3a88087a9a7c..218e4c51ff94 100644 --- a/www/qt6-webengine/pkg-plist +++ b/www/qt6-webengine/pkg-plist @@ -2,6 +2,7 @@ %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qtwebenginecoreglobal_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginecontextmenurequest_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginecookiestore_p.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginedesktopmediarequest_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginedownloadrequest_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebengineglobalsettings_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginehistory_p.h @@ -11,11 +12,13 @@ %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebengineprofile_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginescriptcollection_p.h %%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebengineurlrequestinfo_p.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginewebauthuxrequest_p.h %%QT_INCDIR%%/QtWebEngineCore/QWebEngineCertificateError %%QT_INCDIR%%/QtWebEngineCore/QWebEngineClientCertificateSelection %%QT_INCDIR%%/QtWebEngineCore/QWebEngineClientCertificateStore %%QT_INCDIR%%/QtWebEngineCore/QWebEngineContextMenuRequest %%QT_INCDIR%%/QtWebEngineCore/QWebEngineCookieStore +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineDesktopMediaRequest %%QT_INCDIR%%/QtWebEngineCore/QWebEngineDownloadRequest %%QT_INCDIR%%/QtWebEngineCore/QWebEngineFileSystemAccessRequest %%QT_INCDIR%%/QtWebEngineCore/QWebEngineFindTextResult @@ -41,6 +44,8 @@ %%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlRequestJob %%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlScheme %%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlSchemeHandler +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineWebAuthPinRequest +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineWebAuthUxRequest %%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCore %%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCoreDepends %%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCoreVersion @@ -52,6 +57,7 @@ %%QT_INCDIR%%/QtWebEngineCore/qwebengineclientcertificatestore.h %%QT_INCDIR%%/QtWebEngineCore/qwebenginecontextmenurequest.h %%QT_INCDIR%%/QtWebEngineCore/qwebenginecookiestore.h +%%QT_INCDIR%%/QtWebEngineCore/qwebenginedesktopmediarequest.h %%QT_INCDIR%%/QtWebEngineCore/qwebenginedownloadrequest.h %%QT_INCDIR%%/QtWebEngineCore/qwebenginefilesystemaccessrequest.h %%QT_INCDIR%%/QtWebEngineCore/qwebenginefindtextresult.h @@ -75,6 +81,7 @@ %%QT_INCDIR%%/QtWebEngineCore/qwebengineurlrequestjob.h %%QT_INCDIR%%/QtWebEngineCore/qwebengineurlscheme.h %%QT_INCDIR%%/QtWebEngineCore/qwebengineurlschemehandler.h +%%QT_INCDIR%%/QtWebEngineCore/qwebenginewebauthuxrequest.h %%QT_INCDIR%%/QtWebEngineQuick/%%FULLVER%%/QtWebEngineQuick/private/qquickwebengineaction_p.h %%QT_INCDIR%%/QtWebEngineQuick/%%FULLVER%%/QtWebEngineQuick/private/qquickwebengineaction_p_p.h %%QT_INCDIR%%/QtWebEngineQuick/%%FULLVER%%/QtWebEngineQuick/private/qquickwebengineclientcertificateselection_p.h @@ -243,11 +250,13 @@ libdata/pkgconfig/Qt6WebEngineQuickDelegatesQml.pc libdata/pkgconfig/Qt6WebEngineWidgets.pc %%QT_TOOLDIR%%/QtWebEngineProcess %%QT_TOOLDIR%%/qwebengine_convert_dict +%%DRIVER%%%%QT_TOOLDIR%%/webenginedriver %%QT_DATADIR%%/modules/WebEngineCore.json %%QT_DATADIR%%/modules/WebEngineQuick.json %%QT_DATADIR%%/modules/WebEngineQuickDelegatesQml.json %%QT_DATADIR%%/modules/WebEngineWidgets.json %%QT_DATADIR%%/resources/icudtl.dat +@dir %%QT_DATADIR%%/resources/locales %%QT_DATADIR%%/resources/qtwebengine_devtools_resources.pak %%QT_DATADIR%%/resources/qtwebengine_resources.pak %%QT_DATADIR%%/resources/qtwebengine_resources_100p.pak diff --git a/www/qt6-websockets/distinfo b/www/qt6-websockets/distinfo index 9cfc02d380e7..4f6c0c4014f0 100644 --- a/www/qt6-websockets/distinfo +++ b/www/qt6-websockets/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711664653 -SHA256 (KDE/Qt/6.6.3/qtwebsockets-everywhere-src-6.6.3.tar.xz) = 16f481765794dd66e4538a1074fbc9a68e2091eda5f99868cc27d9b1a931a036 -SIZE (KDE/Qt/6.6.3/qtwebsockets-everywhere-src-6.6.3.tar.xz) = 455068 +TIMESTAMP = 1712115502 +SHA256 (KDE/Qt/6.7.0/qtwebsockets-everywhere-src-6.7.0.tar.xz) = 5ffc77da6b36cdf18e04c975a0fbf243968806a93a6291bcd2e9cd0b26139736 +SIZE (KDE/Qt/6.7.0/qtwebsockets-everywhere-src-6.7.0.tar.xz) = 454868 diff --git a/www/qt6-webview/distinfo b/www/qt6-webview/distinfo index 96032685854f..bc7daf5619a4 100644 --- a/www/qt6-webview/distinfo +++ b/www/qt6-webview/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711664655 -SHA256 (KDE/Qt/6.6.3/qtwebview-everywhere-src-6.6.3.tar.xz) = 206463df560746b9ddfee3d5aae4a50831b5660510f862998e7b319ee2ef4c02 -SIZE (KDE/Qt/6.6.3/qtwebview-everywhere-src-6.6.3.tar.xz) = 138776 +TIMESTAMP = 1712115504 +SHA256 (KDE/Qt/6.7.0/qtwebview-everywhere-src-6.7.0.tar.xz) = 3619e07138cc1fe2fa091e25ba6548f5f11f26f1ebf68a56f193aed336ea5cf9 +SIZE (KDE/Qt/6.7.0/qtwebview-everywhere-src-6.7.0.tar.xz) = 138160 diff --git a/www/rearx/Makefile b/www/rearx/Makefile index d7872e7d4c1a..900076dea86f 100644 --- a/www/rearx/Makefile +++ b/www/rearx/Makefile @@ -1,7 +1,7 @@ PORTNAME= rearx DISTVERSIONPREFIX= v DISTVERSION= 0.1.4 -PORTREVISION= 29 +PORTREVISION= 30 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/reddsaver/Makefile b/www/reddsaver/Makefile index 1be10dc73a5e..c700a4cf9fab 100644 --- a/www/reddsaver/Makefile +++ b/www/reddsaver/Makefile @@ -1,7 +1,7 @@ PORTNAME= reddsaver DISTVERSIONPREFIX= v DISTVERSION= 0.4.0 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/remark42/Makefile b/www/remark42/Makefile index edc6033db529..a515825e1caf 100644 --- a/www/remark42/Makefile +++ b/www/remark42/Makefile @@ -1,7 +1,6 @@ PORTNAME= remark42 DISTVERSIONPREFIX= v -DISTVERSION= 1.12.1 -PORTREVISION= 6 +DISTVERSION= 1.13.0 CATEGORIES= www MASTER_SITES= LOCAL/delphij:npmcache DISTFILES= ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npmcache @@ -33,70 +32,70 @@ PLIST_FILES= libexec/${PORTNAME} GH_TUPLE= \ Depado:bfchroma:v2.0.0:depado_bfchroma_v2/vendor/github.com/Depado/bfchroma/v2 \ - PuerkitoBio:goquery:v1.8.1:puerkitobio_goquery/vendor/github.com/PuerkitoBio/goquery \ + PuerkitoBio:goquery:v1.9.1:puerkitobio_goquery/vendor/github.com/PuerkitoBio/goquery \ ajg:form:v1.5.1:ajg_form/vendor/github.com/ajg/form \ - alecthomas:chroma:v2.8.0:alecthomas_chroma_v2/vendor/github.com/alecthomas/chroma/v2 \ + alecthomas:chroma:v2.13.0:alecthomas_chroma_v2/vendor/github.com/alecthomas/chroma/v2 \ andybalholm:cascadia:v1.3.2:andybalholm_cascadia/vendor/github.com/andybalholm/cascadia \ aymerick:douceur:v0.2.0:aymerick_douceur/vendor/github.com/aymerick/douceur \ cespare:xxhash:v2.2.0:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \ davecgh:go-spew:v1.1.1:davecgh_go_spew/vendor/github.com/davecgh/go-spew \ - dghubble:oauth1:v0.7.2:dghubble_oauth1/vendor/github.com/dghubble/oauth1 \ + dghubble:oauth1:v0.7.3:dghubble_oauth1/vendor/github.com/dghubble/oauth1 \ dgryski:go-rendezvous:9f7001d12a5f:dgryski_go_rendezvous/vendor/github.com/dgryski/go-rendezvous \ didip:tollbooth:v7.0.1:didip_tollbooth_v7/vendor/github.com/didip/tollbooth/v7 \ didip:tollbooth_chi:d662a7f6928f:didip_tollbooth_chi/vendor/github.com/didip/tollbooth_chi \ - dlclark:regexp2:v1.10.0:dlclark_regexp2/vendor/github.com/dlclark/regexp2 \ - etcd-io:bbolt:v1.3.7:etcd_io_bbolt/vendor/go.etcd.io/bbolt \ - go-chi:chi:v5.0.10:go_chi_chi_v5/vendor/github.com/go-chi/chi/v5 \ + dlclark:regexp2:v1.11.0:dlclark_regexp2/vendor/github.com/dlclark/regexp2 \ + etcd-io:bbolt:v1.3.9:etcd_io_bbolt/vendor/go.etcd.io/bbolt \ + go-chi:chi:v5.0.12:go_chi_chi_v5/vendor/github.com/go-chi/chi/v5 \ go-chi:cors:v1.2.1:go_chi_cors/vendor/github.com/go-chi/cors \ go-chi:render:v1.0.3:go_chi_render/vendor/github.com/go-chi/render \ go-oauth2:oauth2:v4.5.2:go_oauth2_oauth2_v4/vendor/github.com/go-oauth2/oauth2/v4 \ - go-pkgz:auth:v1.22.0:go_pkgz_auth/vendor/github.com/go-pkgz/auth \ - go-pkgz:email:v0.4.1:go_pkgz_email/vendor/github.com/go-pkgz/email \ + go-pkgz:auth:v1.23.0:go_pkgz_auth/vendor/github.com/go-pkgz/auth \ + go-pkgz:email:v0.5.0:go_pkgz_email/vendor/github.com/go-pkgz/email \ go-pkgz:expirable-cache:v1.0.0:go_pkgz_expirable_cache/vendor/github.com/go-pkgz/expirable-cache \ go-pkgz:jrpc:v0.3.0:go_pkgz_jrpc/vendor/github.com/go-pkgz/jrpc \ - go-pkgz:lcw:v1.0.2:go_pkgz_lcw/vendor/github.com/go-pkgz/lcw \ - go-pkgz:lgr:v0.11.0:go_pkgz_lgr/vendor/github.com/go-pkgz/lgr \ - go-pkgz:notify:v0.2.0:go_pkgz_notify/vendor/github.com/go-pkgz/notify \ + go-pkgz:lcw:v2.0.0:go_pkgz_lcw_v2/vendor/github.com/go-pkgz/lcw \ + go-pkgz:lgr:v0.11.1:go_pkgz_lgr/vendor/github.com/go-pkgz/lgr \ + go-pkgz:notify:v1.1.0:go_pkgz_notify/vendor/github.com/go-pkgz/notify \ go-pkgz:repeater:v1.1.3:go_pkgz_repeater/vendor/github.com/go-pkgz/repeater \ - go-pkgz:rest:v1.17.0:go_pkgz_rest/vendor/github.com/go-pkgz/rest \ + go-pkgz:rest:v1.19.0:go_pkgz_rest/vendor/github.com/go-pkgz/rest \ go-pkgz:syncs:v1.3.2:go_pkgz_syncs/vendor/github.com/go-pkgz/syncs \ - go-redis:redis:v8.11.5:go_redis_redis_v8/vendor/github.com/go-redis/redis/v8 \ go-yaml:yaml:v3.0.1:go_yaml_yaml/vendor/gopkg.in/yaml.v3 \ golang-jwt:jwt:v3.2.2:golang_jwt_jwt/vendor/github.com/golang-jwt/jwt \ - golang:appengine:v1.6.7:golang_appengine/vendor/google.golang.org/appengine \ - golang:crypto:v0.12.0:golang_crypto/vendor/golang.org/x/crypto \ - golang:image:v0.11.0:golang_image/vendor/golang.org/x/image \ - golang:net:v0.14.0:golang_net/vendor/golang.org/x/net \ - golang:oauth2:v0.11.0:golang_oauth2/vendor/golang.org/x/oauth2 \ - golang:protobuf:v1.5.3:golang_protobuf/vendor/github.com/golang/protobuf \ + golang:appengine:v1.6.8:golang_appengine/vendor/google.golang.org/appengine \ + golang:crypto:v0.22.0:golang_crypto/vendor/golang.org/x/crypto \ + golang:image:v0.15.0:golang_image/vendor/golang.org/x/image \ + golang:net:v0.24.0:golang_net/vendor/golang.org/x/net \ + golang:oauth2:v0.18.0:golang_oauth2/vendor/golang.org/x/oauth2 \ + golang:protobuf:v1.5.4:golang_protobuf/vendor/github.com/golang/protobuf \ golang:snappy:v0.0.4:golang_snappy/vendor/github.com/golang/snappy \ - golang:sync:v0.3.0:golang_sync/vendor/golang.org/x/sync \ - golang:sys:v0.11.0:golang_sys/vendor/golang.org/x/sys \ - golang:text:v0.12.0:golang_text/vendor/golang.org/x/text \ - google:uuid:v1.3.0:google_uuid/vendor/github.com/google/uuid \ - googleapis:google-cloud-go:compute/v1.23.0:googleapis_google_cloud_go_compute/vendor/cloud.google.com/go \ + golang:sync:v0.6.0:golang_sync/vendor/golang.org/x/sync \ + golang:sys:v0.19.0:golang_sys/vendor/golang.org/x/sys \ + golang:text:v0.14.0:golang_text/vendor/golang.org/x/text \ + google:uuid:v1.6.0:google_uuid/vendor/github.com/google/uuid \ + googleapis:google-cloud-go:compute/v1.25.1:googleapis_google_cloud_go_compute/vendor/cloud.google.com/go \ googleapis:google-cloud-go:compute/metadata/v0.2.3:googleapis_google_cloud_go/vendor/cloud.google.com/go/compute/metadata \ - gorilla:css:v1.0.0:gorilla_css/vendor/github.com/gorilla/css \ - gorilla:feeds:v1.1.1:gorilla_feeds/vendor/github.com/gorilla/feeds \ - gorilla:websocket:v1.5.0:gorilla_websocket/vendor/github.com/gorilla/websocket \ + gorilla:css:v1.0.1:gorilla_css/vendor/github.com/gorilla/css \ + gorilla:feeds:v1.1.2:gorilla_feeds/vendor/github.com/gorilla/feeds \ + gorilla:websocket:v1.5.1:gorilla_websocket/vendor/github.com/gorilla/websocket \ hashicorp:errwrap:v1.1.0:hashicorp_errwrap/vendor/github.com/hashicorp/errwrap \ hashicorp:go-multierror:v1.1.1:hashicorp_go_multierror/vendor/github.com/hashicorp/go-multierror \ - hashicorp:golang-lru:v0.5.4:hashicorp_golang_lru/vendor/github.com/hashicorp/golang-lru \ + hashicorp:golang-lru:v2.0.7:hashicorp_golang_lru_v2/vendor/github.com/hashicorp/golang-lru/v2 \ jessevdk:go-flags:v1.5.0:jessevdk_go_flags/vendor/github.com/jessevdk/go-flags \ - klauspost:compress:v1.16.7:klauspost_compress/vendor/github.com/klauspost/compress \ + klauspost:compress:v1.17.7:klauspost_compress/vendor/github.com/klauspost/compress \ kyokomi:emoji:v2.2.12:kyokomi_emoji_v2/vendor/github.com/kyokomi/emoji/v2 \ - microcosm-cc:bluemonday:v1.0.25:microcosm_cc_bluemonday/vendor/github.com/microcosm-cc/bluemonday \ - mongodb:mongo-go-driver:v1.12.1:mongodb_mongo_go_driver/vendor/go.mongodb.org/mongo-driver \ + microcosm-cc:bluemonday:v1.0.26:microcosm_cc_bluemonday/vendor/github.com/microcosm-cc/bluemonday \ + mongodb:mongo-go-driver:v1.14.0:mongodb_mongo_go_driver/vendor/go.mongodb.org/mongo-driver \ montanaflynn:stats:v0.7.1:montanaflynn_stats/vendor/github.com/montanaflynn/stats \ - nullrocks:identicon:7875f45b0022:nullrocks_identicon/vendor/github.com/nullrocks/identicon \ pmezard:go-difflib:v1.0.0:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \ - protocolbuffers:protobuf-go:v1.31.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ + protocolbuffers:protobuf-go:v1.33.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ + redis:go-redis:v9.4.0:redis_go_redis_v9/vendor/github.com/redis/go-redis/v9 \ + rrivera:identicon:d5ba35832c0d:rrivera_identicon/vendor/github.com/rrivera/identicon \ rs:xid:v1.5.0:rs_xid/vendor/github.com/rs/xid \ russross:blackfriday:v2.1.0:russross_blackfriday_v2/vendor/github.com/russross/blackfriday/v2 \ skip2:go-qrcode:da1b6568686e:skip2_go_qrcode/vendor/github.com/skip2/go-qrcode \ - slack-go:slack:v0.12.2:slack_go_slack/vendor/github.com/slack-go/slack \ - stretchr:testify:v1.8.4:stretchr_testify/vendor/github.com/stretchr/testify \ - uber-go:goleak:v1.2.1:uber_go_goleak/vendor/go.uber.org/goleak \ + slack-go:slack:v0.12.4:slack_go_slack/vendor/github.com/slack-go/slack \ + stretchr:testify:v1.9.0:stretchr_testify/vendor/github.com/stretchr/testify \ + uber-go:goleak:v1.3.0:uber_go_goleak/vendor/go.uber.org/goleak \ xdg-go:pbkdf2:v1.0.0:xdg_go_pbkdf2/vendor/github.com/xdg-go/pbkdf2 \ xdg-go:scram:v1.1.2:xdg_go_scram/vendor/github.com/xdg-go/scram \ xdg-go:stringprep:v1.0.4:xdg_go_stringprep/vendor/github.com/xdg-go/stringprep \ @@ -127,6 +126,7 @@ make-npm-cache: extract pre-build: cd ${WRKSRC}/frontend/apps/${PORTNAME} && ${SETENV} HOME=${WRKDIR} npm install --force --legacy-peer-deps cd ${WRKSRC}/frontend/apps/${PORTNAME} && ${SETENV} HOME=${WRKDIR} npm run build + cd ${WRKSRC}/frontend/apps/${PORTNAME} && ${SETENV} HOME=${WRKDIR} npm test ${RM} -r ${WRKSRC}/backend/app/cmd/web/ ${MV} ${WRKSRC}/frontend/apps/remark42/public ${WRKSRC}/backend/app/cmd/web ${FIND} ${WRKSRC}/backend/app/cmd/web -type f \( -name '*.html' -or -name '*.js' -or -name '*.mjs' \) \ diff --git a/www/remark42/distinfo b/www/remark42/distinfo index c430d8745ce7..ac1002f53ef2 100644 --- a/www/remark42/distinfo +++ b/www/remark42/distinfo @@ -1,16 +1,16 @@ -TIMESTAMP = 1693379504 -SHA256 (remark42-npm-cache-1.12.1.tar.xz) = 2ab686cebbd31523e5592f457c8430ed7fd741250ff35063ed875820827faa9c -SIZE (remark42-npm-cache-1.12.1.tar.xz) = 113414220 -SHA256 (umputun-remark42-v1.12.1_GH0.tar.gz) = 5c1f74eb44e3aeba5c7bff68ff3bb6eec5a64f82a1be75ee67e074fe4963de2e -SIZE (umputun-remark42-v1.12.1_GH0.tar.gz) = 6357410 +TIMESTAMP = 1715756871 +SHA256 (remark42-npm-cache-1.13.0.tar.xz) = ae7308c58c097bdcdb812b3031380f41d63de51f8f7a6942b1e076106e817ad0 +SIZE (remark42-npm-cache-1.13.0.tar.xz) = 124074780 +SHA256 (umputun-remark42-v1.13.0_GH0.tar.gz) = 89e3cb35a39295dca55961cc84f12f348304107cfe1f4cbd75fa2e93aaed41cb +SIZE (umputun-remark42-v1.13.0_GH0.tar.gz) = 6500141 SHA256 (Depado-bfchroma-v2.0.0_GH0.tar.gz) = d999d4cf56554c15fe8d1651e4b5e87dbd5b399a0d4c7af7bc7b682e93da4f18 SIZE (Depado-bfchroma-v2.0.0_GH0.tar.gz) = 7451 -SHA256 (PuerkitoBio-goquery-v1.8.1_GH0.tar.gz) = d6e72ac1c5bb92e1106dab9a03bb29cdabd7b1ef8b915e7a6fbcfedb8e2b9388 -SIZE (PuerkitoBio-goquery-v1.8.1_GH0.tar.gz) = 106563 +SHA256 (PuerkitoBio-goquery-v1.9.1_GH0.tar.gz) = ad303bf30070c34fa0f05d2701b7bd024642e0183708a96ed0d2b837b21f4d1a +SIZE (PuerkitoBio-goquery-v1.9.1_GH0.tar.gz) = 107417 SHA256 (ajg-form-v1.5.1_GH0.tar.gz) = 085e8e98cf63d39241c6ba815b9a71d38808c3fadb6b522feb7fab6d123c44c7 SIZE (ajg-form-v1.5.1_GH0.tar.gz) = 14946 -SHA256 (alecthomas-chroma-v2.8.0_GH0.tar.gz) = d6ddb56fd3cf0d7ae2c592f834aced1be4494f21338a79636743c25305a65a00 -SIZE (alecthomas-chroma-v2.8.0_GH0.tar.gz) = 971055 +SHA256 (alecthomas-chroma-v2.13.0_GH0.tar.gz) = f3538d9db5df0d0325f3eaab7e3d465a6ec9ad6067051863ac52241f070824a0 +SIZE (alecthomas-chroma-v2.13.0_GH0.tar.gz) = 1032348 SHA256 (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = f30ebb75a9f43a30478c870dd6e372ac7ef64549f621eceb3b13fd91bfde80cb SIZE (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = 35370 SHA256 (aymerick-douceur-v0.2.0_GH0.tar.gz) = ceed015cddc99b600ccbbd6aa0ebe39063554049f70153887d3df7c21fefedbb @@ -19,120 +19,120 @@ SHA256 (cespare-xxhash-v2.2.0_GH0.tar.gz) = b8c684b9e5e136510913727e6a845b28f817 SIZE (cespare-xxhash-v2.2.0_GH0.tar.gz) = 12334 SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152 -SHA256 (dghubble-oauth1-v0.7.2_GH0.tar.gz) = e89bc3df198e368667e28c15e93a6f5dee3e04fde790ced3c49e98b4c0349b24 -SIZE (dghubble-oauth1-v0.7.2_GH0.tar.gz) = 22692 +SHA256 (dghubble-oauth1-v0.7.3_GH0.tar.gz) = 98480ffc97cf5ca3a80875263ceee0afdacf279b7148e91aec96a52a751efd99 +SIZE (dghubble-oauth1-v0.7.3_GH0.tar.gz) = 22410 SHA256 (dgryski-go-rendezvous-9f7001d12a5f_GH0.tar.gz) = 29584550745fd4b8fce2e2f3def7b9d9ffe2b86cf9b6596b53a660c9bbfe27b6 SIZE (dgryski-go-rendezvous-9f7001d12a5f_GH0.tar.gz) = 1699 SHA256 (didip-tollbooth-v7.0.1_GH0.tar.gz) = fc8258f324a0232ee6fbbc327b3d5ead417349ef4c179fd04a9281fa9363fb99 SIZE (didip-tollbooth-v7.0.1_GH0.tar.gz) = 26431 SHA256 (didip-tollbooth_chi-d662a7f6928f_GH0.tar.gz) = a64242f72a7c7274ce3ba6416fe3028c9c9c13edbfd633a0c2748f8641cbf60a SIZE (didip-tollbooth_chi-d662a7f6928f_GH0.tar.gz) = 1830 -SHA256 (dlclark-regexp2-v1.10.0_GH0.tar.gz) = 3e22a8bc42531c263954350a7ad4620319a77122c991c758883e43339cd5ae48 -SIZE (dlclark-regexp2-v1.10.0_GH0.tar.gz) = 212212 -SHA256 (etcd-io-bbolt-v1.3.7_GH0.tar.gz) = a99c0371bd041a3ca45bd314428976f3f13408ea53dbf2f8aa74b0288889acb2 -SIZE (etcd-io-bbolt-v1.3.7_GH0.tar.gz) = 116699 -SHA256 (go-chi-chi-v5.0.10_GH0.tar.gz) = 60da5049ef0fbe21611b49602afacb8bd0dbf82699e18c02954b8215701fbdd9 -SIZE (go-chi-chi-v5.0.10_GH0.tar.gz) = 83652 +SHA256 (dlclark-regexp2-v1.11.0_GH0.tar.gz) = c380209bd67b67859014f9bfd155aec4bfc4beb65f4a6aec37683b80186b18f7 +SIZE (dlclark-regexp2-v1.11.0_GH0.tar.gz) = 212532 +SHA256 (etcd-io-bbolt-v1.3.9_GH0.tar.gz) = c48eee1b2d2395ac0958e38fa6f78c6e50e1273bdaf2fb2edf2c106d7aece5ff +SIZE (etcd-io-bbolt-v1.3.9_GH0.tar.gz) = 124908 +SHA256 (go-chi-chi-v5.0.12_GH0.tar.gz) = 289c6c9b6edee2da39d23c4bb806b2c2ab320d42985a46f9f5d9c7a4909a7d56 +SIZE (go-chi-chi-v5.0.12_GH0.tar.gz) = 85024 SHA256 (go-chi-cors-v1.2.1_GH0.tar.gz) = d3fa42948b4b365db19c9a6639090c6869b968fa8c5ecb9635dce1a9bf4cf8d8 SIZE (go-chi-cors-v1.2.1_GH0.tar.gz) = 8827 SHA256 (go-chi-render-v1.0.3_GH0.tar.gz) = 4458232c0a5b600bd64d2b48bc90a8469fcd520e070bd390bbe5e43431999495 SIZE (go-chi-render-v1.0.3_GH0.tar.gz) = 6165 SHA256 (go-oauth2-oauth2-v4.5.2_GH0.tar.gz) = 199234a61701d288d379a37d12af32a9bfb9470a8f5f6c714b258405177f06de SIZE (go-oauth2-oauth2-v4.5.2_GH0.tar.gz) = 579318 -SHA256 (go-pkgz-auth-v1.22.0_GH0.tar.gz) = 4da05ea6c19cb3d674a30b5638ecadbb02caae192f059acf0262a4bd587e15b1 -SIZE (go-pkgz-auth-v1.22.0_GH0.tar.gz) = 155767 -SHA256 (go-pkgz-email-v0.4.1_GH0.tar.gz) = e169a0e8d91030f3cce123c4a65719f51d9ac0b45e35152b3569816cbbc171fc -SIZE (go-pkgz-email-v0.4.1_GH0.tar.gz) = 100857 +SHA256 (go-pkgz-auth-v1.23.0_GH0.tar.gz) = 14ac86a24114c36f3a7f650333a8548616b9603696d41681c9b724b15ef7888c +SIZE (go-pkgz-auth-v1.23.0_GH0.tar.gz) = 155182 +SHA256 (go-pkgz-email-v0.5.0_GH0.tar.gz) = 916e50fa63c87226b6387e849f13bf63e67946ab6c704085798d9fbdcf565b73 +SIZE (go-pkgz-email-v0.5.0_GH0.tar.gz) = 100993 SHA256 (go-pkgz-expirable-cache-v1.0.0_GH0.tar.gz) = 631e621c87bc8900a2181fe1b4285a5cd852a4e91145031327cb416b3081547e SIZE (go-pkgz-expirable-cache-v1.0.0_GH0.tar.gz) = 8212 SHA256 (go-pkgz-jrpc-v0.3.0_GH0.tar.gz) = 158ec6a2c711cee4608f5c55ecc0692c3e38b0c6c4f2af01aea008a64822d988 SIZE (go-pkgz-jrpc-v0.3.0_GH0.tar.gz) = 15188 -SHA256 (go-pkgz-lcw-v1.0.2_GH0.tar.gz) = c47096e773a7689be2bbe4c64a888187bafe601991cfcc194b48dfcddee52ec1 -SIZE (go-pkgz-lcw-v1.0.2_GH0.tar.gz) = 28973 -SHA256 (go-pkgz-lgr-v0.11.0_GH0.tar.gz) = f69d505f01b8b2866aaa4575cda30b0296274c4d14794c8bc612967294758d82 -SIZE (go-pkgz-lgr-v0.11.0_GH0.tar.gz) = 15052 -SHA256 (go-pkgz-notify-v0.2.0_GH0.tar.gz) = 558eecf2a17c45b1c66fbf88f7647c17f06450867e92f3dffeb55c59700f7077 -SIZE (go-pkgz-notify-v0.2.0_GH0.tar.gz) = 18854 +SHA256 (go-pkgz-lcw-v2.0.0_GH0.tar.gz) = aa974c65f1dfdd69040238d0f6e4438d63b20083cc899c444f0083aee25f42e3 +SIZE (go-pkgz-lcw-v2.0.0_GH0.tar.gz) = 41497 +SHA256 (go-pkgz-lgr-v0.11.1_GH0.tar.gz) = 20af8601ac0bb4d75d45a67897e92f340e2a401548a2ff677004a8027871ce06 +SIZE (go-pkgz-lgr-v0.11.1_GH0.tar.gz) = 15100 +SHA256 (go-pkgz-notify-v1.1.0_GH0.tar.gz) = 008aa38116a21c64a17f740a6fd978ad583d827797a5097b83a7dfb4a9ce5930 +SIZE (go-pkgz-notify-v1.1.0_GH0.tar.gz) = 18412 SHA256 (go-pkgz-repeater-v1.1.3_GH0.tar.gz) = d3c6bdece4cd305e33efc64369aaab9ebf0452dffb7bd841b9e5a8e861607f43 SIZE (go-pkgz-repeater-v1.1.3_GH0.tar.gz) = 6059 -SHA256 (go-pkgz-rest-v1.17.0_GH0.tar.gz) = d53111732ede3abd0d0e02d274a057495af85f3e4cca547e69b1b850687397fe -SIZE (go-pkgz-rest-v1.17.0_GH0.tar.gz) = 30508 +SHA256 (go-pkgz-rest-v1.19.0_GH0.tar.gz) = 867491d3b07c03455c4534ed43c48d2e4c70ecd449e73d1094349b7e3d637bf2 +SIZE (go-pkgz-rest-v1.19.0_GH0.tar.gz) = 31725 SHA256 (go-pkgz-syncs-v1.3.2_GH0.tar.gz) = 78c90265f7617a9eda774c39deb5f17cd87dfdf161402b3e4dc6e5dac48c0c68 SIZE (go-pkgz-syncs-v1.3.2_GH0.tar.gz) = 9087 -SHA256 (go-redis-redis-v8.11.5_GH0.tar.gz) = 49f307ad85960c25d98bea3b2d155c893e43f41831c1bb4891e1eb867ead1245 -SIZE (go-redis-redis-v8.11.5_GH0.tar.gz) = 168188 SHA256 (go-yaml-yaml-v3.0.1_GH0.tar.gz) = cf05411540d3e6ef8f1fd88434b34f94cedaceb540329031d80e23b74540c4e5 SIZE (go-yaml-yaml-v3.0.1_GH0.tar.gz) = 91173 SHA256 (golang-jwt-jwt-v3.2.2_GH0.tar.gz) = 4cd18a4bb5d949244f137fed0884f93695ff268cb9efaba71ddcf4c50b17efe0 SIZE (golang-jwt-jwt-v3.2.2_GH0.tar.gz) = 39887 -SHA256 (golang-appengine-v1.6.7_GH0.tar.gz) = c623d81235f7c9699e299b328191d813337dd57dcc800d7afdb5130e8c321a8f -SIZE (golang-appengine-v1.6.7_GH0.tar.gz) = 333007 -SHA256 (golang-crypto-v0.12.0_GH0.tar.gz) = f2e422baedd3a599471bfe6adb8e4b337a80bb8a9665d283a8d0810edadbd31c -SIZE (golang-crypto-v0.12.0_GH0.tar.gz) = 1792261 -SHA256 (golang-image-v0.11.0_GH0.tar.gz) = f3f2478f08274fabf49f4947ba98bdda9de35e811a0e28cc76144ae33c816680 -SIZE (golang-image-v0.11.0_GH0.tar.gz) = 5091140 -SHA256 (golang-net-v0.14.0_GH0.tar.gz) = 4e1e28fced7e751f6e91462463bbd5c291601807a7cc2ead1fcc7373bcc93828 -SIZE (golang-net-v0.14.0_GH0.tar.gz) = 1421533 -SHA256 (golang-oauth2-v0.11.0_GH0.tar.gz) = 8cb6f05e8bf107a1b99fe05450eac7b115d1eccb2aaa115cc3212447058c68b6 -SIZE (golang-oauth2-v0.11.0_GH0.tar.gz) = 87085 -SHA256 (golang-protobuf-v1.5.3_GH0.tar.gz) = 48457a6a9e8c78a7556ff5ff4a4c77d7df9bf70e882491ee0f3f1ff06db2bfaa -SIZE (golang-protobuf-v1.5.3_GH0.tar.gz) = 171822 +SHA256 (golang-appengine-v1.6.8_GH0.tar.gz) = 9f0029767e180c64ef42c448f02a247deb2980b2ba6908977ad4c53ebae1abb5 +SIZE (golang-appengine-v1.6.8_GH0.tar.gz) = 628708 +SHA256 (golang-crypto-v0.22.0_GH0.tar.gz) = be0f461ea3ce13349996dca48fbb27537fd738aa6498fb38cfbf87a2ce31e082 +SIZE (golang-crypto-v0.22.0_GH0.tar.gz) = 1813353 +SHA256 (golang-image-v0.15.0_GH0.tar.gz) = 90b6dbb36a61290acac3050008594203c5c094af562b8e7be5af7d3b7230f53b +SIZE (golang-image-v0.15.0_GH0.tar.gz) = 5093053 +SHA256 (golang-net-v0.24.0_GH0.tar.gz) = 6fbc9f6ddc538c67affd1248d68ca85f69e0abe916181b1cd81323093afa96b9 +SIZE (golang-net-v0.24.0_GH0.tar.gz) = 1509016 +SHA256 (golang-oauth2-v0.18.0_GH0.tar.gz) = 497458219c1b4c3c44f0acf33a54c68dd723dcc3a1c592f0ac712265008a182a +SIZE (golang-oauth2-v0.18.0_GH0.tar.gz) = 99719 +SHA256 (golang-protobuf-v1.5.4_GH0.tar.gz) = d75e6960ecfabaaa83a7261b1b630d24e9c63aca79615fb15bf33e11b62fd019 +SIZE (golang-protobuf-v1.5.4_GH0.tar.gz) = 172992 SHA256 (golang-snappy-v0.0.4_GH0.tar.gz) = 77df678795596f9dfecb5744deb984633d780460a7e9a59e0c7ecfe2052b644f SIZE (golang-snappy-v0.0.4_GH0.tar.gz) = 66129 -SHA256 (golang-sync-v0.3.0_GH0.tar.gz) = 0be463c5e9198caec11b59795c780db96d9136df65451196629d74f737ef457a -SIZE (golang-sync-v0.3.0_GH0.tar.gz) = 20003 -SHA256 (golang-sys-v0.11.0_GH0.tar.gz) = 907778fbdf5a900ee51fc45e0a3f2cc7bc693af8a9c972c00679b194b61ea24c -SIZE (golang-sys-v0.11.0_GH0.tar.gz) = 1445078 -SHA256 (golang-text-v0.12.0_GH0.tar.gz) = 223318d6bd0b76fe5cdff3499a0ad0b3bfe573336951b0b141af6cde704252da -SIZE (golang-text-v0.12.0_GH0.tar.gz) = 8967035 -SHA256 (google-uuid-v1.3.0_GH0.tar.gz) = 7f7f37c47980e0afcc178a9ffc390bec29ed2371919b4c07658eb01791a7f921 -SIZE (google-uuid-v1.3.0_GH0.tar.gz) = 16210 -SHA256 (googleapis-google-cloud-go-compute-v1.23.0_GH0.tar.gz) = 3d3378dbc0be74c941caafbd53fdd4a75c277d22599669a97da282e7f6c1aee0 -SIZE (googleapis-google-cloud-go-compute-v1.23.0_GH0.tar.gz) = 21906397 +SHA256 (golang-sync-v0.6.0_GH0.tar.gz) = 23b8fca95397b2293e64e58d333633051ec942b46318ad8f630318e801658b67 +SIZE (golang-sync-v0.6.0_GH0.tar.gz) = 17605 +SHA256 (golang-sys-v0.19.0_GH0.tar.gz) = da82f3d99abd964483ec5d622ddf620e2492ec0a18c154475f35d938c4240c7b +SIZE (golang-sys-v0.19.0_GH0.tar.gz) = 1449493 +SHA256 (golang-text-v0.14.0_GH0.tar.gz) = c80295e75bda599d17ccf74038139b0957b9915fae4e60d8b46f89454ef171a0 +SIZE (golang-text-v0.14.0_GH0.tar.gz) = 8974094 +SHA256 (google-uuid-v1.6.0_GH0.tar.gz) = ee63376b5675376c60e055ed66e5f3651ccc703bd580c022b8ad00cea309252d +SIZE (google-uuid-v1.6.0_GH0.tar.gz) = 20896 +SHA256 (googleapis-google-cloud-go-compute-v1.25.1_GH0.tar.gz) = 32836252941d05a264ef1fbfffe1d1283fbf4bff5274ce57e72f54d9f6967757 +SIZE (googleapis-google-cloud-go-compute-v1.25.1_GH0.tar.gz) = 26378300 SHA256 (googleapis-google-cloud-go-compute-metadata-v0.2.3_GH0.tar.gz) = c83b666324b7ae4997298d55efde8b1a3890d02fb1b86395e305e7f8ad0bfa51 SIZE (googleapis-google-cloud-go-compute-metadata-v0.2.3_GH0.tar.gz) = 18575574 -SHA256 (gorilla-css-v1.0.0_GH0.tar.gz) = 9decf83063b85bcd5392f645fac322e986b5fc596b3e44c3be02ee5939106f4c -SIZE (gorilla-css-v1.0.0_GH0.tar.gz) = 6443 -SHA256 (gorilla-feeds-v1.1.1_GH0.tar.gz) = 361482738014da53e03d0be5b22d39f3a4d9a8f258cf7e09faf3694ee63e091f -SIZE (gorilla-feeds-v1.1.1_GH0.tar.gz) = 14733 -SHA256 (gorilla-websocket-v1.5.0_GH0.tar.gz) = 5d86f9e1c76ff7ceca0747f78b79864fbaec9d440f4fdb03197466e5102a86b0 -SIZE (gorilla-websocket-v1.5.0_GH0.tar.gz) = 54155 +SHA256 (gorilla-css-v1.0.1_GH0.tar.gz) = c56d3dd69a9922440c3a79246ff3b3fe8114128eac94605e3efcd9c465c57e4a +SIZE (gorilla-css-v1.0.1_GH0.tar.gz) = 7769 +SHA256 (gorilla-feeds-v1.1.2_GH0.tar.gz) = d08f470d944757a89fdccdd1f6d0bcdc7757fcfec2eb8e5fc6860007a0e373c2 +SIZE (gorilla-feeds-v1.1.2_GH0.tar.gz) = 16554 +SHA256 (gorilla-websocket-v1.5.1_GH0.tar.gz) = b8c9f291d12c1b2fcbc64b4862bead21d709c2884fe4b3e35ae1e5485c039d8d +SIZE (gorilla-websocket-v1.5.1_GH0.tar.gz) = 61416 SHA256 (hashicorp-errwrap-v1.1.0_GH0.tar.gz) = 0d73891a7a179e50a142ac8832db97b17c792d29ae205b0e6aeedde4c43d51a4 SIZE (hashicorp-errwrap-v1.1.0_GH0.tar.gz) = 8581 SHA256 (hashicorp-go-multierror-v1.1.1_GH0.tar.gz) = 8d1bb3377310e8ffe4c7b5672c5de1eaed153402aebd15d6e5b9673c356a065f SIZE (hashicorp-go-multierror-v1.1.1_GH0.tar.gz) = 13803 -SHA256 (hashicorp-golang-lru-v0.5.4_GH0.tar.gz) = d50c188af0cc8b22e7e4b79e9071694fa06428a9964b22d68dc997fa787a177a -SIZE (hashicorp-golang-lru-v0.5.4_GH0.tar.gz) = 13428 +SHA256 (hashicorp-golang-lru-v2.0.7_GH0.tar.gz) = 312697d0bf6e6bb44e66a94b2a8a07955edf89af10b09e69b5a9101d30ad5149 +SIZE (hashicorp-golang-lru-v2.0.7_GH0.tar.gz) = 23860 SHA256 (jessevdk-go-flags-v1.5.0_GH0.tar.gz) = d4bf30f729cbc16d2aa0095ac10ca4fadc8f092b9a28990c0cfca2345c3e7ffd SIZE (jessevdk-go-flags-v1.5.0_GH0.tar.gz) = 59316 -SHA256 (klauspost-compress-v1.16.7_GH0.tar.gz) = 0f68d194c726a9cc36bcd011e2f4498d15dad5f040382c3dbfffd7bf7d2bca28 -SIZE (klauspost-compress-v1.16.7_GH0.tar.gz) = 37939325 +SHA256 (klauspost-compress-v1.17.7_GH0.tar.gz) = 9484685898592e9232cab3e6597cb6a9fdd0b60c5ad83536257ca4c414b36a07 +SIZE (klauspost-compress-v1.17.7_GH0.tar.gz) = 38745513 SHA256 (kyokomi-emoji-v2.2.12_GH0.tar.gz) = 27d4c16399eee1d4a5d83696f9b7bfbdbee4f0a4d4083bfc9132774b367401d7 SIZE (kyokomi-emoji-v2.2.12_GH0.tar.gz) = 103875 -SHA256 (microcosm-cc-bluemonday-v1.0.25_GH0.tar.gz) = 6a101391e443fb87f50b13b6bd8f5b12b99e1a091aa57b5073f0272823a82a93 -SIZE (microcosm-cc-bluemonday-v1.0.25_GH0.tar.gz) = 172782 -SHA256 (mongodb-mongo-go-driver-v1.12.1_GH0.tar.gz) = 9231b130e0e5accc1c9282b76c7707e315cb91229f4ea947a4151a73006a0951 -SIZE (mongodb-mongo-go-driver-v1.12.1_GH0.tar.gz) = 5181577 +SHA256 (microcosm-cc-bluemonday-v1.0.26_GH0.tar.gz) = f267d586b4df8e09ad733b4b62476f044173a9eb480118f1036ed874f2a69dc1 +SIZE (microcosm-cc-bluemonday-v1.0.26_GH0.tar.gz) = 174738 +SHA256 (mongodb-mongo-go-driver-v1.14.0_GH0.tar.gz) = 2ed3cb74ba7c799f4a27f4452abbe60e9260a9856e90a2c8e62bd5717fb0804c +SIZE (mongodb-mongo-go-driver-v1.14.0_GH0.tar.gz) = 5469590 SHA256 (montanaflynn-stats-v0.7.1_GH0.tar.gz) = 97e9258173992d3caee6f7d7ac175d559dfc086388ad6c65fde439b808e1b725 SIZE (montanaflynn-stats-v0.7.1_GH0.tar.gz) = 52136 -SHA256 (nullrocks-identicon-7875f45b0022_GH0.tar.gz) = d1e5a569e2314748c2523ec8aa6603a9db09d128c408148add8630b7b0b44580 -SIZE (nullrocks-identicon-7875f45b0022_GH0.tar.gz) = 24819 SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398 -SHA256 (protocolbuffers-protobuf-go-v1.31.0_GH0.tar.gz) = 96d670e9bae145ff2dd0f48a3693edb1f45ec3ee56d5f50a5f01cc7e060314bc -SIZE (protocolbuffers-protobuf-go-v1.31.0_GH0.tar.gz) = 1311732 +SHA256 (protocolbuffers-protobuf-go-v1.33.0_GH0.tar.gz) = 21661d7634e3f783b015b93ceafc0261f2f02a270799bac871602c3a2172cfbe +SIZE (protocolbuffers-protobuf-go-v1.33.0_GH0.tar.gz) = 1482410 +SHA256 (redis-go-redis-v9.4.0_GH0.tar.gz) = d2bd26be4dcb2368b6d4fbab2759b61385b0b36f8b8ccf80ad211f0594785973 +SIZE (redis-go-redis-v9.4.0_GH0.tar.gz) = 294300 +SHA256 (rrivera-identicon-d5ba35832c0d_GH0.tar.gz) = 25968d56488ac24dfe008becbd4b950c98c3215277cd9da7009ae5521d6e6f94 +SIZE (rrivera-identicon-d5ba35832c0d_GH0.tar.gz) = 24885 SHA256 (rs-xid-v1.5.0_GH0.tar.gz) = 105fc29a13c39f558a5ccf70bd27eded738628328bad682e24e04c3a798d3196 SIZE (rs-xid-v1.5.0_GH0.tar.gz) = 11534 SHA256 (russross-blackfriday-v2.1.0_GH0.tar.gz) = a13af0fc5305713f5154693feaf654d024689efea76390091a5e8c757335b4f4 SIZE (russross-blackfriday-v2.1.0_GH0.tar.gz) = 92896 SHA256 (skip2-go-qrcode-da1b6568686e_GH0.tar.gz) = af179c37da861a43242fb4383186724b34866d7b5bd3e54ca44031a2b9f92046 SIZE (skip2-go-qrcode-da1b6568686e_GH0.tar.gz) = 36693 -SHA256 (slack-go-slack-v0.12.2_GH0.tar.gz) = aab173a7dd82b928abe9e1f18be3a0ad4e3d11cd4625aaf324b182a95988212c -SIZE (slack-go-slack-v0.12.2_GH0.tar.gz) = 371950 -SHA256 (stretchr-testify-v1.8.4_GH0.tar.gz) = 0d3e82b04a05d9428a2a2aec8776bd0a07f14f5d1b4fa0a3676526ca8259fd62 -SIZE (stretchr-testify-v1.8.4_GH0.tar.gz) = 104427 -SHA256 (uber-go-goleak-v1.2.1_GH0.tar.gz) = e66f27ce9d738486df5fe133af6c425119d21776e0e85c07ffcaeb6ba043604b -SIZE (uber-go-goleak-v1.2.1_GH0.tar.gz) = 15403 +SHA256 (slack-go-slack-v0.12.4_GH0.tar.gz) = ed8fa001a41188a8b634ba34c13070e6dd87e3e4f6a49c5d78391462b508f446 +SIZE (slack-go-slack-v0.12.4_GH0.tar.gz) = 385607 +SHA256 (stretchr-testify-v1.9.0_GH0.tar.gz) = ee651d4d4427d55096007190398102383498e6b5cf97ea9e89ad6e72b4115fbb +SIZE (stretchr-testify-v1.9.0_GH0.tar.gz) = 108663 +SHA256 (uber-go-goleak-v1.3.0_GH0.tar.gz) = 4813e7694736f4d7fd1aad195d942f40ffca448c29bff3282ba6e92eaba4e0cd +SIZE (uber-go-goleak-v1.3.0_GH0.tar.gz) = 20057 SHA256 (xdg-go-pbkdf2-v1.0.0_GH0.tar.gz) = 2eec55146447215eb58190e04c546c93cad7f369ac9b5aacd9dc11330d756757 SIZE (xdg-go-pbkdf2-v1.0.0_GH0.tar.gz) = 7758 SHA256 (xdg-go-scram-v1.1.2_GH0.tar.gz) = 66e8e73966d87b7266957dbe421313b335c455907a36b0115ea81bdf7d1c9d19 diff --git a/www/remark42/files/patch-frontend_apps_remark42_app_components_comment-form_____subscribe-by-email_comment-form____subscribe-by-email.test.tsx b/www/remark42/files/patch-frontend_apps_remark42_app_components_comment-form_____subscribe-by-email_comment-form____subscribe-by-email.test.tsx new file mode 100644 index 000000000000..a06d41976ff3 --- /dev/null +++ b/www/remark42/files/patch-frontend_apps_remark42_app_components_comment-form_____subscribe-by-email_comment-form____subscribe-by-email.test.tsx @@ -0,0 +1,20 @@ +--- frontend/apps/remark42/app/components/comment-form/__subscribe-by-email/comment-form__subscribe-by-email.test.tsx.orig 2024-05-10 03:32:00 UTC ++++ frontend/apps/remark42/app/components/comment-form/__subscribe-by-email/comment-form__subscribe-by-email.test.tsx +@@ -193,7 +193,7 @@ describe('<SubscribeByEmailForm/>', () => { + + it('should send form by paste valid token', async () => { + const wrapper = createWrapper(); +- const onInputEmail = wrapper.find(Input).prop('onInput'); ++ const onInputEmail = wrapper.find(Input).prop('onInput') as Function; + const form = wrapper.find('form'); + + expect(typeof onInputEmail === 'function').toBe(true); +@@ -220,7 +220,7 @@ describe('<SubscribeByEmailForm/>', () => { + it('should pass throw unsubscribe process', async () => { + const store = mockStore({ ...initialStore, user: { email_subscription: true } }); + const wrapper = createWrapper(store); +- const onClick = wrapper.find(Button).prop('onClick'); ++ const onClick = wrapper.find(Button).prop('onClick') as Function; + + expect(typeof onClick === 'function').toBe(true); + diff --git a/www/remark42/files/remark.in b/www/remark42/files/remark.in index 705b68a0066e..d36f13be1c0a 100644 --- a/www/remark42/files/remark.in +++ b/www/remark42/files/remark.in @@ -120,6 +120,7 @@ load_rc_config ${name} : ${remark_telegram_token:=""} : ${remark_telegram_timeout:=""} : ${remark_smtp_host:=""} +: ${remark_smtp_insecure_skip_verify:=""} : ${remark_smtp_port:=""} : ${remark_smtp_username:=""} : ${remark_smtp_password:=""} @@ -134,6 +135,7 @@ load_rc_config ${name} : ${remark_ssl_acme_location:=""} : ${remark_ssl_acme_email:=""} : ${remark_max_comment_size:=""} +: ${remark_min_comment_size:=""} : ${remark_max_votes:=""} : ${remark_votes_ip:=""} : ${remark_anon_vote:=""} @@ -157,6 +159,7 @@ load_rc_config ${name} : ${remark_remark_web_root:=""} : ${remark_update_limit:=""} : ${remark_subscribers_only:=""} +: ${remark_disable_fancy_html_formatting:=""} : ${remark_disable_signature:=""} : ${remark_admin_passwd:=""} : ${remark_debug:=""} @@ -250,13 +253,13 @@ remark_precmd() export_variables NOTIFY_USERS NOTIFY_ADMINS NOTIFY_QUEUE NOTIFY_TELEGRAM_CHAN NOTIFY_SLACK_TOKEN NOTIFY_SLACK_CHAN export_variables NOTIFY_WEBHOOK_URL NOTIFY_WEBHOOK_TEMPLATE NOTIFY_WEBHOOK_HEADERS NOTIFY_WEBHOOK_TIMEOUT export_variables NOTIFY_EMAIL_FROM NOTIFY_EMAIL_VERIFICATION_SUBJ TELEGRAM_TOKEN TELEGRAM_TIMEOUT - export_variables SMTP_HOST SMTP_PORT SMTP_USERNAME SMTP_PASSWORD SMTP_LOGIN_AUTH SMTP_TLS + export_variables SMTP_HOST SMTP_INSECURE_SKIP_VERIFY SMTP_PORT SMTP_USERNAME SMTP_PASSWORD SMTP_LOGIN_AUTH SMTP_TLS export_variables SMTP_STARTTLS SMTP_TIMEOUT SSL_TYPE SSL_PORT SSL_CERT SSL_KEY SSL_ACME_LOCATION - export_variables SSL_ACME_EMAIL MAX_COMMENT_SIZE MAX_VOTES VOTES_IP ANON_VOTE VOTES_IP_TIME + export_variables SSL_ACME_EMAIL MAX_COMMENT_SIZE MIN_COMMENT_SIZE MAX_VOTES VOTES_IP ANON_VOTE VOTES_IP_TIME export_variables LOW_SCORE CRITICAL_SCORE POSITIVE_SCORE RESTRICTED_WORDS RESTRICTED_NAMES export_variables EDIT_TIME ADMIN_EDIT READONLY_AGE IMAGE_PROXY_HTTP2HTTPS IMAGE_PROXY_CACHE_EXTERNAL export_variables EMOJI SIMPLE_VIEW PROXY_CORS ALLOWED_HOSTS REMARK_ADDRESS REMARK_PORT REMARK_WEB_ROOT - export_variables UPDATE_LIMIT SUBSCRIBERS_ONLY DISABLE_SIGNATURE ADMIN_PASSWD DEBUG + export_variables UPDATE_LIMIT SUBSCRIBERS_ONLY DISABLE_FANCY_HTML_FORMATTING DISABLE_SIGNATURE ADMIN_PASSWD DEBUG } pidfile="%%REMARK_PIDDIR%%${name}.pid" diff --git a/www/reproxy/Makefile b/www/reproxy/Makefile index 6046946ec297..c32d26112d59 100644 --- a/www/reproxy/Makefile +++ b/www/reproxy/Makefile @@ -1,7 +1,6 @@ PORTNAME= reproxy -PORTVERSION= 0.11.0 +PORTVERSION= 1.1.1 DISTVERSIONPREFIX= v -PORTREVISION= 19 CATEGORIES= www MAINTAINER= danfe@FreeBSD.org @@ -14,15 +13,10 @@ LICENSE_FILE= ${WRKSRC}/LICENSE USES= go:modules USE_GITHUB= yes GH_ACCOUNT= umputun -GH_TUPLE= golang:sys:v0.6.0:sys BUILD_WRKSRC= ${WRKSRC}/app PLIST_FILES= bin/reproxy -pre-patch: - ${RM} -r ${WRKSRC}/vendor/golang.org/x/sys - ${LN} -s ${WRKDIR}/sys-* ${WRKSRC}/vendor/golang.org/x/sys - post-patch: @${REINPLACE_CMD} -e '/var revision/s,unknown,${PORTVERSION},' \ ${BUILD_WRKSRC}/main.go diff --git a/www/reproxy/distinfo b/www/reproxy/distinfo index 653d072a1870..a15b25cc08cb 100644 --- a/www/reproxy/distinfo +++ b/www/reproxy/distinfo @@ -1,5 +1,3 @@ -TIMESTAMP = 1679135608 -SHA256 (umputun-reproxy-v0.11.0_GH0.tar.gz) = fa8ae8eb2f92c6c49fa68dcce08cad50a37d8eb424a9765e0c43629ae111743b -SIZE (umputun-reproxy-v0.11.0_GH0.tar.gz) = 2893531 -SHA256 (golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54 -SIZE (golang-sys-v0.6.0_GH0.tar.gz) = 1434234 +TIMESTAMP = 1707197375 +SHA256 (umputun-reproxy-v1.1.1_GH0.tar.gz) = 595af6971ea6be9f5f4a3e92c9c9ad9024c93c353456cd3d8d9efa9786679c1e +SIZE (umputun-reproxy-v1.1.1_GH0.tar.gz) = 3166619 diff --git a/www/restinio/Makefile b/www/restinio/Makefile index 7e38a4c54592..533fa37be08b 100644 --- a/www/restinio/Makefile +++ b/www/restinio/Makefile @@ -21,6 +21,19 @@ RUN_DEPENDS= libfmt>0:devel/libfmt \ USES= cmake:testing compiler:c++14-lang localbase:ldflags tar:bz2 +EXTRACT_AFTER_ARGS= --exclude ${PORTNAME}-${DISTVERSION}/dev/asio \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/asio_mxxru \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/catch2 \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/fmt \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/fmt_mxxru \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/nodejs/http_parser/http_parser.* \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/nodejs/http_parser_mxxru \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/rapidjson \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/rapidjson_mxxru \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/so_5 \ + --exclude ${PORTNAME}-${DISTVERSION}/dev/timertt \ + --no-same-owner --no-same-permissions + WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} WRKSRC_SUBDIR= dev @@ -39,17 +52,4 @@ SAMPLES_CMAKE_BOOL= RESTINIO_SAMPLE RESTINIO_INSTALL_SAMPLES SAMPLES_VARS_OFF= NO_ARCH=yes SAMPLES_BUILD_DEPENDS= json-dto>0:devel/json-dto -post-extract: - ${RM} -rf ${WRKSRC}/asio - ${RM} -rf ${WRKSRC}/asio_mxxru - ${RM} -rf ${WRKSRC}/catch2 - ${RM} -rf ${WRKSRC}/fmt - ${RM} -rf ${WRKSRC}/fmt_mxxru - ${RM} -rf ${WRKSRC}/nodejs/http_parser/http-parser.* - ${RM} -rf ${WRKSRC}/nodejs/http_parser_mxxru - ${RM} -rf ${WRKSRC}/rapidjson - ${RM} -rf ${WRKSRC}/rapidjson_mxxru - ${RM} -rf ${WRKSRC}/so_5 - ${RM} -rf ${WRKSRC}/timertt - .include <bsd.port.mk> diff --git a/www/rt50/Makefile b/www/rt50/Makefile index 1652e8507ae4..6eb8f8ffee4f 100644 --- a/www/rt50/Makefile +++ b/www/rt50/Makefile @@ -1,6 +1,5 @@ PORTNAME= rt -DISTVERSION= 5.0.5 -PORTREVISION= 1 +DISTVERSION= 5.0.6 CATEGORIES= www MASTER_SITES= http://download.bestpractical.com/pub/rt/release/ PKGNAMESUFFIX= 50 diff --git a/www/rt50/Makefile.cpan b/www/rt50/Makefile.cpan index 91f775c6f7b4..012d09984d17 100644 --- a/www/rt50/Makefile.cpan +++ b/www/rt50/Makefile.cpan @@ -22,7 +22,7 @@ ### DateTime::Format::Natural 0.67 ### DateTime::Locale 0.40 ### DBI 1.37 -### DBIx::SearchBuilder 1.77 +### DBIx::SearchBuilder 1.80 ### Devel::GlobalDestruction ### Devel::StackTrace 1.19 ### Digest::base perl std @@ -104,7 +104,7 @@ CORE_DEPS= p5-Apache-Session>=1.53:www/p5-Apache-Session \ p5-Convert-Color>0:graphics/p5-Convert-Color \ p5-Crypt-Eksblowfish>0:security/p5-Crypt-Eksblowfish \ p5-DBI>=1.37:databases/p5-DBI \ - p5-DBIx-SearchBuilder>=1.77:databases/p5-DBIx-SearchBuilder \ + p5-DBIx-SearchBuilder>=1.80:databases/p5-DBIx-SearchBuilder \ p5-Data-GUID>0:devel/p5-Data-GUID \ p5-Data-ICal>0:deskutils/p5-Data-ICal \ p5-Data-Page>0:databases/p5-Data-Page \ diff --git a/www/rt50/distinfo b/www/rt50/distinfo index e0d4d8f8282b..6c2023751344 100644 --- a/www/rt50/distinfo +++ b/www/rt50/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1697786825 -SHA256 (rt-5.0.5.tar.gz) = 90f845daaa436198c334b6e9cf5afb1df9f4445dcc165d0bcae35de9eb9be8ef -SIZE (rt-5.0.5.tar.gz) = 19055361 +TIMESTAMP = 1715603268 +SHA256 (rt-5.0.6.tar.gz) = b556bedd2b4a356ec9f54eb673ff250ae9100347a04d11e34637e3fdd3efdddb +SIZE (rt-5.0.6.tar.gz) = 19771599 diff --git a/www/rt50/pkg-plist b/www/rt50/pkg-plist index ffbb0f9947bb..b483abc9c14c 100644 --- a/www/rt50/pkg-plist +++ b/www/rt50/pkg-plist @@ -272,8 +272,14 @@ sbin/rt-email-expiring-auth-tokens %%SITE_PERL%%/RT/Record/Role/Roles.pm %%SITE_PERL%%/RT/Record/Role/Status.pm %%SITE_PERL%%/RT/Reminders.pm +%%SITE_PERL%%/RT/Report.pm +%%SITE_PERL%%/RT/Report/Assets.pm +%%SITE_PERL%%/RT/Report/Assets/Entry.pm +%%SITE_PERL%%/RT/Report/Entry.pm %%SITE_PERL%%/RT/Report/Tickets.pm %%SITE_PERL%%/RT/Report/Tickets/Entry.pm +%%SITE_PERL%%/RT/Report/Transactions.pm +%%SITE_PERL%%/RT/Report/Transactions/Entry.pm %%SITE_PERL%%/RT/RightsInspector.pm %%SITE_PERL%%/RT/Rule.pm %%SITE_PERL%%/RT/Ruleset.pm @@ -383,7 +389,6 @@ sbin/rt-validator sbin/standalone_httpd @group wheel %%PORTDOCS%%%%DOCSDIR%%/GDPR.pod -%%PORTDOCS%%%%DOCSDIR%%/README %%PORTDOCS%%%%DOCSDIR%%/UPGRADING-2.0 %%PORTDOCS%%%%DOCSDIR%%/UPGRADING-3.0 %%PORTDOCS%%%%DOCSDIR%%/UPGRADING-3.2 @@ -432,6 +437,9 @@ sbin/standalone_httpd %%PORTDOCS%%%%DOCSDIR%%/images/asset-ticket-create-selfservice.png %%PORTDOCS%%%%DOCSDIR%%/images/asset-ticket-create.png %%PORTDOCS%%%%DOCSDIR%%/images/catalog-rights.png +%%PORTDOCS%%%%DOCSDIR%%/images/chart-limited-to-top-10.png +%%PORTDOCS%%%%DOCSDIR%%/images/chart-ordered-by-value.png +%%PORTDOCS%%%%DOCSDIR%%/images/chart-tickets-by-requestor.png %%PORTDOCS%%%%DOCSDIR%%/images/complicated-search-arrows.png %%PORTDOCS%%%%DOCSDIR%%/images/create-setowner-action.png %%PORTDOCS%%%%DOCSDIR%%/images/current-search.png @@ -466,12 +474,14 @@ sbin/standalone_httpd %%PORTDOCS%%%%DOCSDIR%%/images/quote-selection-highlighted.png %%PORTDOCS%%%%DOCSDIR%%/images/quote-selection-ticket-update.png %%PORTDOCS%%%%DOCSDIR%%/images/saved-dashboard.png +%%PORTDOCS%%%%DOCSDIR%%/images/screenshot.png %%PORTDOCS%%%%DOCSDIR%%/images/search-arrows.png %%PORTDOCS%%%%DOCSDIR%%/images/search-criteria.png %%PORTDOCS%%%%DOCSDIR%%/images/search-results.png %%PORTDOCS%%%%DOCSDIR%%/images/sorting-display-columns.png %%PORTDOCS%%%%DOCSDIR%%/images/status-change-condition.png %%PORTDOCS%%%%DOCSDIR%%/images/subscriptions.png +%%PORTDOCS%%%%DOCSDIR%%/images/support-dashboard.png %%PORTDOCS%%%%DOCSDIR%%/images/theme_editor_defaults.png %%PORTDOCS%%%%DOCSDIR%%/images/user-time-worked-report.png %%PORTDOCS%%%%DOCSDIR%%/images/with-created-before.png @@ -746,6 +756,7 @@ sbin/standalone_httpd %%DOCSDIR%%/upgrade/5.0.5/schema.Pg %%DOCSDIR%%/upgrade/5.0.5/schema.SQLite %%DOCSDIR%%/upgrade/5.0.5/schema.mysql +%%DOCSDIR%%/upgrade/5.0.6/indexes %%DOCSDIR%%/upgrade/generate-rtaddressregexp %%DOCSDIR%%/upgrade/reset-sequences %%DOCSDIR%%/upgrade/sanity-check-stylesheets @@ -1003,6 +1014,7 @@ sbin/standalone_httpd %%DATADIR%%/html/Asset/Elements/EditCatalogPeople %%DATADIR%%/html/Asset/Elements/EditDates %%DATADIR%%/html/Asset/Elements/EditPeople +%%DATADIR%%/html/Asset/Elements/EditPeopleInline %%DATADIR%%/html/Asset/Elements/EditRoleMembers %%DATADIR%%/html/Asset/Elements/Search %%DATADIR%%/html/Asset/Elements/SelectCatalog @@ -1105,6 +1117,7 @@ sbin/standalone_httpd %%DATADIR%%/html/Elements/GotoUser %%DATADIR%%/html/Elements/Header %%DATADIR%%/html/Elements/HeaderJavascript +%%DATADIR%%/html/Elements/HttpResponseHeaders %%DATADIR%%/html/Elements/JavascriptConfig %%DATADIR%%/html/Elements/LabeledValue %%DATADIR%%/html/Elements/Lifecycle/Graph @@ -1151,8 +1164,8 @@ sbin/standalone_httpd %%DATADIR%%/html/Elements/RT__User/ColumnMap %%DATADIR%%/html/Elements/Refresh %%DATADIR%%/html/Elements/RefreshHomepage -%%DATADIR%%/html/Elements/SavedSearches %%DATADIR%%/html/Elements/SavedSearchSelectUser +%%DATADIR%%/html/Elements/SavedSearches %%DATADIR%%/html/Elements/ScrubHTML %%DATADIR%%/html/Elements/SearchFilter %%DATADIR%%/html/Elements/Section @@ -1178,6 +1191,7 @@ sbin/standalone_httpd %%DATADIR%%/html/Elements/SelectOwner %%DATADIR%%/html/Elements/SelectOwnerAutocomplete %%DATADIR%%/html/Elements/SelectOwnerDropdown +%%DATADIR%%/html/Elements/SelectOwnerDropdownDelay %%DATADIR%%/html/Elements/SelectPriority %%DATADIR%%/html/Elements/SelectPriorityAsString %%DATADIR%%/html/Elements/SelectQueue @@ -1250,10 +1264,12 @@ sbin/standalone_httpd %%DATADIR%%/html/Group/Summary.html %%DATADIR%%/html/Helpers/AddTimeWorked %%DATADIR%%/html/Helpers/Admin/EditCustomFieldValue +%%DATADIR%%/html/Helpers/AssetUpdate %%DATADIR%%/html/Helpers/Autocomplete/Articles %%DATADIR%%/html/Helpers/Autocomplete/Assets %%DATADIR%%/html/Helpers/Autocomplete/CustomFieldValues %%DATADIR%%/html/Helpers/Autocomplete/Groups +%%DATADIR%%/html/Helpers/Autocomplete/LinkTargets %%DATADIR%%/html/Helpers/Autocomplete/Owners %%DATADIR%%/html/Helpers/Autocomplete/Principals %%DATADIR%%/html/Helpers/Autocomplete/Queues @@ -1266,6 +1282,7 @@ sbin/standalone_httpd %%DATADIR%%/html/Helpers/PreviewScrips %%DATADIR%%/html/Helpers/RightsInspector/Revoke %%DATADIR%%/html/Helpers/RightsInspector/Search +%%DATADIR%%/html/Helpers/SelectOwnerDropdown %%DATADIR%%/html/Helpers/ShortcutHelp %%DATADIR%%/html/Helpers/ShowSimplifiedRecipients %%DATADIR%%/html/Helpers/SpawnLinkedTicket @@ -1366,6 +1383,8 @@ sbin/standalone_httpd %%DATADIR%%/html/Search/Elements/EditQuery %%DATADIR%%/html/Search/Elements/EditSearches %%DATADIR%%/html/Search/Elements/EditSort +%%DATADIR%%/html/Search/Elements/FilterAssets +%%DATADIR%%/html/Search/Elements/FilterTickets %%DATADIR%%/html/Search/Elements/Graph %%DATADIR%%/html/Search/Elements/NewListActions %%DATADIR%%/html/Search/Elements/PickAssetCFs @@ -1417,6 +1436,7 @@ sbin/standalone_httpd %%DATADIR%%/html/SelfService/Helpers/Autocomplete/CustomFieldValues %%DATADIR%%/html/SelfService/Helpers/Autocomplete/Principals %%DATADIR%%/html/SelfService/Helpers/Autocomplete/Users +%%DATADIR%%/html/SelfService/Helpers/SelectOwnerDropdown %%DATADIR%%/html/SelfService/Helpers/ShortcutHelp %%DATADIR%%/html/SelfService/Helpers/TextDiff %%DATADIR%%/html/SelfService/Helpers/Upload/Add diff --git a/www/rubygem-actioncable70/Makefile b/www/rubygem-actioncable70/Makefile index 8eead46e5b17..75d8b0c57282 100644 --- a/www/rubygem-actioncable70/Makefile +++ b/www/rubygem-actioncable70/Makefile @@ -1,5 +1,5 @@ PORTNAME= actioncable -PORTVERSION= 7.0.8.1 +PORTVERSION= 7.0.8.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 70 diff --git a/www/rubygem-actioncable70/distinfo b/www/rubygem-actioncable70/distinfo index 2010f2f6a04c..bea9d2a9ae56 100644 --- a/www/rubygem-actioncable70/distinfo +++ b/www/rubygem-actioncable70/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391038 -SHA256 (rubygem/actioncable-7.0.8.1.gem) = bc5eddc8c6412d067b9fecec6a53dd14f3bd83baca96762eb864f01fb4c40649 -SIZE (rubygem/actioncable-7.0.8.1.gem) = 44544 +TIMESTAMP = 1716142248 +SHA256 (rubygem/actioncable-7.0.8.3.gem) = beb70a44cce8ecb1de7130351a653b6cf6d2dc74ae9c359e33022891132cafb4 +SIZE (rubygem/actioncable-7.0.8.3.gem) = 44544 diff --git a/www/rubygem-actioncable71/Makefile b/www/rubygem-actioncable71/Makefile index 082ecf819367..8dc8102fe00d 100644 --- a/www/rubygem-actioncable71/Makefile +++ b/www/rubygem-actioncable71/Makefile @@ -1,5 +1,5 @@ PORTNAME= actioncable -PORTVERSION= 7.1.3.2 +PORTVERSION= 7.1.3.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 71 diff --git a/www/rubygem-actioncable71/distinfo b/www/rubygem-actioncable71/distinfo index d8afadc83348..efa9200c9b30 100644 --- a/www/rubygem-actioncable71/distinfo +++ b/www/rubygem-actioncable71/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391064 -SHA256 (rubygem/actioncable-7.1.3.2.gem) = e162ce4094368e86237cbf8345cc78c2c7cf1fddaf5d8aacf86428d32cf9d145 -SIZE (rubygem/actioncable-7.1.3.2.gem) = 48128 +TIMESTAMP = 1716142274 +SHA256 (rubygem/actioncable-7.1.3.3.gem) = 57323cda266c950b18d67b3a751ba388dc7e0615fde48eb17400fa785a61adcf +SIZE (rubygem/actioncable-7.1.3.3.gem) = 48128 diff --git a/www/rubygem-actionpack70/Makefile b/www/rubygem-actionpack70/Makefile index 22bf095f2803..94088673cca9 100644 --- a/www/rubygem-actionpack70/Makefile +++ b/www/rubygem-actionpack70/Makefile @@ -1,5 +1,5 @@ PORTNAME= actionpack -PORTVERSION= 7.0.8.1 +PORTVERSION= 7.0.8.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 70 diff --git a/www/rubygem-actionpack70/distinfo b/www/rubygem-actionpack70/distinfo index b3a49a09f287..04149588e379 100644 --- a/www/rubygem-actionpack70/distinfo +++ b/www/rubygem-actionpack70/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391040 -SHA256 (rubygem/actionpack-7.0.8.1.gem) = 5dcd2b39cb69abe899edc9faf878fb667a64a9fe306a2e56d09e3ed3701e084a -SIZE (rubygem/actionpack-7.0.8.1.gem) = 233984 +TIMESTAMP = 1716142250 +SHA256 (rubygem/actionpack-7.0.8.3.gem) = 26fe3648ce8993dbe9ac128564c50e568628e7e595be221aa6dc905a4cbd8585 +SIZE (rubygem/actionpack-7.0.8.3.gem) = 233984 diff --git a/www/rubygem-actionpack71/Makefile b/www/rubygem-actionpack71/Makefile index f23569d85bdf..3f1593caf237 100644 --- a/www/rubygem-actionpack71/Makefile +++ b/www/rubygem-actionpack71/Makefile @@ -1,5 +1,5 @@ PORTNAME= actionpack -PORTVERSION= 7.1.3.2 +PORTVERSION= 7.1.3.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 71 diff --git a/www/rubygem-actionpack71/distinfo b/www/rubygem-actionpack71/distinfo index 174de4cee663..83cd786069bd 100644 --- a/www/rubygem-actionpack71/distinfo +++ b/www/rubygem-actionpack71/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391066 -SHA256 (rubygem/actionpack-7.1.3.2.gem) = b8f958d5d77e17b0fcbcd21f03eedac0405b0bf17421479be38529cf4a263b58 -SIZE (rubygem/actionpack-7.1.3.2.gem) = 244736 +TIMESTAMP = 1716142276 +SHA256 (rubygem/actionpack-7.1.3.3.gem) = 3d09fd1f80080401d0924f2ce3d61297422166e5b253416ee95d4278bcda7aa4 +SIZE (rubygem/actionpack-7.1.3.3.gem) = 244736 diff --git a/www/rubygem-async-http/Makefile b/www/rubygem-async-http/Makefile index 6a11dd8b2773..dec96a400dbf 100644 --- a/www/rubygem-async-http/Makefile +++ b/www/rubygem-async-http/Makefile @@ -1,21 +1,23 @@ PORTNAME= async-http -PORTVERSION= 0.64.1 +PORTVERSION= 0.66.3 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= HTTP client and server library -WWW= https://github.com/socketry/async-http +WWW= https://socketry.github.io/async-http/ \ + https://github.com/socketry/async-http LICENSE= MIT LICENSE_FILE= ${WRKSRC}/license.md -RUN_DEPENDS= rubygem-async>=1.25:devel/rubygem-async \ - rubygem-async-io>=1.28:devel/rubygem-async-io \ - rubygem-async-pool>=0.2:www/rubygem-async-pool \ +RUN_DEPENDS= rubygem-async>=2.10.2:devel/rubygem-async \ + rubygem-async-pool>=0.6.1:www/rubygem-async-pool \ + rubygem-io-endpoint>=0.10.3<1:devel/rubygem-io-endpoint \ + rubygem-io-stream>=0.4<1:devel/rubygem-io-stream \ rubygem-protocol-http>=0.26.0<0.27:www/rubygem-protocol-http \ rubygem-protocol-http1>=0.19.0<0.20:www/rubygem-protocol-http1 \ - rubygem-protocol-http2>=0.16.0<0.17:www/rubygem-protocol-http2 \ + rubygem-protocol-http2>=0.17.0<0.18:www/rubygem-protocol-http2 \ rubygem-traces>=0.10.0:devel/rubygem-traces USES= gem diff --git a/www/rubygem-async-http/distinfo b/www/rubygem-async-http/distinfo index 00e1a6eb42be..c857edc07fbd 100644 --- a/www/rubygem-async-http/distinfo +++ b/www/rubygem-async-http/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712427996 -SHA256 (rubygem/async-http-0.64.1.gem) = 93e73403b7e2d1878b306d300bbda5afb5cedd71ec969162bf15d2dd9fe5b1f0 -SIZE (rubygem/async-http-0.64.1.gem) = 33792 +TIMESTAMP = 1715843788 +SHA256 (rubygem/async-http-0.66.3.gem) = a5919be93246a16b6b95f152c052a3642822f254c3fea2fb1aca3e28b9457f8d +SIZE (rubygem/async-http-0.66.3.gem) = 34304 diff --git a/www/rubygem-async-pool/Makefile b/www/rubygem-async-pool/Makefile index 0a68f91d9ad0..0f220853fb76 100644 --- a/www/rubygem-async-pool/Makefile +++ b/www/rubygem-async-pool/Makefile @@ -1,13 +1,15 @@ PORTNAME= async-pool -PORTVERSION= 0.4.0 +PORTVERSION= 0.6.1 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Redis client library -WWW= https://github.com/socketry/async-pool +WWW= https://socketry.github.io/async-pool/ \ + https://github.com/socketry/async-pool LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md RUN_DEPENDS= rubygem-async>=1.25:devel/rubygem-async diff --git a/www/rubygem-async-pool/distinfo b/www/rubygem-async-pool/distinfo index e548d8052e85..c9ac407c3120 100644 --- a/www/rubygem-async-pool/distinfo +++ b/www/rubygem-async-pool/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1684104712 -SHA256 (rubygem/async-pool-0.4.0.gem) = c0bb04331c8652059369ea3720031072978b3a7dcc1b8163a61f90833432aef8 -SIZE (rubygem/async-pool-0.4.0.gem) = 12800 +TIMESTAMP = 1715843790 +SHA256 (rubygem/async-pool-0.6.1.gem) = 56cfcb285da9b92e9a029c13b4ed0735d1d62173ae752e4a5f916e8867751625 +SIZE (rubygem/async-pool-0.6.1.gem) = 12800 diff --git a/www/rubygem-async-rest/Makefile b/www/rubygem-async-rest/Makefile index 416afed5de5e..a4e20873358a 100644 --- a/www/rubygem-async-rest/Makefile +++ b/www/rubygem-async-rest/Makefile @@ -5,9 +5,11 @@ MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= RESTful clients (and hopefully servers) -WWW= https://github.com/socketry/async-rest +WWW= https://socketry.github.io/async-rest/ \ + https://github.com/socketry/async-rest LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md RUN_DEPENDS= rubygem-async-http>=0.42<1:www/rubygem-async-http \ rubygem-protocol-http>=0.7<1:www/rubygem-protocol-http diff --git a/www/rubygem-async-websocket/Makefile b/www/rubygem-async-websocket/Makefile index 0073c1845d06..64cab5443bf4 100644 --- a/www/rubygem-async-websocket/Makefile +++ b/www/rubygem-async-websocket/Makefile @@ -1,17 +1,18 @@ PORTNAME= async-websocket -PORTVERSION= 0.26.0 +PORTVERSION= 0.26.1 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Async websocket library on top of websocket-driver -WWW= https://github.com/socketry/async-websocket +WWW= https://socketry.github.io/async-websocket/ \ + https://github.com/socketry/async-websocket LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md RUN_DEPENDS= rubygem-async-http>=0.54<1:www/rubygem-async-http \ - rubygem-async-io>=1.23<2:devel/rubygem-async-io \ - rubygem-protocol-rack>=0.1<1:www/rubygem-protocol-rack \ + rubygem-protocol-rack>=0.5<1:www/rubygem-protocol-rack \ rubygem-protocol-websocket>=0.11<1:www/rubygem-protocol-websocket USES= gem diff --git a/www/rubygem-async-websocket/distinfo b/www/rubygem-async-websocket/distinfo index 9e010ab13a4a..459933d04864 100644 --- a/www/rubygem-async-websocket/distinfo +++ b/www/rubygem-async-websocket/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1702543804 -SHA256 (rubygem/async-websocket-0.26.0.gem) = 62872d30a9c95926eb6aafee627c7f90d365272421da5a16bb54e1abded7994a -SIZE (rubygem/async-websocket-0.26.0.gem) = 14336 +TIMESTAMP = 1715843792 +SHA256 (rubygem/async-websocket-0.26.1.gem) = 4059512bad7d3f1fe5d3dec1d715095666478ace30ab709c5674cc1b793662cf +SIZE (rubygem/async-websocket-0.26.1.gem) = 14336 diff --git a/www/rubygem-browser/Makefile b/www/rubygem-browser/Makefile index 5b0a9fc4e705..2a368d24a167 100644 --- a/www/rubygem-browser/Makefile +++ b/www/rubygem-browser/Makefile @@ -1,5 +1,5 @@ PORTNAME= browser -PORTVERSION= 5.3.1 +PORTVERSION= 6.0.0 CATEGORIES= www rubygems MASTER_SITES= RG @@ -9,6 +9,8 @@ WWW= https://github.com/fnando/browser LICENSE= MIT +BROKEN_RUBY31= yes + USES= gem NO_ARCH= yes diff --git a/www/rubygem-browser/distinfo b/www/rubygem-browser/distinfo index 6dd217d326ba..9979103bf96e 100644 --- a/www/rubygem-browser/distinfo +++ b/www/rubygem-browser/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1669462251 -SHA256 (rubygem/browser-5.3.1.gem) = 62745301701ff2c6c5d32d077bb12532b20be261929dcb52c6781ed0d5658b3c -SIZE (rubygem/browser-5.3.1.gem) = 56832 +TIMESTAMP = 1715843884 +SHA256 (rubygem/browser-6.0.0.gem) = 0399f0f12c925e529aa995b096a3824384e00ea2c7241fbb4b707d2a25e87920 +SIZE (rubygem/browser-6.0.0.gem) = 57856 diff --git a/www/rubygem-browser5/Makefile b/www/rubygem-browser5/Makefile new file mode 100644 index 000000000000..c6eb96c16759 --- /dev/null +++ b/www/rubygem-browser5/Makefile @@ -0,0 +1,19 @@ +PORTNAME= browser +PORTVERSION= 5.3.1 +CATEGORIES= www rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= 5 + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Web browser detection for Ruby +WWW= https://github.com/fnando/browser + +LICENSE= MIT + +USES= gem + +NO_ARCH= yes + +PORTSCOUT= limit:^5\. + +.include <bsd.port.mk> diff --git a/www/rubygem-browser5/distinfo b/www/rubygem-browser5/distinfo new file mode 100644 index 000000000000..6dd217d326ba --- /dev/null +++ b/www/rubygem-browser5/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1669462251 +SHA256 (rubygem/browser-5.3.1.gem) = 62745301701ff2c6c5d32d077bb12532b20be261929dcb52c6781ed0d5658b3c +SIZE (rubygem/browser-5.3.1.gem) = 56832 diff --git a/www/rubygem-browser5/pkg-descr b/www/rubygem-browser5/pkg-descr new file mode 100644 index 000000000000..31502148a916 --- /dev/null +++ b/www/rubygem-browser5/pkg-descr @@ -0,0 +1 @@ +Web browser detection gem for Ruby, includes ActionController integration. diff --git a/www/rubygem-bullet_train-fields/Makefile b/www/rubygem-bullet_train-fields/Makefile new file mode 100644 index 000000000000..f37e55af5e06 --- /dev/null +++ b/www/rubygem-bullet_train-fields/Makefile @@ -0,0 +1,22 @@ +PORTNAME= bullet_train-fields +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Bullet Train Fields +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-fields + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-chronic>=0:devel/rubygem-chronic \ + rubygem-cloudinary>=0:www/rubygem-cloudinary \ + rubygem-phonelib>=0:devel/rubygem-phonelib \ + rubygem-rails71>=6.0.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-fields/distinfo b/www/rubygem-bullet_train-fields/distinfo new file mode 100644 index 000000000000..64037f63762f --- /dev/null +++ b/www/rubygem-bullet_train-fields/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142210 +SHA256 (rubygem/bullet_train-fields-1.7.5.gem) = 10400293e2d2882d05d216f336f6193643c3a3b801514b906e2ed2c721a44b4c +SIZE (rubygem/bullet_train-fields-1.7.5.gem) = 20992 diff --git a/www/rubygem-bullet_train-fields/pkg-descr b/www/rubygem-bullet_train-fields/pkg-descr new file mode 100644 index 000000000000..f6b87613f89e --- /dev/null +++ b/www/rubygem-bullet_train-fields/pkg-descr @@ -0,0 +1,14 @@ +Bullet Train includes a collection of view partials that are intended to DRY-up +as much redundant presentation logic as possible for different types of form +fields without taking on a third-party dependency like Formtastic. + +These form field partials standardize and centralize the following behavior +across all form fields that use them: +- Apply theme styling and classes. +- Display any error messages for a specific field inline under the field itself. +- Display a stylized asterisk next to the label of fields that are known to be + required. +- Any labels, placeholder values, and help text are defined in a standardized + way in the model's localization Yaml file. +- For fields presenting a static list of options (e.g. a list of buttons or a + select field) the options can be defined in the localization Yaml file. diff --git a/www/rubygem-bullet_train-has_uuid/Makefile b/www/rubygem-bullet_train-has_uuid/Makefile new file mode 100644 index 000000000000..dc61b6ba6a8f --- /dev/null +++ b/www/rubygem-bullet_train-has_uuid/Makefile @@ -0,0 +1,19 @@ +PORTNAME= bullet_train-has_uuid +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Bullet Train Has UUID +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-has_uuid + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-rails71>=6.0.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-has_uuid/distinfo b/www/rubygem-bullet_train-has_uuid/distinfo new file mode 100644 index 000000000000..9ae4af4a15e3 --- /dev/null +++ b/www/rubygem-bullet_train-has_uuid/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142212 +SHA256 (rubygem/bullet_train-has_uuid-1.7.5.gem) = ba00c7a0c16a8910955f5d5b7dbaea495c51d270fba6ec5624fa11a997e49ae4 +SIZE (rubygem/bullet_train-has_uuid-1.7.5.gem) = 6144 diff --git a/www/rubygem-bullet_train-has_uuid/pkg-descr b/www/rubygem-bullet_train-has_uuid/pkg-descr new file mode 100644 index 000000000000..221a5fd7914d --- /dev/null +++ b/www/rubygem-bullet_train-has_uuid/pkg-descr @@ -0,0 +1 @@ +BulletTrain's UUID (Universally Unique Identifier) function diff --git a/www/rubygem-bullet_train-roles/Makefile b/www/rubygem-bullet_train-roles/Makefile new file mode 100644 index 000000000000..9e8307cae020 --- /dev/null +++ b/www/rubygem-bullet_train-roles/Makefile @@ -0,0 +1,21 @@ +PORTNAME= bullet_train-roles +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Yaml-backed ApplicationHash for CanCan Roles +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-roles + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +RUN_DEPENDS= rubygem-active_hash>=0:devel/rubygem-active_hash \ + rubygem-activesupport71>=0:devel/rubygem-activesupport71 \ + rubygem-cancancan>=0:security/rubygem-cancancan + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-roles/distinfo b/www/rubygem-bullet_train-roles/distinfo new file mode 100644 index 000000000000..2bf3b1ee1824 --- /dev/null +++ b/www/rubygem-bullet_train-roles/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142214 +SHA256 (rubygem/bullet_train-roles-1.7.5.gem) = 8dca6a5224d9fc3d7c3d2862bc8798aa4902896ea3465d9ef12db98454e9215a +SIZE (rubygem/bullet_train-roles-1.7.5.gem) = 21504 diff --git a/www/rubygem-bullet_train-roles/pkg-descr b/www/rubygem-bullet_train-roles/pkg-descr new file mode 100644 index 000000000000..7137999e3848 --- /dev/null +++ b/www/rubygem-bullet_train-roles/pkg-descr @@ -0,0 +1,9 @@ +Bullet Train Roles provides a Yaml-based configuration layer on top of +CanCanCan. You can use this configuration file to simplify the definition of +many common permissions, while still implementing more complicated permissions +in CanCanCan's traditional app/model/ability.rb. + +Additionally, Bullet Train Roles makes it trivial to assign the same roles and +associated permissions at different levels in your application. For example, you +can assign someone administrative privileges at a team level, or only at a +project level. diff --git a/www/rubygem-bullet_train-routes/Makefile b/www/rubygem-bullet_train-routes/Makefile new file mode 100644 index 000000000000..8a096d060fae --- /dev/null +++ b/www/rubygem-bullet_train-routes/Makefile @@ -0,0 +1,19 @@ +PORTNAME= bullet_train-routes +PORTVERSION= 1.0.0 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Black magic for defining model-driven routes +WWW= https://rubygems.org/gems/bullet_train-routes + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-rails71>=6.0.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-routes/distinfo b/www/rubygem-bullet_train-routes/distinfo new file mode 100644 index 000000000000..17ce57feb6c7 --- /dev/null +++ b/www/rubygem-bullet_train-routes/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714227836 +SHA256 (rubygem/bullet_train-routes-1.0.0.gem) = 96f47c2d8066dab48c4ceb4f3b71d7c3866cc5c078a6f3a7d27be51e406065cc +SIZE (rubygem/bullet_train-routes-1.0.0.gem) = 6656 diff --git a/www/rubygem-bullet_train-routes/pkg-descr b/www/rubygem-bullet_train-routes/pkg-descr new file mode 100644 index 000000000000..7e878ccf7991 --- /dev/null +++ b/www/rubygem-bullet_train-routes/pkg-descr @@ -0,0 +1,4 @@ +Bullet Train Routes provides a vastly simplified method for defining shallow, +nested resource routes in Rails applications when modules and namespaces are +involved. We do this by introducing a model method to the Rails routing DSL, +which serves as an interchangable substitute for the resources method. diff --git a/www/rubygem-bullet_train-scope_validator/Makefile b/www/rubygem-bullet_train-scope_validator/Makefile new file mode 100644 index 000000000000..388db4bc6d3a --- /dev/null +++ b/www/rubygem-bullet_train-scope_validator/Makefile @@ -0,0 +1,19 @@ +PORTNAME= bullet_train-scope_validator +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Protect belongs_to attributes from ID stuffing +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-scope_validator + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +RUN_DEPENDS= rubygem-rails71>=0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-scope_validator/distinfo b/www/rubygem-bullet_train-scope_validator/distinfo new file mode 100644 index 000000000000..93fc3c7177af --- /dev/null +++ b/www/rubygem-bullet_train-scope_validator/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142216 +SHA256 (rubygem/bullet_train-scope_validator-1.7.5.gem) = 5cb4fb7ccf5fd1e39447819a0bc948cdfc37c04a0fa46cbc7d8c4ba6343c8823 +SIZE (rubygem/bullet_train-scope_validator-1.7.5.gem) = 11776 diff --git a/www/rubygem-bullet_train-scope_validator/pkg-descr b/www/rubygem-bullet_train-scope_validator/pkg-descr new file mode 100644 index 000000000000..a84854c94e99 --- /dev/null +++ b/www/rubygem-bullet_train-scope_validator/pkg-descr @@ -0,0 +1,2 @@ +Bullet Train Scope Validator provides a simple pattern for protecting belongs_to +associations from malicious ID stuffing. diff --git a/www/rubygem-bullet_train-super_load_and_authorize_resource/Makefile b/www/rubygem-bullet_train-super_load_and_authorize_resource/Makefile new file mode 100644 index 000000000000..2e098d3c52e3 --- /dev/null +++ b/www/rubygem-bullet_train-super_load_and_authorize_resource/Makefile @@ -0,0 +1,20 @@ +PORTNAME= bullet_train-super_load_and_authorize_resource +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Bullet Train Super Load And Authorize Resource +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-super_load_and_authorize_resource + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-cancancan>=0:security/rubygem-cancancan \ + rubygem-rails71>=6.0.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-super_load_and_authorize_resource/distinfo b/www/rubygem-bullet_train-super_load_and_authorize_resource/distinfo new file mode 100644 index 000000000000..b5ece2409e04 --- /dev/null +++ b/www/rubygem-bullet_train-super_load_and_authorize_resource/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142218 +SHA256 (rubygem/bullet_train-super_load_and_authorize_resource-1.7.5.gem) = 47f9641b11d9eb8d7195170029e940e9c361422eaf3ae6cca31f3833a0d10691 +SIZE (rubygem/bullet_train-super_load_and_authorize_resource-1.7.5.gem) = 8704 diff --git a/www/rubygem-bullet_train-super_load_and_authorize_resource/pkg-descr b/www/rubygem-bullet_train-super_load_and_authorize_resource/pkg-descr new file mode 100644 index 000000000000..10a232f58b55 --- /dev/null +++ b/www/rubygem-bullet_train-super_load_and_authorize_resource/pkg-descr @@ -0,0 +1,3 @@ +BulletTrain's super load and authorize resource function + +It is heavily based on cancancan's load_and_authorize_resource method. diff --git a/www/rubygem-bullet_train-themes/Makefile b/www/rubygem-bullet_train-themes/Makefile new file mode 100644 index 000000000000..8355748f2464 --- /dev/null +++ b/www/rubygem-bullet_train-themes/Makefile @@ -0,0 +1,21 @@ +PORTNAME= bullet_train-themes +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Bullet Train Themes +WWW= https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train-themes + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-bullet_train-fields>=0:www/rubygem-bullet_train-fields \ + rubygem-nice_partials>=0.9<1:devel/rubygem-nice_partials \ + rubygem-rails71>=6.0.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train-themes/distinfo b/www/rubygem-bullet_train-themes/distinfo new file mode 100644 index 000000000000..8ae3b5bb2407 --- /dev/null +++ b/www/rubygem-bullet_train-themes/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142220 +SHA256 (rubygem/bullet_train-themes-1.7.5.gem) = ba816a005d92ccd5c9a7970e8c28b0f3e09c73d32bea3481b8651b61c7a5db4b +SIZE (rubygem/bullet_train-themes-1.7.5.gem) = 12288 diff --git a/www/rubygem-bullet_train-themes/pkg-descr b/www/rubygem-bullet_train-themes/pkg-descr new file mode 100644 index 000000000000..8df8b973ac1e --- /dev/null +++ b/www/rubygem-bullet_train-themes/pkg-descr @@ -0,0 +1,7 @@ +Bullet Train has a theme subsystem designed to allow you the flexibility to +either extend or completely replace the stock "Light" UI theme. To reduce +duplication of code across themes, Bullet Train implements the following three +packages: +- bullet_train-themes +- bullet_train-themes-tailwind_css +- bullet_train-themes-light diff --git a/www/rubygem-bullet_train/Makefile b/www/rubygem-bullet_train/Makefile new file mode 100644 index 000000000000..cf0129886ea9 --- /dev/null +++ b/www/rubygem-bullet_train/Makefile @@ -0,0 +1,51 @@ +PORTNAME= bullet_train +PORTVERSION= 1.7.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Bullet Train, Open Source Ruby on Rails SaaS Framework +WWW= https://bullettrain.co/ \ + https://github.com/bullet-train-co/bullet_train-core/tree/main/bullet_train + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-awesome_print>=0:devel/rubygem-awesome_print \ + rubygem-bullet_train-has_uuid>=0:www/rubygem-bullet_train-has_uuid \ + rubygem-bullet_train-roles>=0:www/rubygem-bullet_train-roles \ + rubygem-bullet_train-routes>=0:www/rubygem-bullet_train-routes \ + rubygem-bullet_train-scope_validator>=0:www/rubygem-bullet_train-scope_validator \ + rubygem-bullet_train-super_load_and_authorize_resource>=0:www/rubygem-bullet_train-super_load_and_authorize_resource \ + rubygem-bullet_train-themes>=0:www/rubygem-bullet_train-themes \ + rubygem-cable_ready>=5.0.0<5.1:www/rubygem-cable_ready \ + rubygem-cancancan>=0:security/rubygem-cancancan \ + rubygem-colorizer>=0:devel/rubygem-colorizer \ + rubygem-commonmarker>=1.0.0:textproc/rubygem-commonmarker \ + rubygem-devise-pwned_password>=0:devel/rubygem-devise-pwned_password \ + rubygem-devise-rails71>=0:devel/rubygem-devise-rails71 \ + rubygem-extended_email_reply_parser>=0:mail/rubygem-extended_email_reply_parser \ + rubygem-fastimage>=0:graphics/rubygem-fastimage \ + rubygem-figaro>=0:devel/rubygem-figaro \ + rubygem-hiredis>=0:databases/rubygem-hiredis \ + rubygem-http_accept_language>=0:devel/rubygem-http_accept_language \ + rubygem-image_processing>=0:graphics/rubygem-image_processing \ + rubygem-microscope>=0:databases/rubygem-microscope \ + rubygem-nice_partials>=0.9<1:devel/rubygem-nice_partials \ + rubygem-omniauth>=0:security/rubygem-omniauth \ + rubygem-pagy>=0:devel/rubygem-pagy \ + rubygem-possessive>=0:www/rubygem-possessive \ + rubygem-premailer-rails-rails71>=0:mail/rubygem-premailer-rails-rails71 \ + rubygem-rails71>=6.0.0:www/rubygem-rails71 \ + rubygem-ruby-openai>=0:www/rubygem-ruby-openai \ + rubygem-showcase-rails>=0:www/rubygem-showcase-rails \ + rubygem-sidekiq>=0:devel/rubygem-sidekiq \ + rubygem-unicode-emoji>=0:devel/rubygem-unicode-emoji \ + rubygem-valid_email02>=0:mail/rubygem-valid_email02 \ + rubygem-xxhash>=0:devel/rubygem-xxhash + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-bullet_train/distinfo b/www/rubygem-bullet_train/distinfo new file mode 100644 index 000000000000..5d1333ab9327 --- /dev/null +++ b/www/rubygem-bullet_train/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142208 +SHA256 (rubygem/bullet_train-1.7.5.gem) = 61958244d579d942f48e78becefaad8d64e0b38ebabb80b1c483a9317ed6032e +SIZE (rubygem/bullet_train-1.7.5.gem) = 323584 diff --git a/www/rubygem-bullet_train/pkg-descr b/www/rubygem-bullet_train/pkg-descr new file mode 100644 index 000000000000..134c2f4dd5d0 --- /dev/null +++ b/www/rubygem-bullet_train/pkg-descr @@ -0,0 +1,3 @@ +Bullet Train is an MIT-licensed Rails-based framework that saves you months of +development by starting you off with all the features that are the same in every +product, so you can focus on what makes your app unique. diff --git a/www/rubygem-cable_ready/Makefile b/www/rubygem-cable_ready/Makefile new file mode 100644 index 000000000000..d2e96a630bbb --- /dev/null +++ b/www/rubygem-cable_ready/Makefile @@ -0,0 +1,25 @@ +PORTNAME= cable_ready +PORTVERSION= 5.0.5 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Out-of-Band Server Triggered DOM Operations +WWW= https://cableready.stimulusreflex.com/ \ + https://github.com/stimulusreflex/cable_ready + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +RUN_DEPENDS= rubygem-actionpack71>=5.2:www/rubygem-actionpack71 \ + rubygem-actionview71>=5.2:devel/rubygem-actionview71 \ + rubygem-activesupport71>=5.2:devel/rubygem-activesupport71 \ + rubygem-observer>=0.1<1:devel/rubygem-observer \ + rubygem-railties71>=5.2:www/rubygem-railties71 \ + rubygem-thread-local>=1.1.0:devel/rubygem-thread-local + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-cable_ready/distinfo b/www/rubygem-cable_ready/distinfo new file mode 100644 index 000000000000..fdb1ed02c97f --- /dev/null +++ b/www/rubygem-cable_ready/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1716142222 +SHA256 (rubygem/cable_ready-5.0.5.gem) = 62f811e9d6f1a397267f7a7ebd11c0be120bed5b13e6fce3124547846cfbfc68 +SIZE (rubygem/cable_ready-5.0.5.gem) = 166912 diff --git a/www/rubygem-cable_ready/pkg-descr b/www/rubygem-cable_ready/pkg-descr new file mode 100644 index 000000000000..056e9eff3b99 --- /dev/null +++ b/www/rubygem-cable_ready/pkg-descr @@ -0,0 +1,4 @@ +CableReady helps you create great real-time user experiences by making it simple +to trigger client-side DOM changes from server-side Ruby. It establishes a +standard for interacting with the client via ActionCable web sockets. No need +for custom JavaScript. diff --git a/www/rubygem-cloudinary/Makefile b/www/rubygem-cloudinary/Makefile new file mode 100644 index 000000000000..f90b00ded23c --- /dev/null +++ b/www/rubygem-cloudinary/Makefile @@ -0,0 +1,22 @@ +PORTNAME= cloudinary +PORTVERSION= 2.0.2 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Client library for easily using the Cloudinary service +WWW= https://cloudinary.com/ \ + https://cloudinary.com/documentation/rails_integration \ + https://github.com/cloudinary/cloudinary_gem + +LICENSE= MIT + +RUN_DEPENDS= rubygem-faraday>=2.0.1<3.0.0:www/rubygem-faraday \ + rubygem-faraday-follow_redirects>=0.3.0<0.4:www/rubygem-faraday-follow_redirects \ + rubygem-faraday-multipart>=1.0.4<2:www/rubygem-faraday-multipart + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-cloudinary/distinfo b/www/rubygem-cloudinary/distinfo new file mode 100644 index 000000000000..4197ecbaca78 --- /dev/null +++ b/www/rubygem-cloudinary/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714227846 +SHA256 (rubygem/cloudinary-2.0.2.gem) = 9c146ccd9bb0b45f3c4330e6c18577c855971cac9de2fa901bb3486885231e59 +SIZE (rubygem/cloudinary-2.0.2.gem) = 148992 diff --git a/www/rubygem-cloudinary/pkg-descr b/www/rubygem-cloudinary/pkg-descr new file mode 100644 index 000000000000..5f8494ce8719 --- /dev/null +++ b/www/rubygem-cloudinary/pkg-descr @@ -0,0 +1,3 @@ +The Cloudinary Ruby on Rails SDK allows you to quickly and easily integrate your +application with Cloudinary. Effortlessly optimize, transform, upload and manage +your cloud's assets. diff --git a/www/rubygem-http-accept/Makefile b/www/rubygem-http-accept/Makefile index 76a284d79d0d..55c2ff4f63b0 100644 --- a/www/rubygem-http-accept/Makefile +++ b/www/rubygem-http-accept/Makefile @@ -8,6 +8,7 @@ COMMENT= Parse Accept and Accept-Language HTTP headers WWW= https://github.com/socketry/http-accept LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md USES= gem diff --git a/www/rubygem-httparty/Makefile b/www/rubygem-httparty/Makefile index c4f85664dd91..ab3ba741a244 100644 --- a/www/rubygem-httparty/Makefile +++ b/www/rubygem-httparty/Makefile @@ -1,5 +1,5 @@ PORTNAME= httparty -PORTVERSION= 0.21.0 +PORTVERSION= 0.22.0 CATEGORIES= www rubygems MASTER_SITES= RG @@ -11,7 +11,8 @@ WWW= https://www.johnnunemaker.com/httparty/ \ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/MIT-LICENSE -RUN_DEPENDS= rubygem-mini_mime>=1.0.0:mail/rubygem-mini_mime \ +RUN_DEPENDS= rubygem-csv>=0:devel/rubygem-csv \ + rubygem-mini_mime>=1.0.0:mail/rubygem-mini_mime \ rubygem-multi_xml>=0.5.2:textproc/rubygem-multi_xml USES= cpe gem diff --git a/www/rubygem-httparty/distinfo b/www/rubygem-httparty/distinfo index c16fcfefdbd8..df6ccd2b7d36 100644 --- a/www/rubygem-httparty/distinfo +++ b/www/rubygem-httparty/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1682354648 -SHA256 (rubygem/httparty-0.21.0.gem) = 00ef7bf9a71f30a3bff88edeb5b16a34bea883ab67c246b3f0db2d6794fe1214 -SIZE (rubygem/httparty-0.21.0.gem) = 47616 +TIMESTAMP = 1715843886 +SHA256 (rubygem/httparty-0.22.0.gem) = 78652a5c9471cf0093d3b2083c2295c9c8f12b44c65112f1846af2b71430fa6c +SIZE (rubygem/httparty-0.22.0.gem) = 47616 diff --git a/www/rubygem-httparty021/Makefile b/www/rubygem-httparty021/Makefile new file mode 100644 index 000000000000..17fbb7ea902b --- /dev/null +++ b/www/rubygem-httparty021/Makefile @@ -0,0 +1,29 @@ +PORTNAME= httparty +PORTVERSION= 0.21.0 +CATEGORIES= www rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= 021 + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Ruby Library that Makes HTTP Fun Again +WWW= https://www.johnnunemaker.com/httparty/ \ + https://github.com/jnunemaker/httparty + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-mini_mime>=1.0.0:mail/rubygem-mini_mime \ + rubygem-multi_xml>=0.5.2:textproc/rubygem-multi_xml + +USES= cpe gem + +NO_ARCH= yes + +CPE_VENDOR= john_nunemaker + +PORTSCOUT= limit:^0\.21\. + +post-install: + ${RM} ${STAGEDIR}${PREFIX}/bin/httparty + +.include <bsd.port.mk> diff --git a/www/rubygem-httparty021/distinfo b/www/rubygem-httparty021/distinfo new file mode 100644 index 000000000000..c16fcfefdbd8 --- /dev/null +++ b/www/rubygem-httparty021/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1682354648 +SHA256 (rubygem/httparty-0.21.0.gem) = 00ef7bf9a71f30a3bff88edeb5b16a34bea883ab67c246b3f0db2d6794fe1214 +SIZE (rubygem/httparty-0.21.0.gem) = 47616 diff --git a/www/rubygem-httparty021/pkg-descr b/www/rubygem-httparty021/pkg-descr new file mode 100644 index 000000000000..7e7ee4388b40 --- /dev/null +++ b/www/rubygem-httparty021/pkg-descr @@ -0,0 +1,9 @@ +httparty is a Ruby library that makes HTTP fun again! + +Its features: +* Easy get, post, put, delete requests +* Basic http authentication +* Default request query string parameters (i.e. for API keys that are needed on + each request) +* Automatic parsing of JSON and XML into ruby hashes based on response + content-type diff --git a/www/rubygem-multipart-post/Makefile b/www/rubygem-multipart-post/Makefile index c7be2aaa0c18..154e10986f56 100644 --- a/www/rubygem-multipart-post/Makefile +++ b/www/rubygem-multipart-post/Makefile @@ -1,13 +1,15 @@ PORTNAME= multipart-post -PORTVERSION= 2.4.0 +PORTVERSION= 2.4.1 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Ruby Library that Use with Net::HTTP to do multipart form posts -WWW= https://github.com/socketry/multipart-post +WWW= https://socketry.github.io/multipart-post/ \ + https://github.com/socketry/multipart-post LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md USES= gem diff --git a/www/rubygem-multipart-post/distinfo b/www/rubygem-multipart-post/distinfo index 6c7200559c8e..cdfd92395193 100644 --- a/www/rubygem-multipart-post/distinfo +++ b/www/rubygem-multipart-post/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708450634 -SHA256 (rubygem/multipart-post-2.4.0.gem) = c7c48ce6cd32cd7a3bf5fa58fed39cf58e90f75a526de24fbaa91913cab86380 -SIZE (rubygem/multipart-post-2.4.0.gem) = 15872 +TIMESTAMP = 1715843794 +SHA256 (rubygem/multipart-post-2.4.1.gem) = 9872d03a8e552020ca096adadbf5e3cb1cd1cdd6acd3c161136b8a5737cdb4a8 +SIZE (rubygem/multipart-post-2.4.1.gem) = 15872 diff --git a/www/rubygem-passenger/Makefile b/www/rubygem-passenger/Makefile index 7e74c1cc339d..f9e4c601e98d 100644 --- a/www/rubygem-passenger/Makefile +++ b/www/rubygem-passenger/Makefile @@ -1,5 +1,5 @@ PORTNAME= passenger -PORTVERSION= 6.0.20 +PORTVERSION= 6.0.22 CATEGORIES= www rubygems MASTER_SITES= RG diff --git a/www/rubygem-passenger/distinfo b/www/rubygem-passenger/distinfo index 75249a16e29e..e49f92fadc4f 100644 --- a/www/rubygem-passenger/distinfo +++ b/www/rubygem-passenger/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708450640 -SHA256 (rubygem/passenger-6.0.20.gem) = 6383431c00001d3273b1038423af0516a355c521834973773f852613ee91a393 -SIZE (rubygem/passenger-6.0.20.gem) = 8339456 +TIMESTAMP = 1716142224 +SHA256 (rubygem/passenger-6.0.22.gem) = 904e000c942eedf4f64c794ff8468759a3f58be52d4aefd4e6700e6084757cb8 +SIZE (rubygem/passenger-6.0.22.gem) = 8178176 diff --git a/www/rubygem-possessive/Makefile b/www/rubygem-possessive/Makefile new file mode 100644 index 000000000000..a8e4de2e2951 --- /dev/null +++ b/www/rubygem-possessive/Makefile @@ -0,0 +1,17 @@ +PORTNAME= possessive +PORTVERSION= 1.0.1 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Rails plugin that lets you get a possessive form of a string for use on sites +WWW= https://github.com/bclubb/possessive + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-possessive/distinfo b/www/rubygem-possessive/distinfo new file mode 100644 index 000000000000..f263a4a572cd --- /dev/null +++ b/www/rubygem-possessive/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714227848 +SHA256 (rubygem/possessive-1.0.1.gem) = f4ff32bbb22c40cf1fa92caf2f3f4a66969e7b0bbff2247ed9424fa23b9363a5 +SIZE (rubygem/possessive-1.0.1.gem) = 6144 diff --git a/www/rubygem-possessive/pkg-descr b/www/rubygem-possessive/pkg-descr new file mode 100644 index 000000000000..fe88363a8530 --- /dev/null +++ b/www/rubygem-possessive/pkg-descr @@ -0,0 +1,2 @@ +possessive is a Rails plugin that lets you get a possessive form of a string for +use on sites. diff --git a/www/rubygem-protocol-hpack/Makefile b/www/rubygem-protocol-hpack/Makefile index 8e05c618e4d9..845b3a842566 100644 --- a/www/rubygem-protocol-hpack/Makefile +++ b/www/rubygem-protocol-hpack/Makefile @@ -5,9 +5,11 @@ MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Compresssor and decompressor for HTTP 2.0 HPACK -WWW= https://github.com/socketry/protocol-hpack +WWW= https://socketry.github.io/protocol-hpack/ \ + https://github.com/socketry/protocol-hpack LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md USES= gem diff --git a/www/rubygem-protocol-http/Makefile b/www/rubygem-protocol-http/Makefile index cdb00973da61..f4e889d55dd3 100644 --- a/www/rubygem-protocol-http/Makefile +++ b/www/rubygem-protocol-http/Makefile @@ -1,11 +1,12 @@ PORTNAME= protocol-http -PORTVERSION= 0.26.4 +PORTVERSION= 0.26.5 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Provides abstractions to handle HTTP protocols -WWW= https://github.com/socketry/protocol-http +WWW= https://socketry.github.io/protocol-http/ \ + https://github.com/socketry/protocol-http LICENSE= MIT LICENSE_FILE= ${WRKSRC}/license.md diff --git a/www/rubygem-protocol-http/distinfo b/www/rubygem-protocol-http/distinfo index 9bcb2c43f7a5..4809cb997eca 100644 --- a/www/rubygem-protocol-http/distinfo +++ b/www/rubygem-protocol-http/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713528662 -SHA256 (rubygem/protocol-http-0.26.4.gem) = b9766c9e1a571f48602103fe995ee5009045e33c2972ef618893079f914bffe1 -SIZE (rubygem/protocol-http-0.26.4.gem) = 26624 +TIMESTAMP = 1715843796 +SHA256 (rubygem/protocol-http-0.26.5.gem) = dded89c188140b9faeb0f2bb2dcf2410626e280c8bb5b8c7a75df71d35f4ca76 +SIZE (rubygem/protocol-http-0.26.5.gem) = 26624 diff --git a/www/rubygem-protocol-http1/Makefile b/www/rubygem-protocol-http1/Makefile index ee901cdb3ad4..afe9e5c2ccf0 100644 --- a/www/rubygem-protocol-http1/Makefile +++ b/www/rubygem-protocol-http1/Makefile @@ -1,11 +1,12 @@ PORTNAME= protocol-http1 -PORTVERSION= 0.19.0 +PORTVERSION= 0.19.1 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Low level implementation of the HTTP/1 protocol -WWW= https://github.com/socketry/protocol-http1 +WWW= https://socketry.github.io/protocol-http1/ \ + https://github.com/socketry/protocol-http1 LICENSE= MIT LICENSE_FILE= ${WRKSRC}/license.md diff --git a/www/rubygem-protocol-http1/distinfo b/www/rubygem-protocol-http1/distinfo index 4394b746df47..dfea09a4f509 100644 --- a/www/rubygem-protocol-http1/distinfo +++ b/www/rubygem-protocol-http1/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712427998 -SHA256 (rubygem/protocol-http1-0.19.0.gem) = 996d7a85286abc2d4c26eb77298699dbb2b8863c0cfdc0b8c641d35f5ca86a98 -SIZE (rubygem/protocol-http1-0.19.0.gem) = 16896 +TIMESTAMP = 1715843798 +SHA256 (rubygem/protocol-http1-0.19.1.gem) = 85335a56a0f3d4d13c5c8ae08bfeffb09a5cf8fd0308a6ce1f42a11c09cdf485 +SIZE (rubygem/protocol-http1-0.19.1.gem) = 16896 diff --git a/www/rubygem-protocol-http2/Makefile b/www/rubygem-protocol-http2/Makefile index 0f8930e15d1e..189352327a91 100644 --- a/www/rubygem-protocol-http2/Makefile +++ b/www/rubygem-protocol-http2/Makefile @@ -1,11 +1,12 @@ PORTNAME= protocol-http2 -PORTVERSION= 0.16.0 +PORTVERSION= 0.17.0 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Low level implementation of the HTTP/2 protocol -WWW= https://github.com/socketry/protocol-http2 +WWW= https://socketry.github.io/protocol-http2/ \ + https://github.com/socketry/protocol-http2 LICENSE= MIT LICENSE_FILE= ${WRKSRC}/license.md diff --git a/www/rubygem-protocol-http2/distinfo b/www/rubygem-protocol-http2/distinfo index e73de7e06c29..b68d04415d44 100644 --- a/www/rubygem-protocol-http2/distinfo +++ b/www/rubygem-protocol-http2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708450648 -SHA256 (rubygem/protocol-http2-0.16.0.gem) = 613947d27ae3edeece4e42ed26d6b8b26f0afc23da7dd6c487f8a19f9f5d6232 -SIZE (rubygem/protocol-http2-0.16.0.gem) = 28160 +TIMESTAMP = 1715843800 +SHA256 (rubygem/protocol-http2-0.17.0.gem) = ee059852500fed666b7783c363283ac97dc9a30e9a9f92384688c5fd9ed47885 +SIZE (rubygem/protocol-http2-0.17.0.gem) = 28160 diff --git a/www/rubygem-protocol-rack/Makefile b/www/rubygem-protocol-rack/Makefile index 4df492290c30..d24c22c0b560 100644 --- a/www/rubygem-protocol-rack/Makefile +++ b/www/rubygem-protocol-rack/Makefile @@ -1,13 +1,15 @@ PORTNAME= protocol-rack -PORTVERSION= 0.5.0 +PORTVERSION= 0.5.1 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Implementation of the Rack protocol/specification -WWW= https://github.com/socketry/protocol-rack +WWW= https://socketry.github.io/protocol-rack/ \ + https://github.com/socketry/protocol-rack LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md RUN_DEPENDS= rubygem-protocol-http>=0.23<1:www/rubygem-protocol-http \ rubygem-rack>=1.0,3:www/rubygem-rack diff --git a/www/rubygem-protocol-rack/distinfo b/www/rubygem-protocol-rack/distinfo index 71aac5dfeafa..7e766e513ea5 100644 --- a/www/rubygem-protocol-rack/distinfo +++ b/www/rubygem-protocol-rack/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712330699 -SHA256 (rubygem/protocol-rack-0.5.0.gem) = 4b03372696aab6448d9061ced36b68eb1bdf0d6594a97897615577c9f721dad2 -SIZE (rubygem/protocol-rack-0.5.0.gem) = 17920 +TIMESTAMP = 1715843802 +SHA256 (rubygem/protocol-rack-0.5.1.gem) = bbd12e3869b07614b5b381739972e0feb90072fc5f250a11244fbff54a4906ad +SIZE (rubygem/protocol-rack-0.5.1.gem) = 17920 diff --git a/www/rubygem-protocol-websocket/Makefile b/www/rubygem-protocol-websocket/Makefile index 81b5d7f0de9a..c0c398bf47a1 100644 --- a/www/rubygem-protocol-websocket/Makefile +++ b/www/rubygem-protocol-websocket/Makefile @@ -1,13 +1,15 @@ PORTNAME= protocol-websocket -PORTVERSION= 0.12.1 +PORTVERSION= 0.13.0 CATEGORIES= www rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Low-level implementation of the WebSocket protocol -WWW= https://github.com/socketry/protocol-websocket +WWW= https://socketry.github.io/protocol-websocket/ \ + https://github.com/socketry/protocol-websocket LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/license.md RUN_DEPENDS= rubygem-protocol-http>=0.2<1:www/rubygem-protocol-http diff --git a/www/rubygem-protocol-websocket/distinfo b/www/rubygem-protocol-websocket/distinfo index 965d9b518cbd..154912fb2b35 100644 --- a/www/rubygem-protocol-websocket/distinfo +++ b/www/rubygem-protocol-websocket/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1696753758 -SHA256 (rubygem/protocol-websocket-0.12.1.gem) = a2a15e2d1d3fb8834bf328b48ef8a068f6312409014f78d6ace33f0dc828d97b -SIZE (rubygem/protocol-websocket-0.12.1.gem) = 18432 +TIMESTAMP = 1716142226 +SHA256 (rubygem/protocol-websocket-0.13.0.gem) = 70ba4d6a9079ef57753b9b6544f26bcb2523c1174cd5f9cff05ae27754d8ef77 +SIZE (rubygem/protocol-websocket-0.13.0.gem) = 18432 diff --git a/www/rubygem-rack-contrib/Makefile b/www/rubygem-rack-contrib/Makefile index 78703cee9388..b0175a7ad2f5 100644 --- a/www/rubygem-rack-contrib/Makefile +++ b/www/rubygem-rack-contrib/Makefile @@ -1,5 +1,6 @@ PORTNAME= rack-contrib PORTVERSION= 2.4.0 +PORTREVISION= 1 CATEGORIES= www rubygems MASTER_SITES= RG @@ -10,7 +11,7 @@ WWW= https://github.com/rack/rack-contrib LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -RUN_DEPENDS= rubygem-rack22>=0,3<4,3:www/rubygem-rack22 +RUN_DEPENDS= rubygem-rack>=0,3<4,3:www/rubygem-rack USES= gem diff --git a/www/rubygem-rack/Makefile b/www/rubygem-rack/Makefile index 317ec913aaa7..d7fb94114d67 100644 --- a/www/rubygem-rack/Makefile +++ b/www/rubygem-rack/Makefile @@ -1,5 +1,5 @@ PORTNAME= rack -PORTVERSION= 3.0.10 +PORTVERSION= 3.0.11 PORTEPOCH= 3 CATEGORIES= www rubygems MASTER_SITES= RG diff --git a/www/rubygem-rack/distinfo b/www/rubygem-rack/distinfo index 738024976d22..1a39486b147a 100644 --- a/www/rubygem-rack/distinfo +++ b/www/rubygem-rack/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711466402 -SHA256 (rubygem/rack-3.0.10.gem) = 2fb98cf24147ad6a114a13cac8dd45531f451d2afd5cccabfb346b3aa58c7574 -SIZE (rubygem/rack-3.0.10.gem) = 109056 +TIMESTAMP = 1715652667 +SHA256 (rubygem/rack-3.0.11.gem) = a08473678160760d9085ebe14508a42add18cde4217107b4b1aa01c8f14ff98c +SIZE (rubygem/rack-3.0.11.gem) = 109056 diff --git a/www/rubygem-rack16/Makefile b/www/rubygem-rack16/Makefile index cf10646eacc0..3b39908b2376 100644 --- a/www/rubygem-rack16/Makefile +++ b/www/rubygem-rack16/Makefile @@ -24,7 +24,7 @@ SHEBANG_LANG= rackup rackup_OLD_CMD= ../../bin/rackup rackup_CMD= ${LOCALBASE}/bin/rackup -# Avoid CONFLICTS_INSTALL with www/rubygem-rack +# Avoid CONFLICTS_INSTALL with www/rubygem-rackup post-install: ${RM} ${STAGEDIR}${PREFIX}/bin/rackup diff --git a/www/rubygem-rack22/Makefile b/www/rubygem-rack22/Makefile index b7669b5d4191..892d6a5578cd 100644 --- a/www/rubygem-rack22/Makefile +++ b/www/rubygem-rack22/Makefile @@ -1,5 +1,6 @@ PORTNAME= rack PORTVERSION= 2.2.9 +PORTREVISION= 1 PORTEPOCH= 3 CATEGORIES= www rubygems MASTER_SITES= RG @@ -16,10 +17,12 @@ USES= cpe gem NO_ARCH= yes -PLIST_FILES= bin/rackup - CPE_VENDOR= rack_project PORTSCOUT= limit:^2\.2\. +# Avoid CONFLICTS_INSTALL with www/rubygem-rackup +post-install: + ${RM} ${STAGEDIR}${PREFIX}/bin/rackup + .include <bsd.port.mk> diff --git a/www/rubygem-rails70/Makefile b/www/rubygem-rails70/Makefile index 2f1f497cc777..2deb92487606 100644 --- a/www/rubygem-rails70/Makefile +++ b/www/rubygem-rails70/Makefile @@ -1,5 +1,5 @@ PORTNAME= rails -PORTVERSION= 7.0.8.1 +PORTVERSION= 7.0.8.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 70 diff --git a/www/rubygem-rails70/distinfo b/www/rubygem-rails70/distinfo index 2cb696103bb5..77985bc2930c 100644 --- a/www/rubygem-rails70/distinfo +++ b/www/rubygem-rails70/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391042 -SHA256 (rubygem/rails-7.0.8.1.gem) = 7deb37884ac5e9afeaeb6ad503c56e819f68e53746d621b2187322f874ba2ded -SIZE (rubygem/rails-7.0.8.1.gem) = 7168 +TIMESTAMP = 1716142252 +SHA256 (rubygem/rails-7.0.8.3.gem) = cf9d41d82e1f556edf5225c324402f3159aad7e2c2e682a80f2d272aa568d8c6 +SIZE (rubygem/rails-7.0.8.3.gem) = 7168 diff --git a/www/rubygem-rails71/Makefile b/www/rubygem-rails71/Makefile index ba9bbd5f6931..d5e8d1c65af7 100644 --- a/www/rubygem-rails71/Makefile +++ b/www/rubygem-rails71/Makefile @@ -1,5 +1,5 @@ PORTNAME= rails -PORTVERSION= 7.1.3.2 +PORTVERSION= 7.1.3.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 71 diff --git a/www/rubygem-rails71/distinfo b/www/rubygem-rails71/distinfo index 0c5548b8ab27..5c59fc430e98 100644 --- a/www/rubygem-rails71/distinfo +++ b/www/rubygem-rails71/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391068 -SHA256 (rubygem/rails-7.1.3.2.gem) = 2d787a65e87b70ee65f9d1cb644aaa5bb80eea12298982f474da949772c1bfa0 -SIZE (rubygem/rails-7.1.3.2.gem) = 7168 +TIMESTAMP = 1716142278 +SHA256 (rubygem/rails-7.1.3.3.gem) = b65188cdca517905f425e984d50f080500cbaf5d17c6b56518e0a6baec9382de +SIZE (rubygem/rails-7.1.3.3.gem) = 7168 diff --git a/www/rubygem-railties70/Makefile b/www/rubygem-railties70/Makefile index aa02dfd46995..32af62c0bf08 100644 --- a/www/rubygem-railties70/Makefile +++ b/www/rubygem-railties70/Makefile @@ -1,5 +1,5 @@ PORTNAME= railties -PORTVERSION= 7.0.8.1 +PORTVERSION= 7.0.8.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 70 diff --git a/www/rubygem-railties70/distinfo b/www/rubygem-railties70/distinfo index 636b0c599644..38a44745dba5 100644 --- a/www/rubygem-railties70/distinfo +++ b/www/rubygem-railties70/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391044 -SHA256 (rubygem/railties-7.0.8.1.gem) = c2e4e3617defafad5c1c2c5761d697873197422ec49f58a96d6728f3a729ea21 -SIZE (rubygem/railties-7.0.8.1.gem) = 161792 +TIMESTAMP = 1716142254 +SHA256 (rubygem/railties-7.0.8.3.gem) = b9cc1ad911f8e929bd63b5a3cdb7ecbff4e6b6579aa1736b0923d05c0088b36b +SIZE (rubygem/railties-7.0.8.3.gem) = 161792 diff --git a/www/rubygem-railties71/Makefile b/www/rubygem-railties71/Makefile index ad456401fb9a..7caa79f2c844 100644 --- a/www/rubygem-railties71/Makefile +++ b/www/rubygem-railties71/Makefile @@ -1,5 +1,5 @@ PORTNAME= railties -PORTVERSION= 7.1.3.2 +PORTVERSION= 7.1.3.3 CATEGORIES= www rubygems MASTER_SITES= RG PKGNAMESUFFIX= 71 diff --git a/www/rubygem-railties71/distinfo b/www/rubygem-railties71/distinfo index a3ec010c88c0..71dc60a28c4f 100644 --- a/www/rubygem-railties71/distinfo +++ b/www/rubygem-railties71/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709391070 -SHA256 (rubygem/railties-7.1.3.2.gem) = 59fcd55cbfb90044ea4c3e9fdea2cf5687385c138cacc4a258a46508b7d36510 -SIZE (rubygem/railties-7.1.3.2.gem) = 181248 +TIMESTAMP = 1716142280 +SHA256 (rubygem/railties-7.1.3.3.gem) = fd87f22d653fb7ea246432ac7ed8391a39973f79dcff5e3424b2e3ed2361b10b +SIZE (rubygem/railties-7.1.3.3.gem) = 181760 diff --git a/www/rubygem-responders-rails71/Makefile b/www/rubygem-responders-rails71/Makefile new file mode 100644 index 000000000000..b412cfee80ef --- /dev/null +++ b/www/rubygem-responders-rails71/Makefile @@ -0,0 +1,21 @@ +PORTNAME= responders +PORTVERSION= 3.1.1 +CATEGORIES= www rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= -rails71 + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Simple Ruby DSL for making HTTP requests +WWW= https://github.com/heartcombo/responders + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-actionpack71>=5.2:www/rubygem-actionpack71 \ + rubygem-railties71>=5.2:www/rubygem-railties71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-responders-rails71/distinfo b/www/rubygem-responders-rails71/distinfo new file mode 100644 index 000000000000..6731238316f3 --- /dev/null +++ b/www/rubygem-responders-rails71/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714227796 +SHA256 (rubygem/responders-3.1.1.gem) = 92f2a87e09028347368639cfb468f5fefa745cb0dc2377ef060db1cdd79a341a +SIZE (rubygem/responders-3.1.1.gem) = 20480 diff --git a/www/rubygem-responders-rails71/pkg-descr b/www/rubygem-responders-rails71/pkg-descr new file mode 100644 index 000000000000..22f8e4f8553b --- /dev/null +++ b/www/rubygem-responders-rails71/pkg-descr @@ -0,0 +1 @@ +Responders provides a set of responders modules to dry up your Rails app. diff --git a/www/rubygem-roda/Makefile b/www/rubygem-roda/Makefile index 73ec147f33ea..80ee5a60fb8e 100644 --- a/www/rubygem-roda/Makefile +++ b/www/rubygem-roda/Makefile @@ -1,5 +1,5 @@ PORTNAME= roda -PORTVERSION= 3.79.0 +PORTVERSION= 3.80.0 CATEGORIES= www rubygems MASTER_SITES= RG diff --git a/www/rubygem-roda/distinfo b/www/rubygem-roda/distinfo index fcbc648ebd83..f46b2d5856e3 100644 --- a/www/rubygem-roda/distinfo +++ b/www/rubygem-roda/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713001226 -SHA256 (rubygem/roda-3.79.0.gem) = 8afac3e9c660fef1caa03a5df049823dedf3aa2c4c73ce3ffd644c03b5122718 -SIZE (rubygem/roda-3.79.0.gem) = 238080 +TIMESTAMP = 1715843888 +SHA256 (rubygem/roda-3.80.0.gem) = bf90951c2e3df41b9e0675a984dbc6ef01b274c5fe25fcef482b9606a876c8ca +SIZE (rubygem/roda-3.80.0.gem) = 240128 diff --git a/www/rubygem-rqrcode/Makefile b/www/rubygem-rqrcode/Makefile index ffe76de90d1d..da3cebc819fb 100644 --- a/www/rubygem-rqrcode/Makefile +++ b/www/rubygem-rqrcode/Makefile @@ -12,9 +12,9 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt RUN_DEPENDS= rubygem-chunky_png>=1.0<2:graphics/rubygem-chunky_png \ rubygem-rqrcode_core>=1.0<2:www/rubygem-rqrcode_core - -NO_ARCH= yes USES= gem +NO_ARCH= yes + .include <bsd.port.mk> diff --git a/www/rubygem-ruby-openai/Makefile b/www/rubygem-ruby-openai/Makefile index 847cef5f2b49..f6a724a9d1c3 100644 --- a/www/rubygem-ruby-openai/Makefile +++ b/www/rubygem-ruby-openai/Makefile @@ -1,5 +1,5 @@ PORTNAME= ruby-openai -PORTVERSION= 6.5.0 +PORTVERSION= 7.0.1 CATEGORIES= www rubygems MASTER_SITES= RG diff --git a/www/rubygem-ruby-openai/distinfo b/www/rubygem-ruby-openai/distinfo index 2f710a4b30fe..d220e59937c5 100644 --- a/www/rubygem-ruby-openai/distinfo +++ b/www/rubygem-ruby-openai/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712084574 -SHA256 (rubygem/ruby-openai-6.5.0.gem) = 4ab64403728ab5f2a95d448fac6b569fd3758e2d739d4b4e2bcf6c7100df7f88 -SIZE (rubygem/ruby-openai-6.5.0.gem) = 30208 +TIMESTAMP = 1715843804 +SHA256 (rubygem/ruby-openai-7.0.1.gem) = d0b439edf03b917f004a336ecad66a88894d8801ebfe44bbf10d104684aaa67b +SIZE (rubygem/ruby-openai-7.0.1.gem) = 32256 diff --git a/www/rubygem-selenium-webdriver/Makefile b/www/rubygem-selenium-webdriver/Makefile index c82bfc848e33..af885e23b25b 100644 --- a/www/rubygem-selenium-webdriver/Makefile +++ b/www/rubygem-selenium-webdriver/Makefile @@ -1,5 +1,5 @@ PORTNAME= selenium-webdriver -PORTVERSION= 4.19.0 +PORTVERSION= 4.21.1 CATEGORIES= www rubygems MASTER_SITES= RG diff --git a/www/rubygem-selenium-webdriver/distinfo b/www/rubygem-selenium-webdriver/distinfo index bcc26a29d7bb..a92800214e7f 100644 --- a/www/rubygem-selenium-webdriver/distinfo +++ b/www/rubygem-selenium-webdriver/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711860621 -SHA256 (rubygem/selenium-webdriver-4.19.0.gem) = 4c8bd1d6016a456154b4ba71a3bb4d532a0ae185a38acf9cec0acbd38b4e5066 -SIZE (rubygem/selenium-webdriver-4.19.0.gem) = 9561600 +TIMESTAMP = 1716142228 +SHA256 (rubygem/selenium-webdriver-4.21.1.gem) = c30b64014532fc5156c60797985f839f36adbe60ff4653e7112b008dc1c83263 +SIZE (rubygem/selenium-webdriver-4.21.1.gem) = 8511488 diff --git a/www/rubygem-showcase-rails/Makefile b/www/rubygem-showcase-rails/Makefile new file mode 100644 index 000000000000..b05db6cac4cc --- /dev/null +++ b/www/rubygem-showcase-rails/Makefile @@ -0,0 +1,19 @@ +PORTNAME= showcase-rails +PORTVERSION= 0.4.6 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Showcase helps you show off and document your partials, components, view helpers and Stimulus controllers +WWW= https://github.com/bullet-train-co/showcase + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-rails71>=6.1.0:www/rubygem-rails71 + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/rubygem-showcase-rails/distinfo b/www/rubygem-showcase-rails/distinfo new file mode 100644 index 000000000000..def8da35fd1c --- /dev/null +++ b/www/rubygem-showcase-rails/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1714227850 +SHA256 (rubygem/showcase-rails-0.4.6.gem) = 851dfbafc260359bab8f078603638c4e3efd84e44dd1249ecf1a6c94aa7df2b3 +SIZE (rubygem/showcase-rails-0.4.6.gem) = 22016 diff --git a/www/rubygem-showcase-rails/pkg-descr b/www/rubygem-showcase-rails/pkg-descr new file mode 100644 index 000000000000..dce460334534 --- /dev/null +++ b/www/rubygem-showcase-rails/pkg-descr @@ -0,0 +1,2 @@ +Showcase lets you build previews for your partials, components, view helpers, +Stimulus controllers and more -- Rails engines included! diff --git a/www/rustypaste-cli/Makefile b/www/rustypaste-cli/Makefile index d0057a4858f5..683683101658 100644 --- a/www/rustypaste-cli/Makefile +++ b/www/rustypaste-cli/Makefile @@ -1,7 +1,6 @@ PORTNAME= rustypaste-cli DISTVERSIONPREFIX= v -DISTVERSION= 0.8.0 -PORTREVISION= 5 +DISTVERSION= 0.9.0 CATEGORIES= www MAINTAINER= DtxdF@disroot.org diff --git a/www/rustypaste-cli/Makefile.crates b/www/rustypaste-cli/Makefile.crates index 59654afdc083..7ee711926366 100644 --- a/www/rustypaste-cli/Makefile.crates +++ b/www/rustypaste-cli/Makefile.crates @@ -1,120 +1,110 @@ -CARGO_CRATES= adler-1.0.2 \ - base64-0.21.2 \ - bitflags-1.3.2 \ - bitflags-2.4.0 \ - bumpalo-3.13.0 \ - cc-1.0.82 \ - cfg-if-1.0.0 \ - colored-2.0.4 \ - console-0.15.7 \ - core-foundation-0.9.3 \ - core-foundation-sys-0.8.4 \ - crc32fast-1.3.2 \ - dirs-next-2.0.0 \ - dirs-sys-next-0.1.2 \ - encode_unicode-0.3.6 \ - equivalent-1.0.1 \ - errno-0.3.2 \ - errno-dragonfly-0.1.2 \ - fastrand-2.0.0 \ - flate2-1.0.26 \ - form_urlencoded-1.2.0 \ - getopts-0.2.21 \ - getrandom-0.2.10 \ - hashbrown-0.14.0 \ - hermit-abi-0.3.2 \ - idna-0.4.0 \ - indexmap-2.0.0 \ - indicatif-0.17.6 \ - instant-0.1.12 \ - is-terminal-0.4.9 \ - itoa-1.0.9 \ - js-sys-0.3.64 \ - lazy_static-1.4.0 \ - libc-0.2.147 \ - linux-raw-sys-0.4.5 \ - log-0.4.20 \ - memchr-2.5.0 \ - mime-0.3.17 \ - mime_guess-2.0.4 \ - miniz_oxide-0.7.1 \ - multipart-0.18.0 \ - number_prefix-0.4.0 \ - once_cell-1.18.0 \ - openssl-probe-0.1.5 \ - percent-encoding-2.3.0 \ - portable-atomic-1.4.2 \ - ppv-lite86-0.2.17 \ - proc-macro2-1.0.66 \ - quote-1.0.32 \ - rand-0.8.5 \ - rand_chacha-0.3.1 \ - rand_core-0.6.4 \ - redox_syscall-0.2.16 \ - redox_syscall-0.3.5 \ - redox_users-0.4.3 \ - ring-0.16.20 \ - rustix-0.38.8 \ - rustls-0.21.6 \ - rustls-native-certs-0.6.3 \ - rustls-pemfile-1.0.3 \ - rustls-webpki-0.100.1 \ - rustls-webpki-0.101.3 \ - ryu-1.0.15 \ - schannel-0.1.22 \ - sct-0.7.0 \ - security-framework-2.9.2 \ - security-framework-sys-2.9.1 \ - serde-1.0.188 \ - serde_derive-1.0.188 \ - serde_json-1.0.104 \ - serde_spanned-0.6.3 \ - spin-0.5.2 \ - syn-2.0.28 \ - tempfile-3.7.1 \ - thiserror-1.0.48 \ - thiserror-impl-1.0.48 \ - tinyvec-1.6.0 \ - tinyvec_macros-0.1.1 \ - toml-0.7.6 \ - toml_datetime-0.6.3 \ - toml_edit-0.19.14 \ - unicase-2.6.0 \ - unicode-bidi-0.3.13 \ - unicode-ident-1.0.11 \ - unicode-normalization-0.1.22 \ - unicode-width-0.1.10 \ - untrusted-0.7.1 \ - ureq-2.7.1 \ - url-2.4.1 \ - version_check-0.9.4 \ - wasi-0.11.0+wasi-snapshot-preview1 \ - wasm-bindgen-0.2.87 \ - wasm-bindgen-backend-0.2.87 \ - wasm-bindgen-macro-0.2.87 \ - wasm-bindgen-macro-support-0.2.87 \ - wasm-bindgen-shared-0.2.87 \ - web-sys-0.3.64 \ - webpki-roots-0.23.1 \ - winapi-0.3.9 \ - winapi-i686-pc-windows-gnu-0.4.0 \ - winapi-x86_64-pc-windows-gnu-0.4.0 \ - windows-sys-0.45.0 \ - windows-sys-0.48.0 \ - windows-targets-0.42.2 \ - windows-targets-0.48.1 \ - windows_aarch64_gnullvm-0.42.2 \ - windows_aarch64_gnullvm-0.48.0 \ - windows_aarch64_msvc-0.42.2 \ - windows_aarch64_msvc-0.48.0 \ - windows_i686_gnu-0.42.2 \ - windows_i686_gnu-0.48.0 \ - windows_i686_msvc-0.42.2 \ - windows_i686_msvc-0.48.0 \ - windows_x86_64_gnu-0.42.2 \ - windows_x86_64_gnu-0.48.0 \ - windows_x86_64_gnullvm-0.42.2 \ - windows_x86_64_gnullvm-0.48.0 \ - windows_x86_64_msvc-0.42.2 \ - windows_x86_64_msvc-0.48.0 \ - winnow-0.5.10 +CARGO_CRATES= adler-1.0.2 \ + base64-0.21.7 \ + bitflags-1.3.2 \ + bitflags-2.5.0 \ + cc-1.0.90 \ + cfg-if-1.0.0 \ + colored-2.1.0 \ + console-0.15.8 \ + core-foundation-0.9.4 \ + core-foundation-sys-0.8.6 \ + crc32fast-1.4.0 \ + dirs-next-2.0.0 \ + dirs-sys-next-0.1.2 \ + encode_unicode-0.3.6 \ + equivalent-1.0.1 \ + errno-0.3.8 \ + fastrand-2.0.2 \ + flate2-1.0.28 \ + form_urlencoded-1.2.1 \ + getopts-0.2.21 \ + getrandom-0.2.12 \ + hashbrown-0.14.3 \ + idna-0.5.0 \ + indexmap-2.2.6 \ + indicatif-0.17.8 \ + instant-0.1.12 \ + itoa-1.0.11 \ + lazy_static-1.4.0 \ + libc-0.2.153 \ + libredox-0.0.1 \ + linux-raw-sys-0.4.13 \ + log-0.4.21 \ + memchr-2.7.1 \ + mime-0.3.17 \ + mime_guess-2.0.4 \ + miniz_oxide-0.7.2 \ + multipart-0.18.0 \ + number_prefix-0.4.0 \ + once_cell-1.19.0 \ + openssl-probe-0.1.5 \ + percent-encoding-2.3.1 \ + portable-atomic-1.6.0 \ + ppv-lite86-0.2.17 \ + proc-macro2-1.0.79 \ + quote-1.0.35 \ + rand-0.8.5 \ + rand_chacha-0.3.1 \ + rand_core-0.6.4 \ + redox_syscall-0.4.1 \ + redox_users-0.4.4 \ + ring-0.17.8 \ + rustix-0.38.32 \ + rustls-0.22.3 \ + rustls-native-certs-0.7.0 \ + rustls-pemfile-2.1.1 \ + rustls-pki-types-1.4.1 \ + rustls-webpki-0.102.2 \ + ryu-1.0.17 \ + schannel-0.1.23 \ + security-framework-2.9.2 \ + security-framework-sys-2.9.1 \ + serde-1.0.197 \ + serde_derive-1.0.197 \ + serde_json-1.0.115 \ + serde_spanned-0.6.5 \ + spin-0.9.8 \ + subtle-2.5.0 \ + syn-2.0.55 \ + tempfile-3.10.1 \ + thiserror-1.0.58 \ + thiserror-impl-1.0.58 \ + tinyvec-1.6.0 \ + tinyvec_macros-0.1.1 \ + toml-0.8.12 \ + toml_datetime-0.6.5 \ + toml_edit-0.22.9 \ + unicase-2.7.0 \ + unicode-bidi-0.3.15 \ + unicode-ident-1.0.12 \ + unicode-normalization-0.1.23 \ + unicode-width-0.1.11 \ + untrusted-0.9.0 \ + ureq-2.9.6 \ + url-2.5.0 \ + version_check-0.9.4 \ + wasi-0.11.0+wasi-snapshot-preview1 \ + webpki-roots-0.26.1 \ + 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-targets-0.48.5 \ + windows-targets-0.52.4 \ + windows_aarch64_gnullvm-0.48.5 \ + windows_aarch64_gnullvm-0.52.4 \ + windows_aarch64_msvc-0.48.5 \ + windows_aarch64_msvc-0.52.4 \ + windows_i686_gnu-0.48.5 \ + windows_i686_gnu-0.52.4 \ + windows_i686_msvc-0.48.5 \ + windows_i686_msvc-0.52.4 \ + windows_x86_64_gnu-0.48.5 \ + windows_x86_64_gnu-0.52.4 \ + windows_x86_64_gnullvm-0.48.5 \ + windows_x86_64_gnullvm-0.52.4 \ + windows_x86_64_msvc-0.48.5 \ + windows_x86_64_msvc-0.52.4 \ + winnow-0.6.5 \ + zeroize-1.7.0 diff --git a/www/rustypaste-cli/distinfo b/www/rustypaste-cli/distinfo index 117d2a590391..d660e4b8e0f9 100644 --- a/www/rustypaste-cli/distinfo +++ b/www/rustypaste-cli/distinfo @@ -1,28 +1,26 @@ -TIMESTAMP = 1695757364 +TIMESTAMP = 1715284254 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe SIZE (rust/crates/adler-1.0.2.crate) = 12778 -SHA256 (rust/crates/base64-0.21.2.crate) = 604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d -SIZE (rust/crates/base64-0.21.2.crate) = 76389 +SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 +SIZE (rust/crates/base64-0.21.7.crate) = 82576 SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 -SHA256 (rust/crates/bitflags-2.4.0.crate) = b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635 -SIZE (rust/crates/bitflags-2.4.0.crate) = 36954 -SHA256 (rust/crates/bumpalo-3.13.0.crate) = a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1 -SIZE (rust/crates/bumpalo-3.13.0.crate) = 82114 -SHA256 (rust/crates/cc-1.0.82.crate) = 305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01 -SIZE (rust/crates/cc-1.0.82.crate) = 67879 +SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1 +SIZE (rust/crates/bitflags-2.5.0.crate) = 43821 +SHA256 (rust/crates/cc-1.0.90.crate) = 8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5 +SIZE (rust/crates/cc-1.0.90.crate) = 73954 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 -SHA256 (rust/crates/colored-2.0.4.crate) = 2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6 -SIZE (rust/crates/colored-2.0.4.crate) = 23654 -SHA256 (rust/crates/console-0.15.7.crate) = c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8 -SIZE (rust/crates/console-0.15.7.crate) = 35409 -SHA256 (rust/crates/core-foundation-0.9.3.crate) = 194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146 -SIZE (rust/crates/core-foundation-0.9.3.crate) = 27059 -SHA256 (rust/crates/core-foundation-sys-0.8.4.crate) = e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa -SIZE (rust/crates/core-foundation-sys-0.8.4.crate) = 17725 -SHA256 (rust/crates/crc32fast-1.3.2.crate) = b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d -SIZE (rust/crates/crc32fast-1.3.2.crate) = 38661 +SHA256 (rust/crates/colored-2.1.0.crate) = cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8 +SIZE (rust/crates/colored-2.1.0.crate) = 23348 +SHA256 (rust/crates/console-0.15.8.crate) = 0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb +SIZE (rust/crates/console-0.15.8.crate) = 36364 +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/crc32fast-1.4.0.crate) = b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa +SIZE (rust/crates/crc32fast-1.4.0.crate) = 38665 SHA256 (rust/crates/dirs-next-2.0.0.crate) = b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1 SIZE (rust/crates/dirs-next-2.0.0.crate) = 11689 SHA256 (rust/crates/dirs-sys-next-0.1.2.crate) = 4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d @@ -31,213 +29,195 @@ SHA256 (rust/crates/encode_unicode-0.3.6.crate) = a357d28ed41a50f9c765dbfe56cbc0 SIZE (rust/crates/encode_unicode-0.3.6.crate) = 45741 SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 -SHA256 (rust/crates/errno-0.3.2.crate) = 6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f -SIZE (rust/crates/errno-0.3.2.crate) = 10424 -SHA256 (rust/crates/errno-dragonfly-0.1.2.crate) = aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf -SIZE (rust/crates/errno-dragonfly-0.1.2.crate) = 1810 -SHA256 (rust/crates/fastrand-2.0.0.crate) = 6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764 -SIZE (rust/crates/fastrand-2.0.0.crate) = 14402 -SHA256 (rust/crates/flate2-1.0.26.crate) = 3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743 -SIZE (rust/crates/flate2-1.0.26.crate) = 70832 -SHA256 (rust/crates/form_urlencoded-1.2.0.crate) = a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652 -SIZE (rust/crates/form_urlencoded-1.2.0.crate) = 8923 +SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 +SIZE (rust/crates/errno-0.3.8.crate) = 10645 +SHA256 (rust/crates/fastrand-2.0.2.crate) = 658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984 +SIZE (rust/crates/fastrand-2.0.2.crate) = 14674 +SHA256 (rust/crates/flate2-1.0.28.crate) = 46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e +SIZE (rust/crates/flate2-1.0.28.crate) = 73690 +SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 +SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 SHA256 (rust/crates/getopts-0.2.21.crate) = 14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5 SIZE (rust/crates/getopts-0.2.21.crate) = 18457 -SHA256 (rust/crates/getrandom-0.2.10.crate) = be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427 -SIZE (rust/crates/getrandom-0.2.10.crate) = 34955 -SHA256 (rust/crates/hashbrown-0.14.0.crate) = 2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a -SIZE (rust/crates/hashbrown-0.14.0.crate) = 116103 -SHA256 (rust/crates/hermit-abi-0.3.2.crate) = 443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b -SIZE (rust/crates/hermit-abi-0.3.2.crate) = 13783 -SHA256 (rust/crates/idna-0.4.0.crate) = 7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c -SIZE (rust/crates/idna-0.4.0.crate) = 271429 -SHA256 (rust/crates/indexmap-2.0.0.crate) = d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d -SIZE (rust/crates/indexmap-2.0.0.crate) = 64038 -SHA256 (rust/crates/indicatif-0.17.6.crate) = 0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730 -SIZE (rust/crates/indicatif-0.17.6.crate) = 62817 +SHA256 (rust/crates/getrandom-0.2.12.crate) = 190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5 +SIZE (rust/crates/getrandom-0.2.12.crate) = 36163 +SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604 +SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425 +SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6 +SIZE (rust/crates/idna-0.5.0.crate) = 271940 +SHA256 (rust/crates/indexmap-2.2.6.crate) = 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 +SIZE (rust/crates/indexmap-2.2.6.crate) = 82420 +SHA256 (rust/crates/indicatif-0.17.8.crate) = 763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3 +SIZE (rust/crates/indicatif-0.17.8.crate) = 64869 SHA256 (rust/crates/instant-0.1.12.crate) = 7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c SIZE (rust/crates/instant-0.1.12.crate) = 6128 -SHA256 (rust/crates/is-terminal-0.4.9.crate) = cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b -SIZE (rust/crates/is-terminal-0.4.9.crate) = 8109 -SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38 -SIZE (rust/crates/itoa-1.0.9.crate) = 10492 -SHA256 (rust/crates/js-sys-0.3.64.crate) = c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a -SIZE (rust/crates/js-sys-0.3.64.crate) = 80313 +SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b +SIZE (rust/crates/itoa-1.0.11.crate) = 10563 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.147.crate) = b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3 -SIZE (rust/crates/libc-0.2.147.crate) = 686772 -SHA256 (rust/crates/linux-raw-sys-0.4.5.crate) = 57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503 -SIZE (rust/crates/linux-raw-sys-0.4.5.crate) = 1274380 -SHA256 (rust/crates/log-0.4.20.crate) = b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f -SIZE (rust/crates/log-0.4.20.crate) = 38307 -SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d -SIZE (rust/crates/memchr-2.5.0.crate) = 65812 +SHA256 (rust/crates/libc-0.2.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd +SIZE (rust/crates/libc-0.2.153.crate) = 740614 +SHA256 (rust/crates/libredox-0.0.1.crate) = 85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8 +SIZE (rust/crates/libredox-0.0.1.crate) = 4212 +SHA256 (rust/crates/linux-raw-sys-0.4.13.crate) = 01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c +SIZE (rust/crates/linux-raw-sys-0.4.13.crate) = 1493855 +SHA256 (rust/crates/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c +SIZE (rust/crates/log-0.4.21.crate) = 43442 +SHA256 (rust/crates/memchr-2.7.1.crate) = 523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149 +SIZE (rust/crates/memchr-2.7.1.crate) = 96307 SHA256 (rust/crates/mime-0.3.17.crate) = 6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a SIZE (rust/crates/mime-0.3.17.crate) = 15712 SHA256 (rust/crates/mime_guess-2.0.4.crate) = 4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef SIZE (rust/crates/mime_guess-2.0.4.crate) = 26399 -SHA256 (rust/crates/miniz_oxide-0.7.1.crate) = e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7 -SIZE (rust/crates/miniz_oxide-0.7.1.crate) = 55194 +SHA256 (rust/crates/miniz_oxide-0.7.2.crate) = 9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7 +SIZE (rust/crates/miniz_oxide-0.7.2.crate) = 55731 SHA256 (rust/crates/multipart-0.18.0.crate) = 00dec633863867f29cb39df64a397cdf4a6354708ddd7759f70c7fb51c5f9182 SIZE (rust/crates/multipart-0.18.0.crate) = 62797 SHA256 (rust/crates/number_prefix-0.4.0.crate) = 830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3 SIZE (rust/crates/number_prefix-0.4.0.crate) = 6922 -SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d -SIZE (rust/crates/once_cell-1.18.0.crate) = 32969 +SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 +SIZE (rust/crates/once_cell-1.19.0.crate) = 33046 SHA256 (rust/crates/openssl-probe-0.1.5.crate) = ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf SIZE (rust/crates/openssl-probe-0.1.5.crate) = 7227 -SHA256 (rust/crates/percent-encoding-2.3.0.crate) = 9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94 -SIZE (rust/crates/percent-encoding-2.3.0.crate) = 10196 -SHA256 (rust/crates/portable-atomic-1.4.2.crate) = f32154ba0af3a075eefa1eda8bb414ee928f62303a54ea85b8d6638ff1a6ee9e -SIZE (rust/crates/portable-atomic-1.4.2.crate) = 124375 +SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e +SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 +SHA256 (rust/crates/portable-atomic-1.6.0.crate) = 7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0 +SIZE (rust/crates/portable-atomic-1.6.0.crate) = 140689 SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 -SHA256 (rust/crates/proc-macro2-1.0.66.crate) = 18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9 -SIZE (rust/crates/proc-macro2-1.0.66.crate) = 43575 -SHA256 (rust/crates/quote-1.0.32.crate) = 50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965 -SIZE (rust/crates/quote-1.0.32.crate) = 28037 +SHA256 (rust/crates/proc-macro2-1.0.79.crate) = e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e +SIZE (rust/crates/proc-macro2-1.0.79.crate) = 47200 +SHA256 (rust/crates/quote-1.0.35.crate) = 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef +SIZE (rust/crates/quote-1.0.35.crate) = 28136 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.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a -SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012 -SHA256 (rust/crates/redox_syscall-0.3.5.crate) = 567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29 -SIZE (rust/crates/redox_syscall-0.3.5.crate) = 23404 -SHA256 (rust/crates/redox_users-0.4.3.crate) = b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b -SIZE (rust/crates/redox_users-0.4.3.crate) = 15353 -SHA256 (rust/crates/ring-0.16.20.crate) = 3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc -SIZE (rust/crates/ring-0.16.20.crate) = 5082615 -SHA256 (rust/crates/rustix-0.38.8.crate) = 19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f -SIZE (rust/crates/rustix-0.38.8.crate) = 333258 -SHA256 (rust/crates/rustls-0.21.6.crate) = 1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb -SIZE (rust/crates/rustls-0.21.6.crate) = 282907 -SHA256 (rust/crates/rustls-native-certs-0.6.3.crate) = a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00 -SIZE (rust/crates/rustls-native-certs-0.6.3.crate) = 24438 -SHA256 (rust/crates/rustls-pemfile-1.0.3.crate) = 2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2 -SIZE (rust/crates/rustls-pemfile-1.0.3.crate) = 20432 -SHA256 (rust/crates/rustls-webpki-0.100.1.crate) = d6207cd5ed3d8dca7816f8f3725513a34609c0c765bf652b8c3cb4cfd87db46b -SIZE (rust/crates/rustls-webpki-0.100.1.crate) = 70719 -SHA256 (rust/crates/rustls-webpki-0.101.3.crate) = 261e9e0888cba427c3316e6322805653c9425240b6fd96cee7cb671ab70ab8d0 -SIZE (rust/crates/rustls-webpki-0.101.3.crate) = 163517 -SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741 -SIZE (rust/crates/ryu-1.0.15.crate) = 46906 -SHA256 (rust/crates/schannel-0.1.22.crate) = 0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88 -SIZE (rust/crates/schannel-0.1.22.crate) = 41642 -SHA256 (rust/crates/sct-0.7.0.crate) = d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4 -SIZE (rust/crates/sct-0.7.0.crate) = 27502 +SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa +SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858 +SHA256 (rust/crates/redox_users-0.4.4.crate) = a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4 +SIZE (rust/crates/redox_users-0.4.4.crate) = 15438 +SHA256 (rust/crates/ring-0.17.8.crate) = c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d +SIZE (rust/crates/ring-0.17.8.crate) = 4188554 +SHA256 (rust/crates/rustix-0.38.32.crate) = 65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89 +SIZE (rust/crates/rustix-0.38.32.crate) = 376999 +SHA256 (rust/crates/rustls-0.22.3.crate) = 99008d7ad0bbbea527ec27bddbc0e432c5b87d8175178cee68d2eec9c4a1813c +SIZE (rust/crates/rustls-0.22.3.crate) = 332877 +SHA256 (rust/crates/rustls-native-certs-0.7.0.crate) = 8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792 +SIZE (rust/crates/rustls-native-certs-0.7.0.crate) = 25071 +SHA256 (rust/crates/rustls-pemfile-2.1.1.crate) = f48172685e6ff52a556baa527774f61fcaa884f59daf3375c62a3f1cd2549dab +SIZE (rust/crates/rustls-pemfile-2.1.1.crate) = 26161 +SHA256 (rust/crates/rustls-pki-types-1.4.1.crate) = ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247 +SIZE (rust/crates/rustls-pki-types-1.4.1.crate) = 29437 +SHA256 (rust/crates/rustls-webpki-0.102.2.crate) = faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610 +SIZE (rust/crates/rustls-webpki-0.102.2.crate) = 196881 +SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1 +SIZE (rust/crates/ryu-1.0.17.crate) = 47537 +SHA256 (rust/crates/schannel-0.1.23.crate) = fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534 +SIZE (rust/crates/schannel-0.1.23.crate) = 41667 SHA256 (rust/crates/security-framework-2.9.2.crate) = 05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de SIZE (rust/crates/security-framework-2.9.2.crate) = 79295 SHA256 (rust/crates/security-framework-sys-2.9.1.crate) = e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a SIZE (rust/crates/security-framework-sys-2.9.1.crate) = 18284 -SHA256 (rust/crates/serde-1.0.188.crate) = cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e -SIZE (rust/crates/serde-1.0.188.crate) = 76230 -SHA256 (rust/crates/serde_derive-1.0.188.crate) = 4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2 -SIZE (rust/crates/serde_derive-1.0.188.crate) = 55563 -SHA256 (rust/crates/serde_json-1.0.104.crate) = 076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c -SIZE (rust/crates/serde_json-1.0.104.crate) = 146130 -SHA256 (rust/crates/serde_spanned-0.6.3.crate) = 96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186 -SIZE (rust/crates/serde_spanned-0.6.3.crate) = 7737 -SHA256 (rust/crates/spin-0.5.2.crate) = 6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d -SIZE (rust/crates/spin-0.5.2.crate) = 12004 -SHA256 (rust/crates/syn-2.0.28.crate) = 04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567 -SIZE (rust/crates/syn-2.0.28.crate) = 241635 -SHA256 (rust/crates/tempfile-3.7.1.crate) = dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651 -SIZE (rust/crates/tempfile-3.7.1.crate) = 31817 -SHA256 (rust/crates/thiserror-1.0.48.crate) = 9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7 -SIZE (rust/crates/thiserror-1.0.48.crate) = 18862 -SHA256 (rust/crates/thiserror-impl-1.0.48.crate) = 49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35 -SIZE (rust/crates/thiserror-impl-1.0.48.crate) = 15096 +SHA256 (rust/crates/serde-1.0.197.crate) = 3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2 +SIZE (rust/crates/serde-1.0.197.crate) = 77087 +SHA256 (rust/crates/serde_derive-1.0.197.crate) = 7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b +SIZE (rust/crates/serde_derive-1.0.197.crate) = 55771 +SHA256 (rust/crates/serde_json-1.0.115.crate) = 12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd +SIZE (rust/crates/serde_json-1.0.115.crate) = 147100 +SHA256 (rust/crates/serde_spanned-0.6.5.crate) = eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1 +SIZE (rust/crates/serde_spanned-0.6.5.crate) = 8349 +SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 +SIZE (rust/crates/spin-0.9.8.crate) = 38958 +SHA256 (rust/crates/subtle-2.5.0.crate) = 81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc +SIZE (rust/crates/subtle-2.5.0.crate) = 13909 +SHA256 (rust/crates/syn-2.0.55.crate) = 002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0 +SIZE (rust/crates/syn-2.0.55.crate) = 254901 +SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1 +SIZE (rust/crates/tempfile-3.10.1.crate) = 33653 +SHA256 (rust/crates/thiserror-1.0.58.crate) = 03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297 +SIZE (rust/crates/thiserror-1.0.58.crate) = 21025 +SHA256 (rust/crates/thiserror-impl-1.0.58.crate) = c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7 +SIZE (rust/crates/thiserror-impl-1.0.58.crate) = 15645 SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50 SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991 SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 -SHA256 (rust/crates/toml-0.7.6.crate) = c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542 -SIZE (rust/crates/toml-0.7.6.crate) = 49220 -SHA256 (rust/crates/toml_datetime-0.6.3.crate) = 7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b -SIZE (rust/crates/toml_datetime-0.6.3.crate) = 10770 -SHA256 (rust/crates/toml_edit-0.19.14.crate) = f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a -SIZE (rust/crates/toml_edit-0.19.14.crate) = 94875 -SHA256 (rust/crates/unicase-2.6.0.crate) = 50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6 -SIZE (rust/crates/unicase-2.6.0.crate) = 23478 -SHA256 (rust/crates/unicode-bidi-0.3.13.crate) = 92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460 -SIZE (rust/crates/unicode-bidi-0.3.13.crate) = 44477 -SHA256 (rust/crates/unicode-ident-1.0.11.crate) = 301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c -SIZE (rust/crates/unicode-ident-1.0.11.crate) = 42067 -SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921 -SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604 -SHA256 (rust/crates/unicode-width-0.1.10.crate) = c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b -SIZE (rust/crates/unicode-width-0.1.10.crate) = 18968 -SHA256 (rust/crates/untrusted-0.7.1.crate) = a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a -SIZE (rust/crates/untrusted-0.7.1.crate) = 7924 -SHA256 (rust/crates/ureq-2.7.1.crate) = 0b11c96ac7ee530603dcdf68ed1557050f374ce55a5a07193ebf8cbc9f8927e9 -SIZE (rust/crates/ureq-2.7.1.crate) = 111068 -SHA256 (rust/crates/url-2.4.1.crate) = 143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5 -SIZE (rust/crates/url-2.4.1.crate) = 78228 +SHA256 (rust/crates/toml-0.8.12.crate) = e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3 +SIZE (rust/crates/toml-0.8.12.crate) = 51145 +SHA256 (rust/crates/toml_datetime-0.6.5.crate) = 3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1 +SIZE (rust/crates/toml_datetime-0.6.5.crate) = 10910 +SHA256 (rust/crates/toml_edit-0.22.9.crate) = 8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4 +SIZE (rust/crates/toml_edit-0.22.9.crate) = 104173 +SHA256 (rust/crates/unicase-2.7.0.crate) = f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89 +SIZE (rust/crates/unicase-2.7.0.crate) = 23783 +SHA256 (rust/crates/unicode-bidi-0.3.15.crate) = 08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75 +SIZE (rust/crates/unicode-bidi-0.3.15.crate) = 56811 +SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b +SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 +SHA256 (rust/crates/unicode-normalization-0.1.23.crate) = a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5 +SIZE (rust/crates/unicode-normalization-0.1.23.crate) = 122649 +SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85 +SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187 +SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 +SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 +SHA256 (rust/crates/ureq-2.9.6.crate) = 11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35 +SIZE (rust/crates/ureq-2.9.6.crate) = 113677 +SHA256 (rust/crates/url-2.5.0.crate) = 31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633 +SIZE (rust/crates/url-2.5.0.crate) = 78605 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.87.crate) = 7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342 -SIZE (rust/crates/wasm-bindgen-0.2.87.crate) = 175052 -SHA256 (rust/crates/wasm-bindgen-backend-0.2.87.crate) = 5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd -SIZE (rust/crates/wasm-bindgen-backend-0.2.87.crate) = 26821 -SHA256 (rust/crates/wasm-bindgen-macro-0.2.87.crate) = dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d -SIZE (rust/crates/wasm-bindgen-macro-0.2.87.crate) = 13897 -SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.87.crate) = 54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b -SIZE (rust/crates/wasm-bindgen-macro-support-0.2.87.crate) = 20006 -SHA256 (rust/crates/wasm-bindgen-shared-0.2.87.crate) = ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1 -SIZE (rust/crates/wasm-bindgen-shared-0.2.87.crate) = 7248 -SHA256 (rust/crates/web-sys-0.3.64.crate) = 9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b -SIZE (rust/crates/web-sys-0.3.64.crate) = 725584 -SHA256 (rust/crates/webpki-roots-0.23.1.crate) = b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338 -SIZE (rust/crates/webpki-roots-0.23.1.crate) = 245626 +SHA256 (rust/crates/webpki-roots-0.26.1.crate) = b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009 +SIZE (rust/crates/webpki-roots-0.26.1.crate) = 249748 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.45.0.crate) = 75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0 -SIZE (rust/crates/windows-sys-0.45.0.crate) = 2568659 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.42.2.crate) = 8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071 -SIZE (rust/crates/windows-targets-0.42.2.crate) = 5492 -SHA256 (rust/crates/windows-targets-0.48.1.crate) = 05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f -SIZE (rust/crates/windows-targets-0.48.1.crate) = 6902 -SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8 -SIZE (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 364071 -SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc -SIZE (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 366543 -SHA256 (rust/crates/windows_aarch64_msvc-0.42.2.crate) = e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43 -SIZE (rust/crates/windows_aarch64_msvc-0.42.2.crate) = 666981 -SHA256 (rust/crates/windows_aarch64_msvc-0.48.0.crate) = b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3 -SIZE (rust/crates/windows_aarch64_msvc-0.48.0.crate) = 671479 -SHA256 (rust/crates/windows_i686_gnu-0.42.2.crate) = c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f -SIZE (rust/crates/windows_i686_gnu-0.42.2.crate) = 736236 -SHA256 (rust/crates/windows_i686_gnu-0.48.0.crate) = 622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241 -SIZE (rust/crates/windows_i686_gnu-0.48.0.crate) = 741490 -SHA256 (rust/crates/windows_i686_msvc-0.42.2.crate) = 44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060 -SIZE (rust/crates/windows_i686_msvc-0.42.2.crate) = 724951 -SHA256 (rust/crates/windows_i686_msvc-0.48.0.crate) = 4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00 -SIZE (rust/crates/windows_i686_msvc-0.48.0.crate) = 730056 -SHA256 (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36 -SIZE (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 699373 -SHA256 (rust/crates/windows_x86_64_gnu-0.48.0.crate) = ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1 -SIZE (rust/crates/windows_x86_64_gnu-0.48.0.crate) = 703595 -SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3 -SIZE (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 364068 -SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953 -SIZE (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 366536 -SHA256 (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0 -SIZE (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 666936 -SHA256 (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a -SIZE (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 671422 -SHA256 (rust/crates/winnow-0.5.10.crate) = 5504cc7644f4b593cbc05c4a55bf9bd4e94b867c3c0bd440934174d50482427d -SIZE (rust/crates/winnow-0.5.10.crate) = 144514 -SHA256 (orhun-rustypaste-cli-v0.8.0_GH0.tar.gz) = 51f72cedfa315848cbfad2da98cf87febc5450a087996f5665311f71a83e6cbb -SIZE (orhun-rustypaste-cli-v0.8.0_GH0.tar.gz) = 377038 +SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d +SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877 +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.4.crate) = 7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b +SIZE (rust/crates/windows-targets-0.52.4.crate) = 6310 +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.4.crate) = bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.4.crate) = 433373 +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.4.crate) = da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675 +SIZE (rust/crates/windows_aarch64_msvc-0.52.4.crate) = 828055 +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.4.crate) = b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3 +SIZE (rust/crates/windows_i686_gnu-0.52.4.crate) = 875736 +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.4.crate) = 1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02 +SIZE (rust/crates/windows_i686_msvc-0.52.4.crate) = 895530 +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.4.crate) = 5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03 +SIZE (rust/crates/windows_x86_64_gnu-0.52.4.crate) = 831627 +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.4.crate) = 77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177 +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.4.crate) = 433358 +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.4.crate) = 32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8 +SIZE (rust/crates/windows_x86_64_msvc-0.52.4.crate) = 828019 +SHA256 (rust/crates/winnow-0.6.5.crate) = dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8 +SIZE (rust/crates/winnow-0.6.5.crate) = 159316 +SHA256 (rust/crates/zeroize-1.7.0.crate) = 525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d +SIZE (rust/crates/zeroize-1.7.0.crate) = 19039 +SHA256 (orhun-rustypaste-cli-v0.9.0_GH0.tar.gz) = b28fdc59d271ced56f0d0db7093838621a9130fa6322f8e236af319f7acd1bdc +SIZE (orhun-rustypaste-cli-v0.9.0_GH0.tar.gz) = 377405 diff --git a/www/rustypaste/Makefile b/www/rustypaste/Makefile index 96a7cdbe6f8f..5e0f2c25b22a 100644 --- a/www/rustypaste/Makefile +++ b/www/rustypaste/Makefile @@ -1,7 +1,6 @@ PORTNAME= rustypaste DISTVERSIONPREFIX= v -DISTVERSION= 0.14.4 -PORTREVISION= 2 +DISTVERSION= 0.15.0 CATEGORIES= www MAINTAINER= DtxdF@disroot.org diff --git a/www/rustypaste/Makefile.crates b/www/rustypaste/Makefile.crates index e74fecef67a2..2a68ef106099 100644 --- a/www/rustypaste/Makefile.crates +++ b/www/rustypaste/Makefile.crates @@ -1,365 +1,346 @@ -CARGO_CRATES= actix-codec-0.5.1 \ - actix-files-0.6.2 \ - actix-http-3.4.0 \ - actix-macros-0.2.4 \ - actix-multipart-0.6.1 \ - actix-multipart-derive-0.6.1 \ - actix-router-0.5.1 \ - actix-rt-2.9.0 \ - actix-server-2.3.0 \ - actix-service-2.0.2 \ - actix-tls-3.1.1 \ - actix-utils-3.0.1 \ - actix-web-4.4.0 \ - actix-web-codegen-4.2.2 \ - actix-web-grants-4.0.3 \ - addr2line-0.21.0 \ - adler-1.0.2 \ - ahash-0.7.7 \ - ahash-0.8.6 \ - aho-corasick-1.1.2 \ - alloc-no-stdlib-2.0.4 \ - alloc-stdlib-0.2.2 \ - android-tzdata-0.1.1 \ - android_system_properties-0.1.5 \ - anyhow-1.0.75 \ - arrayvec-0.7.4 \ - askama_escape-0.10.3 \ - async-stream-0.3.5 \ - async-stream-impl-0.3.5 \ - async-trait-0.1.74 \ - autocfg-1.1.0 \ - awc-3.2.0 \ - axum-0.6.20 \ - axum-core-0.3.4 \ - backtrace-0.3.69 \ - base64-0.21.5 \ - bitflags-1.3.2 \ - bitflags-2.4.1 \ - bitvec-1.0.1 \ - block-buffer-0.10.4 \ - borsh-1.2.1 \ - borsh-derive-1.2.1 \ - brotli-3.4.0 \ - brotli-decompressor-2.5.1 \ - bumpalo-3.14.0 \ - byte-unit-5.1.2 \ - bytecheck-0.6.11 \ - bytecheck_derive-0.6.11 \ - bytes-1.5.0 \ - bytestring-1.3.1 \ - cc-1.0.83 \ - cfg-if-1.0.0 \ - cfg_aliases-0.1.1 \ - chrono-0.4.31 \ - colored-2.0.4 \ - comfy-table-6.2.0 \ - config-0.13.4 \ - convert_case-0.4.0 \ - cookie-0.16.2 \ - core-foundation-sys-0.8.6 \ - cpufeatures-0.2.11 \ - crc32fast-1.3.2 \ - crossbeam-channel-0.5.8 \ - crossbeam-utils-0.8.16 \ - crossterm-0.26.1 \ - crossterm-0.27.0 \ - crossterm_winapi-0.9.1 \ - crypto-common-0.1.6 \ - darling-0.20.3 \ - darling_core-0.20.3 \ - darling_macro-0.20.3 \ - deranged-0.3.10 \ - derive_more-0.99.17 \ - digest-0.10.7 \ - doc-comment-0.3.3 \ - dotenvy-0.15.7 \ - either-1.9.0 \ - encoding_rs-0.8.33 \ - equivalent-1.0.1 \ - errno-0.3.8 \ - fastrand-2.0.1 \ - file-id-0.1.0 \ - filetime-0.2.22 \ - finl_unicode-1.2.0 \ - flate2-1.0.28 \ - fnv-1.0.7 \ - foreign-types-0.3.2 \ - foreign-types-shared-0.1.1 \ - form_urlencoded-1.2.1 \ - fsevent-sys-4.1.0 \ - funty-2.0.0 \ - futures-channel-0.3.29 \ - futures-core-0.3.29 \ - futures-executor-0.3.29 \ - futures-macro-0.3.29 \ - futures-sink-0.3.29 \ - futures-task-0.3.29 \ - futures-util-0.3.29 \ - generic-array-0.14.7 \ - getrandom-0.2.11 \ - gimli-0.28.1 \ - glob-0.3.1 \ - h2-0.3.22 \ - hashbrown-0.12.3 \ - hashbrown-0.14.3 \ - headers-0.3.9 \ - headers-core-0.2.0 \ - heck-0.4.1 \ - hermit-abi-0.3.3 \ - hotwatch-0.5.0 \ - http-0.2.11 \ - http-body-0.4.5 \ - http-range-0.1.5 \ - http-range-header-0.3.1 \ - httparse-1.8.0 \ - httpdate-1.0.3 \ - humantime-2.1.0 \ - humantime-serde-1.1.1 \ - hyper-0.14.27 \ - hyper-timeout-0.4.1 \ - iana-time-zone-0.1.58 \ - iana-time-zone-haiku-0.1.2 \ - ident_case-1.0.1 \ - idna-0.5.0 \ - impl-more-0.1.6 \ - indexmap-1.9.3 \ - indexmap-2.1.0 \ - infer-0.15.0 \ - inotify-0.9.6 \ - inotify-sys-0.1.5 \ - is-terminal-0.4.9 \ - itertools-0.10.5 \ - itertools-0.11.0 \ - itoa-1.0.9 \ - jobserver-0.1.27 \ - js-sys-0.3.66 \ - jsonwebtoken-9.2.0 \ - kqueue-1.0.8 \ - kqueue-sys-1.0.4 \ - language-tags-0.3.2 \ - lazy-regex-3.1.0 \ - lazy-regex-proc_macros-3.1.0 \ - lazy_static-1.4.0 \ - libc-0.2.150 \ - linked-hash-map-0.5.6 \ - linux-raw-sys-0.4.12 \ - local-channel-0.1.5 \ - local-waker-0.1.4 \ - lock_api-0.4.11 \ - log-0.4.20 \ - matchers-0.1.0 \ - matchit-0.7.3 \ - memchr-2.6.4 \ - mime-0.3.17 \ - mime_guess-2.0.4 \ - minimal-lexical-0.2.1 \ - miniz_oxide-0.7.1 \ - mio-0.8.9 \ - nom-7.1.3 \ - notify-6.1.1 \ - notify-debouncer-full-0.1.0 \ - nu-ansi-term-0.46.0 \ - num-bigint-0.4.4 \ - num-integer-0.1.45 \ - num-traits-0.2.17 \ - num_cpus-1.16.0 \ - object-0.32.1 \ - once_cell-1.18.0 \ - openssl-0.10.61 \ - openssl-macros-0.1.1 \ - openssl-sys-0.9.97 \ - opentelemetry-0.21.0 \ - opentelemetry-appender-tracing-0.2.0 \ - opentelemetry-http-0.10.0 \ - opentelemetry-otlp-0.14.0 \ - opentelemetry-proto-0.4.0 \ - opentelemetry-semantic-conventions-0.13.0 \ - opentelemetry_sdk-0.21.1 \ - ordered-float-4.2.0 \ - overload-0.1.1 \ - parking_lot-0.12.1 \ - parking_lot_core-0.9.9 \ - parse-size-1.0.0 \ - paste-1.0.14 \ - pathdiff-0.2.1 \ - pem-3.0.2 \ - percent-encoding-2.3.1 \ - petname-1.1.3 \ - pin-project-1.1.3 \ - pin-project-internal-1.1.3 \ - pin-project-lite-0.2.13 \ - pin-utils-0.1.0 \ - pkg-config-0.3.27 \ - powerfmt-0.2.0 \ - ppv-lite86-0.2.17 \ - proc-macro-crate-2.0.1 \ - proc-macro-error-1.0.4 \ - proc-macro-error-attr-1.0.4 \ - proc-macro2-1.0.70 \ - prost-0.11.9 \ - prost-0.12.3 \ - prost-derive-0.11.9 \ - prost-derive-0.12.3 \ - prost-types-0.12.3 \ - protect-endpoints-proc-macro-0.1.1 \ - ptr_meta-0.1.4 \ - ptr_meta_derive-0.1.4 \ - quote-1.0.33 \ - radium-0.7.0 \ - rand-0.8.5 \ - rand_chacha-0.3.1 \ - rand_core-0.6.4 \ - redox_syscall-0.3.5 \ - redox_syscall-0.4.1 \ - regex-1.10.2 \ - regex-automata-0.1.10 \ - regex-automata-0.4.3 \ - regex-syntax-0.6.29 \ - regex-syntax-0.8.2 \ - rend-0.4.1 \ - ring-0.17.7 \ - rkyv-0.7.43 \ - rkyv_derive-0.7.43 \ - rust_decimal-1.33.1 \ - rustc-demangle-0.1.23 \ - rustc-hash-1.1.0 \ - rustc_version-0.4.0 \ - rustix-0.38.26 \ - rustls-0.21.9 \ - rustls-webpki-0.101.7 \ - rustrict-0.7.12 \ - rustversion-1.0.14 \ - ryu-1.0.15 \ - same-file-1.0.6 \ - scopeguard-1.2.0 \ - sct-0.7.1 \ - seahash-4.1.0 \ - semver-1.0.20 \ - serde-1.0.193 \ - serde_derive-1.0.193 \ - serde_json-1.0.108 \ - serde_path_to_error-0.1.14 \ - serde_plain-1.0.2 \ - serde_regex-1.1.0 \ - serde_urlencoded-0.7.1 \ - sha1-0.10.6 \ - sharded-slab-0.1.7 \ - shuttle-actix-web-0.35.1 \ - shuttle-codegen-0.35.1 \ - shuttle-common-0.35.1 \ - shuttle-proto-0.35.1 \ - shuttle-runtime-0.35.1 \ - shuttle-service-0.35.1 \ - signal-hook-0.3.17 \ - signal-hook-mio-0.2.3 \ - signal-hook-registry-1.4.1 \ - simdutf8-0.1.4 \ - simple_asn1-0.6.2 \ - slab-0.4.9 \ - smallvec-1.11.2 \ - socket2-0.4.10 \ - socket2-0.5.5 \ - spin-0.9.8 \ - strfmt-0.2.4 \ - strsim-0.10.0 \ - strum-0.24.1 \ - strum-0.25.0 \ - strum_macros-0.24.3 \ - strum_macros-0.25.3 \ - syn-1.0.109 \ - syn-2.0.39 \ - syn_derive-0.1.8 \ - sync_wrapper-0.1.2 \ - tap-1.0.1 \ - tempfile-3.8.1 \ - thiserror-1.0.50 \ - thiserror-impl-1.0.50 \ - thread_local-1.1.7 \ - time-0.3.30 \ - time-core-0.1.2 \ - time-macros-0.2.15 \ - tinyvec-1.6.0 \ - tinyvec_macros-0.1.1 \ - tokio-1.35.1 \ - tokio-io-timeout-1.2.0 \ - tokio-macros-2.2.0 \ - tokio-openssl-0.6.3 \ - tokio-rustls-0.24.1 \ - tokio-stream-0.1.14 \ - tokio-util-0.7.10 \ - toml-0.5.11 \ - toml_datetime-0.6.3 \ - toml_edit-0.20.2 \ - tonic-0.9.2 \ - tonic-0.10.2 \ - tower-0.4.13 \ - tower-http-0.4.4 \ - tower-layer-0.3.2 \ - tower-service-0.3.2 \ - tracing-0.1.40 \ - tracing-attributes-0.1.27 \ - tracing-core-0.1.32 \ - tracing-log-0.2.0 \ - tracing-opentelemetry-0.22.0 \ - tracing-serde-0.1.3 \ - tracing-subscriber-0.3.18 \ - try-lock-0.2.4 \ - ttl_cache-0.5.1 \ - typenum-1.17.0 \ - unicase-2.7.0 \ - unicode-bidi-0.3.13 \ - unicode-ident-1.0.12 \ - unicode-normalization-0.1.22 \ - unicode-width-0.1.11 \ - untrusted-0.9.0 \ - url-2.5.0 \ - urlencoding-2.1.3 \ - utf8-width-0.1.7 \ - uts2ts-0.4.1 \ - uuid-1.6.1 \ - valuable-0.1.0 \ - vcpkg-0.2.15 \ - version_check-0.9.4 \ - walkdir-2.4.0 \ - want-0.3.1 \ - wasi-0.11.0+wasi-snapshot-preview1 \ - wasm-bindgen-0.2.89 \ - wasm-bindgen-backend-0.2.89 \ - wasm-bindgen-macro-0.2.89 \ - wasm-bindgen-macro-support-0.2.89 \ - wasm-bindgen-shared-0.2.89 \ - web-time-0.2.3 \ - webpki-roots-0.25.3 \ - winapi-0.3.9 \ - winapi-i686-pc-windows-gnu-0.4.0 \ - winapi-util-0.1.6 \ - winapi-x86_64-pc-windows-gnu-0.4.0 \ - windows-core-0.51.1 \ - windows-sys-0.48.0 \ - windows-sys-0.52.0 \ - windows-targets-0.48.5 \ - windows-targets-0.52.0 \ - windows_aarch64_gnullvm-0.48.5 \ - windows_aarch64_gnullvm-0.52.0 \ - windows_aarch64_msvc-0.48.5 \ - windows_aarch64_msvc-0.52.0 \ - windows_i686_gnu-0.48.5 \ - windows_i686_gnu-0.52.0 \ - windows_i686_msvc-0.48.5 \ - windows_i686_msvc-0.52.0 \ - windows_x86_64_gnu-0.48.5 \ - windows_x86_64_gnu-0.52.0 \ - windows_x86_64_gnullvm-0.48.5 \ - windows_x86_64_gnullvm-0.52.0 \ - windows_x86_64_msvc-0.48.5 \ - windows_x86_64_msvc-0.52.0 \ - winnow-0.5.28 \ - wyz-0.5.1 \ - yaml-rust-0.4.5 \ - zerocopy-0.7.28 \ - zerocopy-derive-0.7.28 \ - zeroize-1.7.0 \ - zstd-0.12.4 \ - zstd-safe-6.0.6 \ - zstd-sys-2.0.9+zstd.1.5.5 +CARGO_CRATES= actix-codec-0.5.2 \ + actix-files-0.6.5 \ + actix-http-3.6.0 \ + actix-macros-0.2.4 \ + actix-multipart-0.6.1 \ + actix-multipart-derive-0.6.1 \ + actix-router-0.5.2 \ + actix-rt-2.9.0 \ + actix-server-2.3.0 \ + actix-service-2.0.2 \ + actix-tls-3.3.0 \ + actix-utils-3.0.1 \ + actix-web-4.5.1 \ + actix-web-codegen-4.2.2 \ + actix-web-grants-4.0.3 \ + addr2line-0.21.0 \ + adler-1.0.2 \ + ahash-0.7.8 \ + ahash-0.8.11 \ + aho-corasick-1.1.3 \ + alloc-no-stdlib-2.0.4 \ + alloc-stdlib-0.2.2 \ + android-tzdata-0.1.1 \ + android_system_properties-0.1.5 \ + anyhow-1.0.81 \ + arrayvec-0.7.4 \ + async-stream-0.3.5 \ + async-stream-impl-0.3.5 \ + async-trait-0.1.79 \ + autocfg-1.2.0 \ + awc-3.4.0 \ + axum-0.6.20 \ + axum-core-0.3.4 \ + backtrace-0.3.71 \ + base64-0.21.7 \ + bitflags-1.3.2 \ + bitflags-2.5.0 \ + bitvec-1.0.1 \ + block-buffer-0.10.4 \ + borsh-1.4.0 \ + borsh-derive-1.4.0 \ + brotli-3.5.0 \ + brotli-decompressor-2.5.1 \ + bumpalo-3.15.4 \ + byte-unit-5.1.4 \ + bytecheck-0.6.12 \ + bytecheck_derive-0.6.12 \ + bytes-1.6.0 \ + bytestring-1.3.1 \ + cc-1.0.90 \ + cfg-if-1.0.0 \ + cfg_aliases-0.1.1 \ + chrono-0.4.37 \ + colored-2.1.0 \ + comfy-table-6.2.0 \ + config-0.14.0 \ + convert_case-0.4.0 \ + cookie-0.16.2 \ + core-foundation-sys-0.8.6 \ + cpufeatures-0.2.12 \ + crc32fast-1.4.0 \ + crossbeam-channel-0.5.12 \ + crossbeam-utils-0.8.19 \ + crossterm-0.26.1 \ + crossterm-0.27.0 \ + crossterm_winapi-0.9.1 \ + crypto-common-0.1.6 \ + darling-0.20.8 \ + darling_core-0.20.8 \ + darling_macro-0.20.8 \ + deranged-0.3.11 \ + derive_more-0.99.17 \ + digest-0.10.7 \ + dotenvy-0.15.7 \ + either-1.10.0 \ + encoding_rs-0.8.33 \ + equivalent-1.0.1 \ + errno-0.3.8 \ + fastrand-2.0.2 \ + file-id-0.1.0 \ + filetime-0.2.23 \ + flate2-1.0.28 \ + fnv-1.0.7 \ + foreign-types-0.3.2 \ + foreign-types-shared-0.1.1 \ + form_urlencoded-1.2.1 \ + fsevent-sys-4.1.0 \ + funty-2.0.0 \ + futures-channel-0.3.30 \ + futures-core-0.3.30 \ + futures-executor-0.3.30 \ + futures-macro-0.3.30 \ + futures-sink-0.3.30 \ + futures-task-0.3.30 \ + futures-util-0.3.30 \ + generic-array-0.14.7 \ + getrandom-0.2.12 \ + gimli-0.28.1 \ + glob-0.3.1 \ + h2-0.3.25 \ + hashbrown-0.12.3 \ + hashbrown-0.14.3 \ + heck-0.4.1 \ + hermit-abi-0.3.9 \ + hotwatch-0.5.0 \ + http-0.2.12 \ + http-1.1.0 \ + http-body-0.4.6 \ + http-range-0.1.5 \ + httparse-1.8.0 \ + httpdate-1.0.3 \ + humantime-2.1.0 \ + humantime-serde-1.1.1 \ + hyper-0.14.28 \ + hyper-timeout-0.4.1 \ + iana-time-zone-0.1.60 \ + iana-time-zone-haiku-0.1.2 \ + ident_case-1.0.1 \ + idna-0.5.0 \ + impl-more-0.1.6 \ + indexmap-1.9.3 \ + indexmap-2.2.6 \ + infer-0.15.0 \ + inotify-0.9.6 \ + inotify-sys-0.1.5 \ + itertools-0.10.5 \ + itertools-0.11.0 \ + itoa-1.0.11 \ + jobserver-0.1.28 \ + js-sys-0.3.69 \ + kqueue-1.0.8 \ + kqueue-sys-1.0.4 \ + language-tags-0.3.2 \ + lazy-regex-3.1.0 \ + lazy-regex-proc_macros-3.1.0 \ + lazy_static-1.4.0 \ + libc-0.2.153 \ + linked-hash-map-0.5.6 \ + linux-raw-sys-0.4.13 \ + local-channel-0.1.5 \ + local-waker-0.1.4 \ + lock_api-0.4.11 \ + log-0.4.21 \ + matchers-0.1.0 \ + matchit-0.7.3 \ + memchr-2.7.1 \ + mime-0.3.17 \ + mime_guess-2.0.4 \ + minimal-lexical-0.2.1 \ + miniz_oxide-0.7.2 \ + mio-0.8.11 \ + nom-7.1.3 \ + notify-6.1.1 \ + notify-debouncer-full-0.1.0 \ + nu-ansi-term-0.46.0 \ + num-conv-0.1.0 \ + num-traits-0.2.18 \ + num_cpus-1.16.0 \ + object-0.32.2 \ + once_cell-1.19.0 \ + openssl-0.10.64 \ + openssl-macros-0.1.1 \ + openssl-sys-0.9.101 \ + opentelemetry-0.21.0 \ + opentelemetry-http-0.10.0 \ + opentelemetry_sdk-0.21.2 \ + ordered-float-4.2.0 \ + overload-0.1.1 \ + parking_lot-0.12.1 \ + parking_lot_core-0.9.9 \ + parse-size-1.0.0 \ + paste-1.0.14 \ + path-clean-1.0.1 \ + pathdiff-0.2.1 \ + percent-encoding-2.3.1 \ + petname-1.1.3 \ + pin-project-1.1.5 \ + pin-project-internal-1.1.5 \ + pin-project-lite-0.2.13 \ + pin-utils-0.1.0 \ + pkg-config-0.3.30 \ + powerfmt-0.2.0 \ + ppv-lite86-0.2.17 \ + proc-macro-crate-3.1.0 \ + proc-macro-error-1.0.4 \ + proc-macro-error-attr-1.0.4 \ + proc-macro2-1.0.79 \ + prost-0.12.3 \ + prost-derive-0.12.3 \ + prost-types-0.12.3 \ + protect-endpoints-proc-macro-0.1.1 \ + ptr_meta-0.1.4 \ + ptr_meta_derive-0.1.4 \ + quote-1.0.35 \ + radium-0.7.0 \ + rand-0.8.5 \ + rand_chacha-0.3.1 \ + rand_core-0.6.4 \ + redox_syscall-0.4.1 \ + regex-1.10.4 \ + regex-automata-0.1.10 \ + regex-automata-0.4.6 \ + regex-syntax-0.6.29 \ + regex-syntax-0.8.3 \ + rend-0.4.2 \ + ring-0.17.8 \ + rkyv-0.7.44 \ + rkyv_derive-0.7.44 \ + rust_decimal-1.35.0 \ + rustc-demangle-0.1.23 \ + rustc_version-0.4.0 \ + rustix-0.38.32 \ + rustls-0.21.10 \ + rustls-webpki-0.101.7 \ + rustversion-1.0.14 \ + ryu-1.0.17 \ + same-file-1.0.6 \ + scopeguard-1.2.0 \ + sct-0.7.1 \ + seahash-4.1.0 \ + semver-1.0.22 \ + serde-1.0.197 \ + serde_derive-1.0.197 \ + serde_json-1.0.115 \ + serde_plain-1.0.2 \ + serde_regex-1.1.0 \ + serde_spanned-0.6.5 \ + serde_urlencoded-0.7.1 \ + sha1-0.10.6 \ + sharded-slab-0.1.7 \ + shuttle-actix-web-0.42.0 \ + shuttle-codegen-0.42.0 \ + shuttle-common-0.42.0 \ + shuttle-proto-0.42.0 \ + shuttle-runtime-0.42.0 \ + shuttle-service-0.42.0 \ + signal-hook-0.3.17 \ + signal-hook-mio-0.2.3 \ + signal-hook-registry-1.4.1 \ + simdutf8-0.1.4 \ + slab-0.4.9 \ + smallvec-1.13.2 \ + socket2-0.5.6 \ + spin-0.9.8 \ + strfmt-0.2.4 \ + strsim-0.10.0 \ + strum-0.24.1 \ + strum-0.26.2 \ + strum_macros-0.24.3 \ + strum_macros-0.26.2 \ + syn-1.0.109 \ + syn-2.0.55 \ + syn_derive-0.1.8 \ + sync_wrapper-0.1.2 \ + tap-1.0.1 \ + tempfile-3.10.1 \ + thiserror-1.0.58 \ + thiserror-impl-1.0.58 \ + thread_local-1.1.8 \ + time-0.3.34 \ + time-core-0.1.2 \ + time-macros-0.2.17 \ + tinyvec-1.6.0 \ + tinyvec_macros-0.1.1 \ + tokio-1.36.0 \ + tokio-io-timeout-1.2.0 \ + tokio-macros-2.2.0 \ + tokio-openssl-0.6.4 \ + tokio-rustls-0.24.1 \ + tokio-stream-0.1.15 \ + tokio-util-0.7.10 \ + toml-0.8.12 \ + toml_datetime-0.6.5 \ + toml_edit-0.21.1 \ + toml_edit-0.22.9 \ + tonic-0.10.2 \ + tower-0.4.13 \ + tower-layer-0.3.2 \ + tower-service-0.3.2 \ + tracing-0.1.40 \ + tracing-attributes-0.1.27 \ + tracing-core-0.1.32 \ + tracing-log-0.2.0 \ + tracing-opentelemetry-0.22.0 \ + tracing-serde-0.1.3 \ + tracing-subscriber-0.3.18 \ + try-lock-0.2.5 \ + typenum-1.17.0 \ + unicase-2.7.0 \ + unicode-bidi-0.3.15 \ + unicode-ident-1.0.12 \ + unicode-normalization-0.1.23 \ + unicode-width-0.1.11 \ + untrusted-0.9.0 \ + url-2.5.0 \ + urlencoding-2.1.3 \ + utf8-width-0.1.7 \ + uts2ts-0.4.1 \ + uuid-1.8.0 \ + v_htmlescape-0.15.8 \ + valuable-0.1.0 \ + vcpkg-0.2.15 \ + version_check-0.9.4 \ + walkdir-2.5.0 \ + want-0.3.1 \ + wasi-0.11.0+wasi-snapshot-preview1 \ + wasm-bindgen-0.2.92 \ + wasm-bindgen-backend-0.2.92 \ + wasm-bindgen-macro-0.2.92 \ + wasm-bindgen-macro-support-0.2.92 \ + wasm-bindgen-shared-0.2.92 \ + web-time-0.2.4 \ + webpki-roots-0.25.4 \ + winapi-0.3.9 \ + winapi-i686-pc-windows-gnu-0.4.0 \ + winapi-util-0.1.6 \ + winapi-x86_64-pc-windows-gnu-0.4.0 \ + windows-core-0.52.0 \ + windows-sys-0.48.0 \ + windows-sys-0.52.0 \ + windows-targets-0.48.5 \ + windows-targets-0.52.4 \ + windows_aarch64_gnullvm-0.48.5 \ + windows_aarch64_gnullvm-0.52.4 \ + windows_aarch64_msvc-0.48.5 \ + windows_aarch64_msvc-0.52.4 \ + windows_i686_gnu-0.48.5 \ + windows_i686_gnu-0.52.4 \ + windows_i686_msvc-0.48.5 \ + windows_i686_msvc-0.52.4 \ + windows_x86_64_gnu-0.48.5 \ + windows_x86_64_gnu-0.52.4 \ + windows_x86_64_gnullvm-0.48.5 \ + windows_x86_64_gnullvm-0.52.4 \ + windows_x86_64_msvc-0.48.5 \ + windows_x86_64_msvc-0.52.4 \ + winnow-0.5.40 \ + winnow-0.6.5 \ + wyz-0.5.1 \ + yaml-rust-0.4.5 \ + zerocopy-0.7.32 \ + zerocopy-derive-0.7.32 \ + zeroize-1.7.0 \ + zstd-0.13.1 \ + zstd-safe-7.1.0 \ + zstd-sys-2.0.10+zstd.1.5.6 diff --git a/www/rustypaste/distinfo b/www/rustypaste/distinfo index 940b00f8093a..7c5aa78054f7 100644 --- a/www/rustypaste/distinfo +++ b/www/rustypaste/distinfo @@ -1,30 +1,30 @@ -TIMESTAMP = 1705261854 -SHA256 (rust/crates/actix-codec-0.5.1.crate) = 617a8268e3537fe1d8c9ead925fca49ef6400927ee7bc26750e90ecee14ce4b8 -SIZE (rust/crates/actix-codec-0.5.1.crate) = 14337 -SHA256 (rust/crates/actix-files-0.6.2.crate) = d832782fac6ca7369a70c9ee9a20554623c5e51c76e190ad151780ebea1cf689 -SIZE (rust/crates/actix-files-0.6.2.crate) = 30031 -SHA256 (rust/crates/actix-http-3.4.0.crate) = a92ef85799cba03f76e4f7c10f533e66d87c9a7e7055f3391f09000ad8351bc9 -SIZE (rust/crates/actix-http-3.4.0.crate) = 151156 +TIMESTAMP = 1715227957 +SHA256 (rust/crates/actix-codec-0.5.2.crate) = 5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a +SIZE (rust/crates/actix-codec-0.5.2.crate) = 14085 +SHA256 (rust/crates/actix-files-0.6.5.crate) = bf0bdd6ff79de7c9a021f5d9ea79ce23e108d8bfc9b49b5b4a2cf6fad5a35212 +SIZE (rust/crates/actix-files-0.6.5.crate) = 39268 +SHA256 (rust/crates/actix-http-3.6.0.crate) = d223b13fd481fc0d1f83bb12659ae774d9e3601814c68a0bc539731698cca743 +SIZE (rust/crates/actix-http-3.6.0.crate) = 152432 SHA256 (rust/crates/actix-macros-0.2.4.crate) = e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb SIZE (rust/crates/actix-macros-0.2.4.crate) = 8380 SHA256 (rust/crates/actix-multipart-0.6.1.crate) = 3b960e2aea75f49c8f069108063d12a48d329fc8b60b786dfc7552a9d5918d2d SIZE (rust/crates/actix-multipart-0.6.1.crate) = 24535 SHA256 (rust/crates/actix-multipart-derive-0.6.1.crate) = 0a0a77f836d869f700e5b47ac7c3c8b9c8bc82e4aec861954c6198abee3ebd4d SIZE (rust/crates/actix-multipart-derive-0.6.1.crate) = 9348 -SHA256 (rust/crates/actix-router-0.5.1.crate) = d66ff4d247d2b160861fa2866457e85706833527840e4133f8f49aa423a38799 -SIZE (rust/crates/actix-router-0.5.1.crate) = 31905 +SHA256 (rust/crates/actix-router-0.5.2.crate) = d22475596539443685426b6bdadb926ad0ecaefdfc5fb05e5e3441f15463c511 +SIZE (rust/crates/actix-router-0.5.2.crate) = 32386 SHA256 (rust/crates/actix-rt-2.9.0.crate) = 28f32d40287d3f402ae0028a9d54bef51af15c8769492826a69d28f81893151d SIZE (rust/crates/actix-rt-2.9.0.crate) = 22096 SHA256 (rust/crates/actix-server-2.3.0.crate) = 3eb13e7eef0423ea6eab0e59f6c72e7cb46d33691ad56a726b3cd07ddec2c2d4 SIZE (rust/crates/actix-server-2.3.0.crate) = 38806 SHA256 (rust/crates/actix-service-2.0.2.crate) = 3b894941f818cfdc7ccc4b9e60fa7e53b5042a2e8567270f9147d5591893373a SIZE (rust/crates/actix-service-2.0.2.crate) = 25293 -SHA256 (rust/crates/actix-tls-3.1.1.crate) = 72616e7fbec0aa99c6f3164677fa48ff5a60036d0799c98cab894a44f3e0efc3 -SIZE (rust/crates/actix-tls-3.1.1.crate) = 35389 +SHA256 (rust/crates/actix-tls-3.3.0.crate) = d4cce60a2f2b477bc72e5cde0af1812a6e82d8fd85b5570a5dcf2a5bf2c5be5f +SIZE (rust/crates/actix-tls-3.3.0.crate) = 38498 SHA256 (rust/crates/actix-utils-3.0.1.crate) = 88a1dcdff1466e3c2488e1cb5c36a71822750ad43839937f85d2f4d9f8b705d8 SIZE (rust/crates/actix-utils-3.0.1.crate) = 10096 -SHA256 (rust/crates/actix-web-4.4.0.crate) = 0e4a5b5e29603ca8c94a77c65cf874718ceb60292c5a5c3e5f4ace041af462b9 -SIZE (rust/crates/actix-web-4.4.0.crate) = 228719 +SHA256 (rust/crates/actix-web-4.5.1.crate) = 43a6556ddebb638c2358714d853257ed226ece6023ef9364f23f0c70737ea984 +SIZE (rust/crates/actix-web-4.5.1.crate) = 231024 SHA256 (rust/crates/actix-web-codegen-4.2.2.crate) = eb1f50ebbb30eca122b188319a4398b3f7bb4a8cdf50ecfb73bfc6a3c3ce54f5 SIZE (rust/crates/actix-web-codegen-4.2.2.crate) = 17159 SHA256 (rust/crates/actix-web-grants-4.0.3.crate) = cf5941a5bdf4cc022ca7721dae70d9818d7b13f93040b0543cb901410c8d3172 @@ -33,12 +33,12 @@ SHA256 (rust/crates/addr2line-0.21.0.crate) = 8a30b2e23b9e17a9f90641c7ab1549cd9b SIZE (rust/crates/addr2line-0.21.0.crate) = 40807 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe SIZE (rust/crates/adler-1.0.2.crate) = 12778 -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/aho-corasick-1.1.2.crate) = b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0 -SIZE (rust/crates/aho-corasick-1.1.2.crate) = 183136 +SHA256 (rust/crates/ahash-0.7.8.crate) = 891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9 +SIZE (rust/crates/ahash-0.7.8.crate) = 38550 +SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011 +SIZE (rust/crates/ahash-0.8.11.crate) = 43607 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 SHA256 (rust/crates/alloc-no-stdlib-2.0.4.crate) = cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3 SIZE (rust/crates/alloc-no-stdlib-2.0.4.crate) = 10105 SHA256 (rust/crates/alloc-stdlib-0.2.2.crate) = 94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece @@ -47,86 +47,84 @@ SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 -SHA256 (rust/crates/anyhow-1.0.75.crate) = a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6 -SIZE (rust/crates/anyhow-1.0.75.crate) = 43901 +SHA256 (rust/crates/anyhow-1.0.81.crate) = 0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247 +SIZE (rust/crates/anyhow-1.0.81.crate) = 45142 SHA256 (rust/crates/arrayvec-0.7.4.crate) = 96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711 SIZE (rust/crates/arrayvec-0.7.4.crate) = 29856 -SHA256 (rust/crates/askama_escape-0.10.3.crate) = 619743e34b5ba4e9703bba34deac3427c72507c7159f5fd030aea8cac0cfe341 -SIZE (rust/crates/askama_escape-0.10.3.crate) = 8875 SHA256 (rust/crates/async-stream-0.3.5.crate) = cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51 SIZE (rust/crates/async-stream-0.3.5.crate) = 11916 SHA256 (rust/crates/async-stream-impl-0.3.5.crate) = 16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193 SIZE (rust/crates/async-stream-impl-0.3.5.crate) = 4173 -SHA256 (rust/crates/async-trait-0.1.74.crate) = a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9 -SIZE (rust/crates/async-trait-0.1.74.crate) = 28997 -SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa -SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 -SHA256 (rust/crates/awc-3.2.0.crate) = 7fa3c705a9c7917ac0f41c0757a0a747b43bbc29b0b364b081bd7c5fc67fb223 -SIZE (rust/crates/awc-3.2.0.crate) = 72680 +SHA256 (rust/crates/async-trait-0.1.79.crate) = a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681 +SIZE (rust/crates/async-trait-0.1.79.crate) = 29558 +SHA256 (rust/crates/autocfg-1.2.0.crate) = f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80 +SIZE (rust/crates/autocfg-1.2.0.crate) = 14808 +SHA256 (rust/crates/awc-3.4.0.crate) = 68c09cc97310b926f01621faee652f3d1b0962545a3cec6c9ac07def9ea36c2c +SIZE (rust/crates/awc-3.4.0.crate) = 75016 SHA256 (rust/crates/axum-0.6.20.crate) = 3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf SIZE (rust/crates/axum-0.6.20.crate) = 146227 SHA256 (rust/crates/axum-core-0.3.4.crate) = 759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c SIZE (rust/crates/axum-core-0.3.4.crate) = 21088 -SHA256 (rust/crates/backtrace-0.3.69.crate) = 2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837 -SIZE (rust/crates/backtrace-0.3.69.crate) = 77299 -SHA256 (rust/crates/base64-0.21.5.crate) = 35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9 -SIZE (rust/crates/base64-0.21.5.crate) = 77134 +SHA256 (rust/crates/backtrace-0.3.71.crate) = 26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d +SIZE (rust/crates/backtrace-0.3.71.crate) = 86553 +SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 +SIZE (rust/crates/base64-0.21.7.crate) = 82576 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/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1 +SIZE (rust/crates/bitflags-2.5.0.crate) = 43821 SHA256 (rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c SIZE (rust/crates/bitvec-1.0.1.crate) = 224375 SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 -SHA256 (rust/crates/borsh-1.2.1.crate) = 9897ef0f1bd2362169de6d7e436ea2237dc1085d7d1e4db75f4be34d86f309d1 -SIZE (rust/crates/borsh-1.2.1.crate) = 58221 -SHA256 (rust/crates/borsh-derive-1.2.1.crate) = 478b41ff04256c5c8330f3dfdaaae2a5cc976a8e75088bafa4625b0d0208de8c -SIZE (rust/crates/borsh-derive-1.2.1.crate) = 29097 -SHA256 (rust/crates/brotli-3.4.0.crate) = 516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f -SIZE (rust/crates/brotli-3.4.0.crate) = 1362057 +SHA256 (rust/crates/borsh-1.4.0.crate) = 0901fc8eb0aca4c83be0106d6f2db17d86a08dfc2c25f0e84464bf381158add6 +SIZE (rust/crates/borsh-1.4.0.crate) = 60239 +SHA256 (rust/crates/borsh-derive-1.4.0.crate) = 51670c3aa053938b0ee3bd67c3817e471e626151131b934038e83c5bf8de48f5 +SIZE (rust/crates/borsh-derive-1.4.0.crate) = 29187 +SHA256 (rust/crates/brotli-3.5.0.crate) = d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391 +SIZE (rust/crates/brotli-3.5.0.crate) = 1390231 SHA256 (rust/crates/brotli-decompressor-2.5.1.crate) = 4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f SIZE (rust/crates/brotli-decompressor-2.5.1.crate) = 193087 -SHA256 (rust/crates/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec -SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400 -SHA256 (rust/crates/byte-unit-5.1.2.crate) = d405b41420a161b4e1dd5a52e3349f41b4dae9a39be02aff1d67fe53256430ac -SIZE (rust/crates/byte-unit-5.1.2.crate) = 26342 -SHA256 (rust/crates/bytecheck-0.6.11.crate) = 8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627 -SIZE (rust/crates/bytecheck-0.6.11.crate) = 8300 -SHA256 (rust/crates/bytecheck_derive-0.6.11.crate) = a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61 -SIZE (rust/crates/bytecheck_derive-0.6.11.crate) = 5476 -SHA256 (rust/crates/bytes-1.5.0.crate) = a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223 -SIZE (rust/crates/bytes-1.5.0.crate) = 58909 +SHA256 (rust/crates/bumpalo-3.15.4.crate) = 7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa +SIZE (rust/crates/bumpalo-3.15.4.crate) = 85028 +SHA256 (rust/crates/byte-unit-5.1.4.crate) = 33ac19bdf0b2665407c39d82dbc937e951e7e2001609f0fb32edd0af45a2d63e +SIZE (rust/crates/byte-unit-5.1.4.crate) = 26354 +SHA256 (rust/crates/bytecheck-0.6.12.crate) = 23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2 +SIZE (rust/crates/bytecheck-0.6.12.crate) = 8202 +SHA256 (rust/crates/bytecheck_derive-0.6.12.crate) = 3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659 +SIZE (rust/crates/bytecheck_derive-0.6.12.crate) = 5415 +SHA256 (rust/crates/bytes-1.6.0.crate) = 514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9 +SIZE (rust/crates/bytes-1.6.0.crate) = 60605 SHA256 (rust/crates/bytestring-1.3.1.crate) = 74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72 SIZE (rust/crates/bytestring-1.3.1.crate) = 9142 -SHA256 (rust/crates/cc-1.0.83.crate) = f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0 -SIZE (rust/crates/cc-1.0.83.crate) = 68343 +SHA256 (rust/crates/cc-1.0.90.crate) = 8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5 +SIZE (rust/crates/cc-1.0.90.crate) = 73954 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 SHA256 (rust/crates/cfg_aliases-0.1.1.crate) = fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e SIZE (rust/crates/cfg_aliases-0.1.1.crate) = 6009 -SHA256 (rust/crates/chrono-0.4.31.crate) = 7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38 -SIZE (rust/crates/chrono-0.4.31.crate) = 214513 -SHA256 (rust/crates/colored-2.0.4.crate) = 2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6 -SIZE (rust/crates/colored-2.0.4.crate) = 23654 +SHA256 (rust/crates/chrono-0.4.37.crate) = 8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e +SIZE (rust/crates/chrono-0.4.37.crate) = 234441 +SHA256 (rust/crates/colored-2.1.0.crate) = cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8 +SIZE (rust/crates/colored-2.1.0.crate) = 23348 SHA256 (rust/crates/comfy-table-6.2.0.crate) = 7e959d788268e3bf9d35ace83e81b124190378e4c91c9067524675e33394b8ba SIZE (rust/crates/comfy-table-6.2.0.crate) = 67803 -SHA256 (rust/crates/config-0.13.4.crate) = 23738e11972c7643e4ec947840fc463b6a571afcd3e735bdfce7d03c7a784aca -SIZE (rust/crates/config-0.13.4.crate) = 80328 +SHA256 (rust/crates/config-0.14.0.crate) = 7328b20597b53c2454f0b1919720c25c7339051c02b72b7e05409e00b14132be +SIZE (rust/crates/config-0.14.0.crate) = 79442 SHA256 (rust/crates/convert_case-0.4.0.crate) = 6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e SIZE (rust/crates/convert_case-0.4.0.crate) = 8098 SHA256 (rust/crates/cookie-0.16.2.crate) = e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb SIZE (rust/crates/cookie-0.16.2.crate) = 34632 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/cpufeatures-0.2.11.crate) = ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0 -SIZE (rust/crates/cpufeatures-0.2.11.crate) = 12727 -SHA256 (rust/crates/crc32fast-1.3.2.crate) = b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d -SIZE (rust/crates/crc32fast-1.3.2.crate) = 38661 -SHA256 (rust/crates/crossbeam-channel-0.5.8.crate) = a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200 -SIZE (rust/crates/crossbeam-channel-0.5.8.crate) = 90455 -SHA256 (rust/crates/crossbeam-utils-0.8.16.crate) = 5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294 -SIZE (rust/crates/crossbeam-utils-0.8.16.crate) = 42508 +SHA256 (rust/crates/cpufeatures-0.2.12.crate) = 53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504 +SIZE (rust/crates/cpufeatures-0.2.12.crate) = 12837 +SHA256 (rust/crates/crc32fast-1.4.0.crate) = b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa +SIZE (rust/crates/crc32fast-1.4.0.crate) = 38665 +SHA256 (rust/crates/crossbeam-channel-0.5.12.crate) = ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95 +SIZE (rust/crates/crossbeam-channel-0.5.12.crate) = 90515 +SHA256 (rust/crates/crossbeam-utils-0.8.19.crate) = 248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345 +SIZE (rust/crates/crossbeam-utils-0.8.19.crate) = 42328 SHA256 (rust/crates/crossterm-0.26.1.crate) = a84cda67535339806297f1b331d6dd6320470d2a0fe65381e79ee9e156dd3d13 SIZE (rust/crates/crossterm-0.26.1.crate) = 122317 SHA256 (rust/crates/crossterm-0.27.0.crate) = f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df @@ -135,38 +133,34 @@ SHA256 (rust/crates/crossterm_winapi-0.9.1.crate) = acdd7c62a3665c7f6830a51635d9 SIZE (rust/crates/crossterm_winapi-0.9.1.crate) = 16027 SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 -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/deranged-0.3.10.crate) = 8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc -SIZE (rust/crates/deranged-0.3.10.crate) = 17803 +SHA256 (rust/crates/darling-0.20.8.crate) = 54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391 +SIZE (rust/crates/darling-0.20.8.crate) = 31234 +SHA256 (rust/crates/darling_core-0.20.8.crate) = 9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f +SIZE (rust/crates/darling_core-0.20.8.crate) = 64442 +SHA256 (rust/crates/darling_macro-0.20.8.crate) = a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f +SIZE (rust/crates/darling_macro-0.20.8.crate) = 1856 +SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4 +SIZE (rust/crates/deranged-0.3.11.crate) = 18043 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.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 SIZE (rust/crates/digest-0.10.7.crate) = 19557 -SHA256 (rust/crates/doc-comment-0.3.3.crate) = fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10 -SIZE (rust/crates/doc-comment-0.3.3.crate) = 4123 SHA256 (rust/crates/dotenvy-0.15.7.crate) = 1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b SIZE (rust/crates/dotenvy-0.15.7.crate) = 20293 -SHA256 (rust/crates/either-1.9.0.crate) = a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07 -SIZE (rust/crates/either-1.9.0.crate) = 16660 +SHA256 (rust/crates/either-1.10.0.crate) = 11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a +SIZE (rust/crates/either-1.10.0.crate) = 18334 SHA256 (rust/crates/encoding_rs-0.8.33.crate) = 7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1 SIZE (rust/crates/encoding_rs-0.8.33.crate) = 1370071 SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 SIZE (rust/crates/errno-0.3.8.crate) = 10645 -SHA256 (rust/crates/fastrand-2.0.1.crate) = 25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5 -SIZE (rust/crates/fastrand-2.0.1.crate) = 14664 +SHA256 (rust/crates/fastrand-2.0.2.crate) = 658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984 +SIZE (rust/crates/fastrand-2.0.2.crate) = 14674 SHA256 (rust/crates/file-id-0.1.0.crate) = e13be71e6ca82e91bc0cb862bebaac0b2d1924a5a1d970c822b2f98b63fda8c3 SIZE (rust/crates/file-id-0.1.0.crate) = 2094 -SHA256 (rust/crates/filetime-0.2.22.crate) = d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0 -SIZE (rust/crates/filetime-0.2.22.crate) = 15029 -SHA256 (rust/crates/finl_unicode-1.2.0.crate) = 8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6 -SIZE (rust/crates/finl_unicode-1.2.0.crate) = 687752 +SHA256 (rust/crates/filetime-0.2.23.crate) = 1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd +SIZE (rust/crates/filetime-0.2.23.crate) = 14942 SHA256 (rust/crates/flate2-1.0.28.crate) = 46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e SIZE (rust/crates/flate2-1.0.28.crate) = 73690 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 @@ -181,52 +175,48 @@ SHA256 (rust/crates/fsevent-sys-4.1.0.crate) = 76ee7a02da4d231650c7cea31349b889b SIZE (rust/crates/fsevent-sys-4.1.0.crate) = 4620 SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c SIZE (rust/crates/funty-2.0.0.crate) = 13160 -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-executor-0.3.29.crate) = 0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc -SIZE (rust/crates/futures-executor-0.3.29.crate) = 17745 -SHA256 (rust/crates/futures-macro-0.3.29.crate) = 53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb -SIZE (rust/crates/futures-macro-0.3.29.crate) = 11278 -SHA256 (rust/crates/futures-sink-0.3.29.crate) = e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817 -SIZE (rust/crates/futures-sink-0.3.29.crate) = 7853 -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/futures-channel-0.3.30.crate) = eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78 +SIZE (rust/crates/futures-channel-0.3.30.crate) = 31736 +SHA256 (rust/crates/futures-core-0.3.30.crate) = dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d +SIZE (rust/crates/futures-core-0.3.30.crate) = 14071 +SHA256 (rust/crates/futures-executor-0.3.30.crate) = a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d +SIZE (rust/crates/futures-executor-0.3.30.crate) = 17744 +SHA256 (rust/crates/futures-macro-0.3.30.crate) = 87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac +SIZE (rust/crates/futures-macro-0.3.30.crate) = 11278 +SHA256 (rust/crates/futures-sink-0.3.30.crate) = 9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5 +SIZE (rust/crates/futures-sink-0.3.30.crate) = 7852 +SHA256 (rust/crates/futures-task-0.3.30.crate) = 38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004 +SIZE (rust/crates/futures-task-0.3.30.crate) = 11126 +SHA256 (rust/crates/futures-util-0.3.30.crate) = 3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48 +SIZE (rust/crates/futures-util-0.3.30.crate) = 159977 SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 -SHA256 (rust/crates/getrandom-0.2.11.crate) = fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f -SIZE (rust/crates/getrandom-0.2.11.crate) = 35391 +SHA256 (rust/crates/getrandom-0.2.12.crate) = 190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5 +SIZE (rust/crates/getrandom-0.2.12.crate) = 36163 SHA256 (rust/crates/gimli-0.28.1.crate) = 4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253 SIZE (rust/crates/gimli-0.28.1.crate) = 270497 SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b SIZE (rust/crates/glob-0.3.1.crate) = 18880 -SHA256 (rust/crates/h2-0.3.22.crate) = 4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178 -SIZE (rust/crates/h2-0.3.22.crate) = 166413 +SHA256 (rust/crates/h2-0.3.25.crate) = 4fbd2820c5e49886948654ab546d0688ff24530286bdcf8fca3cefb16d4618eb +SIZE (rust/crates/h2-0.3.25.crate) = 167894 SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888 SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968 SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604 SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425 -SHA256 (rust/crates/headers-0.3.9.crate) = 06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270 -SIZE (rust/crates/headers-0.3.9.crate) = 68290 -SHA256 (rust/crates/headers-core-0.2.0.crate) = e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429 -SIZE (rust/crates/headers-core-0.2.0.crate) = 2380 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.3.crate) = d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7 -SIZE (rust/crates/hermit-abi-0.3.3.crate) = 14253 +SHA256 (rust/crates/hermit-abi-0.3.9.crate) = d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024 +SIZE (rust/crates/hermit-abi-0.3.9.crate) = 16165 SHA256 (rust/crates/hotwatch-0.5.0.crate) = 9140219159163c92eb58c37955a0cc57c5814c3c44521955aae376064c668756 SIZE (rust/crates/hotwatch-0.5.0.crate) = 16507 -SHA256 (rust/crates/http-0.2.11.crate) = 8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb -SIZE (rust/crates/http-0.2.11.crate) = 100478 -SHA256 (rust/crates/http-body-0.4.5.crate) = d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1 -SIZE (rust/crates/http-body-0.4.5.crate) = 9242 +SHA256 (rust/crates/http-0.2.12.crate) = 601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1 +SIZE (rust/crates/http-0.2.12.crate) = 101964 +SHA256 (rust/crates/http-1.1.0.crate) = 21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258 +SIZE (rust/crates/http-1.1.0.crate) = 103144 +SHA256 (rust/crates/http-body-0.4.6.crate) = 7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2 +SIZE (rust/crates/http-body-0.4.6.crate) = 10773 SHA256 (rust/crates/http-range-0.1.5.crate) = 21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573 SIZE (rust/crates/http-range-0.1.5.crate) = 4871 -SHA256 (rust/crates/http-range-header-0.3.1.crate) = add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f -SIZE (rust/crates/http-range-header-0.3.1.crate) = 7712 SHA256 (rust/crates/httparse-1.8.0.crate) = d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904 SIZE (rust/crates/httparse-1.8.0.crate) = 29954 SHA256 (rust/crates/httpdate-1.0.3.crate) = df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9 @@ -235,12 +225,12 @@ SHA256 (rust/crates/humantime-2.1.0.crate) = 9a3a5bfb195931eeb336b2a7b4d761daec8 SIZE (rust/crates/humantime-2.1.0.crate) = 16749 SHA256 (rust/crates/humantime-serde-1.1.1.crate) = 57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c SIZE (rust/crates/humantime-serde-1.1.1.crate) = 7886 -SHA256 (rust/crates/hyper-0.14.27.crate) = ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468 -SIZE (rust/crates/hyper-0.14.27.crate) = 195700 +SHA256 (rust/crates/hyper-0.14.28.crate) = bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80 +SIZE (rust/crates/hyper-0.14.28.crate) = 197204 SHA256 (rust/crates/hyper-timeout-0.4.1.crate) = bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1 SIZE (rust/crates/hyper-timeout-0.4.1.crate) = 13805 -SHA256 (rust/crates/iana-time-zone-0.1.58.crate) = 8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20 -SIZE (rust/crates/iana-time-zone-0.1.58.crate) = 27020 +SHA256 (rust/crates/iana-time-zone-0.1.60.crate) = e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141 +SIZE (rust/crates/iana-time-zone-0.1.60.crate) = 27074 SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185 SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 @@ -251,28 +241,24 @@ SHA256 (rust/crates/impl-more-0.1.6.crate) = 206ca75c9c03ba3d4ace2460e57b189f39f SIZE (rust/crates/impl-more-0.1.6.crate) = 13967 SHA256 (rust/crates/indexmap-1.9.3.crate) = bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99 SIZE (rust/crates/indexmap-1.9.3.crate) = 54653 -SHA256 (rust/crates/indexmap-2.1.0.crate) = d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f -SIZE (rust/crates/indexmap-2.1.0.crate) = 68224 +SHA256 (rust/crates/indexmap-2.2.6.crate) = 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 +SIZE (rust/crates/indexmap-2.2.6.crate) = 82420 SHA256 (rust/crates/infer-0.15.0.crate) = cb33622da908807a06f9513c19b3c1ad50fab3e4137d82a78107d502075aa199 SIZE (rust/crates/infer-0.15.0.crate) = 18734 SHA256 (rust/crates/inotify-0.9.6.crate) = f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff SIZE (rust/crates/inotify-0.9.6.crate) = 22971 SHA256 (rust/crates/inotify-sys-0.1.5.crate) = e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb SIZE (rust/crates/inotify-sys-0.1.5.crate) = 6965 -SHA256 (rust/crates/is-terminal-0.4.9.crate) = cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b -SIZE (rust/crates/is-terminal-0.4.9.crate) = 8109 SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473 SIZE (rust/crates/itertools-0.10.5.crate) = 115354 SHA256 (rust/crates/itertools-0.11.0.crate) = b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57 SIZE (rust/crates/itertools-0.11.0.crate) = 125074 -SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38 -SIZE (rust/crates/itoa-1.0.9.crate) = 10492 -SHA256 (rust/crates/jobserver-0.1.27.crate) = 8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d -SIZE (rust/crates/jobserver-0.1.27.crate) = 24774 -SHA256 (rust/crates/js-sys-0.3.66.crate) = cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca -SIZE (rust/crates/js-sys-0.3.66.crate) = 80765 -SHA256 (rust/crates/jsonwebtoken-9.2.0.crate) = 5c7ea04a7c5c055c175f189b6dc6ba036fd62306b58c66c9f6389036c503a3f4 -SIZE (rust/crates/jsonwebtoken-9.2.0.crate) = 48775 +SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b +SIZE (rust/crates/itoa-1.0.11.crate) = 10563 +SHA256 (rust/crates/jobserver-0.1.28.crate) = ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6 +SIZE (rust/crates/jobserver-0.1.28.crate) = 25543 +SHA256 (rust/crates/js-sys-0.3.69.crate) = 29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d +SIZE (rust/crates/js-sys-0.3.69.crate) = 81083 SHA256 (rust/crates/kqueue-1.0.8.crate) = 7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c SIZE (rust/crates/kqueue-1.0.8.crate) = 12642 SHA256 (rust/crates/kqueue-sys-1.0.4.crate) = ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b @@ -285,36 +271,36 @@ SHA256 (rust/crates/lazy-regex-proc_macros-3.1.0.crate) = 44bcd58e6c97a7fcbaffcd SIZE (rust/crates/lazy-regex-proc_macros-3.1.0.crate) = 4490 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.150.crate) = 89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c -SIZE (rust/crates/libc-0.2.150.crate) = 719359 +SHA256 (rust/crates/libc-0.2.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd +SIZE (rust/crates/libc-0.2.153.crate) = 740614 SHA256 (rust/crates/linked-hash-map-0.5.6.crate) = 0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f SIZE (rust/crates/linked-hash-map-0.5.6.crate) = 15049 -SHA256 (rust/crates/linux-raw-sys-0.4.12.crate) = c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456 -SIZE (rust/crates/linux-raw-sys-0.4.12.crate) = 1465800 +SHA256 (rust/crates/linux-raw-sys-0.4.13.crate) = 01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c +SIZE (rust/crates/linux-raw-sys-0.4.13.crate) = 1493855 SHA256 (rust/crates/local-channel-0.1.5.crate) = b6cbc85e69b8df4b8bb8b89ec634e7189099cea8927a276b7384ce5488e53ec8 SIZE (rust/crates/local-channel-0.1.5.crate) = 7881 SHA256 (rust/crates/local-waker-0.1.4.crate) = 4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487 SIZE (rust/crates/local-waker-0.1.4.crate) = 6730 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/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c +SIZE (rust/crates/log-0.4.21.crate) = 43442 SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558 SIZE (rust/crates/matchers-0.1.0.crate) = 6948 SHA256 (rust/crates/matchit-0.7.3.crate) = 0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94 SIZE (rust/crates/matchit-0.7.3.crate) = 30372 -SHA256 (rust/crates/memchr-2.6.4.crate) = f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167 -SIZE (rust/crates/memchr-2.6.4.crate) = 94439 +SHA256 (rust/crates/memchr-2.7.1.crate) = 523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149 +SIZE (rust/crates/memchr-2.7.1.crate) = 96307 SHA256 (rust/crates/mime-0.3.17.crate) = 6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a SIZE (rust/crates/mime-0.3.17.crate) = 15712 SHA256 (rust/crates/mime_guess-2.0.4.crate) = 4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef SIZE (rust/crates/mime_guess-2.0.4.crate) = 26399 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.7.1.crate) = e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7 -SIZE (rust/crates/miniz_oxide-0.7.1.crate) = 55194 -SHA256 (rust/crates/mio-0.8.9.crate) = 3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0 -SIZE (rust/crates/mio-0.8.9.crate) = 102227 +SHA256 (rust/crates/miniz_oxide-0.7.2.crate) = 9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7 +SIZE (rust/crates/miniz_oxide-0.7.2.crate) = 55731 +SHA256 (rust/crates/mio-0.8.11.crate) = a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c +SIZE (rust/crates/mio-0.8.11.crate) = 102983 SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a SIZE (rust/crates/nom-7.1.3.crate) = 117570 SHA256 (rust/crates/notify-6.1.1.crate) = 6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d @@ -323,38 +309,28 @@ SHA256 (rust/crates/notify-debouncer-full-0.1.0.crate) = f4812c1eb49be776fb8df49 SIZE (rust/crates/notify-debouncer-full-0.1.0.crate) = 13595 SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84 SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311 -SHA256 (rust/crates/num-bigint-0.4.4.crate) = 608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0 -SIZE (rust/crates/num-bigint-0.4.4.crate) = 99369 -SHA256 (rust/crates/num-integer-0.1.45.crate) = 225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9 -SIZE (rust/crates/num-integer-0.1.45.crate) = 22529 -SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c -SIZE (rust/crates/num-traits-0.2.17.crate) = 50190 +SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9 +SIZE (rust/crates/num-conv-0.1.0.crate) = 7444 +SHA256 (rust/crates/num-traits-0.2.18.crate) = da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a +SIZE (rust/crates/num-traits-0.2.18.crate) = 51930 SHA256 (rust/crates/num_cpus-1.16.0.crate) = 4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43 SIZE (rust/crates/num_cpus-1.16.0.crate) = 15713 -SHA256 (rust/crates/object-0.32.1.crate) = 9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0 -SIZE (rust/crates/object-0.32.1.crate) = 275463 -SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d -SIZE (rust/crates/once_cell-1.18.0.crate) = 32969 -SHA256 (rust/crates/openssl-0.10.61.crate) = 6b8419dc8cc6d866deb801274bba2e6f8f6108c1bb7fcc10ee5ab864931dbb45 -SIZE (rust/crates/openssl-0.10.61.crate) = 268171 +SHA256 (rust/crates/object-0.32.2.crate) = a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441 +SIZE (rust/crates/object-0.32.2.crate) = 286994 +SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 +SIZE (rust/crates/once_cell-1.19.0.crate) = 33046 +SHA256 (rust/crates/openssl-0.10.64.crate) = 95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f +SIZE (rust/crates/openssl-0.10.64.crate) = 272306 SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601 -SHA256 (rust/crates/openssl-sys-0.9.97.crate) = c3eaad34cdd97d81de97964fc7f29e2d104f483840d906ef56daa1912338460b -SIZE (rust/crates/openssl-sys-0.9.97.crate) = 67910 +SHA256 (rust/crates/openssl-sys-0.9.101.crate) = dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff +SIZE (rust/crates/openssl-sys-0.9.101.crate) = 68568 SHA256 (rust/crates/opentelemetry-0.21.0.crate) = 1e32339a5dc40459130b3bd269e9892439f55b33e772d2a9d402a789baaf4e8a SIZE (rust/crates/opentelemetry-0.21.0.crate) = 70114 -SHA256 (rust/crates/opentelemetry-appender-tracing-0.2.0.crate) = 12c4bd073648dae8ac45cfc81588d74b3dc5f334119ac08567ddcbfe16f2d809 -SIZE (rust/crates/opentelemetry-appender-tracing-0.2.0.crate) = 11491 SHA256 (rust/crates/opentelemetry-http-0.10.0.crate) = 7f51189ce8be654f9b5f7e70e49967ed894e84a06fc35c6c042e64ac1fc5399e SIZE (rust/crates/opentelemetry-http-0.10.0.crate) = 8792 -SHA256 (rust/crates/opentelemetry-otlp-0.14.0.crate) = f24cda83b20ed2433c68241f918d0f6fdec8b1d43b7a9590ab4420c5095ca930 -SIZE (rust/crates/opentelemetry-otlp-0.14.0.crate) = 30982 -SHA256 (rust/crates/opentelemetry-proto-0.4.0.crate) = a2e155ce5cc812ea3d1dffbd1539aed653de4bf4882d60e6e04dcf0901d674e1 -SIZE (rust/crates/opentelemetry-proto-0.4.0.crate) = 159421 -SHA256 (rust/crates/opentelemetry-semantic-conventions-0.13.0.crate) = f5774f1ef1f982ef2a447f6ee04ec383981a3ab99c8e77a1a7b30182e65bbc84 -SIZE (rust/crates/opentelemetry-semantic-conventions-0.13.0.crate) = 32259 -SHA256 (rust/crates/opentelemetry_sdk-0.21.1.crate) = 968ba3f2ca03e90e5187f5e4f46c791ef7f2c163ae87789c8ce5f5ca3b7b7de5 -SIZE (rust/crates/opentelemetry_sdk-0.21.1.crate) = 118942 +SHA256 (rust/crates/opentelemetry_sdk-0.21.2.crate) = 2f16aec8a98a457a52664d69e0091bac3a0abd18ead9b641cb00202ba4e0efe4 +SIZE (rust/crates/opentelemetry_sdk-0.21.2.crate) = 119761 SHA256 (rust/crates/ordered-float-4.2.0.crate) = a76df7075c7d4d01fdcb46c912dd17fba5b60c78ea480b475f2b6ab6f666584e SIZE (rust/crates/ordered-float-4.2.0.crate) = 20510 SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39 @@ -367,42 +343,38 @@ SHA256 (rust/crates/parse-size-1.0.0.crate) = 944553dd59c802559559161f9816429058 SIZE (rust/crates/parse-size-1.0.0.crate) = 6588 SHA256 (rust/crates/paste-1.0.14.crate) = de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c SIZE (rust/crates/paste-1.0.14.crate) = 18157 +SHA256 (rust/crates/path-clean-1.0.1.crate) = 17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef +SIZE (rust/crates/path-clean-1.0.1.crate) = 4514 SHA256 (rust/crates/pathdiff-0.2.1.crate) = 8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd SIZE (rust/crates/pathdiff-0.2.1.crate) = 7142 -SHA256 (rust/crates/pem-3.0.2.crate) = 3163d2912b7c3b52d651a055f2c7eec9ba5cd22d26ef75b8dd3a59980b185923 -SIZE (rust/crates/pem-3.0.2.crate) = 12900 SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 SHA256 (rust/crates/petname-1.1.3.crate) = fce4164d60963550beb856b011fdf32b03b0e8bc0c3fce023c7b0ccecddf7950 SIZE (rust/crates/petname-1.1.3.crate) = 223168 -SHA256 (rust/crates/pin-project-1.1.3.crate) = fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422 -SIZE (rust/crates/pin-project-1.1.3.crate) = 57740 -SHA256 (rust/crates/pin-project-internal-1.1.3.crate) = 4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405 -SIZE (rust/crates/pin-project-internal-1.1.3.crate) = 27824 +SHA256 (rust/crates/pin-project-1.1.5.crate) = b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3 +SIZE (rust/crates/pin-project-1.1.5.crate) = 54214 +SHA256 (rust/crates/pin-project-internal-1.1.5.crate) = 2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965 +SIZE (rust/crates/pin-project-internal-1.1.5.crate) = 28280 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/pkg-config-0.3.27.crate) = 26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964 -SIZE (rust/crates/pkg-config-0.3.27.crate) = 18838 +SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec +SIZE (rust/crates/pkg-config-0.3.30.crate) = 20613 SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391 SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165 SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 -SHA256 (rust/crates/proc-macro-crate-2.0.1.crate) = 97dc5fea232fc28d2f597b37c4876b348a40e33f3b02cc975c8d006d78d94b1a -SIZE (rust/crates/proc-macro-crate-2.0.1.crate) = 10989 +SHA256 (rust/crates/proc-macro-crate-3.1.0.crate) = 6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284 +SIZE (rust/crates/proc-macro-crate-3.1.0.crate) = 11084 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-macro2-1.0.70.crate) = 39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b -SIZE (rust/crates/proc-macro2-1.0.70.crate) = 44343 -SHA256 (rust/crates/prost-0.11.9.crate) = 0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd -SIZE (rust/crates/prost-0.11.9.crate) = 28958 +SHA256 (rust/crates/proc-macro2-1.0.79.crate) = e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e +SIZE (rust/crates/proc-macro2-1.0.79.crate) = 47200 SHA256 (rust/crates/prost-0.12.3.crate) = 146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a SIZE (rust/crates/prost-0.12.3.crate) = 29461 -SHA256 (rust/crates/prost-derive-0.11.9.crate) = e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4 -SIZE (rust/crates/prost-derive-0.11.9.crate) = 19513 SHA256 (rust/crates/prost-derive-0.12.3.crate) = efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e SIZE (rust/crates/prost-derive-0.12.3.crate) = 19603 SHA256 (rust/crates/prost-types-0.12.3.crate) = 193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e @@ -413,8 +385,8 @@ SHA256 (rust/crates/ptr_meta-0.1.4.crate) = 0738ccf7ea06b608c10564b31debd4f5bc5e SIZE (rust/crates/ptr_meta-0.1.4.crate) = 5754 SHA256 (rust/crates/ptr_meta_derive-0.1.4.crate) = 16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac SIZE (rust/crates/ptr_meta_derive-0.1.4.crate) = 2302 -SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae -SIZE (rust/crates/quote-1.0.33.crate) = 28090 +SHA256 (rust/crates/quote-1.0.35.crate) = 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef +SIZE (rust/crates/quote-1.0.35.crate) = 28136 SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 SIZE (rust/crates/radium-0.7.0.crate) = 10906 SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404 @@ -423,48 +395,42 @@ SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4 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.3.5.crate) = 567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29 -SIZE (rust/crates/redox_syscall-0.3.5.crate) = 23404 SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858 -SHA256 (rust/crates/regex-1.10.2.crate) = 380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343 -SIZE (rust/crates/regex-1.10.2.crate) = 252839 +SHA256 (rust/crates/regex-1.10.4.crate) = c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c +SIZE (rust/crates/regex-1.10.4.crate) = 253191 SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 -SHA256 (rust/crates/regex-automata-0.4.3.crate) = 5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f -SIZE (rust/crates/regex-automata-0.4.3.crate) = 617011 +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.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1 SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752 -SHA256 (rust/crates/regex-syntax-0.8.2.crate) = c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f -SIZE (rust/crates/regex-syntax-0.8.2.crate) = 347228 -SHA256 (rust/crates/rend-0.4.1.crate) = a2571463863a6bd50c32f94402933f03457a3fbaf697a707c5be741e459f08fd -SIZE (rust/crates/rend-0.4.1.crate) = 9305 -SHA256 (rust/crates/ring-0.17.7.crate) = 688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74 -SIZE (rust/crates/ring-0.17.7.crate) = 4146482 -SHA256 (rust/crates/rkyv-0.7.43.crate) = 527a97cdfef66f65998b5f3b637c26f5a5ec09cc52a3f9932313ac645f4190f5 -SIZE (rust/crates/rkyv-0.7.43.crate) = 115657 -SHA256 (rust/crates/rkyv_derive-0.7.43.crate) = b5c462a1328c8e67e4d6dbad1eb0355dd43e8ab432c6e227a43657f16ade5033 -SIZE (rust/crates/rkyv_derive-0.7.43.crate) = 18914 -SHA256 (rust/crates/rust_decimal-1.33.1.crate) = 06676aec5ccb8fc1da723cc8c0f9a46549f21ebb8753d3915c6c41db1e7f1dc4 -SIZE (rust/crates/rust_decimal-1.33.1.crate) = 125610 +SHA256 (rust/crates/regex-syntax-0.8.3.crate) = adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56 +SIZE (rust/crates/regex-syntax-0.8.3.crate) = 347497 +SHA256 (rust/crates/rend-0.4.2.crate) = 71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c +SIZE (rust/crates/rend-0.4.2.crate) = 9324 +SHA256 (rust/crates/ring-0.17.8.crate) = c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d +SIZE (rust/crates/ring-0.17.8.crate) = 4188554 +SHA256 (rust/crates/rkyv-0.7.44.crate) = 5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0 +SIZE (rust/crates/rkyv-0.7.44.crate) = 115686 +SHA256 (rust/crates/rkyv_derive-0.7.44.crate) = a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65 +SIZE (rust/crates/rkyv_derive-0.7.44.crate) = 18912 +SHA256 (rust/crates/rust_decimal-1.35.0.crate) = 1790d1c4c0ca81211399e0e0af16333276f375209e71a37b67698a373db5b47a +SIZE (rust/crates/rust_decimal-1.35.0.crate) = 128340 SHA256 (rust/crates/rustc-demangle-0.1.23.crate) = d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76 SIZE (rust/crates/rustc-demangle-0.1.23.crate) = 28970 -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/rustix-0.38.26.crate) = 9470c4bf8246c8daf25f9598dca807fb6510347b1e1cfa55749113850c79d88a -SIZE (rust/crates/rustix-0.38.26.crate) = 364525 -SHA256 (rust/crates/rustls-0.21.9.crate) = 629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9 -SIZE (rust/crates/rustls-0.21.9.crate) = 283537 +SHA256 (rust/crates/rustix-0.38.32.crate) = 65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89 +SIZE (rust/crates/rustix-0.38.32.crate) = 376999 +SHA256 (rust/crates/rustls-0.21.10.crate) = f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba +SIZE (rust/crates/rustls-0.21.10.crate) = 284920 SHA256 (rust/crates/rustls-webpki-0.101.7.crate) = 8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765 SIZE (rust/crates/rustls-webpki-0.101.7.crate) = 168808 -SHA256 (rust/crates/rustrict-0.7.12.crate) = cfe3300a40b60e76a856237ad1fe2210da1f40686705a2211688bb5742109a63 -SIZE (rust/crates/rustrict-0.7.12.crate) = 551933 SHA256 (rust/crates/rustversion-1.0.14.crate) = 7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4 SIZE (rust/crates/rustversion-1.0.14.crate) = 17261 -SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741 -SIZE (rust/crates/ryu-1.0.15.crate) = 46906 +SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1 +SIZE (rust/crates/ryu-1.0.17.crate) = 47537 SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 SIZE (rust/crates/same-file-1.0.6.crate) = 10183 SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 @@ -473,38 +439,38 @@ SHA256 (rust/crates/sct-0.7.1.crate) = da046153aa2352493d6cb7da4b6e5c0c057d8a1d0 SIZE (rust/crates/sct-0.7.1.crate) = 27501 SHA256 (rust/crates/seahash-4.1.0.crate) = 1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b SIZE (rust/crates/seahash-4.1.0.crate) = 31976 -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_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_path_to_error-0.1.14.crate) = 4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335 -SIZE (rust/crates/serde_path_to_error-0.1.14.crate) = 16553 +SHA256 (rust/crates/semver-1.0.22.crate) = 92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca +SIZE (rust/crates/semver-1.0.22.crate) = 30446 +SHA256 (rust/crates/serde-1.0.197.crate) = 3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2 +SIZE (rust/crates/serde-1.0.197.crate) = 77087 +SHA256 (rust/crates/serde_derive-1.0.197.crate) = 7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b +SIZE (rust/crates/serde_derive-1.0.197.crate) = 55771 +SHA256 (rust/crates/serde_json-1.0.115.crate) = 12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd +SIZE (rust/crates/serde_json-1.0.115.crate) = 147100 SHA256 (rust/crates/serde_plain-1.0.2.crate) = 9ce1fc6db65a611022b23a0dec6975d63fb80a302cb3388835ff02c097258d50 SIZE (rust/crates/serde_plain-1.0.2.crate) = 11183 SHA256 (rust/crates/serde_regex-1.1.0.crate) = a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf SIZE (rust/crates/serde_regex-1.1.0.crate) = 9710 +SHA256 (rust/crates/serde_spanned-0.6.5.crate) = eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1 +SIZE (rust/crates/serde_spanned-0.6.5.crate) = 8349 SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822 SHA256 (rust/crates/sha1-0.10.6.crate) = e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba SIZE (rust/crates/sha1-0.10.6.crate) = 13517 SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6 SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227 -SHA256 (rust/crates/shuttle-actix-web-0.35.1.crate) = 7ca8b5015eaea3b3bc38078936dc21dbc46a352e736319c80e4422a77c31dcc4 -SIZE (rust/crates/shuttle-actix-web-0.35.1.crate) = 1648 -SHA256 (rust/crates/shuttle-codegen-0.35.1.crate) = 1b99c06b8adfb88b971c2bc2662252a6ec85f4e041c7b0add64499fbdfd71b18 -SIZE (rust/crates/shuttle-codegen-0.35.1.crate) = 11507 -SHA256 (rust/crates/shuttle-common-0.35.1.crate) = 7e1ba1b036ce303eba6982c7a9d43021d121ccba84db43c3c264f8bf22b6bdb7 -SIZE (rust/crates/shuttle-common-0.35.1.crate) = 35656 -SHA256 (rust/crates/shuttle-proto-0.35.1.crate) = f86275eabcc469d6749d4dc2e091f6e120f04fde813cf7002e5dc60158ce571b -SIZE (rust/crates/shuttle-proto-0.35.1.crate) = 13205 -SHA256 (rust/crates/shuttle-runtime-0.35.1.crate) = e057c62f2f77368591117411e8de4458f6df33d0c157875c96025c2435e0811f -SIZE (rust/crates/shuttle-runtime-0.35.1.crate) = 40071 -SHA256 (rust/crates/shuttle-service-0.35.1.crate) = 46d7b998a1137b4aa55190549b1ab71c5c834531776358599925ed23c27e4b86 -SIZE (rust/crates/shuttle-service-0.35.1.crate) = 7458 +SHA256 (rust/crates/shuttle-actix-web-0.42.0.crate) = a6cc5c406b066c8c6d68d0165abf38c6484acd6121e7d238440fa46d846b777d +SIZE (rust/crates/shuttle-actix-web-0.42.0.crate) = 1647 +SHA256 (rust/crates/shuttle-codegen-0.42.0.crate) = bbaaa74ae77edfc5590c87af97bfc15d0aff2db9ff4a5fd891be0a7dd0de8089 +SIZE (rust/crates/shuttle-codegen-0.42.0.crate) = 7727 +SHA256 (rust/crates/shuttle-common-0.42.0.crate) = 910ae1502f083563f06fee5d5ceb2a8b45f92c67ef7834806880484f15d79bb5 +SIZE (rust/crates/shuttle-common-0.42.0.crate) = 40556 +SHA256 (rust/crates/shuttle-proto-0.42.0.crate) = ad7aa381187faaa32562c1e3631047b1edd070c055be50a5f32d13a538110fd7 +SIZE (rust/crates/shuttle-proto-0.42.0.crate) = 15379 +SHA256 (rust/crates/shuttle-runtime-0.42.0.crate) = 322f013c5058e37bf19a9ad8af35a2ac139605b0cbd941c0d0a009d032e23b73 +SIZE (rust/crates/shuttle-runtime-0.42.0.crate) = 8848 +SHA256 (rust/crates/shuttle-service-0.42.0.crate) = 9118dcf5aea64a38a06875a744b6c7daf8aa41e56eb2ecea2a21fb8c42ff7db5 +SIZE (rust/crates/shuttle-service-0.42.0.crate) = 6654 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-mio-0.2.3.crate) = 29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af @@ -513,16 +479,12 @@ SHA256 (rust/crates/signal-hook-registry-1.4.1.crate) = d8229b473baa5980ac72ef43 SIZE (rust/crates/signal-hook-registry-1.4.1.crate) = 17987 SHA256 (rust/crates/simdutf8-0.1.4.crate) = f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a SIZE (rust/crates/simdutf8-0.1.4.crate) = 28621 -SHA256 (rust/crates/simple_asn1-0.6.2.crate) = adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085 -SIZE (rust/crates/simple_asn1-0.6.2.crate) = 15992 SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67 SIZE (rust/crates/slab-0.4.9.crate) = 17108 -SHA256 (rust/crates/smallvec-1.11.2.crate) = 4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970 -SIZE (rust/crates/smallvec-1.11.2.crate) = 34801 -SHA256 (rust/crates/socket2-0.4.10.crate) = 9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d -SIZE (rust/crates/socket2-0.4.10.crate) = 45697 -SHA256 (rust/crates/socket2-0.5.5.crate) = 7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9 -SIZE (rust/crates/socket2-0.5.5.crate) = 54863 +SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67 +SIZE (rust/crates/smallvec-1.13.2.crate) = 35216 +SHA256 (rust/crates/socket2-0.5.6.crate) = 05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871 +SIZE (rust/crates/socket2-0.5.6.crate) = 55270 SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 SIZE (rust/crates/spin-0.9.8.crate) = 38958 SHA256 (rust/crates/strfmt-0.2.4.crate) = 7a8348af2d9fc3258c8733b8d9d8db2e56f54b2363a4b5b81585c7875ed65e65 @@ -531,68 +493,66 @@ SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f0 SIZE (rust/crates/strsim-0.10.0.crate) = 11355 SHA256 (rust/crates/strum-0.24.1.crate) = 063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f SIZE (rust/crates/strum-0.24.1.crate) = 5636 -SHA256 (rust/crates/strum-0.25.0.crate) = 290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125 -SIZE (rust/crates/strum-0.25.0.crate) = 5539 +SHA256 (rust/crates/strum-0.26.2.crate) = 5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29 +SIZE (rust/crates/strum-0.26.2.crate) = 7189 SHA256 (rust/crates/strum_macros-0.24.3.crate) = 1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59 SIZE (rust/crates/strum_macros-0.24.3.crate) = 20696 -SHA256 (rust/crates/strum_macros-0.25.3.crate) = 23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0 -SIZE (rust/crates/strum_macros-0.25.3.crate) = 22570 +SHA256 (rust/crates/strum_macros-0.26.2.crate) = c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946 +SIZE (rust/crates/strum_macros-0.26.2.crate) = 27056 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/syn-2.0.55.crate) = 002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0 +SIZE (rust/crates/syn-2.0.55.crate) = 254901 SHA256 (rust/crates/syn_derive-0.1.8.crate) = 1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b SIZE (rust/crates/syn_derive-0.1.8.crate) = 5173 SHA256 (rust/crates/sync_wrapper-0.1.2.crate) = 2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160 SIZE (rust/crates/sync_wrapper-0.1.2.crate) = 6933 SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 SIZE (rust/crates/tap-1.0.1.crate) = 11316 -SHA256 (rust/crates/tempfile-3.8.1.crate) = 7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5 -SIZE (rust/crates/tempfile-3.8.1.crate) = 32164 -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/thread_local-1.1.7.crate) = 3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152 -SIZE (rust/crates/thread_local-1.1.7.crate) = 13585 -SHA256 (rust/crates/time-0.3.30.crate) = c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5 -SIZE (rust/crates/time-0.3.30.crate) = 120289 +SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1 +SIZE (rust/crates/tempfile-3.10.1.crate) = 33653 +SHA256 (rust/crates/thiserror-1.0.58.crate) = 03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297 +SIZE (rust/crates/thiserror-1.0.58.crate) = 21025 +SHA256 (rust/crates/thiserror-impl-1.0.58.crate) = c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7 +SIZE (rust/crates/thiserror-impl-1.0.58.crate) = 15645 +SHA256 (rust/crates/thread_local-1.1.8.crate) = 8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c +SIZE (rust/crates/thread_local-1.1.8.crate) = 13962 +SHA256 (rust/crates/time-0.3.34.crate) = c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749 +SIZE (rust/crates/time-0.3.34.crate) = 118430 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.15.crate) = 4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20 -SIZE (rust/crates/time-macros-0.2.15.crate) = 23568 +SHA256 (rust/crates/time-macros-0.2.17.crate) = 7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774 +SIZE (rust/crates/time-macros-0.2.17.crate) = 24443 SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50 SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991 SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 -SHA256 (rust/crates/tokio-1.35.1.crate) = c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104 -SIZE (rust/crates/tokio-1.35.1.crate) = 744407 +SHA256 (rust/crates/tokio-1.36.0.crate) = 61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931 +SIZE (rust/crates/tokio-1.36.0.crate) = 757286 SHA256 (rust/crates/tokio-io-timeout-1.2.0.crate) = 30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf SIZE (rust/crates/tokio-io-timeout-1.2.0.crate) = 8993 SHA256 (rust/crates/tokio-macros-2.2.0.crate) = 5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b SIZE (rust/crates/tokio-macros-2.2.0.crate) = 11520 -SHA256 (rust/crates/tokio-openssl-0.6.3.crate) = c08f9ffb7809f1b20c1b398d92acf4cc719874b3b2b2d9ea2f09b4a80350878a -SIZE (rust/crates/tokio-openssl-0.6.3.crate) = 11970 +SHA256 (rust/crates/tokio-openssl-0.6.4.crate) = 6ffab79df67727f6acf57f1ff743091873c24c579b1e2ce4d8f53e47ded4d63d +SIZE (rust/crates/tokio-openssl-0.6.4.crate) = 11911 SHA256 (rust/crates/tokio-rustls-0.24.1.crate) = c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081 SIZE (rust/crates/tokio-rustls-0.24.1.crate) = 33049 -SHA256 (rust/crates/tokio-stream-0.1.14.crate) = 397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842 -SIZE (rust/crates/tokio-stream-0.1.14.crate) = 35881 +SHA256 (rust/crates/tokio-stream-0.1.15.crate) = 267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af +SIZE (rust/crates/tokio-stream-0.1.15.crate) = 36284 SHA256 (rust/crates/tokio-util-0.7.10.crate) = 5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15 SIZE (rust/crates/tokio-util-0.7.10.crate) = 110508 -SHA256 (rust/crates/toml-0.5.11.crate) = f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234 -SIZE (rust/crates/toml-0.5.11.crate) = 54910 -SHA256 (rust/crates/toml_datetime-0.6.3.crate) = 7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b -SIZE (rust/crates/toml_datetime-0.6.3.crate) = 10770 -SHA256 (rust/crates/toml_edit-0.20.2.crate) = 396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338 -SIZE (rust/crates/toml_edit-0.20.2.crate) = 96487 -SHA256 (rust/crates/tonic-0.9.2.crate) = 3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a -SIZE (rust/crates/tonic-0.9.2.crate) = 92598 +SHA256 (rust/crates/toml-0.8.12.crate) = e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3 +SIZE (rust/crates/toml-0.8.12.crate) = 51145 +SHA256 (rust/crates/toml_datetime-0.6.5.crate) = 3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1 +SIZE (rust/crates/toml_datetime-0.6.5.crate) = 10910 +SHA256 (rust/crates/toml_edit-0.21.1.crate) = 6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1 +SIZE (rust/crates/toml_edit-0.21.1.crate) = 101661 +SHA256 (rust/crates/toml_edit-0.22.9.crate) = 8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4 +SIZE (rust/crates/toml_edit-0.22.9.crate) = 104173 SHA256 (rust/crates/tonic-0.10.2.crate) = d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e SIZE (rust/crates/tonic-0.10.2.crate) = 95739 SHA256 (rust/crates/tower-0.4.13.crate) = b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c SIZE (rust/crates/tower-0.4.13.crate) = 106906 -SHA256 (rust/crates/tower-http-0.4.4.crate) = 61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140 -SIZE (rust/crates/tower-http-0.4.4.crate) = 115612 SHA256 (rust/crates/tower-layer-0.3.2.crate) = c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0 SIZE (rust/crates/tower-layer-0.3.2.crate) = 6023 SHA256 (rust/crates/tower-service-0.3.2.crate) = b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52 @@ -611,20 +571,18 @@ SHA256 (rust/crates/tracing-serde-0.1.3.crate) = bc6b213177105856957181934e4920d SIZE (rust/crates/tracing-serde-0.1.3.crate) = 7329 SHA256 (rust/crates/tracing-subscriber-0.3.18.crate) = ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b SIZE (rust/crates/tracing-subscriber-0.3.18.crate) = 196312 -SHA256 (rust/crates/try-lock-0.2.4.crate) = 3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed -SIZE (rust/crates/try-lock-0.2.4.crate) = 4467 -SHA256 (rust/crates/ttl_cache-0.5.1.crate) = 4189890526f0168710b6ee65ceaedf1460c48a14318ceec933cb26baa492096a -SIZE (rust/crates/ttl_cache-0.5.1.crate) = 9923 +SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b +SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825 SIZE (rust/crates/typenum-1.17.0.crate) = 42849 SHA256 (rust/crates/unicase-2.7.0.crate) = f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89 SIZE (rust/crates/unicase-2.7.0.crate) = 23783 -SHA256 (rust/crates/unicode-bidi-0.3.13.crate) = 92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460 -SIZE (rust/crates/unicode-bidi-0.3.13.crate) = 44477 +SHA256 (rust/crates/unicode-bidi-0.3.15.crate) = 08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75 +SIZE (rust/crates/unicode-bidi-0.3.15.crate) = 56811 SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 -SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921 -SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604 +SHA256 (rust/crates/unicode-normalization-0.1.23.crate) = a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5 +SIZE (rust/crates/unicode-normalization-0.1.23.crate) = 122649 SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85 SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187 SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 @@ -637,34 +595,36 @@ SHA256 (rust/crates/utf8-width-0.1.7.crate) = 86bd8d4e895da8537e5315b8254664e6b7 SIZE (rust/crates/utf8-width-0.1.7.crate) = 2977 SHA256 (rust/crates/uts2ts-0.4.1.crate) = 259b17235452d88d066e35685df3fd9fd3875936eee5451d0533b604201f06a8 SIZE (rust/crates/uts2ts-0.4.1.crate) = 5921 -SHA256 (rust/crates/uuid-1.6.1.crate) = 5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560 -SIZE (rust/crates/uuid-1.6.1.crate) = 55554 +SHA256 (rust/crates/uuid-1.8.0.crate) = a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0 +SIZE (rust/crates/uuid-1.8.0.crate) = 44043 +SHA256 (rust/crates/v_htmlescape-0.15.8.crate) = 4e8257fbc510f0a46eb602c10215901938b5c2a7d5e70fc11483b1d3c9b5b18c +SIZE (rust/crates/v_htmlescape-0.15.8.crate) = 10878 SHA256 (rust/crates/valuable-0.1.0.crate) = 830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d SIZE (rust/crates/valuable-0.1.0.crate) = 27718 SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735 SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f SIZE (rust/crates/version_check-0.9.4.crate) = 14895 -SHA256 (rust/crates/walkdir-2.4.0.crate) = d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee -SIZE (rust/crates/walkdir-2.4.0.crate) = 23550 +SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b +SIZE (rust/crates/walkdir-2.5.0.crate) = 23951 SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e SIZE (rust/crates/want-0.3.1.crate) = 6398 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.89.crate) = 0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e -SIZE (rust/crates/wasm-bindgen-0.2.89.crate) = 181935 -SHA256 (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826 -SIZE (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 28205 -SHA256 (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2 -SIZE (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 13906 -SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283 -SIZE (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = 20008 -SHA256 (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f -SIZE (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7265 -SHA256 (rust/crates/web-time-0.2.3.crate) = 57099a701fb3a8043f993e8228dc24229c7b942e2b009a1b962e54489ba1d3bf -SIZE (rust/crates/web-time-0.2.3.crate) = 14052 -SHA256 (rust/crates/webpki-roots-0.25.3.crate) = 1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10 -SIZE (rust/crates/webpki-roots-0.25.3.crate) = 251565 +SHA256 (rust/crates/wasm-bindgen-0.2.92.crate) = 4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8 +SIZE (rust/crates/wasm-bindgen-0.2.92.crate) = 184119 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da +SIZE (rust/crates/wasm-bindgen-backend-0.2.92.crate) = 28348 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.92.crate) = a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726 +SIZE (rust/crates/wasm-bindgen-macro-0.2.92.crate) = 13835 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7 +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.92.crate) = 20092 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.92.crate) = af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96 +SIZE (rust/crates/wasm-bindgen-shared-0.2.92.crate) = 7263 +SHA256 (rust/crates/web-time-0.2.4.crate) = aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0 +SIZE (rust/crates/web-time-0.2.4.crate) = 15743 +SHA256 (rust/crates/webpki-roots-0.25.4.crate) = 5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1 +SIZE (rust/crates/webpki-roots-0.25.4.crate) = 253559 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 @@ -673,61 +633,63 @@ SHA256 (rust/crates/winapi-util-0.1.6.crate) = f29e6f9198ba0d26b4c9f07dbe6f9ed63 SIZE (rust/crates/winapi-util-0.1.6.crate) = 12234 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-core-0.51.1.crate) = f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64 -SIZE (rust/crates/windows-core-0.51.1.crate) = 42364 +SHA256 (rust/crates/windows-core-0.52.0.crate) = 33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9 +SIZE (rust/crates/windows-core-0.52.0.crate) = 42154 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-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904 -SHA256 (rust/crates/windows-targets-0.52.0.crate) = 8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd -SIZE (rust/crates/windows-targets-0.52.0.crate) = 6229 +SHA256 (rust/crates/windows-targets-0.52.4.crate) = 7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b +SIZE (rust/crates/windows-targets-0.52.4.crate) = 6310 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.0.crate) = cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea -SIZE (rust/crates/windows_aarch64_gnullvm-0.52.0.crate) = 430182 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.4.crate) = bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.4.crate) = 433373 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.0.crate) = bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef -SIZE (rust/crates/windows_aarch64_msvc-0.52.0.crate) = 821663 +SHA256 (rust/crates/windows_aarch64_msvc-0.52.4.crate) = da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675 +SIZE (rust/crates/windows_aarch64_msvc-0.52.4.crate) = 828055 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.0.crate) = a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313 -SIZE (rust/crates/windows_i686_gnu-0.52.0.crate) = 870285 +SHA256 (rust/crates/windows_i686_gnu-0.52.4.crate) = b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3 +SIZE (rust/crates/windows_i686_gnu-0.52.4.crate) = 875736 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.0.crate) = ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a -SIZE (rust/crates/windows_i686_msvc-0.52.0.crate) = 888693 +SHA256 (rust/crates/windows_i686_msvc-0.52.4.crate) = 1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02 +SIZE (rust/crates/windows_i686_msvc-0.52.4.crate) = 895530 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.0.crate) = 3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd -SIZE (rust/crates/windows_x86_64_gnu-0.52.0.crate) = 826213 +SHA256 (rust/crates/windows_x86_64_gnu-0.52.4.crate) = 5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03 +SIZE (rust/crates/windows_x86_64_gnu-0.52.4.crate) = 831627 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.0.crate) = 1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e -SIZE (rust/crates/windows_x86_64_gnullvm-0.52.0.crate) = 430165 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.4.crate) = 77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177 +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.4.crate) = 433358 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.0.crate) = dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04 -SIZE (rust/crates/windows_x86_64_msvc-0.52.0.crate) = 821600 -SHA256 (rust/crates/winnow-0.5.28.crate) = 6c830786f7720c2fd27a1a0e27a709dbd3c4d009b56d098fc742d4f4eab91fe2 -SIZE (rust/crates/winnow-0.5.28.crate) = 150758 +SHA256 (rust/crates/windows_x86_64_msvc-0.52.4.crate) = 32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8 +SIZE (rust/crates/windows_x86_64_msvc-0.52.4.crate) = 828019 +SHA256 (rust/crates/winnow-0.5.40.crate) = f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876 +SIZE (rust/crates/winnow-0.5.40.crate) = 159316 +SHA256 (rust/crates/winnow-0.6.5.crate) = dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8 +SIZE (rust/crates/winnow-0.6.5.crate) = 159316 SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed SIZE (rust/crates/wyz-0.5.1.crate) = 18790 SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85 SIZE (rust/crates/yaml-rust-0.4.5.crate) = 47783 -SHA256 (rust/crates/zerocopy-0.7.28.crate) = 7d6f15f7ade05d2a4935e34a457b936c23dc70a05cc1d97133dc99e7a3fe0f0e -SIZE (rust/crates/zerocopy-0.7.28.crate) = 147263 -SHA256 (rust/crates/zerocopy-derive-0.7.28.crate) = dbbad221e3f78500350ecbd7dfa4e63ef945c05f4c61cb7f4d3f84cd0bba649b -SIZE (rust/crates/zerocopy-derive-0.7.28.crate) = 533073 +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 (rust/crates/zeroize-1.7.0.crate) = 525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d SIZE (rust/crates/zeroize-1.7.0.crate) = 19039 -SHA256 (rust/crates/zstd-0.12.4.crate) = 1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c -SIZE (rust/crates/zstd-0.12.4.crate) = 30434 -SHA256 (rust/crates/zstd-safe-6.0.6.crate) = ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581 -SIZE (rust/crates/zstd-safe-6.0.6.crate) = 20828 -SHA256 (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656 -SIZE (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 728791 -SHA256 (orhun-rustypaste-v0.14.4_GH0.tar.gz) = 2d5e7aac9c3badd3ee059a9cc4d3e77b2fee18922f144d70f70059f9b4a6bdf1 -SIZE (orhun-rustypaste-v0.14.4_GH0.tar.gz) = 294963 +SHA256 (rust/crates/zstd-0.13.1.crate) = 2d789b1514203a1120ad2429eae43a7bd32b90976a7bb8a05f7ec02fa88cc23a +SIZE (rust/crates/zstd-0.13.1.crate) = 29805 +SHA256 (rust/crates/zstd-safe-7.1.0.crate) = 1cd99b45c6bc03a018c8b8a86025678c87e55526064e38f9df301989dce7ec0a +SIZE (rust/crates/zstd-safe-7.1.0.crate) = 20792 +SHA256 (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa +SIZE (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = 749088 +SHA256 (orhun-rustypaste-v0.15.0_GH0.tar.gz) = d2f23fa70f389dc0e57606799e780ba7bcfc648514e72de55154ccf5571fc6cf +SIZE (orhun-rustypaste-v0.15.0_GH0.tar.gz) = 296122 diff --git a/www/s/Makefile b/www/s/Makefile index 7d8c32976afd..d128f362a942 100644 --- a/www/s/Makefile +++ b/www/s/Makefile @@ -1,7 +1,7 @@ PORTNAME= s DISTVERSIONPREFIX= v -DISTVERSION= 0.6.9 -PORTREVISION= 4 +DISTVERSION= 0.7.0 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/s/distinfo b/www/s/distinfo index cf7f7339685a..dee596879099 100644 --- a/www/s/distinfo +++ b/www/s/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1699084478 -SHA256 (go/www_s/s-v0.6.9/v0.6.9.mod) = 668a07cff48882a0d76d2ca2a0c29ff16b81cf676055c9e7547ff8175e863b94 -SIZE (go/www_s/s-v0.6.9/v0.6.9.mod) = 1450 -SHA256 (go/www_s/s-v0.6.9/v0.6.9.zip) = 0ac6cd0ab8dce5788be34ca826554768ca7c12ea32783d7fbb385f821bc8ca7f -SIZE (go/www_s/s-v0.6.9/v0.6.9.zip) = 113644 +TIMESTAMP = 1714871664 +SHA256 (go/www_s/s-v0.7.0/v0.7.0.mod) = 696b8ab7dd60265c5d77b200eb0a6db2b2c0aba6d3b90c798326bb36ac1c4eec +SIZE (go/www_s/s-v0.7.0/v0.7.0.mod) = 1450 +SHA256 (go/www_s/s-v0.7.0/v0.7.0.zip) = 06fefc4973add6ccaaf753a5c5183fe6e70f25e37e6ee54c12b3cffa602aa084 +SIZE (go/www_s/s-v0.7.0/v0.7.0.zip) = 115106 diff --git a/www/screego/Makefile b/www/screego/Makefile index 003836d2a981..3b0b4520b19e 100644 --- a/www/screego/Makefile +++ b/www/screego/Makefile @@ -1,7 +1,7 @@ PORTNAME= screego DISTVERSIONPREFIX= v DISTVERSION= 1.2.0 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MASTER_SITES= https://registry.yarnpkg.com/:yarn DISTFILES= @babel/code-frame/-/code-frame-7.8.3.tgz:yarn \ @@ -1471,7 +1471,7 @@ DISTFILES= @babel/code-frame/-/code-frame-7.8.3.tgz:yarn \ yargs/-/yargs-13.3.2.tgz:yarn EXTRACT_ONLY= ${DISTFILES:N*\:yarn*:C/:.*$//} -MAINTAINER= 0mp@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Screen sharing server based on WebRTC WWW= https://github.com/screego/server diff --git a/www/seahub/Makefile b/www/seahub/Makefile index e3c773f4fa63..0f5e7022d5a6 100644 --- a/www/seahub/Makefile +++ b/www/seahub/Makefile @@ -2,7 +2,7 @@ PORTNAME= seahub DISTVERSIONPREFIX= v DISTVERSION= ${SEAHUB_VER} DISTVERSIONSUFFIX= -server -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MAINTAINER= ultima@FreeBSD.org @@ -12,11 +12,11 @@ WWW= https://github.com/haiwen/seahub LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE.txt -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} RUN_DEPENDS= bash:shells/bash \ ${LOCALBASE}/www/haiwen/seafile-server/seafile/bin/seaf-server:net-mgmt/seafile-server \ - ${PYTHON_PKGNAMEPREFIX}django32>=0:www/py-django32@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django42>=0:www/py-django42@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-statici18n>=2.3:www/py-django-statici18n@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-webpack-loader>=1.7:www/py-django-webpack-loader@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-picklefield>=3.1:www/py-django-picklefield@${PY_FLAVOR} \ diff --git a/www/shiori/Makefile b/www/shiori/Makefile index 9b11fac7e77f..f53395c522b7 100644 --- a/www/shiori/Makefile +++ b/www/shiori/Makefile @@ -1,6 +1,6 @@ PORTNAME= shiori DISTVERSIONPREFIX= v -DISTVERSION= 1.6.2 +DISTVERSION= 1.6.3 PORTREVISION= 1 CATEGORIES= www diff --git a/www/shiori/distinfo b/www/shiori/distinfo index f459708715b5..64c0e93b84d7 100644 --- a/www/shiori/distinfo +++ b/www/shiori/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1712582950 -SHA256 (go/www_shiori/shiori-v1.6.2/v1.6.2.mod) = 302a9ff607a0ff370f7ce97ac5ad7419ba41f09d9b078a6939bf1b607571e159 -SIZE (go/www_shiori/shiori-v1.6.2/v1.6.2.mod) = 4594 -SHA256 (go/www_shiori/shiori-v1.6.2/v1.6.2.zip) = 8145ed087389c1ebe47fcc554501c328a579911ad0b6b3ff1c83620a770b3abc -SIZE (go/www_shiori/shiori-v1.6.2/v1.6.2.zip) = 7017406 +TIMESTAMP = 1714741446 +SHA256 (go/www_shiori/shiori-v1.6.3/v1.6.3.mod) = 0c663b09297fc4ebab8d7b65d57b59e74876d58c80c8e6d5b15b5f306531ce40 +SIZE (go/www_shiori/shiori-v1.6.3/v1.6.3.mod) = 5003 +SHA256 (go/www_shiori/shiori-v1.6.3/v1.6.3.zip) = e4dbe68fa5a628e6bd8539503dd088474c709d049aa31453b6c9d1ee1c0aad55 +SIZE (go/www_shiori/shiori-v1.6.3/v1.6.3.zip) = 7022398 diff --git a/www/so/Makefile b/www/so/Makefile index 460f224c106d..e583963bc00f 100644 --- a/www/so/Makefile +++ b/www/so/Makefile @@ -1,7 +1,7 @@ PORTNAME= so DISTVERSIONPREFIX= v DISTVERSION= 0.4.6 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= sec.research.2005@gmail.com diff --git a/www/sogo/Makefile b/www/sogo/Makefile index 2951ddb30318..59886b0aeea9 100644 --- a/www/sogo/Makefile +++ b/www/sogo/Makefile @@ -1,5 +1,6 @@ PORTNAME= sogo PORTVERSION= 5.10.0 +PORTREVISION= 1 CATEGORIES= www gnustep MASTER_SITES= https://packages.sogo.nu/sources/ DISTNAME= SOGo-${PORTVERSION} diff --git a/www/sqlpage/Makefile b/www/sqlpage/Makefile index 5e575ae64eee..8b043180f891 100644 --- a/www/sqlpage/Makefile +++ b/www/sqlpage/Makefile @@ -2,7 +2,8 @@ PORTNAME= sqlpage DISTVERSIONPREFIX= v -DISTVERSION= 0.20.4 +DISTVERSION= 0.20.5 +PORTREVISION= 1 CATEGORIES= www databases MASTER_SITES= https://cdn.jsdelivr.net/npm/:npm DISTFILES= ${NPM_DISTFILES} diff --git a/www/sqlpage/Makefile.crates b/www/sqlpage/Makefile.crates index ca8af01f8236..aa8dcc64a568 100644 --- a/www/sqlpage/Makefile.crates +++ b/www/sqlpage/Makefile.crates @@ -22,12 +22,12 @@ CARGO_CRATES= actix-codec-0.5.2 \ allocator-api2-0.2.18 \ android-tzdata-0.1.1 \ android_system_properties-0.1.5 \ - anstream-0.6.13 \ - anstyle-1.0.6 \ - anstyle-parse-0.2.3 \ - anstyle-query-1.0.2 \ - anstyle-wincon-3.0.2 \ - anyhow-1.0.82 \ + anstream-0.6.14 \ + anstyle-1.0.7 \ + anstyle-parse-0.2.4 \ + anstyle-query-1.0.3 \ + anstyle-wincon-3.0.3 \ + anyhow-1.0.83 \ argon2-0.5.3 \ asn1-rs-0.5.2 \ asn1-rs-derive-0.4.0 \ @@ -37,37 +37,37 @@ CARGO_CRATES= actix-codec-0.5.2 \ async-io-2.3.2 \ async-lock-3.3.0 \ async-net-2.0.0 \ - async-recursion-1.1.0 \ + async-recursion-1.1.1 \ async-stream-0.3.5 \ async-stream-impl-0.3.5 \ - async-task-4.7.0 \ + async-task-4.7.1 \ async-trait-0.1.80 \ async-web-client-0.5.1 \ atoi-2.0.0 \ atomic-waker-1.1.2 \ - autocfg-1.2.0 \ + autocfg-1.3.0 \ awc-3.4.0 \ backtrace-0.3.71 \ base64-0.13.1 \ base64-0.21.7 \ - base64-0.22.0 \ + base64-0.22.1 \ base64ct-1.6.0 \ bitflags-1.3.2 \ bitflags-2.5.0 \ blake2-0.10.6 \ block-buffer-0.10.4 \ - blocking-1.5.1 \ + blocking-1.6.0 \ brotli-3.5.0 \ brotli-decompressor-2.5.1 \ bumpalo-3.16.0 \ byteorder-1.5.0 \ bytes-1.6.0 \ bytestring-1.3.1 \ - cc-1.0.95 \ + cc-1.0.97 \ cfg-if-1.0.0 \ chrono-0.4.38 \ - colorchoice-1.0.0 \ - concurrent-queue-2.4.0 \ + colorchoice-1.0.1 \ + concurrent-queue-2.5.0 \ config-0.14.0 \ const-oid-0.9.6 \ const-random-0.1.18 \ @@ -91,7 +91,7 @@ CARGO_CRATES= actix-codec-0.5.2 \ darling_core-0.20.8 \ darling_macro-0.20.8 \ dary_heap-0.3.6 \ - data-encoding-2.5.0 \ + data-encoding-2.6.0 \ der-0.7.9 \ der-parser-8.2.0 \ deranged-0.3.11 \ @@ -107,15 +107,15 @@ CARGO_CRATES= actix-codec-0.5.2 \ env_filter-0.1.0 \ env_logger-0.11.3 \ equivalent-1.0.1 \ - errno-0.3.8 \ + errno-0.3.9 \ event-listener-3.1.0 \ event-listener-4.0.3 \ event-listener-5.3.0 \ event-listener-strategy-0.4.0 \ - event-listener-strategy-0.5.1 \ - fastrand-2.0.2 \ + event-listener-strategy-0.5.2 \ + fastrand-2.1.0 \ finl_unicode-1.2.0 \ - flate2-1.0.28 \ + flate2-1.0.30 \ flume-0.11.0 \ fnv-1.0.7 \ form_urlencoded-1.2.1 \ @@ -132,16 +132,16 @@ CARGO_CRATES= actix-codec-0.5.2 \ futures-task-0.3.30 \ futures-util-0.3.30 \ generic-array-0.14.7 \ - getrandom-0.2.14 \ + getrandom-0.2.15 \ gimli-0.28.1 \ gloo-net-0.2.6 \ gloo-utils-0.1.7 \ h2-0.3.26 \ handlebars-5.1.2 \ hashbrown-0.13.2 \ - hashbrown-0.14.3 \ - hashlink-0.8.4 \ - heck-0.4.1 \ + hashbrown-0.14.5 \ + hashlink-0.9.0 \ + heck-0.5.0 \ hermit-abi-0.3.9 \ hex-0.4.3 \ hkdf-0.12.4 \ @@ -161,6 +161,7 @@ CARGO_CRATES= actix-codec-0.5.2 \ include_dir-0.7.3 \ include_dir_macros-0.7.3 \ indexmap-2.2.6 \ + is_terminal_polyfill-1.70.0 \ itertools-0.12.1 \ itoa-1.0.11 \ jobserver-0.1.31 \ @@ -171,9 +172,9 @@ CARGO_CRATES= actix-codec-0.5.2 \ lambda_runtime_api_client-0.7.0 \ language-tags-0.3.2 \ lazy_static-1.4.0 \ - libc-0.2.153 \ - libflate-2.0.0 \ - libflate_lz77-2.0.0 \ + libc-0.2.154 \ + libflate-2.1.0 \ + libflate_lz77-2.1.0 \ libm-0.2.8 \ libredox-0.1.3 \ libsqlite3-sys-0.28.0 \ @@ -181,9 +182,9 @@ CARGO_CRATES= actix-codec-0.5.2 \ linux-raw-sys-0.4.13 \ local-channel-0.1.5 \ local-waker-0.1.4 \ - lock_api-0.4.11 \ + lock_api-0.4.12 \ log-0.4.21 \ - markdown-1.0.0-alpha.16 \ + markdown-1.0.0-alpha.17 \ md-5-0.10.6 \ memchr-2.7.2 \ mime-0.3.17 \ @@ -192,12 +193,12 @@ CARGO_CRATES= actix-codec-0.5.2 \ miniz_oxide-0.7.2 \ mio-0.8.11 \ nom-7.1.3 \ - num-bigint-0.4.4 \ + num-bigint-0.4.5 \ num-bigint-dig-0.8.4 \ num-conv-0.1.0 \ num-integer-0.1.46 \ - num-iter-0.1.44 \ - num-traits-0.2.18 \ + num-iter-0.1.45 \ + num-traits-0.2.19 \ num_cpus-1.16.0 \ object-0.32.2 \ oid-registry-0.6.1 \ @@ -205,19 +206,19 @@ CARGO_CRATES= actix-codec-0.5.2 \ option-ext-0.2.0 \ ordered-multimap-0.6.0 \ parking-2.2.0 \ - parking_lot-0.12.1 \ - parking_lot_core-0.9.9 \ + parking_lot-0.12.2 \ + parking_lot_core-0.9.10 \ parse-size-1.0.0 \ password-hash-0.5.0 \ - paste-1.0.14 \ + paste-1.0.15 \ pathdiff-0.2.1 \ pem-3.0.4 \ pem-rfc7468-0.7.0 \ percent-encoding-2.3.1 \ - pest-2.7.9 \ - pest_derive-2.7.9 \ - pest_generator-2.7.9 \ - pest_meta-2.7.9 \ + pest-2.7.10 \ + pest_derive-2.7.10 \ + pest_generator-2.7.10 \ + pest_meta-2.7.10 \ pin-project-1.1.5 \ pin-project-internal-1.1.5 \ pin-project-lite-0.2.14 \ @@ -229,13 +230,14 @@ CARGO_CRATES= actix-codec-0.5.2 \ polling-3.7.0 \ powerfmt-0.2.0 \ ppv-lite86-0.2.17 \ - proc-macro2-1.0.81 \ + proc-macro2-1.0.82 \ quote-1.0.36 \ rand-0.8.5 \ rand_chacha-0.3.1 \ rand_core-0.6.4 \ rcgen-0.12.1 \ redox_syscall-0.4.1 \ + redox_syscall-0.5.1 \ redox_users-0.4.5 \ regex-1.10.4 \ regex-automata-0.4.6 \ @@ -245,21 +247,21 @@ CARGO_CRATES= actix-codec-0.5.2 \ ron-0.8.1 \ rsa-0.9.6 \ rust-ini-0.19.0 \ - rustc-demangle-0.1.23 \ + rustc-demangle-0.1.24 \ rustc_version-0.4.0 \ rusticata-macros-4.1.0 \ rustix-0.38.34 \ rustls-0.22.4 \ rustls-acme-0.9.2 \ rustls-pemfile-2.1.2 \ - rustls-pki-types-1.4.1 \ + rustls-pki-types-1.7.0 \ rustls-webpki-0.102.3 \ - ryu-1.0.17 \ + ryu-1.0.18 \ scopeguard-1.2.0 \ - semver-1.0.22 \ - serde-1.0.198 \ - serde_derive-1.0.198 \ - serde_json-1.0.116 \ + semver-1.0.23 \ + serde-1.0.201 \ + serde_derive-1.0.201 \ + serde_json-1.0.117 \ serde_plain-1.0.2 \ serde_spanned-0.6.5 \ serde_urlencoded-0.7.1 \ @@ -269,26 +271,26 @@ CARGO_CRATES= actix-codec-0.5.2 \ signature-2.2.0 \ slab-0.4.9 \ smallvec-1.13.2 \ - socket2-0.5.6 \ + socket2-0.5.7 \ spin-0.5.2 \ spin-0.9.8 \ spki-0.7.3 \ sqlformat-0.2.3 \ - sqlparser-0.45.0 \ + sqlparser-0.46.0 \ sqlparser_derive-0.2.2 \ - sqlx-core-oldapi-0.6.20 \ - sqlx-macros-oldapi-0.6.20 \ - sqlx-oldapi-0.6.20 \ - sqlx-rt-oldapi-0.6.20 \ + sqlx-core-oldapi-0.6.22 \ + sqlx-macros-oldapi-0.6.22 \ + sqlx-oldapi-0.6.22 \ + sqlx-rt-oldapi-0.6.22 \ stringprep-0.1.4 \ strsim-0.10.0 \ subtle-2.5.0 \ syn-1.0.109 \ - syn-2.0.60 \ + syn-2.0.61 \ synstructure-0.12.6 \ tempfile-3.10.1 \ - thiserror-1.0.59 \ - thiserror-impl-1.0.59 \ + thiserror-1.0.60 \ + thiserror-impl-1.0.60 \ time-0.3.36 \ time-core-0.1.2 \ time-macros-0.2.18 \ @@ -299,7 +301,7 @@ CARGO_CRATES= actix-codec-0.5.2 \ tokio-macros-2.2.0 \ tokio-rustls-0.25.0 \ tokio-stream-0.1.15 \ - tokio-util-0.7.10 \ + tokio-util-0.7.11 \ toml-0.8.12 \ toml_datetime-0.6.5 \ toml_edit-0.22.12 \ @@ -358,12 +360,12 @@ CARGO_CRATES= actix-codec-0.5.2 \ windows_x86_64_gnullvm-0.52.5 \ windows_x86_64_msvc-0.48.5 \ windows_x86_64_msvc-0.52.5 \ - winnow-0.6.6 \ + winnow-0.6.8 \ x509-parser-0.15.1 \ yaml-rust-0.4.5 \ yasna-0.5.2 \ - zerocopy-0.7.32 \ - zerocopy-derive-0.7.32 \ + zerocopy-0.7.34 \ + zerocopy-derive-0.7.34 \ zeroize-1.7.0 \ zstd-0.13.1 \ zstd-safe-7.1.0 \ diff --git a/www/sqlpage/distinfo b/www/sqlpage/distinfo index 900d25688a15..573dab1aad8f 100644 --- a/www/sqlpage/distinfo +++ b/www/sqlpage/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1713861564 +TIMESTAMP = 1715336106 SHA256 (apexcharts@3.47.0/dist/apexcharts.min.js) = 4ad143755f8347dc88b5b0970064cae8451cbbad77377bccd22e6782b619973e SIZE (apexcharts@3.47.0/dist/apexcharts.min.js) = 525068 SHA256 (@tabler/core@1.0.0-beta20/dist/css/tabler.min.css) = 952de72b130c6622884491bb5205289ce1d8baf1e05b979c9048ef1cc6316fd4 @@ -61,18 +61,18 @@ SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 -SHA256 (rust/crates/anstream-0.6.13.crate) = d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb -SIZE (rust/crates/anstream-0.6.13.crate) = 30928 -SHA256 (rust/crates/anstyle-1.0.6.crate) = 8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc -SIZE (rust/crates/anstyle-1.0.6.crate) = 14604 -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.82.crate) = f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519 -SIZE (rust/crates/anyhow-1.0.82.crate) = 45361 +SHA256 (rust/crates/anstream-0.6.14.crate) = 418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b +SIZE (rust/crates/anstream-0.6.14.crate) = 29160 +SHA256 (rust/crates/anstyle-1.0.7.crate) = 038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b +SIZE (rust/crates/anstyle-1.0.7.crate) = 15709 +SHA256 (rust/crates/anstyle-parse-0.2.4.crate) = c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4 +SIZE (rust/crates/anstyle-parse-0.2.4.crate) = 23069 +SHA256 (rust/crates/anstyle-query-1.0.3.crate) = a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5 +SIZE (rust/crates/anstyle-query-1.0.3.crate) = 9742 +SHA256 (rust/crates/anstyle-wincon-3.0.3.crate) = 61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19 +SIZE (rust/crates/anstyle-wincon-3.0.3.crate) = 12179 +SHA256 (rust/crates/anyhow-1.0.83.crate) = 25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3 +SIZE (rust/crates/anyhow-1.0.83.crate) = 45650 SHA256 (rust/crates/argon2-0.5.3.crate) = 3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072 SIZE (rust/crates/argon2-0.5.3.crate) = 28795 SHA256 (rust/crates/asn1-rs-0.5.2.crate) = 7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0 @@ -91,14 +91,14 @@ SHA256 (rust/crates/async-lock-3.3.0.crate) = d034b430882f8381900d3fe6f0aaa3ad94 SIZE (rust/crates/async-lock-3.3.0.crate) = 33286 SHA256 (rust/crates/async-net-2.0.0.crate) = b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7 SIZE (rust/crates/async-net-2.0.0.crate) = 17787 -SHA256 (rust/crates/async-recursion-1.1.0.crate) = 30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5 -SIZE (rust/crates/async-recursion-1.1.0.crate) = 14982 +SHA256 (rust/crates/async-recursion-1.1.1.crate) = 3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11 +SIZE (rust/crates/async-recursion-1.1.1.crate) = 14874 SHA256 (rust/crates/async-stream-0.3.5.crate) = cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51 SIZE (rust/crates/async-stream-0.3.5.crate) = 11916 SHA256 (rust/crates/async-stream-impl-0.3.5.crate) = 16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193 SIZE (rust/crates/async-stream-impl-0.3.5.crate) = 4173 -SHA256 (rust/crates/async-task-4.7.0.crate) = fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799 -SIZE (rust/crates/async-task-4.7.0.crate) = 38906 +SHA256 (rust/crates/async-task-4.7.1.crate) = 8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de +SIZE (rust/crates/async-task-4.7.1.crate) = 38077 SHA256 (rust/crates/async-trait-0.1.80.crate) = c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca SIZE (rust/crates/async-trait-0.1.80.crate) = 28775 SHA256 (rust/crates/async-web-client-0.5.1.crate) = a820ef79f63962244fc33d3f17dafb41f1c6bb9754de97c3c09c57c1b8a360ce @@ -107,8 +107,8 @@ SHA256 (rust/crates/atoi-2.0.0.crate) = f28d99ec8bfea296261ca1af174f24225171fea9 SIZE (rust/crates/atoi-2.0.0.crate) = 7785 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.2.0.crate) = f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80 -SIZE (rust/crates/autocfg-1.2.0.crate) = 14808 +SHA256 (rust/crates/autocfg-1.3.0.crate) = 0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0 +SIZE (rust/crates/autocfg-1.3.0.crate) = 16524 SHA256 (rust/crates/awc-3.4.0.crate) = 68c09cc97310b926f01621faee652f3d1b0962545a3cec6c9ac07def9ea36c2c SIZE (rust/crates/awc-3.4.0.crate) = 75016 SHA256 (rust/crates/backtrace-0.3.71.crate) = 26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d @@ -117,8 +117,8 @@ SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71 SIZE (rust/crates/base64-0.13.1.crate) = 61002 SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 SIZE (rust/crates/base64-0.21.7.crate) = 82576 -SHA256 (rust/crates/base64-0.22.0.crate) = 9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51 -SIZE (rust/crates/base64-0.22.0.crate) = 81568 +SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 +SIZE (rust/crates/base64-0.22.1.crate) = 81597 SHA256 (rust/crates/base64ct-1.6.0.crate) = 8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b SIZE (rust/crates/base64ct-1.6.0.crate) = 28870 SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a @@ -129,8 +129,8 @@ SHA256 (rust/crates/blake2-0.10.6.crate) = 46502ad458c9a52b69d4d4d32775c788b7a1b SIZE (rust/crates/blake2-0.10.6.crate) = 47234 SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 -SHA256 (rust/crates/blocking-1.5.1.crate) = 6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118 -SIZE (rust/crates/blocking-1.5.1.crate) = 17277 +SHA256 (rust/crates/blocking-1.6.0.crate) = 495f7104e962b7356f0aeb34247aca1fe7d2e783b346582db7f2904cb5717e88 +SIZE (rust/crates/blocking-1.6.0.crate) = 17696 SHA256 (rust/crates/brotli-3.5.0.crate) = d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391 SIZE (rust/crates/brotli-3.5.0.crate) = 1390231 SHA256 (rust/crates/brotli-decompressor-2.5.1.crate) = 4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f @@ -143,16 +143,16 @@ SHA256 (rust/crates/bytes-1.6.0.crate) = 514de17de45fdb8dc022b1a7975556c53c86f9f SIZE (rust/crates/bytes-1.6.0.crate) = 60605 SHA256 (rust/crates/bytestring-1.3.1.crate) = 74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72 SIZE (rust/crates/bytestring-1.3.1.crate) = 9142 -SHA256 (rust/crates/cc-1.0.95.crate) = d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b -SIZE (rust/crates/cc-1.0.95.crate) = 76485 +SHA256 (rust/crates/cc-1.0.97.crate) = 099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4 +SIZE (rust/crates/cc-1.0.97.crate) = 76951 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 SHA256 (rust/crates/chrono-0.4.38.crate) = a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401 SIZE (rust/crates/chrono-0.4.38.crate) = 220559 -SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7 -SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857 -SHA256 (rust/crates/concurrent-queue-2.4.0.crate) = d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363 -SIZE (rust/crates/concurrent-queue-2.4.0.crate) = 20244 +SHA256 (rust/crates/colorchoice-1.0.1.crate) = 0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422 +SIZE (rust/crates/colorchoice-1.0.1.crate) = 7895 +SHA256 (rust/crates/concurrent-queue-2.5.0.crate) = 4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973 +SIZE (rust/crates/concurrent-queue-2.5.0.crate) = 22654 SHA256 (rust/crates/config-0.14.0.crate) = 7328b20597b53c2454f0b1919720c25c7339051c02b72b7e05409e00b14132be SIZE (rust/crates/config-0.14.0.crate) = 79442 SHA256 (rust/crates/const-oid-0.9.6.crate) = c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8 @@ -199,8 +199,8 @@ SHA256 (rust/crates/darling_macro-0.20.8.crate) = a668eda54683121533a393014d8692 SIZE (rust/crates/darling_macro-0.20.8.crate) = 1856 SHA256 (rust/crates/dary_heap-0.3.6.crate) = 7762d17f1241643615821a8455a0b2c3e803784b058693d990b11f2dce25a0ca SIZE (rust/crates/dary_heap-0.3.6.crate) = 23683 -SHA256 (rust/crates/data-encoding-2.5.0.crate) = 7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5 -SIZE (rust/crates/data-encoding-2.5.0.crate) = 20632 +SHA256 (rust/crates/data-encoding-2.6.0.crate) = e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2 +SIZE (rust/crates/data-encoding-2.6.0.crate) = 20769 SHA256 (rust/crates/der-0.7.9.crate) = f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0 SIZE (rust/crates/der-0.7.9.crate) = 85173 SHA256 (rust/crates/der-parser-8.2.0.crate) = dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e @@ -231,8 +231,8 @@ SHA256 (rust/crates/env_logger-0.11.3.crate) = 38b35839ba51819680ba087cd351788c9 SIZE (rust/crates/env_logger-0.11.3.crate) = 29704 SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 -SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 -SIZE (rust/crates/errno-0.3.8.crate) = 10645 +SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba +SIZE (rust/crates/errno-0.3.9.crate) = 10690 SHA256 (rust/crates/event-listener-3.1.0.crate) = d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2 SIZE (rust/crates/event-listener-3.1.0.crate) = 38793 SHA256 (rust/crates/event-listener-4.0.3.crate) = 67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e @@ -241,14 +241,14 @@ SHA256 (rust/crates/event-listener-5.3.0.crate) = 6d9944b8ca13534cdfb2800775f8dd SIZE (rust/crates/event-listener-5.3.0.crate) = 43084 SHA256 (rust/crates/event-listener-strategy-0.4.0.crate) = 958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3 SIZE (rust/crates/event-listener-strategy-0.4.0.crate) = 10225 -SHA256 (rust/crates/event-listener-strategy-0.5.1.crate) = 332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3 -SIZE (rust/crates/event-listener-strategy-0.5.1.crate) = 10656 -SHA256 (rust/crates/fastrand-2.0.2.crate) = 658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984 -SIZE (rust/crates/fastrand-2.0.2.crate) = 14674 +SHA256 (rust/crates/event-listener-strategy-0.5.2.crate) = 0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1 +SIZE (rust/crates/event-listener-strategy-0.5.2.crate) = 10697 +SHA256 (rust/crates/fastrand-2.1.0.crate) = 9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a +SIZE (rust/crates/fastrand-2.1.0.crate) = 14907 SHA256 (rust/crates/finl_unicode-1.2.0.crate) = 8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6 SIZE (rust/crates/finl_unicode-1.2.0.crate) = 687752 -SHA256 (rust/crates/flate2-1.0.28.crate) = 46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e -SIZE (rust/crates/flate2-1.0.28.crate) = 73690 +SHA256 (rust/crates/flate2-1.0.30.crate) = 5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae +SIZE (rust/crates/flate2-1.0.30.crate) = 75511 SHA256 (rust/crates/flume-0.11.0.crate) = 55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181 SIZE (rust/crates/flume-0.11.0.crate) = 67502 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 @@ -281,8 +281,8 @@ SHA256 (rust/crates/futures-util-0.3.30.crate) = 3d6401deb83407ab3da39eba7e33987 SIZE (rust/crates/futures-util-0.3.30.crate) = 159977 SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 -SHA256 (rust/crates/getrandom-0.2.14.crate) = 94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c -SIZE (rust/crates/getrandom-0.2.14.crate) = 37307 +SHA256 (rust/crates/getrandom-0.2.15.crate) = c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7 +SIZE (rust/crates/getrandom-0.2.15.crate) = 37163 SHA256 (rust/crates/gimli-0.28.1.crate) = 4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253 SIZE (rust/crates/gimli-0.28.1.crate) = 270497 SHA256 (rust/crates/gloo-net-0.2.6.crate) = 9902a044653b26b99f7e3693a42f171312d9be8b26b5697bd1e43ad1f8a35e10 @@ -295,12 +295,12 @@ SHA256 (rust/crates/handlebars-5.1.2.crate) = d08485b96a0e6393e9e4d1b8d48cf74ad6 SIZE (rust/crates/handlebars-5.1.2.crate) = 98550 SHA256 (rust/crates/hashbrown-0.13.2.crate) = 43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e SIZE (rust/crates/hashbrown-0.13.2.crate) = 105265 -SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604 -SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425 -SHA256 (rust/crates/hashlink-0.8.4.crate) = e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7 -SIZE (rust/crates/hashlink-0.8.4.crate) = 26514 -SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8 -SIZE (rust/crates/heck-0.4.1.crate) = 11567 +SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 +SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498 +SHA256 (rust/crates/hashlink-0.9.0.crate) = 692eaaf7f7607518dd3cef090f1474b61edc5301d8012f09579920df68b725ee +SIZE (rust/crates/hashlink-0.9.0.crate) = 26390 +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/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 @@ -339,6 +339,8 @@ SHA256 (rust/crates/include_dir_macros-0.7.3.crate) = b139284b5cf57ecfa712bcc669 SIZE (rust/crates/include_dir_macros-0.7.3.crate) = 3700 SHA256 (rust/crates/indexmap-2.2.6.crate) = 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 SIZE (rust/crates/indexmap-2.2.6.crate) = 82420 +SHA256 (rust/crates/is_terminal_polyfill-1.70.0.crate) = f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800 +SIZE (rust/crates/is_terminal_polyfill-1.70.0.crate) = 7451 SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569 SIZE (rust/crates/itertools-0.12.1.crate) = 137761 SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b @@ -359,12 +361,12 @@ SHA256 (rust/crates/language-tags-0.3.2.crate) = d4345964bb142484797b161f473a503 SIZE (rust/crates/language-tags-0.3.2.crate) = 53420 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.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd -SIZE (rust/crates/libc-0.2.153.crate) = 740614 -SHA256 (rust/crates/libflate-2.0.0.crate) = 9f7d5654ae1795afc7ff76f4365c2c8791b0feb18e8996a96adad8ffd7c3b2bf -SIZE (rust/crates/libflate-2.0.0.crate) = 42505 -SHA256 (rust/crates/libflate_lz77-2.0.0.crate) = be5f52fb8c451576ec6b79d3f4deb327398bc05bbdbd99021a6e77a4c855d524 -SIZE (rust/crates/libflate_lz77-2.0.0.crate) = 5893 +SHA256 (rust/crates/libc-0.2.154.crate) = ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346 +SIZE (rust/crates/libc-0.2.154.crate) = 743304 +SHA256 (rust/crates/libflate-2.1.0.crate) = 45d9dfdc14ea4ef0900c1cddbc8dcd553fbaacd8a4a282cf4018ae9dd04fb21e +SIZE (rust/crates/libflate-2.1.0.crate) = 43366 +SHA256 (rust/crates/libflate_lz77-2.1.0.crate) = e6e0d73b369f386f1c44abd9c570d5318f55ccde816ff4b562fa452e5182863d +SIZE (rust/crates/libflate_lz77-2.1.0.crate) = 5918 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 @@ -379,12 +381,12 @@ SHA256 (rust/crates/local-channel-0.1.5.crate) = b6cbc85e69b8df4b8bb8b89ec634e71 SIZE (rust/crates/local-channel-0.1.5.crate) = 7881 SHA256 (rust/crates/local-waker-0.1.4.crate) = 4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487 SIZE (rust/crates/local-waker-0.1.4.crate) = 6730 -SHA256 (rust/crates/lock_api-0.4.11.crate) = 3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45 -SIZE (rust/crates/lock_api-0.4.11.crate) = 27487 +SHA256 (rust/crates/lock_api-0.4.12.crate) = 07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17 +SIZE (rust/crates/lock_api-0.4.12.crate) = 27591 SHA256 (rust/crates/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c SIZE (rust/crates/log-0.4.21.crate) = 43442 -SHA256 (rust/crates/markdown-1.0.0-alpha.16.crate) = 5b0f0025e8c0d89b84d6dc63e859475e40e8e82ab1a08be0a93ad5731513a508 -SIZE (rust/crates/markdown-1.0.0-alpha.16.crate) = 193486 +SHA256 (rust/crates/markdown-1.0.0-alpha.17.crate) = 21e27d6220ce21f80ce5c4201f23a37c6f1ad037c72c9d1ff215c2919605a5d6 +SIZE (rust/crates/markdown-1.0.0-alpha.17.crate) = 214953 SHA256 (rust/crates/md-5-0.10.6.crate) = d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf SIZE (rust/crates/md-5-0.10.6.crate) = 16161 SHA256 (rust/crates/memchr-2.7.2.crate) = 6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d @@ -401,18 +403,18 @@ SHA256 (rust/crates/mio-0.8.11.crate) = a4a650543ca06a924e8b371db273b2756685faae SIZE (rust/crates/mio-0.8.11.crate) = 102983 SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a SIZE (rust/crates/nom-7.1.3.crate) = 117570 -SHA256 (rust/crates/num-bigint-0.4.4.crate) = 608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0 -SIZE (rust/crates/num-bigint-0.4.4.crate) = 99369 +SHA256 (rust/crates/num-bigint-0.4.5.crate) = c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7 +SIZE (rust/crates/num-bigint-0.4.5.crate) = 102281 SHA256 (rust/crates/num-bigint-dig-0.8.4.crate) = dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151 SIZE (rust/crates/num-bigint-dig-0.8.4.crate) = 123825 SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9 SIZE (rust/crates/num-conv-0.1.0.crate) = 7444 SHA256 (rust/crates/num-integer-0.1.46.crate) = 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f SIZE (rust/crates/num-integer-0.1.46.crate) = 22331 -SHA256 (rust/crates/num-iter-0.1.44.crate) = d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9 -SIZE (rust/crates/num-iter-0.1.44.crate) = 10249 -SHA256 (rust/crates/num-traits-0.2.18.crate) = da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a -SIZE (rust/crates/num-traits-0.2.18.crate) = 51930 +SHA256 (rust/crates/num-iter-0.1.45.crate) = 1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf +SIZE (rust/crates/num-iter-0.1.45.crate) = 10320 +SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 +SIZE (rust/crates/num-traits-0.2.19.crate) = 51631 SHA256 (rust/crates/num_cpus-1.16.0.crate) = 4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43 SIZE (rust/crates/num_cpus-1.16.0.crate) = 15713 SHA256 (rust/crates/object-0.32.2.crate) = a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441 @@ -427,16 +429,16 @@ SHA256 (rust/crates/ordered-multimap-0.6.0.crate) = 4ed8acf08e98e744e5384c8bc63c SIZE (rust/crates/ordered-multimap-0.6.0.crate) = 23158 SHA256 (rust/crates/parking-2.2.0.crate) = bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae SIZE (rust/crates/parking-2.2.0.crate) = 9730 -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/parking_lot-0.12.2.crate) = 7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb +SIZE (rust/crates/parking_lot-0.12.2.crate) = 41723 +SHA256 (rust/crates/parking_lot_core-0.9.10.crate) = 1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8 +SIZE (rust/crates/parking_lot_core-0.9.10.crate) = 32406 SHA256 (rust/crates/parse-size-1.0.0.crate) = 944553dd59c802559559161f9816429058b869003836120e262e8caec061b7ae SIZE (rust/crates/parse-size-1.0.0.crate) = 6588 SHA256 (rust/crates/password-hash-0.5.0.crate) = 346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166 SIZE (rust/crates/password-hash-0.5.0.crate) = 26884 -SHA256 (rust/crates/paste-1.0.14.crate) = de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c -SIZE (rust/crates/paste-1.0.14.crate) = 18157 +SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a +SIZE (rust/crates/paste-1.0.15.crate) = 18374 SHA256 (rust/crates/pathdiff-0.2.1.crate) = 8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd SIZE (rust/crates/pathdiff-0.2.1.crate) = 7142 SHA256 (rust/crates/pem-3.0.4.crate) = 8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae @@ -445,14 +447,14 @@ SHA256 (rust/crates/pem-rfc7468-0.7.0.crate) = 88b39c9bfcfc231068454382784bb460a SIZE (rust/crates/pem-rfc7468-0.7.0.crate) = 24159 SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 -SHA256 (rust/crates/pest-2.7.9.crate) = 311fb059dee1a7b802f036316d790138c613a4e8b180c822e3925a662e9f0c95 -SIZE (rust/crates/pest-2.7.9.crate) = 123517 -SHA256 (rust/crates/pest_derive-2.7.9.crate) = f73541b156d32197eecda1a4014d7f868fd2bcb3c550d5386087cfba442bf69c -SIZE (rust/crates/pest_derive-2.7.9.crate) = 36139 -SHA256 (rust/crates/pest_generator-2.7.9.crate) = c35eeed0a3fab112f75165fdc026b3913f4183133f19b49be773ac9ea966e8bd -SIZE (rust/crates/pest_generator-2.7.9.crate) = 18412 -SHA256 (rust/crates/pest_meta-2.7.9.crate) = 2adbf29bb9776f28caece835398781ab24435585fe0d4dc1374a61db5accedca -SIZE (rust/crates/pest_meta-2.7.9.crate) = 41547 +SHA256 (rust/crates/pest-2.7.10.crate) = 560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8 +SIZE (rust/crates/pest-2.7.10.crate) = 123707 +SHA256 (rust/crates/pest_derive-2.7.10.crate) = 26293c9193fbca7b1a3bf9b79dc1e388e927e6cacaa78b4a3ab705a1d3d41459 +SIZE (rust/crates/pest_derive-2.7.10.crate) = 36221 +SHA256 (rust/crates/pest_generator-2.7.10.crate) = 3ec22af7d3fb470a85dd2ca96b7c577a1eb4ef6f1683a9fe9a8c16e136c04687 +SIZE (rust/crates/pest_generator-2.7.10.crate) = 18411 +SHA256 (rust/crates/pest_meta-2.7.10.crate) = d7a240022f37c361ec1878d646fc5b7d7c4d28d5946e1a80ad5a7a4f4ca0bdcd +SIZE (rust/crates/pest_meta-2.7.10.crate) = 41550 SHA256 (rust/crates/pin-project-1.1.5.crate) = b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3 SIZE (rust/crates/pin-project-1.1.5.crate) = 54214 SHA256 (rust/crates/pin-project-internal-1.1.5.crate) = 2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965 @@ -475,8 +477,8 @@ SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff9416 SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165 SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 -SHA256 (rust/crates/proc-macro2-1.0.81.crate) = 3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba -SIZE (rust/crates/proc-macro2-1.0.81.crate) = 48233 +SHA256 (rust/crates/proc-macro2-1.0.82.crate) = 8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b +SIZE (rust/crates/proc-macro2-1.0.82.crate) = 48452 SHA256 (rust/crates/quote-1.0.36.crate) = 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7 SIZE (rust/crates/quote-1.0.36.crate) = 28507 SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404 @@ -489,6 +491,8 @@ SHA256 (rust/crates/rcgen-0.12.1.crate) = 48406db8ac1f3cbc7dcdb56ec355343817958a SIZE (rust/crates/rcgen-0.12.1.crate) = 63815 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.1.crate) = 469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e +SIZE (rust/crates/redox_syscall-0.5.1.crate) = 22536 SHA256 (rust/crates/redox_users-0.4.5.crate) = bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891 SIZE (rust/crates/redox_users-0.4.5.crate) = 15514 SHA256 (rust/crates/regex-1.10.4.crate) = c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c @@ -507,8 +511,8 @@ SHA256 (rust/crates/rsa-0.9.6.crate) = 5d0e5124fcb30e76a7e79bfee683a2746db83784b SIZE (rust/crates/rsa-0.9.6.crate) = 80048 SHA256 (rust/crates/rust-ini-0.19.0.crate) = 7e2a3bcec1f113553ef1c88aae6c020a369d03d55b58de9869a0908930385091 SIZE (rust/crates/rust-ini-0.19.0.crate) = 18328 -SHA256 (rust/crates/rustc-demangle-0.1.23.crate) = d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76 -SIZE (rust/crates/rustc-demangle-0.1.23.crate) = 28970 +SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f +SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047 SHA256 (rust/crates/rustc_version-0.4.0.crate) = bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366 SIZE (rust/crates/rustc_version-0.4.0.crate) = 12175 SHA256 (rust/crates/rusticata-macros-4.1.0.crate) = faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632 @@ -521,22 +525,22 @@ SHA256 (rust/crates/rustls-acme-0.9.2.crate) = 9f6de93ea3b4a88a9048f753f6db50242 SIZE (rust/crates/rustls-acme-0.9.2.crate) = 43768 SHA256 (rust/crates/rustls-pemfile-2.1.2.crate) = 29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d SIZE (rust/crates/rustls-pemfile-2.1.2.crate) = 25928 -SHA256 (rust/crates/rustls-pki-types-1.4.1.crate) = ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247 -SIZE (rust/crates/rustls-pki-types-1.4.1.crate) = 29437 +SHA256 (rust/crates/rustls-pki-types-1.7.0.crate) = 976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d +SIZE (rust/crates/rustls-pki-types-1.7.0.crate) = 29555 SHA256 (rust/crates/rustls-webpki-0.102.3.crate) = f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf SIZE (rust/crates/rustls-webpki-0.102.3.crate) = 197543 -SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1 -SIZE (rust/crates/ryu-1.0.17.crate) = 47537 +SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f +SIZE (rust/crates/ryu-1.0.18.crate) = 47713 SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 -SHA256 (rust/crates/semver-1.0.22.crate) = 92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca -SIZE (rust/crates/semver-1.0.22.crate) = 30446 -SHA256 (rust/crates/serde-1.0.198.crate) = 9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc -SIZE (rust/crates/serde-1.0.198.crate) = 77577 -SHA256 (rust/crates/serde_derive-1.0.198.crate) = e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9 -SIZE (rust/crates/serde_derive-1.0.198.crate) = 55787 -SHA256 (rust/crates/serde_json-1.0.116.crate) = 3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813 -SIZE (rust/crates/serde_json-1.0.116.crate) = 146790 +SHA256 (rust/crates/semver-1.0.23.crate) = 61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b +SIZE (rust/crates/semver-1.0.23.crate) = 30622 +SHA256 (rust/crates/serde-1.0.201.crate) = 780f1cebed1629e4753a1a38a3c72d30b97ec044f0aef68cb26650a3c5cf363c +SIZE (rust/crates/serde-1.0.201.crate) = 77725 +SHA256 (rust/crates/serde_derive-1.0.201.crate) = c5e405930b9796f1c00bee880d03fc7e0bb4b9a11afc776885ffe84320da2865 +SIZE (rust/crates/serde_derive-1.0.201.crate) = 55865 +SHA256 (rust/crates/serde_json-1.0.117.crate) = 455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3 +SIZE (rust/crates/serde_json-1.0.117.crate) = 146921 SHA256 (rust/crates/serde_plain-1.0.2.crate) = 9ce1fc6db65a611022b23a0dec6975d63fb80a302cb3388835ff02c097258d50 SIZE (rust/crates/serde_plain-1.0.2.crate) = 11183 SHA256 (rust/crates/serde_spanned-0.6.5.crate) = eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1 @@ -555,8 +559,8 @@ SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0b 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.6.crate) = 05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871 -SIZE (rust/crates/socket2-0.5.6.crate) = 55270 +SHA256 (rust/crates/socket2-0.5.7.crate) = ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c +SIZE (rust/crates/socket2-0.5.7.crate) = 55758 SHA256 (rust/crates/spin-0.5.2.crate) = 6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d SIZE (rust/crates/spin-0.5.2.crate) = 12004 SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 @@ -565,18 +569,18 @@ SHA256 (rust/crates/spki-0.7.3.crate) = d91ed6c858b01f942cd56b37a94b3e0a17982903 SIZE (rust/crates/spki-0.7.3.crate) = 16409 SHA256 (rust/crates/sqlformat-0.2.3.crate) = ce81b7bd7c4493975347ef60d8c7e8b742d4694f4c49f93e0a12ea263938176c SIZE (rust/crates/sqlformat-0.2.3.crate) = 21878 -SHA256 (rust/crates/sqlparser-0.45.0.crate) = f7bbffee862a796d67959a89859d6b1046bb5016d63e23835ad0da182777bbe0 -SIZE (rust/crates/sqlparser-0.45.0.crate) = 182846 +SHA256 (rust/crates/sqlparser-0.46.0.crate) = 11a81a8cad9befe4cf1b9d2d4b9c6841c76f0882a3fec00d95133953c13b3d3d +SIZE (rust/crates/sqlparser-0.46.0.crate) = 193438 SHA256 (rust/crates/sqlparser_derive-0.2.2.crate) = 01b2e185515564f15375f593fb966b5718bc624ba77fe49fa4616ad619690554 SIZE (rust/crates/sqlparser_derive-0.2.2.crate) = 3901 -SHA256 (rust/crates/sqlx-core-oldapi-0.6.20.crate) = 624f048d5bd101ab562d59b9c39482b913b56e650cdddaf02261a0a4183c92ca -SIZE (rust/crates/sqlx-core-oldapi-0.6.20.crate) = 310115 -SHA256 (rust/crates/sqlx-macros-oldapi-0.6.20.crate) = 20072fc1733434670020c0ac4aa4dded9ef63b96fe752f9c1a99e59912aaf387 -SIZE (rust/crates/sqlx-macros-oldapi-0.6.20.crate) = 24656 -SHA256 (rust/crates/sqlx-oldapi-0.6.20.crate) = cf8dbf0eee6f059103c75080f9c8d2ecce0e9c5fe2038b9b83e1b84699d27cdf -SIZE (rust/crates/sqlx-oldapi-0.6.20.crate) = 131875 -SHA256 (rust/crates/sqlx-rt-oldapi-0.6.20.crate) = 411bcba96bb1eb626546c94ec6eff6c576c995c631ffb0c1c91839c9ffd36607 -SIZE (rust/crates/sqlx-rt-oldapi-0.6.20.crate) = 2348 +SHA256 (rust/crates/sqlx-core-oldapi-0.6.22.crate) = aa9a7023136d8a8f6da5ad32aa17a2069fd34f9473288f1086d6eeb4044920f8 +SIZE (rust/crates/sqlx-core-oldapi-0.6.22.crate) = 311576 +SHA256 (rust/crates/sqlx-macros-oldapi-0.6.22.crate) = ab0aaae6248541829f7135fad6fdc4fb45e63b25a669c002307c1411d7219b2a +SIZE (rust/crates/sqlx-macros-oldapi-0.6.22.crate) = 24652 +SHA256 (rust/crates/sqlx-oldapi-0.6.22.crate) = ea211c9013de96d018ab47b5ec307b74ddaf079cba70a18bd6239b090b30e150 +SIZE (rust/crates/sqlx-oldapi-0.6.22.crate) = 137004 +SHA256 (rust/crates/sqlx-rt-oldapi-0.6.22.crate) = 218f0ab15a62c98c18eb5866c188688dc7df3baedb7f2a15a51761f10834f171 +SIZE (rust/crates/sqlx-rt-oldapi-0.6.22.crate) = 2354 SHA256 (rust/crates/stringprep-0.1.4.crate) = bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6 SIZE (rust/crates/stringprep-0.1.4.crate) = 23551 SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 @@ -585,16 +589,16 @@ SHA256 (rust/crates/subtle-2.5.0.crate) = 81cdd64d312baedb58e21336b31bc043b77e01 SIZE (rust/crates/subtle-2.5.0.crate) = 13909 SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 SIZE (rust/crates/syn-1.0.109.crate) = 237611 -SHA256 (rust/crates/syn-2.0.60.crate) = 909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3 -SIZE (rust/crates/syn-2.0.60.crate) = 255808 +SHA256 (rust/crates/syn-2.0.61.crate) = c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9 +SIZE (rust/crates/syn-2.0.61.crate) = 257199 SHA256 (rust/crates/synstructure-0.12.6.crate) = f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f SIZE (rust/crates/synstructure-0.12.6.crate) = 18429 SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1 SIZE (rust/crates/tempfile-3.10.1.crate) = 33653 -SHA256 (rust/crates/thiserror-1.0.59.crate) = f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa -SIZE (rust/crates/thiserror-1.0.59.crate) = 21040 -SHA256 (rust/crates/thiserror-impl-1.0.59.crate) = d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66 -SIZE (rust/crates/thiserror-impl-1.0.59.crate) = 15726 +SHA256 (rust/crates/thiserror-1.0.60.crate) = 579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18 +SIZE (rust/crates/thiserror-1.0.60.crate) = 21247 +SHA256 (rust/crates/thiserror-impl-1.0.60.crate) = e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524 +SIZE (rust/crates/thiserror-impl-1.0.60.crate) = 15787 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 @@ -615,8 +619,8 @@ SHA256 (rust/crates/tokio-rustls-0.25.0.crate) = 775e0c0f0adb3a2f22a00c4745d728b SIZE (rust/crates/tokio-rustls-0.25.0.crate) = 30541 SHA256 (rust/crates/tokio-stream-0.1.15.crate) = 267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af SIZE (rust/crates/tokio-stream-0.1.15.crate) = 36284 -SHA256 (rust/crates/tokio-util-0.7.10.crate) = 5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15 -SIZE (rust/crates/tokio-util-0.7.10.crate) = 110508 +SHA256 (rust/crates/tokio-util-0.7.11.crate) = 9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1 +SIZE (rust/crates/tokio-util-0.7.11.crate) = 113421 SHA256 (rust/crates/toml-0.8.12.crate) = e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3 SIZE (rust/crates/toml-0.8.12.crate) = 51145 SHA256 (rust/crates/toml_datetime-0.6.5.crate) = 3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1 @@ -733,18 +737,18 @@ 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.5.crate) = bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0 SIZE (rust/crates/windows_x86_64_msvc-0.52.5.crate) = 827905 -SHA256 (rust/crates/winnow-0.6.6.crate) = f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352 -SIZE (rust/crates/winnow-0.6.6.crate) = 159321 +SHA256 (rust/crates/winnow-0.6.8.crate) = c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d +SIZE (rust/crates/winnow-0.6.8.crate) = 159453 SHA256 (rust/crates/x509-parser-0.15.1.crate) = 7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da SIZE (rust/crates/x509-parser-0.15.1.crate) = 91123 SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85 SIZE (rust/crates/yaml-rust-0.4.5.crate) = 47783 SHA256 (rust/crates/yasna-0.5.2.crate) = e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd SIZE (rust/crates/yasna-0.5.2.crate) = 34859 -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 (rust/crates/zerocopy-0.7.34.crate) = ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087 +SIZE (rust/crates/zerocopy-0.7.34.crate) = 151177 +SHA256 (rust/crates/zerocopy-derive-0.7.34.crate) = 15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b +SIZE (rust/crates/zerocopy-derive-0.7.34.crate) = 37907 SHA256 (rust/crates/zeroize-1.7.0.crate) = 525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d SIZE (rust/crates/zeroize-1.7.0.crate) = 19039 SHA256 (rust/crates/zstd-0.13.1.crate) = 2d789b1514203a1120ad2429eae43a7bd32b90976a7bb8a05f7ec02fa88cc23a @@ -753,5 +757,5 @@ SHA256 (rust/crates/zstd-safe-7.1.0.crate) = 1cd99b45c6bc03a018c8b8a86025678c87e SIZE (rust/crates/zstd-safe-7.1.0.crate) = 20792 SHA256 (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa SIZE (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = 749088 -SHA256 (lovasoa-SQLpage-v0.20.4_GH0.tar.gz) = 6102e9ed298cf15929f5e7a37853daf4f6725bf199fd09407c34c566b456fdaf -SIZE (lovasoa-SQLpage-v0.20.4_GH0.tar.gz) = 19621465 +SHA256 (lovasoa-SQLpage-v0.20.5_GH0.tar.gz) = c54dd46d2fd54572c2ad4a0060ae0cd74409944337b645f4914e4b36667aef58 +SIZE (lovasoa-SQLpage-v0.20.5_GH0.tar.gz) = 23749805 diff --git a/www/stork/Makefile b/www/stork/Makefile index 72bd9b09f54b..17a7c914541f 100644 --- a/www/stork/Makefile +++ b/www/stork/Makefile @@ -1,7 +1,7 @@ PORTNAME= stork DISTVERSIONPREFIX= v DISTVERSION= 1.6.0 -PORTREVISION= 10 +PORTREVISION= 11 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/tcexam/Makefile b/www/tcexam/Makefile index 10c1a29f4bd1..5a95c274c296 100644 --- a/www/tcexam/Makefile +++ b/www/tcexam/Makefile @@ -1,5 +1,5 @@ PORTNAME= tcexam -PORTVERSION= 16.3.1 +PORTVERSION= 16.3.2 CATEGORIES= www education PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} diff --git a/www/tcexam/distinfo b/www/tcexam/distinfo index 0931db5fd60c..49093c728306 100644 --- a/www/tcexam/distinfo +++ b/www/tcexam/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711699676 -SHA256 (tecnickcom-tcexam-16.3.1_GH0.tar.gz) = 69b77df3ffdf11fa6c977ac38aaeb2b16434b9f8d00e613f14b764ddb8a17339 -SIZE (tecnickcom-tcexam-16.3.1_GH0.tar.gz) = 17143183 +TIMESTAMP = 1714657040 +SHA256 (tecnickcom-tcexam-16.3.2_GH0.tar.gz) = d584e93b0a2cca6933b885a022dab7ec61243493addfa06eedcf056d4ed497c1 +SIZE (tecnickcom-tcexam-16.3.2_GH0.tar.gz) = 17141114 diff --git a/www/tclhttpd/Makefile b/www/tclhttpd/Makefile index 320c29848648..102e122b9314 100644 --- a/www/tclhttpd/Makefile +++ b/www/tclhttpd/Makefile @@ -1,11 +1,11 @@ PORTNAME= tclhttpd PORTVERSION= 3.5.1 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= www tcl MASTER_SITES= TCLTK/httpd DISTNAME= ${PORTNAME}${PORTVERSION} -MAINTAINER= mi@aldan.algebra.com +MAINTAINER= ports@virtual-estates.net COMMENT= Http-server implemented in TCL WWW= https://www.tcl.tk/software/tclhttpd/ diff --git a/www/tdom/Makefile b/www/tdom/Makefile index e9645ef2078a..f1ff11c490d2 100644 --- a/www/tdom/Makefile +++ b/www/tdom/Makefile @@ -1,10 +1,11 @@ PORTNAME= tDOM PORTVERSION= 0.9.3 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://tdom.org/downloads/ DISTNAME= ${PORTNAME:tl}-${PORTVERSION}-src -MAINTAINER= mi@aldan.algebra.com +MAINTAINER= ports@virtual-estates.net COMMENT= High performance processing of XML and HTML data with Tcl WWW= http://www.tdom.org/ diff --git a/www/tgpt/Makefile b/www/tgpt/Makefile new file mode 100644 index 000000000000..eee9db345988 --- /dev/null +++ b/www/tgpt/Makefile @@ -0,0 +1,62 @@ +PORTNAME= tgpt +DISTVERSIONPREFIX= v +DISTVERSION= 2.7.4 +CATEGORIES= www + +MAINTAINER= nxjoseph@protonmail.com +COMMENT= AI Chatbots in terminal without needing API keys +WWW= https://github.com/aandrew-me/tgpt + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= go:1.21 + +USE_GITHUB= yes +GH_ACCOUNT= aandrew-me + +GO_PKGNAME= github.com/${GH_ACCOUNT}/${PORTNAME} +GO_BUILDFLAGS= -trimpath -ldflags="-s -w" -o ./build/tgpt +GH_TUPLE= andybalholm:brotli:v1.0.5:andybalholm_brotli/vendor/github.com/andybalholm/brotli \ + atotto:clipboard:v0.1.4:atotto_clipboard/vendor/github.com/atotto/clipboard \ + aymanbagabas:go-osc52:v2.0.1:aymanbagabas_go_osc52_v2/vendor/github.com/aymanbagabas/go-osc52/v2 \ + bogdanfinn:fhttp:v0.5.24:bogdanfinn_fhttp/vendor/github.com/bogdanfinn/fhttp \ + bogdanfinn:tls-client:v1.6.1:bogdanfinn_tls_client/vendor/github.com/bogdanfinn/tls-client \ + bogdanfinn:utls:v1.5.16:bogdanfinn_utls/vendor/github.com/bogdanfinn/utls \ + c-bata:go-prompt:v0.2.6:c_bata_go_prompt/vendor/github.com/c-bata/go-prompt \ + charmbracelet:bubbles:v0.16.1:charmbracelet_bubbles/vendor/github.com/charmbracelet/bubbles \ + charmbracelet:bubbletea:v0.24.2:charmbracelet_bubbletea/vendor/github.com/charmbracelet/bubbletea \ + charmbracelet:bubbletea:v0.24.2:charmbracelet_bubbletea/vendor/github.com/charmbracelet/bubbletea \ + charmbracelet:lipgloss:v0.8.0:charmbracelet_lipgloss/vendor/github.com/charmbracelet/lipgloss \ + containerd:console:1ae8d489ac81:containerd_console/vendor/github.com/containerd/console \ + davecgh:go-spew:v1.1.1:davecgh_go_spew/vendor/github.com/davecgh/go-spew \ + fatih:color:v1.15.0:fatih_color/vendor/github.com/fatih/color \ + go-yaml:yaml:v3.0.1:go_yaml_yaml/vendor/gopkg.in/yaml.v3 \ + golang:crypto:v0.14.0:golang_crypto/vendor/golang.org/x/crypto \ + golang:mod:v0.13.0:golang_mod/vendor/golang.org/x/mod \ + golang:net:v0.16.0:golang_net/vendor/golang.org/x/net \ + golang:sync:v0.4.0:golang_sync/vendor/golang.org/x/sync \ + golang:sys:v0.13.0:golang_sys/vendor/golang.org/x/sys \ + golang:term:v0.13.0:golang_term/vendor/golang.org/x/term \ + golang:text:v0.13.0:golang_text/vendor/golang.org/x/text \ + klauspost:compress:v1.17.0:klauspost_compress/vendor/github.com/klauspost/compress \ + lucasb-eyer:go-colorful:v1.2.0:lucasb_eyer_go_colorful/vendor/github.com/lucasb-eyer/go-colorful \ + mattn:go-colorable:v0.1.13:mattn_go_colorable/vendor/github.com/mattn/go-colorable \ + mattn:go-isatty:v0.0.19:mattn_go_isatty/vendor/github.com/mattn/go-isatty \ + mattn:go-localereader:v0.0.1:mattn_go_localereader/vendor/github.com/mattn/go-localereader \ + mattn:go-runewidth:v0.0.15:mattn_go_runewidth/vendor/github.com/mattn/go-runewidth \ + mattn:go-tty:v0.0.3:mattn_go_tty/vendor/github.com/mattn/go-tty \ + muesli:ansi:276c6243b2f6:muesli_ansi/vendor/github.com/muesli/ansi \ + muesli:cancelreader:v0.2.2:muesli_cancelreader/vendor/github.com/muesli/cancelreader \ + muesli:reflow:v0.3.0:muesli_reflow/vendor/github.com/muesli/reflow \ + muesli:termenv:v0.15.2:muesli_termenv/vendor/github.com/muesli/termenv \ + olekukonko:ts:78ecb04241c0:olekukonko_ts/vendor/github.com/olekukonko/ts \ + pkg:term:v1.2.0-beta.2:pkg_term/vendor/github.com/pkg/term \ + pmezard:go-difflib:v1.0.0:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \ + rivo:uniseg:v0.4.4:rivo_uniseg/vendor/github.com/rivo/uniseg \ + stretchr:testify:v1.8.4:stretchr_testify/vendor/github.com/stretchr/testify \ + tam7t:hpkp:2b70b4024ed5:tam7t_hpkp/vendor/github.com/tam7t/hpkp + +PLIST_FILES= bin/tgpt + +.include <bsd.port.mk> diff --git a/www/tgpt/distinfo b/www/tgpt/distinfo new file mode 100644 index 000000000000..ab0de3ecfda1 --- /dev/null +++ b/www/tgpt/distinfo @@ -0,0 +1,79 @@ +TIMESTAMP = 1716053886 +SHA256 (aandrew-me-tgpt-v2.7.4_GH0.tar.gz) = 56d8ad2c493800ca66eda6cccb5a5ce9877975d79a9ceb8401e43491fcfd6885 +SIZE (aandrew-me-tgpt-v2.7.4_GH0.tar.gz) = 39329 +SHA256 (andybalholm-brotli-v1.0.5_GH0.tar.gz) = 3a10ffe88b56cad3ecf4660750ef3fa0fd8511b06d3c302a5ef18b9c2a361c05 +SIZE (andybalholm-brotli-v1.0.5_GH0.tar.gz) = 1818063 +SHA256 (atotto-clipboard-v0.1.4_GH0.tar.gz) = cafd64dc78f293c1e774386186f3f817461a1a8940ef86d5d9e9524b58aa791e +SIZE (atotto-clipboard-v0.1.4_GH0.tar.gz) = 5017 +SHA256 (aymanbagabas-go-osc52-v2.0.1_GH0.tar.gz) = dad92f43db3cd17e7395db59533283b5888c2780fa1b2cb67344a9feaa3291e0 +SIZE (aymanbagabas-go-osc52-v2.0.1_GH0.tar.gz) = 5875 +SHA256 (bogdanfinn-fhttp-v0.5.24_GH0.tar.gz) = a1901c564ad9c698a31a4f23d0ae9a955fcd244a25692173bb0827a566d43ac5 +SIZE (bogdanfinn-fhttp-v0.5.24_GH0.tar.gz) = 805038 +SHA256 (bogdanfinn-tls-client-v1.6.1_GH0.tar.gz) = 0aadfd5dc3efe83c85b38ac341710bdea95a0dff9c08b98267c10ba2e18f07a2 +SIZE (bogdanfinn-tls-client-v1.6.1_GH0.tar.gz) = 282320 +SHA256 (bogdanfinn-utls-v1.5.16_GH0.tar.gz) = 90f97a3b58c2f9c52093ea3f318b7a1aa12c74b53b1bbe0594e735e1316bd1f4 +SIZE (bogdanfinn-utls-v1.5.16_GH0.tar.gz) = 603744 +SHA256 (c-bata-go-prompt-v0.2.6_GH0.tar.gz) = 6b249608d52ab66d33d85dcc5ec0a4f5f74f63ec6f22f8cfb12c96cb3a9b05cf +SIZE (c-bata-go-prompt-v0.2.6_GH0.tar.gz) = 43452 +SHA256 (charmbracelet-bubbles-v0.16.1_GH0.tar.gz) = d7e4c4d4d64d576a71b4d1f137e22266b629bbdd2b4919cc9f0e536e42191ed4 +SIZE (charmbracelet-bubbles-v0.16.1_GH0.tar.gz) = 63319 +SHA256 (charmbracelet-bubbletea-v0.24.2_GH0.tar.gz) = 848aa3935597048fddb35199c24849df0af395271228607cfe8858192e6d5c27 +SIZE (charmbracelet-bubbletea-v0.24.2_GH0.tar.gz) = 2174833 +SHA256 (charmbracelet-lipgloss-v0.8.0_GH0.tar.gz) = 3f47af9f4f0125bddbc4ec47cb3ccc84abdeb1df6f13325a9024b9215a12e0bb +SIZE (charmbracelet-lipgloss-v0.8.0_GH0.tar.gz) = 43968 +SHA256 (containerd-console-1ae8d489ac81_GH0.tar.gz) = 118afa0df744c158dbcc6842f5ef73b54ed1a64abfa057d64a2c6d4fcfa89df2 +SIZE (containerd-console-1ae8d489ac81_GH0.tar.gz) = 13534 +SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e +SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152 +SHA256 (fatih-color-v1.15.0_GH0.tar.gz) = e7a92edb32453c11aec9fac4d9f2b8fc42fac72249a7ca567c926a112534030e +SIZE (fatih-color-v1.15.0_GH0.tar.gz) = 11273 +SHA256 (go-yaml-yaml-v3.0.1_GH0.tar.gz) = cf05411540d3e6ef8f1fd88434b34f94cedaceb540329031d80e23b74540c4e5 +SIZE (go-yaml-yaml-v3.0.1_GH0.tar.gz) = 91173 +SHA256 (golang-crypto-v0.14.0_GH0.tar.gz) = 0c4a544080fe2e26e8cee929a123a9663cee81db155d1d66ccb0b38b395614b8 +SIZE (golang-crypto-v0.14.0_GH0.tar.gz) = 1797313 +SHA256 (golang-mod-v0.13.0_GH0.tar.gz) = cf5ce8abafd047ece87e904b2065de2293c131e331cdc06a64f2c78c3908a6ca +SIZE (golang-mod-v0.13.0_GH0.tar.gz) = 122017 +SHA256 (golang-net-v0.16.0_GH0.tar.gz) = 580de513efdfbcfd990a2dcbb6ba40b62c9db334d97363124df03b98750d7eb5 +SIZE (golang-net-v0.16.0_GH0.tar.gz) = 1455196 +SHA256 (golang-sync-v0.4.0_GH0.tar.gz) = 78e03dd08d1c8c6c7a95ffbf9447d0c3ad0d26efd7ab74e41333eacdc70fdb3f +SIZE (golang-sync-v0.4.0_GH0.tar.gz) = 20379 +SHA256 (golang-sys-v0.13.0_GH0.tar.gz) = 8877d20a8f1b2533ddef00e65b6b3b9cebbcbffa319ed525df0bc229f583e2b6 +SIZE (golang-sys-v0.13.0_GH0.tar.gz) = 1442250 +SHA256 (golang-term-v0.13.0_GH0.tar.gz) = 2457f9f3258b360ac1084c821fa1435d8c0a74ed4fd2edd2ab7682f9d41ba718 +SIZE (golang-term-v0.13.0_GH0.tar.gz) = 14797 +SHA256 (golang-text-v0.13.0_GH0.tar.gz) = c6e22ff8280188539ba0a6c65cbc80cda877adcf5332651fa78044018c05d6af +SIZE (golang-text-v0.13.0_GH0.tar.gz) = 8967009 +SHA256 (klauspost-compress-v1.17.0_GH0.tar.gz) = 171582ff71acfaa7aa5030d2f86fbec26594f87597a3ee8f51e078185c34d645 +SIZE (klauspost-compress-v1.17.0_GH0.tar.gz) = 37966139 +SHA256 (lucasb-eyer-go-colorful-v1.2.0_GH0.tar.gz) = b3ee835cc398287452377266313edcc231043bae4168f8d2706e5d34ce1ce755 +SIZE (lucasb-eyer-go-colorful-v1.2.0_GH0.tar.gz) = 970830 +SHA256 (mattn-go-colorable-v0.1.13_GH0.tar.gz) = c3b62c76d365906bba9aa9d9ec048fd33a2a5742299d6482a08e7466d4c52d77 +SIZE (mattn-go-colorable-v0.1.13_GH0.tar.gz) = 9762 +SHA256 (mattn-go-isatty-v0.0.19_GH0.tar.gz) = 67b1614d495030982d276b211f3ba2a155fad61919ba96e34db8e67ed28660e4 +SIZE (mattn-go-isatty-v0.0.19_GH0.tar.gz) = 4679 +SHA256 (mattn-go-localereader-v0.0.1_GH0.tar.gz) = 03bd5a512b593c793cccd3a1f507e3a5ba6f92681b1fa4f812a53eddbc3751dc +SIZE (mattn-go-localereader-v0.0.1_GH0.tar.gz) = 1735 +SHA256 (mattn-go-runewidth-v0.0.15_GH0.tar.gz) = 44a5d37bd7119a9d288d7ff61cf3b4d42c2902c66b0d94136d41d2eb3cf2ba85 +SIZE (mattn-go-runewidth-v0.0.15_GH0.tar.gz) = 18284 +SHA256 (mattn-go-tty-v0.0.3_GH0.tar.gz) = 4fc1faabd0ec817ca634931519d4d286858199fd6b8a5829fdc7cc7a40c45d8c +SIZE (mattn-go-tty-v0.0.3_GH0.tar.gz) = 7795 +SHA256 (muesli-ansi-276c6243b2f6_GH0.tar.gz) = 3284ff73b72fb26606a9129355fa2916647423e3ede78ba8031e6bdfa0ccef4f +SIZE (muesli-ansi-276c6243b2f6_GH0.tar.gz) = 5243 +SHA256 (muesli-cancelreader-v0.2.2_GH0.tar.gz) = afd827ad56d7c567389a516ca005ea80d46ed1cbc17c5ec3ca144152f1ecfc5a +SIZE (muesli-cancelreader-v0.2.2_GH0.tar.gz) = 9443 +SHA256 (muesli-reflow-v0.3.0_GH0.tar.gz) = f797b8c25d447e314ad92b155433562446c683924171be1698ad44f24c79f651 +SIZE (muesli-reflow-v0.3.0_GH0.tar.gz) = 21245 +SHA256 (muesli-termenv-v0.15.2_GH0.tar.gz) = 547a35fca6d807006fc15bdd819f175e4214b2153d39b5c6f5df217d4d4fe6ec +SIZE (muesli-termenv-v0.15.2_GH0.tar.gz) = 422802 +SHA256 (olekukonko-ts-78ecb04241c0_GH0.tar.gz) = e773762d9adb136c048e20f75f90ed3da9c4fd670c1798d26ef592b9aa4e44c7 +SIZE (olekukonko-ts-78ecb04241c0_GH0.tar.gz) = 3173 +SHA256 (pkg-term-v1.2.0-beta.2_GH0.tar.gz) = 7ec33e2b31f188923104d3edbecc4362f6d321354a178e4e4e49d1bfc5075e45 +SIZE (pkg-term-v1.2.0-beta.2_GH0.tar.gz) = 11330 +SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda +SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398 +SHA256 (rivo-uniseg-v0.4.4_GH0.tar.gz) = eb2837932d0a666e13ea6b4cebf698096266d4f14740faa78c63b8291cf1fb5c +SIZE (rivo-uniseg-v0.4.4_GH0.tar.gz) = 453399 +SHA256 (stretchr-testify-v1.8.4_GH0.tar.gz) = 0d3e82b04a05d9428a2a2aec8776bd0a07f14f5d1b4fa0a3676526ca8259fd62 +SIZE (stretchr-testify-v1.8.4_GH0.tar.gz) = 104427 +SHA256 (tam7t-hpkp-2b70b4024ed5_GH0.tar.gz) = 1a0f3f512036af140f861b107e652e59cbde74be8fb64d67d34fa4399c380325 +SIZE (tam7t-hpkp-2b70b4024ed5_GH0.tar.gz) = 12653 diff --git a/www/tgpt/pkg-descr b/www/tgpt/pkg-descr new file mode 100644 index 000000000000..d518e2c63871 --- /dev/null +++ b/www/tgpt/pkg-descr @@ -0,0 +1,5 @@ +tgpt is a cross-platform command-line interface (CLI) tool that allows you to +use AI chatbot in your Terminal without requiring API keys. It supports +these providers: KoboldAI (koboldcpp/HF_SPACE_Tiefighter-13B), +Phind (Phind Model), Llama2 (Llama 2 70b), Blackbox AI (Blackbox model) +and OpenAI (All models, Requires API Key) diff --git a/www/threejs/Makefile b/www/threejs/Makefile index 107a617d78e1..ee801077c680 100644 --- a/www/threejs/Makefile +++ b/www/threejs/Makefile @@ -1,5 +1,5 @@ PORTNAME= three.js -PORTVERSION= 162 +PORTVERSION= 164 DISTVERSIONPREFIX= r CATEGORIES= www diff --git a/www/threejs/distinfo b/www/threejs/distinfo index 93f9d67a45c7..28fd09701720 100644 --- a/www/threejs/distinfo +++ b/www/threejs/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709296542 -SHA256 (mrdoob-three.js-r162_GH0.tar.gz) = 8c349ca08b0422a700e3c6908994528563fbaae4eab65cff29d683938f3f3b0c -SIZE (mrdoob-three.js-r162_GH0.tar.gz) = 366789162 +TIMESTAMP = 1714582891 +SHA256 (mrdoob-three.js-r164_GH0.tar.gz) = 43f30b444d3702d8c427e701110020f2986b998e5f9e11cdf15ddf8b4fdeb6ae +SIZE (mrdoob-three.js-r164_GH0.tar.gz) = 362035926 diff --git a/www/threejs/pkg-plist b/www/threejs/pkg-plist index c59f69f16d33..f2860819e8be 100644 --- a/www/threejs/pkg-plist +++ b/www/threejs/pkg-plist @@ -185,7 +185,6 @@ %%WWWDIR%%/objects/Skeleton.js %%WWWDIR%%/objects/SkinnedMesh.js %%WWWDIR%%/objects/Sprite.js -%%WWWDIR%%/renderers/WebGL1Renderer.js %%WWWDIR%%/renderers/WebGL3DRenderTarget.js %%WWWDIR%%/renderers/WebGLArrayRenderTarget.js %%WWWDIR%%/renderers/WebGLCubeRenderTarget.js @@ -243,7 +242,6 @@ %%WWWDIR%%/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js %%WWWDIR%%/renderers/shaders/ShaderChunk/iridescence_fragment.glsl.js %%WWWDIR%%/renderers/shaders/ShaderChunk/iridescence_pars_fragment.glsl.js -%%WWWDIR%%/renderers/shaders/ShaderChunk/lightmap_fragment.glsl.js %%WWWDIR%%/renderers/shaders/ShaderChunk/lightmap_pars_fragment.glsl.js %%WWWDIR%%/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js %%WWWDIR%%/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js diff --git a/www/threema-web/Makefile b/www/threema-web/Makefile index 62c59dfb41e2..8b3ca44b6d8b 100644 --- a/www/threema-web/Makefile +++ b/www/threema-web/Makefile @@ -1,5 +1,5 @@ PORTNAME= threema-web -PORTVERSION= 2.5.2 +PORTVERSION= 2.5.5 CATEGORIES= www net-im MASTER_SITES= https://github.com/threema-ch/${PORTNAME}/releases/download/v${PORTVERSION}/ DISTNAME= ${PORTNAME}-${PORTVERSION}-gh diff --git a/www/threema-web/distinfo b/www/threema-web/distinfo index 28452092e1e8..8993f8b61428 100644 --- a/www/threema-web/distinfo +++ b/www/threema-web/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1701965074 -SHA256 (threema-web-2.5.2-gh.tar.gz) = d546efd9a6ec67678bbedb011530fa1bbd118a5ca6b561a9e04e1519cfa956f2 -SIZE (threema-web-2.5.2-gh.tar.gz) = 23903312 +TIMESTAMP = 1715759841 +SHA256 (threema-web-2.5.5-gh.tar.gz) = b8fa8c967696f79904ec4fb083f2bb296237ae85f0dd1e7930ab5323169581e6 +SIZE (threema-web-2.5.5-gh.tar.gz) = 23525696 diff --git a/www/threema-web/pkg-plist b/www/threema-web/pkg-plist index a2ac5e2dcac4..654a709158db 100644 --- a/www/threema-web/pkg-plist +++ b/www/threema-web/pkg-plist @@ -1,9 +1,9 @@ @dir %%WWWDIR%%/components -%%WWWDIR%%/218.45ed0109917b5a34b50a.bundle.js -%%WWWDIR%%/218.45ed0109917b5a34b50a.bundle.js.map -%%WWWDIR%%/878.d1ff4e350738715a0f22.bundle.js -%%WWWDIR%%/878.d1ff4e350738715a0f22.bundle.js.map -%%WWWDIR%%/77de81abe7775245a1c1.module.wasm +%%WWWDIR%%/24.60cf29499fcd11d8987b.bundle.js +%%WWWDIR%%/24.60cf29499fcd11d8987b.bundle.js.map +%%WWWDIR%%/444.d16320117f5438b5a064.bundle.js +%%WWWDIR%%/444.d16320117f5438b5a064.bundle.js.map +%%WWWDIR%%/56a1152bdd9f8abd5a7e.module.wasm %%WWWDIR%%/app.bundle.js %%WWWDIR%%/app.bundle.js.map %%WWWDIR%%/browserconfig.xml @@ -6791,6 +6791,7 @@ %%WWWDIR%%/i18n/es.json %%WWWDIR%%/i18n/fr.json %%WWWDIR%%/i18n/hu.json +%%WWWDIR%%/i18n/it.json %%WWWDIR%%/i18n/ja.json %%WWWDIR%%/i18n/ko.json %%WWWDIR%%/i18n/nl.json diff --git a/www/tinymce/Makefile b/www/tinymce/Makefile index 7a2bae2b7f4b..bb40d7e744a8 100644 --- a/www/tinymce/Makefile +++ b/www/tinymce/Makefile @@ -1,5 +1,5 @@ PORTNAME= tinymce -PORTVERSION= 7.0.1 +PORTVERSION= 7.1.0 CATEGORIES= www MASTER_SITES= http://download.tiny.cloud/tinymce/community/ \ LOCAL/sunpoet diff --git a/www/tinymce/distinfo b/www/tinymce/distinfo index a883f7a0aca8..cac0cb555be8 100644 --- a/www/tinymce/distinfo +++ b/www/tinymce/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1712886418 -SHA256 (tinymce_7.0.1.zip) = 89959a507fae0a8c162c4ac6a831074cb124d157c82d11ae1ee39f4b7b6d1034 -SIZE (tinymce_7.0.1.zip) = 966503 +TIMESTAMP = 1715842562 +SHA256 (tinymce_7.1.0.zip) = 3f7c18d1fdc25c7f16e8f779b76ba835f2b1e6caf8c132a75f97b3ace2f37cba +SIZE (tinymce_7.1.0.zip) = 976191 diff --git a/www/tinyproxy/Makefile b/www/tinyproxy/Makefile index f66ff3941e2e..fae893a5d057 100644 --- a/www/tinyproxy/Makefile +++ b/www/tinyproxy/Makefile @@ -1,5 +1,5 @@ PORTNAME= tinyproxy -PORTVERSION= 1.11.1 +PORTVERSION= 1.11.2 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= https://github.com/tinyproxy/tinyproxy/releases/download/${PORTVERSION}/ diff --git a/www/tinyproxy/distinfo b/www/tinyproxy/distinfo index d889f4d7979d..13ac76670db2 100644 --- a/www/tinyproxy/distinfo +++ b/www/tinyproxy/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1655208224 -SHA256 (tinyproxy-1.11.1.tar.xz) = d66388448215d0aeb90d0afdd58ed00386fb81abc23ebac9d80e194fceb40f7c -SIZE (tinyproxy-1.11.1.tar.xz) = 182080 +TIMESTAMP = 1715842564 +SHA256 (tinyproxy-1.11.2.tar.xz) = 6a126880706691c987e2957b1c99b522efb1964a75eb767af4b30aac0b88a26a +SIZE (tinyproxy-1.11.2.tar.xz) = 185864 diff --git a/www/tomcat-devel/Makefile b/www/tomcat-devel/Makefile index 634371d28f32..cc5704cae5bf 100644 --- a/www/tomcat-devel/Makefile +++ b/www/tomcat-devel/Makefile @@ -1,5 +1,5 @@ PORTNAME= tomcat -DISTVERSION= 11.0.0-M19 +DISTVERSION= 11.0.0-M20 CATEGORIES= www java MASTER_SITES= APACHE/${PORTNAME}/${PORTNAME}-${DISTVERSION:C/([0-9]+)(.*)/\1/}/v${DISTVERSION}/bin PKGNAMESUFFIX= -devel diff --git a/www/tomcat-devel/distinfo b/www/tomcat-devel/distinfo index 7acb43e2c15c..248ea300623d 100644 --- a/www/tomcat-devel/distinfo +++ b/www/tomcat-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713281284 -SHA256 (apache-tomcat-11.0.0-M19.tar.gz) = ae4c72f0c265f7d9e0e4d43b0d6757cf514af797cf1715ebd0dedebf1b94d542 -SIZE (apache-tomcat-11.0.0-M19.tar.gz) = 12923761 +TIMESTAMP = 1715173930 +SHA256 (apache-tomcat-11.0.0-M20.tar.gz) = 9e04f5af3e981bca833c06d2fa79ce37168146b81ad90a790c97f45a49807f92 +SIZE (apache-tomcat-11.0.0-M20.tar.gz) = 12994063 diff --git a/www/tomcat-devel/pkg-plist b/www/tomcat-devel/pkg-plist index 4b828aaba363..142df7a0c801 100644 --- a/www/tomcat-devel/pkg-plist +++ b/www/tomcat-devel/pkg-plist @@ -27,7 +27,7 @@ %%T%%/lib/catalina-storeconfig.jar %%T%%/lib/catalina-tribes.jar %%T%%/lib/catalina.jar -%%T%%/lib/ecj-4.30.jar +%%T%%/lib/ecj-4.31.jar %%T%%/lib/el-api.jar %%T%%/lib/jakartaee-migration-1.0.8-shaded.jar %%T%%/lib/jasper-el.jar @@ -105,6 +105,12 @@ %%DOCS%%%%T%%/webapps/docs/architecture/requestProcess/authentication-process.png %%DOCS%%%%T%%/webapps/docs/architecture/requestProcess/request-process.png %%DOCS%%%%T%%/webapps/docs/architecture/startup.html +%%DOCS%%%%T%%/webapps/docs/architecture/startup/1_catalina_load.svg +%%DOCS%%%%T%%/webapps/docs/architecture/startup/2_catalina_initliaze.svg +%%DOCS%%%%T%%/webapps/docs/architecture/startup/3_catalina_start_1.svg +%%DOCS%%%%T%%/webapps/docs/architecture/startup/4_catalina_start_2.svg +%%DOCS%%%%T%%/webapps/docs/architecture/startup/5_catalina_start_3.svg +%%DOCS%%%%T%%/webapps/docs/architecture/startup/6_catalina_start_4.svg %%DOCS%%%%T%%/webapps/docs/architecture/startup/serverStartup.pdf %%DOCS%%%%T%%/webapps/docs/architecture/startup/serverStartup.txt %%DOCS%%%%T%%/webapps/docs/balancer-howto.html diff --git a/www/tomcat-native2/Makefile b/www/tomcat-native2/Makefile new file mode 100644 index 000000000000..4cb291adc34c --- /dev/null +++ b/www/tomcat-native2/Makefile @@ -0,0 +1,37 @@ +PORTNAME= tomcat-native +DISTVERSION= 2.0.7 +CATEGORIES= www java +MASTER_SITES= https://archive.apache.org/dist/tomcat/tomcat-connectors/native/${PORTVERSION}/source/ +PKGNAMESUFFIX= 2 +DISTNAME= ${PORTNAME}-${PORTVERSION}-src + +MAINTAINER= michaelo@apache.org +COMMENT= Tomcat native library +WWW= https://tomcat.apache.org/native-doc/ + +LICENSE= APACHE20 + +LIB_DEPENDS= libapr-1.so:devel/apr1 + +USES= libtool ssl +USE_JAVA= yes +USE_LDCONFIG= yes +GNU_CONFIGURE= yes +CONFIGURE_ARGS= --with-apr=${LOCALBASE} \ + --with-java-home=${JAVA_HOME} \ + --with-ssl=${OPENSSLBASE} \ + --disable-openssl-version-check + +WRKSRC= ${WRKDIR}/${DISTNAME}/native + +SOVERSION= ${PORTVERSION:E} +MAJORVERSION= ${PORTVERSION:R:R} +PLIST_FILES= lib/libtcnative-${MAJORVERSION}.so \ + lib/libtcnative-${MAJORVERSION}.so.0 \ + lib/libtcnative-${MAJORVERSION}.so.0.0.${SOVERSION} + +post-install: + ${RM} ${STAGEDIR}${PREFIX}/lib/libtcnative-${MAJORVERSION}.a + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libtcnative-${MAJORVERSION}.so.0.0.${SOVERSION} + +.include <bsd.port.mk> diff --git a/www/tomcat-native2/distinfo b/www/tomcat-native2/distinfo new file mode 100644 index 000000000000..6c7db5104702 --- /dev/null +++ b/www/tomcat-native2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1713346420 +SHA256 (tomcat-native-2.0.7-src.tar.gz) = 2c5afc7edc383e47660647e9a7071ad81f58e51c7f765c12f7e7afc9203b2d4d +SIZE (tomcat-native-2.0.7-src.tar.gz) = 538131 diff --git a/www/tomcat-native2/files/patch-include_ssl__private.h b/www/tomcat-native2/files/patch-include_ssl__private.h new file mode 100644 index 000000000000..80ff3e5c8cd9 --- /dev/null +++ b/www/tomcat-native2/files/patch-include_ssl__private.h @@ -0,0 +1,12 @@ +--- include/ssl_private.h.orig 2024-02-04 19:32:52 UTC ++++ include/ssl_private.h +@@ -46,9 +46,6 @@ + #include <openssl/x509v3.h> + #include <openssl/dh.h> + #include <openssl/bn.h> +-#ifndef LIBRESSL_VERSION_NUMBER +-#include <openssl/provider.h> +-#endif + /* Avoid tripping over an engine build installed globally and detected + * when the user points at an explicit non-engine flavor of OpenSSL + */ diff --git a/www/tomcat-native2/files/patch-src_ssl.c b/www/tomcat-native2/files/patch-src_ssl.c new file mode 100644 index 000000000000..b3b37819b955 --- /dev/null +++ b/www/tomcat-native2/files/patch-src_ssl.c @@ -0,0 +1,63 @@ +--- src/ssl.c.orig 2024-02-04 19:32:52 UTC ++++ src/ssl.c +@@ -395,30 +395,14 @@ TCN_IMPLEMENT_CALL(void, SSL, randSet)(TCN_STDARGS, js + + TCN_IMPLEMENT_CALL(jint, SSL, fipsModeGet)(TCN_STDARGS) + { +-#if defined(LIBRESSL_VERSION_NUMBER) + UNREFERENCED(o); +- /* LibreSSL doesn't support FIPS */ +- return 0; ++#ifdef OPENSSL_FIPS ++ return FIPS_mode(); + #else +- EVP_MD *md; +- const OSSL_PROVIDER *provider; +- const char *name; +- UNREFERENCED(o); ++ /* FIPS is unavailable */ ++ tcn_ThrowException(e, "FIPS was not available to tcnative at build time. You will need to re-build tcnative against an OpenSSL with FIPS."); + +- // Maps the OpenSSL 3. x onwards behaviour to theOpenSSL 1.x API +- +- // Checks that FIPS is the default provider +- md = EVP_MD_fetch(NULL, "SHA-512", NULL); +- provider = EVP_MD_get0_provider(md); +- name = OSSL_PROVIDER_get0_name(provider); +- // Clean up +- EVP_MD_free(md); +- +- if (strcmp("fips", name)) { +- return 0; +- } else { +- return 1; +- } ++ return 0; + #endif + } + +@@ -427,8 +411,22 @@ TCN_IMPLEMENT_CALL(jint, SSL, fipsModeSet)(TCN_STDARGS + int r = 0; + UNREFERENCED(o); + +- /* This method should never be called when using Tomcat Native 2.x onwards */ +- tcn_ThrowException(e, "fipsModeSet is not supported in Tomcat Native 2.x onwards."); ++#ifdef OPENSSL_FIPS ++ if(1 != (r = (jint)FIPS_mode_set((int)mode))) { ++ /* arrange to get a human-readable error message */ ++ unsigned long err = SSL_ERR_get(); ++ char msg[256]; ++ ++ /* ERR_load_crypto_strings() already called in initialize() */ ++ ++ ERR_error_string_n(err, msg, 256); ++ ++ tcn_ThrowException(e, msg); ++ } ++#else ++ /* FIPS is unavailable */ ++ tcn_ThrowException(e, "FIPS was not available to tcnative at build time. You will need to re-build tcnative against an OpenSSL with FIPS."); ++#endif + + return r; + } diff --git a/www/tomcat-native2/files/patch-src_sslutils.c b/www/tomcat-native2/files/patch-src_sslutils.c new file mode 100644 index 000000000000..39d22ddc7850 --- /dev/null +++ b/www/tomcat-native2/files/patch-src_sslutils.c @@ -0,0 +1,14 @@ +--- src/sslutils.c.orig 2024-02-04 19:32:52 UTC ++++ src/sslutils.c +@@ -946,11 +946,7 @@ static OCSP_RESPONSE *get_ocsp_response(apr_pool_t *p, + int ok = 0; + apr_socket_t *apr_sock = NULL; + apr_pool_t *mp; +-#ifdef LIBRESSL_VERSION_NUMBER + if (OCSP_parse_url(url, &hostname, &c_port, &path, &use_ssl) == 0) +-#else +- if (OSSL_HTTP_parse_url(url, &use_ssl, NULL, &hostname, &c_port, NULL, &path, NULL, NULL) == 0) +-#endif + goto end; + + if (sscanf(c_port, "%d", &port) != 1) diff --git a/www/tomcat-native2/pkg-descr b/www/tomcat-native2/pkg-descr new file mode 100644 index 000000000000..35d1f60cfb90 --- /dev/null +++ b/www/tomcat-native2/pkg-descr @@ -0,0 +1,3 @@ +The Apache Tomcat Native Library is an optional component for use with Apache +Tomcat that allows Tomcat to use OpenSSL as a replacement for JSSE to support +TLS connections. diff --git a/www/tomcat101/Makefile b/www/tomcat101/Makefile index 535dafafc16c..940279fe26a8 100644 --- a/www/tomcat101/Makefile +++ b/www/tomcat101/Makefile @@ -1,5 +1,5 @@ PORTNAME= tomcat -DISTVERSION= 10.1.23 +DISTVERSION= 10.1.24 CATEGORIES= www java MASTER_SITES= APACHE/${PORTNAME}/${PORTNAME}-${DISTVERSION:C/([0-9]+)(.*)/\1/}/v${DISTVERSION}/bin PKGNAMESUFFIX= 101 diff --git a/www/tomcat101/distinfo b/www/tomcat101/distinfo index e0c1d5708410..bc814ced1083 100644 --- a/www/tomcat101/distinfo +++ b/www/tomcat101/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713910216 -SHA256 (apache-tomcat-10.1.23.tar.gz) = a5572c9e90ff81ea16681df97176bb6a9f537b1c3fbe0ffba5297fee59c398aa -SIZE (apache-tomcat-10.1.23.tar.gz) = 12992318 +TIMESTAMP = 1715628653 +SHA256 (apache-tomcat-10.1.24.tar.gz) = 216db5c726a6857e2a698ba5f9406fa862d037733f98ab2338feb3fc511c3068 +SIZE (apache-tomcat-10.1.24.tar.gz) = 13008703 diff --git a/www/tomcat9/Makefile b/www/tomcat9/Makefile index 712f36a7e002..cc675c19add7 100644 --- a/www/tomcat9/Makefile +++ b/www/tomcat9/Makefile @@ -1,5 +1,5 @@ PORTNAME= tomcat -PORTVERSION= 9.0.88 +PORTVERSION= 9.0.89 CATEGORIES= www java MASTER_SITES= APACHE/${PORTNAME}/${PORTNAME}-${PORTVERSION:C/([0-9])(.*)/\1/}/v${PORTVERSION}/bin PKGNAMESUFFIX= 9 diff --git a/www/tomcat9/distinfo b/www/tomcat9/distinfo index c6e2c88b915b..71bd3b622520 100644 --- a/www/tomcat9/distinfo +++ b/www/tomcat9/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1713281043 -SHA256 (apache-tomcat-9.0.88.tar.gz) = bef81ccaa4f7d7c89ea86eb56f6343c51cd793374c8ecc2038b7a7f5e27d6628 -SIZE (apache-tomcat-9.0.88.tar.gz) = 11744294 +TIMESTAMP = 1715146423 +SHA256 (apache-tomcat-9.0.89.tar.gz) = cb8aed230aa2f15cc5c2439b044dd88d6ec8900e46d81ee63c4d1090c0937e32 +SIZE (apache-tomcat-9.0.89.tar.gz) = 11756919 diff --git a/www/tor-browser/Makefile b/www/tor-browser/Makefile index a8c42904445f..2f4838c6fc0d 100644 --- a/www/tor-browser/Makefile +++ b/www/tor-browser/Makefile @@ -1,11 +1,12 @@ PORTNAME= tor-browser -DISTVERSION= 13.0.14 +DISTVERSION= 13.5a7 +PORTREVISION= 1 CATEGORIES= www net security wayland MASTER_SITES= TOR \ https://build-sources.tbb.torproject.org/:source1 \ LOCAL/jsm:source2 MASTER_SITE_SUBDIR= torbrowser/${DISTVERSION} -DISTNAME= src-firefox-tor-browser-115.10.0esr-13.0-1-build1 +DISTNAME= src-firefox-tor-browser-115.10.0esr-13.5-1-build2 DISTFILES= ${DISTNAME}.tar.xz \ manual_112141.zip:source1 \ firefox-tor-browser-13.0.1-build2-firefox-1l0n-out.tar:source2 diff --git a/www/tor-browser/distinfo b/www/tor-browser/distinfo index a0e748a76e5b..ea4c726915ec 100644 --- a/www/tor-browser/distinfo +++ b/www/tor-browser/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1713253525 -SHA256 (src-firefox-tor-browser-115.10.0esr-13.0-1-build1.tar.xz) = 5ce221443bd9dfbec37e92c263f0098572fb7c44a0236fbba98b02370eda11bf -SIZE (src-firefox-tor-browser-115.10.0esr-13.0-1-build1.tar.xz) = 551419804 +TIMESTAMP = 1715113596 +SHA256 (src-firefox-tor-browser-115.10.0esr-13.5-1-build2.tar.xz) = 4d6359dfd62d834eccef626dab721092924903cc9418049b0f07de3306575384 +SIZE (src-firefox-tor-browser-115.10.0esr-13.5-1-build2.tar.xz) = 552033160 SHA256 (manual_112141.zip) = f767bc5f655f1263623b7af588cfb045d3e41ee019dc7ecd713decc5c1a0ea9b SIZE (manual_112141.zip) = 26293073 SHA256 (firefox-tor-browser-13.0.1-build2-firefox-1l0n-out.tar) = bbd290cd134e3a114241077ba82582617ab6c5117ff2226381943c504bd09775 diff --git a/www/tor-browser/files/patch-dom_media_flac_FlacDecoder.cpp b/www/tor-browser/files/patch-dom_media_flac_FlacDecoder.cpp index 954b78f5bf37..6dc197d9455e 100644 --- a/www/tor-browser/files/patch-dom_media_flac_FlacDecoder.cpp +++ b/www/tor-browser/files/patch-dom_media_flac_FlacDecoder.cpp @@ -17,7 +17,7 @@ Enable FLAC on platforms without ffvpx like powerpc* +#elif defined(MOZ_FFMPEG) + RefPtr<PDMFactory> platform = new PDMFactory(); + return StaticPrefs::media_flac_enabled() && -+ platform->SupportsMimeType("audio/flac"_ns); ++ !platform->SupportsMimeType("audio/flac"_ns).isEmpty(); #else return false; #endif diff --git a/www/tor-browser/files/patch-rust-1.78.0 b/www/tor-browser/files/patch-rust-1.78.0 new file mode 100644 index 000000000000..7e6685d5e8e7 --- /dev/null +++ b/www/tor-browser/files/patch-rust-1.78.0 @@ -0,0 +1,3582 @@ +Adapted from https://hg.mozilla.org/mozilla-central/rev/1db2ef126a6a +-- + +# HG changeset patch +# User Henri Sivonen <hsivonen@hsivonen.fi> +# Date 1714462184 0 +# Node ID 1db2ef126a6a8555dbf50345e16492c977b42e92 +# Parent a545e84b3674c4878f2e618b7bce23058f2ac690 +Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers + +Differential Revision: https://phabricator.services.mozilla.com/D207167 + +diff --git a/.cargo/config.in b/.cargo/config.in +--- .cargo/config.in ++++ .cargo/config.in +@@ -35,31 +35,31 @@ git = "https://github.com/gfx-rs/wgpu" + rev = "f71a1bc736fde37509262ca03e91d8f56a13aeb5" + replace-with = "vendored-sources" + + [source."git+https://github.com/glandium/warp?rev=4af45fae95bc98b0eba1ef0db17e1dac471bb23d"] + git = "https://github.com/glandium/warp" + rev = "4af45fae95bc98b0eba1ef0db17e1dac471bb23d" + replace-with = "vendored-sources" + ++[source."git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80"] ++git = "https://github.com/hsivonen/any_all_workaround" ++rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++replace-with = "vendored-sources" ++ + [source."git+https://github.com/hsivonen/chardetng?rev=3484d3e3ebdc8931493aa5df4d7ee9360a90e76b"] + git = "https://github.com/hsivonen/chardetng" + rev = "3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" + replace-with = "vendored-sources" + + [source."git+https://github.com/hsivonen/chardetng_c?rev=ed8a4c6f900a90d4dbc1d64b856e61490a1c3570"] + git = "https://github.com/hsivonen/chardetng_c" + rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" + replace-with = "vendored-sources" + +-[source."git+https://github.com/hsivonen/packed_simd?rev=e588ceb568878e1a3156ea9ce551d5b63ef0cdc4"] +-git = "https://github.com/hsivonen/packed_simd" +-rev = "e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" +-replace-with = "vendored-sources" +- + [source."git+https://github.com/jfkthame/mapped_hyph.git?rev=c7651a0cffff41996ad13c44f689bd9cd2192c01"] + git = "https://github.com/jfkthame/mapped_hyph.git" + rev = "c7651a0cffff41996ad13c44f689bd9cd2192c01" + replace-with = "vendored-sources" + + [source."git+https://github.com/mozilla-spidermonkey/jsparagus?rev=64ba08e24749616de2344112f226d1ef4ba893ae"] + git = "https://github.com/mozilla-spidermonkey/jsparagus" + rev = "64ba08e24749616de2344112f226d1ef4ba893ae" +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -80,16 +80,25 @@ dependencies = [ + name = "android_system_properties" + version = "0.1.5" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" + dependencies = [ + "libc", + ] + ++[[package]] ++name = "any_all_workaround" ++version = "0.1.0" ++source = "git+https://github.com/hsivonen/any_all_workaround?rev=7fb1b7034c9f172aade21ee1c8554e8d8a48af80#7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "version_check", ++] ++ + [[package]] + name = "anyhow" + version = "1.0.69" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + + [[package]] + name = "app_services_logger" +@@ -1431,22 +1440,22 @@ dependencies = [ + "encoding_rs", + "nserror", + "nsstring", + "xmldecl", + ] + + [[package]] + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" ++checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" + dependencies = [ ++ "any_all_workaround", + "cfg-if 1.0.0", +- "packed_simd", + ] + + [[package]] + name = "enum-primitive-derive" + version = "0.2.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "c375b9c5eadb68d0a6efee2999fef292f45854c3444c86f09d8ab086ba942b0e" + dependencies = [ +@@ -3901,25 +3910,16 @@ checksum = "8d91edf4fbb970279443471345a4e8c491bf05bb283b3e6c88e4e606fd8c181b" + [[package]] + name = "oxilangtag-ffi" + version = "0.1.0" + dependencies = [ + "nsstring", + "oxilangtag", + ] + +-[[package]] +-name = "packed_simd" +-version = "0.3.9" +-source = "git+https://github.com/hsivonen/packed_simd?rev=e588ceb568878e1a3156ea9ce551d5b63ef0cdc4#e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" +-dependencies = [ +- "cfg-if 1.0.0", +- "num-traits", +-] +- + [[package]] + name = "parking_lot" + version = "0.11.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" + dependencies = [ + "instant", + "lock_api", +diff --git a/Cargo.toml b/Cargo.toml +--- Cargo.toml ++++ Cargo.toml +@@ -154,22 +154,22 @@ rure = { path = "third_party/rust/rure" } + + # 0.31.1 but without rust-cssparser#342. + # TODO: Remove these, and just use v0.31.1 once bug 1836219 lands + # (which will get syn 2 into the tree). + cssparser = { path = "third_party/rust/cssparser" } + cssparser-macros = { path = "third_party/rust/cssparser-macros" } + + # Other overrides ++any_all_workaround = { git = "https://github.com/hsivonen/any_all_workaround", rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80" } + chardetng = { git = "https://github.com/hsivonen/chardetng", rev="3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" } + chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev="ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" } + coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev="fc68464b5445caf111e41f643a2e69ccce0b4f83" } + firefox-on-glean = { path = "toolkit/components/glean/api" } + libudev-sys = { path = "dom/webauthn/libudev-sys" } +-packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev = "e588ceb568878e1a3156ea9ce551d5b63ef0cdc4" } + midir = { git = "https://github.com/mozilla/midir.git", rev = "519e651241e867af3391db08f9ae6400bc023e18" } + # warp 0.3.3 + https://github.com/seanmonstar/warp/pull/1007 + warp = { git = "https://github.com/glandium/warp", rev = "4af45fae95bc98b0eba1ef0db17e1dac471bb23d" } + + # application-services overrides to make updating them all simpler. + interrupt-support = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } + sql-support = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } + sync15 = { git = "https://github.com/mozilla/application-services", rev = "86c84c217036c12283d19368867323a66bf35883" } +diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk +--- config/makefiles/rust.mk ++++ config/makefiles/rust.mk +@@ -260,17 +260,17 @@ export COREAUDIO_SDK_PATH=$(IPHONEOS_SDK + export IPHONEOS_SDK_DIR + PATH := $(topsrcdir)/build/macosx:$(PATH) + endif + endif + + ifndef RUSTC_BOOTSTRAP + RUSTC_BOOTSTRAP := mozglue_static,qcms + ifdef MOZ_RUST_SIMD +-RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,packed_simd ++RUSTC_BOOTSTRAP := $(RUSTC_BOOTSTRAP),encoding_rs,any_all_workaround + endif + export RUSTC_BOOTSTRAP + endif + + target_rust_ltoable := force-cargo-library-build $(ADD_RUST_LTOABLE) + target_rust_nonltoable := force-cargo-test-run force-cargo-program-build + + ifdef MOZ_PGO_RUST +diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml +--- supply-chain/audits.toml ++++ supply-chain/audits.toml +@@ -596,16 +596,29 @@ who = "Mike Hommey <mh+mozilla@glandium. + criteria = "safe-to-deploy" + delta = "0.1.2 -> 0.1.4" + + [[audits.android_system_properties]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "0.1.4 -> 0.1.5" + ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++version = "0.1.0" ++notes = "The little code that is in this crate I reviewed and modified from packed_simd (which has previously been vendored in full instead of just this small part)." ++ ++[[audits.any_all_workaround]] ++who = "Henri Sivonen <hsivonen@hsivonen.fi>" ++criteria = "safe-to-deploy" ++delta = "0.1.0 -> 0.1.0@git:7fb1b7034c9f172aade21ee1c8554e8d8a48af80" ++importable = false ++notes = "This is a trivial workaround copied from elsewhere in m-c, specifically qcms." ++ + [[audits.anyhow]] + who = "Mike Hommey <mh+mozilla@glandium.org>" + criteria = "safe-to-deploy" + delta = "1.0.57 -> 1.0.61" + + [[audits.anyhow]] + who = "Bobby Holley <bobbyholley@gmail.com>" + criteria = "safe-to-deploy" +diff --git a/supply-chain/config.toml b/supply-chain/config.toml +--- supply-chain/config.toml ++++ supply-chain/config.toml +@@ -14,16 +14,20 @@ url = "https://raw.githubusercontent.com + url = "https://raw.githubusercontent.com/google/supply-chain/main/audits.toml" + + [imports.isrg] + url = "https://raw.githubusercontent.com/divviup/libprio-rs/main/supply-chain/audits.toml" + + [imports.mozilla] + url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" + ++[policy.any_all_workaround] ++audit-as-crates-io = true ++notes = "This is the upstream code plus the ARM intrinsics workaround from qcms, see bug 1882209." ++ + [policy.autocfg] + audit-as-crates-io = true + notes = "This is the upstream code plus a few local fixes, see bug 1685697." + + [policy.chardetng] + audit-as-crates-io = true + notes = "This is a crate Henri wrote which is also published. We should probably update Firefox to tip and certify that." + +diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock +--- supply-chain/imports.lock ++++ supply-chain/imports.lock +@@ -115,16 +115,23 @@ user-name = "David Tolnay" + + [[publisher.encoding_rs]] + version = "0.8.33" + when = "2023-08-23" + user-id = 4484 + user-login = "hsivonen" + user-name = "Henri Sivonen" + ++[[publisher.encoding_rs]] ++version = "0.8.34" ++when = "2024-04-10" ++user-id = 4484 ++user-login = "hsivonen" ++user-name = "Henri Sivonen" ++ + [[publisher.etagere]] + version = "0.2.7" + when = "2022-05-04" + user-id = 1281 + user-login = "nical" + user-name = "Nicolas Silva" + + [[publisher.euclid]] +diff --git a/third_party/rust/any_all_workaround/.cargo-checksum.json b/third_party/rust/any_all_workaround/.cargo-checksum.json +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/.cargo-checksum.json +@@ -0,0 +1,1 @@ ++{"files":{"Cargo.toml":"f8c127449dc9432d404c21c99833e4617ab88a797445af249a7fe3c989985d6d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","LICENSE-MIT-QCMS":"36d847ae882f6574ebc72f56a4f354e4f104fde4a584373496482e97d52d31bc","README.md":"4c617b8ced3a27b7edecf0e5e41ed451c04e88dab529e7a35fccc4e1551efbd7","build.rs":"56b29ab6da3e49075bfd0a7b690267c8016298bf0d332e2e68bbaf19decbbf71","src/lib.rs":"7118106690b9d25c5d0a3e2079feb83d76f1d434d0da36b9d0351806d27c850d"},"package":null} +\ No newline at end of file +diff --git a/third_party/rust/any_all_workaround/Cargo.toml b/third_party/rust/any_all_workaround/Cargo.toml +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/Cargo.toml +@@ -0,0 +1,28 @@ ++# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO ++# ++# When uploading crates to the registry Cargo will automatically ++# "normalize" Cargo.toml files for maximal compatibility ++# with all versions of Cargo and also rewrite `path` dependencies ++# to registry (e.g., crates.io) dependencies. ++# ++# If you are reading this file be aware that the original Cargo.toml ++# will likely look very different (and much more reasonable). ++# See Cargo.toml.orig for the original contents. ++ ++[package] ++edition = "2021" ++name = "any_all_workaround" ++version = "0.1.0" ++authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] ++description = "Workaround for bad LLVM codegen for boolean reductions on 32-bit ARM" ++homepage = "https://docs.rs/any_all_workaround/" ++documentation = "https://docs.rs/any_all_workaround/" ++readme = "README.md" ++license = "MIT OR Apache-2.0" ++repository = "https://github.com/hsivonen/any_all_workaround" ++ ++[dependencies] ++cfg-if = "1.0" ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/third_party/rust/packed_simd/LICENSE-APACHE b/third_party/rust/any_all_workaround/LICENSE-APACHE +rename from third_party/rust/packed_simd/LICENSE-APACHE +rename to third_party/rust/any_all_workaround/LICENSE-APACHE +diff --git a/third_party/rust/packed_simd/LICENSE-MIT b/third_party/rust/any_all_workaround/LICENSE-MIT +rename from third_party/rust/packed_simd/LICENSE-MIT +rename to third_party/rust/any_all_workaround/LICENSE-MIT +diff --git a/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS b/third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/LICENSE-MIT-QCMS +@@ -0,0 +1,21 @@ ++qcms ++Copyright (C) 2009-2024 Mozilla Corporation ++Copyright (C) 1998-2007 Marti Maria ++ ++Permission is hereby granted, free of charge, to any person obtaining ++a copy of this software and associated documentation files (the "Software"), ++to deal in the Software without restriction, including without limitation ++the rights to use, copy, modify, merge, publish, distribute, sublicense, ++and/or sell copies of the Software, and to permit persons to whom the Software ++is furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in ++all copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ++THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +diff --git a/third_party/rust/any_all_workaround/README.md b/third_party/rust/any_all_workaround/README.md +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/README.md +@@ -0,0 +1,13 @@ ++# any_all_workaround ++ ++This is a workaround for bad codegen ([Rust bug](https://github.com/rust-lang/portable-simd/issues/146), [LLVM bug](https://github.com/llvm/llvm-project/issues/50466)) for the `any()` and `all()` reductions for NEON-backed SIMD vectors on 32-bit ARM. On other platforms these delegate to `any()` and `all()` in `core::simd`. ++ ++The plan is to abandon this crate once the LLVM bug is fixed or `core::simd` works around the LLVM bug. ++ ++The code is forked from the [`packed_simd` crate](https://raw.githubusercontent.com/hsivonen/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs). ++ ++This crate requires Nightly Rust as it depends on the `portable_simd` feature. ++ ++# License ++ ++`MIT OR Apache-2.0`, since that's how `packed_simd` is licensed. (The ARM intrinsics Rust version workaround is from qcms, see LICENSE-MIT-QCMS.) +diff --git a/third_party/rust/any_all_workaround/build.rs b/third_party/rust/any_all_workaround/build.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/third_party/rust/any_all_workaround/src/lib.rs b/third_party/rust/any_all_workaround/src/lib.rs +new file mode 100644 +--- /dev/null ++++ third_party/rust/any_all_workaround/src/lib.rs +@@ -0,0 +1,110 @@ ++// This code began as a fork of ++// https://raw.githubusercontent.com/rust-lang/packed_simd/d938e39bee9bc5c222f5f2f2a0df9e53b5ce36ae/src/codegen/reductions/mask/arm.rs ++// which didn't have a license header on the file, but Cargo.toml said "MIT OR Apache-2.0". ++// See LICENSE-MIT and LICENSE-APACHE. ++ ++#![no_std] ++#![feature(portable_simd)] ++#![cfg_attr( ++ all( ++ stdsimd_split, ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdarch_arm_neon_intrinsics) ++)] ++#![cfg_attr( ++ all( ++ not(stdsimd_split), ++ target_arch = "arm", ++ target_endian = "little", ++ target_feature = "neon", ++ target_feature = "v7" ++ ), ++ feature(stdsimd) ++)] ++ ++use cfg_if::cfg_if; ++use core::simd::mask16x8; ++use core::simd::mask32x4; ++use core::simd::mask8x16; ++ ++cfg_if! { ++ if #[cfg(all(target_arch = "arm", target_endian = "little", target_feature = "neon", target_feature = "v7"))] { ++ use core::simd::mask8x8; ++ use core::simd::mask16x4; ++ use core::simd::mask32x2; ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline] ++ pub fn $all(s: $id) -> bool { ++ use core::arch::arm::$vpmin; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmin(transmute(halves.0), transmute(halves.1))); ++ h.all() ++ } ++ } ++ #[inline] ++ pub fn $any(s: $id) -> bool { ++ use core::arch::arm::$vpmax; ++ use core::mem::transmute; ++ unsafe { ++ union U { ++ halves: ($half, $half), ++ vec: $id, ++ } ++ let halves = U { vec: s }.halves; ++ let h: $half = transmute($vpmax(transmute(halves.0), transmute(halves.1))); ++ h.any() ++ } ++ } ++ } ++ } ++ } else { ++ macro_rules! arm_128_v7_neon_impl { ++ ($all:ident, $any:ident, $id:ident, $half:ident, $vpmin:ident, $vpmax:ident) => { ++ #[inline(always)] ++ pub fn $all(s: $id) -> bool { ++ s.all() ++ } ++ #[inline(always)] ++ pub fn $any(s: $id) -> bool { ++ s.any() ++ } ++ } ++ } ++ } ++} ++ ++arm_128_v7_neon_impl!( ++ all_mask8x16, ++ any_mask8x16, ++ mask8x16, ++ mask8x8, ++ vpmin_u8, ++ vpmax_u8 ++); ++arm_128_v7_neon_impl!( ++ all_mask16x8, ++ any_mask16x8, ++ mask16x8, ++ mask16x4, ++ vpmin_u16, ++ vpmax_u16 ++); ++arm_128_v7_neon_impl!( ++ all_mask32x4, ++ any_mask32x4, ++ mask32x4, ++ mask32x2, ++ vpmin_u32, ++ vpmax_u32 ++); +diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml +--- third_party/rust/encoding_rs/Cargo.toml ++++ third_party/rust/encoding_rs/Cargo.toml +@@ -6,18 +6,19 @@ + # to registry (e.g., crates.io) dependencies. + # + # If you are reading this file be aware that the original Cargo.toml + # will likely look very different (and much more reasonable). + # See Cargo.toml.orig for the original contents. + + [package] + edition = "2018" ++rust-version = "1.36" + name = "encoding_rs" +-version = "0.8.33" ++version = "0.8.34" + authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"] + description = "A Gecko-oriented implementation of the Encoding Standard" + homepage = "https://docs.rs/encoding_rs/" + documentation = "https://docs.rs/encoding_rs/" + readme = "README.md" + keywords = [ + "encoding", + "web", +@@ -31,23 +32,23 @@ categories = [ + "internationalization", + ] + license = "(Apache-2.0 OR MIT) AND BSD-3-Clause" + repository = "https://github.com/hsivonen/encoding_rs" + + [profile.release] + lto = true + ++[dependencies.any_all_workaround] ++version = "0.1.0" ++optional = true ++ + [dependencies.cfg-if] + version = "1.0" + +-[dependencies.packed_simd] +-version = "0.3.9" +-optional = true +- + [dependencies.serde] + version = "1.0" + optional = true + + [dev-dependencies.bincode] + version = "1.0" + + [dev-dependencies.serde_derive] +@@ -69,15 +70,9 @@ fast-legacy-encode = [ + "fast-hanja-encode", + "fast-kanji-encode", + "fast-gb-hanzi-encode", + "fast-big5-hanzi-encode", + ] + less-slow-big5-hanzi-encode = [] + less-slow-gb-hanzi-encode = [] + less-slow-kanji-encode = [] +-simd-accel = [ +- "packed_simd", +- "packed_simd/into_bits", +-] +- +-[badges.travis-ci] +-repository = "hsivonen/encoding_rs" ++simd-accel = ["any_all_workaround"] +diff --git a/third_party/rust/encoding_rs/README.md b/third_party/rust/encoding_rs/README.md +--- third_party/rust/encoding_rs/README.md ++++ third_party/rust/encoding_rs/README.md +@@ -162,50 +162,36 @@ wrappers. + * [C++](https://github.com/hsivonen/recode_cpp) + + ## Optional features + + There are currently these optional cargo features: + + ### `simd-accel` + +-Enables SIMD acceleration using the nightly-dependent `packed_simd` crate. ++Enables SIMD acceleration using the nightly-dependent `portable_simd` standard ++library feature. + + This is an opt-in feature, because enabling this feature _opts out_ of Rust's + guarantees of future compilers compiling old code (aka. "stability story"). + + Currently, this has not been tested to be an improvement except for these +-targets: ++targets and enabling the `simd-accel` feature is expected to break the build ++on other targets: + + * x86_64 + * i686 + * aarch64 + * thumbv7neon + + If you use nightly Rust, you use targets whose first component is one of the + above, and you are prepared _to have to revise your configuration when updating + Rust_, you should enable this feature. Otherwise, please _do not_ enable this + feature. + +-_Note!_ If you are compiling for a target that does not have 128-bit SIMD +-enabled as part of the target definition and you are enabling 128-bit SIMD +-using `-C target_feature`, you need to enable the `core_arch` Cargo feature +-for `packed_simd` to compile a crates.io snapshot of `core_arch` instead of +-using the standard-library copy of `core::arch`, because the `core::arch` +-module of the pre-compiled standard library has been compiled with the +-assumption that the CPU doesn't have 128-bit SIMD. At present this applies +-mainly to 32-bit ARM targets whose first component does not include the +-substring `neon`. +- +-The encoding_rs side of things has not been properly set up for POWER, +-PowerPC, MIPS, etc., SIMD at this time, so even if you were to follow +-the advice from the previous paragraph, you probably shouldn't use +-the `simd-accel` option on the less mainstream architectures at this +-time. +- + Used by Firefox. + + ### `serde` + + Enables support for serializing and deserializing `&'static Encoding`-typed + struct fields using [Serde][1]. + + [1]: https://serde.rs/ +@@ -376,18 +362,19 @@ It is a goal to support the latest stabl + the version of Rust that's used for Firefox Nightly. + + At this time, there is no firm commitment to support a version older than + what's required by Firefox, and there is no commitment to treat MSRV changes + as semver-breaking, because this crate depends on `cfg-if`, which doesn't + appear to treat MSRV changes as semver-breaking, so it would be useless for + this crate to treat MSRV changes as semver-breaking. + +-As of 2021-02-04, MSRV appears to be Rust 1.36.0 for using the crate and ++As of 2024-04-04, MSRV appears to be Rust 1.36.0 for using the crate and + 1.42.0 for doc tests to pass without errors about the global allocator. ++With the `simd-accel` feature, the MSRV is even higher. + + ## Compatibility with rust-encoding + + A compatibility layer that implements the rust-encoding API on top of + encoding_rs is + [provided as a separate crate](https://github.com/hsivonen/encoding_rs_compat) + (cannot be uploaded to crates.io). The compatibility layer was originally + written with the assuption that Firefox would need it, but it is not currently +@@ -441,20 +428,27 @@ To regenerate the generated code: + - [x] Implement the rust-encoding API in terms of encoding_rs. + - [x] Add SIMD acceleration for Aarch64. + - [x] Investigate the use of NEON on 32-bit ARM. + - [ ] ~Investigate Bj旦rn H旦hrmann's lookup table acceleration for UTF-8 as + adapted to Rust in rust-encoding.~ + - [x] Add actually fast CJK encode options. + - [ ] ~Investigate [Bob Steagall's lookup table acceleration for UTF-8](https://github.com/BobSteagall/CppNow2018/blob/master/FastConversionFromUTF-8/Fast%20Conversion%20From%20UTF-8%20with%20C%2B%2B%2C%20DFAs%2C%20and%20SSE%20Intrinsics%20-%20Bob%20Steagall%20-%20C%2B%2BNow%202018.pdf).~ + - [x] Provide a build mode that works without `alloc` (with lesser API surface). +-- [ ] Migrate to `std::simd` once it is stable and declare 1.0. ++- [x] Migrate to `std::simd` ~once it is stable and declare 1.0.~ ++- [ ] Migrate `unsafe` slice access by larger types than `u8`/`u16` to `align_to`. + + ## Release Notes + ++### 0.8.34 ++ ++* Use the `portable_simd` nightly feature of the standard library instead of the `packed_simd` crate. Only affects the `simd-accel` optional nightly feature. ++* Internal documentation improvements and minor code improvements around `unsafe`. ++* Added `rust-version` to `Cargo.toml`. ++ + ### 0.8.33 + + * Use `packed_simd` instead of `packed_simd_2` again now that updates are back under the `packed_simd` name. Only affects the `simd-accel` optional nightly feature. + + ### 0.8.32 + + * Removed `build.rs`. (This removal should resolve false positives reported by some antivirus products. This may break some build configurations that have opted out of Rust's guarantees against future build breakage.) + * Internal change to what API is used for reinterpreting the lane configuration of SIMD vectors. +diff --git a/third_party/rust/encoding_rs/src/ascii.rs b/third_party/rust/encoding_rs/src/ascii.rs +--- third_party/rust/encoding_rs/src/ascii.rs ++++ third_party/rust/encoding_rs/src/ascii.rs +@@ -46,71 +46,87 @@ cfg_if! { + #[allow(dead_code)] + #[inline(always)] + fn likely(b: bool) -> bool { + b + } + } + } + ++// Safety invariants for masks: data & mask = 0 for valid ASCII or basic latin utf-16 ++ + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const ASCII_MASK: usize = 0x8080_8080_8080_8080u64 as usize; + + // `as` truncates, so works on 32-bit, too. + #[allow(dead_code)] + pub const BASIC_LATIN_MASK: usize = 0xFF80_FF80_FF80_FF80u64 as usize; + + #[allow(unused_macros)] + macro_rules! ascii_naive { + ($name:ident, $src_unit:ty, $dst_unit:ty) => { ++ /// Safety: src and dst must have len_unit elements and be aligned ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + // Yes, manually omitting the bound check here matters + // a lot for perf. + for i in 0..len { ++ // Safety: len invariant used here + let code_unit = *(src.add(i)); ++ // Safety: Upholds safety-usable invariant here + if code_unit > 127 { + return Some((code_unit, i)); + } ++ // Safety: len invariant used here + *(dst.add(i)) = code_unit as $dst_unit; + } + return None; + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_alu { + ($name:ident, ++ // safety invariant: src/dst MUST be u8 + $src_unit:ty, + $dst_unit:ty, ++ // Safety invariant: stride_fn must consume and produce two usizes, and return the index of the first non-ascii when it fails + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr(feature = "cargo-clippy", allow(never_loop, cast_ptr_alignment))] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch until we are aligned to usize + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + let src_alignment = (src as usize) & ALU_ALIGNMENT_MASK; + let dst_alignment = (dst as usize) & ALU_ALIGNMENT_MASK; + if src_alignment != dst_alignment { ++ // Safety: bails early and ends up in the na誰ve branch where usize-alignment doesn't matter + break; + } + (ALU_ALIGNMENT - src_alignment) & ALU_ALIGNMENT_MASK + // } else if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // ascii_to_basic_latin + // let src_until_alignment = (ALIGNMENT - ((src as usize) & ALIGNMENT_MASK)) & ALIGNMENT_MASK; + // if (dst.add(src_until_alignment) as usize) & ALIGNMENT_MASK != 0 { + // break; +@@ -129,74 +145,104 @@ macro_rules! ascii_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: num_ascii is known to be a byte index of a non-ascii byte due to stride_fn's invariant + if let Some(num_ascii) = $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + offset += num_ascii; ++ // Safety: Upholds safety-usable invariant here by indexing into non-ascii byte + return Some((*(src.add(offset)), offset)); + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ ++ // Safety: This is the na誰ve code, same as ascii_naive, and has no requirements ++ // other than src/dst being valid for the the right lens + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_alu { + ($name:ident, ++ // safety invariant: use u8 for src/dest for ascii, and u16 for basic_latin + $src_unit:ty, + $dst_unit:ty, ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write ++ /// Safety-usable invariant: will return Some() when it fails ++ /// to convert. The first value will be a u8 that is > 127. + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure basic-latin has the same alignment as ascii, starting with ascii since it is smaller. + let mut until_alignment = { + // Check if the other unit aligns if we move the narrower unit + // to alignment. + // if ::core::mem::size_of::<$src_unit>() == ::core::mem::size_of::<$dst_unit>() { + // ascii_to_ascii + // let src_alignment = (src as usize) & ALIGNMENT_MASK; + // let dst_alignment = (dst as usize) & ALIGNMENT_MASK; + // if src_alignment != dst_alignment { +@@ -232,66 +278,89 @@ macro_rules! basic_latin_alu { + // Moving pointers to alignment seems to be a pessimization on + // x86_64 for operations that have UTF-16 as the internal + // Unicode representation. However, since it seems to be a win + // on ARM (tested ARMv7 code running on ARMv8 [rpi3]), except + // mixed results when encoding from UTF-16 and since x86 and + // x86_64 should be using SSE2 in due course, keeping the move + // to alignment here. It would be good to test on more ARM CPUs + // and on real MIPS and POWER hardware. ++ // ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + if !$stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ) { + break; + } ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: Upholds safety-usable invariant here + return Some((code_unit, offset)); + } ++ // Safety: len invariant used here + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_alu { ++ // safety invariant: stride function must munch ALU_STRIDE_SIZE*size(src_unit) bytes off of src and ++ // write ALU_STRIDE_SIZE*size(dst_unit) bytes to dst + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_fn:ident) => { ++ /// Safety: src and dst must have len elements, src is valid for read, dst is valid for ++ /// write + #[cfg_attr( + feature = "cargo-clippy", + allow(never_loop, cast_ptr_alignment, cast_lossless) + )] + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; + // This loop is only broken out of as a `goto` forward + loop { ++ // Safety: until_alignment becomes the number of bytes we need to munch from src/dest until we are aligned to usize ++ // We ensure the UTF-16 side has the same alignment as the Latin-1 side, starting with Latin-1 since it is smaller. + let mut until_alignment = { + if ::core::mem::size_of::<$src_unit>() < ::core::mem::size_of::<$dst_unit>() { + // unpack + let src_until_alignment = (ALU_ALIGNMENT + - ((src as usize) & ALU_ALIGNMENT_MASK)) + & ALU_ALIGNMENT_MASK; + if (dst.wrapping_add(src_until_alignment) as usize) & ALU_ALIGNMENT_MASK + != 0 +@@ -308,373 +377,485 @@ macro_rules! latin1_alu { + != 0 + { + break; + } + dst_until_alignment + } + }; + if until_alignment + ALU_STRIDE_SIZE <= len { ++ // Safety: This is the na誰ve code once again, for `until_alignment` bytes + while until_alignment != 0 { + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; ++ // Safety: offset is the number of bytes copied so far + offset += 1; + until_alignment -= 1; + } + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { + $stride_fn( ++ // Safety: These are known to be valid and aligned since we have at ++ // least ALU_STRIDE_SIZE data in these buffers, and offset is the ++ // number of elements copied so far, which according to the ++ // until_alignment calculation above will cause both src and dst to be ++ // aligned to usize after this add + src.add(offset) as *const usize, + dst.add(offset) as *mut usize, + ); ++ // Safety: offset continues to be the number of bytes copied so far, and ++ // maintains usize alignment for the next loop iteration + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > len - stride. This loop will continue as long as ++ // `offset <= len - stride`, which means there are `stride` bytes to still be read. + if offset > len_minus_stride { + break; + } + } + } + break; + } ++ // Safety: This is the na誰ve code once again, for leftover bytes + while offset < len { ++ // Safety: len invariant used here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + // XXX Should we first process one stride unconditionally as unaligned to + // avoid the cost of the branchiness below if the first stride fails anyway? + // XXX Should we just use unaligned SSE2 access unconditionally? It seems that + // on Haswell, it would make sense to just use unaligned and not bother + // checking. Need to benchmark older architectures before deciding. + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Safety: checking whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { ++ // Safety: Checking whether dst is aligned + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_dst_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: We're valid to read/write SIMD_STRIDE_SIZE elements and have the appropriate alignments + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety: upholds safety-usable invariant + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing 2*SIMD_STRIDE_SIZE src_unit/dst_unit + $double_stride_src_aligned:ident + ) => { +- #[inline(always)] ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; + // This loop is only broken out of as a goto forward without + // actually looping + 'outer: loop { ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned ++ // Safety: this is safe to call since we're valid for this read/write + if !$stride_neither_aligned(src, dst) { + break 'outer; + } + offset = SIMD_STRIDE_SIZE; + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is less that SIMD_ALIGNMENT, which is also SIMD_STRIDE_SIZE (as documented) + let until_alignment = ((SIMD_ALIGNMENT + - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; +- // This addition won't overflow, because even in the 32-bit PAE case the ++ // Safety: This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read/write (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading/writing 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); ++ // Safety: This is whether dst is aligned + let dst_masked = (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK; + if dst_masked == 0 { + loop { ++ // Safety: both are aligned, we can call the aligned function. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_both_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_both_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } else { + loop { ++ // Safety: only src is aligned here. We're valid for reading/writing double stride from the initial condition ++ // and the loop break condition below + if let Some(advance) = + $double_stride_src_aligned(src.add(offset), dst.add(offset)) + { + offset += advance; + let code_unit = *(src.add(offset)); ++ // Safety: uses safety-usable invariant on ascii_to_ascii_simd_double_stride to return ++ // guaranteed non-ascii + return Some((code_unit, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. ++ + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: We're valid for reading/writing one more, and can still assume alignment + if offset + SIMD_STRIDE_SIZE <= len { + if !$stride_src_aligned(src.add(offset), dst.add(offset)) { + break 'outer; + } + offset += SIMD_STRIDE_SIZE; + } + } + } else { + // At most two iterations, so unroll + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: The check above ensures we're allowed to read/write this, and we don't use alignment + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + break 'outer; + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident ++ + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Whether dst is aligned + let dst_masked = (dst as usize) & SIMD_ALIGNMENT_MASK; ++ // Whether src is aligned + if ((src as usize) & SIMD_ALIGNMENT_MASK) == 0 { + if dst_masked == 0 { + loop { ++ // Safety: Both were aligned, we can use the aligned function + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: src was aligned, dst was not + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } else { + if dst_masked == 0 { + loop { ++ // Safety: src was aligned, dst was not + $stride_dst_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } else { + loop { ++ // Safety: Neither were aligned + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which means in the next iteration we're valid for ++ // reading/writing at least SIMD_STRIDE_SIZE elements. + if offset > len_minus_stride { + break; + } + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_check_align_unrolled { + ( + $name:ident, + $src_unit:ty, + $dst_unit:ty, ++ // Safety: This function must require aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_both_aligned:ident, ++ // Safety: This function must require aligned/unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_src_aligned:ident, ++ // Safety: This function must require unaligned/aligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_dst_aligned:ident, ++ // Safety: This function must require unaligned src/dest that are valid for reading/writing SIMD_STRIDE_SIZE src_unit/dst_unit + $stride_neither_aligned:ident + ) => { ++ /// Safety: src/dst must be valid for reads/writes of `len` elements of their units. + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let unit_size = ::core::mem::size_of::<$src_unit>(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `SIMD_STRIDE_SIZE` elements. + if SIMD_STRIDE_SIZE <= len { ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_STRIDE_SIZE. + let mut until_alignment = ((SIMD_STRIDE_SIZE + - ((src as usize) & SIMD_ALIGNMENT_MASK)) + & SIMD_ALIGNMENT_MASK) + / unit_size; + while until_alignment != 0 { ++ // Safety: This is a straightforward copy, since until_alignment is < SIMD_STRIDE_SIZE < len, this is in-bounds + *(dst.add(offset)) = *(src.add(offset)) as $dst_unit; + offset += 1; + until_alignment -= 1; + } ++ // Safety: here offset will be `until_alignment`, i.e. enough to align `src`. + let len_minus_stride = len - SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading/writing at least `2 * SIMD_STRIDE_SIZE` elements. + if offset + SIMD_STRIDE_SIZE * 2 <= len { + let len_minus_stride_times_two = len_minus_stride - SIMD_STRIDE_SIZE; ++ // Safety: at this point src is known to be aligned at offset, dst is not. + if (dst.add(offset) as usize) & SIMD_ALIGNMENT_MASK == 0 { + loop { ++ // Safety: We checked alignment of dst above, we can use the alignment functions. We're allowed to read/write 2*SIMD_STRIDE_SIZE elements, which we do. + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_both_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } else { + loop { ++ // Safety: we ensured alignment of src already. + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } + } + } ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE` which means we are valid to munch SIMD_STRIDE_SIZE more elements, which we do + if offset < len_minus_stride { + $stride_src_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; + } + } + while offset < len { ++ // Safety: uses len invariant here and below + let code_unit = *(src.add(offset)); + // On x86_64, this loop autovectorizes but in the pack + // case there are instructions whose purpose is to make sure + // each u16 in the vector is truncated before packing. However, + // since we don't care about saturating behavior of SSE2 packing + // when the input isn't Latin1, those instructions are useless. + // Unfortunately, using the `assume` intrinsic to lie to the + // optimizer doesn't make LLVM omit the trunctation that we +@@ -688,138 +869,180 @@ macro_rules! latin1_simd_check_align_unr + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for reads/writes of len elements of type src_unit/dst_unit ++ /// ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub unsafe fn $name( + src: *const $src_unit, + dst: *mut $dst_unit, + len: usize, + ) -> Option<($src_unit, usize)> { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + if !$stride_neither_aligned(src.add(offset), dst.add(offset)) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here and below + let code_unit = *(src.add(offset)); + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! latin1_simd_unalign { ++ // Safety: stride_neither_aligned must be a function that requires src/dest be valid for unaligned reads/writes for SIMD_STRIDE_SIZE elements of type src_unit/dest_unit + ($name:ident, $src_unit:ty, $dst_unit:ty, $stride_neither_aligned:ident) => { ++ /// Safety: src and dst must be valid for unaligned reads/writes of len elements of type src_unit/dst_unit + #[inline(always)] + pub unsafe fn $name(src: *const $src_unit, dst: *mut $dst_unit, len: usize) { + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: We know we're valid for `stride` reads/writes, so we can call this function. We don't need alignment. + $stride_neither_aligned(src.add(offset), dst.add(offset)); + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - stride` which means we always have at least `stride` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { ++ // Safety: Uses len invariant here + let code_unit = *(src.add(offset)); + *(dst.add(offset)) = code_unit as $dst_unit; + offset += 1; + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + $store(dst, simd); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_ascii_simd_double_stride { ++ // Safety: store must be valid for 32 bytes of write, which may be unaligned (candidates: `store(8|16)_(aligned|unaligned)`) + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 32 bytes of aligned u8x16 read ++ /// dst must be valid for 32 bytes of unaligned write according to ++ /// the $store fn, which may allow for unaligned writes or require ++ /// alignment to either 16x8 or u8x16. ++ /// ++ /// Safety-usable invariant: Returns Some(index) if the element at `index` is invalid ASCII + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u8) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + $store(dst, first); + if unlikely(!simd_is_ascii(first | second)) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + return Some(mask_first.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + return Some(SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize); + } + $store(dst.add(SIMD_STRIDE_SIZE), second); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16/32 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> bool { + let simd = $load(src); + if !simd_is_ascii(simd) { + return false; + } + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + true + } + }; + } + + #[allow(unused_macros)] + macro_rules! ascii_to_basic_latin_simd_double_stride { ++ // Safety: store must be valid for 16 bytes of write, which may be unaligned + ($name:ident, $store:ident) => { ++ /// Safety: src must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned reads, ++ /// aligned to either 16x8 or u8x16. ++ /// dst must be valid for 2*SIMD_STRIDE_SIZE bytes of aligned or unaligned reads + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) -> Option<usize> { + let first = load16_aligned(src); + let second = load16_aligned(src.add(SIMD_STRIDE_SIZE)); + let (a, b) = simd_unpack(first); + $store(dst, a); ++ // Safety: divide by 2 since it's a u16 pointer + $store(dst.add(SIMD_STRIDE_SIZE / 2), b); + if unlikely(!simd_is_ascii(first | second)) { + let mask_first = mask_ascii(first); + if mask_first != 0 { + return Some(mask_first.trailing_zeros() as usize); + } + let (c, d) = simd_unpack(second); + $store(dst.add(SIMD_STRIDE_SIZE), c); +@@ -832,47 +1055,59 @@ macro_rules! ascii_to_basic_latin_simd_d + $store(dst.add(SIMD_STRIDE_SIZE + (SIMD_STRIDE_SIZE / 2)), d); + None + } + }; + } + + #[allow(unused_macros)] + macro_rules! unpack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u8, dst: *mut u16) { + let simd = $load(src); + let (first, second) = simd_unpack(simd); + $store(dst, first); + $store(dst.add(8), second); + } + }; + } + + #[allow(unused_macros)] + macro_rules! basic_latin_to_ascii_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) -> bool { + let first = $load(src); + let second = $load(src.add(8)); + if simd_is_basic_latin(first | second) { + $store(dst, simd_pack(first, second)); + true + } else { + false + } + } + }; + } + + #[allow(unused_macros)] + macro_rules! pack_simd_stride { ++ // Safety: load/store must be valid for 16 bytes of read/write, which may be unaligned. (candidates: `(load|store)(16|8)_(unaligned|aligned)` functions) + ($name:ident, $load:ident, $store:ident) => { ++ /// Safety: src and dst must be valid for 32/16 bytes of read/write according to ++ /// the $load/$store fn, which may allow for unaligned reads/writes or require ++ /// alignment to either 16x8 or u8x16. + #[inline(always)] + pub unsafe fn $name(src: *const u16, dst: *mut u8) { + let first = $load(src); + let second = $load(src.add(8)); + $store(dst, simd_pack(first, second)); + } + }; + } +@@ -888,24 +1123,28 @@ cfg_if! { + // pub const ALIGNMENT: usize = 8; + + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const ALU_ALIGNMENT: usize = 8; + + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently produce ++ // neither_unaligned variants using only unaligned inputs. + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_neither_aligned, load16_unaligned, store8_unaligned); + unpack_simd_stride!(unpack_stride_neither_aligned, load16_unaligned, store8_unaligned); + + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the unalign macro with unalign functions above. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. + ascii_simd_unalign!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_neither_aligned); + ascii_simd_unalign!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_unalign!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_unalign!(unpack_latin1, u8, u16, unpack_stride_neither_aligned); + latin1_simd_unalign!(pack_latin1, u16, u8, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_endian = "little", target_feature = "neon"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // +@@ -914,16 +1153,19 @@ cfg_if! { + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_dst_aligned, load16_unaligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_neither_aligned, load16_unaligned, store16_unaligned); + + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_both_aligned, load16_aligned, store8_aligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_src_aligned, load16_aligned, store8_unaligned); + ascii_to_basic_latin_simd_stride!(ascii_to_basic_latin_stride_dst_aligned, load16_unaligned, store8_aligned); +@@ -939,36 +1181,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + pack_simd_stride!(pack_stride_dst_aligned, load8_unaligned, store16_aligned); + pack_simd_stride!(pack_stride_neither_aligned, load8_unaligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_dst_aligned, ascii_to_ascii_stride_neither_aligned); + ascii_simd_check_align!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_dst_aligned, ascii_to_basic_latin_stride_neither_aligned); + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { + // SIMD with different instructions for aligned and unaligned loads and stores. + // + // Newer microarchitectures are not supposed to have a performance difference between + // aligned and unaligned SSE2 loads and stores when the address is actually aligned, + // but the benchmark results I see don't agree. + + pub const SIMD_STRIDE_SIZE: usize = 16; + ++ /// Safety-usable invariant: This should be identical to SIMD_STRIDE_SIZE (used by ascii_simd_check_align_unrolled) + pub const SIMD_ALIGNMENT: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + + pub const SIMD_ALIGNMENT_MASK: usize = 15; + ++ // Safety for stride macros: We stick to the load8_aligned/etc family of functions. We consistently name ++ // aligned/unaligned functions according to src/dst being aligned/unaligned ++ + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_both_aligned, store16_aligned); + ascii_to_ascii_simd_double_stride!(ascii_to_ascii_simd_double_stride_src_aligned, store16_unaligned); + + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_both_aligned, store8_aligned); + ascii_to_basic_latin_simd_double_stride!(ascii_to_basic_latin_simd_double_stride_src_aligned, store8_unaligned); + + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_both_aligned, load16_aligned, store16_aligned); + ascii_to_ascii_simd_stride!(ascii_to_ascii_stride_src_aligned, load16_aligned, store16_unaligned); +@@ -984,33 +1233,43 @@ cfg_if! { + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_both_aligned, load8_aligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_src_aligned, load8_aligned, store16_unaligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_dst_aligned, load8_unaligned, store16_aligned); + basic_latin_to_ascii_simd_stride!(basic_latin_to_ascii_stride_neither_aligned, load8_unaligned, store16_unaligned); + + pack_simd_stride!(pack_stride_both_aligned, load8_aligned, store16_aligned); + pack_simd_stride!(pack_stride_src_aligned, load8_aligned, store16_unaligned); + ++ // Safety for conversion macros: We use the correct pattern of both/src/dst/neither/double_both/double_src here. All stride functions were produced ++ // by stride macros that universally munch a single SIMD_STRIDE_SIZE worth of elements. ++ + ascii_simd_check_align_unrolled!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride_both_aligned, ascii_to_ascii_stride_src_aligned, ascii_to_ascii_stride_neither_aligned, ascii_to_ascii_simd_double_stride_both_aligned, ascii_to_ascii_simd_double_stride_src_aligned); + ascii_simd_check_align_unrolled!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_both_aligned, ascii_to_basic_latin_stride_src_aligned, ascii_to_basic_latin_stride_neither_aligned, ascii_to_basic_latin_simd_double_stride_both_aligned, ascii_to_basic_latin_simd_double_stride_src_aligned); + + ascii_simd_check_align!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_both_aligned, basic_latin_to_ascii_stride_src_aligned, basic_latin_to_ascii_stride_dst_aligned, basic_latin_to_ascii_stride_neither_aligned); + latin1_simd_check_align_unrolled!(unpack_latin1, u8, u16, unpack_stride_both_aligned, unpack_stride_src_aligned, unpack_stride_dst_aligned, unpack_stride_neither_aligned); + latin1_simd_check_align_unrolled!(pack_latin1, u16, u8, pack_stride_both_aligned, pack_stride_src_aligned, pack_stride_dst_aligned, pack_stride_neither_aligned); + } else if #[cfg(all(target_endian = "little", target_pointer_width = "64"))] { + // Aligned ALU word, little-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | + ((0x0000_0000_0000_FF00usize & word) << 8) | + (0x0000_0000_0000_00FFusize & word); + let second = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | +@@ -1019,22 +1278,24 @@ cfg_if! { + let third = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); + let fourth = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000_0000_0000usize & second) << 8) | + ((0x0000_00FF_0000_0000usize & second) << 16) | + ((0x0000_0000_00FF_0000usize & second) << 24) | + ((0x0000_0000_0000_00FFusize & second) << 32) | + ((0x00FF_0000_0000_0000usize & first) >> 24) | + ((0x0000_00FF_0000_0000usize & first) >> 16) | +@@ -1043,70 +1304,88 @@ cfg_if! { + let second_word = ((0x00FF_0000_0000_0000usize & fourth) << 8) | + ((0x0000_00FF_0000_0000usize & fourth) << 16) | + ((0x0000_0000_00FF_0000usize & fourth) << 24) | + ((0x0000_0000_0000_00FFusize & fourth) << 32) | + ((0x00FF_0000_0000_0000usize & third) >> 24) | + ((0x0000_00FF_0000_0000usize & third) >> 16) | + ((0x0000_0000_00FF_0000usize & third) >> 8) | + (0x0000_0000_0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "little", target_pointer_width = "32"))] { + // Aligned ALU word, little-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let second = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let third = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); + let fourth = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & second) << 8) | + ((0x0000_00FFusize & second) << 16) | + ((0x00FF_0000usize & first) >> 8) | + (0x0000_00FFusize & first); + let second_word = ((0x00FF_0000usize & fourth) << 8) | + ((0x0000_00FFusize & fourth) << 16) | + ((0x00FF_0000usize & third) >> 8) | + (0x0000_00FFusize & third); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "64"))] { + // Aligned ALU word, big-endian, 64-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 16; + + pub const MAX_STRIDE_SIZE: usize = 16; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 8; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 7; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000_0000_0000usize & word) >> 8) | + ((0x00FF_0000_0000_0000usize & word) >> 16) | + ((0x0000_FF00_0000_0000usize & word) >> 24) | + ((0x0000_00FF_0000_0000usize & word) >> 32); + let second = ((0x0000_0000_FF00_0000usize & word) << 24) | + ((0x0000_0000_00FF_0000usize & word) << 16) | +@@ -1115,22 +1394,24 @@ cfg_if! { + let third = ((0xFF00_0000_0000_0000usize & second_word) >> 8) | + ((0x00FF_0000_0000_0000usize & second_word) >> 16) | + ((0x0000_FF00_0000_0000usize & second_word) >> 24) | + ((0x0000_00FF_0000_0000usize & second_word) >> 32); + let fourth = ((0x0000_0000_FF00_0000usize & second_word) << 24) | + ((0x0000_0000_00FF_0000usize & second_word) << 16) | + ((0x0000_0000_0000_FF00usize & second_word) << 8) | + (0x0000_0000_0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF0000_00000000usize & first) << 8) | + ((0x000000FF_00000000usize & first) << 16) | + ((0x00000000_00FF0000usize & first) << 24) | + ((0x00000000_000000FFusize & first) << 32) | + ((0x00FF0000_00000000usize & second) >> 24) | + ((0x000000FF_00000000usize & second) >> 16) | +@@ -1139,67 +1420,80 @@ cfg_if! { + let second_word = ((0x00FF0000_00000000usize & third) << 8) | + ((0x000000FF_00000000usize & third) << 16) | + ((0x00000000_00FF0000usize & third) << 24) | + ((0x00000000_000000FFusize & third) << 32) | + ((0x00FF0000_00000000usize & fourth) >> 24) | + ((0x000000FF_00000000usize & fourth) >> 16) | + ((0x00000000_00FF0000usize & fourth) >> 8) | + (0x00000000_000000FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else if #[cfg(all(target_endian = "big", target_pointer_width = "32"))] { + // Aligned ALU word, big-endian, 32-bit + ++ /// Safety invariant: this is the amount of bytes consumed by ++ /// unpack_alu. This will be twice the pointer width, as it consumes two usizes. ++ /// This is also the number of bytes produced by pack_alu. ++ /// This is also the number of u16 code units produced/consumed by unpack_alu/pack_alu respectively. + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const MAX_STRIDE_SIZE: usize = 8; + ++ // Safety invariant: this is the pointer width in bytes + pub const ALU_ALIGNMENT: usize = 4; + ++ // Safety invariant: this is a mask for getting the bits of a pointer not aligned to ALU_ALIGNMENT + pub const ALU_ALIGNMENT_MASK: usize = 3; + ++ /// Safety: dst must point to valid space for writing four `usize`s + #[inline(always)] + unsafe fn unpack_alu(word: usize, second_word: usize, dst: *mut usize) { + let first = ((0xFF00_0000usize & word) >> 8) | + ((0x00FF_0000usize & word) >> 16); + let second = ((0x0000_FF00usize & word) << 8) | + (0x0000_00FFusize & word); + let third = ((0xFF00_0000usize & second_word) >> 8) | + ((0x00FF_0000usize & second_word) >> 16); + let fourth = ((0x0000_FF00usize & second_word) << 8) | + (0x0000_00FFusize & second_word); ++ // Safety: fn invariant used here + *dst = first; + *(dst.add(1)) = second; + *(dst.add(2)) = third; + *(dst.add(3)) = fourth; + } + ++ /// Safety: dst must point to valid space for writing two `usize`s + #[inline(always)] + unsafe fn pack_alu(first: usize, second: usize, third: usize, fourth: usize, dst: *mut usize) { + let word = ((0x00FF_0000usize & first) << 8) | + ((0x0000_00FFusize & first) << 16) | + ((0x00FF_0000usize & second) >> 8) | + (0x0000_00FFusize & second); + let second_word = ((0x00FF_0000usize & third) << 8) | + ((0x0000_00FFusize & third) << 16) | + ((0x00FF_0000usize & fourth) >> 8) | + (0x0000_00FFusize & fourth); ++ // Safety: fn invariant used here + *dst = word; + *(dst.add(1)) = second_word; + } + } else { + ascii_naive!(ascii_to_ascii, u8, u8); + ascii_naive!(ascii_to_basic_latin, u8, u16); + ascii_naive!(basic_latin_to_ascii, u16, u8); + } + } + + cfg_if! { ++ // Safety-usable invariant: this counts the zeroes from the "first byte" of utf-8 data packed into a usize ++ // with the target endianness + if #[cfg(target_endian = "little")] { + #[allow(dead_code)] + #[inline(always)] + fn count_zeros(word: usize) -> u32 { + word.trailing_zeros() + } + } else { + #[allow(dead_code)] +@@ -1207,208 +1501,272 @@ cfg_if! { + fn count_zeros(word: usize) -> u32 { + word.leading_zeros() + } + } + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", target_endian = "little", target_arch = "disabled"))] { ++ /// Safety-usable invariant: Will return the value and position of the first non-ASCII byte in the slice in a Some if found. ++ /// In other words, the first element of the Some is always `> 127` + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading/writing at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { ++ // Safety: src at offset is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + if !simd_is_ascii(simd) { + break; + } + offset += SIMD_STRIDE_SIZE; ++ // This is `offset > len - SIMD_STRIDE_SIZE` which means we always have at least `SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety: Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else if #[cfg(all(feature = "simd-accel", target_feature = "sse2"))] { ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; ++ // Safety: if this check succeeds we're valid for reading at least `stride` elements. + if SIMD_STRIDE_SIZE <= len { + // First, process one unaligned vector ++ // Safety: src is valid for a `SIMD_STRIDE_SIZE` read + let simd = unsafe { load16_unaligned(src) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset = mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset = SIMD_STRIDE_SIZE; ++ // Safety: Now that offset has changed we don't yet know how much it is valid for + + // We have now seen 16 ASCII bytes. Let's guess that + // there will be enough more to justify more expense + // in the case of non-ASCII. + // Use aligned reads for the sake of old microachitectures. ++ // Safety: this correctly calculates the number of src_units that need to be read before the remaining list is aligned. ++ // This is by definition less than SIMD_ALIGNMENT, which is defined to be equal to SIMD_STRIDE_SIZE. + let until_alignment = unsafe { (SIMD_ALIGNMENT - ((src.add(offset) as usize) & SIMD_ALIGNMENT_MASK)) & SIMD_ALIGNMENT_MASK }; + // This addition won't overflow, because even in the 32-bit PAE case the + // address space holds enough code that the slice length can't be that + // close to address space size. + // offset now equals SIMD_STRIDE_SIZE, hence times 3 below. ++ // ++ // Safety: if this check succeeds we're valid for reading at least `2 * SIMD_STRIDE_SIZE` elements plus `until_alignment`. ++ // The extra SIMD_STRIDE_SIZE in the condition is because `offset` is already `SIMD_STRIDE_SIZE`. + if until_alignment + (SIMD_STRIDE_SIZE * 3) <= len { + if until_alignment != 0 { ++ // Safety: this is safe to call since we're valid for this read (and more), and don't care about alignment ++ // This will copy over bytes that get decoded twice since it's not incrementing `offset` by SIMD_STRIDE_SIZE. This is fine. + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; + return Some((non_ascii, offset)); + } + offset += until_alignment; + } ++ // Safety: At this point we're valid for reading 2*SIMD_STRIDE_SIZE elements ++ // Safety: Now `offset` is aligned for `src` + let len_minus_stride_times_two = len - (SIMD_STRIDE_SIZE * 2); + loop { ++ // Safety: We were valid for this read, and were aligned. + let first = unsafe { load16_aligned(src.add(offset)) }; + let second = unsafe { load16_aligned(src.add(offset + SIMD_STRIDE_SIZE)) }; + if !simd_is_ascii(first | second) { ++ // Safety: mask_ascii produces a mask of all the high bits. + let mask_first = mask_ascii(first); + if mask_first != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src ++ // TODO SAFETY: What about big-endian systems? + offset += mask_first.trailing_zeros() as usize; + } else { + let mask_second = mask_ascii(second); ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += SIMD_STRIDE_SIZE + mask_second.trailing_zeros() as usize; + } ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + let non_ascii = unsafe { *src.add(offset) }; ++ + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE * 2; ++ // Safety: This is `offset > len - 2 * SIMD_STRIDE_SIZE` which means we always have at least `2 * SIMD_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride_times_two { + break; + } + } ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { +- let simd = unsafe { load16_aligned(src.add(offset)) }; +- let mask = mask_ascii(simd); ++ // Safety: We were valid for this read, and were aligned. ++ let simd = unsafe { load16_aligned(src.add(offset)) }; ++ // Safety: mask_ascii produces a mask of all the high bits. ++ let mask = mask_ascii(simd); + if mask != 0 { ++ // Safety: on little endian systems this will be the number of ascii bytes ++ // before the first non-ascii, i.e. valid for indexing src + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety: We know this is non-ASCII, and can uphold the safety-usable invariant here + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } else { ++ // Safety: this is the unaligned branch + // At most two iterations, so unroll ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: if this check succeeds we're valid for reading at least `SIMD_STRIDE_SIZE` + if offset + SIMD_STRIDE_SIZE <= len { ++ // Safety: We're valid for this read but must use an unaligned read + let simd = unsafe { load16_unaligned(src.add(offset)) }; + let mask = mask_ascii(simd); + if mask != 0 { + offset += mask.trailing_zeros() as usize; + let non_ascii = unsafe { *src.add(offset) }; ++ // Safety-usable invariant upheld here (same as above) + return Some((non_ascii, offset)); + } + offset += SIMD_STRIDE_SIZE; + } + } + } + } + while offset < len { ++ // Safety: relies straightforwardly on the `len` invariant + let code_unit = unsafe { *(src.add(offset)) }; + if code_unit > 127 { ++ // Safety-usable invariant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + } else { ++ // Safety-usable invariant: returns byte index of first non-ascii byte + #[inline(always)] + fn find_non_ascii(word: usize, second_word: usize) -> Option<usize> { + let word_masked = word & ASCII_MASK; + let second_masked = second_word & ASCII_MASK; + if (word_masked | second_masked) == 0 { ++ // Both are ascii, invariant upheld + return None; + } + if word_masked != 0 { + let zeros = count_zeros(word_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + return Some(num_ascii); + } + let zeros = count_zeros(second_masked); +- // `zeros` now contains 7 (for the seven bits of non-ASCII) ++ // `zeros` now contains 0 to 7 (for the seven bits of masked ASCII in little endian, ++ // or up to 7 bits of non-ASCII in big endian if the first byte is non-ASCII) + // plus 8 times the number of ASCII in text order before the + // non-ASCII byte in the little-endian case or 8 times the number of ASCII in + // text order before the non-ASCII byte in the big-endian case. + let num_ascii = (zeros >> 3) as usize; ++ // Safety-usable invariant upheld here + Some(ALU_ALIGNMENT + num_ascii) + } + ++ /// Safety: `src` must be valid for the reads of two `usize`s ++ /// ++ /// Safety-usable invariant: will return byte index of first non-ascii byte + #[inline(always)] + unsafe fn validate_ascii_stride(src: *const usize) -> Option<usize> { + let word = *src; + let second_word = *(src.add(1)); + find_non_ascii(word, second_word) + } + ++ /// Safety-usable invariant: will return Some() when it encounters non-ASCII, with the first element in the Some being ++ /// guaranteed to be non-ASCII (> 127), and the second being the offset where it is found + #[cfg_attr(feature = "cargo-clippy", allow(cast_ptr_alignment))] + #[inline(always)] + pub fn validate_ascii(slice: &[u8]) -> Option<(u8, usize)> { + let src = slice.as_ptr(); + let len = slice.len(); + let mut offset = 0usize; + let mut until_alignment = (ALU_ALIGNMENT - ((src as usize) & ALU_ALIGNMENT_MASK)) & ALU_ALIGNMENT_MASK; ++ // Safety: If this check fails we're valid to read `until_alignment + ALU_STRIDE_SIZE` elements + if until_alignment + ALU_STRIDE_SIZE <= len { + while until_alignment != 0 { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + until_alignment -= 1; + } ++ // Safety: At this point we have read until_alignment elements and ++ // are valid for `ALU_STRIDE_SIZE` more. + let len_minus_stride = len - ALU_STRIDE_SIZE; + loop { ++ // Safety: we were valid for this read + let ptr = unsafe { src.add(offset) as *const usize }; + if let Some(num_ascii) = unsafe { validate_ascii_stride(ptr) } { + offset += num_ascii; ++ // Safety-usable invairant upheld here using the invariant from validate_ascii_stride() + return Some((unsafe { *(src.add(offset)) }, offset)); + } + offset += ALU_STRIDE_SIZE; ++ // Safety: This is `offset > ALU_STRIDE_SIZE` which means we always have at least `2 * ALU_STRIDE_SIZE` elements to munch next time. + if offset > len_minus_stride { + break; + } + } + } + while offset < len { + let code_unit = slice[offset]; + if code_unit > 127 { ++ // Safety-usable invairant upheld here + return Some((code_unit, offset)); + } + offset += 1; + } + None + } + + } +@@ -1423,70 +1781,88 @@ cfg_if! { + // vector reads without vector writes. + + pub const ALU_STRIDE_SIZE: usize = 8; + + pub const ALU_ALIGNMENT: usize = 4; + + pub const ALU_ALIGNMENT_MASK: usize = 3; + } else { ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn unpack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + } + ++ // Safety: src points to four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn pack_latin1_stride_alu(src: *const usize, dst: *mut usize) { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + } + ++ // Safety: src points to two valid `usize`s, dst points to four valid `usize`s + #[inline(always)] + unsafe fn ascii_to_basic_latin_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); + // Check if the words contains non-ASCII + if (word & ASCII_MASK) | (second_word & ASCII_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + unpack_alu(word, second_word, dst); + true + } + ++ // Safety: src points four valid `usize`s, dst points to two valid `usize`s + #[inline(always)] + unsafe fn basic_latin_to_ascii_stride_alu(src: *const usize, dst: *mut usize) -> bool { ++ // Safety: src safety invariant used here + let first = *src; + let second = *(src.add(1)); + let third = *(src.add(2)); + let fourth = *(src.add(3)); + if (first & BASIC_LATIN_MASK) | (second & BASIC_LATIN_MASK) | (third & BASIC_LATIN_MASK) | (fourth & BASIC_LATIN_MASK) != 0 { + return false; + } ++ // Safety: dst safety invariant passed down + pack_alu(first, second, third, fourth, dst); + true + } + ++ // Safety: src, dst both point to two valid `usize`s each ++ // Safety-usable invariant: Will return byte index of first non-ascii byte. + #[inline(always)] + unsafe fn ascii_to_ascii_stride(src: *const usize, dst: *mut usize) -> Option<usize> { ++ // Safety: src safety invariant used here + let word = *src; + let second_word = *(src.add(1)); ++ // Safety: src safety invariant used here + *dst = word; + *(dst.add(1)) = second_word; ++ // Relies on safety-usable invariant here + find_non_ascii(word, second_word) + } + + basic_latin_alu!(ascii_to_basic_latin, u8, u16, ascii_to_basic_latin_stride_alu); + basic_latin_alu!(basic_latin_to_ascii, u16, u8, basic_latin_to_ascii_stride_alu); + latin1_alu!(unpack_latin1, u8, u16, unpack_latin1_stride_alu); + latin1_alu!(pack_latin1, u16, u8, pack_latin1_stride_alu); ++ // Safety invariant upheld: ascii_to_ascii_stride will return byte index of first non-ascii if found + ascii_alu!(ascii_to_ascii, u8, u8, ascii_to_ascii_stride); + } + } + + pub fn ascii_valid_up_to(bytes: &[u8]) -> usize { + match validate_ascii(bytes) { + None => bytes.len(), + Some((_, num_valid)) => num_valid, +diff --git a/third_party/rust/encoding_rs/src/handles.rs b/third_party/rust/encoding_rs/src/handles.rs +--- third_party/rust/encoding_rs/src/handles.rs ++++ third_party/rust/encoding_rs/src/handles.rs +@@ -29,17 +29,17 @@ use crate::simd_funcs::*; + #[cfg(all( + feature = "simd-accel", + any( + target_feature = "sse2", + all(target_endian = "little", target_arch = "aarch64"), + all(target_endian = "little", target_feature = "neon") + ) + ))] +-use packed_simd::u16x8; ++use core::simd::u16x8; + + use super::DecoderResult; + use super::EncoderResult; + use crate::ascii::*; + use crate::utf_8::convert_utf8_to_utf16_up_to_invalid; + use crate::utf_8::utf8_valid_up_to; + + pub enum Space<T> { +@@ -85,84 +85,100 @@ impl Endian for LittleEndian { + const OPPOSITE_ENDIAN: bool = false; + + #[cfg(target_endian = "big")] + const OPPOSITE_ENDIAN: bool = true; + } + + #[derive(Debug, Copy, Clone)] + struct UnalignedU16Slice { ++ // Safety invariant: ptr must be valid for reading 2*len bytes + ptr: *const u8, + len: usize, + } + + impl UnalignedU16Slice { ++ /// Safety: ptr must be valid for reading 2*len bytes + #[inline(always)] + pub unsafe fn new(ptr: *const u8, len: usize) -> UnalignedU16Slice { ++ // Safety: field invariant passed up to caller here + UnalignedU16Slice { ptr, len } + } + + #[inline(always)] + pub fn trim_last(&mut self) { + assert!(self.len > 0); ++ // Safety: invariant upheld here: a slice is still valid with a shorter len + self.len -= 1; + } + + #[inline(always)] + pub fn at(&self, i: usize) -> u16 { + use core::mem::MaybeUninit; + + assert!(i < self.len); + unsafe { + let mut u: MaybeUninit<u16> = MaybeUninit::uninit(); ++ // Safety: i is at most len - 1, which works here + ::core::ptr::copy_nonoverlapping(self.ptr.add(i * 2), u.as_mut_ptr() as *mut u8, 2); ++ // Safety: valid read above lets us do this + u.assume_init() + } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn simd_at(&self, i: usize) -> u16x8 { ++ // Safety: i/len are on the scale of u16s, each one corresponds to 2 u8s + assert!(i + SIMD_STRIDE_SIZE / 2 <= self.len); + let byte_index = i * 2; ++ // Safety: load16_unaligned needs SIMD_STRIDE_SIZE=16 u8 elements to read, ++ // or 16/2 = 8 u16 elements to read. ++ // We have checked that we have at least that many above. ++ + unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) } + } + + #[inline(always)] + pub fn len(&self) -> usize { + self.len + } + + #[inline(always)] + pub fn tail(&self, from: usize) -> UnalignedU16Slice { + // XXX the return value should be restricted not to + // outlive self. + assert!(from <= self.len); ++ // Safety: This upholds the same invariant: `from` is in bounds and we're returning a shorter slice + unsafe { UnalignedU16Slice::new(self.ptr.add(from * 2), self.len - from) } + } + + #[cfg(feature = "simd-accel")] + #[inline(always)] + pub fn copy_bmp_to<E: Endian>(&self, other: &mut [u16]) -> Option<(u16, usize)> { + assert!(self.len <= other.len()); + let mut offset = 0; ++ // Safety: SIMD_STRIDE_SIZE is measured in bytes, whereas len is in u16s. We check we can ++ // munch SIMD_STRIDE_SIZE / 2 u16s which means we can write SIMD_STRIDE_SIZE u8s + if SIMD_STRIDE_SIZE / 2 <= self.len { + let len_minus_stride = self.len - SIMD_STRIDE_SIZE / 2; + loop { + let mut simd = self.simd_at(offset); + if E::OPPOSITE_ENDIAN { + simd = simd_byte_swap(simd); + } ++ // Safety: we have enough space on the other side to write this + unsafe { + store8_unaligned(other.as_mut_ptr().add(offset), simd); + } + if contains_surrogates(simd) { + break; + } + offset += SIMD_STRIDE_SIZE / 2; ++ // Safety: This ensures we still have space for writing SIMD_STRIDE_SIZE u8s + if offset > len_minus_stride { + break; + } + } + } + while offset < self.len { + let unit = swap_if_opposite_endian::<E>(self.at(offset)); + other[offset] = unit; +@@ -231,33 +247,37 @@ fn copy_unaligned_basic_latin_to_ascii<E + #[cfg(feature = "simd-accel")] + #[inline(always)] + fn copy_unaligned_basic_latin_to_ascii<E: Endian>( + src: UnalignedU16Slice, + dst: &mut [u8], + ) -> CopyAsciiResult<usize, (u16, usize)> { + let len = ::core::cmp::min(src.len(), dst.len()); + let mut offset = 0; ++ // Safety: This check ensures we are able to read/write at least SIMD_STRIDE_SIZE elements + if SIMD_STRIDE_SIZE <= len { + let len_minus_stride = len - SIMD_STRIDE_SIZE; + loop { + let mut first = src.simd_at(offset); + let mut second = src.simd_at(offset + (SIMD_STRIDE_SIZE / 2)); + if E::OPPOSITE_ENDIAN { + first = simd_byte_swap(first); + second = simd_byte_swap(second); + } + if !simd_is_basic_latin(first | second) { + break; + } + let packed = simd_pack(first, second); ++ // Safety: We are able to write SIMD_STRIDE_SIZE elements in this iteration + unsafe { + store16_unaligned(dst.as_mut_ptr().add(offset), packed); + } + offset += SIMD_STRIDE_SIZE; ++ // Safety: This is `offset > len - SIMD_STRIDE_SIZE`, which ensures that we can write at least SIMD_STRIDE_SIZE elements ++ // in the next iteration + if offset > len_minus_stride { + break; + } + } + } + copy_unaligned_basic_latin_to_ascii_alu::<E>(src.tail(offset), &mut dst[offset..], offset) + } + +@@ -632,94 +652,106 @@ impl<'a> Utf16Destination<'a> { + #[inline(always)] + fn write_astral(&mut self, astral: u32) { + debug_assert!(astral > 0xFFFF); + debug_assert!(astral <= 0x10_FFFF); + self.write_code_unit((0xD7C0 + (astral >> 10)) as u16); + self.write_code_unit((0xDC00 + (astral & 0x3FF)) as u16); + } + #[inline(always)] +- pub fn write_surrogate_pair(&mut self, high: u16, low: u16) { ++ fn write_surrogate_pair(&mut self, high: u16, low: u16) { + self.write_code_unit(high); + self.write_code_unit(low); + } + #[inline(always)] + fn write_big5_combination(&mut self, combined: u16, combining: u16) { + self.write_bmp_excl_ascii(combined); + self.write_bmp_excl_ascii(combining); + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_bmp<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16BmpHandle<'b, 'a>)> { + let non_ascii_ret = { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16BmpHandle::new(self))) + } ++ // Safety-usable invariant: CopyAsciiResult::GoOn will only contain bytes >=0x80 + #[inline(always)] + pub fn copy_ascii_from_check_space_astral<'b>( + &'b mut self, + source: &mut ByteSource, + ) -> CopyAsciiResult<(DecoderResult, usize, usize), (u8, Utf16AstralHandle<'b, 'a>)> { + let non_ascii_ret = { + let dst_len = self.slice.len(); + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (pending, length) = if dst_remaining.len() < src_remaining.len() { + (DecoderResult::OutputFull, dst_remaining.len()) + } else { + (DecoderResult::InputEmpty, src_remaining.len()) + }; ++ // Safety: This function is documented as needing valid pointers for src/dest and len, which ++ // is true since we've passed the minumum length of the two + match unsafe { + ascii_to_basic_latin(src_remaining.as_ptr(), dst_remaining.as_mut_ptr(), length) + } { + None => { + source.pos += length; + self.pos += length; + return CopyAsciiResult::Stop((pending, source.pos, self.pos)); + } ++ // Safety: the function is documented as returning bytes >=0x80 in the Some + Some((non_ascii, consumed)) => { + source.pos += consumed; + self.pos += consumed; + if self.pos + 1 < dst_len { + source.pos += 1; // +1 for non_ascii ++ // Safety: non-ascii bubbled out here + non_ascii + } else { + return CopyAsciiResult::Stop(( + DecoderResult::OutputFull, + source.pos, + self.pos, + )); + } + } + } + }; ++ // Safety: non-ascii returned here + CopyAsciiResult::GoOn((non_ascii_ret, Utf16AstralHandle::new(self))) + } + #[inline(always)] + pub fn copy_utf8_up_to_invalid_from(&mut self, source: &mut ByteSource) { + let src_remaining = &source.slice[source.pos..]; + let dst_remaining = &mut self.slice[self.pos..]; + let (read, written) = convert_utf8_to_utf16_up_to_invalid(src_remaining, dst_remaining); + source.pos += read; +diff --git a/third_party/rust/encoding_rs/src/lib.rs b/third_party/rust/encoding_rs/src/lib.rs +--- third_party/rust/encoding_rs/src/lib.rs ++++ third_party/rust/encoding_rs/src/lib.rs +@@ -684,37 +684,26 @@ + //! <tr><td>TIS-620</td><td>windows-874</td></tr> + //! </tbody> + //! </table> + //! + //! See the section [_UTF-16LE, UTF-16BE and Unicode Encoding Schemes_](#utf-16le-utf-16be-and-unicode-encoding-schemes) + //! for discussion about the UTF-16 family. + + #![no_std] +-#![cfg_attr(feature = "simd-accel", feature(core_intrinsics))] ++#![cfg_attr(feature = "simd-accel", feature(core_intrinsics, portable_simd))] + + #[cfg(feature = "alloc")] + #[cfg_attr(test, macro_use)] + extern crate alloc; + + extern crate core; + #[macro_use] + extern crate cfg_if; + +-#[cfg(all( +- feature = "simd-accel", +- any( +- target_feature = "sse2", +- all(target_endian = "little", target_arch = "aarch64"), +- all(target_endian = "little", target_feature = "neon") +- ) +-))] +-#[macro_use(shuffle)] +-extern crate packed_simd; +- + #[cfg(feature = "serde")] + extern crate serde; + + #[cfg(all(test, feature = "serde"))] + extern crate bincode; + #[cfg(all(test, feature = "serde"))] + #[macro_use] + extern crate serde_derive; +diff --git a/third_party/rust/encoding_rs/src/mem.rs b/third_party/rust/encoding_rs/src/mem.rs +--- third_party/rust/encoding_rs/src/mem.rs ++++ third_party/rust/encoding_rs/src/mem.rs +@@ -111,16 +111,21 @@ macro_rules! by_unit_check_alu { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - ALU_ALIGNMENT / unit_size; + if offset + (4 * (ALU_ALIGNMENT / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length ALU_ALIGNMENT / unit_size. ALU_ALIGNMENT is the size of usize, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four usize reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (ALU_ALIGNMENT / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const usize) } + | unsafe { + *(src.add(offset + (ALU_ALIGNMENT / unit_size)) as *const usize) + } + | unsafe { + *(src.add(offset + (2 * (ALU_ALIGNMENT / unit_size))) +@@ -129,22 +134,24 @@ macro_rules! by_unit_check_alu { + | unsafe { + *(src.add(offset + (3 * (ALU_ALIGNMENT / unit_size))) + as *const usize) + }; + if unroll_accu & $mask != 0 { + return false; + } + offset += 4 * (ALU_ALIGNMENT / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one usize read. + accu |= unsafe { *(src.add(offset) as *const usize) }; + offset += ALU_ALIGNMENT / unit_size; + } + } + } + for &unit in &buffer[offset..] { + accu |= unit as usize; + } +@@ -184,16 +191,21 @@ macro_rules! by_unit_check_simd { + until_alignment -= 1; + } + if accu >= $bound { + return false; + } + } + let len_minus_stride = len - SIMD_STRIDE_SIZE / unit_size; + if offset + (4 * (SIMD_STRIDE_SIZE / unit_size)) <= len { ++ // Safety: the above check lets us perform 4 consecutive reads of ++ // length SIMD_STRIDE_SIZE / unit_size. SIMD_STRIDE_SIZE is the size of $simd_ty, and unit_size ++ // is the size of the `src` pointer, so this is equal to performing four $simd_ty reads. ++ // ++ // This invariant is upheld on all loop iterations + let len_minus_unroll = len - (4 * (SIMD_STRIDE_SIZE / unit_size)); + loop { + let unroll_accu = unsafe { *(src.add(offset) as *const $simd_ty) } + | unsafe { + *(src.add(offset + (SIMD_STRIDE_SIZE / unit_size)) + as *const $simd_ty) + } + | unsafe { +@@ -203,23 +215,25 @@ macro_rules! by_unit_check_simd { + | unsafe { + *(src.add(offset + (3 * (SIMD_STRIDE_SIZE / unit_size))) + as *const $simd_ty) + }; + if !$func(unroll_accu) { + return false; + } + offset += 4 * (SIMD_STRIDE_SIZE / unit_size); ++ // Safety: this check lets us continue to perform the 4 reads earlier + if offset > len_minus_unroll { + break; + } + } + } + let mut simd_accu = $splat; + while offset <= len_minus_stride { ++ // Safety: the above check lets us perform one $simd_ty read. + simd_accu = simd_accu | unsafe { *(src.add(offset) as *const $simd_ty) }; + offset += SIMD_STRIDE_SIZE / unit_size; + } + if !$func(simd_accu) { + return false; + } + } + } +@@ -229,18 +243,18 @@ macro_rules! by_unit_check_simd { + accu < $bound + } + }; + } + + cfg_if! { + if #[cfg(all(feature = "simd-accel", any(target_feature = "sse2", all(target_endian = "little", target_arch = "aarch64"), all(target_endian = "little", target_feature = "neon"))))] { + use crate::simd_funcs::*; +- use packed_simd::u8x16; +- use packed_simd::u16x8; ++ use core::simd::u8x16; ++ use core::simd::u16x8; + + const SIMD_ALIGNMENT: usize = 16; + + const SIMD_ALIGNMENT_MASK: usize = 15; + + by_unit_check_simd!(is_ascii_impl, u8, u8x16::splat(0), u8x16, 0x80, simd_is_ascii); + by_unit_check_simd!(is_basic_latin_impl, u16, u16x8::splat(0), u16x8, 0x80, simd_is_basic_latin); + by_unit_check_simd!(is_utf16_latin1_impl, u16, u16x8::splat(0), u16x8, 0x100, simd_is_latin1); +diff --git a/third_party/rust/encoding_rs/src/simd_funcs.rs b/third_party/rust/encoding_rs/src/simd_funcs.rs +--- third_party/rust/encoding_rs/src/simd_funcs.rs ++++ third_party/rust/encoding_rs/src/simd_funcs.rs +@@ -2,65 +2,84 @@ + // file at the top-level directory of this distribution. + // + // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or + // https://www.apache.org/licenses/LICENSE-2.0> or the MIT license + // <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your + // option. This file may not be copied, modified, or distributed + // except according to those terms. + +-use packed_simd::u16x8; +-use packed_simd::u8x16; +-use packed_simd::IntoBits; ++use any_all_workaround::all_mask16x8; ++use any_all_workaround::all_mask8x16; ++use any_all_workaround::any_mask16x8; ++use any_all_workaround::any_mask8x16; ++use core::simd::cmp::SimdPartialEq; ++use core::simd::cmp::SimdPartialOrd; ++use core::simd::mask16x8; ++use core::simd::mask8x16; ++use core::simd::simd_swizzle; ++use core::simd::u16x8; ++use core::simd::u8x16; ++use core::simd::ToBytes; + + // TODO: Migrate unaligned access to stdlib code if/when the RFC + // https://github.com/rust-lang/rfcs/pull/1725 is implemented. + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load16_unaligned(ptr: *const u8) -> u8x16 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr, &mut simd as *mut u8x16 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u8x16>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load16_aligned(ptr: *const u8) -> u8x16 { + *(ptr as *const u8x16) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store16_unaligned(ptr: *mut u8, s: u8x16) { + ::core::ptr::copy_nonoverlapping(&s as *const u8x16 as *const u8, ptr, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u8x16 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store16_aligned(ptr: *mut u8, s: u8x16) { + *(ptr as *mut u8x16) = s; + } + ++/// Safety invariant: ptr must be valid for an unaligned read of 16 bytes + #[inline(always)] + pub unsafe fn load8_unaligned(ptr: *const u16) -> u16x8 { +- let mut simd = ::core::mem::uninitialized(); +- ::core::ptr::copy_nonoverlapping(ptr as *const u8, &mut simd as *mut u16x8 as *mut u8, 16); +- simd ++ let mut simd = ::core::mem::MaybeUninit::<u16x8>::uninit(); ++ ::core::ptr::copy_nonoverlapping(ptr as *const u8, simd.as_mut_ptr() as *mut u8, 16); ++ // Safety: copied 16 bytes of initialized memory into this, it is now initialized ++ simd.assume_init() + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 read of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn load8_aligned(ptr: *const u16) -> u16x8 { + *(ptr as *const u16x8) + } + ++/// Safety invariant: ptr must be valid for an unaligned store of 16 bytes + #[inline(always)] + pub unsafe fn store8_unaligned(ptr: *mut u16, s: u16x8) { + ::core::ptr::copy_nonoverlapping(&s as *const u16x8 as *const u8, ptr as *mut u8, 16); + } + ++/// Safety invariant: ptr must be valid for an aligned-for-u16x8 store of 16 bytes + #[allow(dead_code)] + #[inline(always)] + pub unsafe fn store8_aligned(ptr: *mut u16, s: u16x8) { + *(ptr as *mut u16x8) = s; + } + + cfg_if! { + if #[cfg(all(target_feature = "sse2", target_arch = "x86_64"))] { +@@ -95,234 +114,241 @@ cfg_if! { + pub fn simd_byte_swap(s: u16x8) -> u16x8 { + let left = s << 8; + let right = s >> 8; + left | right + } + + #[inline(always)] + pub fn to_u16_lanes(s: u8x16) -> u16x8 { +- s.into_bits() ++ u16x8::from_ne_bytes(s) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + + // Expose low-level mask instead of higher-level conclusion, + // because the non-ASCII case would perform less well otherwise. ++ // Safety-usable invariant: This returned value is whether each high bit is set + #[inline(always)] + pub fn mask_ascii(s: u8x16) -> i32 { + unsafe { +- _mm_movemask_epi8(s.into_bits()) ++ _mm_movemask_epi8(s.into()) + } + } + + } else { + + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- _mm_movemask_epi8(s.into_bits()) == 0 ++ // Safety: We have cfg()d the correct platform ++ _mm_movemask_epi8(s.into()) == 0 + } + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0x80 + } + } + } else { + #[inline(always)] + pub fn simd_is_ascii(s: u8x16) -> bool { + // This optimizes better on ARM than + // the lt formulation. + let highest_ascii = u8x16::splat(0x7F); +- !s.gt(highest_ascii).any() ++ !any_mask8x16(s.simd_gt(highest_ascii)) + } + } + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + if simd_is_ascii(s) { + return true; + } + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ s.simd_lt(above_str_latin1).all() + } + } else if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + unsafe { +- vmaxvq_u8(s.into_bits()) < 0xC4 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u8(s.into()) < 0xC4 + } + } + } else { + #[inline(always)] + pub fn simd_is_str_latin1(s: u8x16) -> bool { + let above_str_latin1 = u8x16::splat(0xC4); +- s.lt(above_str_latin1).all() ++ all_mask8x16(s.simd_lt(above_str_latin1)) + } + } + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x80 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x80 + } + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + unsafe { +- vmaxvq_u16(s.into_bits()) < 0x100 ++ // Safety: We have cfg()d the correct platform ++ vmaxvq_u16(s.into()) < 0x100 + } + } + } else { + #[inline(always)] + pub fn simd_is_basic_latin(s: u16x8) -> bool { + let above_ascii = u16x8::splat(0x80); +- s.lt(above_ascii).all() ++ all_mask16x8(s.simd_lt(above_ascii)) + } + + #[inline(always)] + pub fn simd_is_latin1(s: u16x8) -> bool { + // For some reason, on SSE2 this formulation + // seems faster in this case while the above + // function is better the other way round... + let highest_latin1 = u16x8::splat(0xFF); +- !s.gt(highest_latin1).any() ++ !any_mask16x8(s.simd_gt(highest_latin1)) + } + } + } + + #[inline(always)] + pub fn contains_surrogates(s: u16x8) -> bool { + let mask = u16x8::splat(0xF800); + let surrogate_bits = u16x8::splat(0xD800); +- (s & mask).eq(surrogate_bits).any() ++ any_mask16x8((s & mask).simd_eq(surrogate_bits)) + } + + cfg_if! { + if #[cfg(target_arch = "aarch64")]{ + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => ({ + unsafe { +- if vmaxvq_u16($s.into_bits()) < 0x0590 { ++ // Safety: We have cfg()d the correct platform ++ if vmaxvq_u16($s.into()) < 0x0590 { + return false; + } + } + }) + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => () + } + } else { + macro_rules! aarch64_return_false_if_below_hebrew { + ($s:ident) => () + } + + macro_rules! non_aarch64_return_false_if_all { + ($s:ident) => ({ +- if $s.all() { ++ if all_mask16x8($s) { + return false; + } + }) + } + } + } + + macro_rules! in_range16x8 { + ($s:ident, $start:expr, $end:expr) => {{ + // SIMD sub is wrapping +- ($s - u16x8::splat($start)).lt(u16x8::splat($end - $start)) ++ ($s - u16x8::splat($start)).simd_lt(u16x8::splat($end - $start)) + }}; + } + + #[inline(always)] + pub fn is_u16x8_bidi(s: u16x8) -> bool { + // We try to first quickly refute the RTLness of the vector. If that + // fails, we do the real RTL check, so in that case we end up wasting + // the work for the up-front quick checks. Even the quick-check is + // two-fold in order to return `false` ASAP if everything is below + // Hebrew. + + aarch64_return_false_if_below_hebrew!(s); + +- let below_hebrew = s.lt(u16x8::splat(0x0590)); ++ let below_hebrew = s.simd_lt(u16x8::splat(0x0590)); + + non_aarch64_return_false_if_all!(below_hebrew); + +- if (below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802)).all() { ++ if all_mask16x8( ++ below_hebrew | in_range16x8!(s, 0x0900, 0x200F) | in_range16x8!(s, 0x2068, 0xD802), ++ ) { + return false; + } + + // Quick refutation failed. Let's do the full check. + +- (in_range16x8!(s, 0x0590, 0x0900) +- | in_range16x8!(s, 0xFB1D, 0xFE00) +- | in_range16x8!(s, 0xFE70, 0xFEFF) +- | in_range16x8!(s, 0xD802, 0xD804) +- | in_range16x8!(s, 0xD83A, 0xD83C) +- | s.eq(u16x8::splat(0x200F)) +- | s.eq(u16x8::splat(0x202B)) +- | s.eq(u16x8::splat(0x202E)) +- | s.eq(u16x8::splat(0x2067))) +- .any() ++ any_mask16x8( ++ (in_range16x8!(s, 0x0590, 0x0900) ++ | in_range16x8!(s, 0xFB1D, 0xFE00) ++ | in_range16x8!(s, 0xFE70, 0xFEFF) ++ | in_range16x8!(s, 0xD802, 0xD804) ++ | in_range16x8!(s, 0xD83A, 0xD83C) ++ | s.simd_eq(u16x8::splat(0x200F)) ++ | s.simd_eq(u16x8::splat(0x202B)) ++ | s.simd_eq(u16x8::splat(0x202E)) ++ | s.simd_eq(u16x8::splat(0x2067))), ++ ) + } + + #[inline(always)] + pub fn simd_unpack(s: u8x16) -> (u16x8, u16x8) { +- unsafe { +- let first: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] +- ); +- let second: u8x16 = shuffle!( +- s, +- u8x16::splat(0), +- [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] +- ); +- (first.into_bits(), second.into_bits()) +- } ++ let first: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23] ++ ); ++ let second: u8x16 = simd_swizzle!( ++ s, ++ u8x16::splat(0), ++ [8, 24, 9, 25, 10, 26, 11, 27, 12, 28, 13, 29, 14, 30, 15, 31] ++ ); ++ (u16x8::from_ne_bytes(first), u16x8::from_ne_bytes(second)) + } + + cfg_if! { + if #[cfg(target_feature = "sse2")] { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { + unsafe { +- _mm_packus_epi16(a.into_bits(), b.into_bits()).into_bits() ++ // Safety: We have cfg()d the correct platform ++ _mm_packus_epi16(a.into(), b.into()).into() + } + } + } else { + #[inline(always)] + pub fn simd_pack(a: u16x8, b: u16x8) -> u8x16 { +- unsafe { +- let first: u8x16 = a.into_bits(); +- let second: u8x16 = b.into_bits(); +- shuffle!( +- first, +- second, +- [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] +- ) +- } ++ let first: u8x16 = a.to_ne_bytes(); ++ let second: u8x16 = b.to_ne_bytes(); ++ simd_swizzle!( ++ first, ++ second, ++ [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] ++ ) + } + } + } + + #[cfg(test)] + mod tests { + use super::*; + use alloc::vec::Vec; +diff --git a/third_party/rust/encoding_rs/src/single_byte.rs b/third_party/rust/encoding_rs/src/single_byte.rs +--- third_party/rust/encoding_rs/src/single_byte.rs ++++ third_party/rust/encoding_rs/src/single_byte.rs +@@ -48,16 +48,19 @@ impl SingleByteDecoder { + CopyAsciiResult::GoOn((mut non_ascii, mut handle)) => 'middle: loop { + // Start non-boilerplate + // + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: `non_ascii` is a u8 byte >=0x80, from the invariants ++ // on Utf8Destination::copy_ascii_from_check_space_bmp() + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + source.consumed(), + handle.written(), +@@ -146,82 +149,103 @@ impl SingleByteDecoder { + dst: &mut [u16], + _last: bool, + ) -> (DecoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (DecoderResult::OutputFull, dst.len()) + } else { + (DecoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + ascii_to_basic_latin( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + // Since the non-ASCIIness of `non_ascii` is hidden from + // the optimizer, it can't figure out that it's OK to + // statically omit the bound check when accessing + // `[u16; 128]` with an index + // `non_ascii as usize - 0x80usize`. ++ // ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = + unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + // let mapped = self.table[non_ascii as usize - 0x80usize]; + if mapped == 0u16 { + return ( + DecoderResult::Malformed(1, 0), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + unsafe { +- // The bound check has already been performed ++ // Safety: As mentioned above, `converted < length` + *(dst.get_unchecked_mut(converted)) = mapped; + } ++ // Safety: `converted <= length` upheld, since `converted < length` before this + converted += 1; + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: We are back to `converted < length` because of the == above ++ // and can perform this check. + let mut b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: `converted < length` is upheld for this loop + 'innermost: loop { + if b > 127 { + non_ascii = b; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: `converted < length` is true for this loop + *(dst.get_unchecked_mut(converted)) = u16::from(b); + } ++ // Safety: We are now at `converted <= length`. We should *not* `continue` ++ // the loop without reverifying + converted += 1; + if b < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted <= length` because of the == above + b = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: The loop continues as `converted < length` + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; + } + } + } + } +@@ -229,16 +253,18 @@ impl SingleByteDecoder { + } + + pub fn latin1_byte_compatible_up_to(&self, buffer: &[u8]) -> usize { + let mut bytes = buffer; + let mut total = 0; + loop { + if let Some((non_ascii, offset)) = validate_ascii(bytes) { + total += offset; ++ // Safety: We can rely on `non_ascii` being between `0x80` and `0xFF` due to ++ // the invariants of `ascii_to_basic_latin()`, and our table has enough space for that. + let mapped = unsafe { *(self.table.get_unchecked(non_ascii as usize - 0x80usize)) }; + if mapped != u16::from(non_ascii) { + return total; + } + total += 1; + bytes = &bytes[offset + 1..]; + } else { + return total; +@@ -379,64 +405,89 @@ impl SingleByteEncoder { + dst: &mut [u8], + _last: bool, + ) -> (EncoderResult, usize, usize) { + let (pending, length) = if dst.len() < src.len() { + (EncoderResult::OutputFull, dst.len()) + } else { + (EncoderResult::InputEmpty, src.len()) + }; ++ // Safety invariant: converted <= length. Quite often we have `converted < length` ++ // which will be separately marked. + let mut converted = 0usize; + 'outermost: loop { + match unsafe { ++ // Safety: length is the minimum length, `src/dst + x` will always be valid for reads/writes of `len - x` + basic_latin_to_ascii( + src.as_ptr().add(converted), + dst.as_mut_ptr().add(converted), + length - converted, + ) + } { + None => { + return (pending, length, length); + } + Some((mut non_ascii, consumed)) => { ++ // Safety invariant: `converted <= length` upheld, since this can only consume ++ // up to `length - converted` bytes. ++ // ++ // Furthermore, in this context, ++ // we can assume `converted < length` since this branch is only ever hit when ++ // ascii_to_basic_latin fails to consume the entire slice + converted += consumed; + 'middle: loop { + // `converted` doesn't count the reading of `non_ascii` yet. + match self.encode_u16(non_ascii) { + Some(byte) => { + unsafe { ++ // Safety: we're allowed this access since `converted < length` + *(dst.get_unchecked_mut(converted)) = byte; + } + converted += 1; ++ // `converted <= length` now + } + None => { + // At this point, we need to know if we + // have a surrogate. + let high_bits = non_ascii & 0xFC00u16; + if high_bits == 0xD800u16 { + // high surrogate + if converted + 1 == length { + // End of buffer. This surrogate is unpaired. + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } ++ // Safety: convered < length from outside the match, and `converted + 1 != length`, ++ // So `converted + 1 < length` as well. We're in bounds + let second = + u32::from(unsafe { *src.get_unchecked(converted + 1) }); + if second & 0xFC00u32 != 0xDC00u32 { + return ( + EncoderResult::Unmappable('\u{FFFD}'), + converted + 1, // +1 `for non_ascii` + converted, + ); + } + // The next code unit is a low surrogate. + let astral: char = unsafe { ++ // Safety: We can rely on non_ascii being 0xD800-0xDBFF since the high bits are 0xD800 ++ // Then, (non_ascii << 10 - 0xD800 << 10) becomes between (0 to 0x3FF) << 10, which is between ++ // 0x400 to 0xffc00. Adding the 0x10000 gives a range of 0x10400 to 0x10fc00. Subtracting the 0xDC00 ++ // gives 0x2800 to 0x102000 ++ // The second term is between 0xDC00 and 0xDFFF from the check above. This gives a maximum ++ // possible range of (0x10400 + 0xDC00) to (0x102000 + 0xDFFF) which is 0x1E000 to 0x10ffff. ++ // This is in range. ++ // ++ // From a Unicode principles perspective this can also be verified as we have checked that `non_ascii` is a high surrogate ++ // (0xD800..=0xDBFF), and that `second` is a low surrogate (`0xDC00..=0xDFFF`), and we are applying reverse of the UTC16 transformation ++ // algorithm <https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF>, by applying the high surrogate - 0xD800 to the ++ // high ten bits, and the low surrogate - 0xDc00 to the low ten bits, and then adding 0x10000 + ::core::char::from_u32_unchecked( + (u32::from(non_ascii) << 10) + second + - (((0xD800u32 << 10) - 0x1_0000u32) + 0xDC00u32), + ) + }; + return ( + EncoderResult::Unmappable(astral), + converted + 2, // +2 `for non_ascii` and `second` +@@ -451,52 +502,63 @@ impl SingleByteEncoder { + converted, + ); + } + return ( + EncoderResult::unmappable_from_bmp(non_ascii), + converted + 1, // +1 `for non_ascii` + converted, + ); ++ // Safety: This branch diverges, so no need to uphold invariants on `converted` + } + } + // Next, handle ASCII punctuation and non-ASCII without + // going back to ASCII acceleration. Non-ASCII scripts + // use ASCII punctuation, so this avoid going to + // acceleration just for punctuation/space and then + // failing. This is a significant boost to non-ASCII + // scripts. + // TODO: Split out Latin converters without this part + // this stuff makes Latin script-conversion slower. + if converted == length { + return (pending, length, length); + } ++ // Safety: we're back to `converted < length` due to the == above and can perform ++ // the unchecked read + let mut unit = unsafe { *(src.get_unchecked(converted)) }; + 'innermost: loop { ++ // Safety: This loop always begins with `converted < length`, see ++ // the invariant outside and the comment on the continue below + if unit > 127 { + non_ascii = unit; + continue 'middle; + } + // Testing on Haswell says that we should write the + // byte unconditionally instead of trying to unread it + // to make it part of the next SIMD stride. + unsafe { ++ // Safety: Can rely on converted < length + *(dst.get_unchecked_mut(converted)) = unit as u8; + } + converted += 1; ++ // `converted <= length` here + if unit < 60 { + // We've got punctuation + if converted == length { + return (pending, length, length); + } ++ // Safety: `converted < length` due to the == above. The read is safe. + unit = unsafe { *(src.get_unchecked(converted)) }; ++ // Safety: This only happens if `converted < length`, maintaining it + continue 'innermost; + } + // We've got markup or ASCII text + continue 'outermost; ++ // Safety: All other routes to here diverge so the continue is the only ++ // way to run the innermost loop. + } + } + } + } + } + } + } + +diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs +--- third_party/rust/encoding_rs/src/x_user_defined.rs ++++ third_party/rust/encoding_rs/src/x_user_defined.rs +@@ -9,22 +9,23 @@ + + use super::*; + use crate::handles::*; + use crate::variant::*; + + cfg_if! { + if #[cfg(feature = "simd-accel")] { + use simd_funcs::*; +- use packed_simd::u16x8; ++ use core::simd::u16x8; ++ use core::simd::cmp::SimdPartialOrd; + + #[inline(always)] + fn shift_upper(unpacked: u16x8) -> u16x8 { + let highest_ascii = u16x8::splat(0x7F); +- unpacked + unpacked.gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } ++ unpacked + unpacked.simd_gt(highest_ascii).select(u16x8::splat(0xF700), u16x8::splat(0)) } + } else { + } + } + + pub struct UserDefinedDecoder; + + impl UserDefinedDecoder { + pub fn new() -> VariantDecoder { +@@ -111,20 +112,25 @@ impl UserDefinedDecoder { + } else { + (DecoderResult::InputEmpty, src.len()) + }; + // Not bothering with alignment + let tail_start = length & !0xF; + let simd_iterations = length >> 4; + let src_ptr = src.as_ptr(); + let dst_ptr = dst.as_mut_ptr(); ++ // Safety: This is `for i in 0..length / 16` + for i in 0..simd_iterations { ++ // Safety: This is in bounds: length is the minumum valid length for both src/dst ++ // and i ranges to length/16, so multiplying by 16 will always be `< length` and can do ++ // a 16 byte read + let input = unsafe { load16_unaligned(src_ptr.add(i * 16)) }; + let (first, second) = simd_unpack(input); + unsafe { ++ // Safety: same as above, but this is two consecutive 8-byte reads + store8_unaligned(dst_ptr.add(i * 16), shift_upper(first)); + store8_unaligned(dst_ptr.add((i * 16) + 8), shift_upper(second)); + } + } + let src_tail = &src[tail_start..length]; + let dst_tail = &mut dst[tail_start..length]; + src_tail + .iter() + +diff --git a/third_party/rust/encoding_rs/.cargo-checksum.json b/third_party/rust/encoding_rs/.cargo-checksum.json +--- third_party/rust/encoding_rs/.cargo-checksum.json ++++ third_party/rust/encoding_rs/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"42fa83322aa9fd6723b77d35d0cacb92cbb6e7f573ce11c55f5225292866f8f4","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"d938e8ab0b9ab67e74a1a4f48f23fdce956d0ad3a3f6147ae7612a92763c88d5","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"c44c002641adb5ebc4368707a8cc0a076d2f33e6a5c27b1b69988eb515f5653d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"cc83dc0754751d67f5688a65c5e0191cba02f6bacce81a0813a243cba55eef7a","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"1dc07b818e45846b16ddcaf0de46c8862dd7df8099123ec38b95c3f8ad9c91ec","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"0bf34103e0ad1b842a13a082dee2b920b05cf4fb0f145c9ee7f608f4cb4a544f","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"2612aba86e1d201096d7e47a859bc3444f85934cc82d8adc6d39a4304d9eecfc","src/single_byte.rs":"3c9e9c1f946ae622c725ba9421240c1faa9a05e95fa10dd4642a25cb276a1edc","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"c9c010730dfb9f141d4fed19350c08a21af240913a54bb64f5ca89ff93b6b7d1"},"package":"7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"} +\ No newline at end of file ++{"files":{"CONTRIBUTING.md":"ca1901f3e8532fb4cec894fd3664f0eaa898c0c4b961d1b992d1ed54eacf362a","COPYRIGHT":"11789f45bb180841cd362a5eee6789c68ddb573a11105e30768c308a6add0190","Cargo.toml":"22a4d210c92dae9f32c6944ef340ee8fdd027f99c081577e8907123e2a93383e","Ideas.md":"b7452893f500163868d8de52c09addaf91e1632454ed02e892c467ed7ec39dbd","LICENSE-APACHE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","LICENSE-MIT":"3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c","LICENSE-WHATWG":"838118388fe5c2e7f1dbbaeed13e1c7f3ebf88be91319c7c1d77c18e987d1a50","README.md":"1d08aefcb92afa81b18154049c9abbcad4540a23f7172e9f9bbed5af33f1a087","ci/miri.sh":"43cb8d82f49e3bfe2d2274b6ccd6f0714a4188ccef0cecc040829883cfdbee25","doc/Big5.txt":"f73a2edc5cb6c2d140ba6e07f4542e1c4a234950378acde1df93480f0ca0be0b","doc/EUC-JP.txt":"ee2818b907d0137f40a9ab9fd525fc700a44dbdddb6cf0c157a656566bae4bf1","doc/EUC-KR.txt":"71d9e2ccf3b124e8bdfb433c8cf2773fd878077038d0cec3c7237a50f4a78a30","doc/GBK.txt":"c1b522b5a799884e5001da661f42c5a8f4d0acb9ef1d74b206f22b5f65365606","doc/IBM866.txt":"a5a433e804d0f83af785015179fbc1d9b0eaf1f7960efcd04093e136b51fbd0e","doc/ISO-2022-JP.txt":"af86684f5a8f0e2868d7b2c292860140c3d2e5527530ca091f1b28198e8e2fe6","doc/ISO-8859-10.txt":"6d3949ad7c81ca176895101ed81a1db7df1060d64e262880b94bd31bb344ab4d","doc/ISO-8859-13.txt":"3951dd89cf93f7729148091683cf8511f4529388b7dc8dcd0d62eaed55be93fa","doc/ISO-8859-14.txt":"3d330784a0374fd255a38b47949675cc7168c800530534b0a01cac6edc623adc","doc/ISO-8859-15.txt":"24b1084aab5127a85aab99153f86e24694d0a3615f53b5ce23683f97cf66c47a","doc/ISO-8859-16.txt":"ce0272559b92ba76d7a7e476f6424ae4a5cc72e75b183611b08392e44add4d25","doc/ISO-8859-2.txt":"18ceff88c13d1b5ba455a3919b1e3de489045c4c3d2dd7e8527c125c75d54aad","doc/ISO-8859-3.txt":"21798404c68f4f5db59223362f24999da96968c0628427321fccce7d2849a130","doc/ISO-8859-4.txt":"d27f6520c6c5bfbcc19176b71d081cdb3bccde1622bb3e420d5680e812632d53","doc/ISO-8859-5.txt":"a10ec8d6ea7a78ad15da7275f6cb1a3365118527e28f9af6d0d5830501303f3a","doc/ISO-8859-6.txt":"ccda8a2efc96115336bdd77776637b9712425e44fbcf745353b9057fbef144e7","doc/ISO-8859-7.txt":"17900fa1f27a445958f0a77d7d9056be375a6bd7ee4492aa680c7c1500bab85e","doc/ISO-8859-8-I.txt":"8357555646d54265a9b9ffa3e68b08d132312f1561c60108ff9b8b1167b6ecf2","doc/ISO-8859-8.txt":"72cd6f3afb7b4a9c16a66a362473315770b7755d72c86c870e52fc3eba86c8af","doc/KOI8-R.txt":"839cf19a38da994488004ed7814b1f6151640156a9a2af02bf2efca745fb5966","doc/KOI8-U.txt":"0cc76624ed1f024183e2298b7e019957da2c70c8ca06e0fc4e6f353f50a5054f","doc/Shift_JIS.txt":"34c49141818cb9ddbcf59cc858f78a79be8ad148d563f26415108ae1f148443f","doc/UTF-16BE.txt":"e2e280d8acbaa6d2a6b3569d60e17500a285f2baa0df3363dd85537cd5a1ef8f","doc/UTF-16LE.txt":"70bdc170e3fc5298ba68f10125fb5eeb8b077036cc96bb4416c4de396f6d76c1","doc/UTF-8.txt":"ea7bae742e613010ced002cf4b601a737d2203fad65e115611451bc4428f548a","doc/gb18030.txt":"dc71378a8f07a2d8659f69ee81fb8791fef56ba86f124b429978285237bb4a7b","doc/macintosh.txt":"57491e53866711b4672d9b9ff35380b9dac9e0d8e3d6c20bdd6140603687c023","doc/replacement.txt":"4b6c3bbd7999d9d4108a281594bd02d13607e334a95465afff8c2c08d395f0e4","doc/windows-1250.txt":"61296bb6a21cdab602300d32ecfba434cb82de5ac3bc88d58710d2f125e28d39","doc/windows-1251.txt":"7deea1c61dea1485c8ff02db2c7d578db7a9aab63ab1cfd02ec04b515864689e","doc/windows-1252.txt":"933ef3bdddfce5ee132b9f1a1aa8b47423d2587bbe475b19028d0a6d38e180b6","doc/windows-1253.txt":"1a38748b88e99071a5c7b3d5456ead4caedeabab50d50d658be105bc113714de","doc/windows-1254.txt":"f8372f86c6f8d642563cd6ddc025260553292a39423df1683a98670bd7bf2b47","doc/windows-1255.txt":"4e5852494730054e2da258a74e1b9d780abbcdd8ce22ebc218ca2efe9e90493d","doc/windows-1256.txt":"c0879c5172abedead302a406e8f60d9cd9598694a0ffa4fd288ffe4fef7b8ea1","doc/windows-1257.txt":"c28a0c9f964fcb2b46d21f537c402446501a2800670481d6abf9fd9e9018d523","doc/windows-1258.txt":"5019ae4d61805c79aacbf17c93793342dbb098d65a1837783bc3e2c6d6a23602","doc/windows-874.txt":"4ef0e4501c5feba8b17aee1818602ed44b36ca8475db771ce2fc16d392cabecc","doc/x-mac-cyrillic.txt":"58be154d8a888ca3d484b83b44f749823ef339ab27f14d90ca9a856f5050a8bd","doc/x-user-defined.txt":"f9cd07c4321bf5cfb0be4bdddd251072999b04a6cf7a6f5bc63709a84e2c1ffc","generate-encoding-data.py":"be989dd25c6b946e3e8745fdc8e8a80fcf24b3be99ad0b4b78153ba3f6ab6310","rustfmt.toml":"85c1a3b4382fd89e991cbb81b70fb52780472edc064c963943cdaaa56e0a2030","src/ascii.rs":"588e38b01e666d5e7462617ea7e90a108d608dec9e016f3d273ac0744af2e05d","src/big5.rs":"ec6e2913011a38e9a3e825a1731f139a7ca1d5b264fefae51a3cc1a68a57cef9","src/data.rs":"8a617cc57032092d65850eb27e00de687c80aea3299e839a1f58b42d0b35abf3","src/euc_jp.rs":"32047f5b540188c4cb19c07165f846b9786a09f18e315ed3e9bda1293dae52aa","src/euc_kr.rs":"9b25afc72d9378700eecfac58d55ad1c5946d6cd0ccde2c29c08200ef2de6bb9","src/gb18030.rs":"808587168d73f0c80f8520f0ca9b161866ed2efeb17a05e85fdf3b8efe7ba28a","src/handles.rs":"b08cef1f5785bb6a4822f2e844c6df1b046b737b7a075e4593eaa8c4208e9fe2","src/iso_2022_jp.rs":"9bb485e82574f4b7d4b2364f0ff276acb6a0bc111758420a3b0ec5e04c196652","src/lib.rs":"834f44b670ec48ee82c0e12223d1567313fdd9f88bca5f4b117c82c1828f559f","src/macros.rs":"200997f8870de8bfd8cdc475e92115df42108c0df661e49d3d1cbc32056e1d99","src/mem.rs":"948571137d3b151df8db4fb2c733e74ae595d055cdf0ad83abcab9341d6adabe","src/replacement.rs":"7660b34a53f8c1ca2bdfa0e51e843ec28326950952ad8bc96569feb93ac62308","src/shift_jis.rs":"6951ae67e36b1a12fa3a30734957f444d8b1b4ae0e2bde52060b29bd0f16d9d9","src/simd_funcs.rs":"05c6e77af74bfe73cd39a752067c11425d6b46e5da419910f54bf75a5c02a984","src/single_byte.rs":"3ad87116fb339434a4b58e8f2b15485f2b66b9f7814d708f16194ed08f6d6ccf","src/test_data/big5_in.txt":"4c5a8691f8dc717311889c63894026d2fb62725a86c4208ca274a9cc8d42a503","src/test_data/big5_in_ref.txt":"99d399e17750cf9c7cf30bb253dbfe35b81c4fcbdead93cfa48b1429213473c7","src/test_data/big5_out.txt":"6193ca97c297aa20e09396038d18e938bb7ea331c26f0f2454097296723a0b13","src/test_data/big5_out_ref.txt":"36567691f557df144f6cc520015a87038dfa156f296fcf103b56ae9a718be1fc","src/test_data/euc_kr_in.txt":"c86a7224f3215fa0d04e685622a752fdc72763e8ae076230c7fd62de57ec4074","src/test_data/euc_kr_in_ref.txt":"1f419f4ca47d708b54c73c461545a022ae2e20498fdbf8005a483d752a204883","src/test_data/euc_kr_out.txt":"e7f32e026f70be1e1b58e0047baf7d3d2c520269c4f9b9992e158b4decb0a1a3","src/test_data/euc_kr_out_ref.txt":"c9907857980b20b8e9e3b584482ed6567a2be6185d72237b6322f0404944924e","src/test_data/gb18030_in.txt":"ab7231b2d3e9afacdbd7d7f3b9e5361a7ff9f7e1cfdb4f3bd905b9362b309e53","src/test_data/gb18030_in_ref.txt":"dc5069421adca2043c55f5012b55a76fdff651d22e6e699fd0978f8d5706815c","src/test_data/gb18030_out.txt":"f0208d527f5ca63de7d9a0323be8d5cf12d8a104b2943d92c2701f0c3364dac1","src/test_data/gb18030_out_ref.txt":"6819fe47627e4ea01027003fc514b9f21a1322e732d7f1fb92cc6c5455bc6c07","src/test_data/iso_2022_jp_in.txt":"cd24bbdcb1834e25db54646fbf4c41560a13dc7540f6be3dba4f5d97d44513af","src/test_data/iso_2022_jp_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/iso_2022_jp_out.txt":"9b6f015329dda6c3f9ee5ce6dbd6fa9c89acc21283e886836c78b8d833480c21","src/test_data/iso_2022_jp_out_ref.txt":"78cb260093a20116ad9a42f43b05d1848c5ab100b6b9a850749809e943884b35","src/test_data/jis0208_in.txt":"6df3030553ffb0a6615bb33dc8ea9dca6d9623a9028e2ffec754ce3c3da824cc","src/test_data/jis0208_in_ref.txt":"3dc4e6a5e06471942d086b16c9440945e78415f6f3f47e43717e4bc2eac2cdf5","src/test_data/jis0208_out.txt":"4ec24477e1675ce750733bdc3c5add1cd27b6bd4ce1f09289564646e9654e857","src/test_data/jis0208_out_ref.txt":"c3e1cef5032b2b1d93a406f31ff940c4e2dfe8859b8b17ca2761fee7a75a0e48","src/test_data/jis0212_in.txt":"c011f0dd72bd7c8cd922df9374ef8d2769a77190514c77f6c62b415852eeb9fe","src/test_data/jis0212_in_ref.txt":"7d9458b3d2f73e7092a7f505c08ce1d233dde18aa679fbcf9889256239cc9e06","src/test_data/shift_jis_in.txt":"02e389ccef0dd2122e63f503899402cb7f797912c2444cc80ab93131116c5524","src/test_data/shift_jis_in_ref.txt":"512f985950ca902e643c88682dba9708b7c38d3c5ec2925168ab00ac94ab19f9","src/test_data/shift_jis_out.txt":"5fbc44da7bf639bf6cfe0fa1fd3eba7102b88f81919c9ea991302712f69426fb","src/test_data/shift_jis_out_ref.txt":"466322c6fed8286c64582731755290c2296508efdd258826e6279686649b481f","src/test_labels_names.rs":"23a2e11b02b3b8d15fb5613a625e3edb2c61e70e3c581abfd638719a4088200d","src/testing.rs":"f59e671e95a98a56f6b573e8c6be4d71e670bf52f7e20eb1605d990aafa1894e","src/utf_16.rs":"c071a147fad38d750c2c247e141b76b929a48007b99f26b2922b9caecdaf2f25","src/utf_8.rs":"7b7d887b347f1aefa03246b028a36a72758a4ce76c28f3b45c19467851aa7839","src/variant.rs":"1fab5363588a1554a7169de8731ea9cded7ac63ea35caabdd1c27a8dde68c27b","src/x_user_defined.rs":"9456ca46168ef86c98399a2536f577ef7be3cdde90c0c51392d8ac48519d3fae"},"package":"b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"} diff --git a/www/tor-browser/files/patch-rust-1.78.0-arm b/www/tor-browser/files/patch-rust-1.78.0-arm new file mode 100644 index 000000000000..7db8038cfaeb --- /dev/null +++ b/www/tor-browser/files/patch-rust-1.78.0-arm @@ -0,0 +1,64 @@ +Relevant bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1882291 + + +diff --git a/Cargo.lock b/Cargo.lock +--- Cargo.lock ++++ Cargo.lock +@@ -4274,10 +4274,11 @@ + [[package]] + name = "qcms" + version = "0.2.0" + dependencies = [ + "libc", ++ "version_check", + ] + + [[package]] + name = "qlog" + version = "0.4.0" +diff --git a/gfx/qcms/Cargo.toml b/gfx/qcms/Cargo.toml +--- gfx/qcms/Cargo.toml ++++ gfx/qcms/Cargo.toml +@@ -18,5 +18,8 @@ + iccv4-enabled = [] + cmyk = [] + + [dependencies] + libc = {version = "0.2", optional = true } ++ ++[build-dependencies] ++version_check = "0.9" +diff --git a/gfx/qcms/build.rs b/gfx/qcms/build.rs +new file mode 100644 +--- /dev/null ++++ gfx/qcms/build.rs +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff --git a/gfx/qcms/src/lib.rs b/gfx/qcms/src/lib.rs +--- gfx/qcms/src/lib.rs ++++ gfx/qcms/src/lib.rs +@@ -5,13 +5,15 @@ + #![allow(non_camel_case_types)] + #![allow(non_snake_case)] + #![allow(non_upper_case_globals)] + // These are needed for the neon SIMD code and can be removed once the MSRV supports the + // instrinsics we use +-#![cfg_attr(feature = "neon", feature(stdsimd))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_neon_intrinsics))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_feature_detection))] ++#![cfg_attr(all(not(stdsimd_split), target_arch = "arm", feature = "neon"), feature(stdsimd))] + #![cfg_attr( +- feature = "neon", ++ all(target_arch = "arm", feature = "neon"), + feature(arm_target_feature, raw_ref_op) + + )] + + /// These values match the Rendering Intent values from the ICC spec + diff --git a/www/tor-browser/files/patch-toolkit_components_processtools_procinfo__bsd.c b/www/tor-browser/files/patch-toolkit_components_processtools_procinfo__bsd.c new file mode 100644 index 000000000000..e2e9a3cc88f4 --- /dev/null +++ b/www/tor-browser/files/patch-toolkit_components_processtools_procinfo__bsd.c @@ -0,0 +1,104 @@ +diff --git toolkit/components/processtools/ProcInfo_bsd.cpp toolkit/components/processtools/ProcInfo_bsd.cpp +index a6ff4881940c..f041ed5e50ce 100644 +--- toolkit/components/processtools/ProcInfo_bsd.cpp ++++ toolkit/components/processtools/ProcInfo_bsd.cpp +@@ -18,6 +18,9 @@ + #include <cstdio> + #include <cstring> + #include <unistd.h> ++#ifdef __FreeBSD__ ++#include <sys/user.h> ++#endif + + namespace mozilla { + +@@ -50,25 +53,39 @@ ProcInfoPromise::ResolveOrRejectValue GetProcInfoSync( + } + for (const auto& request : aRequests) { + size_t size; ++#ifdef __FreeBSD__ ++ int mib[4]; ++ int mibsize = 4; ++ mib[0] = CTL_KERN; ++ mib[1] = KERN_PROC; ++ mib[2] = KERN_PROC_PID | KERN_PROC_INC_THREAD; ++ mib[3] = request.pid; ++#else + int mib[6]; ++ int mibsize = 6; + mib[0] = CTL_KERN; + mib[1] = KERN_PROC; + mib[2] = KERN_PROC_PID | KERN_PROC_SHOW_THREADS; + mib[3] = request.pid; + mib[4] = sizeof(kinfo_proc); + mib[5] = 0; +- if (sysctl(mib, 6, nullptr, &size, nullptr, 0) == -1) { ++#endif ++ if (sysctl(mib, mibsize, nullptr, &size, nullptr, 0) == -1) { + // Can't get info for this process. Skip it. + continue; + } + ++#ifdef __FreeBSD__ ++ auto procs = MakeUniqueFallible<kinfo_proc[]>(size / sizeof(kinfo_proc)); ++#else + mib[5] = size / sizeof(kinfo_proc); + auto procs = MakeUniqueFallible<kinfo_proc[]>(mib[5]); ++#endif + if (!procs) { + result.SetReject(NS_ERROR_OUT_OF_MEMORY); + return result; + } +- if (sysctl(mib, 6, procs.get(), &size, nullptr, 0) == -1 && ++ if (sysctl(mib, mibsize, procs.get(), &size, nullptr, 0) == -1 && + errno != ENOMEM) { + continue; + } +@@ -84,19 +101,34 @@ ProcInfoPromise::ResolveOrRejectValue GetProcInfoSync( + bool found = false; + for (size_t i = 0; i < size / sizeof(kinfo_proc); i++) { + const auto& p = procs[i]; ++#ifdef __FreeBSD__ ++ if (i == 0) { ++#else + if (p.p_tid == -1) { ++#endif + // This is the process. + found = true; ++#ifdef __FreeBSD__ ++ info.cpuTime = uint64_t(p.ki_runtime) * 1'000u; ++ info.memory = (p.ki_tsize + p.ki_dsize + p.ki_ssize) * getpagesize(); ++#else + info.cpuTime = uint64_t(p.p_rtime_sec) * 1'000'000'000u + + uint64_t(p.p_rtime_usec) * 1'000u; + info.memory = + (p.p_vm_tsize + p.p_vm_dsize + p.p_vm_ssize) * getpagesize(); ++#endif ++ + } else { + // This is one of its threads. + ThreadInfo threadInfo; ++#ifdef __FreeBSD__ ++ threadInfo.tid = p.ki_tid; ++ threadInfo.cpuTime = uint64_t(p.ki_runtime) * 1'000u; ++#else + threadInfo.tid = p.p_tid; + threadInfo.cpuTime = uint64_t(p.p_rtime_sec) * 1'000'000'000u + + uint64_t(p.p_rtime_usec) * 1'000u; ++#endif + info.threads.AppendElement(threadInfo); + } + } +diff --git toolkit/components/processtools/moz.build toolkit/components/processtools/moz.build +index b7c164c1b0ac..a41dad52c343 100644 +--- toolkit/components/processtools/moz.build ++++ toolkit/components/processtools/moz.build +@@ -39,7 +39,7 @@ BROWSER_CHROME_MANIFESTS += ["tests/browser/browser.ini"] + # Platform-specific implementations of `ProcInfo`. + toolkit = CONFIG["MOZ_WIDGET_TOOLKIT"] + if toolkit == "gtk" or toolkit == "android": +- if CONFIG["OS_TARGET"] == "OpenBSD": ++ if CONFIG["OS_TARGET"] == "FreeBSD" or CONFIG["OS_TARGET"] == "OpenBSD": + UNIFIED_SOURCES += ["ProcInfo_bsd.cpp"] + else: + UNIFIED_SOURCES += ["ProcInfo_linux.cpp"] diff --git a/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess.sys.mjs b/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess.sys.mjs new file mode 100644 index 000000000000..247ead0c3c9a --- /dev/null +++ b/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess.sys.mjs @@ -0,0 +1,34 @@ +Let geoip/geoip6 file paths be set by prefs like everything else and let +the new getTorFile() deal with it. + +Index: toolkit/components/tor-launcher/TorProcess.sys.mjs +--- toolkit/components/tor-launcher/TorProcess.sys.mjs.orig 2024-04-22 21:47:56 UTC ++++ toolkit/components/tor-launcher/TorProcess.sys.mjs +@@ -216,6 +216,7 @@ export class TorProcess { + } + + this.#args = []; ++ this.#args.push("--ignore-missing-torrc"); + this.#args.push("-f", torrcFile.path); + this.#args.push("DataDirectory", this.#dataDir.path); + this.#args.push("ClientOnionAuthDir", onionAuthDir.path); +@@ -230,11 +231,15 @@ export class TorProcess { + // The geoip and geoip6 files are in the same directory as torrc-defaults. + // TODO: Change TorFile to return the generic path to these files to make + // them independent from the torrc-defaults. +- const geoipFile = torrcDefaultsFile.clone(); +- geoipFile.leafName = "geoip"; ++ // const geoipFile = torrcDefaultsFile.clone(); ++ // geoipFile.leafName = "geoip"; ++ // this.#args.push("GeoIPFile", geoipFile.path); ++ // const geoip6File = torrcDefaultsFile.clone(); ++ // geoip6File.leafName = "geoip6"; ++ // this.#args.push("GeoIPv6File", geoip6File.path); ++ const geoipFile = lazy.TorLauncherUtil.getTorFile("geoip", false); ++ const geoip6File = lazy.TorLauncherUtil.getTorFile("geoip6", false); + this.#args.push("GeoIPFile", geoipFile.path); +- const geoip6File = torrcDefaultsFile.clone(); +- geoip6File.leafName = "geoip6"; + this.#args.push("GeoIPv6File", geoip6File.path); + } else { + logger.warn( diff --git a/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess_sys_mjs b/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess_sys_mjs deleted file mode 100644 index ec2731f31d1f..000000000000 --- a/www/tor-browser/files/patch-toolkit_components_tor-launcher_TorProcess_sys_mjs +++ /dev/null @@ -1,26 +0,0 @@ -Let geoip/geoip6 file paths be set by prefs like everything else and let -the new getTorFile() deal with it. - -Index: toolkit/components/tor-launcher/TorProcess.sys.mjs ---- toolkit/components/tor-launcher/TorProcess.sys.mjs.orig -+++ toolkit/components/tor-launcher/TorProcess.sys.mjs -@@ -254,16 +254,14 @@ export class TorProcess { - "torrc-defaults", - false - ); -- // The geoip and geoip6 files are in the same directory as torrc-defaults. -- const geoipFile = torrcDefaultsFile.clone(); -- geoipFile.leafName = "geoip"; -- const geoip6File = torrcDefaultsFile.clone(); -- geoip6File.leafName = "geoip6"; -+ const geoipFile = lazy.TorLauncherUtil.getTorFile("geoip", false); -+ const geoip6File = lazy.TorLauncherUtil.getTorFile("geoip6", false); - - this.#args = []; - if (torrcDefaultsFile) { - this.#args.push("--defaults-torrc", torrcDefaultsFile.path); - } -+ this.#args.push("--ignore-missing-torrc"); - this.#args.push("-f", torrcFile.path); - this.#args.push("DataDirectory", this.#dataDir.path); - this.#args.push("ClientOnionAuthDir", onionAuthDir.path); diff --git a/www/trac-accountmanager/Makefile b/www/trac-accountmanager/Makefile index 0b02ed97aade..926d58be2f4d 100644 --- a/www/trac-accountmanager/Makefile +++ b/www/trac-accountmanager/Makefile @@ -1,5 +1,5 @@ PORTNAME= accountmanager -PORTVERSION= 0.5.${REV} +PORTVERSION= 0.6.${REV} CATEGORIES= www devel python MASTER_SITES= https://trac-hacks.org/browser/accountmanagerplugin/ PKGNAMEPREFIX= trac- @@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= tracd:www/trac FETCH_BEFORE_ARGS= -o ${DISTFILES} -REV= 18614 +REV= 18634 WRKSRC= ${WRKDIR}/trunk USES= python zip USE_PYTHON= distutils autoplist diff --git a/www/trac-accountmanager/distinfo b/www/trac-accountmanager/distinfo index 86eb8547c56d..1952fc640131 100644 --- a/www/trac-accountmanager/distinfo +++ b/www/trac-accountmanager/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1704757155 -SHA256 (accountmanager-0.5.18614.zip) = 8fbccab4d8cfc55616def01a42af75947037a8f054958b4e4e1eb57b8989303a -SIZE (accountmanager-0.5.18614.zip) = 558095 +TIMESTAMP = 1713876395 +SHA256 (accountmanager-0.6.18634.zip) = 99a1c55690e91fe1355818c445c18dd4c7e18934b4854a0bb9180693bd9fd32e +SIZE (accountmanager-0.6.18634.zip) = 558626 diff --git a/www/trac/Makefile b/www/trac/Makefile index 76c75200cb0f..70fd402b2014 100644 --- a/www/trac/Makefile +++ b/www/trac/Makefile @@ -1,6 +1,6 @@ PORTNAME= trac DISTVERSION= 1.6 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www devel python MASTER_SITES= http://ftp.edgewall.com/pub/trac/ \ ftp://ftp.edgewall.com/pub/trac/ diff --git a/www/trac/files/patch-trac_util_datefmt.py b/www/trac/files/patch-trac_util_datefmt.py new file mode 100644 index 000000000000..e4788ec355b6 --- /dev/null +++ b/www/trac/files/patch-trac_util_datefmt.py @@ -0,0 +1,143 @@ +--- trac/util/datefmt.py.orig 2023-09-22 23:00:43 UTC ++++ trac/util/datefmt.py +@@ -34,6 +34,7 @@ else: + from babel import Locale + from babel.core import LOCALE_ALIASES, UnknownLocaleError + from babel.dates import ( ++ DateTimeFormat, + format_datetime as babel_format_datetime, + format_date as babel_format_date, + format_time as babel_format_time, +@@ -44,8 +45,9 @@ else: + ) + # 'context' parameter was added in Babel 2.3.1 + if 'context' in inspect.signature(babel_get_period_names).parameters: +- def get_period_names(locale=None): +- return babel_get_period_names(context='format', locale=locale) ++ def get_period_names(width='wide', locale=None): ++ return babel_get_period_names(width=width, context='format', ++ locale=locale) + else: + get_period_names = babel_get_period_names + +@@ -292,16 +294,40 @@ def _format_datetime(t, format, tzinfo, locale, hint): + hint = _STRFTIME_HINTS[format] + format = 'medium' + if format in ('short', 'medium', 'long', 'full'): +- if hint == 'datetime': +- return babel_format_datetime(t, format, None, locale) +- if hint == 'date': +- return babel_format_date(t, format, locale) +- if hint == 'time': +- return babel_format_time(t, format, None, locale) ++ return _format_datetime_babel(t, format, locale, hint) + + format = _BABEL_FORMATS[hint].get(format, format) + return _format_datetime_without_babel(t, format) + ++if babel: ++ class _DateTimeFormatFixup(DateTimeFormat): ++ def __getitem__(self, name): ++ if name.startswith(('b', 'B')): ++ return self.format_period('a', len(name)) ++ else: ++ return super().__getitem__(name) ++ ++def _format_datetime_babel(t, format, locale, hint): ++ if hint in ('datetime', 'date'): ++ datepart = babel_format_date(t, format, locale) ++ if hint == 'date': ++ return datepart ++ if hint in ('datetime', 'time'): ++ time_format = get_time_format(format, locale) ++ # Use `a` period instead of `b` and `B` periods because `parse_date` ++ # and jQuery timepicker addon don't support the periods ++ if '%(b' in time_format.format or '%(B' in time_format.format: ++ timepart = time_format.format % _DateTimeFormatFixup(t, locale) ++ else: ++ timepart = babel_format_time(t, format, None, locale) ++ if hint == 'time': ++ return timepart ++ if hint == 'datetime': ++ return get_datetime_format(format, locale=locale) \ ++ .replace("'", '') \ ++ .replace('{0}', timepart) \ ++ .replace('{1}', datepart) ++ + def format_datetime(t=None, format='%x %X', tzinfo=None, locale=None): + """Format the `datetime` object `t` into a `str` string + +@@ -439,24 +465,29 @@ def get_time_format_jquery_ui(locale): + """Get the time format for the jQuery UI timepicker addon.""" + if locale == 'iso8601': + return 'HH:mm:ssZ' ++ ++ t = datetime(1999, 10, 29, 23, 59, 58, tzinfo=utc) + if babel and locale: + values = {'h': 'h', 'hh': 'hh', 'H': 'H', 'HH': 'HH', + 'm': 'm', 'mm': 'mm', 's': 's', 'ss': 'ss'} +- f = get_time_format('medium', locale=locale).format +- if '%(a)s' in f: +- t = datetime(1999, 10, 29, 23, 59, 58, tzinfo=utc) ++ # Use `a` period instead of `b` and `B` periods, because jQuery ++ # timepicker addon doesn't support the periods. ++ tmpl = babel_format_time(t, tzinfo=utc, locale=locale) ++ if '23' not in tmpl: + ampm = babel_format_datetime(t, 'a', None, locale) +- values['a'] = 'TT' if ampm[0].isupper() else 'tt' ++ ampm = 'TT' if ampm[0].isupper() else 'tt' ++ values.update((period * n, ampm) for period in ('a', 'b', 'B') ++ for n in range(1, 6)) ++ f = get_time_format('medium', locale=locale).format + return f % values ++ else: ++ tmpl = format_time(t, tzinfo=utc) ++ ampm = format_time(t, '%p', tzinfo=utc) ++ if ampm: ++ tmpl = tmpl.replace(ampm, 'TT' if ampm[0].isupper() else 'tt', 1) ++ return tmpl.replace('23', 'HH', 1).replace('11', 'hh', 1) \ ++ .replace('59', 'mm', 1).replace('58', 'ss', 1) + +- t = datetime(1999, 10, 29, 23, 59, 58, tzinfo=utc) +- tmpl = format_time(t, tzinfo=utc) +- ampm = format_time(t, '%p', tzinfo=utc) +- if ampm: +- tmpl = tmpl.replace(ampm, 'TT' if ampm[0].isupper() else 'tt', 1) +- return tmpl.replace('23', 'HH', 1).replace('11', 'hh', 1) \ +- .replace('59', 'mm', 1).replace('58', 'ss', 1) +- + def get_timezone_list_jquery_ui(t=None): + """Get timezone list for jQuery timepicker addon""" + def utcoffset(tz, t): # in minutes +@@ -701,20 +732,21 @@ def _i18n_parse_date_pattern(locale): + if name: + period_names[name.lower()] = period + else: +- if formats[0].find('%(MMM)s') != -1: +- for width in ('wide', 'abbreviated'): +- names = get_month_names(width, locale=locale) +- month_names.update((name.lower(), num) +- for num, name in names.items()) +- if formats[0].find('%(a)s') != -1: +- names = get_period_names(locale=locale) ++ for width in ('wide', 'abbreviated'): ++ names = get_month_names(width=width, locale=locale) ++ month_names.update((name.lower(), num) ++ for num, name in names.items()) ++ names = get_period_names(width=width, locale=locale) + period_names.update((name.lower(), period) + for period, name in names.items() + if period in ('am', 'pm')) + +- regexp = ['[0-9]+'] +- regexp.extend(re.escape(name) for name in month_names) +- regexp.extend(re.escape(name) for name in period_names) ++ regexp = [] ++ regexp.extend(month_names) ++ regexp.extend(period_names) ++ regexp.sort(key=lambda v: len(v), reverse=True) ++ regexp = list(map(re.escape, regexp)) ++ regexp.append('[0-9]+') + + return { + 'orders': orders, diff --git a/www/trunk/Makefile b/www/trunk/Makefile index 0919bce58345..95e4f8e0b36d 100644 --- a/www/trunk/Makefile +++ b/www/trunk/Makefile @@ -1,6 +1,7 @@ PORTNAME= trunk DISTVERSIONPREFIX= v -DISTVERSION= 0.19.2 +DISTVERSION= 0.20.1 +PORTREVISION= 1 CATEGORIES= www devel MAINTAINER= yuri@FreeBSD.org @@ -19,58 +20,62 @@ USES= cargo USE_GITHUB= yes GH_ACCOUNT= thedodd +RUSTFLAGS= ${ARCH:S/i386/YES/:C/^[a-z].*//:S/YES/-C target-feature=+sse,+sse2/} # add sse sse2 target-features only on i386 + CARGO_CRATES= addr2line-0.21.0 \ adler-1.0.2 \ aes-0.8.4 \ ahash-0.7.8 \ ahash-0.8.11 \ aho-corasick-0.7.20 \ - aho-corasick-1.1.2 \ - aligned-0.4.1 \ + aho-corasick-1.1.3 \ + aligned-0.4.2 \ ansi_term-0.12.1 \ - anstream-0.6.13 \ - anstyle-1.0.6 \ - anstyle-parse-0.2.3 \ - anstyle-query-1.0.2 \ - anstyle-wincon-3.0.2 \ - anyhow-1.0.80 \ - arc-swap-1.7.0 \ + anstream-0.6.14 \ + anstyle-1.0.7 \ + anstyle-parse-0.2.4 \ + anstyle-query-1.0.3 \ + anstyle-wincon-3.0.3 \ + anyhow-1.0.82 \ + arc-swap-1.7.1 \ as-slice-0.2.1 \ - async-recursion-1.0.5 \ - async-trait-0.1.77 \ - autocfg-1.1.0 \ - axum-0.6.20 \ - axum-core-0.3.4 \ - axum-server-0.5.1 \ - backtrace-0.3.69 \ + async-recursion-1.1.1 \ + async-trait-0.1.80 \ + autocfg-1.2.0 \ + axum-0.7.5 \ + axum-core-0.4.3 \ + axum-server-0.6.0 \ + backtrace-0.3.71 \ base64-0.21.7 \ + base64-0.22.1 \ base64-simd-0.7.0 \ base64ct-1.6.0 \ bitflags-1.3.2 \ - bitflags-2.4.2 \ + bitflags-2.5.0 \ bitvec-1.0.1 \ block-buffer-0.10.4 \ - bumpalo-3.15.4 \ + bumpalo-3.16.0 \ bytecheck-0.6.12 \ bytecheck_derive-0.6.12 \ - bytemuck-1.14.3 \ + bytemuck-1.15.0 \ byteorder-1.5.0 \ - bytes-1.5.0 \ + bytes-1.6.0 \ bzip2-0.4.4 \ bzip2-sys-0.1.11+1.0.8 \ camino-1.1.6 \ cargo-lock-9.0.0 \ - cargo-platform-0.1.7 \ + cargo-platform-0.1.8 \ cargo_metadata-0.18.1 \ - cc-1.0.90 \ + cc-1.0.96 \ cfg-if-1.0.0 \ - chrono-0.4.35 \ + chrono-0.4.38 \ cipher-0.4.4 \ - clap-4.5.2 \ + clap-4.5.4 \ clap_builder-4.5.2 \ - clap_derive-4.5.0 \ + clap_derive-4.5.4 \ clap_lex-0.7.0 \ - colorchoice-1.0.0 \ + clap_mangen-0.2.20 \ + colorchoice-1.0.1 \ console-0.15.8 \ const-str-0.3.2 \ const-str-proc-macro-0.3.2 \ @@ -79,7 +84,7 @@ CARGO_CRATES= addr2line-0.21.0 \ core-foundation-0.9.4 \ core-foundation-sys-0.8.6 \ cpufeatures-0.2.12 \ - crates_io_api-0.9.0 \ + crates_io_api-0.11.0 \ crc32fast-1.4.0 \ crossbeam-channel-0.5.12 \ crossbeam-deque-0.8.5 \ @@ -92,7 +97,7 @@ CARGO_CRATES= addr2line-0.21.0 \ cssparser-macros-0.6.1 \ cvt-0.1.2 \ dashmap-5.5.3 \ - data-encoding-2.5.0 \ + data-encoding-2.6.0 \ data-url-0.1.1 \ deranged-0.3.11 \ derive_more-0.99.17 \ @@ -102,18 +107,18 @@ CARGO_CRATES= addr2line-0.21.0 \ dtoa-1.0.9 \ dtoa-short-0.3.4 \ dunce-1.0.4 \ - either-1.10.0 \ + either-1.11.0 \ encode_unicode-0.3.6 \ - encoding_rs-0.8.33 \ - enum-as-inner-0.6.0 \ - env_logger-0.10.2 \ + encoding_rs-0.8.34 \ + env_filter-0.1.0 \ + env_logger-0.11.3 \ envy-0.4.2 \ equivalent-1.0.1 \ errno-0.3.8 \ - fastrand-2.0.1 \ + fastrand-2.1.0 \ file-id-0.2.1 \ filetime-0.2.23 \ - flate2-1.0.28 \ + flate2-1.0.30 \ fnv-1.0.7 \ foreign-types-0.3.2 \ foreign-types-shared-0.1.1 \ @@ -121,7 +126,6 @@ CARGO_CRATES= addr2line-0.21.0 \ fs_at-0.1.10 \ fsevent-sys-4.1.0 \ funty-2.0.0 \ - futf-0.1.5 \ futures-0.3.30 \ futures-channel-0.3.30 \ futures-core-0.3.30 \ @@ -130,72 +134,69 @@ CARGO_CRATES= addr2line-0.21.0 \ futures-macro-0.3.30 \ futures-sink-0.3.30 \ futures-task-0.3.30 \ + futures-timer-3.0.3 \ futures-util-0.3.30 \ fxhash-0.2.1 \ generic-array-0.14.7 \ getrandom-0.1.16 \ - getrandom-0.2.12 \ + getrandom-0.2.14 \ gimli-0.28.1 \ glob-0.3.1 \ - h2-0.3.24 \ + h2-0.4.4 \ hashbrown-0.12.3 \ hashbrown-0.13.2 \ - hashbrown-0.14.3 \ + hashbrown-0.14.5 \ heck-0.4.1 \ + heck-0.5.0 \ hermit-abi-0.3.9 \ hmac-0.12.1 \ home-0.5.9 \ - hostname-0.3.1 \ - html5ever-0.25.2 \ htmlescape-0.3.1 \ - http-0.2.12 \ - http-body-0.4.6 \ - http-range-header-0.3.1 \ + http-1.1.0 \ + http-body-1.0.0 \ + http-body-util-0.1.1 \ + http-range-header-0.4.0 \ httparse-1.8.0 \ httpdate-1.0.3 \ humantime-2.1.0 \ humantime-serde-1.1.1 \ - hyper-0.14.28 \ - hyper-rustls-0.24.2 \ - hyper-tls-0.5.0 \ - idna-0.4.0 \ + hyper-1.3.1 \ + hyper-rustls-0.26.0 \ + hyper-tls-0.6.0 \ + hyper-util-0.1.3 \ idna-0.5.0 \ - indexmap-2.2.5 \ + indexmap-2.2.6 \ inotify-0.9.6 \ inotify-sys-0.1.5 \ inout-0.1.3 \ - ipconfig-0.3.2 \ ipnet-2.9.0 \ is-docker-0.2.0 \ - is-terminal-0.4.12 \ is-wsl-0.4.0 \ + is_terminal_polyfill-1.70.0 \ itertools-0.10.5 \ itertools-0.12.1 \ itoa-0.4.8 \ - itoa-1.0.10 \ - jobserver-0.1.28 \ + itoa-1.0.11 \ + jobserver-0.1.31 \ js-sys-0.3.69 \ kqueue-1.0.8 \ kqueue-sys-1.0.4 \ lazy_static-1.4.0 \ - libc-0.2.153 \ - libdeflate-sys-1.19.3 \ - libdeflater-1.19.3 \ - libredox-0.0.1 \ - lightningcss-1.0.0-alpha.54 \ - linked-hash-map-0.5.6 \ + lazycell-1.3.0 \ + libc-0.2.154 \ + libdeflate-sys-1.20.0 \ + libdeflater-1.20.0 \ + libredox-0.1.3 \ + lightningcss-1.0.0-alpha.55 \ linux-raw-sys-0.4.13 \ local-ip-address-0.6.1 \ - lock_api-0.4.11 \ + lock_api-0.4.12 \ log-0.4.21 \ - lru-cache-0.1.2 \ - mac-0.1.1 \ - markup5ever-0.10.1 \ - match_cfg-0.1.0 \ + lol_html-1.2.1 \ matchers-0.1.0 \ matches-0.1.10 \ matchit-0.7.3 \ - memchr-2.7.1 \ + memchr-2.7.2 \ mime-0.3.17 \ mime_guess-2.0.4 \ minify-html-0.15.0 \ @@ -206,8 +207,6 @@ CARGO_CRATES= addr2line-0.21.0 \ native-tls-0.2.11 \ neli-0.6.4 \ neli-proc-macros-0.1.3 \ - new_debug_unreachable-1.0.4 \ - nipper-0.1.9 \ nix-0.26.4 \ nodrop-0.1.14 \ normpath-1.2.0 \ @@ -223,15 +222,15 @@ CARGO_CRATES= addr2line-0.21.0 \ openssl-0.10.64 \ openssl-macros-0.1.1 \ openssl-probe-0.1.5 \ - openssl-sys-0.9.101 \ + openssl-sys-0.9.102 \ option-ext-0.2.0 \ outref-0.1.0 \ overload-0.1.1 \ - oxipng-9.0.0 \ + oxipng-9.1.1 \ parcel_selectors-0.26.4 \ parcel_sourcemap-2.1.1 \ - parking_lot-0.12.1 \ - parking_lot_core-0.9.9 \ + parking_lot-0.12.2 \ + parking_lot_core-0.9.10 \ parse-js-0.17.0 \ password-hash-0.4.2 \ paste-1.0.14 \ @@ -253,18 +252,17 @@ CARGO_CRATES= addr2line-0.21.0 \ phf_shared-0.11.2 \ pin-project-1.1.5 \ pin-project-internal-1.1.5 \ - pin-project-lite-0.2.13 \ + pin-project-lite-0.2.14 \ pin-utils-0.1.0 \ pkg-config-0.3.30 \ powerfmt-0.2.0 \ ppv-lite86-0.2.17 \ precomputed-hash-0.1.1 \ proc-macro-hack-0.5.20+deprecated \ - proc-macro2-1.0.78 \ + proc-macro2-1.0.81 \ ptr_meta-0.1.4 \ ptr_meta_derive-0.1.4 \ - quick-error-1.2.3 \ - quote-1.0.35 \ + quote-1.0.36 \ radium-0.7.0 \ rand-0.7.3 \ rand-0.8.5 \ @@ -274,103 +272,106 @@ CARGO_CRATES= addr2line-0.21.0 \ rand_core-0.6.4 \ rand_hc-0.2.0 \ rand_pcg-0.2.1 \ - rayon-1.9.0 \ + rayon-1.10.0 \ rayon-core-1.12.1 \ redox_syscall-0.4.1 \ - redox_users-0.4.4 \ - regex-1.10.3 \ + redox_syscall-0.5.1 \ + redox_users-0.4.5 \ + regex-1.10.4 \ regex-automata-0.1.10 \ regex-automata-0.4.6 \ regex-syntax-0.6.29 \ - regex-syntax-0.8.2 \ + regex-syntax-0.8.3 \ + relative-path-1.9.2 \ remove_dir_all-0.8.2 \ rend-0.4.2 \ - reqwest-0.11.24 \ - resolv-conf-0.7.0 \ + reqwest-0.12.4 \ rgb-0.8.37 \ ring-0.17.8 \ rkyv-0.7.44 \ rkyv_derive-0.7.44 \ + roff-0.2.1 \ + rstest-0.19.0 \ + rstest_macros-0.19.0 \ rustc-demangle-0.1.23 \ rustc-hash-1.1.0 \ rustc_version-0.4.0 \ - rustix-0.38.31 \ - rustls-0.21.10 \ - rustls-native-certs-0.6.3 \ - rustls-pemfile-1.0.4 \ + rustix-0.38.34 \ + rustls-0.21.12 \ + rustls-0.22.4 \ + rustls-native-certs-0.7.0 \ + rustls-pemfile-2.1.2 \ + rustls-pki-types-1.5.0 \ rustls-webpki-0.101.7 \ - rustversion-1.0.14 \ + rustls-webpki-0.102.3 \ + rustversion-1.0.15 \ ryu-1.0.17 \ same-file-1.0.6 \ schannel-0.1.23 \ scopeguard-1.2.0 \ sct-0.7.1 \ seahash-4.1.0 \ - security-framework-2.9.2 \ - security-framework-sys-2.9.1 \ + security-framework-2.10.0 \ + security-framework-sys-2.10.0 \ selectors-0.22.0 \ semver-1.0.22 \ - serde-1.0.197 \ - serde_derive-1.0.197 \ - serde_json-1.0.114 \ - serde_path_to_error-0.1.15 \ + serde-1.0.200 \ + serde_derive-1.0.200 \ + serde_json-1.0.116 \ + serde_path_to_error-0.1.16 \ serde_spanned-0.6.5 \ serde_urlencoded-0.7.1 \ servo_arc-0.1.1 \ sha1-0.10.6 \ sha2-0.10.8 \ sharded-slab-0.1.7 \ - signal-hook-registry-1.4.1 \ + signal-hook-registry-1.4.2 \ simd-abstraction-0.7.1 \ simd-adler32-0.3.7 \ simdutf8-0.1.4 \ siphasher-0.3.11 \ slab-0.4.9 \ - smallvec-1.13.1 \ - socket2-0.5.6 \ + smallvec-1.13.2 \ + socket2-0.5.7 \ spin-0.9.8 \ stable_deref_trait-1.2.0 \ - string_cache-0.8.7 \ - string_cache_codegen-0.5.2 \ - strsim-0.11.0 \ - strum-0.26.1 \ - strum_macros-0.26.1 \ + strsim-0.11.1 \ + strum-0.26.2 \ + strum_macros-0.26.2 \ subtle-2.5.0 \ syn-1.0.109 \ - syn-2.0.52 \ + syn-2.0.60 \ sync_wrapper-0.1.2 \ - system-configuration-0.5.1 \ - system-configuration-sys-0.5.0 \ + sync_wrapper-1.0.1 \ tap-1.0.1 \ tar-0.4.40 \ tempfile-3.10.1 \ - tendril-0.4.3 \ - termcolor-1.4.1 \ terminal_size-0.3.0 \ thin-slice-0.1.1 \ - thiserror-1.0.57 \ - thiserror-impl-1.0.57 \ + thiserror-1.0.59 \ + thiserror-impl-1.0.59 \ thread_local-1.1.8 \ - time-0.3.34 \ + time-0.3.36 \ time-core-0.1.2 \ - time-macros-0.2.17 \ + time-macros-0.2.18 \ tinyvec-1.6.0 \ tinyvec_macros-0.1.1 \ - tokio-1.36.0 \ + tokio-1.37.0 \ tokio-macros-2.2.0 \ tokio-native-tls-0.3.1 \ tokio-openssl-0.6.4 \ tokio-rustls-0.24.1 \ - tokio-stream-0.1.14 \ - tokio-tungstenite-0.20.1 \ + tokio-rustls-0.25.0 \ + tokio-stream-0.1.15 \ + tokio-tungstenite-0.21.0 \ tokio-util-0.7.10 \ toml-0.7.8 \ - toml-0.8.10 \ + toml-0.8.12 \ toml_datetime-0.6.5 \ toml_edit-0.19.15 \ - toml_edit-0.22.6 \ + toml_edit-0.22.12 \ tower-0.4.13 \ - tower-http-0.4.4 \ + tower-http-0.5.2 \ tower-layer-0.3.2 \ tower-service-0.3.2 \ tracing-0.1.40 \ @@ -378,22 +379,20 @@ CARGO_CRATES= addr2line-0.21.0 \ tracing-core-0.1.32 \ tracing-log-0.2.0 \ tracing-subscriber-0.3.18 \ - trust-dns-proto-0.23.2 \ - trust-dns-resolver-0.23.2 \ try-lock-0.2.5 \ - tungstenite-0.20.1 \ + tungstenite-0.21.0 \ typed-arena-2.0.2 \ typenum-1.17.0 \ unicase-2.7.0 \ unicode-bidi-0.3.15 \ unicode-ident-1.0.12 \ unicode-normalization-0.1.23 \ - unicode-width-0.1.11 \ + unicode-width-0.1.12 \ untrusted-0.9.0 \ url-2.5.0 \ utf-8-0.7.6 \ utf8parse-0.2.1 \ - uuid-1.7.0 \ + uuid-1.8.0 \ valuable-0.1.0 \ vcpkg-0.2.15 \ version_check-0.9.4 \ @@ -410,52 +409,54 @@ CARGO_CRATES= addr2line-0.21.0 \ wasm-bindgen-shared-0.2.92 \ wasm-streams-0.4.0 \ web-sys-0.3.69 \ - webpki-roots-0.25.4 \ - which-6.0.0 \ - widestring-1.0.2 \ + webpki-roots-0.26.1 \ + which-6.0.1 \ winapi-0.3.9 \ winapi-i686-pc-windows-gnu-0.4.0 \ - winapi-util-0.1.6 \ + winapi-util-0.1.8 \ winapi-x86_64-pc-windows-gnu-0.4.0 \ windows-sys-0.45.0 \ windows-sys-0.48.0 \ windows-sys-0.52.0 \ windows-targets-0.42.2 \ windows-targets-0.48.5 \ - windows-targets-0.52.4 \ + windows-targets-0.52.5 \ windows_aarch64_gnullvm-0.42.2 \ windows_aarch64_gnullvm-0.48.5 \ - windows_aarch64_gnullvm-0.52.4 \ + windows_aarch64_gnullvm-0.52.5 \ windows_aarch64_msvc-0.42.2 \ windows_aarch64_msvc-0.48.5 \ - windows_aarch64_msvc-0.52.4 \ + windows_aarch64_msvc-0.52.5 \ windows_i686_gnu-0.42.2 \ windows_i686_gnu-0.48.5 \ - windows_i686_gnu-0.52.4 \ + windows_i686_gnu-0.52.5 \ + windows_i686_gnullvm-0.52.5 \ windows_i686_msvc-0.42.2 \ windows_i686_msvc-0.48.5 \ - windows_i686_msvc-0.52.4 \ + windows_i686_msvc-0.52.5 \ windows_x86_64_gnu-0.42.2 \ windows_x86_64_gnu-0.48.5 \ - windows_x86_64_gnu-0.52.4 \ + windows_x86_64_gnu-0.52.5 \ windows_x86_64_gnullvm-0.42.2 \ windows_x86_64_gnullvm-0.48.5 \ - windows_x86_64_gnullvm-0.52.4 \ + windows_x86_64_gnullvm-0.52.5 \ windows_x86_64_msvc-0.42.2 \ windows_x86_64_msvc-0.48.5 \ - windows_x86_64_msvc-0.52.4 \ + windows_x86_64_msvc-0.52.5 \ winnow-0.5.40 \ - winnow-0.6.5 \ - winreg-0.50.0 \ + winnow-0.6.7 \ + winreg-0.52.0 \ + winsafe-0.0.19 \ wyz-0.5.1 \ xattr-1.3.1 \ zerocopy-0.7.32 \ zerocopy-derive-0.7.32 \ + zeroize-1.7.0 \ zip-0.6.6 \ zopfli-0.8.0 \ zstd-0.11.2+zstd.1.5.2 \ zstd-safe-5.0.2+zstd.1.5.2 \ - zstd-sys-2.0.9+zstd.1.5.5 + zstd-sys-2.0.10+zstd.1.5.6 OPENSSLINC= /usr/include OPENSSLLIB= /usr/lib diff --git a/www/trunk/distinfo b/www/trunk/distinfo index 6fd42714330d..15705b572e62 100644 --- a/www/trunk/distinfo +++ b/www/trunk/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1712894838 +TIMESTAMP = 1715436315 SHA256 (rust/crates/addr2line-0.21.0.crate) = 8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb SIZE (rust/crates/addr2line-0.21.0.crate) = 40807 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe @@ -11,68 +11,70 @@ SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa SIZE (rust/crates/ahash-0.8.11.crate) = 43607 SHA256 (rust/crates/aho-corasick-0.7.20.crate) = cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac SIZE (rust/crates/aho-corasick-0.7.20.crate) = 111440 -SHA256 (rust/crates/aho-corasick-1.1.2.crate) = b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0 -SIZE (rust/crates/aho-corasick-1.1.2.crate) = 183136 -SHA256 (rust/crates/aligned-0.4.1.crate) = 80a21b9440a626c7fc8573a9e3d3a06b75c7c97754c2949bc7857b90353ca655 -SIZE (rust/crates/aligned-0.4.1.crate) = 8532 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 +SHA256 (rust/crates/aligned-0.4.2.crate) = 377e4c0ba83e4431b10df45c1d4666f178ea9c552cac93e60c3a88bf32785923 +SIZE (rust/crates/aligned-0.4.2.crate) = 8519 SHA256 (rust/crates/ansi_term-0.12.1.crate) = d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2 SIZE (rust/crates/ansi_term-0.12.1.crate) = 24838 -SHA256 (rust/crates/anstream-0.6.13.crate) = d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb -SIZE (rust/crates/anstream-0.6.13.crate) = 30928 -SHA256 (rust/crates/anstyle-1.0.6.crate) = 8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc -SIZE (rust/crates/anstyle-1.0.6.crate) = 14604 -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.80.crate) = 5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1 -SIZE (rust/crates/anyhow-1.0.80.crate) = 45138 -SHA256 (rust/crates/arc-swap-1.7.0.crate) = 7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f -SIZE (rust/crates/arc-swap-1.7.0.crate) = 68468 +SHA256 (rust/crates/anstream-0.6.14.crate) = 418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b +SIZE (rust/crates/anstream-0.6.14.crate) = 29160 +SHA256 (rust/crates/anstyle-1.0.7.crate) = 038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b +SIZE (rust/crates/anstyle-1.0.7.crate) = 15709 +SHA256 (rust/crates/anstyle-parse-0.2.4.crate) = c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4 +SIZE (rust/crates/anstyle-parse-0.2.4.crate) = 23069 +SHA256 (rust/crates/anstyle-query-1.0.3.crate) = a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5 +SIZE (rust/crates/anstyle-query-1.0.3.crate) = 9742 +SHA256 (rust/crates/anstyle-wincon-3.0.3.crate) = 61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19 +SIZE (rust/crates/anstyle-wincon-3.0.3.crate) = 12179 +SHA256 (rust/crates/anyhow-1.0.82.crate) = f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519 +SIZE (rust/crates/anyhow-1.0.82.crate) = 45361 +SHA256 (rust/crates/arc-swap-1.7.1.crate) = 69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457 +SIZE (rust/crates/arc-swap-1.7.1.crate) = 68512 SHA256 (rust/crates/as-slice-0.2.1.crate) = 516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516 SIZE (rust/crates/as-slice-0.2.1.crate) = 6942 -SHA256 (rust/crates/async-recursion-1.0.5.crate) = 5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0 -SIZE (rust/crates/async-recursion-1.0.5.crate) = 11890 -SHA256 (rust/crates/async-trait-0.1.77.crate) = c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9 -SIZE (rust/crates/async-trait-0.1.77.crate) = 29986 -SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa -SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 -SHA256 (rust/crates/axum-0.6.20.crate) = 3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf -SIZE (rust/crates/axum-0.6.20.crate) = 146227 -SHA256 (rust/crates/axum-core-0.3.4.crate) = 759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c -SIZE (rust/crates/axum-core-0.3.4.crate) = 21088 -SHA256 (rust/crates/axum-server-0.5.1.crate) = 447f28c85900215cc1bea282f32d4a2f22d55c5a300afdfbc661c8d6a632e063 -SIZE (rust/crates/axum-server-0.5.1.crate) = 37642 -SHA256 (rust/crates/backtrace-0.3.69.crate) = 2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837 -SIZE (rust/crates/backtrace-0.3.69.crate) = 77299 +SHA256 (rust/crates/async-recursion-1.1.1.crate) = 3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11 +SIZE (rust/crates/async-recursion-1.1.1.crate) = 14874 +SHA256 (rust/crates/async-trait-0.1.80.crate) = c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca +SIZE (rust/crates/async-trait-0.1.80.crate) = 28775 +SHA256 (rust/crates/autocfg-1.2.0.crate) = f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80 +SIZE (rust/crates/autocfg-1.2.0.crate) = 14808 +SHA256 (rust/crates/axum-0.7.5.crate) = 3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf +SIZE (rust/crates/axum-0.7.5.crate) = 151429 +SHA256 (rust/crates/axum-core-0.4.3.crate) = a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3 +SIZE (rust/crates/axum-core-0.4.3.crate) = 21877 +SHA256 (rust/crates/axum-server-0.6.0.crate) = c1ad46c3ec4e12f4a4b6835e173ba21c25e484c9d02b49770bf006ce5367c036 +SIZE (rust/crates/axum-server-0.6.0.crate) = 36772 +SHA256 (rust/crates/backtrace-0.3.71.crate) = 26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d +SIZE (rust/crates/backtrace-0.3.71.crate) = 86553 SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 SIZE (rust/crates/base64-0.21.7.crate) = 82576 +SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 +SIZE (rust/crates/base64-0.22.1.crate) = 81597 SHA256 (rust/crates/base64-simd-0.7.0.crate) = 781dd20c3aff0bd194fe7d2a977dd92f21c173891f3a03b677359e5fa457e5d5 SIZE (rust/crates/base64-simd-0.7.0.crate) = 9966 SHA256 (rust/crates/base64ct-1.6.0.crate) = 8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b SIZE (rust/crates/base64ct-1.6.0.crate) = 28870 SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 -SHA256 (rust/crates/bitflags-2.4.2.crate) = ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf -SIZE (rust/crates/bitflags-2.4.2.crate) = 42602 +SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1 +SIZE (rust/crates/bitflags-2.5.0.crate) = 43821 SHA256 (rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c SIZE (rust/crates/bitvec-1.0.1.crate) = 224375 SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 -SHA256 (rust/crates/bumpalo-3.15.4.crate) = 7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa -SIZE (rust/crates/bumpalo-3.15.4.crate) = 85028 +SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c +SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677 SHA256 (rust/crates/bytecheck-0.6.12.crate) = 23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2 SIZE (rust/crates/bytecheck-0.6.12.crate) = 8202 SHA256 (rust/crates/bytecheck_derive-0.6.12.crate) = 3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659 SIZE (rust/crates/bytecheck_derive-0.6.12.crate) = 5415 -SHA256 (rust/crates/bytemuck-1.14.3.crate) = a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f -SIZE (rust/crates/bytemuck-1.14.3.crate) = 47032 +SHA256 (rust/crates/bytemuck-1.15.0.crate) = 5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15 +SIZE (rust/crates/bytemuck-1.15.0.crate) = 47672 SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b SIZE (rust/crates/byteorder-1.5.0.crate) = 23288 -SHA256 (rust/crates/bytes-1.5.0.crate) = a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223 -SIZE (rust/crates/bytes-1.5.0.crate) = 58909 +SHA256 (rust/crates/bytes-1.6.0.crate) = 514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9 +SIZE (rust/crates/bytes-1.6.0.crate) = 60605 SHA256 (rust/crates/bzip2-0.4.4.crate) = bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8 SIZE (rust/crates/bzip2-0.4.4.crate) = 34197 SHA256 (rust/crates/bzip2-sys-0.1.11+1.0.8.crate) = 736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc @@ -81,28 +83,30 @@ SHA256 (rust/crates/camino-1.1.6.crate) = c59e92b5a388f549b863a7bea62612c09f24c8 SIZE (rust/crates/camino-1.1.6.crate) = 30519 SHA256 (rust/crates/cargo-lock-9.0.0.crate) = e11c675378efb449ed3ce8de78d75d0d80542fc98487c26aba28eb3b82feac72 SIZE (rust/crates/cargo-lock-9.0.0.crate) = 40465 -SHA256 (rust/crates/cargo-platform-0.1.7.crate) = 694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f -SIZE (rust/crates/cargo-platform-0.1.7.crate) = 11819 +SHA256 (rust/crates/cargo-platform-0.1.8.crate) = 24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc +SIZE (rust/crates/cargo-platform-0.1.8.crate) = 11813 SHA256 (rust/crates/cargo_metadata-0.18.1.crate) = 2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037 SIZE (rust/crates/cargo_metadata-0.18.1.crate) = 24535 -SHA256 (rust/crates/cc-1.0.90.crate) = 8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5 -SIZE (rust/crates/cc-1.0.90.crate) = 73954 +SHA256 (rust/crates/cc-1.0.96.crate) = 065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd +SIZE (rust/crates/cc-1.0.96.crate) = 76576 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 -SHA256 (rust/crates/chrono-0.4.35.crate) = 8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a -SIZE (rust/crates/chrono-0.4.35.crate) = 234267 +SHA256 (rust/crates/chrono-0.4.38.crate) = a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401 +SIZE (rust/crates/chrono-0.4.38.crate) = 220559 SHA256 (rust/crates/cipher-0.4.4.crate) = 773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad SIZE (rust/crates/cipher-0.4.4.crate) = 19073 -SHA256 (rust/crates/clap-4.5.2.crate) = b230ab84b0ffdf890d5a10abdbc8b83ae1c4918275daea1ab8801f71536b2651 -SIZE (rust/crates/clap-4.5.2.crate) = 55385 +SHA256 (rust/crates/clap-4.5.4.crate) = 90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0 +SIZE (rust/crates/clap-4.5.4.crate) = 55401 SHA256 (rust/crates/clap_builder-4.5.2.crate) = ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4 SIZE (rust/crates/clap_builder-4.5.2.crate) = 163566 -SHA256 (rust/crates/clap_derive-4.5.0.crate) = 307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47 -SIZE (rust/crates/clap_derive-4.5.0.crate) = 29042 +SHA256 (rust/crates/clap_derive-4.5.4.crate) = 528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64 +SIZE (rust/crates/clap_derive-4.5.4.crate) = 29159 SHA256 (rust/crates/clap_lex-0.7.0.crate) = 98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce SIZE (rust/crates/clap_lex-0.7.0.crate) = 11915 -SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7 -SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857 +SHA256 (rust/crates/clap_mangen-0.2.20.crate) = e1dd95b5ebb5c1c54581dd6346f3ed6a79a3eef95dd372fc2ac13d535535300e +SIZE (rust/crates/clap_mangen-0.2.20.crate) = 14861 +SHA256 (rust/crates/colorchoice-1.0.1.crate) = 0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422 +SIZE (rust/crates/colorchoice-1.0.1.crate) = 7895 SHA256 (rust/crates/console-0.15.8.crate) = 0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb SIZE (rust/crates/console-0.15.8.crate) = 36364 SHA256 (rust/crates/const-str-0.3.2.crate) = 21077772762a1002bb421c3af42ac1725fa56066bfc53d9a55bb79905df2aaf3 @@ -119,8 +123,8 @@ SHA256 (rust/crates/core-foundation-sys-0.8.6.crate) = 06ea2b9bc92be3c2baa9334a3 SIZE (rust/crates/core-foundation-sys-0.8.6.crate) = 37629 SHA256 (rust/crates/cpufeatures-0.2.12.crate) = 53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504 SIZE (rust/crates/cpufeatures-0.2.12.crate) = 12837 -SHA256 (rust/crates/crates_io_api-0.9.0.crate) = cb0122a67287f6795360b83a542cf2fbb3eb57a42729966c9ac792598c909902 -SIZE (rust/crates/crates_io_api-0.9.0.crate) = 18902 +SHA256 (rust/crates/crates_io_api-0.11.0.crate) = 200ad30d24892baf2168f2df366939264d02f2fa0be0914f8e2da4bd3407c58c +SIZE (rust/crates/crates_io_api-0.11.0.crate) = 19023 SHA256 (rust/crates/crc32fast-1.4.0.crate) = b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa SIZE (rust/crates/crc32fast-1.4.0.crate) = 38665 SHA256 (rust/crates/crossbeam-channel-0.5.12.crate) = ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95 @@ -145,8 +149,8 @@ SHA256 (rust/crates/cvt-0.1.2.crate) = d2ae9bf77fbf2d39ef573205d554d87e86c12f199 SIZE (rust/crates/cvt-0.1.2.crate) = 6214 SHA256 (rust/crates/dashmap-5.5.3.crate) = 978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856 SIZE (rust/crates/dashmap-5.5.3.crate) = 24061 -SHA256 (rust/crates/data-encoding-2.5.0.crate) = 7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5 -SIZE (rust/crates/data-encoding-2.5.0.crate) = 20632 +SHA256 (rust/crates/data-encoding-2.6.0.crate) = e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2 +SIZE (rust/crates/data-encoding-2.6.0.crate) = 20769 SHA256 (rust/crates/data-url-0.1.1.crate) = 3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193 SIZE (rust/crates/data-url-0.1.1.crate) = 20039 SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4 @@ -165,30 +169,30 @@ SHA256 (rust/crates/dtoa-short-0.3.4.crate) = dbaceec3c6e4211c79e7b1800fb9680527 SIZE (rust/crates/dtoa-short-0.3.4.crate) = 8276 SHA256 (rust/crates/dunce-1.0.4.crate) = 56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b SIZE (rust/crates/dunce-1.0.4.crate) = 8034 -SHA256 (rust/crates/either-1.10.0.crate) = 11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a -SIZE (rust/crates/either-1.10.0.crate) = 18334 +SHA256 (rust/crates/either-1.11.0.crate) = a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2 +SIZE (rust/crates/either-1.11.0.crate) = 18973 SHA256 (rust/crates/encode_unicode-0.3.6.crate) = a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f SIZE (rust/crates/encode_unicode-0.3.6.crate) = 45741 -SHA256 (rust/crates/encoding_rs-0.8.33.crate) = 7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1 -SIZE (rust/crates/encoding_rs-0.8.33.crate) = 1370071 -SHA256 (rust/crates/enum-as-inner-0.6.0.crate) = 5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a -SIZE (rust/crates/enum-as-inner-0.6.0.crate) = 12079 -SHA256 (rust/crates/env_logger-0.10.2.crate) = 4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580 -SIZE (rust/crates/env_logger-0.10.2.crate) = 36402 +SHA256 (rust/crates/encoding_rs-0.8.34.crate) = b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59 +SIZE (rust/crates/encoding_rs-0.8.34.crate) = 1378166 +SHA256 (rust/crates/env_filter-0.1.0.crate) = a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea +SIZE (rust/crates/env_filter-0.1.0.crate) = 11553 +SHA256 (rust/crates/env_logger-0.11.3.crate) = 38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9 +SIZE (rust/crates/env_logger-0.11.3.crate) = 29704 SHA256 (rust/crates/envy-0.4.2.crate) = 3f47e0157f2cb54f5ae1bd371b30a2ae4311e1c028f575cd4e81de7353215965 SIZE (rust/crates/envy-0.4.2.crate) = 10985 SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 SHA256 (rust/crates/errno-0.3.8.crate) = a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245 SIZE (rust/crates/errno-0.3.8.crate) = 10645 -SHA256 (rust/crates/fastrand-2.0.1.crate) = 25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5 -SIZE (rust/crates/fastrand-2.0.1.crate) = 14664 +SHA256 (rust/crates/fastrand-2.1.0.crate) = 9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a +SIZE (rust/crates/fastrand-2.1.0.crate) = 14907 SHA256 (rust/crates/file-id-0.2.1.crate) = 6584280525fb2059cba3db2c04abf947a1a29a45ddae89f3870f8281704fafc9 SIZE (rust/crates/file-id-0.2.1.crate) = 10240 SHA256 (rust/crates/filetime-0.2.23.crate) = 1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd SIZE (rust/crates/filetime-0.2.23.crate) = 14942 -SHA256 (rust/crates/flate2-1.0.28.crate) = 46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e -SIZE (rust/crates/flate2-1.0.28.crate) = 73690 +SHA256 (rust/crates/flate2-1.0.30.crate) = 5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae +SIZE (rust/crates/flate2-1.0.30.crate) = 75511 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 SIZE (rust/crates/fnv-1.0.7.crate) = 11266 SHA256 (rust/crates/foreign-types-0.3.2.crate) = f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1 @@ -203,8 +207,6 @@ SHA256 (rust/crates/fsevent-sys-4.1.0.crate) = 76ee7a02da4d231650c7cea31349b889b SIZE (rust/crates/fsevent-sys-4.1.0.crate) = 4620 SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c SIZE (rust/crates/funty-2.0.0.crate) = 13160 -SHA256 (rust/crates/futf-0.1.5.crate) = df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843 -SIZE (rust/crates/futf-0.1.5.crate) = 11344 SHA256 (rust/crates/futures-0.3.30.crate) = 645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0 SIZE (rust/crates/futures-0.3.30.crate) = 53828 SHA256 (rust/crates/futures-channel-0.3.30.crate) = eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78 @@ -221,6 +223,8 @@ SHA256 (rust/crates/futures-sink-0.3.30.crate) = 9fb8e00e87438d937621c1c6269e53f SIZE (rust/crates/futures-sink-0.3.30.crate) = 7852 SHA256 (rust/crates/futures-task-0.3.30.crate) = 38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004 SIZE (rust/crates/futures-task-0.3.30.crate) = 11126 +SHA256 (rust/crates/futures-timer-3.0.3.crate) = f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24 +SIZE (rust/crates/futures-timer-3.0.3.crate) = 19739 SHA256 (rust/crates/futures-util-0.3.30.crate) = 3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48 SIZE (rust/crates/futures-util-0.3.30.crate) = 159977 SHA256 (rust/crates/fxhash-0.2.1.crate) = c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c @@ -229,40 +233,40 @@ SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 SHA256 (rust/crates/getrandom-0.1.16.crate) = 8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce SIZE (rust/crates/getrandom-0.1.16.crate) = 25077 -SHA256 (rust/crates/getrandom-0.2.12.crate) = 190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5 -SIZE (rust/crates/getrandom-0.2.12.crate) = 36163 +SHA256 (rust/crates/getrandom-0.2.14.crate) = 94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c +SIZE (rust/crates/getrandom-0.2.14.crate) = 37307 SHA256 (rust/crates/gimli-0.28.1.crate) = 4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253 SIZE (rust/crates/gimli-0.28.1.crate) = 270497 SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b SIZE (rust/crates/glob-0.3.1.crate) = 18880 -SHA256 (rust/crates/h2-0.3.24.crate) = bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9 -SIZE (rust/crates/h2-0.3.24.crate) = 167814 +SHA256 (rust/crates/h2-0.4.4.crate) = 816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069 +SIZE (rust/crates/h2-0.4.4.crate) = 168905 SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888 SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968 SHA256 (rust/crates/hashbrown-0.13.2.crate) = 43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e SIZE (rust/crates/hashbrown-0.13.2.crate) = 105265 -SHA256 (rust/crates/hashbrown-0.14.3.crate) = 290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604 -SIZE (rust/crates/hashbrown-0.14.3.crate) = 141425 +SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 +SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498 SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8 SIZE (rust/crates/heck-0.4.1.crate) = 11567 +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/hmac-0.12.1.crate) = 6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e SIZE (rust/crates/hmac-0.12.1.crate) = 42657 SHA256 (rust/crates/home-0.5.9.crate) = e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5 SIZE (rust/crates/home-0.5.9.crate) = 8760 -SHA256 (rust/crates/hostname-0.3.1.crate) = 3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867 -SIZE (rust/crates/hostname-0.3.1.crate) = 9272 -SHA256 (rust/crates/html5ever-0.25.2.crate) = e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148 -SIZE (rust/crates/html5ever-0.25.2.crate) = 72780 SHA256 (rust/crates/htmlescape-0.3.1.crate) = e9025058dae765dee5070ec375f591e2ba14638c63feff74f13805a72e523163 SIZE (rust/crates/htmlescape-0.3.1.crate) = 53226 -SHA256 (rust/crates/http-0.2.12.crate) = 601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1 -SIZE (rust/crates/http-0.2.12.crate) = 101964 -SHA256 (rust/crates/http-body-0.4.6.crate) = 7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2 -SIZE (rust/crates/http-body-0.4.6.crate) = 10773 -SHA256 (rust/crates/http-range-header-0.3.1.crate) = add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f -SIZE (rust/crates/http-range-header-0.3.1.crate) = 7712 +SHA256 (rust/crates/http-1.1.0.crate) = 21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258 +SIZE (rust/crates/http-1.1.0.crate) = 103144 +SHA256 (rust/crates/http-body-1.0.0.crate) = 1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643 +SIZE (rust/crates/http-body-1.0.0.crate) = 5411 +SHA256 (rust/crates/http-body-util-0.1.1.crate) = 0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d +SIZE (rust/crates/http-body-util-0.1.1.crate) = 11930 +SHA256 (rust/crates/http-range-header-0.4.0.crate) = 3ce4ef31cda248bbdb6e6820603b82dfcd9e833db65a43e997a0ccec777d11fe +SIZE (rust/crates/http-range-header-0.4.0.crate) = 8016 SHA256 (rust/crates/httparse-1.8.0.crate) = d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904 SIZE (rust/crates/httparse-1.8.0.crate) = 29954 SHA256 (rust/crates/httpdate-1.0.3.crate) = df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9 @@ -271,44 +275,42 @@ SHA256 (rust/crates/humantime-2.1.0.crate) = 9a3a5bfb195931eeb336b2a7b4d761daec8 SIZE (rust/crates/humantime-2.1.0.crate) = 16749 SHA256 (rust/crates/humantime-serde-1.1.1.crate) = 57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c SIZE (rust/crates/humantime-serde-1.1.1.crate) = 7886 -SHA256 (rust/crates/hyper-0.14.28.crate) = bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80 -SIZE (rust/crates/hyper-0.14.28.crate) = 197204 -SHA256 (rust/crates/hyper-rustls-0.24.2.crate) = ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590 -SIZE (rust/crates/hyper-rustls-0.24.2.crate) = 30195 -SHA256 (rust/crates/hyper-tls-0.5.0.crate) = d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905 -SIZE (rust/crates/hyper-tls-0.5.0.crate) = 13257 -SHA256 (rust/crates/idna-0.4.0.crate) = 7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c -SIZE (rust/crates/idna-0.4.0.crate) = 271429 +SHA256 (rust/crates/hyper-1.3.1.crate) = fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d +SIZE (rust/crates/hyper-1.3.1.crate) = 148763 +SHA256 (rust/crates/hyper-rustls-0.26.0.crate) = a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c +SIZE (rust/crates/hyper-rustls-0.26.0.crate) = 29538 +SHA256 (rust/crates/hyper-tls-0.6.0.crate) = 70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0 +SIZE (rust/crates/hyper-tls-0.6.0.crate) = 15052 +SHA256 (rust/crates/hyper-util-0.1.3.crate) = ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa +SIZE (rust/crates/hyper-util-0.1.3.crate) = 61647 SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6 SIZE (rust/crates/idna-0.5.0.crate) = 271940 -SHA256 (rust/crates/indexmap-2.2.5.crate) = 7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4 -SIZE (rust/crates/indexmap-2.2.5.crate) = 81498 +SHA256 (rust/crates/indexmap-2.2.6.crate) = 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 +SIZE (rust/crates/indexmap-2.2.6.crate) = 82420 SHA256 (rust/crates/inotify-0.9.6.crate) = f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff SIZE (rust/crates/inotify-0.9.6.crate) = 22971 SHA256 (rust/crates/inotify-sys-0.1.5.crate) = e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb SIZE (rust/crates/inotify-sys-0.1.5.crate) = 6965 SHA256 (rust/crates/inout-0.1.3.crate) = a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5 SIZE (rust/crates/inout-0.1.3.crate) = 10743 -SHA256 (rust/crates/ipconfig-0.3.2.crate) = b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f -SIZE (rust/crates/ipconfig-0.3.2.crate) = 24468 SHA256 (rust/crates/ipnet-2.9.0.crate) = 8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3 SIZE (rust/crates/ipnet-2.9.0.crate) = 27627 SHA256 (rust/crates/is-docker-0.2.0.crate) = 928bae27f42bc99b60d9ac7334e3a21d10ad8f1835a4e12ec3ec0464765ed1b3 SIZE (rust/crates/is-docker-0.2.0.crate) = 2664 -SHA256 (rust/crates/is-terminal-0.4.12.crate) = f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b -SIZE (rust/crates/is-terminal-0.4.12.crate) = 7470 SHA256 (rust/crates/is-wsl-0.4.0.crate) = 173609498df190136aa7dea1a91db051746d339e18476eed5ca40521f02d7aa5 SIZE (rust/crates/is-wsl-0.4.0.crate) = 3264 +SHA256 (rust/crates/is_terminal_polyfill-1.70.0.crate) = f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800 +SIZE (rust/crates/is_terminal_polyfill-1.70.0.crate) = 7451 SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473 SIZE (rust/crates/itertools-0.10.5.crate) = 115354 SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569 SIZE (rust/crates/itertools-0.12.1.crate) = 137761 SHA256 (rust/crates/itoa-0.4.8.crate) = b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4 SIZE (rust/crates/itoa-0.4.8.crate) = 11926 -SHA256 (rust/crates/itoa-1.0.10.crate) = b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c -SIZE (rust/crates/itoa-1.0.10.crate) = 10534 -SHA256 (rust/crates/jobserver-0.1.28.crate) = ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6 -SIZE (rust/crates/jobserver-0.1.28.crate) = 25543 +SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b +SIZE (rust/crates/itoa-1.0.11.crate) = 10563 +SHA256 (rust/crates/jobserver-0.1.31.crate) = d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e +SIZE (rust/crates/jobserver-0.1.31.crate) = 27306 SHA256 (rust/crates/js-sys-0.3.69.crate) = 29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d SIZE (rust/crates/js-sys-0.3.69.crate) = 81083 SHA256 (rust/crates/kqueue-1.0.8.crate) = 7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c @@ -317,42 +319,36 @@ SHA256 (rust/crates/kqueue-sys-1.0.4.crate) = ed9625ffda8729b85e45cf04090035ac36 SIZE (rust/crates/kqueue-sys-1.0.4.crate) = 7160 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.153.crate) = 9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd -SIZE (rust/crates/libc-0.2.153.crate) = 740614 -SHA256 (rust/crates/libdeflate-sys-1.19.3.crate) = cc9caa76c8cc6ee8c4efcf8f4514a812ebcad3aa7d3b548efe4d26da1203f177 -SIZE (rust/crates/libdeflate-sys-1.19.3.crate) = 192512 -SHA256 (rust/crates/libdeflater-1.19.3.crate) = 265a985bd31e5f22e2b2ac107cbed44c6ccf40ae236e46963cd00dd213e4bd03 -SIZE (rust/crates/libdeflater-1.19.3.crate) = 24046 -SHA256 (rust/crates/libredox-0.0.1.crate) = 85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8 -SIZE (rust/crates/libredox-0.0.1.crate) = 4212 -SHA256 (rust/crates/lightningcss-1.0.0-alpha.54.crate) = 07d306844e5af1753490c420c0d6ae3d814b00725092d106332762827ca8f0fe -SIZE (rust/crates/lightningcss-1.0.0-alpha.54.crate) = 7380143 -SHA256 (rust/crates/linked-hash-map-0.5.6.crate) = 0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f -SIZE (rust/crates/linked-hash-map-0.5.6.crate) = 15049 +SHA256 (rust/crates/lazycell-1.3.0.crate) = 830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55 +SIZE (rust/crates/lazycell-1.3.0.crate) = 12502 +SHA256 (rust/crates/libc-0.2.154.crate) = ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346 +SIZE (rust/crates/libc-0.2.154.crate) = 743304 +SHA256 (rust/crates/libdeflate-sys-1.20.0.crate) = 669ea17f9257bcb48c09c7ee4bef3957777504acffac557263e20c11001977bc +SIZE (rust/crates/libdeflate-sys-1.20.0.crate) = 199148 +SHA256 (rust/crates/libdeflater-1.20.0.crate) = 8dfd6424f7010ee0a3416f1d796d0450e3ad3ac237a237644f728277c4ded016 +SIZE (rust/crates/libdeflater-1.20.0.crate) = 22114 +SHA256 (rust/crates/libredox-0.1.3.crate) = c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d +SIZE (rust/crates/libredox-0.1.3.crate) = 6068 +SHA256 (rust/crates/lightningcss-1.0.0-alpha.55.crate) = 3bd5bed3814fb631bfc1e24c2be6f7e86a9837c660909acab79a38374dcb8798 +SIZE (rust/crates/lightningcss-1.0.0-alpha.55.crate) = 7381387 SHA256 (rust/crates/linux-raw-sys-0.4.13.crate) = 01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c SIZE (rust/crates/linux-raw-sys-0.4.13.crate) = 1493855 SHA256 (rust/crates/local-ip-address-0.6.1.crate) = 136ef34e18462b17bf39a7826f8f3bbc223341f8e83822beb8b77db9a3d49696 SIZE (rust/crates/local-ip-address-0.6.1.crate) = 25630 -SHA256 (rust/crates/lock_api-0.4.11.crate) = 3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45 -SIZE (rust/crates/lock_api-0.4.11.crate) = 27487 +SHA256 (rust/crates/lock_api-0.4.12.crate) = 07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17 +SIZE (rust/crates/lock_api-0.4.12.crate) = 27591 SHA256 (rust/crates/log-0.4.21.crate) = 90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c SIZE (rust/crates/log-0.4.21.crate) = 43442 -SHA256 (rust/crates/lru-cache-0.1.2.crate) = 31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c -SIZE (rust/crates/lru-cache-0.1.2.crate) = 9307 -SHA256 (rust/crates/mac-0.1.1.crate) = c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4 -SIZE (rust/crates/mac-0.1.1.crate) = 4838 -SHA256 (rust/crates/markup5ever-0.10.1.crate) = a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd -SIZE (rust/crates/markup5ever-0.10.1.crate) = 34668 -SHA256 (rust/crates/match_cfg-0.1.0.crate) = ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4 -SIZE (rust/crates/match_cfg-0.1.0.crate) = 7153 +SHA256 (rust/crates/lol_html-1.2.1.crate) = a4629ff9c2deeb7aad9b2d0f379fc41937a02f3b739f007732c46af40339dee5 +SIZE (rust/crates/lol_html-1.2.1.crate) = 544687 SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558 SIZE (rust/crates/matchers-0.1.0.crate) = 6948 SHA256 (rust/crates/matches-0.1.10.crate) = 2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5 SIZE (rust/crates/matches-0.1.10.crate) = 2592 SHA256 (rust/crates/matchit-0.7.3.crate) = 0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94 SIZE (rust/crates/matchit-0.7.3.crate) = 30372 -SHA256 (rust/crates/memchr-2.7.1.crate) = 523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149 -SIZE (rust/crates/memchr-2.7.1.crate) = 96307 +SHA256 (rust/crates/memchr-2.7.2.crate) = 6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d +SIZE (rust/crates/memchr-2.7.2.crate) = 96220 SHA256 (rust/crates/mime-0.3.17.crate) = 6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a SIZE (rust/crates/mime-0.3.17.crate) = 15712 SHA256 (rust/crates/mime_guess-2.0.4.crate) = 4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef @@ -373,10 +369,6 @@ SHA256 (rust/crates/neli-0.6.4.crate) = 1100229e06604150b3becd61a4965d5c70f3be17 SIZE (rust/crates/neli-0.6.4.crate) = 48016 SHA256 (rust/crates/neli-proc-macros-0.1.3.crate) = c168194d373b1e134786274020dae7fc5513d565ea2ebb9bc9ff17ffb69106d4 SIZE (rust/crates/neli-proc-macros-0.1.3.crate) = 10111 -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/nipper-0.1.9.crate) = 761382864693f4bb171abf9e8de181a320b00464a83a9a5071059057b1fe0116 -SIZE (rust/crates/nipper-0.1.9.crate) = 222329 SHA256 (rust/crates/nix-0.26.4.crate) = 598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b SIZE (rust/crates/nix-0.26.4.crate) = 279099 SHA256 (rust/crates/nodrop-0.1.14.crate) = 72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb @@ -407,24 +399,24 @@ SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4 SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601 SHA256 (rust/crates/openssl-probe-0.1.5.crate) = ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf SIZE (rust/crates/openssl-probe-0.1.5.crate) = 7227 -SHA256 (rust/crates/openssl-sys-0.9.101.crate) = dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff -SIZE (rust/crates/openssl-sys-0.9.101.crate) = 68568 +SHA256 (rust/crates/openssl-sys-0.9.102.crate) = c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2 +SIZE (rust/crates/openssl-sys-0.9.102.crate) = 68622 SHA256 (rust/crates/option-ext-0.2.0.crate) = 04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d SIZE (rust/crates/option-ext-0.2.0.crate) = 7345 SHA256 (rust/crates/outref-0.1.0.crate) = 7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4 SIZE (rust/crates/outref-0.1.0.crate) = 3067 SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39 SIZE (rust/crates/overload-0.1.1.crate) = 24439 -SHA256 (rust/crates/oxipng-9.0.0.crate) = 28e5c341ef78a228e47a551bfd15ff885d8c501af49f953358763a538c01f14d -SIZE (rust/crates/oxipng-9.0.0.crate) = 66747 +SHA256 (rust/crates/oxipng-9.1.1.crate) = 3f398c53eb34e0cf71d9e0bc676cfa7c611e3844dd14ab05e92fb7b423c98ecf +SIZE (rust/crates/oxipng-9.1.1.crate) = 65843 SHA256 (rust/crates/parcel_selectors-0.26.4.crate) = 05d74befe2d076330d9a58bf9ca2da424568724ab278adf15fb5718253133887 SIZE (rust/crates/parcel_selectors-0.26.4.crate) = 58302 SHA256 (rust/crates/parcel_sourcemap-2.1.1.crate) = 485b74d7218068b2b7c0e3ff12fbc61ae11d57cb5d8224f525bd304c6be05bbb SIZE (rust/crates/parcel_sourcemap-2.1.1.crate) = 9533 -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/parking_lot-0.12.2.crate) = 7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb +SIZE (rust/crates/parking_lot-0.12.2.crate) = 41723 +SHA256 (rust/crates/parking_lot_core-0.9.10.crate) = 1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8 +SIZE (rust/crates/parking_lot_core-0.9.10.crate) = 32406 SHA256 (rust/crates/parse-js-0.17.0.crate) = 9ec3b11d443640ec35165ee8f6f0559f1c6f41878d70330fe9187012b5935f02 SIZE (rust/crates/parse-js-0.17.0.crate) = 50713 SHA256 (rust/crates/password-hash-0.4.2.crate) = 7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700 @@ -467,8 +459,8 @@ SHA256 (rust/crates/pin-project-1.1.5.crate) = b6bf43b791c5b9e34c3d182969b4abb52 SIZE (rust/crates/pin-project-1.1.5.crate) = 54214 SHA256 (rust/crates/pin-project-internal-1.1.5.crate) = 2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965 SIZE (rust/crates/pin-project-internal-1.1.5.crate) = 28280 -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-project-lite-0.2.14.crate) = bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02 +SIZE (rust/crates/pin-project-lite-0.2.14.crate) = 28817 SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184 SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580 SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec @@ -481,16 +473,14 @@ SHA256 (rust/crates/precomputed-hash-0.1.1.crate) = 925383efa346730478fb4838dbe9 SIZE (rust/crates/precomputed-hash-0.1.1.crate) = 1640 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.78.crate) = e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae -SIZE (rust/crates/proc-macro2-1.0.78.crate) = 47158 +SHA256 (rust/crates/proc-macro2-1.0.81.crate) = 3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba +SIZE (rust/crates/proc-macro2-1.0.81.crate) = 48233 SHA256 (rust/crates/ptr_meta-0.1.4.crate) = 0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1 SIZE (rust/crates/ptr_meta-0.1.4.crate) = 5754 SHA256 (rust/crates/ptr_meta_derive-0.1.4.crate) = 16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac SIZE (rust/crates/ptr_meta_derive-0.1.4.crate) = 2302 -SHA256 (rust/crates/quick-error-1.2.3.crate) = a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0 -SIZE (rust/crates/quick-error-1.2.3.crate) = 15066 -SHA256 (rust/crates/quote-1.0.35.crate) = 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef -SIZE (rust/crates/quote-1.0.35.crate) = 28136 +SHA256 (rust/crates/quote-1.0.36.crate) = 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7 +SIZE (rust/crates/quote-1.0.36.crate) = 28507 SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 SIZE (rust/crates/radium-0.7.0.crate) = 10906 SHA256 (rust/crates/rand-0.7.3.crate) = 6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03 @@ -509,32 +499,34 @@ SHA256 (rust/crates/rand_hc-0.2.0.crate) = ca3129af7b92a17112d59ad498c6f81eaf463 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/rayon-1.9.0.crate) = e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd -SIZE (rust/crates/rayon-1.9.0.crate) = 177770 +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_users-0.4.4.crate) = a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4 -SIZE (rust/crates/redox_users-0.4.4.crate) = 15438 -SHA256 (rust/crates/regex-1.10.3.crate) = b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15 -SIZE (rust/crates/regex-1.10.3.crate) = 253101 +SHA256 (rust/crates/redox_syscall-0.5.1.crate) = 469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e +SIZE (rust/crates/redox_syscall-0.5.1.crate) = 22536 +SHA256 (rust/crates/redox_users-0.4.5.crate) = bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891 +SIZE (rust/crates/redox_users-0.4.5.crate) = 15514 +SHA256 (rust/crates/regex-1.10.4.crate) = c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c +SIZE (rust/crates/regex-1.10.4.crate) = 253191 SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 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.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1 SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752 -SHA256 (rust/crates/regex-syntax-0.8.2.crate) = c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f -SIZE (rust/crates/regex-syntax-0.8.2.crate) = 347228 +SHA256 (rust/crates/regex-syntax-0.8.3.crate) = adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56 +SIZE (rust/crates/regex-syntax-0.8.3.crate) = 347497 +SHA256 (rust/crates/relative-path-1.9.2.crate) = e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc +SIZE (rust/crates/relative-path-1.9.2.crate) = 22420 SHA256 (rust/crates/remove_dir_all-0.8.2.crate) = 23895cfadc1917fed9c6ed76a8c2903615fa3704f7493ff82b364c6540acc02b SIZE (rust/crates/remove_dir_all-0.8.2.crate) = 19074 SHA256 (rust/crates/rend-0.4.2.crate) = 71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c SIZE (rust/crates/rend-0.4.2.crate) = 9324 -SHA256 (rust/crates/reqwest-0.11.24.crate) = c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251 -SIZE (rust/crates/reqwest-0.11.24.crate) = 160972 -SHA256 (rust/crates/resolv-conf-0.7.0.crate) = 52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00 -SIZE (rust/crates/resolv-conf-0.7.0.crate) = 17352 +SHA256 (rust/crates/reqwest-0.12.4.crate) = 566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10 +SIZE (rust/crates/reqwest-0.12.4.crate) = 170627 SHA256 (rust/crates/rgb-0.8.37.crate) = 05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8 SIZE (rust/crates/rgb-0.8.37.crate) = 16644 SHA256 (rust/crates/ring-0.17.8.crate) = c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d @@ -543,24 +535,36 @@ SHA256 (rust/crates/rkyv-0.7.44.crate) = 5cba464629b3394fc4dbc6f940ff8f5b4ff5c7a SIZE (rust/crates/rkyv-0.7.44.crate) = 115686 SHA256 (rust/crates/rkyv_derive-0.7.44.crate) = a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65 SIZE (rust/crates/rkyv_derive-0.7.44.crate) = 18912 +SHA256 (rust/crates/roff-0.2.1.crate) = b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316 +SIZE (rust/crates/roff-0.2.1.crate) = 10605 +SHA256 (rust/crates/rstest-0.19.0.crate) = 9d5316d2a1479eeef1ea21e7f9ddc67c191d497abc8fc3ba2467857abbb68330 +SIZE (rust/crates/rstest-0.19.0.crate) = 32932 +SHA256 (rust/crates/rstest_macros-0.19.0.crate) = 04a9df72cc1f67020b0d63ad9bfe4a323e459ea7eb68e03bd9824db49f9a4c25 +SIZE (rust/crates/rstest_macros-0.19.0.crate) = 61243 SHA256 (rust/crates/rustc-demangle-0.1.23.crate) = d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76 SIZE (rust/crates/rustc-demangle-0.1.23.crate) = 28970 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/rustix-0.38.31.crate) = 6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949 -SIZE (rust/crates/rustix-0.38.31.crate) = 375443 -SHA256 (rust/crates/rustls-0.21.10.crate) = f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba -SIZE (rust/crates/rustls-0.21.10.crate) = 284920 -SHA256 (rust/crates/rustls-native-certs-0.6.3.crate) = a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00 -SIZE (rust/crates/rustls-native-certs-0.6.3.crate) = 24438 -SHA256 (rust/crates/rustls-pemfile-1.0.4.crate) = 1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c -SIZE (rust/crates/rustls-pemfile-1.0.4.crate) = 22092 +SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f +SIZE (rust/crates/rustix-0.38.34.crate) = 365160 +SHA256 (rust/crates/rustls-0.21.12.crate) = 3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e +SIZE (rust/crates/rustls-0.21.12.crate) = 285674 +SHA256 (rust/crates/rustls-0.22.4.crate) = bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432 +SIZE (rust/crates/rustls-0.22.4.crate) = 333681 +SHA256 (rust/crates/rustls-native-certs-0.7.0.crate) = 8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792 +SIZE (rust/crates/rustls-native-certs-0.7.0.crate) = 25071 +SHA256 (rust/crates/rustls-pemfile-2.1.2.crate) = 29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d +SIZE (rust/crates/rustls-pemfile-2.1.2.crate) = 25928 +SHA256 (rust/crates/rustls-pki-types-1.5.0.crate) = beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54 +SIZE (rust/crates/rustls-pki-types-1.5.0.crate) = 29362 SHA256 (rust/crates/rustls-webpki-0.101.7.crate) = 8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765 SIZE (rust/crates/rustls-webpki-0.101.7.crate) = 168808 -SHA256 (rust/crates/rustversion-1.0.14.crate) = 7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4 -SIZE (rust/crates/rustversion-1.0.14.crate) = 17261 +SHA256 (rust/crates/rustls-webpki-0.102.3.crate) = f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf +SIZE (rust/crates/rustls-webpki-0.102.3.crate) = 197543 +SHA256 (rust/crates/rustversion-1.0.15.crate) = 80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47 +SIZE (rust/crates/rustversion-1.0.15.crate) = 17406 SHA256 (rust/crates/ryu-1.0.17.crate) = e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1 SIZE (rust/crates/ryu-1.0.17.crate) = 47537 SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 @@ -573,22 +577,22 @@ SHA256 (rust/crates/sct-0.7.1.crate) = da046153aa2352493d6cb7da4b6e5c0c057d8a1d0 SIZE (rust/crates/sct-0.7.1.crate) = 27501 SHA256 (rust/crates/seahash-4.1.0.crate) = 1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b SIZE (rust/crates/seahash-4.1.0.crate) = 31976 -SHA256 (rust/crates/security-framework-2.9.2.crate) = 05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de -SIZE (rust/crates/security-framework-2.9.2.crate) = 79295 -SHA256 (rust/crates/security-framework-sys-2.9.1.crate) = e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a -SIZE (rust/crates/security-framework-sys-2.9.1.crate) = 18284 +SHA256 (rust/crates/security-framework-2.10.0.crate) = 770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6 +SIZE (rust/crates/security-framework-2.10.0.crate) = 79723 +SHA256 (rust/crates/security-framework-sys-2.10.0.crate) = 41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef +SIZE (rust/crates/security-framework-sys-2.10.0.crate) = 18676 SHA256 (rust/crates/selectors-0.22.0.crate) = df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe SIZE (rust/crates/selectors-0.22.0.crate) = 44199 SHA256 (rust/crates/semver-1.0.22.crate) = 92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca SIZE (rust/crates/semver-1.0.22.crate) = 30446 -SHA256 (rust/crates/serde-1.0.197.crate) = 3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2 -SIZE (rust/crates/serde-1.0.197.crate) = 77087 -SHA256 (rust/crates/serde_derive-1.0.197.crate) = 7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b -SIZE (rust/crates/serde_derive-1.0.197.crate) = 55771 -SHA256 (rust/crates/serde_json-1.0.114.crate) = c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0 -SIZE (rust/crates/serde_json-1.0.114.crate) = 146986 -SHA256 (rust/crates/serde_path_to_error-0.1.15.crate) = ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c -SIZE (rust/crates/serde_path_to_error-0.1.15.crate) = 16623 +SHA256 (rust/crates/serde-1.0.200.crate) = ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f +SIZE (rust/crates/serde-1.0.200.crate) = 77611 +SHA256 (rust/crates/serde_derive-1.0.200.crate) = 856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb +SIZE (rust/crates/serde_derive-1.0.200.crate) = 55785 +SHA256 (rust/crates/serde_json-1.0.116.crate) = 3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813 +SIZE (rust/crates/serde_json-1.0.116.crate) = 146790 +SHA256 (rust/crates/serde_path_to_error-0.1.16.crate) = af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6 +SIZE (rust/crates/serde_path_to_error-0.1.16.crate) = 16657 SHA256 (rust/crates/serde_spanned-0.6.5.crate) = eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1 SIZE (rust/crates/serde_spanned-0.6.5.crate) = 8349 SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd @@ -601,8 +605,8 @@ SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f53798 SIZE (rust/crates/sha2-0.10.8.crate) = 26357 SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6 SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227 -SHA256 (rust/crates/signal-hook-registry-1.4.1.crate) = d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1 -SIZE (rust/crates/signal-hook-registry-1.4.1.crate) = 17987 +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/simd-abstraction-0.7.1.crate) = 9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987 SIZE (rust/crates/simd-abstraction-0.7.1.crate) = 9170 SHA256 (rust/crates/simd-adler32-0.3.7.crate) = d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe @@ -613,68 +617,58 @@ SHA256 (rust/crates/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb0 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/smallvec-1.13.1.crate) = e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7 -SIZE (rust/crates/smallvec-1.13.1.crate) = 34952 -SHA256 (rust/crates/socket2-0.5.6.crate) = 05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871 -SIZE (rust/crates/socket2-0.5.6.crate) = 55270 +SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67 +SIZE (rust/crates/smallvec-1.13.2.crate) = 35216 +SHA256 (rust/crates/socket2-0.5.7.crate) = ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c +SIZE (rust/crates/socket2-0.5.7.crate) = 55758 SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 SIZE (rust/crates/spin-0.9.8.crate) = 38958 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.11.0.crate) = 5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01 -SIZE (rust/crates/strsim-0.11.0.crate) = 13710 -SHA256 (rust/crates/strum-0.26.1.crate) = 723b93e8addf9aa965ebe2d11da6d7540fa2283fcea14b3371ff055f7ba13f5f -SIZE (rust/crates/strum-0.26.1.crate) = 5861 -SHA256 (rust/crates/strum_macros-0.26.1.crate) = 7a3417fc93d76740d974a01654a09777cb500428cc874ca9f45edfe0c4d4cd18 -SIZE (rust/crates/strum_macros-0.26.1.crate) = 25326 +SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f +SIZE (rust/crates/strsim-0.11.1.crate) = 14266 +SHA256 (rust/crates/strum-0.26.2.crate) = 5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29 +SIZE (rust/crates/strum-0.26.2.crate) = 7189 +SHA256 (rust/crates/strum_macros-0.26.2.crate) = c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946 +SIZE (rust/crates/strum_macros-0.26.2.crate) = 27056 SHA256 (rust/crates/subtle-2.5.0.crate) = 81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc SIZE (rust/crates/subtle-2.5.0.crate) = 13909 SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 SIZE (rust/crates/syn-1.0.109.crate) = 237611 -SHA256 (rust/crates/syn-2.0.52.crate) = b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07 -SIZE (rust/crates/syn-2.0.52.crate) = 254728 +SHA256 (rust/crates/syn-2.0.60.crate) = 909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3 +SIZE (rust/crates/syn-2.0.60.crate) = 255808 SHA256 (rust/crates/sync_wrapper-0.1.2.crate) = 2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160 SIZE (rust/crates/sync_wrapper-0.1.2.crate) = 6933 -SHA256 (rust/crates/system-configuration-0.5.1.crate) = ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7 -SIZE (rust/crates/system-configuration-0.5.1.crate) = 12618 -SHA256 (rust/crates/system-configuration-sys-0.5.0.crate) = a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9 -SIZE (rust/crates/system-configuration-sys-0.5.0.crate) = 6730 +SHA256 (rust/crates/sync_wrapper-1.0.1.crate) = a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394 +SIZE (rust/crates/sync_wrapper-1.0.1.crate) = 6939 SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 SIZE (rust/crates/tap-1.0.1.crate) = 11316 SHA256 (rust/crates/tar-0.4.40.crate) = b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb SIZE (rust/crates/tar-0.4.40.crate) = 51844 SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1 SIZE (rust/crates/tempfile-3.10.1.crate) = 33653 -SHA256 (rust/crates/tendril-0.4.3.crate) = d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0 -SIZE (rust/crates/tendril-0.4.3.crate) = 37210 -SHA256 (rust/crates/termcolor-1.4.1.crate) = 06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755 -SIZE (rust/crates/termcolor-1.4.1.crate) = 18773 SHA256 (rust/crates/terminal_size-0.3.0.crate) = 21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7 SIZE (rust/crates/terminal_size-0.3.0.crate) = 10096 SHA256 (rust/crates/thin-slice-0.1.1.crate) = 8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c SIZE (rust/crates/thin-slice-0.1.1.crate) = 4484 -SHA256 (rust/crates/thiserror-1.0.57.crate) = 1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b -SIZE (rust/crates/thiserror-1.0.57.crate) = 20993 -SHA256 (rust/crates/thiserror-impl-1.0.57.crate) = a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81 -SIZE (rust/crates/thiserror-impl-1.0.57.crate) = 15639 +SHA256 (rust/crates/thiserror-1.0.59.crate) = f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa +SIZE (rust/crates/thiserror-1.0.59.crate) = 21040 +SHA256 (rust/crates/thiserror-impl-1.0.59.crate) = d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66 +SIZE (rust/crates/thiserror-impl-1.0.59.crate) = 15726 SHA256 (rust/crates/thread_local-1.1.8.crate) = 8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c SIZE (rust/crates/thread_local-1.1.8.crate) = 13962 -SHA256 (rust/crates/time-0.3.34.crate) = c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749 -SIZE (rust/crates/time-0.3.34.crate) = 118430 +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.17.crate) = 7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774 -SIZE (rust/crates/time-macros-0.2.17.crate) = 24443 +SHA256 (rust/crates/time-macros-0.2.18.crate) = 3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf +SIZE (rust/crates/time-macros-0.2.18.crate) = 24361 SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50 SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991 SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 -SHA256 (rust/crates/tokio-1.36.0.crate) = 61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931 -SIZE (rust/crates/tokio-1.36.0.crate) = 757286 +SHA256 (rust/crates/tokio-1.37.0.crate) = 1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787 +SIZE (rust/crates/tokio-1.37.0.crate) = 764297 SHA256 (rust/crates/tokio-macros-2.2.0.crate) = 5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b SIZE (rust/crates/tokio-macros-2.2.0.crate) = 11520 SHA256 (rust/crates/tokio-native-tls-0.3.1.crate) = bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2 @@ -683,26 +677,28 @@ SHA256 (rust/crates/tokio-openssl-0.6.4.crate) = 6ffab79df67727f6acf57f1ff743091 SIZE (rust/crates/tokio-openssl-0.6.4.crate) = 11911 SHA256 (rust/crates/tokio-rustls-0.24.1.crate) = c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081 SIZE (rust/crates/tokio-rustls-0.24.1.crate) = 33049 -SHA256 (rust/crates/tokio-stream-0.1.14.crate) = 397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842 -SIZE (rust/crates/tokio-stream-0.1.14.crate) = 35881 -SHA256 (rust/crates/tokio-tungstenite-0.20.1.crate) = 212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c -SIZE (rust/crates/tokio-tungstenite-0.20.1.crate) = 28569 +SHA256 (rust/crates/tokio-rustls-0.25.0.crate) = 775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f +SIZE (rust/crates/tokio-rustls-0.25.0.crate) = 30541 +SHA256 (rust/crates/tokio-stream-0.1.15.crate) = 267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af +SIZE (rust/crates/tokio-stream-0.1.15.crate) = 36284 +SHA256 (rust/crates/tokio-tungstenite-0.21.0.crate) = c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38 +SIZE (rust/crates/tokio-tungstenite-0.21.0.crate) = 28159 SHA256 (rust/crates/tokio-util-0.7.10.crate) = 5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15 SIZE (rust/crates/tokio-util-0.7.10.crate) = 110508 SHA256 (rust/crates/toml-0.7.8.crate) = dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257 SIZE (rust/crates/toml-0.7.8.crate) = 49671 -SHA256 (rust/crates/toml-0.8.10.crate) = 9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290 -SIZE (rust/crates/toml-0.8.10.crate) = 50667 +SHA256 (rust/crates/toml-0.8.12.crate) = e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3 +SIZE (rust/crates/toml-0.8.12.crate) = 51145 SHA256 (rust/crates/toml_datetime-0.6.5.crate) = 3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1 SIZE (rust/crates/toml_datetime-0.6.5.crate) = 10910 SHA256 (rust/crates/toml_edit-0.19.15.crate) = 1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421 SIZE (rust/crates/toml_edit-0.19.15.crate) = 95324 -SHA256 (rust/crates/toml_edit-0.22.6.crate) = 2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6 -SIZE (rust/crates/toml_edit-0.22.6.crate) = 103304 +SHA256 (rust/crates/toml_edit-0.22.12.crate) = d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef +SIZE (rust/crates/toml_edit-0.22.12.crate) = 104416 SHA256 (rust/crates/tower-0.4.13.crate) = b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c SIZE (rust/crates/tower-0.4.13.crate) = 106906 -SHA256 (rust/crates/tower-http-0.4.4.crate) = 61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140 -SIZE (rust/crates/tower-http-0.4.4.crate) = 115612 +SHA256 (rust/crates/tower-http-0.5.2.crate) = 1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5 +SIZE (rust/crates/tower-http-0.5.2.crate) = 118675 SHA256 (rust/crates/tower-layer-0.3.2.crate) = c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0 SIZE (rust/crates/tower-layer-0.3.2.crate) = 6023 SHA256 (rust/crates/tower-service-0.3.2.crate) = b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52 @@ -717,14 +713,10 @@ SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de38400 SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561 SHA256 (rust/crates/tracing-subscriber-0.3.18.crate) = ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b SIZE (rust/crates/tracing-subscriber-0.3.18.crate) = 196312 -SHA256 (rust/crates/trust-dns-proto-0.23.2.crate) = 3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374 -SIZE (rust/crates/trust-dns-proto-0.23.2.crate) = 366401 -SHA256 (rust/crates/trust-dns-resolver-0.23.2.crate) = 10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6 -SIZE (rust/crates/trust-dns-resolver-0.23.2.crate) = 89012 SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 -SHA256 (rust/crates/tungstenite-0.20.1.crate) = 9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9 -SIZE (rust/crates/tungstenite-0.20.1.crate) = 60095 +SHA256 (rust/crates/tungstenite-0.21.0.crate) = 9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1 +SIZE (rust/crates/tungstenite-0.21.0.crate) = 59858 SHA256 (rust/crates/typed-arena-2.0.2.crate) = 6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a SIZE (rust/crates/typed-arena-2.0.2.crate) = 11848 SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825 @@ -737,8 +729,8 @@ SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683a SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 SHA256 (rust/crates/unicode-normalization-0.1.23.crate) = a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5 SIZE (rust/crates/unicode-normalization-0.1.23.crate) = 122649 -SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85 -SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187 +SHA256 (rust/crates/unicode-width-0.1.12.crate) = 68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6 +SIZE (rust/crates/unicode-width-0.1.12.crate) = 24062 SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 SHA256 (rust/crates/url-2.5.0.crate) = 31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633 @@ -747,8 +739,8 @@ SHA256 (rust/crates/utf-8-0.7.6.crate) = 09cc8ee72d2a9becf2f2febe0205bbed8fc6615 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/uuid-1.7.0.crate) = f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a -SIZE (rust/crates/uuid-1.7.0.crate) = 42627 +SHA256 (rust/crates/uuid-1.8.0.crate) = a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0 +SIZE (rust/crates/uuid-1.8.0.crate) = 44043 SHA256 (rust/crates/valuable-0.1.0.crate) = 830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d SIZE (rust/crates/valuable-0.1.0.crate) = 27718 SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 @@ -781,18 +773,16 @@ SHA256 (rust/crates/wasm-streams-0.4.0.crate) = b65dc4c90b63b118468cf747d8bf3566 SIZE (rust/crates/wasm-streams-0.4.0.crate) = 34328 SHA256 (rust/crates/web-sys-0.3.69.crate) = 77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef SIZE (rust/crates/web-sys-0.3.69.crate) = 728877 -SHA256 (rust/crates/webpki-roots-0.25.4.crate) = 5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1 -SIZE (rust/crates/webpki-roots-0.25.4.crate) = 253559 -SHA256 (rust/crates/which-6.0.0.crate) = 7fa5e0c10bf77f44aac573e498d1a82d5fbd5e91f6fc0a99e7be4b38e85e101c -SIZE (rust/crates/which-6.0.0.crate) = 16751 -SHA256 (rust/crates/widestring-1.0.2.crate) = 653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8 -SIZE (rust/crates/widestring-1.0.2.crate) = 79706 +SHA256 (rust/crates/webpki-roots-0.26.1.crate) = b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009 +SIZE (rust/crates/webpki-roots-0.26.1.crate) = 249748 +SHA256 (rust/crates/which-6.0.1.crate) = 8211e4f58a2b2805adfbefbc07bab82958fc91e3836339b1ab7ae32465dce0d7 +SIZE (rust/crates/which-6.0.1.crate) = 16542 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.6.crate) = f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596 -SIZE (rust/crates/winapi-util-0.1.6.crate) = 12234 +SHA256 (rust/crates/winapi-util-0.1.8.crate) = 4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b +SIZE (rust/crates/winapi-util-0.1.8.crate) = 12416 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 @@ -805,56 +795,60 @@ SHA256 (rust/crates/windows-targets-0.42.2.crate) = 8e5180c00cd44c9b1c88adb36932 SIZE (rust/crates/windows-targets-0.42.2.crate) = 5492 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.4.crate) = 7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b -SIZE (rust/crates/windows-targets-0.52.4.crate) = 6310 +SHA256 (rust/crates/windows-targets-0.52.5.crate) = 6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb +SIZE (rust/crates/windows-targets-0.52.5.crate) = 6376 SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8 SIZE (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 364071 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.4.crate) = bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9 -SIZE (rust/crates/windows_aarch64_gnullvm-0.52.4.crate) = 433373 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 433266 SHA256 (rust/crates/windows_aarch64_msvc-0.42.2.crate) = e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43 SIZE (rust/crates/windows_aarch64_msvc-0.42.2.crate) = 666981 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.4.crate) = da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675 -SIZE (rust/crates/windows_aarch64_msvc-0.52.4.crate) = 828055 +SHA256 (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6 +SIZE (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 827944 SHA256 (rust/crates/windows_i686_gnu-0.42.2.crate) = c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f SIZE (rust/crates/windows_i686_gnu-0.42.2.crate) = 736236 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.4.crate) = b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3 -SIZE (rust/crates/windows_i686_gnu-0.52.4.crate) = 875736 +SHA256 (rust/crates/windows_i686_gnu-0.52.5.crate) = 88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670 +SIZE (rust/crates/windows_i686_gnu-0.52.5.crate) = 875699 +SHA256 (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9 +SIZE (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 473064 SHA256 (rust/crates/windows_i686_msvc-0.42.2.crate) = 44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060 SIZE (rust/crates/windows_i686_msvc-0.42.2.crate) = 724951 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.4.crate) = 1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02 -SIZE (rust/crates/windows_i686_msvc-0.52.4.crate) = 895530 +SHA256 (rust/crates/windows_i686_msvc-0.52.5.crate) = db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf +SIZE (rust/crates/windows_i686_msvc-0.52.5.crate) = 895404 SHA256 (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36 SIZE (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 699373 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.4.crate) = 5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03 -SIZE (rust/crates/windows_x86_64_gnu-0.52.4.crate) = 831627 +SHA256 (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9 +SIZE (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 831539 SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3 SIZE (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 364068 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.4.crate) = 77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177 -SIZE (rust/crates/windows_x86_64_gnullvm-0.52.4.crate) = 433358 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596 +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 433246 SHA256 (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0 SIZE (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 666936 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.4.crate) = 32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8 -SIZE (rust/crates/windows_x86_64_msvc-0.52.4.crate) = 828019 +SHA256 (rust/crates/windows_x86_64_msvc-0.52.5.crate) = bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0 +SIZE (rust/crates/windows_x86_64_msvc-0.52.5.crate) = 827905 SHA256 (rust/crates/winnow-0.5.40.crate) = f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876 SIZE (rust/crates/winnow-0.5.40.crate) = 159316 -SHA256 (rust/crates/winnow-0.6.5.crate) = dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8 -SIZE (rust/crates/winnow-0.6.5.crate) = 159316 -SHA256 (rust/crates/winreg-0.50.0.crate) = 524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1 -SIZE (rust/crates/winreg-0.50.0.crate) = 29703 +SHA256 (rust/crates/winnow-0.6.7.crate) = 14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578 +SIZE (rust/crates/winnow-0.6.7.crate) = 159491 +SHA256 (rust/crates/winreg-0.52.0.crate) = a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5 +SIZE (rust/crates/winreg-0.52.0.crate) = 30148 +SHA256 (rust/crates/winsafe-0.0.19.crate) = d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904 +SIZE (rust/crates/winsafe-0.0.19.crate) = 492820 SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed SIZE (rust/crates/wyz-0.5.1.crate) = 18790 SHA256 (rust/crates/xattr-1.3.1.crate) = 8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f @@ -863,6 +857,8 @@ SHA256 (rust/crates/zerocopy-0.7.32.crate) = 74d4d3961e53fa4c9a25a8637fc2bfaf259 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 (rust/crates/zeroize-1.7.0.crate) = 525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d +SIZE (rust/crates/zeroize-1.7.0.crate) = 19039 SHA256 (rust/crates/zip-0.6.6.crate) = 760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261 SIZE (rust/crates/zip-0.6.6.crate) = 65789 SHA256 (rust/crates/zopfli-0.8.0.crate) = 5c1f48f3508a3a3f2faee01629564400bc12260f6214a056d06a3aaaa6ef0736 @@ -871,7 +867,7 @@ SHA256 (rust/crates/zstd-0.11.2+zstd.1.5.2.crate) = 20cc960326ece64f010d2d210753 SIZE (rust/crates/zstd-0.11.2+zstd.1.5.2.crate) = 28987 SHA256 (rust/crates/zstd-safe-5.0.2+zstd.1.5.2.crate) = 1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db SIZE (rust/crates/zstd-safe-5.0.2+zstd.1.5.2.crate) = 17273 -SHA256 (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656 -SIZE (rust/crates/zstd-sys-2.0.9+zstd.1.5.5.crate) = 728791 -SHA256 (thedodd-trunk-v0.19.2_GH0.tar.gz) = 61876cd64a2a641cf30db0dba400cae50f0d73d33394838abbbb5636d12f3db7 -SIZE (thedodd-trunk-v0.19.2_GH0.tar.gz) = 482171 +SHA256 (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa +SIZE (rust/crates/zstd-sys-2.0.10+zstd.1.5.6.crate) = 749088 +SHA256 (thedodd-trunk-v0.20.1_GH0.tar.gz) = 3f9127214abcd246d7f421cce5add03fb0cb1f5533c368d0f42a599faac1c4e3 +SIZE (thedodd-trunk-v0.20.1_GH0.tar.gz) = 503283 diff --git a/www/tt-rss/Makefile b/www/tt-rss/Makefile index 06056ac5b33c..b3bd8d35ea6b 100644 --- a/www/tt-rss/Makefile +++ b/www/tt-rss/Makefile @@ -1,6 +1,5 @@ PORTNAME= tt-rss -PORTVERSION= g20240221 -PORTREVISION= 2 +PORTVERSION= g20240421 PORTEPOCH= 2 CATEGORIES= www PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} @@ -17,7 +16,7 @@ USES= gettext-tools php:cli,web,flavors shebangfix USE_GITLAB= yes GL_SITE= https://gitlab.tt-rss.org -GL_TAGNAME= 81f31399929361d19fb3260a43aa35f9b6cf5105 +GL_TAGNAME= d832907125a7711397da8ade5cfb51082d802542 # phe json/openssl extension is required but it's statically linked in default php USE_PHP= ctype dom exif fileinfo filter iconv intl mbstring pcntl pdo \ phar posix session simplexml sockets tokenizer xml xmlwriter \ diff --git a/www/tt-rss/distinfo b/www/tt-rss/distinfo index 15c447187c4b..7821d80336d3 100644 --- a/www/tt-rss/distinfo +++ b/www/tt-rss/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709495465 -SHA256 (tt-rss-tt-rss-81f31399929361d19fb3260a43aa35f9b6cf5105_GL0.tar.gz) = 7fdbcfd84f6eae80cd656afc0720b1ed9ad23f46bde22aa520302d2e9ad797d7 -SIZE (tt-rss-tt-rss-81f31399929361d19fb3260a43aa35f9b6cf5105_GL0.tar.gz) = 8966510 +TIMESTAMP = 1713836306 +SHA256 (tt-rss-tt-rss-d832907125a7711397da8ade5cfb51082d802542_GL0.tar.gz) = 21754aa85eaa4a5de1aba6e076f26ca3c356a4d6e70ae7e1d9e6ea6d12de1d65 +SIZE (tt-rss-tt-rss-d832907125a7711397da8ade5cfb51082d802542_GL0.tar.gz) = 8995458 diff --git a/www/tuifeed/Makefile b/www/tuifeed/Makefile index 69dfeef17a66..096ee1c334f5 100644 --- a/www/tuifeed/Makefile +++ b/www/tuifeed/Makefile @@ -1,7 +1,7 @@ PORTNAME= tuifeed DISTVERSIONPREFIX= v DISTVERSION= 0.3.2 -PORTREVISION= 10 +PORTREVISION= 11 CATEGORIES= www MAINTAINER= driesm@FreeBSD.org diff --git a/www/tusc/Makefile b/www/tusc/Makefile index 5fdece66a197..a8afaeb887b8 100644 --- a/www/tusc/Makefile +++ b/www/tusc/Makefile @@ -1,6 +1,6 @@ PORTNAME= tusc DISTVERSION= 0.4.7 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= osa@FreeBSD.org diff --git a/www/tusd/Makefile b/www/tusd/Makefile index ad867a492eab..60b506368ed2 100644 --- a/www/tusd/Makefile +++ b/www/tusd/Makefile @@ -1,7 +1,7 @@ PORTNAME= tusd DISTVERSIONPREFIX= v DISTVERSION= 2.0.0 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= www MAINTAINER= mm@FreeBSD.org diff --git a/www/typo3-11/Makefile b/www/typo3-11/Makefile index 525c4ad00363..9d129e9f8dc6 100644 --- a/www/typo3-11/Makefile +++ b/www/typo3-11/Makefile @@ -28,7 +28,7 @@ SUB_LIST+= PREFIX=${PREFIX} \ PORT_V_MAJOR= 11 PORT_V_MINOR= 5 -PORT_V_PATCH= 35 +PORT_V_PATCH= 37 TYPO3WWW= www TYPO3SRC= ${PORTNAME}_src-${PORTVERSION} diff --git a/www/typo3-11/distinfo b/www/typo3-11/distinfo index e1b4be65c323..1c74c064b3cc 100644 --- a/www/typo3-11/distinfo +++ b/www/typo3-11/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708194984 -SHA256 (typo3_src-11.5.35.tar.gz) = fae368c71fe744b4539e44a12776db6e5a634e59d01a1c7eac69c7ceb58b9e86 -SIZE (typo3_src-11.5.35.tar.gz) = 29060641 +TIMESTAMP = 1715913494 +SHA256 (typo3_src-11.5.37.tar.gz) = 4a4f70a1f21e4ab04ad6f331f0cb19da0a9c956898de2cacb927a92d8f2bff1e +SIZE (typo3_src-11.5.37.tar.gz) = 29056310 diff --git a/www/typo3-11/pkg-descr b/www/typo3-11/pkg-descr index 0704d9d3edc0..f21ba59184f2 100644 --- a/www/typo3-11/pkg-descr +++ b/www/typo3-11/pkg-descr @@ -1,5 +1,5 @@ -This is the stable version with long-term support (LTS). We provide free -maintenance bug fixes until April 2023 and security updates until October 2024. +This is the old stable version with long-term support (LTS). We provide free security +updates until October 2024. * Unified editor experience * Advanced Filelist module @@ -9,11 +9,11 @@ maintenance bug fixes until April 2023 and security updates until October 2024. * And many improvements for developers System requirements -* PHP 7.4, 8.0, 8.1 +* PHP 7.4, 8.0, 8.1, 8.2, 8.3 * MariaDB 10.2.7+ / Microsoft SQL Server / MySQL 5.7.9+ / PostgreSQL / SQLite * Modern Browsers * Detailed list of requirements: - https://get.typo3.org/version/11#system-requirements + https://get.typo3.org/version/11#system-requirements Supported Until Free: 2024-10-31 diff --git a/www/typo3-12/Makefile b/www/typo3-12/Makefile index c23421770fcf..c415f603f0c7 100644 --- a/www/typo3-12/Makefile +++ b/www/typo3-12/Makefile @@ -12,8 +12,6 @@ WWW= https://typo3.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE.txt -IGNORE_WITH_PHP= 83 - USES= cpe php:web,flavors shebangfix # php openssl extension is required but it's statically linked in default php USE_PHP= ctype dom fileinfo filter gd intl mbstring pdo session \ @@ -31,7 +29,7 @@ SUB_LIST+= PREFIX=${PREFIX} \ PORT_V_MAJOR= 12 PORT_V_MINOR= 4 -PORT_V_PATCH= 11 +PORT_V_PATCH= 15 TYPO3DIR= www/${PORTNAME}-${PORT_V_MAJOR} diff --git a/www/typo3-12/distinfo b/www/typo3-12/distinfo index 49bb1df05dfd..d0406b791356 100644 --- a/www/typo3-12/distinfo +++ b/www/typo3-12/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1708195397 -SHA256 (typo3_src-12.4.11.tar.gz) = a93bb3e8ceae5f00c77f985438dd948d2a33426ccfd7c2e0e5706325c43533a3 -SIZE (typo3_src-12.4.11.tar.gz) = 25896306 +TIMESTAMP = 1715907884 +SHA256 (typo3_src-12.4.15.tar.gz) = 7004d07db76b600455ffc2ddd71a37ac9e5e2e6a6529da26a788c03c77c2af9f +SIZE (typo3_src-12.4.15.tar.gz) = 26145402 diff --git a/www/typo3-12/pkg-descr b/www/typo3-12/pkg-descr index 73191e782ce7..a21d2f94225b 100644 --- a/www/typo3-12/pkg-descr +++ b/www/typo3-12/pkg-descr @@ -1,20 +1,12 @@ -We support each TYPO3 sprint release until the next minor version is published. -Once released in April 2023, the long-term support version of TYPO3 12 will -receive bug fixes until October 2024, and we will provide security updates until -April 2026. - -We encourage users and agencies to install and use the sprint releases until the -LTS release is available. Further details about the releases and planned release -dates are available in the roadmap. - +This is the stable version with long-term support (LTS). We provide free maintenance +bug fixes until October 2024 and security updates until April 2026. * Increased performance * Improved backend usability -* Create custom content types quickly and easily * Top-modern dependent libraries (CKEditor v5, Symfony v6, Doctrine v3) * And many improvements for developers System requirements -* PHP 8.1 +* PHP 8.1, 8.2, 8.3 * MariaDB 10.3+ / MySQL 8.0+ / PostgreSQL 10.0+ / SQLite 3.8.3+ * Modern Browsers * Detailed list of requirements: diff --git a/www/typo3-13/Makefile b/www/typo3-13/Makefile new file mode 100644 index 000000000000..f1cd870fdc90 --- /dev/null +++ b/www/typo3-13/Makefile @@ -0,0 +1,76 @@ +PORTNAME= typo3 +DISTVERSION= ${PORT_V_MAJOR}.${PORT_V_MINOR}.${PORT_V_PATCH} +CATEGORIES= www +MASTER_SITES= https://typo3.azureedge.net/typo3/${DISTVERSION}/ +PKGNAMESUFFIX= -${PORT_V_MAJOR}${PHP_PKGNAMESUFFIX} +DISTNAME= ${PORTNAME}_src-${DISTVERSION} + +MAINTAINER= freebsd-ports@charlieroot.de +COMMENT= Typo3 content management system +WWW= https://typo3.org/ + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +IGNORE_WITH_PHP= 81 + +USES= cpe php:web,flavors shebangfix +# php openssl extension is required but it's statically linked in default php +USE_PHP= ctype dom fileinfo filter gd intl mbstring pdo session \ + simplexml tokenizer xml zip zlib + +WRKSRC= ${WRKDIR}/${PORTNAME}_src-${PORTVERSION} +SHEBANG_GLOB= *.php *.sh +NO_ARCH= yes +NO_BUILD= yes +PORTSCOUT= limit:^${PORT_V_MAJOR}\.${PORT_V_MINOR}\. +SUB_FILES= pkg-message +SUB_LIST+= PREFIX=${PREFIX} \ + TYPO3DIR=${TYPO3DIR} \ + TYPO3WWW=${TYPO3WWW} + +PORT_V_MAJOR= 13 +PORT_V_MINOR= 1 +PORT_V_PATCH= 1 + +TYPO3DIR= www/${PORTNAME}-${PORT_V_MAJOR} + +OPTIONS_DEFINE= CURL GMP IMAGICK MYSQL POSTGRES SQLITE +OPTIONS_DEFAULT= MYSQL + +IMAGICK_DESC= ${IMAGEMAGICK_DESC} +MBSTRING_DESC= ${MULTIBYTE_DESC} +MYSQL_DESC= Use MySQL as DBMS +POSTGRES_DESC= Use PostgreSQL as DBMS +SQLITE_DESC= Use SQLite as DBMS + +CURL_USE= PHP=curl +GMP_USE= PHP=gmp +MYSQL_USE= PHP=mysqli +POSTGRES_USE= PHP=pgsql +SQLITE_USE= PHP=sqlite3 + +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MIMAGICK} +.if ${PORT_OPTIONS:MX11} +USES+= magick:7,run +.else +USES+= magick:7,run,nox11 +.endif +.endif + +do-install: + @cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${TYPO3DIR} + +post-install: + @${ECHO_CMD} "@owner ${WWWOWN}" >> ${TMPPLIST} + @${ECHO_CMD} "@group ${WWWGRP}" >> ${TMPPLIST} + @${ECHO_CMD} "@mode 755" >> ${TMPPLIST} + @${FIND} -s -d ${WRKSRC} -type f | ${SED} "s?${WRKSRC}?${TYPO3DIR}?g" >>${TMPPLIST} + @${FIND} -s -d ${WRKSRC} -type d | ${SED} "s?${WRKSRC}?@dir ${TYPO3DIR}?g" >> ${TMPPLIST} + @${ECHO_CMD} "@mode" >> ${TMPPLIST} + @${ECHO_CMD} "@group" >> ${TMPPLIST} + @${ECHO_CMD} "@owner" >> ${TMPPLIST} + +.include <bsd.port.mk> diff --git a/www/typo3-13/distinfo b/www/typo3-13/distinfo new file mode 100644 index 000000000000..4a35beb1361d --- /dev/null +++ b/www/typo3-13/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1715914407 +SHA256 (typo3_src-13.1.1.tar.gz) = e57cbb2e201e0fb00007a75e8abf0f796146ea3771240f48f6e3c0d5d37626e8 +SIZE (typo3_src-13.1.1.tar.gz) = 25818232 diff --git a/www/typo3-13/files/pkg-message.in b/www/typo3-13/files/pkg-message.in new file mode 100644 index 000000000000..2ab734bd1bbb --- /dev/null +++ b/www/typo3-13/files/pkg-message.in @@ -0,0 +1,24 @@ +[ +{ type: install + message: <<EOM +1) Add the following to your Apache configuration file + httpd.conf and restart the web server: + + Alias /typo3 %%PREFIX%%/%%TYPO3WWW%%/%%TYPO3DIR%%/ + AcceptPathInfo On + <Directory %%PREFIX%%/%%TYPO3WWW%%/%%TYPO3DIR%%/> + Options Indexes FollowSymLinks + AllowOverride all + Require all granted + </Directory> + +2) Visit your TYPO3 site with a browser (i.e. + http://your.server.com/typo3/) to continue the + installation / upgrade process. + +For more information, see the INSTALL DOCUMENTATION: + + https://docs.typo3.org/typo3cms/GettingStartedTutorial/latest/Installation/Index.html +EOM +} +] diff --git a/www/typo3-13/pkg-descr b/www/typo3-13/pkg-descr new file mode 100644 index 000000000000..b6562969b0eb --- /dev/null +++ b/www/typo3-13/pkg-descr @@ -0,0 +1,14 @@ +Once released in October 2023, the long-term support version of TYPO3 13 will receive +bug fixes until April 2026, and we will provide security updates until October 2027. +Frontend rendering presets +* Content blocks +* Improved search, redirects and workspaces +* Simplified external system integration +* Top-modern image rendering + +System requirements +* PHP 8.2, 8.3 +* MariaDB 10.4+ / MySQL 8.0+ / PostgreSQL 10.0+ / SQLite 3.8.3+ +* Modern Browsers +* Detailed list of requirements: + https://get.typo3.org/version/12#system-requirements diff --git a/www/uchiwa/Makefile b/www/uchiwa/Makefile index 91118fa36576..bdb5747f8522 100644 --- a/www/uchiwa/Makefile +++ b/www/uchiwa/Makefile @@ -1,6 +1,6 @@ PORTNAME= uchiwa PORTVERSION= 0.18.2 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MASTER_SITES= http://uchiwa.io/ diff --git a/www/ungoogled-chromium/Makefile b/www/ungoogled-chromium/Makefile index f75f5f61a3b4..38dd9c95b374 100644 --- a/www/ungoogled-chromium/Makefile +++ b/www/ungoogled-chromium/Makefile @@ -1,5 +1,5 @@ PORTNAME= ungoogled-chromium -PORTVERSION= 124.0.6367.60 +PORTVERSION= 124.0.6367.207 UGVERSION= ${DISTVERSION}-1 CATEGORIES= www wayland MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ diff --git a/www/ungoogled-chromium/distinfo b/www/ungoogled-chromium/distinfo index 48739ad45d84..4a93c2f69d53 100644 --- a/www/ungoogled-chromium/distinfo +++ b/www/ungoogled-chromium/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1713858634 -SHA256 (chromium-124.0.6367.60.tar.xz) = ebd553527149cb8477a522df90acd6cea2388a6f431e2db589a0301df1d0cae2 -SIZE (chromium-124.0.6367.60.tar.xz) = 3432734968 -SHA256 (ungoogled-chromium-124.0.6367.60-1.tar.gz) = 10996c17d79b4bf1baccc3138e6103c39379ca2f5bdc72092e67e4dda7a527a7 -SIZE (ungoogled-chromium-124.0.6367.60-1.tar.gz) = 667143 -SHA256 (chromium-124.0.6367.60-testdata.tar.xz) = 42fcb4454bb703343843b7b7b4c7c28cbc9e0f885f5e38748268aeeb00ce9d29 -SIZE (chromium-124.0.6367.60-testdata.tar.xz) = 279785420 +TIMESTAMP = 1715673313 +SHA256 (chromium-124.0.6367.207.tar.xz) = 6d6dc8b943012573a244ddb013b281ecbc97f77fe1fc6f55a4118241d107eba5 +SIZE (chromium-124.0.6367.207.tar.xz) = 3450794132 +SHA256 (ungoogled-chromium-124.0.6367.207-1.tar.gz) = e109631651affdaae2ddc22cc1e81f56d8c7eb583f816c6ee7de21d97977315b +SIZE (ungoogled-chromium-124.0.6367.207-1.tar.gz) = 667461 +SHA256 (chromium-124.0.6367.207-testdata.tar.xz) = d30386a73719a64fdd191f7b51709185e4d3fc49888b04a390506d4370e69b06 +SIZE (chromium-124.0.6367.207-testdata.tar.xz) = 277899644 SHA256 (test_fonts-336e775eec536b2d785cc80eff6ac39051931286.tar.gz) = a2ca2962daf482a8f943163541e1c73ba4b2694fabcd2510981f2db4eda493c8 SIZE (test_fonts-336e775eec536b2d785cc80eff6ac39051931286.tar.gz) = 32624734 diff --git a/www/ungoogled-chromium/files/patch-chrome_app_chrome__main__delegate.cc b/www/ungoogled-chromium/files/patch-chrome_app_chrome__main__delegate.cc index 0459ec4b8d77..56986599445b 100644 --- a/www/ungoogled-chromium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/ungoogled-chromium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,4 +1,4 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2024-04-23 07:42:17 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2024-05-11 05:39:22 UTC +++ chrome/app/chrome_main_delegate.cc @@ -146,7 +146,7 @@ #include "components/about_ui/credit_utils.h" @@ -34,7 +34,7 @@ #include "chrome/browser/policy/policy_path_parser.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -346,7 +346,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty +@@ -349,7 +349,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty // and resources loaded. bool SubprocessNeedsResourceBundle(const std::string& process_type) { return @@ -43,7 +43,7 @@ // The zygote process opens the resources for the renderers. process_type == switches::kZygoteProcess || #endif -@@ -431,7 +431,7 @@ bool HandleVersionSwitches(const base::CommandLine& co +@@ -434,7 +434,7 @@ bool HandleVersionSwitches(const base::CommandLine& co // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -52,7 +52,7 @@ // Show the man page if --help or -h is on the command line. void HandleHelpSwitches(const base::CommandLine& command_line) { if (command_line.HasSwitch(switches::kHelp) || -@@ -477,7 +477,7 @@ void SetCrashpadUploadConsentPostLogin() { +@@ -480,7 +480,7 @@ void SetCrashpadUploadConsentPostLogin() { } #endif // BUILDFLAG(IS_CHROMEOS_LACROS) @@ -61,7 +61,7 @@ void SIGTERMProfilingShutdown(int signal) { content::Profiling::Stop(); struct sigaction sigact; -@@ -559,7 +559,7 @@ std::optional<int> AcquireProcessSingleton( +@@ -562,7 +562,7 @@ std::optional<int> AcquireProcessSingleton( // process can be exited. ChromeProcessSingleton::CreateInstance(user_data_dir); @@ -70,7 +70,7 @@ // Read the xdg-activation token and set it in the command line for the // duration of the notification in order to ensure this is propagated to an // already running browser process if it exists. -@@ -643,7 +643,7 @@ void InitializeUserDataDir(base::CommandLine* command_ +@@ -646,7 +646,7 @@ void InitializeUserDataDir(base::CommandLine* command_ std::string process_type = command_line->GetSwitchValueASCII(switches::kProcessType); @@ -79,7 +79,7 @@ // On Linux, Chrome does not support running multiple copies under different // DISPLAYs, so the profile directory can be specified in the environment to // support the virtual desktop use-case. -@@ -770,7 +770,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat +@@ -773,7 +773,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ @@ -88,7 +88,7 @@ // Record the startup process creation time on supported platforms. On Android // this is recorded in ChromeMainDelegateAndroid. startup_metric_utils::GetCommon().RecordStartupProcessCreationTime( -@@ -1155,7 +1155,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv +@@ -1162,7 +1162,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv chrome::GetChannel() == version_info::Channel::DEV; const bool emit_crashes = #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ @@ -97,7 +97,7 @@ is_canary_dev; #else false; -@@ -1174,7 +1174,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv +@@ -1181,7 +1181,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv // for more context. base::sequence_manager::internal::ThreadController::InitializeFeatures( /*record_sample_metadata=*/is_canary_dev); @@ -106,7 +106,7 @@ base::MessagePumpLibevent::InitializeFeatures(); #elif BUILDFLAG(IS_MAC) base::PlatformThread::InitFeaturesPostFieldTrial(); -@@ -1323,7 +1323,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom +@@ -1330,7 +1330,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom // TODO(crbug.com/1052397): Revisit the macro expression once build flag // switch of lacros-chrome is complete. @@ -115,7 +115,7 @@ // This will directly exit if the user asked for help. HandleHelpSwitches(command_line); #endif -@@ -1353,7 +1353,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom +@@ -1360,7 +1360,7 @@ std::optional<int> ChromeMainDelegate::BasicStartupCom #if BUILDFLAG(IS_CHROMEOS) chromeos::dbus_paths::RegisterPathProvider(); #endif @@ -124,7 +124,7 @@ nacl::RegisterPathProvider(); #endif -@@ -1750,7 +1750,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1757,7 +1757,7 @@ void ChromeMainDelegate::PreSandboxStartup() { CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; } @@ -133,7 +133,7 @@ // Zygote needs to call InitCrashReporter() in RunZygote(). if (process_type != switches::kZygoteProcess) { if (command_line.HasSwitch(switches::kPreCrashpadCrashTest)) { -@@ -1851,7 +1851,7 @@ absl::variant<int, content::MainFunctionParams> Chrome +@@ -1858,7 +1858,7 @@ absl::variant<int, content::MainFunctionParams> Chrome // This entry is not needed on Linux, where the NaCl loader // process is launched via nacl_helper instead. diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_BUILD.gn b/www/ungoogled-chromium/files/patch-chrome_browser_BUILD.gn index f5900cb6ed8d..38fcbfc58577 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_BUILD.gn +++ b/www/ungoogled-chromium/files/patch-chrome_browser_BUILD.gn @@ -1,6 +1,6 @@ ---- chrome/browser/BUILD.gn.orig 2024-04-23 07:42:17 UTC +--- chrome/browser/BUILD.gn.orig 2024-04-26 05:03:53 UTC +++ chrome/browser/BUILD.gn -@@ -6529,6 +6529,13 @@ static_library("browser") { +@@ -6531,6 +6531,13 @@ static_library("browser") { } } diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc b/www/ungoogled-chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc index 54e29af84e54..7f44501ed5b4 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc +++ b/www/ungoogled-chromium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc @@ -1,9 +1,9 @@ ---- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2024-04-23 07:42:17 UTC +--- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2024-05-11 05:39:22 UTC +++ chrome/browser/chrome_browser_main_extra_parts_linux.cc -@@ -169,7 +169,7 @@ ChromeBrowserMainExtraPartsLinux::ChromeBrowserMainExt - ChromeBrowserMainExtraPartsLinux::~ChromeBrowserMainExtraPartsLinux() = default; +@@ -175,7 +175,7 @@ void ChromeBrowserMainExtraPartsLinux::PostBrowserStar - void ChromeBrowserMainExtraPartsLinux::PreEarlyInitialization() { + // static + void ChromeBrowserMainExtraPartsLinux::InitOzonePlatformHint() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On the desktop, we fix the platform name if necessary. diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_devtools_BUILD.gn b/www/ungoogled-chromium/files/patch-chrome_browser_devtools_BUILD.gn new file mode 100644 index 000000000000..06adbd4b64ff --- /dev/null +++ b/www/ungoogled-chromium/files/patch-chrome_browser_devtools_BUILD.gn @@ -0,0 +1,10 @@ +--- chrome/browser/devtools/BUILD.gn.orig 2024-04-30 23:46:45 UTC ++++ chrome/browser/devtools/BUILD.gn +@@ -113,6 +113,7 @@ static_library("devtools") { + "//chrome/browser/autofill:autofill", + "//components/autofill/content/browser:browser", + "//components/autofill/core/browser:browser", ++ "//components/enterprise/buildflags", + "//components/paint_preview/buildflags:buildflags", + "//content/public/browser", + "//net", diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_extensions_BUILD.gn b/www/ungoogled-chromium/files/patch-chrome_browser_extensions_BUILD.gn index c8d6a576c705..6d684075152e 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_extensions_BUILD.gn +++ b/www/ungoogled-chromium/files/patch-chrome_browser_extensions_BUILD.gn @@ -1,6 +1,14 @@ ---- chrome/browser/extensions/BUILD.gn.orig 2024-04-23 07:42:17 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2024-04-24 01:31:09 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1378,6 +1378,10 @@ static_library("extensions") { +@@ -826,6 +826,7 @@ static_library("extensions") { + "//components/device_reauth", + "//components/optimization_guide/core:features", + "//components/safe_browsing/content/browser", ++ "//components/safe_browsing/content/common/proto:download_file_types_proto", + "//components/safe_browsing/core/browser:safe_browsing_metrics_collector", + "//components/security_interstitials/content:security_interstitial_page", + "//components/site_engagement/core/mojom:mojo_bindings", +@@ -1384,6 +1385,10 @@ static_library("extensions") { deps += [ "//chrome/services/printing/public/mojom" ] } diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc b/www/ungoogled-chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc index 7219cb6e234c..a115979b7fdb 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc +++ b/www/ungoogled-chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc @@ -1,4 +1,4 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2024-04-23 07:42:17 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2024-05-11 05:39:22 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc @@ -80,8 +80,10 @@ @@ -30,7 +30,7 @@ #include "components/power_metrics/system_power_monitor.h" #endif -@@ -858,7 +860,7 @@ void RecordStartupMetrics() { +@@ -860,7 +862,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/1216328. @@ -39,7 +39,7 @@ shell_integration::DefaultWebClientState default_state = shell_integration::GetDefaultBrowser(); base::UmaHistogramEnumeration("DefaultBrowser.State", default_state, -@@ -1162,11 +1164,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1164,11 +1166,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt } #endif // !BUILDFLAG(IS_ANDROID) diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_prefs_browser__prefs.cc b/www/ungoogled-chromium/files/patch-chrome_browser_prefs_browser__prefs.cc index e5ca4d4ae5e9..ae840bbf1d89 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/ungoogled-chromium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,4 +1,4 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2024-04-23 07:42:17 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2024-05-11 05:39:22 UTC +++ chrome/browser/prefs/browser_prefs.cc @@ -485,18 +485,18 @@ #endif @@ -31,7 +31,7 @@ #include "ui/color/system_theme.h" #endif -@@ -1711,7 +1711,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1718,7 +1718,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) registry->RegisterBooleanPref(prefs::kOopPrintDriversAllowedByPolicy, true); #endif @@ -40,7 +40,7 @@ registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true); #endif -@@ -2053,12 +2053,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2060,12 +2060,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/ungoogled-chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc b/www/ungoogled-chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc index 05fd5e3d5e57..a96fa71c4fb1 100644 --- a/www/ungoogled-chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc +++ b/www/ungoogled-chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc @@ -1,6 +1,6 @@ ---- chrome/browser/ui/views/tabs/tab.cc.orig 2024-02-25 20:22:18 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2024-04-26 05:03:53 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -619,7 +619,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -622,7 +622,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& return; } diff --git a/www/ungoogled-chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc b/www/ungoogled-chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc index d21ebccf08a5..991d6c2912ef 100644 --- a/www/ungoogled-chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc +++ b/www/ungoogled-chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc @@ -1,9 +1,9 @@ ---- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2024-04-23 07:42:17 UTC +--- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2024-04-26 05:03:53 UTC +++ components/viz/service/display_embedder/skia_output_surface_impl.cc -@@ -1526,7 +1526,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor - ->GetDeviceQueue() - ->GetVulkanPhysicalDevice(), - VK_IMAGE_TILING_OPTIMAL, vk_format, yuv_color_space, ycbcr_info); +@@ -1527,7 +1527,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor + ->GetVulkanPhysicalDevice(), + VK_IMAGE_TILING_OPTIMAL, vk_format, + si_format, yuv_color_space, ycbcr_info); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Textures that were allocated _on linux_ with ycbcr info came from diff --git a/www/ungoogled-chromium/files/patch-media_base_media__switches.cc b/www/ungoogled-chromium/files/patch-media_base_media__switches.cc index 3ac5967ad08e..1a7c6ba7ffe0 100644 --- a/www/ungoogled-chromium/files/patch-media_base_media__switches.cc +++ b/www/ungoogled-chromium/files/patch-media_base_media__switches.cc @@ -1,4 +1,4 @@ ---- media/base/media_switches.cc.orig 2024-04-23 07:42:17 UTC +--- media/base/media_switches.cc.orig 2024-05-11 05:39:22 UTC +++ media/base/media_switches.cc @@ -21,7 +21,7 @@ #include "ui/gl/gl_features.h" @@ -92,7 +92,7 @@ base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -1500,7 +1500,7 @@ BASE_FEATURE(kUseGTFOOutOfProcessVideoDecoding, +@@ -1496,7 +1496,7 @@ BASE_FEATURE(kUseGTFOOutOfProcessVideoDecoding, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) diff --git a/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn b/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn index 00a74cb5750b..dd5a55548aa8 100644 --- a/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn +++ b/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2024-04-23 07:42:17 UTC +--- net/dns/BUILD.gn.orig 2024-04-30 23:47:00 UTC +++ net/dns/BUILD.gn @@ -136,7 +136,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -177,6 +177,7 @@ source_set("dns") { +@@ -170,6 +170,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -177,6 +180,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -444,9 +445,9 @@ source_set("tests") { +@@ -444,9 +448,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/www/ungoogled-chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 b/www/ungoogled-chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 index 716193560c84..72a13e77567d 100644 --- a/www/ungoogled-chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 +++ b/www/ungoogled-chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 @@ -1,6 +1,6 @@ ---- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2024-04-23 07:42:17 UTC +--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2024-05-11 05:39:22 UTC +++ third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -321,7 +321,7 @@ +@@ -313,7 +313,7 @@ name: "AppTitle", status: "experimental", origin_trial_feature_name: "AppTitle", @@ -9,7 +9,7 @@ base_feature: "WebAppEnableAppTitle", }, { -@@ -1978,7 +1978,7 @@ +@@ -1970,7 +1970,7 @@ base_feature_status: "enabled", copied_from_base_feature_if: "overridden", origin_trial_feature_name: "FullscreenPopupWindows", @@ -18,7 +18,7 @@ }, { name: "GamepadButtonAxisEvents", -@@ -2899,7 +2899,7 @@ +@@ -2891,7 +2891,7 @@ name: "PaymentHandlerMinimalHeaderUX", origin_trial_feature_name: "PaymentHandlerMinimalHeaderUX", origin_trial_allows_third_party: true, @@ -27,7 +27,7 @@ status: "stable", }, { -@@ -3091,7 +3091,7 @@ +@@ -3083,7 +3083,7 @@ { name: "PrivateNetworkAccessPermissionPrompt", origin_trial_feature_name: "PrivateNetworkAccessPermissionPrompt", @@ -36,7 +36,7 @@ status: "stable", public: true, base_feature: "none", -@@ -3959,7 +3959,7 @@ +@@ -3951,7 +3951,7 @@ name: "UnrestrictedSharedArrayBuffer", base_feature: "none", origin_trial_feature_name: "UnrestrictedSharedArrayBuffer", @@ -45,7 +45,7 @@ }, // Enables using policy-controlled feature "usb-unrestricted" to allow // isolated context to access protected USB interface classes and to -@@ -4119,7 +4119,7 @@ +@@ -4111,7 +4111,7 @@ { name: "WebAppScopeExtensions", origin_trial_feature_name: "WebAppScopeExtensions", diff --git a/www/ungoogled-chromium/files/patch-third__party_ffmpeg_configure b/www/ungoogled-chromium/files/patch-third__party_ffmpeg_configure new file mode 100644 index 000000000000..4ef45be429b6 --- /dev/null +++ b/www/ungoogled-chromium/files/patch-third__party_ffmpeg_configure @@ -0,0 +1,13 @@ +--- third_party/ffmpeg/configure.orig 2024-04-25 07:48:13 UTC ++++ third_party/ffmpeg/configure +@@ -6713,8 +6713,8 @@ if ! disabled pthreads && ! enabled w32threads && ! en + if enabled pthread_np_h; then + hdrs="$hdrs pthread_np.h" + fi +- check_lib pthread_set_name_np "$hdrs" pthread_set_name_np -lpthread +- check_lib pthread_setname_np "$hdrs" pthread_setname_np -lpthread ++ check_lib pthread_set_name_np pthread_np.h pthread_set_name_np -lpthread ++ check_lib pthread_setname_np pthread_np.h pthread_setname_np -lpthread + fi + fi + diff --git a/www/ungoogled-chromium/files/patch-ui_base_ui__base__features.cc b/www/ungoogled-chromium/files/patch-ui_base_ui__base__features.cc index acda9751c795..59184e5e4f85 100644 --- a/www/ungoogled-chromium/files/patch-ui_base_ui__base__features.cc +++ b/www/ungoogled-chromium/files/patch-ui_base_ui__base__features.cc @@ -1,6 +1,6 @@ ---- ui/base/ui_base_features.cc.orig 2024-04-23 07:42:17 UTC +--- ui/base/ui_base_features.cc.orig 2024-05-11 05:39:22 UTC +++ ui/base/ui_base_features.cc -@@ -227,7 +227,7 @@ BASE_FEATURE(kExperimentalFlingAnimation, +@@ -228,7 +228,7 @@ BASE_FEATURE(kExperimentalFlingAnimation, "ExperimentalFlingAnimation", // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. @@ -9,7 +9,7 @@ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_ASH) && \ !BUILDFLAG(IS_CHROMEOS_LACROS)) base::FEATURE_ENABLED_BY_DEFAULT -@@ -326,7 +326,7 @@ bool IsForcedColorsEnabled() { +@@ -327,7 +327,7 @@ bool IsForcedColorsEnabled() { BASE_FEATURE(kEyeDropper, "EyeDropper", #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ diff --git a/www/unit-java/distinfo b/www/unit-java/distinfo index bd47dd8968d0..422f047a9f7b 100644 --- a/www/unit-java/distinfo +++ b/www/unit-java/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1710284573 -SHA256 (unit-1.32.0.tar.gz) = 4b5e9be3f3990fceabf06292c2b7853667aceb71fd8de5dc67cb7fb05d247a20 -SIZE (unit-1.32.0.tar.gz) = 937300 +TIMESTAMP = 1714515235 +SHA256 (unit-1.32.1.tar.gz) = 0e440ef63a3adf9400db978a64fc84e1eb8887f61a04ccff284c3f682fb83ea2 +SIZE (unit-1.32.1.tar.gz) = 937669 SHA256 (classgraph-4.8.165.jar) = 5258d9218fc6413f4d14218a5a6e784528e349f60f48883b77de74bb478ebafd SIZE (classgraph-4.8.165.jar) = 562061 SHA256 (ecj-3.26.0.jar) = ac0ba5876eaf7ebb47749a0d1be179c51f194b9dd0b875d1c09e1b530f5a2db5 diff --git a/www/unit-ruby/Makefile b/www/unit-ruby/Makefile index cea2e9dd1252..d943980b3645 100644 --- a/www/unit-ruby/Makefile +++ b/www/unit-ruby/Makefile @@ -4,7 +4,7 @@ UNIT_MODNAME= ruby${RUBY_VER} COMMENT= Ruby module for NGINX Unit -RUN_DEPENDS= rackup:www/rubygem-rack22 \ +RUN_DEPENDS= rackup:www/rubygem-rackup \ unitd:www/unit PLIST_FILES= libexec/unit/modules/${UNIT_MODNAME}.unit.so diff --git a/www/unit-wasm/Makefile b/www/unit-wasm/Makefile index 3159ac7e96cc..2b87d3ff838a 100644 --- a/www/unit-wasm/Makefile +++ b/www/unit-wasm/Makefile @@ -1,5 +1,5 @@ PKGNAMESUFFIX= -${UNIT_MODNAME} -PORTREVISION= 10 +PORTREVISION= 1 UNIT_MODNAME= wasm diff --git a/www/unit/distinfo b/www/unit/distinfo index a3e6d898bac9..b126e53ad55c 100644 --- a/www/unit/distinfo +++ b/www/unit/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1710267192 -SHA256 (unit-1.32.0.tar.gz) = 4b5e9be3f3990fceabf06292c2b7853667aceb71fd8de5dc67cb7fb05d247a20 -SIZE (unit-1.32.0.tar.gz) = 937300 +TIMESTAMP = 1714508183 +SHA256 (unit-1.32.1.tar.gz) = 0e440ef63a3adf9400db978a64fc84e1eb8887f61a04ccff284c3f682fb83ea2 +SIZE (unit-1.32.1.tar.gz) = 937669 diff --git a/www/unit/version.mk b/www/unit/version.mk index 22f5db26d111..777fee093486 100644 --- a/www/unit/version.mk +++ b/www/unit/version.mk @@ -2,6 +2,6 @@ UNITVERSION_MK= defined # Define NGINX Unit's version. -UNIT_VERSION= 1.32.0 +UNIT_VERSION= 1.32.1 .endif # UNITVERSION_MK diff --git a/www/varnish-libvmod-dynamic/Makefile b/www/varnish-libvmod-dynamic/Makefile index e729272e4364..481d6e0fd77d 100644 --- a/www/varnish-libvmod-dynamic/Makefile +++ b/www/varnish-libvmod-dynamic/Makefile @@ -1,6 +1,6 @@ PORTNAME= libvmod-dynamic PORTVERSION= 20230321 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www PKGNAMEPREFIX= varnish- diff --git a/www/varnish-libvmod-fileserver/Makefile b/www/varnish-libvmod-fileserver/Makefile index 3c2bc6570257..da604a995a59 100644 --- a/www/varnish-libvmod-fileserver/Makefile +++ b/www/varnish-libvmod-fileserver/Makefile @@ -1,6 +1,6 @@ PORTNAME= libvmod-fileserver PORTVERSION= 0.0.5 -PORTREVISION= 15 +PORTREVISION= 16 CATEGORIES= www PKGNAMEPREFIX= varnish- diff --git a/www/varnish_exporter/Makefile b/www/varnish_exporter/Makefile index d10fcebb674c..f22252c3dbd9 100644 --- a/www/varnish_exporter/Makefile +++ b/www/varnish_exporter/Makefile @@ -1,6 +1,6 @@ PORTNAME= varnish_exporter PORTVERSION= 1.6 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= ports@zx23.net diff --git a/www/vieb/Makefile b/www/vieb/Makefile index a15866f97cca..4a6adce9aed8 100644 --- a/www/vieb/Makefile +++ b/www/vieb/Makefile @@ -13,6 +13,9 @@ WWW= https://vieb.dev LICENSE= GPLv3+ +DEPRECATED= Outdated and depends on expired (and blacklisted) devel/electron25 +EXPIRATION_DATE=2024-06-15 + USES= desktop-file-utils electronfix:25 NO_BUILD= yes diff --git a/www/vigil/Makefile b/www/vigil/Makefile index 4c5bf43b810d..e4cfd948d29b 100644 --- a/www/vigil/Makefile +++ b/www/vigil/Makefile @@ -1,7 +1,7 @@ PORTNAME= vigil DISTVERSIONPREFIX= v DISTVERSION= 1.26.3 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/vultr-cli/Makefile b/www/vultr-cli/Makefile index f123ccbb787f..fb044db1d637 100644 --- a/www/vultr-cli/Makefile +++ b/www/vultr-cli/Makefile @@ -1,7 +1,7 @@ PORTNAME= vultr-cli DISTVERSIONPREFIX= v DISTVERSION= 2.17.0 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= antranigv@freebsd.am diff --git a/www/wabt/Makefile b/www/wabt/Makefile index d4e04356a0b1..7a6053587fe9 100644 --- a/www/wabt/Makefile +++ b/www/wabt/Makefile @@ -1,5 +1,5 @@ PORTNAME= wabt -DISTVERSION= 1.0.34 +DISTVERSION= 1.0.35 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org @@ -21,7 +21,7 @@ GH_TUPLE= dabeaz:ply:d776a2e:dabeaz_ply/third_party/ply \ nodejs:uvwasi:55eff19:nodejs_uvwasi/third_party/uvwasi \ okdshin:PicoSHA2:27fcf69:picosha/third_party/picosha2 \ simd-everywhere:simde:54b8c8f:simde/third_party/simde \ - WebAssembly:testsuite:c2a67a5:WebAssembly_testsuite/third_party/testsuite \ + WebAssembly:testsuite:0a394e3:WebAssembly_testsuite/third_party/testsuite \ WebAssembly:wasm-c-api:b6dd1fb:WebAssembly_wasm_c_api/third_party/wasm-c-api CMAKE_ON= BUILD_SHARED_LIBS USE_SYSTEM_GTEST diff --git a/www/wabt/distinfo b/www/wabt/distinfo index 235469c8c1c8..11a8f4c528bb 100644 --- a/www/wabt/distinfo +++ b/www/wabt/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1703640020 -SHA256 (WebAssembly-wabt-1.0.34_GH0.tar.gz) = 0d7da8a066141d4a21102c42fd6b059bfee7c03220c3efa9001bd781bf1f4330 -SIZE (WebAssembly-wabt-1.0.34_GH0.tar.gz) = 1226317 +TIMESTAMP = 1715761878 +SHA256 (WebAssembly-wabt-1.0.35_GH0.tar.gz) = c55bb2083de3afafa011ac1ab4aa14bab9fe51c2a90d24ba38f66f6b3bde0b09 +SIZE (WebAssembly-wabt-1.0.35_GH0.tar.gz) = 1242161 SHA256 (dabeaz-ply-d776a2e_GH0.tar.gz) = 36520ea1c1ead2139282096f6727fe0baf62a67950374f64ea4623955c45daac SIZE (dabeaz-ply-d776a2e_GH0.tar.gz) = 149787 SHA256 (nodejs-uvwasi-55eff19_GH0.tar.gz) = 4c1d796dde734cd596f571a8d193f60d164a79ec474ae933eac738b818c2b0c0 @@ -9,7 +9,7 @@ SHA256 (okdshin-PicoSHA2-27fcf69_GH0.tar.gz) = 9d4ed9a2c67c86d67c4f2c8cfde7f7712 SIZE (okdshin-PicoSHA2-27fcf69_GH0.tar.gz) = 7620 SHA256 (simd-everywhere-simde-54b8c8f_GH0.tar.gz) = 58a8bef5fae26922b245830ff85bac0627fe115c99c041436a53f6a20bdc662f SIZE (simd-everywhere-simde-54b8c8f_GH0.tar.gz) = 6138190 -SHA256 (WebAssembly-testsuite-c2a67a5_GH0.tar.gz) = 58b3904efeea597f9b7ea8475142fecf1a00127d9e22e5f0f86bb6f4ebe1f10b -SIZE (WebAssembly-testsuite-c2a67a5_GH0.tar.gz) = 624991 +SHA256 (WebAssembly-testsuite-0a394e3_GH0.tar.gz) = aa1f3d57a35ab0346fdfebea37f4c896a525e9465eef32b71550bf4e9dfa7b3d +SIZE (WebAssembly-testsuite-0a394e3_GH0.tar.gz) = 629310 SHA256 (WebAssembly-wasm-c-api-b6dd1fb_GH0.tar.gz) = 19e41111cb2cb83bfa06ded6b1a16c81475248e0b293a98dd2c50e82d48d680c SIZE (WebAssembly-wasm-c-api-b6dd1fb_GH0.tar.gz) = 57094 diff --git a/www/wabt/files/patch-CMakeLists.txt b/www/wabt/files/patch-CMakeLists.txt index 9bc598736a93..cc3e0ada75b3 100644 --- a/www/wabt/files/patch-CMakeLists.txt +++ b/www/wabt/files/patch-CMakeLists.txt @@ -1,4 +1,4 @@ ---- CMakeLists.txt.orig 2023-10-25 02:14:59 UTC +--- CMakeLists.txt.orig 2024-05-14 22:23:51 UTC +++ CMakeLists.txt @@ -391,7 +391,7 @@ set(WABT_LIBRARY_SRC ${WABT_LIBRARY_CC} ${WABT_LIBRARY @@ -11,14 +11,14 @@ @@ -425,7 +425,7 @@ if (HAVE_SETJMP_H) if (HAVE_SETJMP_H) - set(WASM_RT_FILES "wasm2c/wasm-rt-impl.h" "wasm2c/wasm-rt-impl.c" "wasm2c/wasm-rt-exceptions-impl.c") + set(WASM_RT_FILES "wasm2c/wasm-rt-impl.h" "wasm2c/wasm-rt-impl.c" "wasm2c/wasm-rt-exceptions-impl.c" "wasm2c/wasm-rt-mem-impl.c") - add_library(wasm-rt-impl STATIC ${WASM_RT_FILES}) + add_library(wasm-rt-impl ${WASM_RT_FILES}) + target_link_libraries(wasm-rt-impl ${CMAKE_THREAD_LIBS_INIT}) add_library(wabt::wasm-rt-impl ALIAS wasm-rt-impl) if (WABT_BIG_ENDIAN) - target_compile_definitions(wasm-rt-impl PUBLIC WABT_BIG_ENDIAN=1) -@@ -453,7 +453,7 @@ if (BUILD_FUZZ_TOOLS) +@@ -454,7 +454,7 @@ if (BUILD_FUZZ_TOOLS) if (BUILD_FUZZ_TOOLS) set(FUZZ_FLAGS "-fsanitize=fuzzer,address") diff --git a/www/wabt/pkg-plist b/www/wabt/pkg-plist index 3c5129457d8e..498245a06a52 100644 --- a/www/wabt/pkg-plist +++ b/www/wabt/pkg-plist @@ -98,3 +98,4 @@ share/man/man1/wat2wasm.1.gz %%DATADIR%%/wasm2c/wasm-rt-exceptions-impl.c %%DATADIR%%/wasm2c/wasm-rt-impl.c %%DATADIR%%/wasm2c/wasm-rt-impl.h +%%DATADIR%%/wasm2c/wasm-rt-mem-impl.c diff --git a/www/wasm-pack/Makefile b/www/wasm-pack/Makefile index fc73d079c30e..2216379d1f5b 100644 --- a/www/wasm-pack/Makefile +++ b/www/wasm-pack/Makefile @@ -1,7 +1,7 @@ PORTNAME= wasm-pack DISTVERSIONPREFIX= v DISTVERSION= 0.12.1 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/web2ldap/Makefile b/www/web2ldap/Makefile index 4619fbf67264..b9dccab45ebf 100644 --- a/www/web2ldap/Makefile +++ b/www/web2ldap/Makefile @@ -1,5 +1,6 @@ PORTNAME= web2ldap PORTVERSION= 1.8.1 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI https://www.web2ldap.de/download/ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/webalizer/Makefile b/www/webalizer/Makefile index bc56f1271bbe..421a75b057b4 100644 --- a/www/webalizer/Makefile +++ b/www/webalizer/Makefile @@ -1,6 +1,6 @@ PORTNAME= webalizer PORTVERSION= 2.23.8 -PORTREVISION= 16 +PORTREVISION= 18 CATEGORIES+= www MASTER_SITES= ftp://ftp.dinoex.de/pub/FreeBSD/distfiles/:main \ http://flags.blogpotato.de/zip/:flags @@ -16,6 +16,7 @@ LICENSE= GPLv2 LIB_DEPENDS+= libpng.so:graphics/png +USES= iconv:build GNU_CONFIGURE= yes DOCSDIR?= ${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME} EXAMPLESDIR?= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME} @@ -38,7 +39,7 @@ OPTIONS_SINGLE_DB= BDB1 BDB NO_OPTIONS_SORT=yes OPTIONS_SUB=yes GEODB_DESC=Enable Webalizers IP-Database support -WEBALIZER_CONV_DESC=Japanese character code convert patch +WEBALIZER_CONV_DESC=Japanese character code convert to EUC-JP FULL_CGI_REFS_DESC=Show full cgi parameters in referers CLICKABLE_REFERER_DESC=Make referers clickable IP_AS_HOSTNAME_DESC=Show IP as hostname when IP does not resolve @@ -102,24 +103,46 @@ DOC1= CHANGES Copyright INSTALL \ EXAMPLES1= msfree.png sample.conf webalizer.png WRKSRC= ${WRKDIR}/${DISTNAME:S/-src$//} PLIST_SUB+= PKGNAMEPREFIX=${PKGNAMEPREFIX} -SUPP_LANG= albanian arabic catalan chinese croatian czech danish dutch \ - english estonian finnish french galician german greek \ - hungarian icelandic indonesian italian japanese korean \ - latvian lithuanian malay norwegian polish portuguese \ - portuguese_brazil romanian romanian-iso-8859-2 russian \ - serbian simplified_chinese slovak slovene spanish swedish \ - thai turkish ukrainian - +CHARSETS= ISO-8859-1 ISO-8859-2 ISO-8859-5 ISO-8859-7 ISO-8859-13 \ + ISO-8859-15 BIG5 EUC-CN EUC-JP EUC-KR TIS620 WINDOWS-1250 +CHARSET_ISO-8859-1= catalan danish finnish french galician galician \ + german icelandic norwegian portuguese \ + portuguese_brazil spanish swedish +CHARSET_ISO-8859-2= czech hungarian polish slovak +CHARSET_ISO-8859-7= greek +CHARSET_ISO-8859-5= russian ukrainian +CHARSET_ISO-8859-13= latvian lithuanian +CHARSET_ISO-8859-15= estonian +CHARSET_BIG5= chinese +CHARSET_EUC-CN= simplified_chinese +CHARSET_EUC-JP= japanese +CHARSET_EUC-KR= korean +CHARSET_TIS620= thai +CHARSET_WINDOWS-1250= slovene +SUPP_LANG= albanian arabic catalan catalan-utf8 chinese chinese-utf8 \ + croatian czech czech-utf8 danish danish-utf8 dutch english \ + estonian estonian-utf8 finnish finnish-utf8 \ + french french-utf8 galician galician-utf8 german german-utf8 \ + greek greek-utf8 hungarian hungarian-utf8 \ + icelandic icelandic-uf8 indonesian italian \ + japanese japanese-utf8 korean korean-utf8 \ + latvian latvian-utf8 lithuanian lithuanian-utf8 malay \ + norwegian norwegian-utf8 polish polish-utf8 \ + portuguese portuguese-utf8 \ + portuguese_brazil portuguese_brazil-utf8 \ + romanian romanian-iso-8859-2 russian russian-utf8 \ + serbian simplified_chinese simplified_chinese-utf8 \ + slovak slovak-utf8 slovene slovene-utf8 spanish spanish-utf8 \ + swedish swedish-utf8 thai thai-utf8 turkish \ + ukrainian ukrainian-utf8 .if defined(WEBALIZER_LANG) CONFIGURE_ARGS+= --with-language=${WEBALIZER_LANG} -# The patch file is written by URASHIMA Akira -# see http://tyche.pu-toyama.ac.jp/~a-urasim/webalizer/ -.if ${WEBALIZER_LANG} == japanese -EXTRA_PATCHES+= ${FILESDIR}/ja-webalizer.conf-dist.patch -.endif .endif .if ${PORT_OPTIONS:MWEBALIZER_CONV} +.if ${WEBALIZER_LANG} != japanese +BROKEN= no conversion from UTF-8 needed +.endif # The patch file is written by URASHIMA Akira # see http://tyche.pu-toyama.ac.jp/~a-urasim/webalizer/ EXTRA_PATCHES+= ${FILESDIR}/webalizer-a-urasim_2.patch @@ -147,6 +170,18 @@ pre-configure: -e "s|-lGeoIP|-lmaxminddb|" \ ${WRKSRC}/configure .endif +.for charset in ${CHARSETS} +.for i in ${CHARSET_${charset}} + ${ICONV_CMD} -f ${charset} -t UTF-8 ${WRKSRC}/lang/webalizer_lang.${i} \ + > ${WRKSRC}/lang/webalizer_lang.${i}-utf8 +.endfor +.endfor +.if defined(WEBALIZER_LANG) +.if ${WEBALIZER_LANG} == japanese + ${REINPLACE_CMD} -e 's|charset=UTF-8|charset=x-euc-jp|' \ + ${WRKSRC}/sample.conf +.endif +.endif .if !defined(WEBALIZER_LANG) @${ECHO_MSG} "You can customize the language by typing" diff --git a/www/webalizer/files/ja-webalizer.conf-dist.patch b/www/webalizer/files/ja-webalizer.conf-dist.patch deleted file mode 100644 index c9d241df90e0..000000000000 --- a/www/webalizer/files/ja-webalizer.conf-dist.patch +++ /dev/null @@ -1,69 +0,0 @@ ---- sample.conf.orig 2008-07-01 22:09:31.000000000 +0200 -+++ sample.conf 2008-07-05 13:39:47.000000000 +0200 -@@ -107,9 +107,12 @@ - - PageType htm* - PageType cgi -+#PageType shtml - #PageType phtml - #PageType php3 -+#PageType php - #PageType pl -+#PageType rb - - # PagePrefix allows all requests with a specified prefix to be - # considered as 'pages'. If you want everything under /documents -@@ -242,7 +245,8 @@ - # is 80 characters, so use multiple lines if needed. - - #HTMLHead <META NAME="author" CONTENT="The Webalizer"> --#HTMLHead <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> -+HTMLHead <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> -+HTMLHead <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-euc-jp"> - - # HTMLBody defined the HTML code to be inserted, starting with the - # <BODY> tag. If not specified, the default is shown below. If -@@ -545,6 +550,9 @@ - HideURL *.png - HideURL *.PNG - HideURL *.ra -+HideURL *.css -+HideURL *.CSS -+HideURL *.ico - - # Hiding agents is kind of futile - #HideAgent RealPlayer -@@ -564,6 +572,11 @@ - #GroupReferrer excite.com/ Excite - #GroupReferrer infoseek.com/ InfoSeek - #GroupReferrer webcrawler.com/ WebCrawler -+#GroupReferrer yahoo.co.jp/ Yahoo!Japan -+#GroupReferrer google.co.jp/ GoogleJapan -+#GroupReferrer infoseek.co.jp/ InfoSeekJapan -+#GroupReferrer goo.ne.jp/ Goo -+#GroupReferrer msn.co.jp/ MSNJapan - - #GroupUser root Admin users - #GroupUser admin Admin users -@@ -702,6 +715,21 @@ - #SearchEngine alltheweb.com q= - #SearchEngine northernlight.com qr= - -+SearchEngine yahoo.co.jp p= -+SearchEngine google.co.jp q= -+SearchEngine infoseek.co.jp qt= -+SearchEngine msn.co.jp q= -+# ocn -+SearchEngine goo.ne.jp MT= -+SearchEngine biglobe.ne.jp q= -+SearchEngine nifty.com Text= -+# so-net odn -+SearchEngine excite.co.jp search= -+SearchEngine livedoor.com q= -+SearchEngine jp.aol.com query= -+#SearchEngine .google. q= -+#SearchEngine bulkfeeds.net q= -+ - # Normally, search strings are converted to lower case in order to - # increase accuracy. The SearchCaseI option allows them to maintain - # case sensitivity, useful for some sites. The value can be 'yes' diff --git a/www/webalizer/files/patch-webalizer_lang.japanese b/www/webalizer/files/patch-webalizer_lang.japanese deleted file mode 100644 index 16749bb2ace7..000000000000 --- a/www/webalizer/files/patch-webalizer_lang.japanese +++ /dev/null @@ -1,159 +0,0 @@ ---- lang/webalizer_lang.japanese.orig 2008-07-01 22:24:12 UTC -+++ lang/webalizer_lang.japanese -@@ -186,16 +186,16 @@ char *h_msg[]= { - - /* header strings */ - /* char *msg_hhdr_sp = "Summary Period";*/ --char *msg_hhdr_sp = "統計期間"; --char *msg_hhdr_gt = "作成日時"; -+char *msg_hhdr_sp = "腟沿"; -+char *msg_hhdr_gt = "篏ユ"; - - /* main index strings */ - char *msg_main_us = "Usage summary for"; --/* char *msg_main_per= "過去12ヶ月"; */ --char *msg_main_per= "月の統計"; --char *msg_main_sum= "月の統計"; --char *msg_main_da = "一日あたりの平均"; --char *msg_main_mt = "月合計"; -+/* char *msg_main_per= "サ12倶"; */ -+char *msg_main_per= "腟沿"; -+char *msg_main_sum= "腟沿"; -+char *msg_main_da = "筝ャ綛喝"; -+char *msg_main_mt = "荐"; - - /* month HTML page strings */ - char *msg_hmth_du = "Daily usage for"; -@@ -203,77 +203,77 @@ char *msg_hmth_hu = "Hourly usage for"; - - /* table header strings */ - char *msg_h_by = "By"; --char *msg_h_avg = "平均"; --char *msg_h_max = "最大"; --char *msg_h_total = "合計"; --char *msg_h_totals= "総合計"; --char *msg_h_day = "日"; --char *msg_h_mth = "月"; --char *msg_h_hour = "時"; -+char *msg_h_avg = "綛喝"; -+char *msg_h_max = "紊"; -+char *msg_h_total = "荐"; -+char *msg_h_totals= "膩荐"; -+char *msg_h_day = ""; -+char *msg_h_mth = ""; -+char *msg_h_hour = ""; - char *msg_h_hits = "Hits"; - char *msg_h_pages = "Pages"; - char *msg_h_visits= "Visits"; - char *msg_h_files = "Files"; - char *msg_h_sites = "Sites"; - char *msg_h_xfer = "KBytes"; --char *msg_h_hname = "ホスト名"; -+char *msg_h_hname = "鴻"; - char *msg_h_url = "URL"; --char *msg_h_agent = "ユーザエージェント"; --char *msg_h_ref = "リファラー"; --char *msg_h_ctry = "国"; --char *msg_h_search= "検索文字列"; --char *msg_h_uname = "ユーザ名"; -+char *msg_h_agent = "若吟若吾с潟"; -+char *msg_h_ref = "<"; -+char *msg_h_ctry = ""; -+char *msg_h_search= "罎膣∽絖"; -+char *msg_h_uname = "若九"; - - /* links along top of page */ --char *msg_hlnk_ds = "日ごとの統計"; --char *msg_hlnk_hs = "時間ごとの統計"; -+char *msg_hlnk_ds = "ャ腟沿"; -+char *msg_hlnk_hs = "腟沿"; - char *msg_hlnk_u = "URL"; --char *msg_hlnk_s = "サイト"; --char *msg_hlnk_a = "エージェント"; --char *msg_hlnk_c = "国"; --char *msg_hlnk_r = "リファラー"; --char *msg_hlnk_en = "エントリー"; -+char *msg_hlnk_s = "泣ゃ"; -+char *msg_hlnk_a = "若吾с潟"; -+char *msg_hlnk_c = ""; -+char *msg_hlnk_r = "<"; -+char *msg_hlnk_en = "潟"; - char *msg_hlnk_ex = "Exit"; --char *msg_hlnk_sr = "検索文字列"; --char *msg_hlnk_i = "ユーザ数"; -+char *msg_hlnk_sr = "罎膣∽絖"; -+char *msg_hlnk_i = "若倶"; - - /* monthly total table */ --char *msg_mtot_ms = "月の統計"; --char *msg_mtot_th = "全ヒット数"; --char *msg_mtot_tf = "全ファイル数"; --char *msg_mtot_tx = "全 KBytes数"; --char *msg_mtot_us = "個別サイト数"; --char *msg_mtot_ur = "個別リファラー数"; --char *msg_mtot_ua = "個別ユーザエージェント数"; --char *msg_mtot_uu = "個別URL数"; --char *msg_mtot_ui = "個別ユーザ数"; --char *msg_mtot_mhd= "一日あたりのヒット数"; --char *msg_mtot_mhh= "一時間あたりのヒット数"; --char *msg_mtot_mfd= "一日あたりのファイル数"; --char *msg_mtot_mpd= "一日あたりのページ数"; -+char *msg_mtot_ms = "腟沿"; -+char *msg_mtot_th = ""; -+char *msg_mtot_tf = "<ゃ"; -+char *msg_mtot_tx = " KBytes"; -+char *msg_mtot_us = "ャ泣ゃ"; -+char *msg_mtot_ur = "ャ<惹"; -+char *msg_mtot_ua = "ャ若吟若吾с潟"; -+char *msg_mtot_uu = "URL"; -+char *msg_mtot_ui = "ャ若倶"; -+char *msg_mtot_mhd= "筝ャ"; -+char *msg_mtot_mhh= "筝"; -+char *msg_mtot_mfd= "筝ャ<ゃ"; -+char *msg_mtot_mpd= "筝ャ若御"; - char *msg_mtot_msd= "Sites per Day"; --char *msg_mtot_mvd= "一日あたりの訪問者数"; --char *msg_mtot_mkd= "一日あたりのKBytes数"; --char *msg_mtot_rc = "レスポンスコードごとのヒット数"; -+char *msg_mtot_mvd= "筝ャ荐"; -+char *msg_mtot_mkd= "筝ャKBytes"; -+char *msg_mtot_rc = "鴻潟鴻潟若"; - - /* daily total table */ --char *msg_dtot_ds = "日ごとの統計"; -+char *msg_dtot_ds = "ャ腟沿"; - - /* hourly total table */ --char *msg_htot_hs = "時間ごとの統計"; -+char *msg_htot_hs = "腟沿"; - - /* country pie chart */ - char *msg_ctry_use= "Usage by Country for"; - - /* top tables */ - /* Formatted as "Top xxx of xxx Total something" */ --char *msg_top_top = "トップ"; -+char *msg_top_top = ""; - char *msg_top_of = "of"; --char *msg_top_s = "サイト"; --char *msg_top_u = "全URL"; --char *msg_top_r = "リファラー"; --char *msg_top_a = "ユーザエージェント"; --char *msg_top_c = "国"; -+char *msg_top_s = "泣ゃ"; -+char *msg_top_u = "URL"; -+char *msg_top_r = "<"; -+char *msg_top_a = "若吟若吾с潟"; -+char *msg_top_c = ""; - char *msg_top_en = "Total Entry Pages"; - char *msg_top_ex = "Total Exit Pages"; - char *msg_top_sr = "Total Search Strings"; -@@ -340,7 +340,7 @@ struct response_code response[] = - { "Code 504 - Gateway Timeout", 0 }, - { "Code 505 - HTTP Version Not Supported", 0 } }; - --char *msg_title = "利用統計"; -+char *msg_title = "腟沿"; - char *msg_h_other = "Other"; - - /* Country codes (previously in ctry.h header file) */ diff --git a/www/webhook/Makefile b/www/webhook/Makefile index 90e361a3b0ad..ec7d250d9de3 100644 --- a/www/webhook/Makefile +++ b/www/webhook/Makefile @@ -1,6 +1,6 @@ PORTNAME= webhook PORTVERSION= 2.8.0 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MAINTAINER= stb@lassitu.de diff --git a/www/websh/Makefile b/www/websh/Makefile index 6f6cf0127ad3..bcc7a3e10451 100644 --- a/www/websh/Makefile +++ b/www/websh/Makefile @@ -1,11 +1,11 @@ PORTNAME= websh PORTVERSION= 3.6.0b5 -PORTREVISION= 8 +PORTREVISION= 9 CATEGORIES= www tcl MASTER_SITES= https://archive.apache.org/dist/tcl/${PORTNAME}/source/ EXTRACT_SUFX= -src.tar.gz -MAINTAINER= mi@aldan.algebra.com +MAINTAINER= ports@virtual-estates.net COMMENT= Embeds a TCL8 interpreter in the Apache server WWW= https://tcl.apache.org/websh/ diff --git a/www/websocat/Makefile b/www/websocat/Makefile index 9cb27cb6d79c..e092a3700bf1 100644 --- a/www/websocat/Makefile +++ b/www/websocat/Makefile @@ -1,6 +1,7 @@ PORTNAME= websocat DISTVERSIONPREFIX= v DISTVERSION= 1.13.0 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= osa@FreeBSD.org diff --git a/www/websocketd/Makefile b/www/websocketd/Makefile index 615de7222ed0..db7f58fa0065 100644 --- a/www/websocketd/Makefile +++ b/www/websocketd/Makefile @@ -1,7 +1,7 @@ PORTNAME= websocketd DISTVERSIONPREFIX= v DISTVERSION= 0.4.1 -PORTREVISION= 18 +PORTREVISION= 19 CATEGORIES= www MAINTAINER= ygy@FreeBSD.org diff --git a/www/wiki-tui/Makefile b/www/wiki-tui/Makefile index f019bc54d672..06fb70c6aa6d 100644 --- a/www/wiki-tui/Makefile +++ b/www/wiki-tui/Makefile @@ -1,7 +1,7 @@ PORTNAME= wiki-tui DISTVERSIONPREFIX= v DISTVERSION= 0.8.2 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= eduardo@FreeBSD.org diff --git a/www/writeas-cli/Makefile b/www/writeas-cli/Makefile index 83efee057ccb..ebb9a31d3f37 100644 --- a/www/writeas-cli/Makefile +++ b/www/writeas-cli/Makefile @@ -1,7 +1,7 @@ PORTNAME= writeas-cli DISTVERSIONPREFIX= v DISTVERSION= 2.0.0-wf -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www textproc MASTER_SITES= https://code.as/core/socks/archive/v1.0.0.tar.gz?dummy=/:core_socks DISTFILES= core-socks-v1.0.0.tar.gz:core_socks diff --git a/www/wuzz/Makefile b/www/wuzz/Makefile index 526bcbdc5327..e1e0a150dada 100644 --- a/www/wuzz/Makefile +++ b/www/wuzz/Makefile @@ -1,7 +1,7 @@ PORTNAME= wuzz DISTVERSIONPREFIX= v DISTVERSION= 0.5.0 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/xcaddy/Makefile b/www/xcaddy/Makefile index d1a38b884104..560c651a5a20 100644 --- a/www/xcaddy/Makefile +++ b/www/xcaddy/Makefile @@ -1,6 +1,7 @@ PORTNAME= xcaddy DISTVERSIONPREFIX= v DISTVERSION= 0.4.0 +PORTREVISION= 1 CATEGORIES= www DIST_SUBDIR= xcaddy diff --git a/www/xh/Makefile b/www/xh/Makefile index 5934cc63c206..2b5043530776 100644 --- a/www/xh/Makefile +++ b/www/xh/Makefile @@ -1,7 +1,7 @@ PORTNAME= xh DISTVERSIONPREFIX= v DISTVERSION= 0.18.0 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= www MAINTAINER= lcook@FreeBSD.org diff --git a/www/xurls/Makefile b/www/xurls/Makefile index 9afa8b51b7c2..e3bdac085ca3 100644 --- a/www/xurls/Makefile +++ b/www/xurls/Makefile @@ -1,7 +1,7 @@ PORTNAME= xurls DISTVERSIONPREFIX= v DISTVERSION= 2.5.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www MAINTAINER= nivit@FreeBSD.org diff --git a/www/yarn-node22/Makefile b/www/yarn-node22/Makefile new file mode 100644 index 000000000000..53fde2b308e0 --- /dev/null +++ b/www/yarn-node22/Makefile @@ -0,0 +1,5 @@ +USES= nodejs:22,run + +MASTERDIR= ${.CURDIR}/../yarn-node20 + +.include "${MASTERDIR}/Makefile" diff --git a/www/yarr/Makefile b/www/yarr/Makefile index 43548e5429f1..1859903c2c75 100644 --- a/www/yarr/Makefile +++ b/www/yarr/Makefile @@ -1,7 +1,7 @@ PORTNAME= yarr DISTVERSIONPREFIX=v DISTVERSION= 2.4 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= www MAINTAINER= decke@FreeBSD.org diff --git a/www/you-get/Makefile b/www/you-get/Makefile index e4aa1f57f372..ae99db41eee2 100644 --- a/www/you-get/Makefile +++ b/www/you-get/Makefile @@ -21,10 +21,9 @@ USE_PYTHON= autoplist pep517 noflavors NO_ARCH= yes -OPTIONS_DEFINE= RTMPDUMP SOCKS +OPTIONS_DEFINE= SOCKS SOCKS_DESC= SOCKS support -RTMPDUMP_RUN_DEPENDS= rtmpdump:multimedia/rtmpdump SOCKS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pysocks>=0:net/py-pysocks@${PY_FLAVOR} .include <bsd.port.mk> diff --git a/www/ytdl/Makefile b/www/ytdl/Makefile index 1b3264f007db..163ec3f3d899 100644 --- a/www/ytdl/Makefile +++ b/www/ytdl/Makefile @@ -1,7 +1,7 @@ PORTNAME= ytdl DISTVERSIONPREFIX= v DISTVERSION= 0.6.4 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/zgrab2/Makefile b/www/zgrab2/Makefile index 203bc613f811..51e87d91aba5 100644 --- a/www/zgrab2/Makefile +++ b/www/zgrab2/Makefile @@ -1,7 +1,7 @@ PORTNAME= zgrab2 DISTVERSIONPREFIX= v DISTVERSION= 0.1.7 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www MAINTAINER= yuri@FreeBSD.org diff --git a/www/zola/Makefile b/www/zola/Makefile index 6f568fca199d..84df4d5c709d 100644 --- a/www/zola/Makefile +++ b/www/zola/Makefile @@ -1,7 +1,7 @@ PORTNAME= zola DISTVERSIONPREFIX= v DISTVERSION= 0.18.0 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www MAINTAINER= mikael@FreeBSD.org |