diff --git a/.gitpod.yml b/.gitpod.yml index 2c36fafd54..d3cb0432bc 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,12 +1,3 @@ -github: - prebuilds: - master: true - branches: false - pullRequests: true - pullRequestsFromForks: false - addCheck: false - addComment: false - addBadge: false ports: - port: 3306 onOpen: ignore @@ -14,27 +5,26 @@ ports: - port: 33060 onOpen: ignore visibility: private - - port: 8001 + - port: 8001-8999 onOpen: ignore visibility: public image: pookmish/drupal8ci:gitpod tasks: - - before: > - eval $(command gp env -e) && - mkdir -p ~/.ssh && - [[ ! -z $SSH_PUBLIC_KEY ]] && - echo $SSH_PUBLIC_KEY | base64 -d > ~/.ssh/id_rsa.pub && - chmod 644 ~/.ssh/id_rsa.pub && - [[ ! -z $SSH_PRIVATE_KEY ]] && - echo $SSH_PRIVATE_KEY | base64 -d > ~/.ssh/id_rsa && - chmod 600 ~/.ssh/id_rsa && - [[ ! -z $GITCONFIG ]] && - echo $GITCONFIG | base64 -d > ~/.gitconfig && - chmod 644 ~/.gitconfig + - name: SSH Keys + before: | + mkdir -p ~/.ssh + if [[ ! -z $SSH_PRIVATE_KEY ]]; then + echo $SSH_PRIVATE_KEY | base64 -d > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa && + git remote set-url origin git@github.com:SU-HSDO/suhumsci.git + fi + if [[ ! -z $GITCONFIG ]]; then + echo $GITCONFIG | base64 -d > ~/.gitconfig && chmod 644 ~/.gitconfig + fi init: > export PREVIEW_FULL_URL=`gp url 8001` && export PREVIEW_URL=${PREVIEW_FULL_URL#"https://"} && cp .gitpod/blt.yml blt/local.blt.yml && + cp .gitpod/sites.php docroot/sites/local.sites.php && composer install --no-interaction && rm -rf docroot/*/custom/* && composer install --prefer-source --no-interaction && @@ -43,15 +33,15 @@ tasks: blt settings && mysql -u root -e 'CREATE DATABASE IF NOT EXISTS drupal_default; CREATE DATABASE IF NOT EXISTS drupal' && blt sws:keys && - blt source:build:simplesamlphp-config && mysql -e 'SET GLOBAL max_allowed_packet=67108864;' && - blt drupal:sync --site=hs_colorful -n && - drush sql-sync @hs_colorful.local @self -y - + if [[ ! -z $SSH_PRIVATE_KEY ]]; then + blt drupal:sync --site=hs_colorful -n && + drush sql-sync @hs_colorful.local @self -y + else + blt drupal:install --no-interaction + fi command: > git config core.fileMode false && - blt blt:telemetry:disable --no-interaction && - git remote set-url origin git@github.com:SU-HSDO/suhumsci.git && apache2ctl restart && gp ports await 8001 && drush uli && diff --git a/.gitpod/gitpod.settings.php b/.gitpod/gitpod.settings.php index f3848ff722..08fb216d2a 100644 --- a/.gitpod/gitpod.settings.php +++ b/.gitpod/gitpod.settings.php @@ -1,3 +1,13 @@ DRUPAL_ROOT . '/../keys/saml/workgroup_api.cert', + 'key' => DRUPAL_ROOT . '/../keys/saml/workgroup_api.key', +]; \ No newline at end of file diff --git a/.gitpod/sites.php b/.gitpod/sites.php new file mode 100644 index 0000000000..361804e300 --- /dev/null +++ b/.gitpod/sites.php @@ -0,0 +1,19 @@ +=9.1", @@ -8948,8 +8950,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.6", - "datestamp": "1702995930", + "version": "8.x-3.7", + "datestamp": "1735314551", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -9236,6 +9238,35 @@ "issues": "https://www.drupal.org/project/issues/node_revision_delete" } }, + { + "name": "drupal/nouislider_js", + "version": "15.8.1", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/nouislider_js.git", + "reference": "b5610d5842784581e4c766cd1c3852ca0b355ed5" + }, + "dist": { + "type": "zip", + "url": "https://git.drupalcode.org/api/v4/projects/project%2Fnouislider_js/repository/archive.zip?sha=b5610d5842784581e4c766cd1c3852ca0b355ed5", + "reference": "b5610d5842784581e4c766cd1c3852ca0b355ed5", + "shasum": "" + }, + "type": "drupal-library", + "extra": { + "installer-name": "nouislider" + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT License" + ], + "description": "Mirror of the noUiSlider javascript library tagged as a Drupal library.", + "homepage": "https://github.com/leongersen/noUiSlider", + "support": { + "source": "https://git.drupalcode.org/project/nouislider_js/-/tree/15.8.0" + }, + "time": "2025-01-03T10:53:20+00:00" + }, { "name": "drupal/oembed_providers", "version": "2.2.1", @@ -9551,20 +9582,20 @@ }, { "name": "drupal/paragraphs_features", - "version": "2.0.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/paragraphs_features.git", - "reference": "2.0.0" + "reference": "2.1.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/paragraphs_features-2.0.0.zip", - "reference": "2.0.0", - "shasum": "3f4856f2c6ade242855f5311ff26e8951b8a53a7" + "url": "https://ftp.drupal.org/files/projects/paragraphs_features-2.1.0.zip", + "reference": "2.1.0", + "shasum": "1e82c20d5fdcbff8615af7d6797f272e85610496" }, "require": { - "drupal/core": "^9.2 || ^10", + "drupal/core": "^9.2 || ^10 || ^11", "drupal/paragraphs": "^1.13" }, "require-dev": { @@ -9573,8 +9604,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "2.0.0", - "datestamp": "1713956979", + "version": "2.1.0", + "datestamp": "1736258966", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -9730,11 +9761,11 @@ ], "authors": [ { - "name": "Berdir", + "name": "berdir", "homepage": "https://www.drupal.org/user/214652" }, { - "name": "Dave Reid", + "name": "dave reid", "homepage": "https://www.drupal.org/user/53892" }, { @@ -10061,7 +10092,7 @@ "homepage": "https://www.drupal.org/user/289861" }, { - "name": "Dylan Donkersgoed", + "name": "dylan donkersgoed", "homepage": "https://www.drupal.org/user/2803351" }, { @@ -10270,7 +10301,7 @@ ], "authors": [ { - "name": "Berdir", + "name": "berdir", "homepage": "https://www.drupal.org/user/214652" }, { @@ -10278,7 +10309,7 @@ "homepage": "https://www.drupal.org/user/53892" }, { - "name": "Kristen Pol", + "name": "kristen pol", "homepage": "https://www.drupal.org/user/8389" }, { @@ -10775,17 +10806,17 @@ }, { "name": "drupal/single_content_sync", - "version": "1.4.7", + "version": "1.4.8", "source": { "type": "git", "url": "https://git.drupalcode.org/project/single_content_sync.git", - "reference": "1.4.7" + "reference": "1.4.8" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/single_content_sync-1.4.7.zip", - "reference": "1.4.7", - "shasum": "3a7748672c72ad749d1542482beceb618f36b7c1" + "url": "https://ftp.drupal.org/files/projects/single_content_sync-1.4.8.zip", + "reference": "1.4.8", + "shasum": "d2cac096e745432fc893428f499ef356d14d8b8d" }, "require": { "drupal/core": "^9.3 || ^10 || ^11", @@ -10814,8 +10845,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "1.4.7", - "datestamp": "1733318195", + "version": "1.4.8", + "datestamp": "1734610972", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -11096,27 +11127,27 @@ }, { "name": "drupal/sophron", - "version": "2.1.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/sophron.git", - "reference": "2.1.0" + "reference": "2.2.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/sophron-2.1.0.zip", - "reference": "2.1.0", - "shasum": "0742562897ae9b202e472a1edef75844b6452e39" + "url": "https://ftp.drupal.org/files/projects/sophron-2.2.0.zip", + "reference": "2.2.0", + "shasum": "fa4670e775443db3f465cc25b02c7c82e5c382bf" }, "require": { "drupal/core": "^10.2 || ^11", - "fileeye/mimemap": "^2.1.1" + "fileeye/mimemap": "^2.2.1" }, "type": "drupal-module", "extra": { "drupal": { - "version": "2.1.0", - "datestamp": "1718011690", + "version": "2.2.0", + "datestamp": "1734432598", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -12231,26 +12262,26 @@ }, { "name": "drupal/views_field_view", - "version": "1.0.0-beta5", + "version": "1.0.0-beta6", "source": { "type": "git", "url": "https://git.drupalcode.org/project/views_field_view.git", - "reference": "8.x-1.0-beta5" + "reference": "8.x-1.0-beta6" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/views_field_view-8.x-1.0-beta5.zip", - "reference": "8.x-1.0-beta5", - "shasum": "fe6f0d62661cc764229c01ab01916a13ba3e8c22" + "url": "https://ftp.drupal.org/files/projects/views_field_view-8.x-1.0-beta6.zip", + "reference": "8.x-1.0-beta6", + "shasum": "a43a286dc185c2f6cebb2833c8d16ed28a1a1df6" }, "require": { - "drupal/core": "^9 || ^10" + "drupal/core": "^9 || ^10 || ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.0-beta5", - "datestamp": "1675318984", + "version": "8.x-1.0-beta6", + "datestamp": "1736794891", "security-coverage": { "status": "not-covered", "message": "Beta releases are not covered by Drupal security advisories." @@ -12466,17 +12497,17 @@ }, { "name": "drupal/webform", - "version": "6.2.8", + "version": "6.2.9", "source": { "type": "git", "url": "https://git.drupalcode.org/project/webform.git", - "reference": "6.2.8" + "reference": "6.2.9" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/webform-6.2.8.zip", - "reference": "6.2.8", - "shasum": "5552f9a76b5a4e33beb3ea75664beb5d47c334cc" + "url": "https://ftp.drupal.org/files/projects/webform-6.2.9.zip", + "reference": "6.2.9", + "shasum": "650752c3cc6d0144c6f378b8d25d45c083e23600" }, "require": { "drupal/core": "^10.2", @@ -12526,8 +12557,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "6.2.8", - "datestamp": "1732627900", + "version": "6.2.9", + "datestamp": "1733851063", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -12739,23 +12770,23 @@ "sut/libraries/{$name}": [ "type:drupal-library" ], + "sut/themes/unish/{$name}": [ + "drupal/empty_theme" + ], + "sut/drush/contrib/{$name}": [ + "type:drupal-drush" + ], "sut/modules/unish/{$name}": [ "drupal/devel" ], - "sut/themes/unish/{$name}": [ - "drupal/empty_theme" + "sut/themes/contrib/{$name}": [ + "type:drupal-theme" ], "sut/modules/contrib/{$name}": [ "type:drupal-module" ], "sut/profiles/contrib/{$name}": [ "type:drupal-profile" - ], - "sut/themes/contrib/{$name}": [ - "type:drupal-theme" - ], - "sut/drush/contrib/{$name}": [ - "type:drupal-drush" ] } }, @@ -12867,16 +12898,16 @@ }, { "name": "egulias/email-validator", - "version": "4.0.2", + "version": "4.0.3", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e" + "reference": "b115554301161fa21467629f1e1391c1936de517" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/b115554301161fa21467629f1e1391c1936de517", + "reference": "b115554301161fa21467629f1e1391c1936de517", "shasum": "" }, "require": { @@ -12922,7 +12953,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/4.0.2" + "source": "https://github.com/egulias/EmailValidator/tree/4.0.3" }, "funding": [ { @@ -12930,7 +12961,7 @@ "type": "github" } ], - "time": "2023-10-06T06:47:41+00:00" + "time": "2024-12-27T00:36:43+00:00" }, { "name": "eluceo/ical", @@ -13156,16 +13187,16 @@ }, { "name": "fileeye/mimemap", - "version": "2.2.0", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/FileEye/MimeMap.git", - "reference": "c8c686cc6f77316b23128a83334877debf645dfb" + "reference": "f37ea54dab6f286dd37d937c069b80b601003df0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FileEye/MimeMap/zipball/c8c686cc6f77316b23128a83334877debf645dfb", - "reference": "c8c686cc6f77316b23128a83334877debf645dfb", + "url": "https://api.github.com/repos/FileEye/MimeMap/zipball/f37ea54dab6f286dd37d937c069b80b601003df0", + "reference": "f37ea54dab6f286dd37d937c069b80b601003df0", "shasum": "" }, "require": { @@ -13208,9 +13239,9 @@ ], "support": { "issues": "https://github.com/FileEye/MimeMap/issues", - "source": "https://github.com/FileEye/MimeMap/tree/2.2.0" + "source": "https://github.com/FileEye/MimeMap/tree/2.2.1" }, - "time": "2024-10-20T18:59:36+00:00" + "time": "2024-12-16T19:03:35+00:00" }, { "name": "fileeye/pel", @@ -14054,11 +14085,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev", - "dev-4.x": "4.x-dev", - "dev-3.x": "3.x-dev", + "dev-1.x": "1.x-dev", "dev-2.x": "2.x-dev", - "dev-1.x": "1.x-dev" + "dev-3.x": "3.x-dev", + "dev-4.x": "4.x-dev", + "dev-master": "4.x-dev" } }, "autoload": { @@ -14102,16 +14133,16 @@ }, { "name": "league/csv", - "version": "9.18.0", + "version": "9.21.0", "source": { "type": "git", "url": "https://github.com/thephpleague/csv.git", - "reference": "b02d010e4055ae992247f6ffd1e7b103ef2a0790" + "reference": "72196d11ebba22d868954cb39c0c7346207430cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/csv/zipball/b02d010e4055ae992247f6ffd1e7b103ef2a0790", - "reference": "b02d010e4055ae992247f6ffd1e7b103ef2a0790", + "url": "https://api.github.com/repos/thephpleague/csv/zipball/72196d11ebba22d868954cb39c0c7346207430cc", + "reference": "72196d11ebba22d868954cb39c0c7346207430cc", "shasum": "" }, "require": { @@ -14123,12 +14154,12 @@ "ext-xdebug": "*", "friendsofphp/php-cs-fixer": "^3.64.0", "phpbench/phpbench": "^1.3.1", - "phpstan/phpstan": "^1.12.6", + "phpstan/phpstan": "^1.12.11", "phpstan/phpstan-deprecation-rules": "^1.2.1", - "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-phpunit": "^1.4.1", "phpstan/phpstan-strict-rules": "^1.6.1", - "phpunit/phpunit": "^10.5.16 || ^11.4.1", - "symfony/var-dumper": "^6.4.8 || ^7.1.5" + "phpunit/phpunit": "^10.5.16 || ^11.4.3", + "symfony/var-dumper": "^6.4.8 || ^7.1.8" }, "suggest": { "ext-dom": "Required to use the XMLConverter and the HTMLConverter classes", @@ -14185,7 +14216,7 @@ "type": "github" } ], - "time": "2024-10-18T08:14:48+00:00" + "time": "2025-01-08T19:27:58+00:00" }, { "name": "leongersen/nouislider", @@ -14513,16 +14544,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -14565,9 +14596,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "onelogin/php-saml", @@ -15502,16 +15533,16 @@ }, { "name": "psy/psysh", - "version": "v0.12.5", + "version": "v0.12.7", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "36a03ff27986682c22985e56aabaf840dd173cb5" + "reference": "d73fa3c74918ef4522bb8a3bf9cab39161c4b57c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/36a03ff27986682c22985e56aabaf840dd173cb5", - "reference": "36a03ff27986682c22985e56aabaf840dd173cb5", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/d73fa3c74918ef4522bb8a3bf9cab39161c4b57c", + "reference": "d73fa3c74918ef4522bb8a3bf9cab39161c4b57c", "shasum": "" }, "require": { @@ -15575,9 +15606,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.12.5" + "source": "https://github.com/bobthecow/psysh/tree/v0.12.7" }, - "time": "2024-11-29T06:14:30+00:00" + "time": "2024-12-10T01:58:33+00:00" }, { "name": "ralouphie/getallheaders", @@ -15786,16 +15817,16 @@ }, { "name": "simshaun/recurr", - "version": "v5.0.2", + "version": "v5.0.3", "source": { "type": "git", "url": "https://github.com/simshaun/recurr.git", - "reference": "1aff62e6e0ee875b3f2487352542605123ee9172" + "reference": "7b136768d64f257065e38a804ee6d2f9af6ba6d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/simshaun/recurr/zipball/1aff62e6e0ee875b3f2487352542605123ee9172", - "reference": "1aff62e6e0ee875b3f2487352542605123ee9172", + "url": "https://api.github.com/repos/simshaun/recurr/zipball/7b136768d64f257065e38a804ee6d2f9af6ba6d1", + "reference": "7b136768d64f257065e38a804ee6d2f9af6ba6d1", "shasum": "" }, "require": { @@ -15839,32 +15870,32 @@ ], "support": { "issues": "https://github.com/simshaun/recurr/issues", - "source": "https://github.com/simshaun/recurr/tree/v5.0.2" + "source": "https://github.com/simshaun/recurr/tree/v5.0.3" }, - "time": "2023-09-26T20:31:33+00:00" + "time": "2024-12-12T15:39:24+00:00" }, { "name": "spatie/calendar-links", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/spatie/calendar-links.git", - "reference": "da41e7edae84859d3d598b0b3ce3233c843c3e46" + "reference": "bf4645d6a2d8eb32248a5b0b7da7976a13e5e2b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/calendar-links/zipball/da41e7edae84859d3d598b0b3ce3233c843c3e46", - "reference": "da41e7edae84859d3d598b0b3ce3233c843c3e46", + "url": "https://api.github.com/repos/spatie/calendar-links/zipball/bf4645d6a2d8eb32248a5b0b7da7976a13e5e2b5", + "reference": "bf4645d6a2d8eb32248a5b0b7da7976a13e5e2b5", "shasum": "" }, "require": { "php": "^8.1" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^3.48", - "phpunit/phpunit": "^10.1", + "friendsofphp/php-cs-fixer": "^3.49", + "phpunit/phpunit": "^10.5", "spatie/phpunit-snapshot-assertions": "^5.1", - "vimeo/psalm": "^5.20" + "vimeo/psalm": "^5.22" }, "type": "library", "autoload": { @@ -15892,7 +15923,7 @@ ], "support": { "issues": "https://github.com/spatie/calendar-links/issues", - "source": "https://github.com/spatie/calendar-links/tree/1.11.0" + "source": "https://github.com/spatie/calendar-links/tree/1.11.1" }, "funding": [ { @@ -15900,7 +15931,7 @@ "type": "custom" } ], - "time": "2024-02-19T05:59:13+00:00" + "time": "2025-01-16T16:49:47+00:00" }, { "name": "su-sws/ckeditor5_plugins", @@ -16058,22 +16089,22 @@ }, { "name": "su-sws/stanford_migrate", - "version": "8.6.7", + "version": "8.6.9", "source": { "type": "git", "url": "https://github.com/SU-SWS/stanford_migrate.git", - "reference": "ec11414c062effd9bba2e284b63b22d2c5010bba" + "reference": "ce92118168ad0ca6caca54a4b7b2389ce8cdf121" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/SU-SWS/stanford_migrate/zipball/ec11414c062effd9bba2e284b63b22d2c5010bba", - "reference": "ec11414c062effd9bba2e284b63b22d2c5010bba", + "url": "https://api.github.com/repos/SU-SWS/stanford_migrate/zipball/ce92118168ad0ca6caca54a4b7b2389ce8cdf121", + "reference": "ce92118168ad0ca6caca54a4b7b2389ce8cdf121", "shasum": "" }, "require": { "drupal/core": "^10.3 || ^11", "drupal/empty_fields": "^1.0@beta", - "drupal/migrate_file": "^2.0", + "drupal/migrate_file": "^2.0 || ^3.0", "drupal/migrate_plus": "^6.0", "drupal/migrate_source_csv": "^3.4", "drupal/migrate_tools": "^6.0", @@ -16109,9 +16140,9 @@ "homepage": "https://github.com/SU-SWS/stanford_migrate", "support": { "issues": "https://github.com/SU-SWS/stanford_migrate/issues", - "source": "https://github.com/SU-SWS/stanford_migrate/tree/8.6.7" + "source": "https://github.com/SU-SWS/stanford_migrate/tree/8.6.9" }, - "time": "2024-10-04T21:24:28+00:00" + "time": "2025-01-09T22:32:15+00:00" }, { "name": "su-sws/stanford_samlauth", @@ -16222,16 +16253,16 @@ }, { "name": "symfony/console", - "version": "v6.4.15", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "f1fc6f47283e27336e7cebb9e8946c8de7bff9bd" + "reference": "799445db3f15768ecc382ac5699e6da0520a0a04" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/f1fc6f47283e27336e7cebb9e8946c8de7bff9bd", - "reference": "f1fc6f47283e27336e7cebb9e8946c8de7bff9bd", + "url": "https://api.github.com/repos/symfony/console/zipball/799445db3f15768ecc382ac5699e6da0520a0a04", + "reference": "799445db3f15768ecc382ac5699e6da0520a0a04", "shasum": "" }, "require": { @@ -16296,7 +16327,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.15" + "source": "https://github.com/symfony/console/tree/v6.4.17" }, "funding": [ { @@ -16312,7 +16343,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:19:14+00:00" + "time": "2024-12-07T12:07:30+00:00" }, { "name": "symfony/dependency-injection", @@ -16414,12 +16445,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -16464,16 +16495,16 @@ }, { "name": "symfony/error-handler", - "version": "v6.4.14", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "9e024324511eeb00983ee76b9aedc3e6ecd993d9" + "reference": "37ad2380e8c1a8cf62a1200a5c10080b679b446c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/9e024324511eeb00983ee76b9aedc3e6ecd993d9", - "reference": "9e024324511eeb00983ee76b9aedc3e6ecd993d9", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/37ad2380e8c1a8cf62a1200a5c10080b679b446c", + "reference": "37ad2380e8c1a8cf62a1200a5c10080b679b446c", "shasum": "" }, "require": { @@ -16519,7 +16550,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.14" + "source": "https://github.com/symfony/error-handler/tree/v6.4.17" }, "funding": [ { @@ -16535,7 +16566,7 @@ "type": "tidelift" } ], - "time": "2024-11-05T15:34:40+00:00" + "time": "2024-12-06T13:30:51+00:00" }, { "name": "symfony/event-dispatcher", @@ -16637,12 +16668,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -16761,16 +16792,16 @@ }, { "name": "symfony/finder", - "version": "v6.4.13", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958" + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/daea9eca0b08d0ed1dc9ab702a46128fd1be4958", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958", + "url": "https://api.github.com/repos/symfony/finder/zipball/1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", "shasum": "" }, "require": { @@ -16805,7 +16836,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.4.13" + "source": "https://github.com/symfony/finder/tree/v6.4.17" }, "funding": [ { @@ -16821,7 +16852,7 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:30:56+00:00" + "time": "2024-12-29T13:51:37+00:00" }, { "name": "symfony/http-foundation", @@ -16902,16 +16933,16 @@ }, { "name": "symfony/http-kernel", - "version": "v6.4.16", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "8838b5b21d807923b893ccbfc2cbeda0f1bc00f0" + "reference": "c5647393c5ce11833d13e4b70fff4b571d4ac710" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/8838b5b21d807923b893ccbfc2cbeda0f1bc00f0", - "reference": "8838b5b21d807923b893ccbfc2cbeda0f1bc00f0", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/c5647393c5ce11833d13e4b70fff4b571d4ac710", + "reference": "c5647393c5ce11833d13e4b70fff4b571d4ac710", "shasum": "" }, "require": { @@ -16996,7 +17027,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.16" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.17" }, "funding": [ { @@ -17012,7 +17043,7 @@ "type": "tidelift" } ], - "time": "2024-11-27T12:49:36+00:00" + "time": "2024-12-31T14:49:31+00:00" }, { "name": "symfony/mailer", @@ -17096,16 +17127,16 @@ }, { "name": "symfony/mime", - "version": "v6.4.13", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855" + "reference": "ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/1de1cf14d99b12c7ebbb850491ec6ae3ed468855", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855", + "url": "https://api.github.com/repos/symfony/mime/zipball/ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232", + "reference": "ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232", "shasum": "" }, "require": { @@ -17161,7 +17192,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.13" + "source": "https://github.com/symfony/mime/tree/v6.4.17" }, "funding": [ { @@ -17177,7 +17208,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2024-12-02T11:09:41+00:00" }, { "name": "symfony/polyfill-ctype", @@ -17205,8 +17236,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17284,8 +17315,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17361,8 +17392,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17441,8 +17472,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17523,8 +17554,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17607,8 +17638,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17681,8 +17712,8 @@ "type": "metapackage", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "notification-url": "https://packagist.org/downloads/", @@ -17746,8 +17777,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17826,8 +17857,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -17903,8 +17934,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -18308,12 +18339,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -18472,12 +18503,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -18533,16 +18564,16 @@ }, { "name": "symfony/twig-bridge", - "version": "v6.4.16", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "32ec012ed4f6426441a66014471bdb26674744be" + "reference": "238e1aac992b5231c66faf10131ace7bdba97065" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/32ec012ed4f6426441a66014471bdb26674744be", - "reference": "32ec012ed4f6426441a66014471bdb26674744be", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/238e1aac992b5231c66faf10131ace7bdba97065", + "reference": "238e1aac992b5231c66faf10131ace7bdba97065", "shasum": "" }, "require": { @@ -18622,7 +18653,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v6.4.16" + "source": "https://github.com/symfony/twig-bridge/tree/v6.4.17" }, "funding": [ { @@ -18638,20 +18669,20 @@ "type": "tidelift" } ], - "time": "2024-11-25T11:59:11+00:00" + "time": "2024-12-19T14:08:41+00:00" }, { "name": "symfony/validator", - "version": "v6.4.16", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "9b0d1988b56511706bc91d96ead39acd77aaf34d" + "reference": "a3c19a0e542d427c207e22242043ef35b5b99a2c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/9b0d1988b56511706bc91d96ead39acd77aaf34d", - "reference": "9b0d1988b56511706bc91d96ead39acd77aaf34d", + "url": "https://api.github.com/repos/symfony/validator/zipball/a3c19a0e542d427c207e22242043ef35b5b99a2c", + "reference": "a3c19a0e542d427c207e22242043ef35b5b99a2c", "shasum": "" }, "require": { @@ -18719,7 +18750,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v6.4.16" + "source": "https://github.com/symfony/validator/tree/v6.4.17" }, "funding": [ { @@ -18735,7 +18766,7 @@ "type": "tidelift" } ], - "time": "2024-11-27T09:48:51+00:00" + "time": "2024-12-29T12:50:19+00:00" }, { "name": "symfony/var-dumper", @@ -19942,16 +19973,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.5.4", + "version": "1.5.5", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "bc0593537a463e55cadf45fd938d23b75095b7e1" + "reference": "08c50d5ec4c6ced7d0271d2862dec8c1033283e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/bc0593537a463e55cadf45fd938d23b75095b7e1", - "reference": "bc0593537a463e55cadf45fd938d23b75095b7e1", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/08c50d5ec4c6ced7d0271d2862dec8c1033283e6", + "reference": "08c50d5ec4c6ced7d0271d2862dec8c1033283e6", "shasum": "" }, "require": { @@ -19998,7 +20029,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.4" + "source": "https://github.com/composer/ca-bundle/tree/1.5.5" }, "funding": [ { @@ -20014,7 +20045,7 @@ "type": "tidelift" } ], - "time": "2024-11-27T15:35:25+00:00" + "time": "2025-01-08T16:17:16+00:00" }, { "name": "composer/class-map-generator", @@ -20091,16 +20122,16 @@ }, { "name": "composer/composer", - "version": "2.8.3", + "version": "2.8.4", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "2a7c71266b2545a3bed9f4860734081963f6e688" + "reference": "112e37d1dca22b3fdb81cf3524ab4994f47fdb8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/2a7c71266b2545a3bed9f4860734081963f6e688", - "reference": "2a7c71266b2545a3bed9f4860734081963f6e688", + "url": "https://api.github.com/repos/composer/composer/zipball/112e37d1dca22b3fdb81cf3524ab4994f47fdb8c", + "reference": "112e37d1dca22b3fdb81cf3524ab4994f47fdb8c", "shasum": "" }, "require": { @@ -20185,7 +20216,7 @@ "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", "security": "https://github.com/composer/composer/security/policy", - "source": "https://github.com/composer/composer/tree/2.8.3" + "source": "https://github.com/composer/composer/tree/2.8.4" }, "funding": [ { @@ -20201,7 +20232,7 @@ "type": "tidelift" } ], - "time": "2024-11-17T12:13:04+00:00" + "time": "2024-12-11T10:57:47+00:00" }, { "name": "composer/metadata-minifier", @@ -20299,13 +20330,13 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - }, "phpstan": { "includes": [ "extension.neon" ] + }, + "branch-alias": { + "dev-main": "3.x-dev" } }, "autoload": { @@ -20588,20 +20619,20 @@ }, { "name": "doctrine/common", - "version": "3.4.5", + "version": "3.5.0", "source": { "type": "git", "url": "https://github.com/doctrine/common.git", - "reference": "6c8fef961f67b8bc802ce3e32e3ebd1022907286" + "reference": "d9ea4a54ca2586db781f0265d36bea731ac66ec5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/6c8fef961f67b8bc802ce3e32e3ebd1022907286", - "reference": "6c8fef961f67b8bc802ce3e32e3ebd1022907286", + "url": "https://api.github.com/repos/doctrine/common/zipball/d9ea4a54ca2586db781f0265d36bea731ac66ec5", + "reference": "d9ea4a54ca2586db781f0265d36bea731ac66ec5", "shasum": "" }, "require": { - "doctrine/persistence": "^2.0 || ^3.0", + "doctrine/persistence": "^2.0 || ^3.0 || ^4.0", "php": "^7.1 || ^8.0" }, "require-dev": { @@ -20659,7 +20690,7 @@ ], "support": { "issues": "https://github.com/doctrine/common/issues", - "source": "https://github.com/doctrine/common/tree/3.4.5" + "source": "https://github.com/doctrine/common/tree/3.5.0" }, "funding": [ { @@ -20675,7 +20706,7 @@ "type": "tidelift" } ], - "time": "2024-10-08T15:53:43+00:00" + "time": "2025-01-01T22:12:03+00:00" }, { "name": "doctrine/event-manager", @@ -20840,21 +20871,21 @@ }, { "name": "doctrine/persistence", - "version": "3.4.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/persistence.git", - "reference": "0ea965320cec355dba75031c1b23d4c78362e3ff" + "reference": "45004aca79189474f113cbe3a53847c2115a55fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/persistence/zipball/0ea965320cec355dba75031c1b23d4c78362e3ff", - "reference": "0ea965320cec355dba75031c1b23d4c78362e3ff", + "url": "https://api.github.com/repos/doctrine/persistence/zipball/45004aca79189474f113cbe3a53847c2115a55fa", + "reference": "45004aca79189474f113cbe3a53847c2115a55fa", "shasum": "" }, "require": { "doctrine/event-manager": "^1 || ^2", - "php": "^7.2 || ^8.0", + "php": "^8.1", "psr/cache": "^1.0 || ^2.0 || ^3.0" }, "conflict": { @@ -20862,11 +20893,10 @@ }, "require-dev": { "doctrine/coding-standard": "^12", - "doctrine/common": "^3.0", "phpstan/phpstan": "1.12.7", "phpstan/phpstan-phpunit": "^1", "phpstan/phpstan-strict-rules": "^1.1", - "phpunit/phpunit": "^8.5.38 || ^9.5", + "phpunit/phpunit": "^9.6", "symfony/cache": "^4.4 || ^5.4 || ^6.0 || ^7.0" }, "type": "library", @@ -20916,7 +20946,7 @@ ], "support": { "issues": "https://github.com/doctrine/persistence/issues", - "source": "https://github.com/doctrine/persistence/tree/3.4.0" + "source": "https://github.com/doctrine/persistence/tree/4.0.0" }, "funding": [ { @@ -20932,7 +20962,7 @@ "type": "tidelift" } ], - "time": "2024-10-30T19:48:12+00:00" + "time": "2024-11-01T21:49:07+00:00" }, { "name": "drupal/config_inspector", @@ -21007,28 +21037,28 @@ }, { "name": "drupal/core-dev", - "version": "10.3.10", + "version": "10.4.1", "source": { "type": "git", "url": "https://github.com/drupal/core-dev.git", - "reference": "2f117398ad5e7df411b4715c1b69ab4847c5cc08" + "reference": "9c6c089f73671083d9588affa287a59a80e6edc8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-dev/zipball/2f117398ad5e7df411b4715c1b69ab4847c5cc08", - "reference": "2f117398ad5e7df411b4715c1b69ab4847c5cc08", + "url": "https://api.github.com/repos/drupal/core-dev/zipball/9c6c089f73671083d9588affa287a59a80e6edc8", + "reference": "9c6c089f73671083d9588affa287a59a80e6edc8", "shasum": "" }, "require": { "behat/mink": "^1.11", "behat/mink-browserkit-driver": "^2.2", "colinodell/psr-testlogger": "^1.2", - "composer/composer": "^2.7.7", + "composer/composer": "^2.8.1", "drupal/coder": "^8.3.10", "justinrainbow/json-schema": "^5.2", "lullabot/mink-selenium2-driver": "^1.7", "lullabot/php-webdriver": "^2.0.4", - "mglaman/phpstan-drupal": "^1.2.10", + "mglaman/phpstan-drupal": "^1.2.12", "micheh/phpcs-gitlab": "^1.1", "mikey179/vfsstream": "^1.6.11", "open-telemetry/exporter-otlp": "^1", @@ -21036,7 +21066,7 @@ "php-http/guzzle7-adapter": "^1.0", "phpspec/prophecy-phpunit": "^2", "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.11.0", + "phpstan/phpstan": "^1.12.4", "phpstan/phpstan-phpunit": "^1.3.16", "phpunit/phpunit": "^9.6.13", "symfony/browser-kit": "^6.4", @@ -21057,9 +21087,9 @@ ], "description": "require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.", "support": { - "source": "https://github.com/drupal/core-dev/tree/10.3.10" + "source": "https://github.com/drupal/core-dev/tree/10.4.1" }, - "time": "2024-07-04T10:19:29+00:00" + "time": "2024-11-21T12:39:32+00:00" }, { "name": "drupal/devel", @@ -21295,16 +21325,16 @@ }, { "name": "google/protobuf", - "version": "v4.29.1", + "version": "v4.29.3", "source": { "type": "git", "url": "https://github.com/protocolbuffers/protobuf-php.git", - "reference": "6042b5483f8029e42473faeb8ef75ba266278381" + "reference": "ab5077c2cfdd1f415f42d11fdbdf903ba8e3d9b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/protocolbuffers/protobuf-php/zipball/6042b5483f8029e42473faeb8ef75ba266278381", - "reference": "6042b5483f8029e42473faeb8ef75ba266278381", + "url": "https://api.github.com/repos/protocolbuffers/protobuf-php/zipball/ab5077c2cfdd1f415f42d11fdbdf903ba8e3d9b7", + "reference": "ab5077c2cfdd1f415f42d11fdbdf903ba8e3d9b7", "shasum": "" }, "require": { @@ -21333,9 +21363,9 @@ "proto" ], "support": { - "source": "https://github.com/protocolbuffers/protobuf-php/tree/v4.29.1" + "source": "https://github.com/protocolbuffers/protobuf-php/tree/v4.29.3" }, - "time": "2024-12-03T22:07:45+00:00" + "time": "2025-01-08T21:00:13+00:00" }, { "name": "league/html-to-markdown", @@ -21428,35 +21458,30 @@ }, { "name": "league/oauth2-client", - "version": "2.7.0", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/thephpleague/oauth2-client.git", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8" + "reference": "3d5cf8d0543731dfb725ab30e4d7289891991e13" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/160d6274b03562ebeb55ed18399281d8118b76c8", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8", + "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/3d5cf8d0543731dfb725ab30e4d7289891991e13", + "reference": "3d5cf8d0543731dfb725ab30e4d7289891991e13", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^6.0 || ^7.0", - "paragonie/random_compat": "^1 || ^2 || ^9.99", - "php": "^5.6 || ^7.0 || ^8.0" + "ext-json": "*", + "guzzlehttp/guzzle": "^6.5.8 || ^7.4.5", + "php": "^7.1 || >=8.0.0 <8.5.0" }, "require-dev": { "mockery/mockery": "^1.3.5", - "php-parallel-lint/php-parallel-lint": "^1.3.1", - "phpunit/phpunit": "^5.7 || ^6.0 || ^9.5", - "squizlabs/php_codesniffer": "^2.3 || ^3.0" + "php-parallel-lint/php-parallel-lint": "^1.4", + "phpunit/phpunit": "^7 || ^8 || ^9 || ^10 || ^11", + "squizlabs/php_codesniffer": "^3.11" }, "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.0.x-dev" - } - }, "autoload": { "psr-4": { "League\\OAuth2\\Client\\": "src/" @@ -21492,9 +21517,9 @@ ], "support": { "issues": "https://github.com/thephpleague/oauth2-client/issues", - "source": "https://github.com/thephpleague/oauth2-client/tree/2.7.0" + "source": "https://github.com/thephpleague/oauth2-client/tree/2.8.0" }, - "time": "2023-04-16T18:19:15+00:00" + "time": "2024-12-11T05:05:52+00:00" }, { "name": "lullabot/mink-selenium2-driver", @@ -21618,16 +21643,16 @@ }, { "name": "mglaman/phpstan-drupal", - "version": "1.3.1", + "version": "1.3.2", "source": { "type": "git", "url": "https://github.com/mglaman/phpstan-drupal.git", - "reference": "2bc25a59b53c8f3990f168efd71241d9c25ea0c3" + "reference": "bbb92dee546da3988da851122cb2925f72c149f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/2bc25a59b53c8f3990f168efd71241d9c25ea0c3", - "reference": "2bc25a59b53c8f3990f168efd71241d9c25ea0c3", + "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/bbb92dee546da3988da851122cb2925f72c149f3", + "reference": "bbb92dee546da3988da851122cb2925f72c149f3", "shasum": "" }, "require": { @@ -21657,6 +21682,12 @@ }, "type": "phpstan-extension", "extra": { + "phpstan": { + "includes": [ + "extension.neon", + "rules.neon" + ] + }, "branch-alias": { "dev-main": "1.0-dev" }, @@ -21667,20 +21698,14 @@ "tests/fixtures/drupal/libraries/{$name}": [ "type:drupal-library" ], + "tests/fixtures/drupal/themes/contrib/{$name}": [ + "type:drupal-theme" + ], "tests/fixtures/drupal/modules/contrib/{$name}": [ "type:drupal-module" ], "tests/fixtures/drupal/profiles/contrib/{$name}": [ "type:drupal-profile" - ], - "tests/fixtures/drupal/themes/contrib/{$name}": [ - "type:drupal-theme" - ] - }, - "phpstan": { - "includes": [ - "extension.neon", - "rules.neon" ] } }, @@ -21702,7 +21727,7 @@ "description": "Drupal extension and rules for PHPStan", "support": { "issues": "https://github.com/mglaman/phpstan-drupal/issues", - "source": "https://github.com/mglaman/phpstan-drupal/tree/1.3.1" + "source": "https://github.com/mglaman/phpstan-drupal/tree/1.3.2" }, "funding": [ { @@ -21718,7 +21743,7 @@ "type": "tidelift" } ], - "time": "2024-09-27T08:54:16+00:00" + "time": "2024-11-19T15:26:05+00:00" }, { "name": "micheh/phpcs-gitlab", @@ -21952,16 +21977,16 @@ }, { "name": "open-telemetry/api", - "version": "1.1.1", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/api.git", - "reference": "542064815d38a6df55af7957cd6f1d7d967c99c6" + "reference": "351a30baa79699de3de3a814c8ccc7b52ccdfb1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/api/zipball/542064815d38a6df55af7957cd6f1d7d967c99c6", - "reference": "542064815d38a6df55af7957cd6f1d7d967c99c6", + "url": "https://api.github.com/repos/opentelemetry-php/api/zipball/351a30baa79699de3de3a814c8ccc7b52ccdfb1d", + "reference": "351a30baa79699de3de3a814c8ccc7b52ccdfb1d", "shasum": "" }, "require": { @@ -21975,13 +22000,13 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.1.x-dev" - }, "spi": { "OpenTelemetry\\API\\Instrumentation\\AutoInstrumentation\\HookManagerInterface": [ "OpenTelemetry\\API\\Instrumentation\\AutoInstrumentation\\ExtensionHookManager" ] + }, + "branch-alias": { + "dev-main": "1.1.x-dev" } }, "autoload": { @@ -22018,7 +22043,7 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2024-10-15T22:42:37+00:00" + "time": "2025-01-08T23:50:34+00:00" }, { "name": "open-telemetry/context", @@ -22081,16 +22106,16 @@ }, { "name": "open-telemetry/exporter-otlp", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/exporter-otlp.git", - "reference": "9b6de12204f25f8ab9540b46d6e7b5151897ce18" + "reference": "243d9657c44a06f740cf384f486afe954c2b725f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/exporter-otlp/zipball/9b6de12204f25f8ab9540b46d6e7b5151897ce18", - "reference": "9b6de12204f25f8ab9540b46d6e7b5151897ce18", + "url": "https://api.github.com/repos/opentelemetry-php/exporter-otlp/zipball/243d9657c44a06f740cf384f486afe954c2b725f", + "reference": "243d9657c44a06f740cf384f486afe954c2b725f", "shasum": "" }, "require": { @@ -22141,20 +22166,20 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2024-04-30T18:28:30+00:00" + "time": "2025-01-08T23:50:03+00:00" }, { "name": "open-telemetry/gen-otlp-protobuf", - "version": "1.2.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/gen-otlp-protobuf.git", - "reference": "66c3b98e998a726691c92e6405a82e6e7b8b169d" + "reference": "585bafddd4ae6565de154610b10a787a455c9ba0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/gen-otlp-protobuf/zipball/66c3b98e998a726691c92e6405a82e6e7b8b169d", - "reference": "66c3b98e998a726691c92e6405a82e6e7b8b169d", + "url": "https://api.github.com/repos/opentelemetry-php/gen-otlp-protobuf/zipball/585bafddd4ae6565de154610b10a787a455c9ba0", + "reference": "585bafddd4ae6565de154610b10a787a455c9ba0", "shasum": "" }, "require": { @@ -22204,20 +22229,20 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2024-10-30T11:49:49+00:00" + "time": "2025-01-15T23:07:07+00:00" }, { "name": "open-telemetry/sdk", - "version": "1.1.2", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/sdk.git", - "reference": "fb0ff8d8279a3776bd604791e2531dd0cc147e8b" + "reference": "9a1c3b866239dbff291e5cc555bb7793eab08127" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/fb0ff8d8279a3776bd604791e2531dd0cc147e8b", - "reference": "fb0ff8d8279a3776bd604791e2531dd0cc147e8b", + "url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/9a1c3b866239dbff291e5cc555bb7793eab08127", + "reference": "9a1c3b866239dbff291e5cc555bb7793eab08127", "shasum": "" }, "require": { @@ -22245,13 +22270,13 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.0.x-dev" - }, "spi": { "OpenTelemetry\\API\\Instrumentation\\AutoInstrumentation\\HookManagerInterface": [ "OpenTelemetry\\API\\Instrumentation\\AutoInstrumentation\\ExtensionHookManager" ] + }, + "branch-alias": { + "dev-main": "1.0.x-dev" } }, "autoload": { @@ -22294,7 +22319,7 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2024-10-18T21:01:35+00:00" + "time": "2025-01-08T23:50:34+00:00" }, { "name": "open-telemetry/sem-conv", @@ -22839,16 +22864,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.6.0", + "version": "5.6.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "f3558a4c23426d12bffeaab463f8a8d8b681193c" + "reference": "e5e784149a09bd69d9a5e3b01c5cbd2e2bd653d8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/f3558a4c23426d12bffeaab463f8a8d8b681193c", - "reference": "f3558a4c23426d12bffeaab463f8a8d8b681193c", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/e5e784149a09bd69d9a5e3b01c5cbd2e2bd653d8", + "reference": "e5e784149a09bd69d9a5e3b01c5cbd2e2bd653d8", "shasum": "" }, "require": { @@ -22897,9 +22922,9 @@ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.0" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.1" }, - "time": "2024-11-12T11:25:25+00:00" + "time": "2024-12-07T09:39:29+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -23181,16 +23206,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.12", + "version": "1.12.15", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "b5ae1b88f471d3fd4ba1aa0046234b5ca3776dd0" + "reference": "c91d4e8bc056f46cf653656e6f71004b254574d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/b5ae1b88f471d3fd4ba1aa0046234b5ca3776dd0", - "reference": "b5ae1b88f471d3fd4ba1aa0046234b5ca3776dd0", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/c91d4e8bc056f46cf653656e6f71004b254574d1", + "reference": "c91d4e8bc056f46cf653656e6f71004b254574d1", "shasum": "" }, "require": { @@ -23235,7 +23260,7 @@ "type": "github" } ], - "time": "2024-11-28T22:13:23+00:00" + "time": "2025-01-05T16:40:22+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", @@ -23286,16 +23311,16 @@ }, { "name": "phpstan/phpstan-phpunit", - "version": "1.4.1", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-phpunit.git", - "reference": "11d4235fbc6313ecbf93708606edfd3222e44949" + "reference": "72a6721c9b64b3e4c9db55abbc38f790b318267e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/11d4235fbc6313ecbf93708606edfd3222e44949", - "reference": "11d4235fbc6313ecbf93708606edfd3222e44949", + "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/72a6721c9b64b3e4c9db55abbc38f790b318267e", + "reference": "72a6721c9b64b3e4c9db55abbc38f790b318267e", "shasum": "" }, "require": { @@ -23332,9 +23357,9 @@ "description": "PHPUnit extensions and rules for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-phpunit/issues", - "source": "https://github.com/phpstan/phpstan-phpunit/tree/1.4.1" + "source": "https://github.com/phpstan/phpstan-phpunit/tree/1.4.2" }, - "time": "2024-11-12T12:43:59+00:00" + "time": "2024-12-17T17:20:49+00:00" }, { "name": "phpunit/php-code-coverage", @@ -25185,12 +25210,12 @@ "source": { "type": "git", "url": "https://github.com/SU-SWS/stanford-caravan.git", - "reference": "8d648373190f664fd05ae9d39686209e7d508272" + "reference": "8d61effccb5dc58196d477f7b0fdaaf6b31a7b7b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/SU-SWS/stanford-caravan/zipball/8d648373190f664fd05ae9d39686209e7d508272", - "reference": "8d648373190f664fd05ae9d39686209e7d508272", + "url": "https://api.github.com/repos/SU-SWS/stanford-caravan/zipball/8d61effccb5dc58196d477f7b0fdaaf6b31a7b7b", + "reference": "8d61effccb5dc58196d477f7b0fdaaf6b31a7b7b", "shasum": "" }, "require": { @@ -25220,7 +25245,7 @@ "issues": "https://github.com/SU-SWS/stanford-caravan/issues", "source": "https://github.com/SU-SWS/stanford-caravan/tree/10.x" }, - "time": "2024-10-11T15:29:49+00:00" + "time": "2025-01-06T21:24:33+00:00" }, { "name": "symfony/browser-kit", @@ -25292,16 +25317,16 @@ }, { "name": "symfony/cache", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "2c926bc348184b4b235f2200fcbe8fcf3c8c5b8a" + "reference": "e7e983596b744c4539f31e79b0350a6cf5878a20" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/2c926bc348184b4b235f2200fcbe8fcf3c8c5b8a", - "reference": "2c926bc348184b4b235f2200fcbe8fcf3c8c5b8a", + "url": "https://api.github.com/repos/symfony/cache/zipball/e7e983596b744c4539f31e79b0350a6cf5878a20", + "reference": "e7e983596b744c4539f31e79b0350a6cf5878a20", "shasum": "" }, "require": { @@ -25370,7 +25395,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v7.2.0" + "source": "https://github.com/symfony/cache/tree/v7.2.1" }, "funding": [ { @@ -25386,7 +25411,7 @@ "type": "tidelift" } ], - "time": "2024-11-25T15:21:05+00:00" + "time": "2024-12-07T08:08:50+00:00" }, { "name": "symfony/cache-contracts", @@ -25408,12 +25433,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -25777,8 +25802,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -25853,8 +25878,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { diff --git a/config/default/core.extension.yml b/config/default/core.extension.yml index c49acdc379..2098cdab6b 100644 --- a/config/default/core.extension.yml +++ b/config/default/core.extension.yml @@ -84,7 +84,6 @@ module: google_analytics: 0 hal: 0 help: 0 - honeypot: 0 hook_event_dispatcher: 0 hs_actions: 0 hs_admin: 0 @@ -112,7 +111,6 @@ module: hs_news_display: 0 hs_page_reports: 0 hs_paragraph_types: 0 - hs_paragraphs_between: 0 hs_person: 0 hs_person_display: 0 hs_postcard: 0 @@ -182,7 +180,6 @@ module: node_revision_delete: 0 oembed_providers: 0 options: 0 - paragraphs_browser: 0 paragraphs_edit: 0 paragraphs_features: 0 path: 0 diff --git a/config/default/editoria11y.settings.yml b/config/default/editoria11y.settings.yml index 73401e4a33..f86c92a516 100644 --- a/config/default/editoria11y.settings.yml +++ b/config/default/editoria11y.settings.yml @@ -17,3 +17,5 @@ disable_sync: false preserve_params: 'search,keys,page,language,language_content_entity' redundant_prefix: '' custom_tests: 0 +disable_live: false +live_h2: 'form[id^="node-"] #edit-body-wrapper .ck-content' diff --git a/config/default/environment_indicator.settings.yml b/config/default/environment_indicator.settings.yml index 90b8d82bfa..40553728d8 100644 --- a/config/default/environment_indicator.settings.yml +++ b/config/default/environment_indicator.settings.yml @@ -3,3 +3,5 @@ _core: toolbar_integration: - toolbar favicon: true +version_identifier: environment_indicator_current_release +version_identifier_fallback: deployment_identifier diff --git a/config/default/honeypot.settings.yml b/config/default/honeypot.settings.yml deleted file mode 100644 index 67d762de40..0000000000 --- a/config/default/honeypot.settings.yml +++ /dev/null @@ -1,24 +0,0 @@ -_core: - default_config_hash: 9bVDfWSa_In6VzTXmy04jJ_3ZQobihKjO9isuuUCPaw -protect_all_forms: false -unprotected_forms: - - user_login_form - - search_form - - search_block_form - - views_exposed_form - - honeypot_settings_form -log: false -element_name: url -time_limit: 5 -expire: 300 -form_settings: - user_register_form: false - user_pass: false - node_hs_basic_page_form: false - node_hs_course_form: false - node_hs_event_form: false - node_hs_event_series_form: false - node_hs_news_form: false - node_hs_person_form: false - node_hs_publications_form: false - node_hs_research_form: false diff --git a/config/default/paragraphs_browser.paragraphs_browser_type.content.yml b/config/default/paragraphs_browser.paragraphs_browser_type.content.yml deleted file mode 100644 index 21595b6519..0000000000 --- a/config/default/paragraphs_browser.paragraphs_browser_type.content.yml +++ /dev/null @@ -1,10 +0,0 @@ -uuid: d5865e9a-723f-4604-83ce-29cc89d9b1e8 -langcode: en -status: true -dependencies: { } -_core: - default_config_hash: KUumpKGaihwt7ld0Ba82jPUpgKDO5aE066wdVfFAztU -id: content -label: Content -groups: { } -map: { } diff --git a/config/default/system.action.user_add_role_action.administrator.yml b/config/default/system.action.user_add_role_action.administrator.yml index 14dc21ef12..d9c9b49add 100644 --- a/config/default/system.action.user_add_role_action.administrator.yml +++ b/config/default/system.action.user_add_role_action.administrator.yml @@ -7,7 +7,7 @@ dependencies: module: - user id: user_add_role_action.administrator -label: 'Add the Administrator role to the selected user(s)' +label: 'Add the Developer role to the selected user(s)' type: user plugin: user_add_role_action configuration: diff --git a/config/default/system.action.user_remove_role_action.administrator.yml b/config/default/system.action.user_remove_role_action.administrator.yml index cb7cde0193..f9d7cc4a6a 100644 --- a/config/default/system.action.user_remove_role_action.administrator.yml +++ b/config/default/system.action.user_remove_role_action.administrator.yml @@ -7,7 +7,7 @@ dependencies: module: - user id: user_remove_role_action.administrator -label: 'Remove the Administrator role from the selected user(s)' +label: 'Remove the Developer role from the selected user(s)' type: user plugin: user_remove_role_action configuration: diff --git a/config/default/ultimate_cron.job.honeypot_cron.yml b/config/default/ultimate_cron.job.honeypot_cron.yml deleted file mode 100644 index aa33d73b91..0000000000 --- a/config/default/ultimate_cron.job.honeypot_cron.yml +++ /dev/null @@ -1,17 +0,0 @@ -uuid: 0eb0926a-3423-4e67-ac29-7fe14e1c49d3 -langcode: en -status: true -dependencies: - module: - - honeypot -title: 'Default cron handler' -id: honeypot_cron -weight: 0 -module: honeypot -callback: 'honeypot#cron' -scheduler: - id: simple -launcher: - id: serial -logger: - id: database diff --git a/docroot/modules/humsci/hs_admin/hs_admin.module b/docroot/modules/humsci/hs_admin/hs_admin.module index 8c56300f46..13a5aefb62 100644 --- a/docroot/modules/humsci/hs_admin/hs_admin.module +++ b/docroot/modules/humsci/hs_admin/hs_admin.module @@ -128,15 +128,6 @@ function hs_admin_form_node_form_alter(&$form, FormStateInterface $form_state, $ ]; } -/** - * Implements hook_form_FORM_ID_alter(). - */ -function hs_admin_form_user_login_form_alter(&$form, FormStateInterface $form_state, $form_id) { - if (isset($form['saml']['#attributes']['class'])) { - $form['saml']['#attributes']['class'][] = 'simplesamlphp-auth-login-link'; - } -} - /** * After build callback for hs_admin_form_node_form_alter(). * diff --git a/docroot/modules/humsci/hs_blocks/src/Plugin/Block/SocialMediaBlock.php b/docroot/modules/humsci/hs_blocks/src/Plugin/Block/SocialMediaBlock.php index 074a8837c1..b17329491a 100644 --- a/docroot/modules/humsci/hs_blocks/src/Plugin/Block/SocialMediaBlock.php +++ b/docroot/modules/humsci/hs_blocks/src/Plugin/Block/SocialMediaBlock.php @@ -8,6 +8,7 @@ use Drupal\Core\Block\BlockBase; use Drupal\Core\Form\FormStateInterface; use Drupal\Core\Plugin\ContainerFactoryPluginInterface; +use Drupal\Core\Render\Element\Url; use Drupal\Core\Session\AccountProxyInterface; use Drupal\Core\StringTranslation\TranslatableMarkup; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -126,10 +127,13 @@ public function blockForm($form, FormStateInterface $form_state): array { $form['links'][$key] = [ '#type' => 'container', 'link_url' => [ - '#type' => 'url', + '#type' => 'textfield', '#title' => $this->t('URL'), - '#description' => $this->t('Social Media Profile URL.'), + '#description' => $this->t('Social Media Profile URL. Must start with https:// or mailto:'), '#default_value' => $link['link_url'], + '#element_validate' => [ + [get_class($this), 'validateUrl'], + ], ], 'link_title' => [ '#type' => 'textfield', @@ -162,6 +166,29 @@ public function blockForm($form, FormStateInterface $form_state): array { return $form; } + /** + * Custom validation for the link_url field. + */ + public static function validateUrl(array &$element, FormStateInterface $form_state, array &$complete_form) { + $value = $element['#value']; + + if (empty($value)) { + return; + } + + $mailto_regex = '/^mailto:[\w.%+-]+@[A-Za-z0-9-]+\.[A-Za-z]{2,}(?:\?[^\s]*)?$/i'; + + if (str_starts_with($value, 'mailto')) { + if (!preg_match($mailto_regex, $value)) { + $form_state->setError($element, t('The mailto link must include a valid email address (e.g., mailto:example@example.com).')); + } + return; + } + + URL::validateUrl($element, $form_state, $complete_form); + + } + /** * {@inheritdoc} */ diff --git a/docroot/modules/humsci/hs_field_helpers/hs_field_helpers.module b/docroot/modules/humsci/hs_field_helpers/hs_field_helpers.module index 96d5ec4fa5..0bb359d32e 100644 --- a/docroot/modules/humsci/hs_field_helpers/hs_field_helpers.module +++ b/docroot/modules/humsci/hs_field_helpers/hs_field_helpers.module @@ -16,9 +16,9 @@ use Drupal\Core\Form\FormStateInterface; use Drupal\Core\Layout\LayoutDefinition; use Drupal\Core\Render\Element; use Drupal\Core\Routing\RouteMatchInterface; +use Drupal\field_permissions\Plugin\FieldPermissionTypeInterface; use Drupal\field\Entity\FieldConfig; use Drupal\field\FieldStorageConfigInterface; -use Drupal\field_permissions\Plugin\FieldPermissionTypeInterface; use Drupal\hs_field_helpers\Plugin\Field\FieldFormatter\AddToCalFormatter; use Drupal\hs_field_helpers\Plugin\Field\FieldFormatter\EntityTitleHeading; use Drupal\hs_field_helpers\Plugin\Field\FieldFormatter\HsViewfieldFormatterDefault; @@ -26,6 +26,7 @@ use Drupal\hs_field_helpers\Plugin\Field\FieldType\DisplayModeField; use Drupal\hs_field_helpers\Plugin\Field\FieldWidget\DateTimeYearOnly; use Drupal\hs_field_helpers\Plugin\Field\FieldWidget\HsViewfieldWidgetSelect; use Drupal\layout_builder\Entity\LayoutBuilderEntityViewDisplay; +use Drupal\link\Plugin\Field\FieldType\LinkItem; use Drupal\ui_patterns\Element\PatternContext; use Drupal\ui_patterns\UiPatterns; @@ -231,12 +232,16 @@ function _hs_field_helpers_cleanup_pattern_regions(array &$pattern, $pattern_id) $rendered = $element; } - // Remove all wrapper divs so we can check if the region actually has any - // visible output. - $rendered = preg_replace("/(.*?)<\/div>/s", "$1", $rendered); - $rendered = preg_replace("/
(.*?)<\/div>/s", "$1", $rendered); - if (empty(trim($rendered))) { + if (is_null($rendered)) { unset($pattern[$region]); + } else { + // Remove all wrapper divs so we can check if the region actually has any + // visible output. + $rendered = preg_replace("/(.*?)<\/div>/s", "$1", $rendered); + $rendered = preg_replace("/
(.*?)<\/div>/s", "$1", $rendered); + if (empty(trim($rendered))) { + unset($pattern[$region]); + } } continue; @@ -652,3 +657,70 @@ function hs_field_helpers_form_alter(&$form, FormStateInterface $form_state, $fo unset($form['header']['views_bulk_operations_bulk_form']['select_all']); } } + +/** + * Implements hook_field_widget_complete_WIDGET_TYPE_form_alter(). + */ +function hs_field_helpers_field_widget_complete_link_default_form_alter(&$field_widget_complete_form, FormStateInterface $form_state, $context) { + // Add custom help text to link_default widgets. + if (!isset($field_widget_complete_form['widget']) || !is_array($field_widget_complete_form['widget'])) { + return; + } + + $description = NULL; + $appended = NULL; + + // Figure out if link supports internal, external, or both. + $field_definition = $context['items']->getFieldDefinition(); + $settings = $field_definition->getSettings(); + $link_type = $settings['link_type']; + $supports_internal = ($link_type & LinkItem::LINK_INTERNAL) === LinkItem::LINK_INTERNAL; + $supports_external = ($link_type & LinkItem::LINK_EXTERNAL) === LinkItem::LINK_EXTERNAL; + + if (!$supports_internal && !$supports_external) { + return; + } + + // Append extra text to the following form_ids. + $base_form = $form_state->getBuildInfo()['base_form_id']; + $append_extra_text_to = [ + 'shortcut_form', + 'menu_link_content_form', + ]; + + if (in_array($base_form, $append_extra_text_to)) { + $appended = t('Enter %front to link to the front page. Enter %no_link to display a menu item that is only text without a link.', [ + '%front' => '', + '%no_link' => '', + ]); + } + + $placeholders = [ + '%internal_link' => '/about/contact-us', + '%external_link' => 'https://www.stanford.edu', + '@appended' => $appended, + ]; + + // Internal link help text. + if ($supports_internal && !$supports_external) { + $description = t('This must be an internal path such as %internal_link You can also start typing the title of a piece of content to select it. @appended', $placeholders); + } + + // External link help text. + elseif (!$supports_internal && $supports_external) { + $description = t('This must be an external URL such as %external_link. @appended', $placeholders); + } + + // Both internal and external link help text. + else { + $description = t('Start typing the title of a piece of content to select it. You can also enter an internal path such as %internal_link or an external URL such as %external_link. @appended', $placeholders); + } + + // Add custom text to help text. + foreach ($field_widget_complete_form['widget'] as &$item) { + if (is_array($item) && isset($item['uri'])) { + $item['uri']['#description'] = $description; + } + } + +} diff --git a/docroot/modules/humsci/hs_layouts/hs_layouts.module b/docroot/modules/humsci/hs_layouts/hs_layouts.module index 463e1dd9c9..110c2edb9b 100644 --- a/docroot/modules/humsci/hs_layouts/hs_layouts.module +++ b/docroot/modules/humsci/hs_layouts/hs_layouts.module @@ -209,7 +209,7 @@ function hs_layouts_preprocess_pattern_vertical_card(&$variables) { $renderer = \Drupal::service('renderer'); $title_rendered = is_array($variables['title']) ? $renderer->renderInIsolation($variables['title']) : $variables['title']; - if (strpos($title_rendered, 'get('paragraphs_browser.paragraphs_browser_controller')) { - $route->setOption('_admin_route', TRUE); - } - if (($route = $collection->get('block.admin_display')) && $this->moduleHandler->moduleExists('block_content_permissions')) { $route->setRequirement('_permission', 'administer blocks+view restricted block content'); } diff --git a/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.info.yml b/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.info.yml index 7c07681af9..fadbee7cac 100644 --- a/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.info.yml +++ b/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.info.yml @@ -1,7 +1,7 @@ name: 'Stanford HumSci' type: profile description: 'Installation profile for HumSci Drupal' -version: 11.6.1 +version: 11.6.3 core_version_requirement: ^10.3 || ^11 themes: - material_admin @@ -95,7 +95,6 @@ install: - 'field_permissions:field_permissions' - 'focal_point:focal_point' - 'fontawesome:fontawesome' - - 'honeypot:honeypot' - 'humsci:hs_actions' - 'humsci:hs_basic_page' - 'humsci:hs_basic_page_display' @@ -118,7 +117,6 @@ install: - 'humsci:hs_news' - 'humsci:hs_news_display' - 'humsci:hs_page_reports' - - 'humsci:hs_paragraphs_between' - 'humsci:hs_person' - 'humsci:hs_person_display' - 'humsci:hs_postcard' diff --git a/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.install b/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.install index 47fed3b932..7d409cc127 100644 --- a/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.install +++ b/docroot/profiles/humsci/su_humsci_profile/su_humsci_profile.install @@ -1185,3 +1185,14 @@ function su_humsci_profile_update_9720() { ...$block_info, ])->save(); } + +/** + * Remove honeypot, paragraphs browser, and hs paragraphs between. + */ +function su_humsci_profile_update_9721() { + \Drupal::service('module_installer')->uninstall([ + 'honeypot', + 'hs_paragraphs_between', + 'paragraphs_browser', + ]); +} diff --git a/docroot/themes/humsci/humsci_basic/src/scss/admin/_wysiwyg-editor.scss b/docroot/themes/humsci/humsci_basic/src/scss/admin/_wysiwyg-editor.scss index 533dd0ff15..55a7b2db0a 100644 --- a/docroot/themes/humsci/humsci_basic/src/scss/admin/_wysiwyg-editor.scss +++ b/docroot/themes/humsci/humsci_basic/src/scss/admin/_wysiwyg-editor.scss @@ -98,3 +98,18 @@ drupal-media { .ck-editor .ck.ck-toolbar.ck-toolbar_grouping > .ck-toolbar__items { flex-wrap: wrap; } + +/* Match styles of external link in the WYSIWYG style's dropdown preview with the original design */ +.ck-style-grid__button__preview a.hs-external-link { + @include hb-link--inline; + @include hb-external-link-icon; + + /* Resize the icon, using px instead of rem, because when using rem the icon looks way bigger */ + &::after { + width: 18px; + height: 11px; + margin-bottom: 0; + background-size: 11px; + padding-left: 0; + } +} diff --git a/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.icons.scss b/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.icons.scss index f0cdc05c9d..84f4e8a90b 100644 --- a/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.icons.scss +++ b/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.icons.scss @@ -6,7 +6,7 @@ background-image: svg(hc-get-icons($icon, $icon-color)); } @else { - $icon-color: map-get(map-get($hc-colorful-pairings, 'ocean'), $color); + $icon-color: map-get(map-get($hc-colorful-pairings, 'cardinal'), $color); background-image: svg(hc-get-icons($icon, $icon-color)); .hc-pairing-ocean & { diff --git a/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.links.scss b/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.links.scss index e089ccf640..75c5115d2e 100644 --- a/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.links.scss +++ b/docroot/themes/humsci/humsci_basic/src/scss/tools/_mixins.links.scss @@ -53,7 +53,10 @@ color: var(--palette--tertiary); @include hb-themes(('colorful', 'airy')) { - .hc-pairing-ocean .hb-well & { + // Ocean, canyon and mountain color pairing override when link is inside a hb-well. + .hc-pairing-ocean .hb-well &, + .hc-pairing-canyon .hb-well &, + .hc-pairing-mountain .hb-well & { color: var(--palette--primary); } } diff --git a/docroot/themes/humsci/humsci_basic/src/scss/utilities/_wysiwyg-text-area.scss b/docroot/themes/humsci/humsci_basic/src/scss/utilities/_wysiwyg-text-area.scss index 5772947778..0f020638bb 100644 --- a/docroot/themes/humsci/humsci_basic/src/scss/utilities/_wysiwyg-text-area.scss +++ b/docroot/themes/humsci/humsci_basic/src/scss/utilities/_wysiwyg-text-area.scss @@ -308,8 +308,7 @@ blockquote:nth-child(n) { } a[href*="//"].hs-external-link, -.hs-external-link a[href*="//"] -{ +.hs-external-link a[href*="//"] { @include hb-link--inline; @include hb-external-link-icon; diff --git a/docroot/themes/humsci/su_humsci_admin/scss/humsci_admin.portal.scss b/docroot/themes/humsci/su_humsci_admin/scss/humsci_admin.portal.scss index e7f2165367..e921227738 100644 --- a/docroot/themes/humsci/su_humsci_admin/scss/humsci_admin.portal.scss +++ b/docroot/themes/humsci/su_humsci_admin/scss/humsci_admin.portal.scss @@ -16,32 +16,6 @@ padding: 30px; } -.simplesamlphp-auth-login-link { - display: block; - font-size: 32px; - box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); - padding: 10px; - position: relative; - color: #b1040e; - - /* stylelint-disable font-family-no-missing-generic-family-keyword */ - &::after { - content: '\f054'; - font-family: 'Font Awesome 5 Free'; - font-weight: 900; - font-style: normal; - font-variant: normal; - text-rendering: auto; - line-height: 1; - color: #9e9e9e; - position: absolute; - top: calc(50% - 10px); - font-size: 20px; - right: 20px; - } - /* stylelint-enable font-family-no-missing-generic-family-keyword */ -} - h1 { margin: 2.1rem 0 1.68rem; font-weight: 200; diff --git a/docroot/themes/humsci/su_humsci_gin_admin/dist/su_humsci_gin_admin.portal.css b/docroot/themes/humsci/su_humsci_gin_admin/dist/su_humsci_gin_admin.portal.css index c3655546ce..991f328565 100644 --- a/docroot/themes/humsci/su_humsci_gin_admin/dist/su_humsci_gin_admin.portal.css +++ b/docroot/themes/humsci/su_humsci_gin_admin/dist/su_humsci_gin_admin.portal.css @@ -1 +1,33 @@ -.content-header{background:transparent;text-align:center}.content-header,.layout-container{max-width:600px;margin:0 auto}.user-login-form h1{display:none}.simplesamlphp-auth-login-link{display:inline-block;font-size:32px;padding:30px 0;position:relative;color:#b1040e}.simplesamlphp-auth-login-link::after{content:'\f054';font-family:'Font Awesome 5 Free';font-weight:900;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;color:#9e9e9e;position:absolute;top:calc(50% - 10px);font-size:20px;right:-20px} +.content-header { + background: transparent; + text-align: center; +} +.content-header, +.layout-container { + max-width: 600px; + margin: 0 auto; +} +.user-login-form h1 { + display: none; +} +.samlauth-login { + display: inline-block; + font-size: 32px; + padding: 30px 0; + position: relative; + color: #b1040e; +} +.samlauth-login::after { + content: "\f054"; + font-family: "Font Awesome 5 Free"; + font-weight: 900; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; + color: #9e9e9e; + position: absolute; + top: calc(50% - 10px); + font-size: 20px; + right: -20px; +} diff --git a/lando/README.md b/lando/README.md index 7d0df14d0e..97d58f6c0e 100644 --- a/lando/README.md +++ b/lando/README.md @@ -129,13 +129,16 @@ If you want to use [Lando](https://lando.dev/) for local development, here are s 127.0.0.1 womensleadershipcp.suhumsci.loc ``` -4. Build your containers: `lando rebuild` - * Note: You should then see a list a APPSERVER URLS. A green URL signifies the step 3 worked correctly, and you'll be able to access the site in your browser (you'll see errors until you complete all the steps). If you see a red URL, go back to step 3. TODO: someone with a working proxy system should confirm this. Can you get green URLs after this step, or will it only work after you have a database? +4. Trust the Lando Development certificate. [Trusting the CA](https://docs.lando.dev/config/security.html#trusting-the-ca) + * Note: If you've tried to trust the certificate but are still seeing browser warnings you may need to remove the proxy with `docker rm -f landoproxyhyperion5000gandalfedition_proxy_1` and then `lando rebuild` your app. +5. Build your containers: `lando rebuild` + * Note: You should then see a list a APPSERVER URLS. A green URL with a 302 or 200 status signifies the step 3 worked correctly, and you'll be able to access the site in your browser (you'll see errors until you complete all the steps). If you see a red URL, go back to step 3. + * If the APPSERVER URLS show a 404 status run `lando poweroff`, delete the proxy server with `docker rm -f landoproxyhyperion5000gandalfedition_proxy_1`, and restart it with `lando start`. There's an issue with too many APPSERVER URLS causing a failure in the proxy setup. This step seems to work around that. * Watch for [`sed` errors](#sed-error-when-docker-uses-virtiofs) -5. Run `lando blt drupal:sync --site=SITE_ALIAS` to pull down a copy of the live database and files for the site you wish to work on (alternatively [pull a db from staging or dev](#syncing-from-staging)). The `SITE_ALIAS` is the site alias and can be found in the `multisites` section of `blt/blt.yml`. In most cases, it matches the name in the local domain, with dashes replaced with underscores (`hs-traditional` → `hs_traditional`). -6. Run `lando drush @[SITE_ALIAS].local uli` to log in as user:1 (Example: `lando drush @music.local uli`). It will give you a URL like `http://hs-traditional.suhumsci.loc/user/reset/1/12345/abcd9876/login` This should also run the front-end build. -7. If you have issues, see [Troubleshooting](#troubleshooting). -8. Front-end engineers, return to the main documentation for [front-end build and watch commands](../README.md#builds). +6. Run `lando blt drupal:sync --site=SITE_ALIAS` to pull down a copy of the live database and files for the site you wish to work on (alternatively [pull a db from staging or dev](#syncing-from-staging)). The `SITE_ALIAS` is the site alias and can be found in the `multisites` section of `blt/blt.yml`. In most cases, it matches the name in the local domain, with dashes replaced with underscores (`hs-traditional` → `hs_traditional`). +7. Run `lando drush @[SITE_ALIAS].local uli` to log in as user:1 (Example: `lando drush @music.local uli`). It will give you a URL like `http://hs-traditional.suhumsci.loc/user/reset/1/12345/abcd9876/login` This should also run the front-end build. +8. If you have issues, see [Troubleshooting](#troubleshooting). +9. Front-end engineers, return to the main documentation for [front-end build and watch commands](../README.md#builds). ## Common commands diff --git a/patches/contrib/block_class/60.patch b/patches/contrib/block_class/60.patch new file mode 100644 index 0000000000..375943cbdb --- /dev/null +++ b/patches/contrib/block_class/60.patch @@ -0,0 +1,30 @@ +From d7b41e153f421a416fdd66572a6767efd14f8e8a Mon Sep 17 00:00:00 2001 +From: sandippoddar +Date: Tue, 7 Jan 2025 12:36:41 +0530 +Subject: [PATCH] Issue #3497768: Click JavaScript to close details causes + modals to scroll unnecessarily + +--- + js/block-class.js | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/js/block-class.js b/js/block-class.js +index 9eedf9b..343285c 100644 +--- a/js/block-class.js ++++ b/js/block-class.js +@@ -19,10 +19,10 @@ + $('.show-items-used').css( "display", "none" ); + + // Collapse the details field when the Modal is open. +- $('.replaced-id-details').find('summary').trigger( "click" ); ++ $('.replaced-id-details').removeAttr("open"); + + // Collapse the attribute as well on this scenario. +- $('.attribute-details').find('summary').trigger( "click" ); ++ $('.attribute-details').removeAttr("open"); + + } + +-- +GitLab + diff --git a/patches/shield-undefined_array_key_explode-3479117.patch b/patches/shield-undefined_array_key_explode-3479117.patch new file mode 100644 index 0000000000..595ec2fe5f --- /dev/null +++ b/patches/shield-undefined_array_key_explode-3479117.patch @@ -0,0 +1,27 @@ +diff --git a/src/ShieldMiddleware.php b/src/ShieldMiddleware.php +index f2a0b56..eb9d993 100644 +--- a/src/ShieldMiddleware.php ++++ b/src/ShieldMiddleware.php +@@ -209,10 +209,20 @@ class ShieldMiddleware implements HttpKernelInterface { + $input_pass = $request->server->get('PHP_AUTH_PW'); + } + elseif (!empty($request->server->get('HTTP_AUTHORIZATION'))) { +- [$input_user, $input_pass] = explode(':', base64_decode(substr($request->server->get('HTTP_AUTHORIZATION'), 6)), 2); ++ $decoded = base64_decode(substr($request->server->get('HTTP_AUTHORIZATION'), 6)); ++ $credentials = explode(':', $decoded, 2); ++ ++ if (count($credentials) === 2) { ++ [$input_user, $input_pass] = $credentials; ++ } + } + elseif (!empty($request->server->get('REDIRECT_HTTP_AUTHORIZATION'))) { +- [$input_user, $input_pass] = explode(':', base64_decode(substr($request->server->get('REDIRECT_HTTP_AUTHORIZATION'), 6)), 2); ++ $decoded = base64_decode(substr($request->server->get('REDIRECT_HTTP_AUTHORIZATION'), 6)); ++ $credentials = explode(':', $decoded, 2); ++ ++ if (count($credentials) === 2) { ++ [$input_user, $input_pass] = $credentials; ++ } + } + if (isset($input_user) && $input_user === $user && hash_equals($pass, $input_pass)) { + $request->headers->set('X-Shield-Status', 'authenticated');