diff --git a/CHANGELOG.md b/CHANGELOG.md index dce242a5..ae1ccdad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file. +## [9.7.11](https://github.com/UN-OCHA/gms-site/compare/v9.7.10...v9.7.11) (2025-02-18) + +### Chores + +* Bump block_class to supported version 4. ([3fd3e9](https://github.com/UN-OCHA/gms-site/commit/3fd3e99e693dc258f834e9cd68e192ba095e454f)) +* Oops. Drop the codemirror editor settings. ([1a44e2](https://github.com/UN-OCHA/gms-site/commit/1a44e235de5f0f8fbffafed550c795d92a90918b)) +* Remove codemirror_editor sensor config. ([75ec1f](https://github.com/UN-OCHA/gms-site/commit/75ec1fbec6afd6bc8ba2923a14c7b90e82d4bc27)) +* Remove component_library module and dependencies (entity, js-cookie) it has. ([05bddb](https://github.com/UN-OCHA/gms-site/commit/05bddbf0627e6137e2ae5f67fc9ebf6e1f7f6e3e)) +* Remove config_filter module ([b4e068](https://github.com/UN-OCHA/gms-site/commit/b4e068f52a4f5c6f8081de7d84832fd1e1d81052)) +* Remove patch and update user_expire module ([bc781c](https://github.com/UN-OCHA/gms-site/commit/bc781cc2a4b1d90db65331a2f111e5bf517bd042)) +* Uninstall entity and js_cookie modules, as component_library which they need is gone. ([fccdd2](https://github.com/UN-OCHA/gms-site/commit/fccdd29f90cc27bab53c30fc5da3713a2f3d31b2)) +* Uninstall the codemirror_editor module. ([88822c](https://github.com/UN-OCHA/gms-site/commit/88822caf8902e7f66983247eade323250720cba1)) +* Update all outdated drupal/* unocha/* drush/* weitzman/drupal-test-traits packages. ([b30c8d](https://github.com/UN-OCHA/gms-site/commit/b30c8d68a1be500633d510b8320cd64d5f83c488), [eda682](https://github.com/UN-OCHA/gms-site/commit/eda682c847ae07bd47e1460cb10fcae5814809cc), [df417f](https://github.com/UN-OCHA/gms-site/commit/df417f461b56c011ca19bf34824d00b820d545d9), [48e33e](https://github.com/UN-OCHA/gms-site/commit/48e33ed0635cb410253edef7d611fa376854636a)) + ## [9.7.10](https://github.com/UN-OCHA/gms-site/compare/v9.7.9...v9.7.10) (2025-01-14) ### Chores diff --git a/PATCHES/3416368-error-not-caught-extra.patch b/PATCHES/3416368-error-not-caught-extra.patch deleted file mode 100644 index 2d191a2e..00000000 --- a/PATCHES/3416368-error-not-caught-extra.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/src/AmazonSesHandler.php b/src/AmazonSesHandler.php -index 28342d8..103829c 100644 ---- a/src/AmazonSesHandler.php -+++ b/src/AmazonSesHandler.php -@@ -126,6 +126,12 @@ class AmazonSesHandler implements AmazonSesHandlerInterface { - */ - protected function getSleepTime() { - $results = $this->getSendQuota(); -+ -+ // Avoid a division by zero if the quota call failed. -+ if (empty($results)) { -+ return 0; -+ } -+ - $per_second = ceil(1000000 / $results['MaxSendRate']); - - return intval($per_second); diff --git a/PATCHES/3416368-error-not-caught-queue.patch b/PATCHES/3416368-error-not-caught-queue.patch deleted file mode 100644 index 257546a5..00000000 --- a/PATCHES/3416368-error-not-caught-queue.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/src/Plugin/QueueWorker/AmazonSesMailQueue.php b/src/Plugin/QueueWorker/AmazonSesMailQueue.php -index dc41050..fdc7af3 100644 ---- a/src/Plugin/QueueWorker/AmazonSesMailQueue.php -+++ b/src/Plugin/QueueWorker/AmazonSesMailQueue.php -@@ -29,7 +29,12 @@ class AmazonSesMailQueue extends QueueWorkerBase implements ContainerFactoryPlug - $plugin_definition - ); - -- $instance->setHandler($container->get('amazon_ses.handler')); -+ // Only set the handler if queueing is enabled to avoid an error when -+ // trying to run without config. -+ $enabled = \Drupal::config('amazon_ses.settings')->get('queue'); -+ if ($enabled) { -+ $instance->setHandler($container->get('amazon_ses.handler')); -+ } - - return $instance; - } diff --git a/PATCHES/3416368-error-not-caught.patch b/PATCHES/3416368-error-not-caught.patch deleted file mode 100644 index ebd16fa8..00000000 --- a/PATCHES/3416368-error-not-caught.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff --git a/src/AmazonSesHandler.php b/src/AmazonSesHandler.php -index ed8882c..cb2fb01 100644 ---- a/src/AmazonSesHandler.php -+++ b/src/AmazonSesHandler.php -@@ -194,9 +194,16 @@ class AmazonSesHandler implements AmazonSesHandlerInterface { - * {@inheritdoc} - */ - public function getSendQuota() { -- $result = $this->client->getAccount(); -+ $quota = []; - -- return array_map('number_format', $result['SendQuota']); -+ try { -+ $result = $this->client->getAccount(); -+ $quota = array_map('number_format', $result['SendQuota']); -+ } catch (SesV2Exception $e) { -+ $this->logger->error($e->getMessage()); -+ $this->messenger->addError($this->t('Unable to retrieve quota.')); -+ } -+ return $quota; - } - - /** -diff --git a/src/Controller/AmazonSesController.php b/src/Controller/AmazonSesController.php -index 541838c..831d38d 100644 ---- a/src/Controller/AmazonSesController.php -+++ b/src/Controller/AmazonSesController.php -@@ -29,33 +29,38 @@ class AmazonSesController extends ControllerBase { - * A render array to build the page. - */ - public function statistics() { -+ $statistics = []; -+ - if (!$this->verifyClient()) { -- return []; -+ return $statistics; - } - -- $quota = $this->handler->getSendQuota(); -- -- return [ -- 'quota' => [ -- '#type' => 'details', -- '#title' => $this->t('Daily sending limits'), -- '#open' => TRUE, -- 'sending_quota' => [ -- '#markup' => $this->t('Quota: @max_send', [ -- '@max_send' => $quota['Max24HourSend'], -- ]) . '
', -- ], -- 'sent_mail' => [ -- '#markup' => $this->t('Sent: @sent_last', [ -- '@sent_last' => $quota['SentLast24Hours'], -- ]) . '
', -- ], -- 'send_rate' => [ -- '#markup' => $this->t('Maximum Send Rate: @send_rate -- emails/second', ['@send_rate' => $quota['MaxSendRate']]), -+ $result = $this->handler->getSendQuota(); -+ -+ if (!empty($result)) { -+ $statistics = [ -+ 'quota' => [ -+ '#type' => 'details', -+ '#title' => $this->t('Daily sending limits'), -+ '#open' => TRUE, -+ 'sending_quota' => [ -+ '#markup' => $this->t('Quota: @max_send', [ -+ '@max_send' => $result['Max24HourSend'], -+ ]) . '
', -+ ], -+ 'sent_mail' => [ -+ '#markup' => $this->t('Sent: @sent_last', [ -+ '@sent_last' => $result['SentLast24Hours'], -+ ]) . '
', -+ ], -+ 'send_rate' => [ -+ '#markup' => $this->t('Maximum Send Rate: @send_rate -+ emails/second', ['@send_rate' => $result['MaxSendRate']]), -+ ], - ], -- ], -- ]; -- } -+ ]; -+ } - -+ return $statistics; -+ } - } diff --git a/PATCHES/amazon_ses-cron-queue-3417090-8.patch b/PATCHES/amazon_ses-cron-queue-3417090-8.patch new file mode 100644 index 00000000..93044ca9 --- /dev/null +++ b/PATCHES/amazon_ses-cron-queue-3417090-8.patch @@ -0,0 +1,23 @@ +diff --git a/amazon_ses.module b/amazon_ses.module +new file mode 100644 +index 0000000..b778644 +--- /dev/null ++++ b/amazon_ses.module +@@ -0,0 +1,17 @@ ++get('queue'); ++ ++ if (!$enabled && isset($queues['amazon_ses_mail_queue']['cron'])) { ++ unset($queues['amazon_ses_mail_queue']['cron']); ++ } ++} diff --git a/PATCHES/user_expire/customize-notification-email.patch b/PATCHES/user_expire/customize-notification-email.patch deleted file mode 100644 index fc679575..00000000 --- a/PATCHES/user_expire/customize-notification-email.patch +++ /dev/null @@ -1,179 +0,0 @@ -diff --git a/config/install/user_expire.settings.yml b/config/install/user_expire.settings.yml -index 62f9e8c7d5a064d87448b0faf5811a08709370c7..ea9fb144d2add8031bcafc516fb46cca209eb6c9 100644 ---- a/config/install/user_expire.settings.yml -+++ b/config/install/user_expire.settings.yml -@@ -1,3 +1,7 @@ - frequency: 172800 - offset: 604800 - user_expire_roles: {} -+send_mail: true -+mail: -+ subject: "[site:name]: Account expiration warning" -+ body: "Hello [user:display-name]\r\n\r\nBecause you have not logged in recently, your account at [site:name] will be blocked in the near future. If you still use this site, please log in [site:login-url] to prevent your account being blocked.\r\n\r\n-- [site:name] team" -diff --git a/config/schema/user_expire.schema.yml b/config/schema/user_expire.schema.yml -index a46bc68eeea8b41fa1e7bde72008daf77d54032d..be0c3fca4e7604994e5c0070942ef79920eab454 100644 ---- a/config/schema/user_expire.schema.yml -+++ b/config/schema/user_expire.schema.yml -@@ -7,9 +7,21 @@ user_expire.settings: - frequency: - type: integer - label: 'Frequency time in seconds' -+ mail: -+ type: mapping -+ mapping: -+ subject: -+ type: string -+ label: 'Subject line for the notification email' -+ body: -+ type: string -+ label: 'Body for the notification email' - offset: - type: integer - label: 'Warning offset time in seconds' -+ send_mail: -+ type: boolean -+ label: 'Flag that enables or disables expiry emails' - user_expire_roles: - type: sequence - label: 'Roles and expire value' -diff --git a/src/Form/UserExpireSettingsForm.php b/src/Form/UserExpireSettingsForm.php -index f7824c09ad10612818c2cc3e2cc2a85e590377a7..cd2c4e515d0887df9a70fe0c7c72bc599de84033 100644 ---- a/src/Form/UserExpireSettingsForm.php -+++ b/src/Form/UserExpireSettingsForm.php -@@ -109,6 +109,50 @@ class UserExpireSettingsForm extends ConfigFormBase { - ]; - } - -+ // Enable or disable email notifications. -+ $form['send_mail'] = [ -+ '#type' => 'checkbox', -+ '#title' => $this->t('Send notification emails'), -+ '#default_value' => $config->get('send_mail') ?: TRUE, -+ '#description' => $this->t('Send a notification email to the user, starting at the defined offset time before account expiry.'), -+ ]; -+ -+ // Notification email template. -+ $form['mail'] = [ -+ '#type' => 'fieldset', -+ '#title' => $this->t('Notification email'), -+ ]; -+ -+ $form['mail']['settings'] = [ -+ '#type' => 'container', -+ '#states' => [ -+ // Hide the additional settings when this email is disabled. -+ 'invisible' => [ -+ 'input[name="send_mail"]' => ['checked' => FALSE], -+ ], -+ ], -+ ]; -+ -+ $form['mail']['settings']['notification_subject'] = [ -+ '#type' => 'textfield', -+ '#title' => $this->t('Subject'), -+ '#default_value' => $config->get('mail.subject') ?: '', -+ '#description' => $this->t('Subject line for the notification email.'), -+ '#maxlength' => 180, -+ ]; -+ -+ $form['mail']['settings']['notification_body'] = [ -+ '#type' => 'textarea', -+ '#title' => $this->t('Body'), -+ '#default_value' => $config->get('mail.body') ?: '', -+ '#description' => $this->t('Body for the notification email.'), -+ '#rows' => 15, -+ ]; -+ -+ $form['mail']['settings']['help'] = [ -+ '#markup' => $this->t('Available token variables for use in the email are: [site:name], [site:url], [site:mail], [user:display-name], [user:account-name], [user:mail], [site:login-url], [site:url-brief], [user:edit-url], [user:one-time-login-url], [user:cancel-url]'), -+ ]; -+ - return parent::buildForm($form, $form_state); - } - -@@ -160,6 +204,13 @@ class UserExpireSettingsForm extends ConfigFormBase { - } - - $config->set('user_expire_roles', $rules); -+ -+ // The notification email. -+ $config->set('send_mail', $form_state->getValue('send_mail')); -+ -+ $config->set('mail.subject', $form_state->getValue('notification_subject')); -+ $config->set('mail.body', $form_state->getValue('notification_body')); -+ - $config->save(); - } - -diff --git a/user_expire.module b/user_expire.module -index d4dcd8ba28b51ee8f54a7626d8b10443244520d9..9365c5db3b87e88dd03611a03656370e2b4f99cb 100644 ---- a/user_expire.module -+++ b/user_expire.module -@@ -5,6 +5,7 @@ - * Main module file for User expire module. - */ - -+use Drupal\Component\Render\PlainTextOutput; - use Drupal\Core\Database\Query\Condition; - use Drupal\Core\Database\StatementInterface; - use Drupal\Core\Datetime\DrupalDateTime; -@@ -332,12 +333,15 @@ function user_expire_expire_by_role_warning(): void { - ]); - } - else { -- $logger->info('Warning about expiring account @name by role', ['@name' => $account->getAccountName()]); -- \Drupal::service('plugin.manager.mail')->mail('user_expire', 'expiration_warning', $account->getEmail(), $account->getPreferredLangcode(), -- [ -- 'account' => $account, -- ] -- ); -+ // Send a notification email if configured to do so. -+ if ($config->get('send_mail')) { -+ $logger->info('Sending warning about expiring account @name by role', ['@name' => $account->getAccountName()]); -+ \Drupal::service('plugin.manager.mail')->mail('user_expire', 'expiration_warning', $account->getEmail(), $account->getPreferredLangcode(), -+ [ -+ 'account' => $account, -+ ] -+ ); -+ } - } - } - } -@@ -439,20 +443,22 @@ function user_expire_get_role_rules(): mixed { - */ - function user_expire_mail($key, &$message, $params): void { - if ($key == 'expiration_warning') { -- $site_name = \Drupal::config('system.site')->get('name'); -- // The subject. -- $message['subject'] = t('@site_name: Account expiration warning', ['@site_name' => $site_name]); -- // The body. -- $message['body'][] = t('Hello @user', ['@user' => $params['account']->getAccountName()]); -- // An empty string gives a newline. -- $message['body'][] = ''; -- $message['body'][] = t('Because you have not logged in recently, your account at @site_name will be blocked in the near future. If you still use this site, please log in @login_url to avoid having your account blocked.', -- [ -- '@site_name' => $site_name, -- '@login_url' => Url::fromRoute('entity.user.canonical', ['user' => \Drupal::currentUser()->id()], ['absolute' => TRUE])->toString(), -- ] -- ); -- $message['body'][] = ''; -- $message['body'][] = t('Thanks, @site_name', ['@site_name' => $site_name]); -+ $token_service = \Drupal::token(); -+ $language_manager = \Drupal::languageManager(); -+ $langcode = $message['langcode']; -+ $variables = ['user' => $params['account']]; -+ -+ $language = $language_manager->getLanguage($params['account']->getPreferredLangcode()); -+ $original_language = $language_manager->getConfigOverrideLanguage(); -+ $language_manager->setConfigOverrideLanguage($language); -+ -+ $config_factory = \Drupal::configFactory(); -+ $config = $config_factory->get('user_expire.settings'); -+ -+ $token_options = ['langcode' => $langcode, 'callback' => 'user_mail_tokens', 'clear' => TRUE]; -+ $message['subject'] .= PlainTextOutput::renderFromHtml($token_service->replace($config->get('mail.subject'), $variables, $token_options)); -+ $message['body'][] = $token_service->replace($config->get('mail.body'), $variables, $token_options); -+ -+ $language_manager->setConfigOverrideLanguage($original_language); - } - } diff --git a/composer.json b/composer.json index 9c1668fc..20bb0999 100644 --- a/composer.json +++ b/composer.json @@ -92,7 +92,7 @@ } ], "require": { - "php": ">=8.2", + "php": ">=8.3", "ckeditor-plugin/colorbutton": "^4.11", "ckeditor-plugin/fakeobjects": "^4.16.2", "ckeditor-plugin/iframe": "^4.16.2", @@ -108,15 +108,13 @@ "drupal/auto_config_form": "^1.0", "drupal/aws": "dev-2.0.x", "drupal/back_to_top": "^3.0", - "drupal/block_class": "^2.0", + "drupal/block_class": "^4", "drupal/ckeditor_config": "^3.1", "drupal/ckeditor_font": "^1.2", "drupal/ckeditor_iframe": "^2.1", "drupal/colorbutton": "^1.3", - "drupal/component_library": "^1.0.0-alpha", "drupal/components": "^3.0@beta", "drupal/conditional_fields": "^4.0@alpha", - "drupal/config_filter": "^2", "drupal/config_split": "^2.0", "drupal/config_update": "^2.0@alpha", "drupal/contact_storage": "^1.2", @@ -171,7 +169,7 @@ "drupal/token": "^1.9", "drupal/token_filter": "^2.0", "drupal/tome": "^1.4", - "drupal/user_expire": "^1.0", + "drupal/user_expire": "^2", "drupal/username_enumeration_prevention": "^1.3", "drupal/userprotect": "^1.1", "drupal/video_embed_field": "^2.4", @@ -310,5 +308,5 @@ "@git-hooks" ] }, - "version": "9.7.10" + "version": "9.7.11" } diff --git a/composer.lock b/composer.lock index 89752565..b894e789 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ee2fd4a0be17839aaa3bad79e7f611e0", + "content-hash": "089da733553411b3ab4c8e02106fbced", "packages": [ { "name": "asm89/stack-cors", @@ -118,16 +118,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.336.11", + "version": "3.339.12", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "442039c766a82f06ecfecb0ac2c610d6aaba228d" + "reference": "a63e79c15a972c54bf015a16cce3f3572e0c8221" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/442039c766a82f06ecfecb0ac2c610d6aaba228d", - "reference": "442039c766a82f06ecfecb0ac2c610d6aaba228d", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a63e79c15a972c54bf015a16cce3f3572e0c8221", + "reference": "a63e79c15a972c54bf015a16cce3f3572e0c8221", "shasum": "" }, "require": { @@ -135,31 +135,30 @@ "ext-json": "*", "ext-pcre": "*", "ext-simplexml": "*", - "guzzlehttp/guzzle": "^6.5.8 || ^7.4.5", - "guzzlehttp/promises": "^1.4.0 || ^2.0", - "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", - "mtdowling/jmespath.php": "^2.6", - "php": ">=7.2.5", - "psr/http-message": "^1.0 || ^2.0" + "guzzlehttp/guzzle": "^7.4.5", + "guzzlehttp/promises": "^2.0", + "guzzlehttp/psr7": "^2.4.5", + "mtdowling/jmespath.php": "^2.8.0", + "php": ">=8.1", + "psr/http-message": "^2.0" }, "require-dev": { "andrewsville/php-token-reflection": "^1.4", "aws/aws-php-sns-message-validator": "~1.0", "behat/behat": "~3.0", - "composer/composer": "^1.10.22", + "composer/composer": "^2.7.8", "dms/phpunit-arraysubset-asserts": "^0.4.0", "doctrine/cache": "~1.4", "ext-dom": "*", "ext-openssl": "*", "ext-pcntl": "*", "ext-sockets": "*", - "nette/neon": "^2.3", - "paragonie/random_compat": ">= 2", "phpunit/phpunit": "^5.6.3 || ^8.5 || ^9.5", - "psr/cache": "^1.0 || ^2.0 || ^3.0", - "psr/simple-cache": "^1.0 || ^2.0 || ^3.0", - "sebastian/comparator": "^1.2.3 || ^4.0", - "yoast/phpunit-polyfills": "^1.0" + "psr/cache": "^2.0 || ^3.0", + "psr/simple-cache": "^2.0 || ^3.0", + "sebastian/comparator": "^1.2.3 || ^4.0 || ^5.0", + "symfony/filesystem": "^v6.4.0 || ^v7.1.0", + "yoast/phpunit-polyfills": "^2.0" }, "suggest": { "aws/aws-php-sns-message-validator": "To validate incoming SNS notifications", @@ -208,11 +207,11 @@ "sdk" ], "support": { - "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", + "forum": "https://github.com/aws/aws-sdk-php/discussions", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.336.11" + "source": "https://github.com/aws/aws-sdk-php/tree/3.339.12" }, - "time": "2025-01-08T19:06:59+00:00" + "time": "2025-02-12T19:08:43+00:00" }, { "name": "chi-teck/drupal-code-generator", @@ -1602,28 +1601,28 @@ }, { "name": "drupal/amazon_ses", - "version": "3.0.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/amazon_ses.git", - "reference": "3.0.1" + "reference": "3.1.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/amazon_ses-3.0.1.zip", - "reference": "3.0.1", - "shasum": "2dbb10219056e21f0bb60d37df5b459caea635e2" + "url": "https://ftp.drupal.org/files/projects/amazon_ses-3.1.0.zip", + "reference": "3.1.0", + "shasum": "0a598eee62c85d7ee8cbb55ad43ce00ece217bae" }, "require": { "aws/aws-sdk-php": "^3.54", "drupal/aws": "^2.0", - "drupal/core": "^9.1 || ^10" + "drupal/core": "^9.1 || ^10 || ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "3.0.1", - "datestamp": "1671308264", + "version": "3.1.0", + "datestamp": "1737386574", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -1882,17 +1881,17 @@ }, { "name": "drupal/block_class", - "version": "2.0.12", + "version": "4.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/block_class.git", - "reference": "2.0.12" + "reference": "4.0.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/block_class-2.0.12.zip", - "reference": "2.0.12", - "shasum": "cc3945f8038bcc9bb48eff897df332aa952d62e6" + "url": "https://ftp.drupal.org/files/projects/block_class-4.0.0.zip", + "reference": "4.0.0", + "shasum": "4ed97a78db9b52f28e46d377947fecfb3a8c9580" }, "require": { "drupal/core": "^9 || ^10 || ^11" @@ -1900,8 +1899,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "2.0.12", - "datestamp": "1723243074", + "version": "4.0.0", + "datestamp": "1730640283", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2006,8 +2005,8 @@ "version": "1.0.2", "datestamp": "1695740655", "security-coverage": { - "status": "covered", - "message": "Covered by Drupal's security advisory policy" + "status": "not-covered", + "message": "Project has not opted into security advisory coverage!" } } }, @@ -2016,10 +2015,6 @@ "GPL-2.0-or-later" ], "authors": [ - { - "name": "dczepierga", - "homepage": "https://www.drupal.org/user/911466" - }, { "name": "hass", "homepage": "https://www.drupal.org/user/85918" @@ -2037,13 +2032,9 @@ "homepage": "https://www.drupal.org/user/1078742" }, { - "name": "Magnus", + "name": "magnus", "homepage": "https://www.drupal.org/user/73919" }, - { - "name": "mkesicki", - "homepage": "https://www.drupal.org/user/922884" - }, { "name": "nod_", "homepage": "https://www.drupal.org/user/598310" @@ -2057,7 +2048,7 @@ "homepage": "https://www.drupal.org/user/2793801" }, { - "name": "Wim Leers", + "name": "wim leers", "homepage": "https://www.drupal.org/user/99777" }, { @@ -2129,28 +2120,28 @@ }, { "name": "drupal/ckeditor_font", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ckeditor_font.git", - "reference": "8.x-1.4" + "reference": "8.x-1.5" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "de74f849128d195ee9866aa9073aff4122394e9b" + "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.5.zip", + "reference": "8.x-1.5", + "shasum": "41f76c63fd5c2a417c48d7999d138dc5629788b8" }, "require": { "drupal-ckeditor-libraries-group/font": "^4.13.1", "drupal/ckeditor": "*", - "drupal/core": "^9.3 || ^10" + "drupal/core": "^9.4 || ^10 || ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1677594927", + "version": "8.x-1.5", + "datestamp": "1736732976", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2265,74 +2256,6 @@ "issues": "https://drupal.org/project/issues/ckeditor_iframe" } }, - { - "name": "drupal/codemirror_editor", - "version": "1.10.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/codemirror_editor.git", - "reference": "8.x-1.10" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/codemirror_editor-8.x-1.10.zip", - "reference": "8.x-1.10", - "shasum": "c6c28d04f4501bcdeaf516aad25d397d63007b40" - }, - "require": { - "drupal/core": "^9.3 || ^10", - "drupal/js_cookie": "^1.0", - "ext-json": "*", - "php": ">=7.1" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-1.10", - "datestamp": "1724672039", - "security-coverage": { - "status": "covered", - "message": "Covered by Drupal's security advisory policy" - } - } - }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0+" - ], - "authors": [ - { - "name": "anybody", - "homepage": "https://www.drupal.org/user/291091" - }, - { - "name": "chi", - "homepage": "https://www.drupal.org/user/556138" - }, - { - "name": "chris burge", - "homepage": "https://www.drupal.org/user/1826152" - }, - { - "name": "grevil", - "homepage": "https://www.drupal.org/user/3668491" - }, - { - "name": "heddn", - "homepage": "https://www.drupal.org/user/1463982" - } - ], - "description": "This module integrates the CodeMirror editor library into Drupal.", - "homepage": "https://www.drupal.org/project/codemirror_editor", - "keywords": [ - "CodeMirror", - "Drupal" - ], - "support": { - "source": "https://git.drupalcode.org/project/codemirror_editor", - "issues": "https://www.drupal.org/project/issues/codemirror_editor" - } - }, { "name": "drupal/colorbutton", "version": "1.5.0", @@ -2392,80 +2315,6 @@ "issues": "http://drupal.org/project/issues/colorbutton" } }, - { - "name": "drupal/component_library", - "version": "1.0.0-alpha4", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/component_library.git", - "reference": "1.0.0-alpha4" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/component_library-1.0.0-alpha4.zip", - "reference": "1.0.0-alpha4", - "shasum": "64240ae4ba4c9fabb341e8b8420784f9d412d835" - }, - "require": { - "drupal/codemirror_editor": "^1.5", - "drupal/core": "^9 || ^10", - "drupal/entity": "^1.0" - }, - "conflict": { - "drupal/core": "<9.0" - }, - "require-dev": { - "drupal/entity": "*", - "drupal/group": "*" - }, - "suggest": { - "drupal/ui_patterns": "Integration for module to place patterns" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "1.0.0-alpha4", - "datestamp": "1701181995", - "security-coverage": { - "status": "not-covered", - "message": "Project has not opted into security advisory coverage!" - } - } - }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Lucas D Hedding", - "homepage": "https://www.drupal.org/u/heddn", - "role": "Maintainer" - }, - { - "name": "Contributors", - "homepage": "https://www.drupal.org/node/3208960/committers", - "role": "Contributors" - }, - { - "name": "heddn", - "homepage": "https://www.drupal.org/user/1463982" - }, - { - "name": "Tim Bozeman", - "homepage": "https://www.drupal.org/user/2241356" - } - ], - "description": "Build a library of components", - "homepage": "https://www.drupal.org/project/component_library", - "keywords": [ - "Drupal" - ], - "support": { - "source": "https://git.drupalcode.org/component_library", - "issues": "https://www.drupal.org/project/issues/component_library" - } - }, { "name": "drupal/components", "version": "3.1.0", @@ -2616,88 +2465,19 @@ "issues": "https://www.drupal.org/project/issues/conditional_fields" } }, - { - "name": "drupal/config_filter", - "version": "2.7.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/config_filter.git", - "reference": "8.x-2.7" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/config_filter-8.x-2.7.zip", - "reference": "8.x-2.7", - "shasum": "7fe7161b93c7e24c6db135f1cf82d144bef66e50" - }, - "require": { - "drupal/core": "^8.8 || ^9 || ^10 || ^11" - }, - "conflict": { - "drush/drush": "<10" - }, - "suggest": { - "drupal/config_split": "Split site configuration for different environments." - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-2.7", - "datestamp": "1727472458", - "security-coverage": { - "status": "covered", - "message": "Covered by Drupal's security advisory policy" - } - } - }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Fabian Bircher", - "homepage": "https://www.drupal.org/u/bircher", - "email": "opensource@fabianbircher.com", - "role": "Maintainer" - }, - { - "name": "Nuvole Web", - "homepage": "http://nuvole.org", - "email": "info@nuvole.org", - "role": "Maintainer" - }, - { - "name": "pescetti", - "homepage": "https://www.drupal.org/user/436244" - } - ], - "description": "Config Filter allows other modules to interact with a ConfigStorage through filter plugins.", - "homepage": "https://www.drupal.org/project/config_filter", - "keywords": [ - "Drupal", - "configuration", - "configuration management" - ], - "support": { - "source": "https://git.drupalcode.org/project/config_filter", - "issues": "https://www.drupal.org/project/issues/config_filter", - "slack": "https://drupal.slack.com/archives/C45342CDD" - } - }, { "name": "drupal/config_split", - "version": "2.0.1", + "version": "2.0.2", "source": { "type": "git", "url": "https://git.drupalcode.org/project/config_split.git", - "reference": "2.0.1" + "reference": "2.0.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/config_split-2.0.1.zip", - "reference": "2.0.1", - "shasum": "e033a277995753c564f3a4681b88cd112e19ba2a" + "url": "https://ftp.drupal.org/files/projects/config_split-2.0.2.zip", + "reference": "2.0.2", + "shasum": "efde01f790ca6f6023982e918fe51740da931d3e" }, "require": { "drupal/core": "^8.8 || ^9 || ^10 || ^11" @@ -2715,8 +2495,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "2.0.1", - "datestamp": "1711022056", + "version": "2.0.2", + "datestamp": "1739381800", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2933,16 +2713,16 @@ }, { "name": "drupal/core", - "version": "10.4.1", + "version": "10.4.2", "source": { "type": "git", "url": "https://github.com/drupal/core.git", - "reference": "0aeb6303b33d813a68ea78c40466715d9fcfac46" + "reference": "a895b261aec81a2f52ed1f9123118d08e4616805" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core/zipball/0aeb6303b33d813a68ea78c40466715d9fcfac46", - "reference": "0aeb6303b33d813a68ea78c40466715d9fcfac46", + "url": "https://api.github.com/repos/drupal/core/zipball/a895b261aec81a2f52ed1f9123118d08e4616805", + "reference": "a895b261aec81a2f52ed1f9123118d08e4616805", "shasum": "" }, "require": { @@ -3091,13 +2871,13 @@ ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", "support": { - "source": "https://github.com/drupal/core/tree/10.4.1" + "source": "https://github.com/drupal/core/tree/10.4.2" }, - "time": "2025-01-06T23:26:38+00:00" + "time": "2025-02-05T22:51:59+00:00" }, { "name": "drupal/core-composer-scaffold", - "version": "10.4.1", + "version": "10.4.2", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", @@ -3141,13 +2921,13 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-composer-scaffold/tree/10.4.1" + "source": "https://github.com/drupal/core-composer-scaffold/tree/10.4.2" }, "time": "2024-08-22T14:31:30+00:00" }, { "name": "drupal/core-project-message", - "version": "10.4.1", + "version": "10.4.2", "source": { "type": "git", "url": "https://github.com/drupal/core-project-message.git", @@ -3182,22 +2962,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-project-message/tree/11.1.1" + "source": "https://github.com/drupal/core-project-message/tree/11.1.2" }, "time": "2023-07-24T07:55:25+00:00" }, { "name": "drupal/core-recommended", - "version": "10.4.1", + "version": "10.4.2", "source": { "type": "git", "url": "https://github.com/drupal/core-recommended.git", - "reference": "7ad1354941c10f794fa9c46cad78199f3ea88206" + "reference": "e9d1eb6256fae0d51c0a735ed814315fa6f7d040" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-recommended/zipball/7ad1354941c10f794fa9c46cad78199f3ea88206", - "reference": "7ad1354941c10f794fa9c46cad78199f3ea88206", + "url": "https://api.github.com/repos/drupal/core-recommended/zipball/e9d1eb6256fae0d51c0a735ed814315fa6f7d040", + "reference": "e9d1eb6256fae0d51c0a735ed814315fa6f7d040", "shasum": "" }, "require": { @@ -3206,7 +2986,7 @@ "doctrine/annotations": "~1.14.4", "doctrine/deprecations": "~1.1.3", "doctrine/lexer": "~2.1.1", - "drupal/core": "10.4.1", + "drupal/core": "10.4.2", "egulias/email-validator": "~4.0.2", "guzzlehttp/guzzle": "~7.9.2", "guzzlehttp/promises": "~2.0.4", @@ -3255,7 +3035,7 @@ "symfony/var-dumper": "~v6.4.15", "symfony/var-exporter": "~v6.4.13", "symfony/yaml": "~v6.4.13", - "twig/twig": "~v3.16.0" + "twig/twig": "~v3.19.0" }, "conflict": { "webflo/drupal-core-strict": "*" @@ -3267,9 +3047,9 @@ ], "description": "Core and its dependencies with known-compatible minor versions. Require this project INSTEAD OF drupal/core.", "support": { - "source": "https://github.com/drupal/core-recommended/tree/10.4.1" + "source": "https://github.com/drupal/core-recommended/tree/10.4.2" }, - "time": "2025-01-06T23:26:38+00:00" + "time": "2025-02-05T22:51:59+00:00" }, { "name": "drupal/ctools", @@ -3366,17 +3146,17 @@ }, { "name": "drupal/ds", - "version": "3.25.0", + "version": "3.28.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ds.git", - "reference": "8.x-3.25" + "reference": "8.x-3.28" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.25.zip", - "reference": "8.x-3.25", - "shasum": "b1e01d1772029a9e3ec89c523958be9ce3949aad" + "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.28.zip", + "reference": "8.x-3.28", + "shasum": "11d0cf2306639063fc52f7f8990bfae91da69cd1" }, "require": { "drupal/core": "^10.2 || ^11" @@ -3388,8 +3168,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.25", - "datestamp": "1735308265", + "version": "8.x-3.28", + "datestamp": "1737118066", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -3434,75 +3214,6 @@ "irc": "irc://irc.freenode.org/drupal-contribute" } }, - { - "name": "drupal/entity", - "version": "1.5.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/entity.git", - "reference": "8.x-1.5" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/entity-8.x-1.5.zip", - "reference": "8.x-1.5", - "shasum": "86c0b75c173144aaedde3e3258dc0d3ce11d1a22" - }, - "require": { - "drupal/core": "^10.1 || ^11" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-1.5", - "datestamp": "1723380062", - "security-coverage": { - "status": "covered", - "message": "Covered by Drupal's security advisory policy" - } - } - }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "berdir", - "homepage": "https://www.drupal.org/user/214652" - }, - { - "name": "bojanz", - "homepage": "https://www.drupal.org/user/86106" - }, - { - "name": "dawehner", - "homepage": "https://www.drupal.org/user/99340" - }, - { - "name": "dixon_", - "homepage": "https://www.drupal.org/user/239911" - }, - { - "name": "fago", - "homepage": "https://www.drupal.org/user/16747" - }, - { - "name": "mglaman", - "homepage": "https://www.drupal.org/user/2416470" - }, - { - "name": "tr", - "homepage": "https://www.drupal.org/user/202830" - } - ], - "description": "Provides expanded entity APIs, which will be moved to Drupal core one day.", - "homepage": "https://www.drupal.org/project/entity", - "support": { - "source": "https://git.drupalcode.org/project/entity", - "issues": "https://www.drupal.org/project/issues/entity" - } - }, { "name": "drupal/entity_browser", "version": "2.12.0", @@ -4066,26 +3777,29 @@ }, { "name": "drupal/imce", - "version": "3.1.1", + "version": "3.1.2", "source": { "type": "git", "url": "https://git.drupalcode.org/project/imce.git", - "reference": "3.1.1" + "reference": "3.1.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/imce-3.1.1.zip", - "reference": "3.1.1", - "shasum": "4c982c08dcf1c6e53dfb58a6cb7859b0f6df83b6" + "url": "https://ftp.drupal.org/files/projects/imce-3.1.2.zip", + "reference": "3.1.2", + "shasum": "bbca8eeacd532aea704a1feba27fe1dc4a5790df" }, "require": { "drupal/core": "^9.3 || ^10 || ^11" }, + "require-dev": { + "drupal/bueditor": "^3.0" + }, "type": "drupal-module", "extra": { "drupal": { - "version": "3.1.1", - "datestamp": "1722725345", + "version": "3.1.2", + "datestamp": "1738492434", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4303,50 +4017,6 @@ "source": "https://git.drupalcode.org/project/jquery_ui" } }, - { - "name": "drupal/js_cookie", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/js_cookie.git", - "reference": "1.0.1" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/js_cookie-1.0.1.zip", - "reference": "1.0.1", - "shasum": "e010b3de64a0d57eef9c1773c4dd7e3d9bd9118c" - }, - "require": { - "drupal/core": "^9 || ^10 || ^11" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "1.0.1", - "datestamp": "1693951097", - "security-coverage": { - "status": "covered", - "message": "Covered by Drupal's security advisory policy" - } - } - }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Dave Reid", - "homepage": "https://www.drupal.org/user/53892" - } - ], - "description": "Provides the js-cookie library as a dependency.", - "homepage": "https://www.drupal.org/project/js_cookie", - "support": { - "source": "https://git.drupalcode.org/project/js_cookie" - } - }, { "name": "drupal/libraries", "version": "4.0.5", @@ -4828,29 +4498,29 @@ }, { "name": "drupal/menu_breadcrumb", - "version": "2.0.0-alpha0", + "version": "2.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/menu_breadcrumb.git", - "reference": "2.0.0-alpha0" + "reference": "2.0.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-2.0.0-alpha0.zip", - "reference": "2.0.0-alpha0", - "shasum": "d031d6a859b3f20a290fd9f812fdc4dace0810ef" + "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-2.0.0.zip", + "reference": "2.0.0", + "shasum": "016f2eead9cf9d4bfdf4b36fca5e3c8a8e8d0f1e" }, "require": { - "drupal/core": "^8.8 || ^9 || ^10" + "drupal/core": "^9 || ^10 || ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "2.0.0-alpha0", - "datestamp": "1675717886", + "version": "2.0.0", + "datestamp": "1736662457", "security-coverage": { - "status": "not-covered", - "message": "Alpha releases are not covered by Drupal security advisories." + "status": "covered", + "message": "Covered by Drupal's security advisory policy" } } }, @@ -4884,10 +4554,11 @@ "homepage": "https://www.drupal.org/user/76026" } ], - "description": "Create breadcrumbs from nested menu titles and/or taxonomy membership.", + "description": "Create breadcrumbs from nested menu titles and/or taxonomy membership..", "homepage": "https://www.drupal.org/project/menu_breadcrumb", "support": { - "source": "https://git.drupalcode.org/project/menu_breadcrumb" + "source": "https://git.drupalcode.org/project/menu_breadcrumb", + "issues": "https://www.drupal.org/project/issues/menu_breadcrumb" } }, { @@ -5180,26 +4851,26 @@ }, { "name": "drupal/modules_weight", - "version": "3.0.1", + "version": "3.0.2", "source": { "type": "git", "url": "https://git.drupalcode.org/project/modules_weight.git", - "reference": "3.0.1" + "reference": "3.0.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/modules_weight-3.0.1.zip", - "reference": "3.0.1", - "shasum": "9986169506c2a78714634e678a404c86ee786068" + "url": "https://ftp.drupal.org/files/projects/modules_weight-3.0.2.zip", + "reference": "3.0.2", + "shasum": "d46e68421a31e8775d3bbd5dbb769867e68570a4" }, "require": { - "drupal/core": "^9.0|| ^10.0" + "drupal/core": "^10 || ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "3.0.1", - "datestamp": "1709671544", + "version": "3.0.2", + "datestamp": "1737650714", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5606,11 +5277,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" }, { @@ -5882,17 +5553,17 @@ }, { "name": "drupal/redirect", - "version": "1.10.0", + "version": "1.11.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/redirect.git", - "reference": "8.x-1.10" + "reference": "8.x-1.11" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/redirect-8.x-1.10.zip", - "reference": "8.x-1.10", - "shasum": "9d72d7e0717dbdea3ab3306c5d6840da5bd3024c" + "url": "https://ftp.drupal.org/files/projects/redirect-8.x-1.11.zip", + "reference": "8.x-1.11", + "shasum": "7df8b3524bbde07d254216039636947a689140ef" }, "require": { "drupal/core": "^9.2 || ^10 || ^11" @@ -5900,8 +5571,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.10", - "datestamp": "1723277641", + "version": "8.x-1.11", + "datestamp": "1737382886", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7001,29 +6672,29 @@ }, { "name": "drupal/user_expire", - "version": "1.3.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/user_expire.git", - "reference": "8.x-1.3" + "reference": "2.1.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/user_expire-8.x-1.3.zip", - "reference": "8.x-1.3", - "shasum": "58f6225567a854a3d7f7b5eaa7c15bf37873cb49" + "url": "https://ftp.drupal.org/files/projects/user_expire-2.1.0.zip", + "reference": "2.1.0", + "shasum": "cdaf39f4813d75f65d7a4579631487a3b49604d8" }, "require": { - "drupal/core": "^9 || ^10" + "drupal/core": "^10.3 || ^11 || ^12" }, "require-dev": { - "drupal/rules": "^3.0@alpha" + "drupal/rules": "^4.0" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.3", - "datestamp": "1725558574", + "version": "2.1.0", + "datestamp": "1736892990", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7046,16 +6717,24 @@ "role": "Co-maintainer" }, { - "name": "joegraduate", - "homepage": "https://www.drupal.org/user/789384" + "name": "Shelane French (shelane)", + "homepage": "https://www.drupal.org/u/shelane", + "role": "Co-maintainer" }, { - "name": "shelane", - "homepage": "https://www.drupal.org/user/2674989" + "name": "Joe Parsons (joegraduate)", + "homepage": "https://www.drupal.org/u/joegraduate", + "role": "Co-maintainer" + }, + { + "name": "Troy Dean (tadean)", + "homepage": "https://www.drupal.org/u/tadean", + "role": "Co-maintainer" }, { - "name": "trackleft2", - "homepage": "https://www.drupal.org/user/2860655" + "name": "Chris Green (trackleft2)", + "homepage": "https://www.drupal.org/u/trackleft2", + "role": "Co-maintainer" } ], "description": "Allows an administrator to define a date on which to expire a user account.", @@ -7324,7 +7003,7 @@ "homepage": "https://www.drupal.org/user/218525" }, { - "name": "Leon Kessler", + "name": "leon kessler", "homepage": "https://www.drupal.org/user/595374" }, { @@ -7864,22 +7543,22 @@ }, { "name": "guzzlehttp/command", - "version": "1.3.1", + "version": "1.3.2", "source": { "type": "git", "url": "https://github.com/guzzle/command.git", - "reference": "0eebc653784f4902b3272e826fe8e88743d14e77" + "reference": "888e74fc1d82a499c1fd6726248ed0bc0886395e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/command/zipball/0eebc653784f4902b3272e826fe8e88743d14e77", - "reference": "0eebc653784f4902b3272e826fe8e88743d14e77", + "url": "https://api.github.com/repos/guzzle/command/zipball/888e74fc1d82a499c1fd6726248ed0bc0886395e", + "reference": "888e74fc1d82a499c1fd6726248ed0bc0886395e", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^7.8", - "guzzlehttp/promises": "^1.5.3 || ^2.0.1", - "guzzlehttp/psr7": "^1.9.1 || ^2.5.1", + "guzzlehttp/guzzle": "^7.9.2", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", "php": "^7.2.5 || ^8.0" }, "require-dev": { @@ -7927,7 +7606,7 @@ "description": "Provides the foundation for building command-based web service clients", "support": { "issues": "https://github.com/guzzle/command/issues", - "source": "https://github.com/guzzle/command/tree/1.3.1" + "source": "https://github.com/guzzle/command/tree/1.3.2" }, "funding": [ { @@ -7943,7 +7622,7 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:46:20+00:00" + "time": "2025-02-04T09:56:46+00:00" }, { "name": "guzzlehttp/guzzle", @@ -8073,23 +7752,23 @@ }, { "name": "guzzlehttp/guzzle-services", - "version": "1.4.1", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle-services.git", - "reference": "bcab7c0d61672b606510a6fe5af3039d04968c0f" + "reference": "45bfeb80d5ed072bb39e9f6ed1ec5d650edae961" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle-services/zipball/bcab7c0d61672b606510a6fe5af3039d04968c0f", - "reference": "bcab7c0d61672b606510a6fe5af3039d04968c0f", + "url": "https://api.github.com/repos/guzzle/guzzle-services/zipball/45bfeb80d5ed072bb39e9f6ed1ec5d650edae961", + "reference": "45bfeb80d5ed072bb39e9f6ed1ec5d650edae961", "shasum": "" }, "require": { - "guzzlehttp/command": "^1.3.1", - "guzzlehttp/guzzle": "^7.8", - "guzzlehttp/psr7": "^1.9.1 || ^2.5.1", - "guzzlehttp/uri-template": "^1.0.1", + "guzzlehttp/command": "^1.3.2", + "guzzlehttp/guzzle": "^7.9.2", + "guzzlehttp/psr7": "^2.7.0", + "guzzlehttp/uri-template": "^1.0.4", "php": "^7.2.5 || ^8.0" }, "require-dev": { @@ -8140,7 +7819,7 @@ "description": "Provides an implementation of the Guzzle Command library that uses Guzzle service descriptions to describe web services, serialize requests, and parse responses into easy to use model structures.", "support": { "issues": "https://github.com/guzzle/guzzle-services/issues", - "source": "https://github.com/guzzle/guzzle-services/tree/1.4.1" + "source": "https://github.com/guzzle/guzzle-services/tree/1.4.2" }, "funding": [ { @@ -8156,7 +7835,7 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:48:14+00:00" + "time": "2025-02-04T09:59:21+00:00" }, { "name": "guzzlehttp/promises", @@ -8359,16 +8038,16 @@ }, { "name": "guzzlehttp/uri-template", - "version": "v1.0.3", + "version": "v1.0.4", "source": { "type": "git", "url": "https://github.com/guzzle/uri-template.git", - "reference": "ecea8feef63bd4fef1f037ecb288386999ecc11c" + "reference": "30e286560c137526eccd4ce21b2de477ab0676d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/uri-template/zipball/ecea8feef63bd4fef1f037ecb288386999ecc11c", - "reference": "ecea8feef63bd4fef1f037ecb288386999ecc11c", + "url": "https://api.github.com/repos/guzzle/uri-template/zipball/30e286560c137526eccd4ce21b2de477ab0676d2", + "reference": "30e286560c137526eccd4ce21b2de477ab0676d2", "shasum": "" }, "require": { @@ -8425,7 +8104,7 @@ ], "support": { "issues": "https://github.com/guzzle/uri-template/issues", - "source": "https://github.com/guzzle/uri-template/tree/v1.0.3" + "source": "https://github.com/guzzle/uri-template/tree/v1.0.4" }, "funding": [ { @@ -8441,7 +8120,7 @@ "type": "tidelift" } ], - "time": "2023-12-03T19:50:20+00:00" + "time": "2025-02-03T10:55:03+00:00" }, { "name": "league/container", @@ -10185,16 +9864,16 @@ }, { "name": "symfony/error-handler", - "version": "v6.4.17", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "37ad2380e8c1a8cf62a1200a5c10080b679b446c" + "reference": "e8d3b5b1975e67812a54388b1ba8e9ec28eb770e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/37ad2380e8c1a8cf62a1200a5c10080b679b446c", - "reference": "37ad2380e8c1a8cf62a1200a5c10080b679b446c", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/e8d3b5b1975e67812a54388b1ba8e9ec28eb770e", + "reference": "e8d3b5b1975e67812a54388b1ba8e9ec28eb770e", "shasum": "" }, "require": { @@ -10240,7 +9919,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.17" + "source": "https://github.com/symfony/error-handler/tree/v6.4.18" }, "funding": [ { @@ -10256,7 +9935,7 @@ "type": "tidelift" } ], - "time": "2024-12-06T13:30:51+00:00" + "time": "2025-01-06T09:38:16+00:00" }, { "name": "symfony/event-dispatcher", @@ -10614,16 +10293,16 @@ }, { "name": "symfony/http-foundation", - "version": "v6.4.16", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "431771b7a6f662f1575b3cfc8fd7617aa9864d57" + "reference": "d0492d6217e5ab48f51fca76f64cf8e78919d0db" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/431771b7a6f662f1575b3cfc8fd7617aa9864d57", - "reference": "431771b7a6f662f1575b3cfc8fd7617aa9864d57", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d0492d6217e5ab48f51fca76f64cf8e78919d0db", + "reference": "d0492d6217e5ab48f51fca76f64cf8e78919d0db", "shasum": "" }, "require": { @@ -10671,7 +10350,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.16" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.18" }, "funding": [ { @@ -10687,20 +10366,20 @@ "type": "tidelift" } ], - "time": "2024-11-13T18:58:10+00:00" + "time": "2025-01-09T15:48:56+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.17", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "c5647393c5ce11833d13e4b70fff4b571d4ac710" + "reference": "fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/c5647393c5ce11833d13e4b70fff4b571d4ac710", - "reference": "c5647393c5ce11833d13e4b70fff4b571d4ac710", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7", + "reference": "fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7", "shasum": "" }, "require": { @@ -10785,7 +10464,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.17" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.18" }, "funding": [ { @@ -10801,20 +10480,20 @@ "type": "tidelift" } ], - "time": "2024-12-31T14:49:31+00:00" + "time": "2025-01-29T07:25:58+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.13", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663" + "reference": "e93a6ae2767d7f7578c2b7961d9d8e27580b2b11" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", + "url": "https://api.github.com/repos/symfony/mailer/zipball/e93a6ae2767d7f7578c2b7961d9d8e27580b2b11", + "reference": "e93a6ae2767d7f7578c2b7961d9d8e27580b2b11", "shasum": "" }, "require": { @@ -10865,7 +10544,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.13" + "source": "https://github.com/symfony/mailer/tree/v6.4.18" }, "funding": [ { @@ -10881,20 +10560,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-01-24T15:27:15+00:00" }, { "name": "symfony/mime", - "version": "v6.4.17", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232" + "reference": "917d77981eb1ea963608d5cda4d9c0cf72eaa68e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232", - "reference": "ea87c8850a54ff039d3e0ab4ae5586dd4e6c0232", + "url": "https://api.github.com/repos/symfony/mime/zipball/917d77981eb1ea963608d5cda4d9c0cf72eaa68e", + "reference": "917d77981eb1ea963608d5cda4d9c0cf72eaa68e", "shasum": "" }, "require": { @@ -10950,7 +10629,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.17" + "source": "https://github.com/symfony/mime/tree/v6.4.18" }, "funding": [ { @@ -10966,7 +10645,7 @@ "type": "tidelift" } ], - "time": "2024-12-02T11:09:41+00:00" + "time": "2025-01-23T13:10:52+00:00" }, { "name": "symfony/polyfill-ctype", @@ -11827,16 +11506,16 @@ }, { "name": "symfony/routing", - "version": "v6.4.16", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "91e02e606b4b705c2f4fb42f7e7708b7923a3220" + "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/91e02e606b4b705c2f4fb42f7e7708b7923a3220", - "reference": "91e02e606b4b705c2f4fb42f7e7708b7923a3220", + "url": "https://api.github.com/repos/symfony/routing/zipball/e9bfc94953019089acdfb9be51c1b9142c4afa68", + "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68", "shasum": "" }, "require": { @@ -11890,7 +11569,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.16" + "source": "https://github.com/symfony/routing/tree/v6.4.18" }, "funding": [ { @@ -11906,20 +11585,20 @@ "type": "tidelift" } ], - "time": "2024-11-13T15:31:34+00:00" + "time": "2025-01-09T08:51:02+00:00" }, { "name": "symfony/serializer", - "version": "v6.4.15", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "9d862d66198f3c2e30404228629ef4c18d5d608e" + "reference": "6ad986f62276da4c8c69754decfaa445a89cb6e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/9d862d66198f3c2e30404228629ef4c18d5d608e", - "reference": "9d862d66198f3c2e30404228629ef4c18d5d608e", + "url": "https://api.github.com/repos/symfony/serializer/zipball/6ad986f62276da4c8c69754decfaa445a89cb6e3", + "reference": "6ad986f62276da4c8c69754decfaa445a89cb6e3", "shasum": "" }, "require": { @@ -11988,7 +11667,7 @@ "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/serializer/tree/v6.4.15" + "source": "https://github.com/symfony/serializer/tree/v6.4.18" }, "funding": [ { @@ -12004,7 +11683,7 @@ "type": "tidelift" } ], - "time": "2024-10-23T13:25:59+00:00" + "time": "2025-01-28T18:47:02+00:00" }, { "name": "symfony/service-contracts", @@ -12255,16 +11934,16 @@ }, { "name": "symfony/validator", - "version": "v6.4.17", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "a3c19a0e542d427c207e22242043ef35b5b99a2c" + "reference": "ce20367d07b2592202e9c266b16a93fa50145207" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/a3c19a0e542d427c207e22242043ef35b5b99a2c", - "reference": "a3c19a0e542d427c207e22242043ef35b5b99a2c", + "url": "https://api.github.com/repos/symfony/validator/zipball/ce20367d07b2592202e9c266b16a93fa50145207", + "reference": "ce20367d07b2592202e9c266b16a93fa50145207", "shasum": "" }, "require": { @@ -12332,7 +12011,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v6.4.17" + "source": "https://github.com/symfony/validator/tree/v6.4.18" }, "funding": [ { @@ -12348,20 +12027,20 @@ "type": "tidelift" } ], - "time": "2024-12-29T12:50:19+00:00" + "time": "2025-01-27T16:05:44+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.15", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80" + "reference": "4ad10cf8b020e77ba665305bb7804389884b4837" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80", - "reference": "38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/4ad10cf8b020e77ba665305bb7804389884b4837", + "reference": "4ad10cf8b020e77ba665305bb7804389884b4837", "shasum": "" }, "require": { @@ -12417,7 +12096,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.15" + "source": "https://github.com/symfony/var-dumper/tree/v6.4.18" }, "funding": [ { @@ -12433,7 +12112,7 @@ "type": "tidelift" } ], - "time": "2024-11-08T15:28:48+00:00" + "time": "2025-01-17T11:26:11+00:00" }, { "name": "symfony/var-exporter", @@ -12514,16 +12193,16 @@ }, { "name": "symfony/yaml", - "version": "v6.4.13", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9" + "reference": "bf598c9d9bb4a22f495a4e26e4c4fce2f8ecefc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", + "url": "https://api.github.com/repos/symfony/yaml/zipball/bf598c9d9bb4a22f495a4e26e4c4fce2f8ecefc5", + "reference": "bf598c9d9bb4a22f495a4e26e4c4fce2f8ecefc5", "shasum": "" }, "require": { @@ -12566,7 +12245,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.4.13" + "source": "https://github.com/symfony/yaml/tree/v6.4.18" }, "funding": [ { @@ -12582,20 +12261,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-01-07T09:44:41+00:00" }, { "name": "twig/twig", - "version": "v3.16.0", + "version": "v3.19.0", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "475ad2dc97d65d8631393e721e7e44fb544f0561" + "reference": "d4f8c2b86374f08efc859323dbcd95c590f7124e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/475ad2dc97d65d8631393e721e7e44fb544f0561", - "reference": "475ad2dc97d65d8631393e721e7e44fb544f0561", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/d4f8c2b86374f08efc859323dbcd95c590f7124e", + "reference": "d4f8c2b86374f08efc859323dbcd95c590f7124e", "shasum": "" }, "require": { @@ -12650,7 +12329,7 @@ ], "support": { "issues": "https://github.com/twigphp/Twig/issues", - "source": "https://github.com/twigphp/Twig/tree/v3.16.0" + "source": "https://github.com/twigphp/Twig/tree/v3.19.0" }, "funding": [ { @@ -12662,7 +12341,7 @@ "type": "tidelift" } ], - "time": "2024-11-29T08:27:05+00:00" + "time": "2025-01-29T07:06:14+00:00" }, { "name": "un-ocha/oauth2-hid", @@ -12724,16 +12403,16 @@ }, { "name": "unocha/common_design", - "version": "v9.4.4", + "version": "v9.5.0", "source": { "type": "git", "url": "https://github.com/UN-OCHA/common_design.git", - "reference": "f11b39f2faf9eabcd88ec10a120e465897116e7d" + "reference": "519a486e05a8f9a749b9717c91be91202063de9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/UN-OCHA/common_design/zipball/f11b39f2faf9eabcd88ec10a120e465897116e7d", - "reference": "f11b39f2faf9eabcd88ec10a120e465897116e7d", + "url": "https://api.github.com/repos/UN-OCHA/common_design/zipball/519a486e05a8f9a749b9717c91be91202063de9a", + "reference": "519a486e05a8f9a749b9717c91be91202063de9a", "shasum": "" }, "require": { @@ -12745,12 +12424,12 @@ "license": [ "GPL-2.0-only" ], - "description": "OCHA Common Design base theme for Drupal 9+", + "description": "OCHA Common Design base theme for Drupal", "support": { "issues": "https://github.com/UN-OCHA/common_design/issues", - "source": "https://github.com/UN-OCHA/common_design/tree/v9.4.4" + "source": "https://github.com/UN-OCHA/common_design/tree/v9.5.0" }, - "time": "2024-11-18T09:15:05+00:00" + "time": "2025-01-22T11:58:45+00:00" }, { "name": "unocha/gtm_barebones", @@ -12781,20 +12460,19 @@ }, { "name": "unocha/ocha_monitoring", - "version": "1.0.18", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/UN-OCHA/ocha_monitoring.git", - "reference": "6c8d8a803da62c1f9581c1a8a90fc17501ba6394" + "reference": "187d453123403b2ffca351d5810dc4a2ef3d8919" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/UN-OCHA/ocha_monitoring/zipball/6c8d8a803da62c1f9581c1a8a90fc17501ba6394", - "reference": "6c8d8a803da62c1f9581c1a8a90fc17501ba6394", + "url": "https://api.github.com/repos/UN-OCHA/ocha_monitoring/zipball/187d453123403b2ffca351d5810dc4a2ef3d8919", + "reference": "187d453123403b2ffca351d5810dc4a2ef3d8919", "shasum": "" }, "require": { - "drupal/core": "^10", "drupal/monitoring": "^1" }, "type": "drupal-module", @@ -12805,9 +12483,9 @@ "description": "UNOCHA Monitoring", "support": { "issues": "https://github.com/UN-OCHA/ocha_monitoring/issues", - "source": "https://github.com/UN-OCHA/ocha_monitoring/tree/1.0.18" + "source": "https://github.com/UN-OCHA/ocha_monitoring/tree/1.1.0" }, - "time": "2024-07-18T14:02:43+00:00" + "time": "2025-01-20T12:21:09+00:00" }, { "name": "unocha/ocha_snap", @@ -13244,16 +12922,16 @@ }, { "name": "composer/class-map-generator", - "version": "1.5.0", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/composer/class-map-generator.git", - "reference": "4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915" + "reference": "ffe442c5974c44a9343e37a0abcb1cc37319f5b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/class-map-generator/zipball/4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915", - "reference": "4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915", + "url": "https://api.github.com/repos/composer/class-map-generator/zipball/ffe442c5974c44a9343e37a0abcb1cc37319f5b9", + "reference": "ffe442c5974c44a9343e37a0abcb1cc37319f5b9", "shasum": "" }, "require": { @@ -13297,7 +12975,7 @@ ], "support": { "issues": "https://github.com/composer/class-map-generator/issues", - "source": "https://github.com/composer/class-map-generator/tree/1.5.0" + "source": "https://github.com/composer/class-map-generator/tree/1.6.0" }, "funding": [ { @@ -13313,20 +12991,20 @@ "type": "tidelift" } ], - "time": "2024-11-25T16:11:06+00:00" + "time": "2025-02-05T10:05:34+00:00" }, { "name": "composer/composer", - "version": "2.8.4", + "version": "2.8.5", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "112e37d1dca22b3fdb81cf3524ab4994f47fdb8c" + "reference": "ae208dc1e182bd45d99fcecb956501da212454a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/112e37d1dca22b3fdb81cf3524ab4994f47fdb8c", - "reference": "112e37d1dca22b3fdb81cf3524ab4994f47fdb8c", + "url": "https://api.github.com/repos/composer/composer/zipball/ae208dc1e182bd45d99fcecb956501da212454a1", + "reference": "ae208dc1e182bd45d99fcecb956501da212454a1", "shasum": "" }, "require": { @@ -13411,7 +13089,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.4" + "source": "https://github.com/composer/composer/tree/2.8.5" }, "funding": [ { @@ -13427,7 +13105,7 @@ "type": "tidelift" } ], - "time": "2024-12-11T10:57:47+00:00" + "time": "2025-01-21T14:23:40+00:00" }, { "name": "composer/metadata-minifier", @@ -13913,16 +13591,16 @@ }, { "name": "drupal/coder", - "version": "8.3.27", + "version": "8.3.28", "source": { "type": "git", "url": "https://github.com/pfrenssen/coder.git", - "reference": "04a4563b82c419e43cc58393a78b21c44fcc29e2" + "reference": "d18eeb133f7da766f0341734aa983d05f2b317fd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pfrenssen/coder/zipball/04a4563b82c419e43cc58393a78b21c44fcc29e2", - "reference": "04a4563b82c419e43cc58393a78b21c44fcc29e2", + "url": "https://api.github.com/repos/pfrenssen/coder/zipball/d18eeb133f7da766f0341734aa983d05f2b317fd", + "reference": "d18eeb133f7da766f0341734aa983d05f2b317fd", "shasum": "" }, "require": { @@ -13960,11 +13638,11 @@ "issues": "https://www.drupal.org/project/issues/coder", "source": "https://www.drupal.org/project/coder" }, - "time": "2025-01-06T09:46:24+00:00" + "time": "2025-01-18T17:05:53+00:00" }, { "name": "drupal/core-dev", - "version": "10.4.1", + "version": "10.4.2", "source": { "type": "git", "url": "https://github.com/drupal/core-dev.git", @@ -14014,7 +13692,7 @@ ], "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.4.1" + "source": "https://github.com/drupal/core-dev/tree/10.4.2" }, "time": "2024-11-21T12:39:32+00:00" }, @@ -14327,16 +14005,16 @@ }, { "name": "mglaman/phpstan-drupal", - "version": "1.3.2", + "version": "1.3.3", "source": { "type": "git", "url": "https://github.com/mglaman/phpstan-drupal.git", - "reference": "bbb92dee546da3988da851122cb2925f72c149f3" + "reference": "2a30d8d3ca170d86b1829e3cb8037ad87b82f20d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/bbb92dee546da3988da851122cb2925f72c149f3", - "reference": "bbb92dee546da3988da851122cb2925f72c149f3", + "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/2a30d8d3ca170d86b1829e3cb8037ad87b82f20d", + "reference": "2a30d8d3ca170d86b1829e3cb8037ad87b82f20d", "shasum": "" }, "require": { @@ -14411,7 +14089,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.2" + "source": "https://github.com/mglaman/phpstan-drupal/tree/1.3.3" }, "funding": [ { @@ -14427,7 +14105,7 @@ "type": "tidelift" } ], - "time": "2024-11-19T15:26:05+00:00" + "time": "2025-01-23T15:21:21+00:00" }, { "name": "micheh/phpcs-gitlab", @@ -14535,16 +14213,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.12.1", + "version": "1.13.0", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845" + "reference": "024473a478be9df5fdaca2c793f2232fe788e414" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/123267b2c49fbf30d78a7b2d333f6be754b94845", - "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/024473a478be9df5fdaca2c793f2232fe788e414", + "reference": "024473a478be9df5fdaca2c793f2232fe788e414", "shasum": "" }, "require": { @@ -14583,7 +14261,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.12.1" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.0" }, "funding": [ { @@ -14591,7 +14269,7 @@ "type": "tidelift" } ], - "time": "2024-11-08T17:47:46+00:00" + "time": "2025-02-12T12:17:51+00:00" }, { "name": "nyholm/psr7-server", @@ -14661,16 +14339,16 @@ }, { "name": "open-telemetry/api", - "version": "1.2.0", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/api.git", - "reference": "351a30baa79699de3de3a814c8ccc7b52ccdfb1d" + "reference": "8b925df3047628968bc5be722468db1b98b82d51" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/api/zipball/351a30baa79699de3de3a814c8ccc7b52ccdfb1d", - "reference": "351a30baa79699de3de3a814c8ccc7b52ccdfb1d", + "url": "https://api.github.com/repos/opentelemetry-php/api/zipball/8b925df3047628968bc5be722468db1b98b82d51", + "reference": "8b925df3047628968bc5be722468db1b98b82d51", "shasum": "" }, "require": { @@ -14727,7 +14405,7 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2025-01-08T23:50:34+00:00" + "time": "2025-02-03T21:49:11+00:00" }, { "name": "open-telemetry/context", @@ -14854,16 +14532,16 @@ }, { "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": { @@ -14913,20 +14591,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.2.0", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/sdk.git", - "reference": "9a1c3b866239dbff291e5cc555bb7793eab08127" + "reference": "37eec0fe47ddd627911f318f29b6cd48196be0c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/9a1c3b866239dbff291e5cc555bb7793eab08127", - "reference": "9a1c3b866239dbff291e5cc555bb7793eab08127", + "url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/37eec0fe47ddd627911f318f29b6cd48196be0c0", + "reference": "37eec0fe47ddd627911f318f29b6cd48196be0c0", "shasum": "" }, "require": { @@ -15003,24 +14681,24 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2025-01-08T23:50:34+00:00" + "time": "2025-01-29T21:40:28+00:00" }, { "name": "open-telemetry/sem-conv", - "version": "1.27.1", + "version": "1.30.0", "source": { "type": "git", "url": "https://github.com/opentelemetry-php/sem-conv.git", - "reference": "1dba705fea74bc0718d04be26090e3697e56f4e6" + "reference": "4178c9f390da8e4dbca9b181a9d1efd50cf7ee0a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opentelemetry-php/sem-conv/zipball/1dba705fea74bc0718d04be26090e3697e56f4e6", - "reference": "1dba705fea74bc0718d04be26090e3697e56f4e6", + "url": "https://api.github.com/repos/opentelemetry-php/sem-conv/zipball/4178c9f390da8e4dbca9b181a9d1efd50cf7ee0a", + "reference": "4178c9f390da8e4dbca9b181a9d1efd50cf7ee0a", "shasum": "" }, "require": { - "php": "^8.1" + "php": "^8.0" }, "type": "library", "extra": { @@ -15060,7 +14738,7 @@ "issues": "https://github.com/open-telemetry/opentelemetry-php/issues", "source": "https://github.com/open-telemetry/opentelemetry-php" }, - "time": "2024-08-28T09:20:31+00:00" + "time": "2025-02-06T00:21:48+00:00" }, { "name": "pdepend/pdepend", @@ -16032,16 +15710,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.15", + "version": "1.12.17", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "c91d4e8bc056f46cf653656e6f71004b254574d1" + "reference": "7027b3b0270bf392de0cfba12825979768d728bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/c91d4e8bc056f46cf653656e6f71004b254574d1", - "reference": "c91d4e8bc056f46cf653656e6f71004b254574d1", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/7027b3b0270bf392de0cfba12825979768d728bf", + "reference": "7027b3b0270bf392de0cfba12825979768d728bf", "shasum": "" }, "require": { @@ -16086,7 +15764,7 @@ "type": "github" } ], - "time": "2025-01-05T16:40:22+00:00" + "time": "2025-02-07T15:01:57+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", @@ -18057,16 +17735,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.11.2", + "version": "3.11.3", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "1368f4a58c3c52114b86b1abe8f4098869cb0079" + "reference": "ba05f990e79cbe69b9f35c8c1ac8dca7eecc3a10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/1368f4a58c3c52114b86b1abe8f4098869cb0079", - "reference": "1368f4a58c3c52114b86b1abe8f4098869cb0079", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/ba05f990e79cbe69b9f35c8c1ac8dca7eecc3a10", + "reference": "ba05f990e79cbe69b9f35c8c1ac8dca7eecc3a10", "shasum": "" }, "require": { @@ -18131,9 +17809,13 @@ { "url": "https://opencollective.com/php_codesniffer", "type": "open_collective" + }, + { + "url": "https://thanks.dev/phpcsstandards", + "type": "thanks_dev" } ], - "time": "2024-12-11T16:04:26+00:00" + "time": "2025-01-23T17:04:15+00:00" }, { "name": "symfony/browser-kit", @@ -18270,16 +17952,16 @@ }, { "name": "symfony/dom-crawler", - "version": "v6.4.16", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "4304e6ad5c894a9c72831ad459f627bfd35d766d" + "reference": "fd07959d3e8992795029bdab3605c2e8e895034e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/4304e6ad5c894a9c72831ad459f627bfd35d766d", - "reference": "4304e6ad5c894a9c72831ad459f627bfd35d766d", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/fd07959d3e8992795029bdab3605c2e8e895034e", + "reference": "fd07959d3e8992795029bdab3605c2e8e895034e", "shasum": "" }, "require": { @@ -18317,7 +17999,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v6.4.16" + "source": "https://github.com/symfony/dom-crawler/tree/v6.4.18" }, "funding": [ { @@ -18333,7 +18015,7 @@ "type": "tidelift" } ], - "time": "2024-11-13T15:06:22+00:00" + "time": "2025-01-09T15:35:00+00:00" }, { "name": "symfony/lock", @@ -18836,20 +18518,20 @@ }, "type": "library", "extra": { - "installer-paths": { - "web/core": [ - "type:drupal-core" - ] - }, "drupal-scaffold": { "locations": { "web-root": "web/" }, "file-mapping": { + "[project-root]/.gitignore": false, "[project-root]/.editorconfig": false, - "[project-root]/.gitattributes": false, - "[project-root]/.gitignore": false + "[project-root]/.gitattributes": false } + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ] } }, "autoload": { @@ -18896,7 +18578,7 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": ">=8.2" + "php": ">=8.3" }, "platform-dev": {}, "plugin-api-version": "2.6.0" diff --git a/composer.patches.json b/composer.patches.json index d898134e..84790c45 100644 --- a/composer.patches.json +++ b/composer.patches.json @@ -5,9 +5,7 @@ "CSS dialog Design Issue": "PATCHES/anchorlink/anchor_link-styling_issue_in_link_dialog-2986268-11.patch" }, "drupal/amazon_ses": { - "Error not caught when AWS API returns 403": "PATCHES/3416368-error-not-caught.patch", - "Error not caught when AWS API returns 403 extra backport": "PATCHES/3416368-error-not-caught-extra.patch", - "Error not caught when AWS API returns 403 extra queue fix": "PATCHES/3416368-error-not-caught-queue.patch" + "Cron fails on amazon_ses when not configured": "PATCHES/amazon_ses-cron-queue-3417090-8.patch" }, "drupal/core": { "Warning": "PATCHES/core/CoreError.patch", @@ -20,7 +18,6 @@ "Add missing schema - 3459880": "https://www.drupal.org/files/issues/2024-07-08/compat-10.3-missing-schema.patch" }, "drupal/user_expire": { - "Allow the notification email to be customised": "PATCHES/user_expire/customize-notification-email.patch", "Reset expiration when user is reactivated": "PATCHES/user_expire/reset-expiration-on-reactivation.patch" }, "drupal/username_enumeration_prevention": { diff --git a/config/codemirror_editor.settings.yml b/config/codemirror_editor.settings.yml deleted file mode 100644 index b4af64ec..00000000 --- a/config/codemirror_editor.settings.yml +++ /dev/null @@ -1,7 +0,0 @@ -_core: - default_config_hash: OQEHakzIUDx3nWOx2W5M-867WqcYLA_4mWia4mgdaqA -cdn: true -minified: true -theme: default -language_modes: - - xml diff --git a/config/core.entity_view_display.node.duel_reference.default.yml b/config/core.entity_view_display.node.duel_reference.default.yml index b357e464..fb0002c0 100644 --- a/config/core.entity_view_display.node.duel_reference.default.yml +++ b/config/core.entity_view_display.node.duel_reference.default.yml @@ -19,6 +19,7 @@ third_party_settings: disable_css: false entity_classes: all_classes settings: + label: '' classes: layout_class: { } wrappers: @@ -27,7 +28,6 @@ third_party_settings: attributes: '' link_attribute: '' link_custom: '' - label: '' regions: ds_content: - body diff --git a/config/core.extension.yml b/config/core.extension.yml index a5c50746..dd59c1a5 100644 --- a/config/core.extension.yml +++ b/config/core.extension.yml @@ -14,7 +14,6 @@ module: block_content: 0 breakpoint: 0 ckeditor5: 0 - codemirror_editor: 0 comment: 0 condition_query: 0 conditional_fields: 0 @@ -33,7 +32,6 @@ module: ds_switch_view_mode: 0 dynamic_page_cache: 0 editor: 0 - entity: 0 entity_browser: 0 entity_browser_entity_form: 0 entity_browser_example: 0 @@ -58,7 +56,6 @@ module: imce: 0 inline_entity_form: 0 jquery_ui: 0 - js_cookie: 0 language: 0 layout_discovery: 0 libraries: 0 diff --git a/config/monitoring.sensor_config.core_requirements_codemirror_editor.yml b/config/monitoring.sensor_config.core_requirements_codemirror_editor.yml deleted file mode 100644 index 691e9ebc..00000000 --- a/config/monitoring.sensor_config.core_requirements_codemirror_editor.yml +++ /dev/null @@ -1,20 +0,0 @@ -uuid: d192d202-ee1a-43f9-9ca3-d28011ccf356 -langcode: en -status: false -dependencies: - module: - - codemirror_editor -id: core_requirements_codemirror_editor -label: 'Module codemirror_editor' -description: 'Requirements of the codemirror_editor module' -category: Requirements -plugin_id: core_requirements -result_class: null -value_label: null -value_type: no_value -caching_time: 3600 -settings: - module: codemirror_editor - exclude_keys: { } -thresholds: - type: none diff --git a/config/user_expire.settings.yml b/config/user_expire.settings.yml index ddd530e2..3daed6f2 100644 --- a/config/user_expire.settings.yml +++ b/config/user_expire.settings.yml @@ -4,3 +4,12 @@ frequency: 432000 offset: 604800 user_expire_roles: authenticated: 15552000 +send_expiration_warnings: true +expiration_warning_mail: + subject: "[site:name]: Account expiration warning" + body: |- + Hello [user:display-name] + + Because you have not logged in recently, your account at [site:name] will be blocked in the near future. If you still use this site, log in now [site:login-url] to prevent your account being blocked. + + -- [site:name] team diff --git a/docker/Dockerfile b/docker/Dockerfile index 4f4d2502..dbb716d4 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,5 +1,5 @@ # Build the code. -FROM public.ecr.aws/unocha/php-k8s:8.2-stable as builder +FROM public.ecr.aws/unocha/php-k8s:8.3-stable as builder ARG BRANCH_ENVIRONMENT @@ -29,7 +29,7 @@ RUN cp -a docker/settings.php docker/services.yml html/sites/default ################################################################################ # Generate the image. -FROM public.ecr.aws/unocha/php-k8s:8.2-stable +FROM public.ecr.aws/unocha/php-k8s:8.3-stable ARG VCS_REF ARG VCS_URL diff --git a/symfony.lock b/symfony.lock index 7ebc677b..98300421 100644 --- a/symfony.lock +++ b/symfony.lock @@ -131,18 +131,12 @@ "drupal/ckeditor_iframe": { "version": "2.1.0" }, - "drupal/codemirror_editor": { - "version": "1.7.0" - }, "drupal/coder": { "version": "8.3.13" }, "drupal/colorbutton": { "version": "1.3.0" }, - "drupal/component_library": { - "version": "1.x-dev" - }, "drupal/components": { "version": "3.0.0-beta2" }, @@ -173,9 +167,6 @@ "drupal/ds": { "version": "3.13.0" }, - "drupal/entity": { - "version": "1.2.0" - }, "drupal/entity_browser": { "version": "2.6.0" },