From 5826c5499e272ed468845213b37fdfd94077737b Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Fri, 28 May 2021 15:40:48 +0200 Subject: [PATCH 01/27] Debug CI --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 436ac5889..7c9a2f94e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,6 +16,7 @@ nginx: else export TAG=$CI_COMMIT_SHORT_SHA fi + - echo $CI_COMMIT_BRANCH - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq - export softwareVersions=$CI_PROJECT_DIR/images/softwareVersions - export nginxVersion=`/yq e .nginx $softwareVersions` -- GitLab From c5a07eb4f13221fafd2139a49370314564bed9c6 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Fri, 28 May 2021 19:24:05 +0200 Subject: [PATCH 02/27] Add readme instructions --- README.md | 188 ++++++------------- cern-drupal-distribution-composer-project.md | 157 ++++++++++++++++ 2 files changed, 210 insertions(+), 135 deletions(-) create mode 100644 cern-drupal-distribution-composer-project.md diff --git a/README.md b/README.md index f8d2a70ab..c8d90581c 100644 --- a/README.md +++ b/README.md @@ -1,157 +1,75 @@ -# Composer template for Drupal projects +# CERN Drupal Distribution -[![CI](https://github.com/drupal-composer/drupal-project/actions/workflows/ci.yml/badge.svg?branch=9.x)](https://github.com/drupal-composer/drupal-project/actions/workflows/ci.yml) +A Composer package that defines the CERN Drupal Distribution: Drupal and a set of core modules, +that are the common denominator of all websites deployed in the [CERN Drupal service](https://drupal.cern.ch). -This project template provides a starter kit for managing your site -dependencies with [Composer](https://getcomposer.org/). +This composer project relies on an upstream recommended setup for Drupal sites. +More info in [cern-drupal-distribution-composer-project.md](cern-drupal-distribution-composer-project.md). -## Usage +#### Customizing the composer project of my website -First you need to [install Composer](https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx). +First refer to the DrupalSite docs. -> Note: The instructions below refer to the [global Composer installation](https://getcomposer.org/doc/00-intro.md#globally). -You might need to replace `composer` with `php composer.phar` (or similar) -for your setup. +Extra composer packages can be injected to a website by linking the DrupalSite to a git repo with a `composer.json`. +The injection happens with a [source-to-image](images/s2i) mechanism, triggered when the DrupalSite is deployed. -After that you can create the project: +## Sitebuilder/nginx images -``` -composer create-project drupal-composer/drupal-project:9.x-dev some-dir --no-interaction -``` - -With `composer require ...` you can download new dependencies to your -installation. +This composer project is deployed through a [sitebuilder image](images/Dockerfile). +Each DrupalSite instantiated at the CERN Drupal service deploys a sitebuilder and an [nginx](images/nginx/Dockerfile) container. -``` -cd some-dir -composer require drupal/devel -``` +The rest of the [images](images) directory includes configuration to build the images. +The image tags depend on the [release process](#release) -The `composer create-project` command passes ownership of all files to the -project that is created. You should create a new Git repository, and commit -all files not excluded by the `.gitignore` file. - -## What does the template do? - -When installing the given `composer.json` some tasks are taken care of: - -* Drupal will be installed in the `web`-directory. -* Autoloader is implemented to use the generated composer autoloader in `vendor/autoload.php`, - instead of the one provided by Drupal (`web/vendor/autoload.php`). -* Modules (packages of type `drupal-module`) will be placed in `web/modules/contrib/` -* Theme (packages of type `drupal-theme`) will be placed in `web/themes/contrib/` -* Profiles (packages of type `drupal-profile`) will be placed in `web/profiles/contrib/` -* Creates default writable versions of `settings.php` and `services.yml`. -* Creates `web/sites/default/files`-directory. -* Latest version of drush is installed locally for use at `vendor/bin/drush`. -* Latest version of DrupalConsole is installed locally for use at `vendor/bin/drupal`. -* Creates environment variables based on your .env file. See [.env.example](.env.example). - -## Updating Drupal Core - -This project will attempt to keep all of your Drupal Core files up-to-date; the -project [drupal/core-composer-scaffold](https://github.com/drupal/core-composer-scaffold) -is used to ensure that your scaffold files are updated every time drupal/core is -updated. If you customize any of the "scaffolding" files (commonly `.htaccess`), -you may need to merge conflicts if any of your modified files are updated in a -new release of Drupal core. - -Follow the steps below to update your core files. - -1. Run `composer update "drupal/core-*" --with-dependencies` to update Drupal Core and its dependencies. -2. Run `git diff` to determine if any of the scaffolding files have changed. - Review the files for any changes and restore any customizations to - `.htaccess` or `robots.txt`. -1. Commit everything all together in a single commit, so `web` will remain in - sync with the `core` when checking out branches or running `git bisect`. -1. In the event that there are non-trivial conflicts in step 2, you may wish - to perform these steps on a branch, and use `git merge` to combine the - updated core files with your customized files. This facilitates the use - of a [three-way merge tool such as kdiff3](http://www.gitshah.com/2010/12/how-to-setup-kdiff-as-diff-tool-for-git.html). This setup is not necessary if your changes are simple; - keeping all of your modifications at the beginning or end of the file is a - good strategy to keep merges easy. - -## FAQ - -### Should I commit the contrib modules I download? - -Composer recommends **no**. They provide [argumentation against but also -workrounds if a project decides to do it anyway](https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md). - -### Should I commit the scaffolding files? - -The [Drupal Composer Scaffold](https://github.com/drupal/core-composer-scaffold) -plugin can download the scaffold files (like index.php, update.php, …) to the -web/ directory of your project. If you have not customized those files you could -choose to not check them into your version control system (e.g. git). If that is -the case for your project it might be convenient to automatically run the -drupal-scaffold plugin after every install or update of your project. You can -achieve that by registering `@composer drupal:scaffold` as post-install and -post-update command in your composer.json: - -```json -"scripts": { - "post-install-cmd": [ - "@composer drupal:scaffold", - "..." - ], - "post-update-cmd": [ - "@composer drupal:scaffold", - "..." - ] -}, -``` +## <h2 id="release"></h2> Versioning and Release -### How can I apply patches to downloaded modules? +The precise contents of the images currently running a Drupal site can be linked to this repo. +Each branch in this repo starting with the letter `v*` is a stable version branch. +The branch's name corresponds to the `spec.version.name` field in the DrupalSite. -If you need to apply patches (depending on the project being modified, a pull -request is often a better solution), you can do so with the -[composer-patches](https://github.com/cweagans/composer-patches) plugin. +For a standard user, this is all that is needed to instantiate the Drupal site: the latest release (commit) +of the specified branch will be deployed automatically. +The resolved/currently running release (version + releaseSpec) can be found in `DrupalSite.status.releaseID.current`. -To add a patch to drupal module foobar insert the patches section in the extra -section of composer.json: +The following section gives a detailed description of the GitOps workflow of this repo. -```json -"extra": { - "patches": { - "drupal/foobar": { - "Patch description": "URL or local path to patch" - } - } -} -``` +### GitOps (details) -### How do I specify a PHP version ? +The tip of the repo's history is the `master` branch. +At each point in time we also have some supported version branches (v8.9-1, v8.9-2 in this example): -This project supports PHP 7.3 as minimum version (see [Environment requirements of Drupal 9](https://www.drupal.org/docs/understanding-drupal/how-drupal-9-was-made-and-what-is-included/environment-requirements-of)), however it's possible that a `composer update` will upgrade some package that will then require PHP 7.3+. +``` +master v8.9-2 v8.9-1 +| +| | dev8.9-1-secfix3 + |<----- | +| + | +| | | ----->| +| ------>| +| | (backported security fix) +| +| +| ------------->| +| +| dev-myfeature +|<--- | +| | +| --->| +| +``` -To prevent this you can add this code to specify the PHP version you want to use in the `config` section of `composer.json`: +For each commit in a version branch the corresponding image tag is: `<branch>-RELEASE.<date>` -```json -"config": { - "sort-packages": true, - "platform": { - "php": "7.3.19" - } -}, -``` -### How do I edit a profile? +#### Development -The profiles are imported during image creation, to edit one please see the -following repository: -https://gitlab.cern.ch/drupal/profiles +Development happens on the master branch using feature branches (`dev-myfeature` in the example above). +Backporting happens in feature branches (`dev8.9-1-secfix3`) that branch out from the version branches. +Each non-version branch produces image tags with each commit of the format `<branch>-<commit-sha>`. -### How to update [JS libs](web/libraries)? +#### Testing -Run this after composer update. +Eventually, CI should run a test suite for every commit against the drupal-stg cluster. +CI should be a normal user that creates a DrupalSite with this version/release and runs tests against it. -Note: find the latest versions for the libs with a `VERSION` variable. -``` -( mkdir -p web/libraries/jquery.cycle && cd $_ && wget https://raw.githubusercontent.com/malsup/cycle/master/jquery.cycle.all.js; ) -( mkdir -p web/libraries/jquery.hoverIntent && cd $_ && wget https://raw.githubusercontent.com/briancherne/jquery-hoverIntent/master/jquery.hoverIntent.js; ) -( mkdir -p web/libraries/json2 && cd $_ && wget https://raw.githubusercontent.com/douglascrockford/JSON-js/master/json2.js; ) -( mkdir -p web/libraries/jquery.pause && cd $_ && wget https://raw.githubusercontent.com/tobia/Pause/master/jquery.pause.js; ) -( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/colorbutton/releases/colorbutton_$VERSION.zip && unzip colorbutton_$VERSION.zip && rm colorbutton_$VERSION.zip; ) -( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/panelbutton/releases/panelbutton_$VERSION.zip && unzip panelbutton_$VERSION.zip && rm panelbutton_$VERSION.zip; ) -``` diff --git a/cern-drupal-distribution-composer-project.md b/cern-drupal-distribution-composer-project.md new file mode 100644 index 000000000..f8d2a70ab --- /dev/null +++ b/cern-drupal-distribution-composer-project.md @@ -0,0 +1,157 @@ +# Composer template for Drupal projects + +[![CI](https://github.com/drupal-composer/drupal-project/actions/workflows/ci.yml/badge.svg?branch=9.x)](https://github.com/drupal-composer/drupal-project/actions/workflows/ci.yml) + +This project template provides a starter kit for managing your site +dependencies with [Composer](https://getcomposer.org/). + +## Usage + +First you need to [install Composer](https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx). + +> Note: The instructions below refer to the [global Composer installation](https://getcomposer.org/doc/00-intro.md#globally). +You might need to replace `composer` with `php composer.phar` (or similar) +for your setup. + +After that you can create the project: + +``` +composer create-project drupal-composer/drupal-project:9.x-dev some-dir --no-interaction +``` + +With `composer require ...` you can download new dependencies to your +installation. + +``` +cd some-dir +composer require drupal/devel +``` + +The `composer create-project` command passes ownership of all files to the +project that is created. You should create a new Git repository, and commit +all files not excluded by the `.gitignore` file. + +## What does the template do? + +When installing the given `composer.json` some tasks are taken care of: + +* Drupal will be installed in the `web`-directory. +* Autoloader is implemented to use the generated composer autoloader in `vendor/autoload.php`, + instead of the one provided by Drupal (`web/vendor/autoload.php`). +* Modules (packages of type `drupal-module`) will be placed in `web/modules/contrib/` +* Theme (packages of type `drupal-theme`) will be placed in `web/themes/contrib/` +* Profiles (packages of type `drupal-profile`) will be placed in `web/profiles/contrib/` +* Creates default writable versions of `settings.php` and `services.yml`. +* Creates `web/sites/default/files`-directory. +* Latest version of drush is installed locally for use at `vendor/bin/drush`. +* Latest version of DrupalConsole is installed locally for use at `vendor/bin/drupal`. +* Creates environment variables based on your .env file. See [.env.example](.env.example). + +## Updating Drupal Core + +This project will attempt to keep all of your Drupal Core files up-to-date; the +project [drupal/core-composer-scaffold](https://github.com/drupal/core-composer-scaffold) +is used to ensure that your scaffold files are updated every time drupal/core is +updated. If you customize any of the "scaffolding" files (commonly `.htaccess`), +you may need to merge conflicts if any of your modified files are updated in a +new release of Drupal core. + +Follow the steps below to update your core files. + +1. Run `composer update "drupal/core-*" --with-dependencies` to update Drupal Core and its dependencies. +2. Run `git diff` to determine if any of the scaffolding files have changed. + Review the files for any changes and restore any customizations to + `.htaccess` or `robots.txt`. +1. Commit everything all together in a single commit, so `web` will remain in + sync with the `core` when checking out branches or running `git bisect`. +1. In the event that there are non-trivial conflicts in step 2, you may wish + to perform these steps on a branch, and use `git merge` to combine the + updated core files with your customized files. This facilitates the use + of a [three-way merge tool such as kdiff3](http://www.gitshah.com/2010/12/how-to-setup-kdiff-as-diff-tool-for-git.html). This setup is not necessary if your changes are simple; + keeping all of your modifications at the beginning or end of the file is a + good strategy to keep merges easy. + +## FAQ + +### Should I commit the contrib modules I download? + +Composer recommends **no**. They provide [argumentation against but also +workrounds if a project decides to do it anyway](https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md). + +### Should I commit the scaffolding files? + +The [Drupal Composer Scaffold](https://github.com/drupal/core-composer-scaffold) +plugin can download the scaffold files (like index.php, update.php, …) to the +web/ directory of your project. If you have not customized those files you could +choose to not check them into your version control system (e.g. git). If that is +the case for your project it might be convenient to automatically run the +drupal-scaffold plugin after every install or update of your project. You can +achieve that by registering `@composer drupal:scaffold` as post-install and +post-update command in your composer.json: + +```json +"scripts": { + "post-install-cmd": [ + "@composer drupal:scaffold", + "..." + ], + "post-update-cmd": [ + "@composer drupal:scaffold", + "..." + ] +}, +``` + +### How can I apply patches to downloaded modules? + +If you need to apply patches (depending on the project being modified, a pull +request is often a better solution), you can do so with the +[composer-patches](https://github.com/cweagans/composer-patches) plugin. + +To add a patch to drupal module foobar insert the patches section in the extra +section of composer.json: + +```json +"extra": { + "patches": { + "drupal/foobar": { + "Patch description": "URL or local path to patch" + } + } +} +``` + +### How do I specify a PHP version ? + +This project supports PHP 7.3 as minimum version (see [Environment requirements of Drupal 9](https://www.drupal.org/docs/understanding-drupal/how-drupal-9-was-made-and-what-is-included/environment-requirements-of)), however it's possible that a `composer update` will upgrade some package that will then require PHP 7.3+. + +To prevent this you can add this code to specify the PHP version you want to use in the `config` section of `composer.json`: + +```json +"config": { + "sort-packages": true, + "platform": { + "php": "7.3.19" + } +}, +``` +### How do I edit a profile? + +The profiles are imported during image creation, to edit one please see the +following repository: +https://gitlab.cern.ch/drupal/profiles + +### How to update [JS libs](web/libraries)? + +Run this after composer update. + +Note: find the latest versions for the libs with a `VERSION` variable. + +``` +( mkdir -p web/libraries/jquery.cycle && cd $_ && wget https://raw.githubusercontent.com/malsup/cycle/master/jquery.cycle.all.js; ) +( mkdir -p web/libraries/jquery.hoverIntent && cd $_ && wget https://raw.githubusercontent.com/briancherne/jquery-hoverIntent/master/jquery.hoverIntent.js; ) +( mkdir -p web/libraries/json2 && cd $_ && wget https://raw.githubusercontent.com/douglascrockford/JSON-js/master/json2.js; ) +( mkdir -p web/libraries/jquery.pause && cd $_ && wget https://raw.githubusercontent.com/tobia/Pause/master/jquery.pause.js; ) +( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/colorbutton/releases/colorbutton_$VERSION.zip && unzip colorbutton_$VERSION.zip && rm colorbutton_$VERSION.zip; ) +( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/panelbutton/releases/panelbutton_$VERSION.zip && unzip panelbutton_$VERSION.zip && rm panelbutton_$VERSION.zip; ) +``` -- GitLab From 22ec297cb8d84ccc3229c217d4261d250658cd46 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Fri, 28 May 2021 15:40:48 +0200 Subject: [PATCH 03/27] Debug CI --- .gitlab-ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 436ac5889..72e06c1b0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,10 +12,12 @@ nginx: - | if [[ "$CI_COMMIT_BRANCH" == "v"* ]] ; then export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` - export TAG=${TAG:-"RELEASE".$DATE} + export TAG="RELEASE"-${DATE} else export TAG=$CI_COMMIT_SHORT_SHA fi + - echo $CI_COMMIT_BRANCH + - echo $TAG - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq - export softwareVersions=$CI_PROJECT_DIR/images/softwareVersions - export nginxVersion=`/yq e .nginx $softwareVersions` -- GitLab From bbdf096c413ef0ca3695d594522525a4715b0f32 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Mon, 31 May 2021 11:33:18 +0200 Subject: [PATCH 04/27] CI debug --- .gitlab-ci.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 72e06c1b0..65a7b6038 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,12 +10,11 @@ nginx: entrypoint: [""] script: - | - if [[ "$CI_COMMIT_BRANCH" == "v"* ]] ; then - export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` - export TAG="RELEASE"-${DATE} - else - export TAG=$CI_COMMIT_SHORT_SHA - fi + + case "$CI_COMMIT_BRANCH" in + v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + *) export TAG=$CI_COMMIT_SHORT_SHA ;; + esac - echo $CI_COMMIT_BRANCH - echo $TAG - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq -- GitLab From 1d85ca34d2a008cda1730780a23b5d1c0b1ea7cf Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Mon, 31 May 2021 11:35:58 +0200 Subject: [PATCH 05/27] CI fixed with POSIX casing --- .gitlab-ci.yml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 65a7b6038..ed3bad688 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,8 +9,8 @@ nginx: name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: + # Using POSIX string check since "[[]]" failed - | - case "$CI_COMMIT_BRANCH" in v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; *) export TAG=$CI_COMMIT_SHORT_SHA ;; @@ -34,13 +34,11 @@ sitebuilder: name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: + # Using POSIX string check since "[[]]" failed - | - if [[ "$CI_COMMIT_BRANCH" == "v"* ]]; then - export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` - export TAG=${TAG:-"RELEASE".$DATE} - else - export TAG=$CI_COMMIT_SHORT_SHA - fi + case "$CI_COMMIT_BRANCH" in + v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + *) export TAG=$CI_COMMIT_SHORT_SHA ;; - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq - export softwareVersions=$CI_PROJECT_DIR/images/softwareVersions - export phpVersion=`/yq e .php $softwareVersions` -- GitLab From b8016df75e375b53abca68e1bb237244f1641cf0 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Mon, 31 May 2021 11:35:58 +0200 Subject: [PATCH 06/27] CI fixed with POSIX casing --- .gitlab-ci.yml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 65a7b6038..14c253551 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,8 +9,8 @@ nginx: name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: + # Using POSIX string check since "[[]]" failed - | - case "$CI_COMMIT_BRANCH" in v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; *) export TAG=$CI_COMMIT_SHORT_SHA ;; @@ -34,13 +34,12 @@ sitebuilder: name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: + # Using POSIX string check since "[[]]" failed - | - if [[ "$CI_COMMIT_BRANCH" == "v"* ]]; then - export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` - export TAG=${TAG:-"RELEASE".$DATE} - else - export TAG=$CI_COMMIT_SHORT_SHA - fi + case "$CI_COMMIT_BRANCH" in + v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + *) export TAG=$CI_COMMIT_SHORT_SHA ;; + esac - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq - export softwareVersions=$CI_PROJECT_DIR/images/softwareVersions - export phpVersion=`/yq e .php $softwareVersions` -- GitLab From 8d791ad8a451f55d031cdd37cb6171bf922ed1b7 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Tue, 1 Jun 2021 17:19:09 +0200 Subject: [PATCH 07/27] Made Time synced between jobs --- .gitlab-ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 14c253551..b80a61b0e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,3 @@ - stages: - build @@ -12,7 +11,7 @@ nginx: # Using POSIX string check since "[[]]" failed - | case "$CI_COMMIT_BRANCH" in - v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + v*) export DATE=$(date -u +%Y.%m.%dT%H-%M-%SZ); echo "DATE=$DATE" >> build.env ;export TAG="RELEASE"-${DATE} ;; *) export TAG=$CI_COMMIT_SHORT_SHA ;; esac - echo $CI_COMMIT_BRANCH @@ -27,14 +26,19 @@ nginx: --destination ${CI_REGISTRY_IMAGE}/nginx:${CI_COMMIT_BRANCH}-${TAG} --build-arg NGINX_VERSION=\$nginxVersion; - echo "Nginx image pushed to ${CI_REGISTRY_IMAGE}/nginx:${CI_COMMIT_BRANCH}-${TAG}" + artifacts: + reports: + dotenv: build.env sitebuilder: stage: build + needs: [nginx] image: # We recommend using the CERN version of the Kaniko image: gitlab-registry.cern.ch/ci-tools/docker-image-builder name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: # Using POSIX string check since "[[]]" failed + - echo $DATE - | case "$CI_COMMIT_BRANCH" in v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; -- GitLab From 80704495660cb72dde1fabf7d645dedaa61ebc2d Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Tue, 1 Jun 2021 17:19:09 +0200 Subject: [PATCH 08/27] Made Time synced between jobs --- .gitlab-ci.yml | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 14c253551..31c246a80 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,9 +1,9 @@ - stages: - - build + - nginx + - sitebuilder -nginx: - stage: build +build-nginx: + stage: nginx image: # We recommend using the CERN version of the Kaniko image: gitlab-registry.cern.ch/ci-tools/docker-image-builder name: gitlab-registry.cern.ch/ci-tools/docker-image-builder @@ -12,11 +12,9 @@ nginx: # Using POSIX string check since "[[]]" failed - | case "$CI_COMMIT_BRANCH" in - v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + v*) export DATE=$(date -u +%Y.%m.%dT%H-%M-%SZ); export TAG="RELEASE"-${DATE}; echo "TAG=$TAG" >> build.env ;; *) export TAG=$CI_COMMIT_SHORT_SHA ;; esac - - echo $CI_COMMIT_BRANCH - - echo $TAG - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq - export softwareVersions=$CI_PROJECT_DIR/images/softwareVersions - export nginxVersion=`/yq e .nginx $softwareVersions` @@ -27,17 +25,23 @@ nginx: --destination ${CI_REGISTRY_IMAGE}/nginx:${CI_COMMIT_BRANCH}-${TAG} --build-arg NGINX_VERSION=\$nginxVersion; - echo "Nginx image pushed to ${CI_REGISTRY_IMAGE}/nginx:${CI_COMMIT_BRANCH}-${TAG}" -sitebuilder: - stage: build + artifacts: + reports: + dotenv: build.env + +build-sitebuilder: + stage: sitebuilder + needs: [build-nginx] image: # We recommend using the CERN version of the Kaniko image: gitlab-registry.cern.ch/ci-tools/docker-image-builder name: gitlab-registry.cern.ch/ci-tools/docker-image-builder entrypoint: [""] script: # Using POSIX string check since "[[]]" failed + - echo $DATE - | case "$CI_COMMIT_BRANCH" in - v*) export DATE=`date -u +%Y.%m.%dT%H-%M-%SZ` ; export TAG="RELEASE"-${DATE} ;; + v*) echo $TAG;; *) export TAG=$CI_COMMIT_SHORT_SHA ;; esac - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq -- GitLab From 80d69a84f30d74a0a81a1a62255957dad0b296a7 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Mon, 21 Jun 2021 12:02:10 +0200 Subject: [PATCH 09/27] Autologin bug patched --- composer.lock | 31 ++++++++++--------- patches/README.md | 5 +++ .../openid_connect-3011413-autologin.patch | 3 +- 3 files changed, 22 insertions(+), 17 deletions(-) create mode 100644 patches/README.md diff --git a/composer.lock b/composer.lock index 3f5d085e1..970e7f5fe 100644 --- a/composer.lock +++ b/composer.lock @@ -3504,7 +3504,7 @@ "extra": { "drupal": { "version": "8.x-3.6", - "datestamp": "1620838181", + "datestamp": "1623860918", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -3578,7 +3578,7 @@ }, { "name": "drupal/ctools_block", - "version": "3.6.0", + "version": "3.7.0", "require": { "drupal/core": "^8.8 || ^9", "drupal/ctools": "*" @@ -3586,8 +3586,8 @@ "type": "metapackage", "extra": { "drupal": { - "version": "8.x-3.6", - "datestamp": "1620838181", + "version": "8.x-3.7", + "datestamp": "1623860918", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -10573,16 +10573,16 @@ }, { "name": "phpmailer/phpmailer", - "version": "v6.4.1", + "version": "v6.5.0", "source": { "type": "git", "url": "https://github.com/PHPMailer/PHPMailer.git", - "reference": "9256f12d8fb0cd0500f93b19e18c356906cbed3d" + "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/9256f12d8fb0cd0500f93b19e18c356906cbed3d", - "reference": "9256f12d8fb0cd0500f93b19e18c356906cbed3d", + "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/a5b5c43e50b7fba655f793ad27303cd74c57363c", + "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c", "shasum": "" }, "require": { @@ -10637,7 +10637,7 @@ "description": "PHPMailer is a full-featured email creation and transfer class for PHP", "support": { "issues": "https://github.com/PHPMailer/PHPMailer/issues", - "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.4.1" + "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.0" }, "funding": [ { @@ -10645,7 +10645,7 @@ "type": "github" } ], - "time": "2021-04-29T12:25:04+00:00" + "time": "2021-06-16T14:33:43+00:00" }, { "name": "phpoption/phpoption", @@ -18192,6 +18192,7 @@ "type": "github" } ], + "abandoned": true, "time": "2020-11-30T07:30:19+00:00" }, { @@ -18354,16 +18355,16 @@ }, { "name": "sirbrillig/phpcs-variable-analysis", - "version": "v2.11.0", + "version": "v2.11.1", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "e76e816236f401458dd8e16beecab905861b5867" + "reference": "9df9ade5961a3505d0d24b0e6be2ab82e335f753" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/e76e816236f401458dd8e16beecab905861b5867", - "reference": "e76e816236f401458dd8e16beecab905861b5867", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/9df9ade5961a3505d0d24b0e6be2ab82e335f753", + "reference": "9df9ade5961a3505d0d24b0e6be2ab82e335f753", "shasum": "" }, "require": { @@ -18403,7 +18404,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2021-03-09T22:32:14+00:00" + "time": "2021-06-18T20:54:59+00:00" }, { "name": "symfony/browser-kit", diff --git a/patches/README.md b/patches/README.md new file mode 100644 index 000000000..a372b7703 --- /dev/null +++ b/patches/README.md @@ -0,0 +1,5 @@ + +Upgrade to OpenID version2 notes: + +On file `patches/openid_connect-3011413-autologin.patch`: +- We should change to plugin.manager.openid_connect_client once using the openid_connect module v2 diff --git a/patches/openid_connect-3011413-autologin.patch b/patches/openid_connect-3011413-autologin.patch index 537a1dc59..0f0096867 100644 --- a/patches/openid_connect-3011413-autologin.patch +++ b/patches/openid_connect-3011413-autologin.patch @@ -6,7 +6,7 @@ index 40767fc..f9fdc23 100644 userinfo_mappings: timezone: zoneinfo debug: false -+autostart_login: false ++autostart_login: true diff --git a/config/schema/openid_connect.schema.yml b/config/schema/openid_connect.schema.yml index d638a50..318b4d8 100644 --- a/config/schema/openid_connect.schema.yml @@ -30,7 +30,6 @@ index 5435797..d1931a2 100644 class: Drupal\openid_connect\OpenIDConnectStateToken arguments: [] -+ # We should change to plugin.manager.openid_connect_client once using the openid_connect module v2 + openid_connect.auto_login: + class: Drupal\openid_connect\EventSubscriber\OpenIDConnectAutoLogin + arguments: ['@current_user', '@plugin.manager.openid_connect_client.processor', '@config.factory'] -- GitLab From 7ed860269a953a1ab5618c335813efe60ef1096b Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Mon, 21 Jun 2021 18:02:50 +0200 Subject: [PATCH 10/27] Upgrade drupal 8.9.16 --- composer.json | 6 +++--- composer.lock | 49 +++++++++++++++++++++++++------------------------ 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/composer.json b/composer.json index bbf4230b4..91bc0ed85 100644 --- a/composer.json +++ b/composer.json @@ -213,9 +213,9 @@ "drupal/context": "~4.0.0@beta", "drupal/contribute": "~1.0.0@beta", "drupal/cookieconsent": "~1.6.0", - "drupal/core-composer-scaffold": "8.9.14", - "drupal/core-project-message": "8.9.14", - "drupal/core-recommended": "8.9.14", + "drupal/core-composer-scaffold": "8.9.16", + "drupal/core-project-message": "8.9.16", + "drupal/core-recommended": "8.9.16", "drupal/ctools": "~3.6.0", "drupal/devel": "~2.1.0", "drupal/domain_301_redirect": "~1.0.0@alpha", diff --git a/composer.lock b/composer.lock index 970e7f5fe..472ffa32f 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": "53c8ee88164f19c64bf574f1e7f0e1a0", + "content-hash": "cf65b46c82674c2d9025876804415848", "packages": [ { "name": "asm89/stack-cors", @@ -1915,6 +1915,7 @@ "url": "https://gitlab.cern.ch/drupal/profiles.git", "reference": "574056d9f1cee131aa53bf189717371d4be0dd9f" }, + "default-branch": true, "type": "drupal-profile", "license": [ "Apache-v2" @@ -3075,16 +3076,16 @@ }, { "name": "drupal/core", - "version": "8.9.14", + "version": "8.9.16", "source": { "type": "git", "url": "https://github.com/drupal/core.git", - "reference": "84796e158cd3bd50af08974dd62931d0cc78dc7e" + "reference": "498effa27ae5111f53f04fbe80fd05369a88c53d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core/zipball/84796e158cd3bd50af08974dd62931d0cc78dc7e", - "reference": "84796e158cd3bd50af08974dd62931d0cc78dc7e", + "url": "https://api.github.com/repos/drupal/core/zipball/498effa27ae5111f53f04fbe80fd05369a88c53d", + "reference": "498effa27ae5111f53f04fbe80fd05369a88c53d", "shasum": "" }, "require": { @@ -3303,13 +3304,13 @@ ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", "support": { - "source": "https://github.com/drupal/core/tree/8.9.14" + "source": "https://github.com/drupal/core/tree/8.9.16" }, - "time": "2021-04-20T23:05:40+00:00" + "time": "2021-05-25T09:17:58+00:00" }, { "name": "drupal/core-composer-scaffold", - "version": "8.9.14", + "version": "8.9.16", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", @@ -3353,13 +3354,13 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.5" + "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.4" }, "time": "2020-08-07T22:30:30+00:00" }, { "name": "drupal/core-project-message", - "version": "8.9.14", + "version": "8.9.16", "source": { "type": "git", "url": "https://github.com/drupal/core-project-message.git", @@ -3394,22 +3395,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-project-message/tree/8.9.14" + "source": "https://github.com/drupal/core-project-message/tree/8.9.4" }, "time": "2020-08-02T22:04:49+00:00" }, { "name": "drupal/core-recommended", - "version": "8.9.14", + "version": "8.9.16", "source": { "type": "git", "url": "https://github.com/drupal/core-recommended.git", - "reference": "4e468b0df84cdcf6f30594feb4e080c5c6ea7ab3" + "reference": "ec38f5cb75ca1848f2247a645d4a4dee4abe4c28" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-recommended/zipball/4e468b0df84cdcf6f30594feb4e080c5c6ea7ab3", - "reference": "4e468b0df84cdcf6f30594feb4e080c5c6ea7ab3", + "url": "https://api.github.com/repos/drupal/core-recommended/zipball/ec38f5cb75ca1848f2247a645d4a4dee4abe4c28", + "reference": "ec38f5cb75ca1848f2247a645d4a4dee4abe4c28", "shasum": "" }, "require": { @@ -3421,7 +3422,7 @@ "doctrine/common": "v2.7.3", "doctrine/inflector": "v1.2.0", "doctrine/lexer": "1.0.2", - "drupal/core": "8.9.14", + "drupal/core": "8.9.16", "easyrdf/easyrdf": "0.9.1", "egulias/email-validator": "2.1.17", "guzzlehttp/guzzle": "6.5.4", @@ -3434,7 +3435,7 @@ "laminas/laminas-zendframework-bridge": "1.0.4", "masterminds/html5": "2.3.0", "paragonie/random_compat": "v9.99.99", - "pear/archive_tar": "1.4.12", + "pear/archive_tar": "1.4.13", "pear/console_getopt": "v1.4.3", "pear/pear-core-minimal": "v1.10.10", "pear/pear_exception": "v1.0.1", @@ -3479,9 +3480,9 @@ ], "description": "Locked core dependencies; require this project INSTEAD OF drupal/core.", "support": { - "source": "https://github.com/drupal/core-recommended/tree/8.9.14" + "source": "https://github.com/drupal/core-recommended/tree/8.9.16" }, - "time": "2021-04-20T23:05:40+00:00" + "time": "2021-05-25T09:17:58+00:00" }, { "name": "drupal/ctools", @@ -10115,16 +10116,16 @@ }, { "name": "pear/archive_tar", - "version": "1.4.12", + "version": "1.4.13", "source": { "type": "git", "url": "https://github.com/pear/Archive_Tar.git", - "reference": "19bb8e95490d3e3ad92fcac95500ca80bdcc7495" + "reference": "2b87b41178cc6d4ad3cba678a46a1cae49786011" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/19bb8e95490d3e3ad92fcac95500ca80bdcc7495", - "reference": "19bb8e95490d3e3ad92fcac95500ca80bdcc7495", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/2b87b41178cc6d4ad3cba678a46a1cae49786011", + "reference": "2b87b41178cc6d4ad3cba678a46a1cae49786011", "shasum": "" }, "require": { @@ -10191,7 +10192,7 @@ "type": "patreon" } ], - "time": "2021-01-18T19:32:54+00:00" + "time": "2021-02-16T10:50:50+00:00" }, { "name": "pear/console_getopt", -- GitLab From 9b0d465a5a62624cd819ba7a8466d84b45fafa35 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Tue, 6 Jul 2021 15:39:06 +0200 Subject: [PATCH 11/27] Reference issue for nginx redirection --- images/nginx/config/default.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/images/nginx/config/default.conf b/images/nginx/config/default.conf index a4dfae9b5..f2e251147 100644 --- a/images/nginx/config/default.conf +++ b/images/nginx/config/default.conf @@ -150,6 +150,7 @@ server { # To develop this section the following links were used: # - http://nginx.org/en/docs/http/ngx_http_rewrite_module.html#rewrite # - https://www.nginx.com/blog/creating-nginx-rewrite-rules/ + # Ref: https://gitlab.cern.ch/webservices/webframeworks-planning/-/issues/390 location ~ "^/sites/((?!default)).*$" { rewrite ^(/sites)/[^\/]+/(.*)$ $1/default/$2 permanent; } -- GitLab From c7973b918df40697287b8f9542795ab10b2ad726 Mon Sep 17 00:00:00 2001 From: Dimitra Chatzichrysou <dimitra.chatzichrysou@cern.ch> Date: Fri, 23 Jul 2021 07:27:21 +0000 Subject: [PATCH 12/27] Merge branch 'drupal-cron' into 'master' Drupal cron See merge request drupal/paas/cern-drupal-distribution!16 --- images/drupal-operations-scripts/run-cron.sh | 44 ++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 images/drupal-operations-scripts/run-cron.sh diff --git a/images/drupal-operations-scripts/run-cron.sh b/images/drupal-operations-scripts/run-cron.sh new file mode 100644 index 000000000..ba2efb876 --- /dev/null +++ b/images/drupal-operations-scripts/run-cron.sh @@ -0,0 +1,44 @@ +#!/bin/sh +# The script triggers a CronTask inside of Drupal, following these steps: +# 1. Retrieve the cron_key of the website +# 2. Make a http request to the website using the key in order to trigger a CronTask +# Issue link: https://gitlab.cern.ch/webservices/webframeworks-planning/-/issues/437 +# Note: If in the future we want to have more periodic actions made to the Drupalsites +# or want to trigger CronTasks in a different way, all we need is to edit this script. +# The DrupalSite operator is only involved to create a CronJob that executes this script. + +usage() { + echo "Usage: $0 --site <site>" 1>&2; + exit 1; +} + +# Options +ARGS=$(getopt -o 's:' --long 'site:' -- "$@") || exit 1 +eval "set -- $ARGS" + +while true; do + case "$1" in + (-s|--site) + export site="$2"; shift 2;; + (--) shift; break;; + (*) usage;; + esac +done +[[ -z "$site" ]] && usage + +cron_key=$(drush state-get system.cron_key --format=string) +if echo "$cron_key" | grep -Eq '^[:alnum:]_-]+$' ; then # key can contain alphabetic, numeric, and two special characters. + echo "$(date) : [${site}] Error cron key not valid. Website might be broken." + continue +fi + +HTTP_CODE=$(curl --location --silent -L -w "%{http_code}\n" "http://${site}/cron/${cron_key}" -o /dev/null) +case $HTTP_CODE in + 204) + echo "$(date) : [${site}] ${HTTP_CODE/204/OK}" # Logs not added since pod logs should suffice ? >> "$LOGFILE_MASTER" 204 No Content -> success + ;; + *) + echo "$(date) : [${site}] Error code, expected 204, got ${HTTP_CODE}" + exit 1 + ;; +esac -- GitLab From e88ab7a6c2080bc562e780af44465ba1687e50d3 Mon Sep 17 00:00:00 2001 From: Francisco Borges Aurindo Barros <francisco.borges.aurindo.barros@cern.ch> Date: Thu, 5 Aug 2021 09:32:37 +0000 Subject: [PATCH 13/27] Merge branch 'nginx-webdav-hotfix' into 'master' [Hotfix] Increase upload limit on webdav See merge request drupal/paas/cern-drupal-distribution!18 --- images/nginx/config/default.conf | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/images/nginx/config/default.conf b/images/nginx/config/default.conf index fc210e17a..d3b7857c7 100644 --- a/images/nginx/config/default.conf +++ b/images/nginx/config/default.conf @@ -8,14 +8,14 @@ upstream webdav { server { #listen 8080 ssl; listen 8080; - + #ssl_certificate /etc/ssl/certs/ca-certificates.crt; #ssl_certificate_key /etc/ssl/certs/ca-cert-COMODO_Certification_Authority.pem; #ssl_session_cache shared:SSL:20m; #ssl_session_timeout 4h; - + root /var/run/app/web; - + # Disables specifying the port in absolute redirects port_in_redirect off; @@ -52,12 +52,15 @@ server { fastcgi_param SCRIPT_NAME /_webdav; # this is the local path to the script fastcgi_param SCRIPT_FILENAME /webdav/server.php; - fastcgi_param REQUEST_METHOD "GET"; fastcgi_param QUERY_STRING $query_string; + # Set client_max_body_size. This is need to upload large field through sabredav else webdav throws "413 Request Entity Too Large" + # Currently we set max upload size on 100M, values above should use `oc` client? TBD + client_max_body_size 100M; fastcgi_pass webdav; } + # Very rarely should these ever be accessed outside of your lan location ~* \.(txt|log)$ { allow 192.168.0.0/16; @@ -152,8 +155,8 @@ server { expires max; log_not_found off; } - - + + location ^~ /simplesaml { alias /app/vendor/simplesamlphp/simplesamlphp/www; @@ -166,7 +169,7 @@ server { fastcgi_param PATH_INFO $pathinfo if_not_empty; } } - + # We want to make the redirection https://sitename.web.cern.ch/sitename/sites/something to https://sitename.web.cern.ch/sites/default/. # This location matches any url containing /sites/sitename/.../file and redirects to /sites/default/.../file. # It omits redirection for urls containing /sites/default. -- GitLab From ae582f77b81b186b131814ffd23d588d3ee5b722 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Wed, 29 Sep 2021 20:59:29 +0200 Subject: [PATCH 14/27] Friendly environment for composer builder --- images/Dockerfile-composerbuilder | 4 ++++ images/softwareVersions | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/images/Dockerfile-composerbuilder b/images/Dockerfile-composerbuilder index f2cbe3ab4..9e869bb0a 100644 --- a/images/Dockerfile-composerbuilder +++ b/images/Dockerfile-composerbuilder @@ -71,3 +71,7 @@ RUN set -eux; \ apk del .build-deps RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer --version=${COMPOSER_VERSION} + +# Make the environment friendly for interactive use during development +WORKDIR /project +ENTRYPOINT /bin/sh diff --git a/images/softwareVersions b/images/softwareVersions index 15d948da3..010ab493e 100644 --- a/images/softwareVersions +++ b/images/softwareVersions @@ -1,4 +1,4 @@ php: '7.3.23-fpm-alpine3.12' nginx: '1.18.0' composer: '2.1.8' -composerBuilderTag: 'devenv-a5767c31' +composerBuilderTag: 'RELEASE-2021.09.29T18-57-38Z' -- GitLab From 76b0fb0846ae3e452bf75554f1dea77b59ae9631 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Wed, 29 Sep 2021 22:21:46 +0200 Subject: [PATCH 15/27] Fix release spec --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 51ea6d074..1dfa02768 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ environment: - | export DATE=$(date -u +%Y.%m.%dT%H-%M-%SZ); case "$CI_COMMIT_BRANCH" in - v*) export TAG="RELEASE-${DATE}" ;; + v*) export TAG="${CI_COMMIT_BRANCH}-RELEASE-${DATE}" ;; *) export TAG="${CI_COMMIT_BRANCH}-${CI_COMMIT_SHORT_SHA}" ;; esac - wget --no-check-certificate https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /yq && chmod +x /yq -- GitLab From f2e51f809e6913eaebb4687e507c105c8992cb1e Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Thu, 7 Oct 2021 03:07:53 +0200 Subject: [PATCH 16/27] Update dependencies --- composer.json | 306 ++++++++++++++++++--------- composer.lock | 561 +++++++++++++++++++++++++------------------------- 2 files changed, 488 insertions(+), 379 deletions(-) diff --git a/composer.json b/composer.json index 8c20ed13e..2b77c18e7 100644 --- a/composer.json +++ b/composer.json @@ -134,127 +134,229 @@ ], "require": { "php": ">=7.3", - "composer/installers": "~1.10.0", - "cweagans/composer-patches": "~1.7.0", - "drupal/admin_toolbar": "~2.4.0", - "drupal/adminimal_theme": "~1.6.0", - "drupal/allowed_formats": "~1.3.0", - "drupal/bootstrap": "~3.23.0", - "drupal/captcha": "~1.1.0", - "drupal/cern-adminimal-subtheme": "~2.1.0", - "drupal/cern-base-theme": "~2.6.6", - "drupal/cern-cds-media": "~2.1.4", - "drupal/cern-components": "~2.7.10", - "drupal/cern-dev-status": "~2.0.5", - "drupal/cern-display-formats": "~1.4.5", - "drupal/cern-drupal-welcome-message-block": "~1.1.0", - "drupal/cern-full-html-format": "~2.0.4", - "drupal/cern-indico-feeds": "~2.0.5", + "composer/installers": "~1.10", + "composer/installers": "~1.10", + "cweagans/composer-patches": "~1.7", + "cweagans/composer-patches": "~1.7", + "drupal/admin_toolbar": "~2.4", + "drupal/admin_toolbar": "~2.4", + "drupal/adminimal_theme": "~1.6", + "drupal/adminimal_theme": "~1.6", + "drupal/allowed_formats": "~1.3", + "drupal/allowed_formats": "~1.3", + "drupal/bootstrap": "~3.23", + "drupal/bootstrap": "~3.23", + "drupal/captcha": "~1.1", + "drupal/captcha": "~1.1", + "drupal/cern-adminimal-subtheme": "~2.1", + "drupal/cern-adminimal-subtheme": "~2.1", + "drupal/cern-base-theme": "~2.6", + "drupal/cern-base-theme": "~2.6", + "drupal/cern-cds-media": "~2.1", + "drupal/cern-cds-media": "~2.1", + "drupal/cern-components": "~2.7", + "drupal/cern-components": "~2.7", + "drupal/cern-dev-status": "~2.0", + "drupal/cern-dev-status": "~2.0", + "drupal/cern-display-formats": "~1.4", + "drupal/cern-display-formats": "~1.4", + "drupal/cern-drupal-welcome-message-block": "~1.1", + "drupal/cern-drupal-welcome-message-block": "~1.1", + "drupal/cern-full-html-format": "~2.0", + "drupal/cern-full-html-format": "~2.0", + "drupal/cern-indico-feeds": "~2.0", + "drupal/cern-indico-feeds": "~2.0", "drupal/cern-install-profiles": "dev-k8s", - "drupal/cern-integration": "~1.0.0", - "drupal/cern-landing-page": "~2.2.4", - "drupal/cern-ldap-api": "~1.0.0", - "drupal/cern-loading": "~2.1.2", - "drupal/cern-paragraph-types": "~2.2.3", - "drupal/cern-profile-displayname": "~2.1.0", - "drupal/cern-theme": "~2.6.11", - "drupal/cern-toolbar": "~2.2.3", - "drupal/cern-webcast-feeds": "~2.0.4", - "drupal/cern-webform-invitation": "~1.0.0", - "drupal/ckeditor_font": "~1.1.0", - "drupal/codesnippet": "~1.7.0", - "drupal/color_field": "~2.4.0", - "drupal/colorbox": "~1.7.0", - "drupal/colorbutton": "~1.2.0", - "drupal/components": "~2.4.0", - "drupal/config_update": "~1.7.0", + "drupal/cern-integration": "~1.0", + "drupal/cern-integration": "~1.0", + "drupal/cern-landing-page": "~2.2", + "drupal/cern-landing-page": "~2.2", + "drupal/cern-ldap-api": "~1.0", + "drupal/cern-ldap-api": "~1.0", + "drupal/cern-loading": "~2.1", + "drupal/cern-loading": "~2.1", + "drupal/cern-paragraph-types": "~2.2", + "drupal/cern-paragraph-types": "~2.2", + "drupal/cern-profile-displayname": "~2.1", + "drupal/cern-profile-displayname": "~2.1", + "drupal/cern-theme": "~2.6", + "drupal/cern-theme": "~2.6", + "drupal/cern-toolbar": "~2.2", + "drupal/cern-toolbar": "~2.2", + "drupal/cern-webcast-feeds": "~2.0", + "drupal/cern-webcast-feeds": "~2.0", + "drupal/cern-webform-invitation": "~1.0", + "drupal/cern-webform-invitation": "~1.0", + "drupal/ckeditor_font": "~1.1", + "drupal/ckeditor_font": "~1.1", + "drupal/codesnippet": "~1.7", + "drupal/codesnippet": "~1.7", + "drupal/color_field": "~2.4", + "drupal/color_field": "~2.4", + "drupal/colorbox": "~1.7", + "drupal/colorbox": "~1.7", + "drupal/colorbutton": "~1.2", + "drupal/colorbutton": "~1.2", + "drupal/components": "~2.4", + "drupal/components": "~2.4", + "drupal/config_update": "~1.7", + "drupal/config_update": "~1.7", "drupal/content_access": "~1.0.0@alpha", "drupal/context": "~4.0.0@beta", "drupal/contribute": "~1.0.0@beta", - "drupal/cookieconsent": "~1.6.0", - "drupal/core-composer-scaffold": "8.9.18", - "drupal/core-project-message": "8.9.18", - "drupal/core-recommended": "8.9.18", - "drupal/ctools": "~3.6.0", - "drupal/devel": "~2.1.0", + "drupal/cookieconsent": "~1.6", + "drupal/cookieconsent": "~1.6", + "drupal/core-composer-scaffold": "8.9", + "drupal/core-composer-scaffold": "8.9", + "drupal/core-project-message": "8.9", + "drupal/core-project-message": "8.9", + "drupal/core-recommended": "8.9", + "drupal/core-recommended": "8.9", + "drupal/ctools": "~3.6", + "drupal/ctools": "~3.6", + "drupal/devel": "~2.1", + "drupal/devel": "~2.1", "drupal/domain_301_redirect": "~1.0.0@alpha", - "drupal/ds": "~3.12.0", - "drupal/easy_breadcrumb": "~1.15.0", - "drupal/easychart": "~3.4.0", - "drupal/entity_browser": "~2.5.0", - "drupal/entity_print": "~2.2.0", - "drupal/entity_reference_revisions": "~1.9.0", - "drupal/externalauth": "~1.3.0", - "drupal/extlink": "~1.6.0", - "drupal/facets": "~1.7.0", + "drupal/ds": "~3.12", + "drupal/ds": "~3.12", + "drupal/easy_breadcrumb": "~1.15", + "drupal/easy_breadcrumb": "~1.15", + "drupal/easychart": "~3.4", + "drupal/easychart": "~3.4", + "drupal/entity_browser": "~2.5", + "drupal/entity_browser": "~2.5", + "drupal/entity_print": "~2.2", + "drupal/entity_print": "~2.2", + "drupal/entity_reference_revisions": "~1.9", + "drupal/entity_reference_revisions": "~1.9", + "drupal/externalauth": "~1.3", + "drupal/externalauth": "~1.3", + "drupal/extlink": "~1.6", + "drupal/extlink": "~1.6", + "drupal/facets": "~1.7", + "drupal/facets": "~1.7", "drupal/fast_404": "~2.0.0@alpha", - "drupal/features": "~3.12.0", + "drupal/features": "~3.12", + "drupal/features": "~3.12", "drupal/feeds": "~3.0.0@alpha", "drupal/fences": "~2.0.0@rc", - "drupal/field_formatter_class": "~1.5.0", - "drupal/field_group": "~3.1.0", - "drupal/field_permissions": "~1.1.0", + "drupal/field_formatter_class": "~1.5", + "drupal/field_formatter_class": "~1.5", + "drupal/field_group": "~3.1", + "drupal/field_group": "~3.1", + "drupal/field_permissions": "~1.1", + "drupal/field_permissions": "~1.1", "drupal/filefield_paths": "~1.0.0@beta", - "drupal/honeypot": "~1.30.0", - "drupal/hook_event_dispatcher": "~1.29.0", - "drupal/hotjar": "~2.0.0", - "drupal/imagemagick": "~2.7.0", - "drupal/imce": "~2.3.0", - "drupal/jquery_ui": "~1.4.0", - "drupal/jquery_ui_draggable": "~1.2.0", - "drupal/jquery_ui_droppable": "~1.2.0", - "drupal/ludwig": "~1.7.0", - "drupal/mailsystem": "~4.3.0", - "drupal/matomo": "~1.11.0", - "drupal/memcache": "~2.3.0", - "drupal/menu_block": "~1.6.0", - "drupal/menu_breadcrumb": "~1.14.0", - "drupal/menu_force": "~1.2.0", - "drupal/metatag": "~1.16.0", - "drupal/migrate_plus": "~4.2.0", - "drupal/migrate_tools": "~4.5.0", - "drupal/migrate_upgrade": "~3.2.0", - "drupal/module_filter": "~3.2.0", - "drupal/node_view_permissions": "~1.4.0", + "drupal/honeypot": "~1.30", + "drupal/honeypot": "~1.30", + "drupal/hook_event_dispatcher": "~1.29", + "drupal/hook_event_dispatcher": "~1.29", + "drupal/hotjar": "~2.0", + "drupal/hotjar": "~2.0", + "drupal/imagemagick": "~2.7", + "drupal/imagemagick": "~2.7", + "drupal/imce": "~2.3", + "drupal/imce": "~2.3", + "drupal/jquery_ui": "~1.4", + "drupal/jquery_ui": "~1.4", + "drupal/jquery_ui_draggable": "~1.2", + "drupal/jquery_ui_draggable": "~1.2", + "drupal/jquery_ui_droppable": "~1.2", + "drupal/jquery_ui_droppable": "~1.2", + "drupal/ludwig": "~1.7", + "drupal/ludwig": "~1.7", + "drupal/mailsystem": "~4.3", + "drupal/mailsystem": "~4.3", + "drupal/matomo": "~1.11", + "drupal/matomo": "~1.11", + "drupal/memcache": "~2.3", + "drupal/memcache": "~2.3", + "drupal/menu_block": "~1.6", + "drupal/menu_block": "~1.6", + "drupal/menu_breadcrumb": "~1.14", + "drupal/menu_breadcrumb": "~1.14", + "drupal/menu_force": "~1.2", + "drupal/menu_force": "~1.2", + "drupal/metatag": "~1.16", + "drupal/metatag": "~1.16", + "drupal/migrate_plus": "~4.2", + "drupal/migrate_plus": "~4.2", + "drupal/migrate_tools": "~4.5", + "drupal/migrate_tools": "~4.5", + "drupal/migrate_upgrade": "~3.2", + "drupal/migrate_upgrade": "~3.2", + "drupal/module_filter": "~3.2", + "drupal/module_filter": "~3.2", + "drupal/node_view_permissions": "~1.4", + "drupal/node_view_permissions": "~1.4", "drupal/openid_connect": "^1.1", - "drupal/panelbutton": "~1.3.0", - "drupal/panelizer": "~4.4.0", - "drupal/panels": "~4.6.0", - "drupal/paragraphs": "~1.12.0", - "drupal/pathauto": "~1.8.0", - "drupal/permissions_by_term": "~2.31.0", - "drupal/piwik": "~1.4.0", - "drupal/recaptcha": "~2.5.0", - "drupal/redirect": "~1.6.0", - "drupal/require_login": "~2.4.0", + "drupal/panelbutton": "~1.3", + "drupal/panelbutton": "~1.3", + "drupal/panelizer": "~4.4", + "drupal/panelizer": "~4.4", + "drupal/panels": "~4.6", + "drupal/panels": "~4.6", + "drupal/paragraphs": "~1.12", + "drupal/paragraphs": "~1.12", + "drupal/pathauto": "~1.8", + "drupal/pathauto": "~1.8", + "drupal/permissions_by_term": "~2.31", + "drupal/permissions_by_term": "~2.31", + "drupal/piwik": "~1.4", + "drupal/piwik": "~1.4", + "drupal/recaptcha": "~2.5", + "drupal/recaptcha": "~2.5", + "drupal/redirect": "~1.6", + "drupal/redirect": "~1.6", + "drupal/require_login": "~2.4", + "drupal/require_login": "~2.4", "drupal/rules": "~3.0.0@alpha", - "drupal/scheduler": "~1.3.0", - "drupal/search_api": "~1.19.0", - "drupal/simplesamlphp_auth": "~3.2.0", - "drupal/smart_trim": "~1.3.0", - "drupal/sticky": "~1.1.0", - "drupal/token": "~1.9.0", - "drupal/twig_tweak": "~2.9.0", - "drupal/ui_patterns": "~1.2.0", + "drupal/scheduler": "~1.3", + "drupal/scheduler": "~1.3", + "drupal/search_api": "~1.19", + "drupal/search_api": "~1.19", + "drupal/simplesamlphp_auth": "~3.2", + "drupal/simplesamlphp_auth": "~3.2", + "drupal/smart_trim": "~1.3", + "drupal/smart_trim": "~1.3", + "drupal/sticky": "~1.1", + "drupal/sticky": "~1.1", + "drupal/token": "~1.9", + "drupal/token": "~1.9", + "drupal/twig_tweak": "~2.9", + "drupal/twig_tweak": "~2.9", + "drupal/ui_patterns": "~1.2", + "drupal/ui_patterns": "~1.2", "drupal/upgrade_status": "~3.11", - "drupal/userprotect": "~1.1.0", - "drupal/views_bulk_operations": "~2.6.0", - "drupal/views_slideshow": "~4.8.0", + "drupal/userprotect": "~1.1", + "drupal/userprotect": "~1.1", + "drupal/views_bulk_operations": "~2.6", + "drupal/views_bulk_operations": "~2.6", + "drupal/views_slideshow": "~4.8", + "drupal/views_slideshow": "~4.8", "drupal/views_taxonomy_term_name_depth": "^7.0", - "drupal/viewsreference": "~1.7.0", - "drupal/webform": "~5.25.0", + "drupal/viewsreference": "~1.7", + "drupal/viewsreference": "~1.7", + "drupal/webform": "~5.25", + "drupal/webform": "~5.25", "drupal/webform_analysis": "~1.0.0@beta", - "drupal/webform_invitation": "~1.1.0", - "drupal/workbench": "~1.3.0", + "drupal/webform_invitation": "~1.1", + "drupal/webform_invitation": "~1.1", + "drupal/workbench": "~1.3", + "drupal/workbench": "~1.3", "drupal/workbench_access": "~1.0.0@beta", - "drupal/workbench_moderation": "~1.6.0", + "drupal/workbench_moderation": "~1.6", + "drupal/workbench_moderation": "~1.6", "drush/drush": "~10.3", - "vlucas/phpdotenv": "~5.1.0", - "webflo/drupal-finder": "~1.2.0", + "vlucas/phpdotenv": "~5.1", + "vlucas/phpdotenv": "~5.1", + "webflo/drupal-finder": "~1.2", + "webflo/drupal-finder": "~1.2", "wikimedia/composer-merge-plugin": "~2.0.1" }, "require-dev": { - "drupal/core-dev": "~8.9.18", + "drupal/core-dev": "~8.9", + "drupal/core-dev": "~8.9", "zaporylie/composer-drupal-optimizations": "~1.2.0" }, "conflict": { diff --git a/composer.lock b/composer.lock index fa892c549..e33141f74 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": "9e2f9e0ec9b7b5b8040084f7a61c7322", + "content-hash": "a1f828da7531dee3e01f2a44ada593a4", "packages": [ { "name": "asm89/stack-cors", @@ -116,16 +116,16 @@ }, { "name": "composer/installers", - "version": "v1.10.0", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/composer/installers.git", - "reference": "1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d" + "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/installers/zipball/1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d", - "reference": "1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d", + "url": "https://api.github.com/repos/composer/installers/zipball/d20a64ed3c94748397ff5973488761b22f6d3f19", + "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19", "shasum": "" }, "require": { @@ -219,10 +219,12 @@ "majima", "mako", "mediawiki", + "miaoxing", "modulework", "modx", "moodle", "osclass", + "pantheon", "phpbb", "piwik", "ppi", @@ -236,6 +238,7 @@ "sydes", "sylius", "symfony", + "tastyigniter", "typo3", "wordpress", "yawik", @@ -244,7 +247,7 @@ ], "support": { "issues": "https://github.com/composer/installers/issues", - "source": "https://github.com/composer/installers/tree/v1.10.0" + "source": "https://github.com/composer/installers/tree/v1.12.0" }, "funding": [ { @@ -260,7 +263,7 @@ "type": "tidelift" } ], - "time": "2021-01-14T11:07:16+00:00" + "time": "2021-09-13T08:19:44+00:00" }, { "name": "composer/semver", @@ -1686,16 +1689,16 @@ }, { "name": "dompdf/dompdf", - "version": "v0.8.6", + "version": "v1.0.2", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "db91d81866c69a42dad1d2926f61515a1e3f42c5" + "reference": "8768448244967a46d6e67b891d30878e0e15d25c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/db91d81866c69a42dad1d2926f61515a1e3f42c5", - "reference": "db91d81866c69a42dad1d2926f61515a1e3f42c5", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/8768448244967a46d6e67b891d30878e0e15d25c", + "reference": "8768448244967a46d6e67b891d30878e0e15d25c", "shasum": "" }, "require": { @@ -1703,11 +1706,11 @@ "ext-mbstring": "*", "phenx/php-font-lib": "^0.5.2", "phenx/php-svg-lib": "^0.3.3", - "php": "^7.1" + "php": "^7.1 || ^8.0" }, "require-dev": { "mockery/mockery": "^1.3", - "phpunit/phpunit": "^7.5", + "phpunit/phpunit": "^7.5 || ^8 || ^9", "squizlabs/php_codesniffer": "^3.5" }, "suggest": { @@ -1752,9 +1755,9 @@ "homepage": "https://github.com/dompdf/dompdf", "support": { "issues": "https://github.com/dompdf/dompdf/issues", - "source": "https://github.com/dompdf/dompdf/tree/master" + "source": "https://github.com/dompdf/dompdf/tree/v1.0.2" }, - "time": "2020-08-30T22:54:22+00:00" + "time": "2021-01-08T14:18:52+00:00" }, { "name": "drupal-ckeditor-libraries-group/codesnippet", @@ -1792,16 +1795,16 @@ }, { "name": "drupal-ckeditor-libraries-group/font", - "version": "4.13.1", + "version": "4.16.2", "source": { "type": "git", "url": "https://github.com/drupal-ckeditor-libraries-group/font.git", - "reference": "52623aa91a9aea941570fb21b686e3295b337290" + "reference": "b6152ef945efcae2c8c3bb083ffc34bde6696532" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal-ckeditor-libraries-group/font/zipball/52623aa91a9aea941570fb21b686e3295b337290", - "reference": "52623aa91a9aea941570fb21b686e3295b337290", + "url": "https://api.github.com/repos/drupal-ckeditor-libraries-group/font/zipball/b6152ef945efcae2c8c3bb083ffc34bde6696532", + "reference": "b6152ef945efcae2c8c3bb083ffc34bde6696532", "shasum": "" }, "type": "drupal-library", @@ -1822,21 +1825,21 @@ "issues": "https://github.com/ckeditor/ckeditor4/issues", "source": "https://github.com/ckeditor/ckeditor4/tree/master/plugins/font" }, - "time": "2019-06-27T14:05:00+00:00" + "time": "2021-07-15T11:15:39+00:00" }, { "name": "drupal/admin_toolbar", - "version": "2.4.0", + "version": "2.5.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/admin_toolbar.git", - "reference": "8.x-2.4" + "reference": "8.x-2.5" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/admin_toolbar-8.x-2.4.zip", - "reference": "8.x-2.4", - "shasum": "6240047b8d91ac78f98d861ba8282af971fa0b38" + "url": "https://ftp.drupal.org/files/projects/admin_toolbar-8.x-2.5.zip", + "reference": "8.x-2.5", + "shasum": "c71e58051b8d6818272df96d14cb11407d5e5ceb" }, "require": { "drupal/core": "^8.8.0 || ^9.0" @@ -1844,7 +1847,7 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.4", + "version": "8.x-2.5", "datestamp": "1629907119", "security-coverage": { "status": "covered", @@ -2063,17 +2066,17 @@ }, { "name": "drupal/captcha", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/captcha.git", - "reference": "8.x-1.1" + "reference": "8.x-1.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/captcha-8.x-1.1.zip", - "reference": "8.x-1.1", - "shasum": "2eaf6f00ea256652c09f785b26dc933cc5b3dd26" + "url": "https://ftp.drupal.org/files/projects/captcha-8.x-1.2.zip", + "reference": "8.x-1.2", + "shasum": "e35a2ce42b652f833d140f7571d1eef0e06b0edc" }, "require": { "drupal/core": "^8.8 || ^9" @@ -2081,8 +2084,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.1", - "datestamp": "1591160977", + "version": "8.x-1.2", + "datestamp": "1619673374", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2521,11 +2524,11 @@ }, { "name": "drupal/cern-theme", - "version": "2.6.12", + "version": "2.7.0", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/themes/cern.git", - "reference": "408630b7b5e53086c2991653fa8a0d561f3166b2" + "reference": "9b10b4897eb768c4e5740689135f5e618fd9f621" }, "require": { "drupal/cern-base-theme": "^2.6.1" @@ -2541,7 +2544,7 @@ } ], "description": "Defines the CERN theme", - "time": "2021-04-27T12:37:58+00:00" + "time": "2021-05-19T09:18:30+00:00" }, { "name": "drupal/cern-toolbar", @@ -2618,27 +2621,27 @@ }, { "name": "drupal/ckeditor_font", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ckeditor_font.git", - "reference": "8.x-1.1" + "reference": "8.x-1.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.1.zip", - "reference": "8.x-1.1", - "shasum": "a8d0d10e7b23307bb9aba5de707518c108f69570" + "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.2.zip", + "reference": "8.x-1.2", + "shasum": "84462a78ddc4bbafb9ebc11f1e2871bfaa994a9f" }, "require": { - "drupal-ckeditor-libraries-group/font": "4.13.1", + "drupal-ckeditor-libraries-group/font": "^4.13.1", "drupal/core": "^8 || ^9" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.1", - "datestamp": "1590157419", + "version": "8.x-1.2", + "datestamp": "1617651505", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2737,24 +2740,24 @@ }, { "name": "drupal/color_field", - "version": "2.4.0", + "version": "2.5.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/color_field.git", - "reference": "8.x-2.4" + "reference": "8.x-2.5" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/color_field-8.x-2.4.zip", - "reference": "8.x-2.4", - "shasum": "11c163a409f4f70083f188d917fecc6052c53a2f" + "url": "https://ftp.drupal.org/files/projects/color_field-8.x-2.5.zip", + "reference": "8.x-2.5", + "shasum": "9b0d299cb24d3cb21c7fb6a6a08d32ae5aed8652" }, "require": { "drupal/core": "^8 || ^9" }, "require-dev": { - "drupal/token": "~1.3", - "nickwilde1990/php-composter-phpcs-drupal": "^2.0" + "drupal/core-recommended": "*", + "drupal/token": "~1.3" }, "suggest": { "bower-asset/jquery-simple-color": "^v1.2.2: Provides JavaScript library necessary for the Color Grid widget", @@ -2763,8 +2766,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.4", - "datestamp": "1596479692", + "version": "8.x-2.5", + "datestamp": "1632938098", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2871,27 +2874,27 @@ }, { "name": "drupal/colorbutton", - "version": "1.2.0", + "version": "1.3.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/colorbutton.git", - "reference": "8.x-1.2" + "reference": "8.x-1.3" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/colorbutton-8.x-1.2.zip", - "reference": "8.x-1.2", - "shasum": "a3467286d9882819bc45e9573dc2253444971bfc" + "url": "https://ftp.drupal.org/files/projects/colorbutton-8.x-1.3.zip", + "reference": "8.x-1.3", + "shasum": "1a3c8996b1db88e30a512d1a329e570160d783df" }, "require": { "drupal/core": "^8 || ^9", - "drupal/panelbutton": "*" + "drupal/panelbutton": "^1.3" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.2", - "datestamp": "1589886092", + "version": "8.x-1.3", + "datestamp": "1626792032", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2900,7 +2903,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -3313,16 +3316,16 @@ }, { "name": "drupal/core", - "version": "8.9.18", + "version": "8.9.0", "source": { "type": "git", "url": "https://github.com/drupal/core.git", - "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841" + "reference": "f90882ab0723becda2333e4d33e1a6ab27cb8f0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core/zipball/e536176c45d9d75ec57f7a12c0e3c0aead856841", - "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841", + "url": "https://api.github.com/repos/drupal/core/zipball/f90882ab0723becda2333e4d33e1a6ab27cb8f0c", + "reference": "f90882ab0723becda2333e4d33e1a6ab27cb8f0c", "shasum": "" }, "require": { @@ -3349,8 +3352,8 @@ "laminas/laminas-diactoros": "^1.8", "laminas/laminas-feed": "^2.12", "masterminds/html5": "^2.1", - "pear/archive_tar": "^1.4.14", - "php": "^7.0.8", + "pear/archive_tar": "^1.4.9", + "php": ">=7.0.8", "psr/log": "^1.0", "stack/builder": "^1.0", "symfony-cmf/routing": "^1.4", @@ -3541,22 +3544,22 @@ ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", "support": { - "source": "https://github.com/drupal/core/tree/8.9.18" + "source": "https://github.com/drupal/core/tree/8.9.0" }, - "time": "2021-08-12T17:48:42+00:00" + "time": "2020-06-03T16:44:36+00:00" }, { "name": "drupal/core-composer-scaffold", - "version": "8.9.18", + "version": "8.9.0", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", - "reference": "c902d07cb49ef73777e2b33a39e54c2861a8c81d" + "reference": "07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-composer-scaffold/zipball/c902d07cb49ef73777e2b33a39e54c2861a8c81d", - "reference": "c902d07cb49ef73777e2b33a39e54c2861a8c81d", + "url": "https://api.github.com/repos/drupal/core-composer-scaffold/zipball/07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece", + "reference": "07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece", "shasum": "" }, "require": { @@ -3591,22 +3594,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.5" + "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.0" }, - "time": "2020-08-07T22:30:30+00:00" + "time": "2020-05-29T11:36:27+00:00" }, { "name": "drupal/core-project-message", - "version": "8.9.18", + "version": "8.9.0", "source": { "type": "git", "url": "https://github.com/drupal/core-project-message.git", - "reference": "3f8fa28128f1fef68ee0e6647011a543ef92be5b" + "reference": "e0e237d3da026a87784f70c1069345855340ec23" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-project-message/zipball/3f8fa28128f1fef68ee0e6647011a543ef92be5b", - "reference": "3f8fa28128f1fef68ee0e6647011a543ef92be5b", + "url": "https://api.github.com/repos/drupal/core-project-message/zipball/e0e237d3da026a87784f70c1069345855340ec23", + "reference": "e0e237d3da026a87784f70c1069345855340ec23", "shasum": "" }, "require": { @@ -3632,22 +3635,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-project-message/tree/8.9.18" + "source": "https://github.com/drupal/core-project-message/tree/8.9.0-beta3" }, - "time": "2020-08-02T22:04:49+00:00" + "time": "2020-05-11T08:00:18+00:00" }, { "name": "drupal/core-recommended", - "version": "8.9.18", + "version": "8.9.0", "source": { "type": "git", "url": "https://github.com/drupal/core-recommended.git", - "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c" + "reference": "1b87cf5dea633a66a1c4f22d635bc92c127071d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-recommended/zipball/71839bb9799b70f449b76294b461877ba1e9ff2c", - "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c", + "url": "https://api.github.com/repos/drupal/core-recommended/zipball/1b87cf5dea633a66a1c4f22d635bc92c127071d9", + "reference": "1b87cf5dea633a66a1c4f22d635bc92c127071d9", "shasum": "" }, "require": { @@ -3659,7 +3662,7 @@ "doctrine/common": "v2.7.3", "doctrine/inflector": "v1.2.0", "doctrine/lexer": "1.0.2", - "drupal/core": "8.9.18", + "drupal/core": "8.9.0", "easyrdf/easyrdf": "0.9.1", "egulias/email-validator": "2.1.17", "guzzlehttp/guzzle": "6.5.4", @@ -3672,7 +3675,7 @@ "laminas/laminas-zendframework-bridge": "1.0.4", "masterminds/html5": "2.3.0", "paragonie/random_compat": "v9.99.99", - "pear/archive_tar": "1.4.14", + "pear/archive_tar": "1.4.9", "pear/console_getopt": "v1.4.3", "pear/pear-core-minimal": "v1.10.10", "pear/pear_exception": "v1.0.1", @@ -3688,7 +3691,7 @@ "symfony/dependency-injection": "v3.4.41", "symfony/event-dispatcher": "v3.4.41", "symfony/http-foundation": "v3.4.41", - "symfony/http-kernel": "v3.4.44", + "symfony/http-kernel": "v3.4.41", "symfony/polyfill-ctype": "v1.17.0", "symfony/polyfill-iconv": "v1.17.0", "symfony/polyfill-intl-idn": "v1.17.0", @@ -3717,23 +3720,23 @@ ], "description": "Locked core dependencies; require this project INSTEAD OF drupal/core.", "support": { - "source": "https://github.com/drupal/core-recommended/tree/8.9.18" + "source": "https://github.com/drupal/core-recommended/tree/8.9.0" }, - "time": "2021-08-12T17:48:42+00:00" + "time": "2020-06-03T16:44:36+00:00" }, { "name": "drupal/ctools", - "version": "3.6.0", + "version": "3.7.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ctools.git", - "reference": "8.x-3.6" + "reference": "8.x-3.7" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ctools-8.x-3.6.zip", - "reference": "8.x-3.6", - "shasum": "9a849bb6ac9f4d02603d04b3265b35b7329e1ef5" + "url": "https://ftp.drupal.org/files/projects/ctools-8.x-3.7.zip", + "reference": "8.x-3.7", + "shasum": "b11c0981a1d2ab3cc9e8e614a337d8e2a2a70c0e" }, "require": { "drupal/core": "^8.8 || ^9" @@ -3741,7 +3744,7 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.6", + "version": "8.x-3.7", "datestamp": "1623860918", "security-coverage": { "status": "covered", @@ -3976,6 +3979,9 @@ "reference": "8.x-1.0-alpha0", "shasum": "7b2756cdba8ecf8af052e9a6105530c1eaa2cfa5" }, + "require": { + "drupal/core": "~8.0" + }, "type": "drupal-module", "extra": { "drupal": { @@ -4025,17 +4031,17 @@ }, { "name": "drupal/ds", - "version": "3.12.0", + "version": "3.13.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ds.git", - "reference": "8.x-3.12" + "reference": "8.x-3.13" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.12.zip", - "reference": "8.x-3.12", - "shasum": "0df49ccc28af94186a6c08aa4233f435c539b273" + "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.13.zip", + "reference": "8.x-3.13", + "shasum": "86c87f1bf845d26594ae3ce0061d8f311bdce73c" }, "require": { "drupal/core": "^8.8 || ^9" @@ -4047,8 +4053,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.12", - "datestamp": "1615995335", + "version": "8.x-3.13", + "datestamp": "1624456614", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4186,6 +4192,9 @@ "reference": "8.x-3.4", "shasum": "6ec1848fd12b1515c16d841cc87a071883fa476c" }, + "require": { + "drupal/core": "^8" + }, "type": "drupal-module", "extra": { "drupal": { @@ -4237,17 +4246,17 @@ }, { "name": "drupal/entity_browser", - "version": "2.5.0", + "version": "2.6.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/entity_browser.git", - "reference": "8.x-2.5" + "reference": "8.x-2.6" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/entity_browser-8.x-2.5.zip", - "reference": "8.x-2.5", - "shasum": "29456b961f0f90ff064601ab8a382446a8143774" + "url": "https://ftp.drupal.org/files/projects/entity_browser-8.x-2.6.zip", + "reference": "8.x-2.6", + "shasum": "95cad4ce9620ccb4f02afa0e8b8bbf7c73fc5aac" }, "require": { "drupal/core": "^8.8 || ^9" @@ -4264,8 +4273,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.5", - "datestamp": "1588015429", + "version": "8.x-2.6", + "datestamp": "1624401306", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4327,21 +4336,22 @@ }, { "name": "drupal/entity_print", - "version": "2.2.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/entity_print.git", - "reference": "8.x-2.2" + "reference": "8.x-2.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/entity_print-8.x-2.2.zip", - "reference": "8.x-2.2", - "shasum": "5bd7671e2563a68925ab7f6ecd8dc8e8e396a0ea" + "url": "https://ftp.drupal.org/files/projects/entity_print-8.x-2.4.zip", + "reference": "8.x-2.4", + "shasum": "838fd304a408f8f7620eb26af52046ac9e88eead" }, "require": { - "dompdf/dompdf": "~0.8.0", - "drupal/core": "^8 || ^9" + "dompdf/dompdf": "~0.8.4 || ^1.0", + "drupal/core": "^8 || ^9", + "php": "^7.1 || ^8.0" }, "suggest": { "mikehaertl/phpwkhtmltopdf": "PhpWkhtmlToPdf provides the PHP library to use Wkhtmltopdf" @@ -4349,8 +4359,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.2", - "datestamp": "1592533892", + "version": "8.x-2.4", + "datestamp": "1632300401", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4456,17 +4466,17 @@ }, { "name": "drupal/externalauth", - "version": "1.3.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/externalauth.git", - "reference": "8.x-1.3" + "reference": "8.x-1.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/externalauth-8.x-1.3.zip", - "reference": "8.x-1.3", - "shasum": "b1b38e6718fe66bd38fc894dab1f9d7a7d60f10b" + "url": "https://ftp.drupal.org/files/projects/externalauth-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "caea7d2d5a890adad9e6b5beaa2cf139727266d6" }, "require": { "drupal/core": "^8 || ^9" @@ -4474,8 +4484,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.3", - "datestamp": "1587629529", + "version": "8.x-1.4", + "datestamp": "1624457496", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4568,28 +4578,31 @@ }, { "name": "drupal/facets", - "version": "1.7.0", + "version": "1.8.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/facets.git", - "reference": "8.x-1.7" + "reference": "8.x-1.8" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/facets-8.x-1.7.zip", - "reference": "8.x-1.7", - "shasum": "5a8a1092617c4dde96f691e23300d0d436c5fcb3" + "url": "https://ftp.drupal.org/files/projects/facets-8.x-1.8.zip", + "reference": "8.x-1.8", + "shasum": "f621b84b59c5315db14a0529df5dfc74ca5bc9de" }, "require": { "drupal/core": "^8.8 || ^9" }, + "conflict": { + "drupal/search_api": "<1.14" + }, "require-dev": { - "drupal/search_api": "~1.5" + "drupal/search_api": "~1.14" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.7", + "version": "8.x-1.8", "datestamp": "1620838256", "security-coverage": { "status": "covered", @@ -5012,17 +5025,17 @@ }, { "name": "drupal/field_group", - "version": "3.1.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/field_group.git", - "reference": "8.x-3.1" + "reference": "8.x-3.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/field_group-8.x-3.1.zip", - "reference": "8.x-3.1", - "shasum": "8a719eaea594f0ba874172831cb28da93c66b77a" + "url": "https://ftp.drupal.org/files/projects/field_group-8.x-3.2.zip", + "reference": "8.x-3.2", + "shasum": "2020bbfe40f6ba43bc733ae7c8761632572433a0" }, "require": { "drupal/core": "^8.8 || ^9" @@ -5033,8 +5046,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.1", - "datestamp": "1591772567", + "version": "8.x-3.2", + "datestamp": "1628513585", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5445,17 +5458,17 @@ }, { "name": "drupal/hotjar", - "version": "2.0.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/hotjar.git", - "reference": "8.x-2.0" + "reference": "8.x-2.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/hotjar-8.x-2.0.zip", - "reference": "8.x-2.0", - "shasum": "a2e21a22bcc7ba5e6f374350220eb00b1167722c" + "url": "https://ftp.drupal.org/files/projects/hotjar-8.x-2.2.zip", + "reference": "8.x-2.2", + "shasum": "4caab9aa02a3bf8f0670280e501dcf40b0fa83d0" }, "require": { "drupal/core": "^8.8 || ^9", @@ -5464,8 +5477,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.0", - "datestamp": "1605689024", + "version": "8.x-2.2", + "datestamp": "1625130592", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5581,17 +5594,17 @@ }, { "name": "drupal/imce", - "version": "2.3.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/imce.git", - "reference": "8.x-2.3" + "reference": "8.x-2.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/imce-8.x-2.3.zip", - "reference": "8.x-2.3", - "shasum": "87548af8f66ef91146b70046755c1700a3847be6" + "url": "https://ftp.drupal.org/files/projects/imce-8.x-2.4.zip", + "reference": "8.x-2.4", + "shasum": "2797d6a669b739490edd00c753303cd9263f8dc3" }, "require": { "drupal/core": "^8.8 || ^9" @@ -5599,8 +5612,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.3", - "datestamp": "1599926540", + "version": "8.x-2.4", + "datestamp": "1618251147", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5818,17 +5831,17 @@ }, { "name": "drupal/ludwig", - "version": "1.7.0", + "version": "1.8.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ludwig.git", - "reference": "8.x-1.7" + "reference": "8.x-1.8" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ludwig-8.x-1.7.zip", - "reference": "8.x-1.7", - "shasum": "d951c3b4f76f8b0c2f8877793a392868f3537743" + "url": "https://ftp.drupal.org/files/projects/ludwig-8.x-1.8.zip", + "reference": "8.x-1.8", + "shasum": "d73a56f38d1148a5e3ae431e0a3cfec52f83e68f" }, "require": { "drupal/core": "^8 || ^9" @@ -5836,8 +5849,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.7", - "datestamp": "1613389167", + "version": "8.x-1.8", + "datestamp": "1620028760", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6075,17 +6088,17 @@ }, { "name": "drupal/menu_block", - "version": "1.6.0", + "version": "1.7.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/menu_block.git", - "reference": "8.x-1.6" + "reference": "8.x-1.7" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/menu_block-8.x-1.6.zip", - "reference": "8.x-1.6", - "shasum": "3da96af15c3a5f5f1966e28b6e87b74228617998" + "url": "https://ftp.drupal.org/files/projects/menu_block-8.x-1.7.zip", + "reference": "8.x-1.7", + "shasum": "6d021a24a6a8691becbecf02ac236a7d8626d4d0" }, "require": { "drupal/core": "^8 || ^9" @@ -6093,8 +6106,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.6", - "datestamp": "1587721600", + "version": "8.x-1.7", + "datestamp": "1619638238", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6139,17 +6152,17 @@ }, { "name": "drupal/menu_breadcrumb", - "version": "1.14.0", + "version": "1.16.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/menu_breadcrumb.git", - "reference": "8.x-1.14" + "reference": "8.x-1.16" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-8.x-1.14.zip", - "reference": "8.x-1.14", - "shasum": "3edeb447410cdb0635d0babbfc641010014bee7f" + "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-8.x-1.16.zip", + "reference": "8.x-1.16", + "shasum": "e7faa28edcd703c5512b480117d35718d0dd7441" }, "require": { "drupal/core": "^8 || ^9" @@ -6157,8 +6170,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.14", - "datestamp": "1598626277", + "version": "8.x-1.16", + "datestamp": "1620238102", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6559,17 +6572,17 @@ }, { "name": "drupal/node_view_permissions", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/node_view_permissions.git", - "reference": "8.x-1.4" + "reference": "8.x-1.5" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/node_view_permissions-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "ba113ff1be022517a739dbf16d5caaae6dcccfd9" + "url": "https://ftp.drupal.org/files/projects/node_view_permissions-8.x-1.5.zip", + "reference": "8.x-1.5", + "shasum": "e9f0bc9d1285e57233ab1b11833b55dda6d483f0" }, "require": { "drupal/core": "^8 || ^9" @@ -6577,8 +6590,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1603096039", + "version": "8.x-1.5", + "datestamp": "1622716915", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6688,17 +6701,17 @@ }, { "name": "drupal/panelbutton", - "version": "1.3.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/panelbutton.git", - "reference": "8.x-1.3" + "reference": "8.x-1.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/panelbutton-8.x-1.3.zip", - "reference": "8.x-1.3", - "shasum": "1d65e6b9d9b1dfbc27364e2b713f63826bc33031" + "url": "https://ftp.drupal.org/files/projects/panelbutton-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "9e4b83af312607242dde0e095e80fb68264208a1" }, "require": { "drupal/core": "^8 || ^9" @@ -6706,8 +6719,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.3", - "datestamp": "1592593051", + "version": "8.x-1.4", + "datestamp": "1626792838", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6716,7 +6729,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -7137,17 +7150,17 @@ }, { "name": "drupal/permissions_by_term", - "version": "2.31.0", + "version": "2.34.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/permissions_by_term.git", - "reference": "8.x-2.31" + "reference": "8.x-2.34" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.31.zip", - "reference": "8.x-2.31", - "shasum": "b92e303e579937a6985d21751e72ad67a1d4404b" + "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.34.zip", + "reference": "8.x-2.34", + "shasum": "38233e447a83993ed660556d8b01534c3339c603" }, "require": { "drupal/core": "^8.0", @@ -7156,8 +7169,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.31", - "datestamp": "1614602591", + "version": "8.x-2.34", + "datestamp": "1626101135", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7204,6 +7217,7 @@ "shasum": "3692831f4b3de636e90679fb052ba8f30e49ac97" }, "require": { + "drupal/core": "~8.0", "drupal/matomo": "^1.0" }, "require-dev": { @@ -7484,31 +7498,31 @@ }, { "name": "drupal/scheduler", - "version": "1.3.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/scheduler.git", - "reference": "8.x-1.3" + "reference": "8.x-1.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/scheduler-8.x-1.3.zip", - "reference": "8.x-1.3", - "shasum": "704f9e289c7a42ddfb65297beb0be02e324f02c6" + "url": "https://ftp.drupal.org/files/projects/scheduler-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "5b2203e4688e5d3ac67d0780605809c92c6ece70" }, "require": { "drupal/core": "^8 || ^9" }, "require-dev": { - "drupal/devel_generate": "^2.0 || 3.x-dev", + "drupal/devel_generate": "^2.0 || 4.x-dev", "drupal/rules": "^3", "drush/drush": "^9.0 || ^10" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.3", - "datestamp": "1591436219", + "version": "8.x-1.4", + "datestamp": "1626702090", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7516,7 +7530,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, @@ -7555,17 +7569,17 @@ }, { "name": "drupal/search_api", - "version": "1.19.0", + "version": "1.20.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/search_api.git", - "reference": "8.x-1.19" + "reference": "8.x-1.20" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/search_api-8.x-1.19.zip", - "reference": "8.x-1.19", - "shasum": "5654e9d02117e28c585d89a25ea3cc40d20c5019" + "url": "https://ftp.drupal.org/files/projects/search_api-8.x-1.20.zip", + "reference": "8.x-1.20", + "shasum": "4bed60ac7b502ccc1d4a01411aa35d2cb7f496c7" }, "require": { "drupal/core": "^8.8 || ^9" @@ -7586,8 +7600,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.19", - "datestamp": "1612192040", + "version": "8.x-1.20", + "datestamp": "1626684847", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7595,7 +7609,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, @@ -8482,17 +8496,17 @@ }, { "name": "drupal/webform", - "version": "5.25.0", + "version": "5.28.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/webform.git", - "reference": "8.x-5.25" + "reference": "8.x-5.28" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.25.zip", - "reference": "8.x-5.25", - "shasum": "115f8bc21549abc080543eb772166eb4fd2a162e" + "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.28.zip", + "reference": "8.x-5.28", + "shasum": "31376657f81e50302cc6b89d5094e0b8a0810f57" }, "require": { "drupal/core": "^8.8" @@ -8533,8 +8547,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-5.25", - "datestamp": "1629907242", + "version": "8.x-5.28", + "datestamp": "1629909852", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8542,7 +8556,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, @@ -10567,16 +10581,16 @@ }, { "name": "mglaman/phpstan-drupal", - "version": "0.12.13", + "version": "0.12.15", "source": { "type": "git", "url": "https://github.com/mglaman/phpstan-drupal.git", - "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e" + "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/c149cae44eeb1edddac72fe9c1c11449abab782e", - "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e", + "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/1d65da838f3f5136e30e7a7023c235775f30c53e", + "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e", "shasum": "" }, "require": { @@ -10648,7 +10662,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/0.12.13" + "source": "https://github.com/mglaman/phpstan-drupal/tree/0.12.15" }, "funding": [ { @@ -10664,7 +10678,7 @@ "type": "tidelift" } ], - "time": "2021-08-27T13:48:19+00:00" + "time": "2021-10-06T20:17:36+00:00" }, { "name": "nette/finder", @@ -10926,16 +10940,16 @@ }, { "name": "pear/archive_tar", - "version": "1.4.14", + "version": "1.4.9", "source": { "type": "git", "url": "https://github.com/pear/Archive_Tar.git", - "reference": "4d761c5334c790e45ef3245f0864b8955c562caa" + "reference": "c5b00053770e1d72128252c62c2c1a12c26639f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/4d761c5334c790e45ef3245f0864b8955c562caa", - "reference": "4d761c5334c790e45ef3245f0864b8955c562caa", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/c5b00053770e1d72128252c62c2c1a12c26639f0", + "reference": "c5b00053770e1d72128252c62c2c1a12c26639f0", "shasum": "" }, "require": { @@ -10992,17 +11006,7 @@ "issues": "http://pear.php.net/bugs/search.php?cmd=display&package_name[]=Archive_Tar", "source": "https://github.com/pear/Archive_Tar" }, - "funding": [ - { - "url": "https://github.com/mrook", - "type": "github" - }, - { - "url": "https://www.patreon.com/michielrook", - "type": "patreon" - } - ], - "time": "2021-07-20T13:53:39+00:00" + "time": "2019-12-04T10:17:28+00:00" }, { "name": "pear/console_getopt", @@ -12329,6 +12333,7 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook" }, + "abandoned": true, "time": "2020-03-13T11:29:21+00:00" }, { @@ -12487,6 +12492,7 @@ "issues": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive/issues", "source": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive" }, + "abandoned": true, "time": "2019-12-03T09:01:13+00:00" }, { @@ -13272,6 +13278,7 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/" }, + "abandoned": true, "time": "2021-08-31T18:55:00+00:00" }, { @@ -14529,16 +14536,16 @@ }, { "name": "symfony/http-kernel", - "version": "v3.4.44", + "version": "v3.4.41", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "27dcaa8c6b18c75df9f37badeb4d3564ffaa1326" + "reference": "e4e4ed6c008c983645b4eee6b67d8f258cde54df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/27dcaa8c6b18c75df9f37badeb4d3564ffaa1326", - "reference": "27dcaa8c6b18c75df9f37badeb4d3564ffaa1326", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e4e4ed6c008c983645b4eee6b67d8f258cde54df", + "reference": "e4e4ed6c008c983645b4eee6b67d8f258cde54df", "shasum": "" }, "require": { @@ -14616,7 +14623,7 @@ "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v3.4.44" + "source": "https://github.com/symfony/http-kernel/tree/3.4" }, "funding": [ { @@ -14632,7 +14639,7 @@ "type": "tidelift" } ], - "time": "2020-08-31T05:53:42+00:00" + "time": "2020-05-31T05:14:17+00:00" }, { "name": "symfony/polyfill-ctype", @@ -16253,16 +16260,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.1.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "448c76d7a9e30c341ff5bc367a923af74ae18467" + "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/448c76d7a9e30c341ff5bc367a923af74ae18467", - "reference": "448c76d7a9e30c341ff5bc367a923af74ae18467", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", + "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", "shasum": "" }, "require": { @@ -16277,7 +16284,7 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.2 || ^9.0" + "phpunit/phpunit": "^7.5.20 || ^8.5.14 || ^9.5.1" }, "suggest": { "ext-filter": "Required to use the boolean validator." @@ -16285,7 +16292,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.1-dev" + "dev-master": "5.3-dev" } }, "autoload": { @@ -16317,7 +16324,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/master" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.3.0" }, "funding": [ { @@ -16329,7 +16336,7 @@ "type": "tidelift" } ], - "time": "2020-07-14T19:26:25+00:00" + "time": "2021-01-20T15:23:13+00:00" }, { "name": "webflo/drupal-finder", @@ -16838,16 +16845,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.2.10", + "version": "1.2.11", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8" + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/9fdb22c2e97a614657716178093cd1da90a64aa8", - "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", "shasum": "" }, "require": { @@ -16859,7 +16866,7 @@ "phpstan/phpstan": "^0.12.55", "psr/log": "^1.0", "symfony/phpunit-bridge": "^4.2 || ^5", - "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0" + "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" }, "type": "library", "extra": { @@ -16894,7 +16901,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.2.10" + "source": "https://github.com/composer/ca-bundle/tree/1.2.11" }, "funding": [ { @@ -16910,20 +16917,20 @@ "type": "tidelift" } ], - "time": "2021-06-07T13:58:28+00:00" + "time": "2021-09-25T20:32:43+00:00" }, { "name": "composer/composer", - "version": "1.10.22", + "version": "1.10.23", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25" + "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/28c9dfbe2351635961f670773e8d7b17bc5eda25", - "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25", + "url": "https://api.github.com/repos/composer/composer/zipball/eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", + "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", "shasum": "" }, "require": { @@ -16993,7 +17000,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/1.10.22" + "source": "https://github.com/composer/composer/tree/1.10.23" }, "funding": [ { @@ -17009,7 +17016,7 @@ "type": "tidelift" } ], - "time": "2021-04-27T11:10:45+00:00" + "time": "2021-10-05T07:44:27+00:00" }, { "name": "composer/spdx-licenses", @@ -17960,16 +17967,16 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f" + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/30f38bffc6f24293dadd1823936372dfa9e86e2f", - "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae", + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae", "shasum": "" }, "require": { @@ -18004,9 +18011,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.0" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1" }, - "time": "2021-09-17T15:28:14+00:00" + "time": "2021-10-02T14:08:47+00:00" }, { "name": "phpspec/prophecy", -- GitLab From 577de991d623ceaf47e54a8ae9eb5d7dcd96acb1 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Thu, 7 Oct 2021 03:16:11 +0200 Subject: [PATCH 17/27] Update JS libs --- cern-drupal-distribution-composer-project.md | 4 +- web/libraries/colorbutton/lang/de-ch.js | 44 +- web/libraries/colorbutton/plugin.js | 63 +- .../jquery.cycle/jquery.cycle.all.js.2 | 1543 +++++++++++++++++ .../jquery.hoverIntent.js.2 | 169 ++ web/libraries/jquery.pause/jquery.pause.js.2 | 94 + web/libraries/json2/json2.js.2 | 530 ++++++ 7 files changed, 2401 insertions(+), 46 deletions(-) create mode 100644 web/libraries/jquery.cycle/jquery.cycle.all.js.2 create mode 100644 web/libraries/jquery.hoverIntent/jquery.hoverIntent.js.2 create mode 100644 web/libraries/jquery.pause/jquery.pause.js.2 create mode 100644 web/libraries/json2/json2.js.2 diff --git a/cern-drupal-distribution-composer-project.md b/cern-drupal-distribution-composer-project.md index f8d2a70ab..c0187e34e 100644 --- a/cern-drupal-distribution-composer-project.md +++ b/cern-drupal-distribution-composer-project.md @@ -152,6 +152,6 @@ Note: find the latest versions for the libs with a `VERSION` variable. ( mkdir -p web/libraries/jquery.hoverIntent && cd $_ && wget https://raw.githubusercontent.com/briancherne/jquery-hoverIntent/master/jquery.hoverIntent.js; ) ( mkdir -p web/libraries/json2 && cd $_ && wget https://raw.githubusercontent.com/douglascrockford/JSON-js/master/json2.js; ) ( mkdir -p web/libraries/jquery.pause && cd $_ && wget https://raw.githubusercontent.com/tobia/Pause/master/jquery.pause.js; ) -( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/colorbutton/releases/colorbutton_$VERSION.zip && unzip colorbutton_$VERSION.zip && rm colorbutton_$VERSION.zip; ) -( VERSION=4.16.0; cd web/libraries && wget https://download.ckeditor.com/panelbutton/releases/panelbutton_$VERSION.zip && unzip panelbutton_$VERSION.zip && rm panelbutton_$VERSION.zip; ) +( VERSION=4.16.2; cd web/libraries && wget https://download.ckeditor.com/colorbutton/releases/colorbutton_$VERSION.zip && unzip colorbutton_$VERSION.zip && rm colorbutton_$VERSION.zip; ) +( VERSION=4.16.2; cd web/libraries && wget https://download.ckeditor.com/panelbutton/releases/panelbutton_$VERSION.zip && unzip panelbutton_$VERSION.zip && rm panelbutton_$VERSION.zip; ) ``` diff --git a/web/libraries/colorbutton/lang/de-ch.js b/web/libraries/colorbutton/lang/de-ch.js index 431d4339e..70567673b 100644 --- a/web/libraries/colorbutton/lang/de-ch.js +++ b/web/libraries/colorbutton/lang/de-ch.js @@ -46,28 +46,28 @@ CKEDITOR.plugins.setLang( 'colorbutton', 'de-ch', { F0F8FF: 'Alice Blau', E6E6FA: 'Lavendel', FFF: 'Weiss', - '1ABC9C': 'Strong Cyan', // MISSING - '2ECC71': 'Emerald', // MISSING - '3498DB': 'Bright Blue', // MISSING - '9B59B6': 'Amethyst', // MISSING - '4E5F70': 'Grayish Blue', // MISSING - 'F1C40F': 'Vivid Yellow', // MISSING - '16A085': 'Dark Cyan', // MISSING - '27AE60': 'Dark Emerald', // MISSING - '2980B9': 'Strong Blue', // MISSING - '8E44AD': 'Dark Violet', // MISSING - '2C3E50': 'Desaturated Blue', // MISSING - 'F39C12': 'Orange', // MISSING - 'E67E22': 'Carrot', // MISSING - 'E74C3C': 'Pale Red', // MISSING - 'ECF0F1': 'Bright Silver', // MISSING - '95A5A6': 'Light Grayish Cyan', // MISSING - 'DDD': 'Light Gray', // MISSING - 'D35400': 'Pumpkin', // MISSING - 'C0392B': 'Strong Red', // MISSING - 'BDC3C7': 'Silver', // MISSING - '7F8C8D': 'Grayish Cyan', // MISSING - '999': 'Dark Gray' // MISSING + '1ABC9C': 'Kräftiges Türkis', + '2ECC71': 'Smaragdgrün', + '3498DB': 'Helles Blau', + '9B59B6': 'Amethystblau', + '4E5F70': 'Graublau', + 'F1C40F': 'Lebhaftes Gelb', + '16A085': 'Dunkeltürkis', + '27AE60': 'Dunkles Smaragdgrün', + '2980B9': 'Kräftiges Blau', + '8E44AD': 'Dunkelvilolett', + '2C3E50': 'Entsättigtes blau', + 'F39C12': 'Orange', + 'E67E22': 'Karotte', + 'E74C3C': 'Blassrot', + 'ECF0F1': 'Glänzendes Silber', + '95A5A6': 'Helles Graublau', + 'DDD': 'Hellgrau', + 'D35400': 'Kürbisfarben', + 'C0392B': 'Kräftiges Rot', + 'BDC3C7': 'Silber', + '7F8C8D': 'Graucyan', + '999': 'Dunkelgrau' }, more: 'Weitere Farben...', panelTitle: 'Farben', diff --git a/web/libraries/colorbutton/plugin.js b/web/libraries/colorbutton/plugin.js index efacf877b..7954706a0 100644 --- a/web/libraries/colorbutton/plugin.js +++ b/web/libraries/colorbutton/plugin.js @@ -177,7 +177,7 @@ var colors = config.colorButton_colors.split( ',' ), color = CKEDITOR.tools.array.find( colors, callback ); - color = normalizeColor( color ); + color = ColorBox.normalizeColor( color ); selectColor( panelBlock, color ); panelBlock._.markFirstDisplayed(); @@ -192,6 +192,9 @@ // The block should not have scrollbars (https://dev.ckeditor.com/ticket/5933, https://dev.ckeditor.com/ticket/6056) block.element.getDocument().getBody().setStyle( 'overflow', 'hidden' ); + // First render of panel have a scrollbar, but it shouldn't (#4247). + block.element.getAscendant( { html: 1 } ).setStyle( 'overflow', 'hidden' ); + CKEDITOR.ui.fire( 'ready', this ); var keys = block.keys, @@ -254,7 +257,7 @@ element = element.getParent(); } - currentColor = normalizeColor( element.getComputedStyle( cssProperty ) ); + currentColor = ColorBox.normalizeColor( element.getComputedStyle( cssProperty ) ); finalColor = finalColor || currentColor; if ( finalColor !== currentColor ) { @@ -269,7 +272,7 @@ finalColor = ''; } if ( type == 'fore' ) { - colorData.automaticTextColor = '#' + normalizeColor( automaticColor ); + colorData.automaticTextColor = '#' + ColorBox.normalizeColor( automaticColor ); } colorData.selectionColor = finalColor ? '#' + finalColor : ''; @@ -464,25 +467,12 @@ for ( var i = 0; i < items.count(); i++ ) { var item = items.getItem( i ); - if ( color && color == normalizeColor( item.getAttribute( 'data-value' ) ) ) { + if ( color && color == ColorBox.normalizeColor( item.getAttribute( 'data-value' ) ) ) { item.setAttribute( 'aria-selected', true ); return; } } } - - /* - * Converts a CSS color value to an easily comparable form. - * - * @private - * @member CKEDITOR.plugins.colorbutton - * @param {String} color - * @returns {String} - */ - function normalizeColor( color ) { - // Replace 3-character hexadecimal notation with a 6-character hexadecimal notation (#1008). - return CKEDITOR.tools.normalizeHex( '#' + CKEDITOR.tools.convertRgbToHex( color || '' ) ).replace( /#/g, '' ); - } } } ); ColorBox = CKEDITOR.tools.createClass( { @@ -499,6 +489,39 @@ statics: { colorNames: function( editor ) { return editor.lang.colorbutton.colors; + }, + + /* + * Converts a CSS color value to an easily comparable form. + * + * The function supports most of the color formats: + * + * * named colors (e.g. `yellow`), + * * hex colors (e.g. `#FF0000` or `#F00`), + * * RGB/RGBA colors (e.g. `rgb( 255, 0, 10)` or `rgba( 100, 20, 50, .5 )`), + * * HSL/HSLA colors (e.g. `hsl( 100, 50%, 20%)` or `hsla( 100, 50%, 20%, 10%)`). + * + * @private + * @param {String} color + * @returns {String} Returns color in hex format, but without the hash at the beginning, e.g. `ff0000` for red. + */ + normalizeColor: function( color ) { + var alphaRegex = /^(rgb|hsl)a\(/g, + transparentRegex = /^rgba\((\s*0\s*,?){4}\)$/g, + isAlphaColor = alphaRegex.test( color ), + // Browsers tend to represent transparent color as rgba(0, 0, 0, 0), so we need to filter out this value. + isTransparentColor = transparentRegex.test( color ), + colorInstance; + + // For colors with alpha channel we need to use CKEDITOR.tools.color normalization (#4351). + if ( isAlphaColor && !isTransparentColor ) { + colorInstance = new CKEDITOR.tools.color( color ); + + return CKEDITOR.tools.normalizeHex( colorInstance.getHex() || '' ).replace( /#/g, '' ); + } + + // Replace 3-character hexadecimal notation with a 6-character hexadecimal notation (#1008). + return CKEDITOR.tools.normalizeHex( '#' + CKEDITOR.tools.convertRgbToHex( color || '' ) ).replace( /#/g, '' ); } }, @@ -628,7 +651,7 @@ getHexCode: function( span, cssProperty, list ) { var color = span.getStyle( cssProperty ); - return color in list ? list[ color ].substr( 1 ) : this._.normalizeColor( span.getComputedStyle( cssProperty ) ).toUpperCase(); + return color in list ? list[ color ].substr( 1 ) : ColorBox.normalizeColor( span.getComputedStyle( cssProperty ) ).toUpperCase(); }, sortByOccurrencesAscending: function( objectToParse, targetKeyName ) { @@ -747,10 +770,6 @@ CKEDITOR.tools.array.forEach( this.rows, function( row ) { this.container.append( row.getElement() ); }, this ); - }, - - normalizeColor: function( color ) { - return CKEDITOR.tools.normalizeHex( '#' + CKEDITOR.tools.convertRgbToHex( color || '' ) ).replace( /#/g, '' ); } }, diff --git a/web/libraries/jquery.cycle/jquery.cycle.all.js.2 b/web/libraries/jquery.cycle/jquery.cycle.all.js.2 new file mode 100644 index 000000000..dc474ea0c --- /dev/null +++ b/web/libraries/jquery.cycle/jquery.cycle.all.js.2 @@ -0,0 +1,1543 @@ +/*! + * jQuery Cycle Plugin (with Transition Definitions) + * Examples and documentation at: http://jquery.malsup.com/cycle/ + * Copyright (c) 2007-2013 M. Alsup + * Version: 3.0.3 (11-JUL-2013) + * Dual licensed under the MIT and GPL licenses. + * http://jquery.malsup.com/license.html + * Requires: jQuery v1.7.1 or later + */ +;(function($, undefined) { +"use strict"; + +var ver = '3.0.3'; + +function debug(s) { + if ($.fn.cycle.debug) + log(s); +} +function log() { + /*global console */ + if (window.console && console.log) + console.log('[cycle] ' + Array.prototype.join.call(arguments,' ')); +} +$.expr[':'].paused = function(el) { + return el.cyclePause; +}; + + +// the options arg can be... +// a number - indicates an immediate transition should occur to the given slide index +// a string - 'pause', 'resume', 'toggle', 'next', 'prev', 'stop', 'destroy' or the name of a transition effect (ie, 'fade', 'zoom', etc) +// an object - properties to control the slideshow +// +// the arg2 arg can be... +// the name of an fx (only used in conjunction with a numeric value for 'options') +// the value true (only used in first arg == 'resume') and indicates +// that the resume should occur immediately (not wait for next timeout) + +$.fn.cycle = function(options, arg2) { + var o = { s: this.selector, c: this.context }; + + // in 1.3+ we can fix mistakes with the ready state + if (this.length === 0 && options != 'stop') { + if (!$.isReady && o.s) { + log('DOM not ready, queuing slideshow'); + $(function() { + $(o.s,o.c).cycle(options,arg2); + }); + return this; + } + // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready() + log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)')); + return this; + } + + // iterate the matched nodeset + return this.each(function() { + var opts = handleArguments(this, options, arg2); + if (opts === false) + return; + + opts.updateActivePagerLink = opts.updateActivePagerLink || $.fn.cycle.updateActivePagerLink; + + // stop existing slideshow for this container (if there is one) + if (this.cycleTimeout) + clearTimeout(this.cycleTimeout); + this.cycleTimeout = this.cyclePause = 0; + this.cycleStop = 0; // issue #108 + + var $cont = $(this); + var $slides = opts.slideExpr ? $(opts.slideExpr, this) : $cont.children(); + var els = $slides.get(); + + if (els.length < 2) { + log('terminating; too few slides: ' + els.length); + return; + } + + var opts2 = buildOptions($cont, $slides, els, opts, o); + if (opts2 === false) + return; + + var startTime = opts2.continuous ? 10 : getTimeout(els[opts2.currSlide], els[opts2.nextSlide], opts2, !opts2.backwards); + + // if it's an auto slideshow, kick it off + if (startTime) { + startTime += (opts2.delay || 0); + if (startTime < 10) + startTime = 10; + debug('first timeout: ' + startTime); + this.cycleTimeout = setTimeout(function(){go(els,opts2,0,!opts.backwards);}, startTime); + } + }); +}; + +function triggerPause(cont, byHover, onPager) { + var opts = $(cont).data('cycle.opts'); + if (!opts) + return; + var paused = !!cont.cyclePause; + if (paused && opts.paused) + opts.paused(cont, opts, byHover, onPager); + else if (!paused && opts.resumed) + opts.resumed(cont, opts, byHover, onPager); +} + +// process the args that were passed to the plugin fn +function handleArguments(cont, options, arg2) { + if (cont.cycleStop === undefined) + cont.cycleStop = 0; + if (options === undefined || options === null) + options = {}; + if (options.constructor == String) { + switch(options) { + case 'destroy': + case 'stop': + var opts = $(cont).data('cycle.opts'); + if (!opts) + return false; + cont.cycleStop++; // callbacks look for change + if (cont.cycleTimeout) + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + if (opts.elements) + $(opts.elements).stop(); + $(cont).removeData('cycle.opts'); + if (options == 'destroy') + destroy(cont, opts); + return false; + case 'toggle': + cont.cyclePause = (cont.cyclePause === 1) ? 0 : 1; + checkInstantResume(cont.cyclePause, arg2, cont); + triggerPause(cont); + return false; + case 'pause': + cont.cyclePause = 1; + triggerPause(cont); + return false; + case 'resume': + cont.cyclePause = 0; + checkInstantResume(false, arg2, cont); + triggerPause(cont); + return false; + case 'prev': + case 'next': + opts = $(cont).data('cycle.opts'); + if (!opts) { + log('options not found, "prev/next" ignored'); + return false; + } + if (typeof arg2 == 'string') + opts.oneTimeFx = arg2; + $.fn.cycle[options](opts); + return false; + default: + options = { fx: options }; + } + return options; + } + else if (options.constructor == Number) { + // go to the requested slide + var num = options; + options = $(cont).data('cycle.opts'); + if (!options) { + log('options not found, can not advance slide'); + return false; + } + if (num < 0 || num >= options.elements.length) { + log('invalid slide index: ' + num); + return false; + } + options.nextSlide = num; + if (cont.cycleTimeout) { + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + } + if (typeof arg2 == 'string') + options.oneTimeFx = arg2; + go(options.elements, options, 1, num >= options.currSlide); + return false; + } + return options; + + function checkInstantResume(isPaused, arg2, cont) { + if (!isPaused && arg2 === true) { // resume now! + var options = $(cont).data('cycle.opts'); + if (!options) { + log('options not found, can not resume'); + return false; + } + if (cont.cycleTimeout) { + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + } + go(options.elements, options, 1, !options.backwards); + } + } +} + +function removeFilter(el, opts) { + if (!$.support.opacity && opts.cleartype && el.style.filter) { + try { el.style.removeAttribute('filter'); } + catch(smother) {} // handle old opera versions + } +} + +// unbind event handlers +function destroy(cont, opts) { + if (opts.next) + $(opts.next).unbind(opts.prevNextEvent); + if (opts.prev) + $(opts.prev).unbind(opts.prevNextEvent); + + if (opts.pager || opts.pagerAnchorBuilder) + $.each(opts.pagerAnchors || [], function() { + this.unbind().remove(); + }); + opts.pagerAnchors = null; + $(cont).unbind('mouseenter.cycle mouseleave.cycle'); + if (opts.destroy) // callback + opts.destroy(opts); +} + +// one-time initialization +function buildOptions($cont, $slides, els, options, o) { + var startingSlideSpecified; + // support metadata plugin (v1.0 and v2.0) + var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {}); + var meta = $.isFunction($cont.data) ? $cont.data(opts.metaAttr) : null; + if (meta) + opts = $.extend(opts, meta); + if (opts.autostop) + opts.countdown = opts.autostopCount || els.length; + + var cont = $cont[0]; + $cont.data('cycle.opts', opts); + opts.$cont = $cont; + opts.stopCount = cont.cycleStop; + opts.elements = els; + opts.before = opts.before ? [opts.before] : []; + opts.after = opts.after ? [opts.after] : []; + + // push some after callbacks + if (!$.support.opacity && opts.cleartype) + opts.after.push(function() { removeFilter(this, opts); }); + if (opts.continuous) + opts.after.push(function() { go(els,opts,0,!opts.backwards); }); + + saveOriginalOpts(opts); + + // clearType corrections + if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) + clearTypeFix($slides); + + // container requires non-static position so that slides can be position within + if ($cont.css('position') == 'static') + $cont.css('position', 'relative'); + if (opts.width) + $cont.width(opts.width); + if (opts.height && opts.height != 'auto') + $cont.height(opts.height); + + if (opts.startingSlide !== undefined) { + opts.startingSlide = parseInt(opts.startingSlide,10); + if (opts.startingSlide >= els.length || opts.startSlide < 0) + opts.startingSlide = 0; // catch bogus input + else + startingSlideSpecified = true; + } + else if (opts.backwards) + opts.startingSlide = els.length - 1; + else + opts.startingSlide = 0; + + // if random, mix up the slide array + if (opts.random) { + opts.randomMap = []; + for (var i = 0; i < els.length; i++) + opts.randomMap.push(i); + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + if (startingSlideSpecified) { + // try to find the specified starting slide and if found set start slide index in the map accordingly + for ( var cnt = 0; cnt < els.length; cnt++ ) { + if ( opts.startingSlide == opts.randomMap[cnt] ) { + opts.randomIndex = cnt; + } + } + } + else { + opts.randomIndex = 1; + opts.startingSlide = opts.randomMap[1]; + } + } + else if (opts.startingSlide >= els.length) + opts.startingSlide = 0; // catch bogus input + opts.currSlide = opts.startingSlide || 0; + var first = opts.startingSlide; + + // set position and zIndex on all the slides + $slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) { + var z; + if (opts.backwards) + z = first ? i <= first ? els.length + (i-first) : first-i : els.length-i; + else + z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i; + $(this).css('z-index', z); + }); + + // make sure first slide is visible + $(els[first]).css('opacity',1).show(); // opacity bit needed to handle restart use case + removeFilter(els[first], opts); + + // stretch slides + if (opts.fit) { + if (!opts.aspect) { + if (opts.width) + $slides.width(opts.width); + if (opts.height && opts.height != 'auto') + $slides.height(opts.height); + } else { + $slides.each(function(){ + var $slide = $(this); + var ratio = (opts.aspect === true) ? $slide.width()/$slide.height() : opts.aspect; + if( opts.width && $slide.width() != opts.width ) { + $slide.width( opts.width ); + $slide.height( opts.width / ratio ); + } + + if( opts.height && $slide.height() < opts.height ) { + $slide.height( opts.height ); + $slide.width( opts.height * ratio ); + } + }); + } + } + + if (opts.center && ((!opts.fit) || opts.aspect)) { + $slides.each(function(){ + var $slide = $(this); + $slide.css({ + "margin-left": opts.width ? + ((opts.width - $slide.width()) / 2) + "px" : + 0, + "margin-top": opts.height ? + ((opts.height - $slide.height()) / 2) + "px" : + 0 + }); + }); + } + + if (opts.center && !opts.fit && !opts.slideResize) { + $slides.each(function(){ + var $slide = $(this); + $slide.css({ + "margin-left": opts.width ? ((opts.width - $slide.width()) / 2) + "px" : 0, + "margin-top": opts.height ? ((opts.height - $slide.height()) / 2) + "px" : 0 + }); + }); + } + + // stretch container + var reshape = (opts.containerResize || opts.containerResizeHeight) && $cont.innerHeight() < 1; + if (reshape) { // do this only if container has no size http://tinyurl.com/da2oa9 + var maxw = 0, maxh = 0; + for(var j=0; j < els.length; j++) { + var $e = $(els[j]), e = $e[0], w = $e.outerWidth(), h = $e.outerHeight(); + if (!w) w = e.offsetWidth || e.width || $e.attr('width'); + if (!h) h = e.offsetHeight || e.height || $e.attr('height'); + maxw = w > maxw ? w : maxw; + maxh = h > maxh ? h : maxh; + } + if (opts.containerResize && maxw > 0 && maxh > 0) + $cont.css({width:maxw+'px',height:maxh+'px'}); + if (opts.containerResizeHeight && maxh > 0) + $cont.css({height:maxh+'px'}); + } + + var pauseFlag = false; // https://github.com/malsup/cycle/issues/44 + if (opts.pause) + $cont.bind('mouseenter.cycle', function(){ + pauseFlag = true; + this.cyclePause++; + triggerPause(cont, true); + }).bind('mouseleave.cycle', function(){ + if (pauseFlag) + this.cyclePause--; + triggerPause(cont, true); + }); + + if (supportMultiTransitions(opts) === false) + return false; + + // apparently a lot of people use image slideshows without height/width attributes on the images. + // Cycle 2.50+ requires the sizing info for every slide; this block tries to deal with that. + var requeue = false; + options.requeueAttempts = options.requeueAttempts || 0; + $slides.each(function() { + // try to get height/width of each slide + var $el = $(this); + this.cycleH = (opts.fit && opts.height) ? opts.height : ($el.height() || this.offsetHeight || this.height || $el.attr('height') || 0); + this.cycleW = (opts.fit && opts.width) ? opts.width : ($el.width() || this.offsetWidth || this.width || $el.attr('width') || 0); + + if ( $el.is('img') ) { + var loading = (this.cycleH === 0 && this.cycleW === 0 && !this.complete); + // don't requeue for images that are still loading but have a valid size + if (loading) { + if (o.s && opts.requeueOnImageNotLoaded && ++options.requeueAttempts < 100) { // track retry count so we don't loop forever + log(options.requeueAttempts,' - img slide not loaded, requeuing slideshow: ', this.src, this.cycleW, this.cycleH); + setTimeout(function() {$(o.s,o.c).cycle(options);}, opts.requeueTimeout); + requeue = true; + return false; // break each loop + } + else { + log('could not determine size of image: '+this.src, this.cycleW, this.cycleH); + } + } + } + return true; + }); + + if (requeue) + return false; + + opts.cssBefore = opts.cssBefore || {}; + opts.cssAfter = opts.cssAfter || {}; + opts.cssFirst = opts.cssFirst || {}; + opts.animIn = opts.animIn || {}; + opts.animOut = opts.animOut || {}; + + $slides.not(':eq('+first+')').css(opts.cssBefore); + $($slides[first]).css(opts.cssFirst); + + if (opts.timeout) { + opts.timeout = parseInt(opts.timeout,10); + // ensure that timeout and speed settings are sane + if (opts.speed.constructor == String) + opts.speed = $.fx.speeds[opts.speed] || parseInt(opts.speed,10); + if (!opts.sync) + opts.speed = opts.speed / 2; + + var buffer = opts.fx == 'none' ? 0 : opts.fx == 'shuffle' ? 500 : 250; + while((opts.timeout - opts.speed) < buffer) // sanitize timeout + opts.timeout += opts.speed; + } + if (opts.easing) + opts.easeIn = opts.easeOut = opts.easing; + if (!opts.speedIn) + opts.speedIn = opts.speed; + if (!opts.speedOut) + opts.speedOut = opts.speed; + + opts.slideCount = els.length; + opts.currSlide = opts.lastSlide = first; + if (opts.random) { + if (++opts.randomIndex == els.length) + opts.randomIndex = 0; + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else if (opts.backwards) + opts.nextSlide = opts.startingSlide === 0 ? (els.length-1) : opts.startingSlide-1; + else + opts.nextSlide = opts.startingSlide >= (els.length-1) ? 0 : opts.startingSlide+1; + + // run transition init fn + if (!opts.multiFx) { + var init = $.fn.cycle.transitions[opts.fx]; + if ($.isFunction(init)) + init($cont, $slides, opts); + else if (opts.fx != 'custom' && !opts.multiFx) { + log('unknown transition: ' + opts.fx,'; slideshow terminating'); + return false; + } + } + + // fire artificial events + var e0 = $slides[first]; + if (!opts.skipInitializationCallbacks) { + if (opts.before.length) + opts.before[0].apply(e0, [e0, e0, opts, true]); + if (opts.after.length) + opts.after[0].apply(e0, [e0, e0, opts, true]); + } + if (opts.next) + $(opts.next).bind(opts.prevNextEvent,function(){return advance(opts,1);}); + if (opts.prev) + $(opts.prev).bind(opts.prevNextEvent,function(){return advance(opts,0);}); + if (opts.pager || opts.pagerAnchorBuilder) + buildPager(els,opts); + + exposeAddSlide(opts, els); + + return opts; +} + +// save off original opts so we can restore after clearing state +function saveOriginalOpts(opts) { + opts.original = { before: [], after: [] }; + opts.original.cssBefore = $.extend({}, opts.cssBefore); + opts.original.cssAfter = $.extend({}, opts.cssAfter); + opts.original.animIn = $.extend({}, opts.animIn); + opts.original.animOut = $.extend({}, opts.animOut); + $.each(opts.before, function() { opts.original.before.push(this); }); + $.each(opts.after, function() { opts.original.after.push(this); }); +} + +function supportMultiTransitions(opts) { + var i, tx, txs = $.fn.cycle.transitions; + // look for multiple effects + if (opts.fx.indexOf(',') > 0) { + opts.multiFx = true; + opts.fxs = opts.fx.replace(/\s*/g,'').split(','); + // discard any bogus effect names + for (i=0; i < opts.fxs.length; i++) { + var fx = opts.fxs[i]; + tx = txs[fx]; + if (!tx || !txs.hasOwnProperty(fx) || !$.isFunction(tx)) { + log('discarding unknown transition: ',fx); + opts.fxs.splice(i,1); + i--; + } + } + // if we have an empty list then we threw everything away! + if (!opts.fxs.length) { + log('No valid transitions named; slideshow terminating.'); + return false; + } + } + else if (opts.fx == 'all') { // auto-gen the list of transitions + opts.multiFx = true; + opts.fxs = []; + for (var p in txs) { + if (txs.hasOwnProperty(p)) { + tx = txs[p]; + if (txs.hasOwnProperty(p) && $.isFunction(tx)) + opts.fxs.push(p); + } + } + } + if (opts.multiFx && opts.randomizeEffects) { + // munge the fxs array to make effect selection random + var r1 = Math.floor(Math.random() * 20) + 30; + for (i = 0; i < r1; i++) { + var r2 = Math.floor(Math.random() * opts.fxs.length); + opts.fxs.push(opts.fxs.splice(r2,1)[0]); + } + debug('randomized fx sequence: ',opts.fxs); + } + return true; +} + +// provide a mechanism for adding slides after the slideshow has started +function exposeAddSlide(opts, els) { + opts.addSlide = function(newSlide, prepend) { + var $s = $(newSlide), s = $s[0]; + if (!opts.autostopCount) + opts.countdown++; + els[prepend?'unshift':'push'](s); + if (opts.els) + opts.els[prepend?'unshift':'push'](s); // shuffle needs this + opts.slideCount = els.length; + + // add the slide to the random map and resort + if (opts.random) { + opts.randomMap.push(opts.slideCount-1); + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + } + + $s.css('position','absolute'); + $s[prepend?'prependTo':'appendTo'](opts.$cont); + + if (prepend) { + opts.currSlide++; + opts.nextSlide++; + } + + if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) + clearTypeFix($s); + + if (opts.fit && opts.width) + $s.width(opts.width); + if (opts.fit && opts.height && opts.height != 'auto') + $s.height(opts.height); + s.cycleH = (opts.fit && opts.height) ? opts.height : $s.height(); + s.cycleW = (opts.fit && opts.width) ? opts.width : $s.width(); + + $s.css(opts.cssBefore); + + if (opts.pager || opts.pagerAnchorBuilder) + $.fn.cycle.createPagerAnchor(els.length-1, s, $(opts.pager), els, opts); + + if ($.isFunction(opts.onAddSlide)) + opts.onAddSlide($s); + else + $s.hide(); // default behavior + }; +} + +// reset internal state; we do this on every pass in order to support multiple effects +$.fn.cycle.resetState = function(opts, fx) { + fx = fx || opts.fx; + opts.before = []; opts.after = []; + opts.cssBefore = $.extend({}, opts.original.cssBefore); + opts.cssAfter = $.extend({}, opts.original.cssAfter); + opts.animIn = $.extend({}, opts.original.animIn); + opts.animOut = $.extend({}, opts.original.animOut); + opts.fxFn = null; + $.each(opts.original.before, function() { opts.before.push(this); }); + $.each(opts.original.after, function() { opts.after.push(this); }); + + // re-init + var init = $.fn.cycle.transitions[fx]; + if ($.isFunction(init)) + init(opts.$cont, $(opts.elements), opts); +}; + +// this is the main engine fn, it handles the timeouts, callbacks and slide index mgmt +function go(els, opts, manual, fwd) { + var p = opts.$cont[0], curr = els[opts.currSlide], next = els[opts.nextSlide]; + + // opts.busy is true if we're in the middle of an animation + if (manual && opts.busy && opts.manualTrump) { + // let manual transitions requests trump active ones + debug('manualTrump in go(), stopping active transition'); + $(els).stop(true,true); + opts.busy = 0; + clearTimeout(p.cycleTimeout); + } + + // don't begin another timeout-based transition if there is one active + if (opts.busy) { + debug('transition active, ignoring new tx request'); + return; + } + + + // stop cycling if we have an outstanding stop request + if (p.cycleStop != opts.stopCount || p.cycleTimeout === 0 && !manual) + return; + + // check to see if we should stop cycling based on autostop options + if (!manual && !p.cyclePause && !opts.bounce && + ((opts.autostop && (--opts.countdown <= 0)) || + (opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) { + if (opts.end) + opts.end(opts); + return; + } + + // if slideshow is paused, only transition on a manual trigger + var changed = false; + if ((manual || !p.cyclePause) && (opts.nextSlide != opts.currSlide)) { + changed = true; + var fx = opts.fx; + // keep trying to get the slide size if we don't have it yet + curr.cycleH = curr.cycleH || $(curr).height(); + curr.cycleW = curr.cycleW || $(curr).width(); + next.cycleH = next.cycleH || $(next).height(); + next.cycleW = next.cycleW || $(next).width(); + + // support multiple transition types + if (opts.multiFx) { + if (fwd && (opts.lastFx === undefined || ++opts.lastFx >= opts.fxs.length)) + opts.lastFx = 0; + else if (!fwd && (opts.lastFx === undefined || --opts.lastFx < 0)) + opts.lastFx = opts.fxs.length - 1; + fx = opts.fxs[opts.lastFx]; + } + + // one-time fx overrides apply to: $('div').cycle(3,'zoom'); + if (opts.oneTimeFx) { + fx = opts.oneTimeFx; + opts.oneTimeFx = null; + } + + $.fn.cycle.resetState(opts, fx); + + // run the before callbacks + if (opts.before.length) + $.each(opts.before, function(i,o) { + if (p.cycleStop != opts.stopCount) return; + o.apply(next, [curr, next, opts, fwd]); + }); + + // stage the after callacks + var after = function() { + opts.busy = 0; + $.each(opts.after, function(i,o) { + if (p.cycleStop != opts.stopCount) return; + o.apply(next, [curr, next, opts, fwd]); + }); + if (!p.cycleStop) { + // queue next transition + queueNext(); + } + }; + + debug('tx firing('+fx+'); currSlide: ' + opts.currSlide + '; nextSlide: ' + opts.nextSlide); + + // get ready to perform the transition + opts.busy = 1; + if (opts.fxFn) // fx function provided? + opts.fxFn(curr, next, opts, after, fwd, manual && opts.fastOnEvent); + else if ($.isFunction($.fn.cycle[opts.fx])) // fx plugin ? + $.fn.cycle[opts.fx](curr, next, opts, after, fwd, manual && opts.fastOnEvent); + else + $.fn.cycle.custom(curr, next, opts, after, fwd, manual && opts.fastOnEvent); + } + else { + queueNext(); + } + + if (changed || opts.nextSlide == opts.currSlide) { + // calculate the next slide + var roll; + opts.lastSlide = opts.currSlide; + if (opts.random) { + opts.currSlide = opts.nextSlide; + if (++opts.randomIndex == els.length) { + opts.randomIndex = 0; + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + } + opts.nextSlide = opts.randomMap[opts.randomIndex]; + if (opts.nextSlide == opts.currSlide) + opts.nextSlide = (opts.currSlide == opts.slideCount - 1) ? 0 : opts.currSlide + 1; + } + else if (opts.backwards) { + roll = (opts.nextSlide - 1) < 0; + if (roll && opts.bounce) { + opts.backwards = !opts.backwards; + opts.nextSlide = 1; + opts.currSlide = 0; + } + else { + opts.nextSlide = roll ? (els.length-1) : opts.nextSlide-1; + opts.currSlide = roll ? 0 : opts.nextSlide+1; + } + } + else { // sequence + roll = (opts.nextSlide + 1) == els.length; + if (roll && opts.bounce) { + opts.backwards = !opts.backwards; + opts.nextSlide = els.length-2; + opts.currSlide = els.length-1; + } + else { + opts.nextSlide = roll ? 0 : opts.nextSlide+1; + opts.currSlide = roll ? els.length-1 : opts.nextSlide-1; + } + } + } + if (changed && opts.pager) + opts.updateActivePagerLink(opts.pager, opts.currSlide, opts.activePagerClass); + + function queueNext() { + // stage the next transition + var ms = 0, timeout = opts.timeout; + if (opts.timeout && !opts.continuous) { + ms = getTimeout(els[opts.currSlide], els[opts.nextSlide], opts, fwd); + if (opts.fx == 'shuffle') + ms -= opts.speedOut; + } + else if (opts.continuous && p.cyclePause) // continuous shows work off an after callback, not this timer logic + ms = 10; + if (ms > 0) + p.cycleTimeout = setTimeout(function(){ go(els, opts, 0, !opts.backwards); }, ms); + } +} + +// invoked after transition +$.fn.cycle.updateActivePagerLink = function(pager, currSlide, clsName) { + $(pager).each(function() { + $(this).children().removeClass(clsName).eq(currSlide).addClass(clsName); + }); +}; + +// calculate timeout value for current transition +function getTimeout(curr, next, opts, fwd) { + if (opts.timeoutFn) { + // call user provided calc fn + var t = opts.timeoutFn.call(curr,curr,next,opts,fwd); + while (opts.fx != 'none' && (t - opts.speed) < 250) // sanitize timeout + t += opts.speed; + debug('calculated timeout: ' + t + '; speed: ' + opts.speed); + if (t !== false) + return t; + } + return opts.timeout; +} + +// expose next/prev function, caller must pass in state +$.fn.cycle.next = function(opts) { advance(opts,1); }; +$.fn.cycle.prev = function(opts) { advance(opts,0);}; + +// advance slide forward or back +function advance(opts, moveForward) { + var val = moveForward ? 1 : -1; + var els = opts.elements; + var p = opts.$cont[0], timeout = p.cycleTimeout; + if (timeout) { + clearTimeout(timeout); + p.cycleTimeout = 0; + } + if (opts.random && val < 0) { + // move back to the previously display slide + opts.randomIndex--; + if (--opts.randomIndex == -2) + opts.randomIndex = els.length-2; + else if (opts.randomIndex == -1) + opts.randomIndex = els.length-1; + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else if (opts.random) { + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else { + opts.nextSlide = opts.currSlide + val; + if (opts.nextSlide < 0) { + if (opts.nowrap) return false; + opts.nextSlide = els.length - 1; + } + else if (opts.nextSlide >= els.length) { + if (opts.nowrap) return false; + opts.nextSlide = 0; + } + } + + var cb = opts.onPrevNextEvent || opts.prevNextClick; // prevNextClick is deprecated + if ($.isFunction(cb)) + cb(val > 0, opts.nextSlide, els[opts.nextSlide]); + go(els, opts, 1, moveForward); + return false; +} + +function buildPager(els, opts) { + var $p = $(opts.pager); + $.each(els, function(i,o) { + $.fn.cycle.createPagerAnchor(i,o,$p,els,opts); + }); + opts.updateActivePagerLink(opts.pager, opts.startingSlide, opts.activePagerClass); +} + +$.fn.cycle.createPagerAnchor = function(i, el, $p, els, opts) { + var a; + if ($.isFunction(opts.pagerAnchorBuilder)) { + a = opts.pagerAnchorBuilder(i,el); + debug('pagerAnchorBuilder('+i+', el) returned: ' + a); + } + else + a = '<a href="#">'+(i+1)+'</a>'; + + if (!a) + return; + var $a = $(a); + // don't reparent if anchor is in the dom + if ($a.parents('body').length === 0) { + var arr = []; + if ($p.length > 1) { + $p.each(function() { + var $clone = $a.clone(true); + $(this).append($clone); + arr.push($clone[0]); + }); + $a = $(arr); + } + else { + $a.appendTo($p); + } + } + + opts.pagerAnchors = opts.pagerAnchors || []; + opts.pagerAnchors.push($a); + + var pagerFn = function(e) { + e.preventDefault(); + opts.nextSlide = i; + var p = opts.$cont[0], timeout = p.cycleTimeout; + if (timeout) { + clearTimeout(timeout); + p.cycleTimeout = 0; + } + var cb = opts.onPagerEvent || opts.pagerClick; // pagerClick is deprecated + if ($.isFunction(cb)) + cb(opts.nextSlide, els[opts.nextSlide]); + go(els,opts,1,opts.currSlide < i); // trigger the trans +// return false; // <== allow bubble + }; + + if ( /mouseenter|mouseover/i.test(opts.pagerEvent) ) { + $a.hover(pagerFn, function(){/* no-op */} ); + } + else { + $a.bind(opts.pagerEvent, pagerFn); + } + + if ( ! /^click/.test(opts.pagerEvent) && !opts.allowPagerClickBubble) + $a.bind('click.cycle', function(){return false;}); // suppress click + + var cont = opts.$cont[0]; + var pauseFlag = false; // https://github.com/malsup/cycle/issues/44 + if (opts.pauseOnPagerHover) { + $a.hover( + function() { + pauseFlag = true; + cont.cyclePause++; + triggerPause(cont,true,true); + }, function() { + if (pauseFlag) + cont.cyclePause--; + triggerPause(cont,true,true); + } + ); + } +}; + +// helper fn to calculate the number of slides between the current and the next +$.fn.cycle.hopsFromLast = function(opts, fwd) { + var hops, l = opts.lastSlide, c = opts.currSlide; + if (fwd) + hops = c > l ? c - l : opts.slideCount - l; + else + hops = c < l ? l - c : l + opts.slideCount - c; + return hops; +}; + +// fix clearType problems in ie6 by setting an explicit bg color +// (otherwise text slides look horrible during a fade transition) +function clearTypeFix($slides) { + debug('applying clearType background-color hack'); + function hex(s) { + s = parseInt(s,10).toString(16); + return s.length < 2 ? '0'+s : s; + } + function getBg(e) { + for ( ; e && e.nodeName.toLowerCase() != 'html'; e = e.parentNode) { + var v = $.css(e,'background-color'); + if (v && v.indexOf('rgb') >= 0 ) { + var rgb = v.match(/\d+/g); + return '#'+ hex(rgb[0]) + hex(rgb[1]) + hex(rgb[2]); + } + if (v && v != 'transparent') + return v; + } + return '#ffffff'; + } + $slides.each(function() { $(this).css('background-color', getBg(this)); }); +} + +// reset common props before the next transition +$.fn.cycle.commonReset = function(curr,next,opts,w,h,rev) { + $(opts.elements).not(curr).hide(); + if (typeof opts.cssBefore.opacity == 'undefined') + opts.cssBefore.opacity = 1; + opts.cssBefore.display = 'block'; + if (opts.slideResize && w !== false && next.cycleW > 0) + opts.cssBefore.width = next.cycleW; + if (opts.slideResize && h !== false && next.cycleH > 0) + opts.cssBefore.height = next.cycleH; + opts.cssAfter = opts.cssAfter || {}; + opts.cssAfter.display = 'none'; + $(curr).css('zIndex',opts.slideCount + (rev === true ? 1 : 0)); + $(next).css('zIndex',opts.slideCount + (rev === true ? 0 : 1)); +}; + +// the actual fn for effecting a transition +$.fn.cycle.custom = function(curr, next, opts, cb, fwd, speedOverride) { + var $l = $(curr), $n = $(next); + var speedIn = opts.speedIn, speedOut = opts.speedOut, easeIn = opts.easeIn, easeOut = opts.easeOut, animInDelay = opts.animInDelay, animOutDelay = opts.animOutDelay; + $n.css(opts.cssBefore); + if (speedOverride) { + if (typeof speedOverride == 'number') + speedIn = speedOut = speedOverride; + else + speedIn = speedOut = 1; + easeIn = easeOut = null; + } + var fn = function() { + $n.delay(animInDelay).animate(opts.animIn, speedIn, easeIn, function() { + cb(); + }); + }; + $l.delay(animOutDelay).animate(opts.animOut, speedOut, easeOut, function() { + $l.css(opts.cssAfter); + if (!opts.sync) + fn(); + }); + if (opts.sync) fn(); +}; + +// transition definitions - only fade is defined here, transition pack defines the rest +$.fn.cycle.transitions = { + fade: function($cont, $slides, opts) { + $slides.not(':eq('+opts.currSlide+')').css('opacity',0); + opts.before.push(function(curr,next,opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.opacity = 0; + }); + opts.animIn = { opacity: 1 }; + opts.animOut = { opacity: 0 }; + opts.cssBefore = { top: 0, left: 0 }; + } +}; + +$.fn.cycle.ver = function() { return ver; }; + +// override these globally if you like (they are all optional) +$.fn.cycle.defaults = { + activePagerClass: 'activeSlide', // class name used for the active pager link + after: null, // transition callback (scope set to element that was shown): function(currSlideElement, nextSlideElement, options, forwardFlag) + allowPagerClickBubble: false, // allows or prevents click event on pager anchors from bubbling + animIn: null, // properties that define how the slide animates in + animInDelay: 0, // allows delay before next slide transitions in + animOut: null, // properties that define how the slide animates out + animOutDelay: 0, // allows delay before current slide transitions out + aspect: false, // preserve aspect ratio during fit resizing, cropping if necessary (must be used with fit option) + autostop: 0, // true to end slideshow after X transitions (where X == slide count) + autostopCount: 0, // number of transitions (optionally used with autostop to define X) + backwards: false, // true to start slideshow at last slide and move backwards through the stack + before: null, // transition callback (scope set to element to be shown): function(currSlideElement, nextSlideElement, options, forwardFlag) + center: null, // set to true to have cycle add top/left margin to each slide (use with width and height options) + cleartype: !$.support.opacity, // true if clearType corrections should be applied (for IE) + cleartypeNoBg: false, // set to true to disable extra cleartype fixing (leave false to force background color setting on slides) + containerResize: 1, // resize container to fit largest slide + containerResizeHeight: 0, // resize containers height to fit the largest slide but leave the width dynamic + continuous: 0, // true to start next transition immediately after current one completes + cssAfter: null, // properties that defined the state of the slide after transitioning out + cssBefore: null, // properties that define the initial state of the slide before transitioning in + delay: 0, // additional delay (in ms) for first transition (hint: can be negative) + easeIn: null, // easing for "in" transition + easeOut: null, // easing for "out" transition + easing: null, // easing method for both in and out transitions + end: null, // callback invoked when the slideshow terminates (use with autostop or nowrap options): function(options) + fastOnEvent: 0, // force fast transitions when triggered manually (via pager or prev/next); value == time in ms + fit: 0, // force slides to fit container + fx: 'fade', // name of transition effect (or comma separated names, ex: 'fade,scrollUp,shuffle') + fxFn: null, // function used to control the transition: function(currSlideElement, nextSlideElement, options, afterCalback, forwardFlag) + height: 'auto', // container height (if the 'fit' option is true, the slides will be set to this height as well) + manualTrump: true, // causes manual transition to stop an active transition instead of being ignored + metaAttr: 'cycle', // data- attribute that holds the option data for the slideshow + next: null, // element, jQuery object, or jQuery selector string for the element to use as event trigger for next slide + nowrap: 0, // true to prevent slideshow from wrapping + onPagerEvent: null, // callback fn for pager events: function(zeroBasedSlideIndex, slideElement) + onPrevNextEvent: null, // callback fn for prev/next events: function(isNext, zeroBasedSlideIndex, slideElement) + pager: null, // element, jQuery object, or jQuery selector string for the element to use as pager container + pagerAnchorBuilder: null, // callback fn for building anchor links: function(index, DOMelement) + pagerEvent: 'click.cycle', // name of event which drives the pager navigation + pause: 0, // true to enable "pause on hover" + pauseOnPagerHover: 0, // true to pause when hovering over pager link + prev: null, // element, jQuery object, or jQuery selector string for the element to use as event trigger for previous slide + prevNextEvent: 'click.cycle',// event which drives the manual transition to the previous or next slide + random: 0, // true for random, false for sequence (not applicable to shuffle fx) + randomizeEffects: 1, // valid when multiple effects are used; true to make the effect sequence random + requeueOnImageNotLoaded: true, // requeue the slideshow if any image slides are not yet loaded + requeueTimeout: 250, // ms delay for requeue + rev: 0, // causes animations to transition in reverse (for effects that support it such as scrollHorz/scrollVert/shuffle) + shuffle: null, // coords for shuffle animation, ex: { top:15, left: 200 } + skipInitializationCallbacks: false, // set to true to disable the first before/after callback that occurs prior to any transition + slideExpr: null, // expression for selecting slides (if something other than all children is required) + slideResize: 1, // force slide width/height to fixed size before every transition + speed: 1000, // speed of the transition (any valid fx speed value) + speedIn: null, // speed of the 'in' transition + speedOut: null, // speed of the 'out' transition + startingSlide: undefined,// zero-based index of the first slide to be displayed + sync: 1, // true if in/out transitions should occur simultaneously + timeout: 4000, // milliseconds between slide transitions (0 to disable auto advance) + timeoutFn: null, // callback for determining per-slide timeout value: function(currSlideElement, nextSlideElement, options, forwardFlag) + updateActivePagerLink: null,// callback fn invoked to update the active pager link (adds/removes activePagerClass style) + width: null // container width (if the 'fit' option is true, the slides will be set to this width as well) +}; + +})(jQuery); + + +/*! + * jQuery Cycle Plugin Transition Definitions + * This script is a plugin for the jQuery Cycle Plugin + * Examples and documentation at: http://malsup.com/jquery/cycle/ + * Copyright (c) 2007-2010 M. Alsup + * Version: 2.73 + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + */ +(function($) { +"use strict"; + +// +// These functions define slide initialization and properties for the named +// transitions. To save file size feel free to remove any of these that you +// don't need. +// +$.fn.cycle.transitions.none = function($cont, $slides, opts) { + opts.fxFn = function(curr,next,opts,after){ + $(next).show(); + $(curr).hide(); + after(); + }; +}; + +// not a cross-fade, fadeout only fades out the top slide +$.fn.cycle.transitions.fadeout = function($cont, $slides, opts) { + $slides.not(':eq('+opts.currSlide+')').css({ display: 'block', 'opacity': 1 }); + opts.before.push(function(curr,next,opts,w,h,rev) { + $(curr).css('zIndex',opts.slideCount + (rev !== true ? 1 : 0)); + $(next).css('zIndex',opts.slideCount + (rev !== true ? 0 : 1)); + }); + opts.animIn.opacity = 1; + opts.animOut.opacity = 0; + opts.cssBefore.opacity = 1; + opts.cssBefore.display = 'block'; + opts.cssAfter.zIndex = 0; +}; + +// scrollUp/Down/Left/Right +$.fn.cycle.transitions.scrollUp = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var h = $cont.height(); + opts.cssBefore.top = h; + opts.cssBefore.left = 0; + opts.cssFirst.top = 0; + opts.animIn.top = 0; + opts.animOut.top = -h; +}; +$.fn.cycle.transitions.scrollDown = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var h = $cont.height(); + opts.cssFirst.top = 0; + opts.cssBefore.top = -h; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.top = h; +}; +$.fn.cycle.transitions.scrollLeft = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var w = $cont.width(); + opts.cssFirst.left = 0; + opts.cssBefore.left = w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = 0-w; +}; +$.fn.cycle.transitions.scrollRight = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var w = $cont.width(); + opts.cssFirst.left = 0; + opts.cssBefore.left = -w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = w; +}; +$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) { + $cont.css('overflow','hidden').width(); + opts.before.push(function(curr, next, opts, fwd) { + if (opts.rev) + fwd = !fwd; + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.left = fwd ? (next.cycleW-1) : (1-next.cycleW); + opts.animOut.left = fwd ? -curr.cycleW : curr.cycleW; + }); + opts.cssFirst.left = 0; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.top = 0; +}; +$.fn.cycle.transitions.scrollVert = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push(function(curr, next, opts, fwd) { + if (opts.rev) + fwd = !fwd; + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.top = fwd ? (1-next.cycleH) : (next.cycleH-1); + opts.animOut.top = fwd ? curr.cycleH : -curr.cycleH; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.left = 0; +}; + +// slideX/slideY +$.fn.cycle.transitions.slideX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $(opts.elements).not(curr).hide(); + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.animIn.width = next.cycleW; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; + opts.animIn.width = 'show'; + opts.animOut.width = 0; +}; +$.fn.cycle.transitions.slideY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $(opts.elements).not(curr).hide(); + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.animIn.height = next.cycleH; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.height = 0; + opts.animIn.height = 'show'; + opts.animOut.height = 0; +}; + +// shuffle +$.fn.cycle.transitions.shuffle = function($cont, $slides, opts) { + var i, w = $cont.css('overflow', 'visible').width(); + $slides.css({left: 0, top: 0}); + opts.before.push(function(curr,next,opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + }); + // only adjust speed once! + if (!opts.speedAdjusted) { + opts.speed = opts.speed / 2; // shuffle has 2 transitions + opts.speedAdjusted = true; + } + opts.random = 0; + opts.shuffle = opts.shuffle || {left:-w, top:15}; + opts.els = []; + for (i=0; i < $slides.length; i++) + opts.els.push($slides[i]); + + for (i=0; i < opts.currSlide; i++) + opts.els.push(opts.els.shift()); + + // custom transition fn (hat tip to Benjamin Sterling for this bit of sweetness!) + opts.fxFn = function(curr, next, opts, cb, fwd) { + if (opts.rev) + fwd = !fwd; + var $el = fwd ? $(curr) : $(next); + $(next).css(opts.cssBefore); + var count = opts.slideCount; + $el.animate(opts.shuffle, opts.speedIn, opts.easeIn, function() { + var hops = $.fn.cycle.hopsFromLast(opts, fwd); + for (var k=0; k < hops; k++) { + if (fwd) + opts.els.push(opts.els.shift()); + else + opts.els.unshift(opts.els.pop()); + } + if (fwd) { + for (var i=0, len=opts.els.length; i < len; i++) + $(opts.els[i]).css('z-index', len-i+count); + } + else { + var z = $(curr).css('z-index'); + $el.css('z-index', parseInt(z,10)+1+count); + } + $el.animate({left:0, top:0}, opts.speedOut, opts.easeOut, function() { + $(fwd ? this : curr).hide(); + if (cb) cb(); + }); + }); + }; + $.extend(opts.cssBefore, { display: 'block', opacity: 1, top: 0, left: 0 }); +}; + +// turnUp/Down/Left/Right +$.fn.cycle.transitions.turnUp = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.cssBefore.top = next.cycleH; + opts.animIn.height = next.cycleH; + opts.animOut.width = next.cycleW; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.cssBefore.height = 0; + opts.animIn.top = 0; + opts.animOut.height = 0; +}; +$.fn.cycle.transitions.turnDown = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.height = 0; + opts.animOut.height = 0; +}; +$.fn.cycle.transitions.turnLeft = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.cssBefore.left = next.cycleW; + opts.animIn.width = next.cycleW; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; + opts.animIn.left = 0; + opts.animOut.width = 0; +}; +$.fn.cycle.transitions.turnRight = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.animIn.width = next.cycleW; + opts.animOut.left = curr.cycleW; + }); + $.extend(opts.cssBefore, { top: 0, left: 0, width: 0 }); + opts.animIn.left = 0; + opts.animOut.width = 0; +}; + +// zoom +$.fn.cycle.transitions.zoom = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,false,true); + opts.cssBefore.top = next.cycleH/2; + opts.cssBefore.left = next.cycleW/2; + $.extend(opts.animIn, { top: 0, left: 0, width: next.cycleW, height: next.cycleH }); + $.extend(opts.animOut, { width: 0, height: 0, top: curr.cycleH/2, left: curr.cycleW/2 }); + }); + opts.cssFirst.top = 0; + opts.cssFirst.left = 0; + opts.cssBefore.width = 0; + opts.cssBefore.height = 0; +}; + +// fadeZoom +$.fn.cycle.transitions.fadeZoom = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,false); + opts.cssBefore.left = next.cycleW/2; + opts.cssBefore.top = next.cycleH/2; + $.extend(opts.animIn, { top: 0, left: 0, width: next.cycleW, height: next.cycleH }); + }); + opts.cssBefore.width = 0; + opts.cssBefore.height = 0; + opts.animOut.opacity = 0; +}; + +// blindX +$.fn.cycle.transitions.blindX = function($cont, $slides, opts) { + var w = $cont.css('overflow','hidden').width(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.width = next.cycleW; + opts.animOut.left = curr.cycleW; + }); + opts.cssBefore.left = w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = w; +}; +// blindY +$.fn.cycle.transitions.blindY = function($cont, $slides, opts) { + var h = $cont.css('overflow','hidden').height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssBefore.top = h; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.top = h; +}; +// blindZ +$.fn.cycle.transitions.blindZ = function($cont, $slides, opts) { + var h = $cont.css('overflow','hidden').height(); + var w = $cont.width(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssBefore.top = h; + opts.cssBefore.left = w; + opts.animIn.top = 0; + opts.animIn.left = 0; + opts.animOut.top = h; + opts.animOut.left = w; +}; + +// growX - grow horizontally from centered 0 width +$.fn.cycle.transitions.growX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.cssBefore.left = this.cycleW/2; + opts.animIn.left = 0; + opts.animIn.width = this.cycleW; + opts.animOut.left = 0; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; +}; +// growY - grow vertically from centered 0 height +$.fn.cycle.transitions.growY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.cssBefore.top = this.cycleH/2; + opts.animIn.top = 0; + opts.animIn.height = this.cycleH; + opts.animOut.top = 0; + }); + opts.cssBefore.height = 0; + opts.cssBefore.left = 0; +}; + +// curtainX - squeeze in both edges horizontally +$.fn.cycle.transitions.curtainX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true,true); + opts.cssBefore.left = next.cycleW/2; + opts.animIn.left = 0; + opts.animIn.width = this.cycleW; + opts.animOut.left = curr.cycleW/2; + opts.animOut.width = 0; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; +}; +// curtainY - squeeze in both edges vertically +$.fn.cycle.transitions.curtainY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false,true); + opts.cssBefore.top = next.cycleH/2; + opts.animIn.top = 0; + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH/2; + opts.animOut.height = 0; + }); + opts.cssBefore.height = 0; + opts.cssBefore.left = 0; +}; + +// cover - curr slide covered by next slide +$.fn.cycle.transitions.cover = function($cont, $slides, opts) { + var d = opts.direction || 'left'; + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.cssAfter.display = ''; + if (d == 'right') + opts.cssBefore.left = -w; + else if (d == 'up') + opts.cssBefore.top = h; + else if (d == 'down') + opts.cssBefore.top = -h; + else + opts.cssBefore.left = w; + }); + opts.animIn.left = 0; + opts.animIn.top = 0; + opts.cssBefore.top = 0; + opts.cssBefore.left = 0; +}; + +// uncover - curr slide moves off next slide +$.fn.cycle.transitions.uncover = function($cont, $slides, opts) { + var d = opts.direction || 'left'; + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + if (d == 'right') + opts.animOut.left = w; + else if (d == 'up') + opts.animOut.top = -h; + else if (d == 'down') + opts.animOut.top = h; + else + opts.animOut.left = -w; + }); + opts.animIn.left = 0; + opts.animIn.top = 0; + opts.cssBefore.top = 0; + opts.cssBefore.left = 0; +}; + +// toss - move top slide and fade away +$.fn.cycle.transitions.toss = function($cont, $slides, opts) { + var w = $cont.css('overflow','visible').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + // provide default toss settings if animOut not provided + if (!opts.animOut.left && !opts.animOut.top) + $.extend(opts.animOut, { left: w*2, top: -h/2, opacity: 0 }); + else + opts.animOut.opacity = 0; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.animIn.left = 0; +}; + +// wipe - clip animation +$.fn.cycle.transitions.wipe = function($cont, $slides, opts) { + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.cssBefore = opts.cssBefore || {}; + var clip; + if (opts.clip) { + if (/l2r/.test(opts.clip)) + clip = 'rect(0px 0px '+h+'px 0px)'; + else if (/r2l/.test(opts.clip)) + clip = 'rect(0px '+w+'px '+h+'px '+w+'px)'; + else if (/t2b/.test(opts.clip)) + clip = 'rect(0px '+w+'px 0px 0px)'; + else if (/b2t/.test(opts.clip)) + clip = 'rect('+h+'px '+w+'px '+h+'px 0px)'; + else if (/zoom/.test(opts.clip)) { + var top = parseInt(h/2,10); + var left = parseInt(w/2,10); + clip = 'rect('+top+'px '+left+'px '+top+'px '+left+'px)'; + } + } + + opts.cssBefore.clip = opts.cssBefore.clip || clip || 'rect(0px 0px 0px 0px)'; + + var d = opts.cssBefore.clip.match(/(\d+)/g); + var t = parseInt(d[0],10), r = parseInt(d[1],10), b = parseInt(d[2],10), l = parseInt(d[3],10); + + opts.before.push(function(curr, next, opts) { + if (curr == next) return; + var $curr = $(curr), $next = $(next); + $.fn.cycle.commonReset(curr,next,opts,true,true,false); + opts.cssAfter.display = 'block'; + + var step = 1, count = parseInt((opts.speedIn / 13),10) - 1; + (function f() { + var tt = t ? t - parseInt(step * (t/count),10) : 0; + var ll = l ? l - parseInt(step * (l/count),10) : 0; + var bb = b < h ? b + parseInt(step * ((h-b)/count || 1),10) : h; + var rr = r < w ? r + parseInt(step * ((w-r)/count || 1),10) : w; + $next.css({ clip: 'rect('+tt+'px '+rr+'px '+bb+'px '+ll+'px)' }); + (step++ <= count) ? setTimeout(f, 13) : $curr.css('display', 'none'); + })(); + }); + $.extend(opts.cssBefore, { display: 'block', opacity: 1, top: 0, left: 0 }); + opts.animIn = { left: 0 }; + opts.animOut = { left: 0 }; +}; + +})(jQuery); diff --git a/web/libraries/jquery.hoverIntent/jquery.hoverIntent.js.2 b/web/libraries/jquery.hoverIntent/jquery.hoverIntent.js.2 new file mode 100644 index 000000000..311aa86a3 --- /dev/null +++ b/web/libraries/jquery.hoverIntent/jquery.hoverIntent.js.2 @@ -0,0 +1,169 @@ +/*! + * hoverIntent v1.10.1 // 2019.10.05 // jQuery v1.7.0+ + * http://briancherne.github.io/jquery-hoverIntent/ + * + * You may use hoverIntent under the terms of the MIT license. Basically that + * means you are free to use hoverIntent as long as this header is left intact. + * Copyright 2007-2019 Brian Cherne + */ + +/** + * hoverIntent is similar to jQuery's built-in "hover" method except that + * instead of firing the handlerIn function immediately, hoverIntent checks + * to see if the user's mouse has slowed down (beneath the sensitivity + * threshold) before firing the event. The handlerOut function is only + * called after a matching handlerIn. + * + * // basic usage ... just like .hover() + * .hoverIntent( handlerIn, handlerOut ) + * .hoverIntent( handlerInOut ) + * + * // basic usage ... with event delegation! + * .hoverIntent( handlerIn, handlerOut, selector ) + * .hoverIntent( handlerInOut, selector ) + * + * // using a basic configuration object + * .hoverIntent( config ) + * + * @param handlerIn function OR configuration object + * @param handlerOut function OR selector for delegation OR undefined + * @param selector selector OR undefined + * @author Brian Cherne <brian(at)cherne(dot)net> + */ + +;(function(factory) { + 'use strict'; + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && module.exports) { + module.exports = factory(require('jquery')); + } else if (jQuery && !jQuery.fn.hoverIntent) { + factory(jQuery); + } +})(function($) { + 'use strict'; + + // default configuration values + var _cfg = { + interval: 100, + sensitivity: 6, + timeout: 0 + }; + + // counter used to generate an ID for each instance + var INSTANCE_COUNT = 0; + + // current X and Y position of mouse, updated during mousemove tracking (shared across instances) + var cX, cY; + + // saves the current pointer position coordinates based on the given mousemove event + var track = function(ev) { + cX = ev.pageX; + cY = ev.pageY; + }; + + // compares current and previous mouse positions + var compare = function(ev,$el,s,cfg) { + // compare mouse positions to see if pointer has slowed enough to trigger `over` function + if ( Math.sqrt( (s.pX-cX)*(s.pX-cX) + (s.pY-cY)*(s.pY-cY) ) < cfg.sensitivity ) { + $el.off(s.event,track); + delete s.timeoutId; + // set hoverIntent state as active for this element (permits `out` handler to trigger) + s.isActive = true; + // overwrite old mouseenter event coordinates with most recent pointer position + ev.pageX = cX; ev.pageY = cY; + // clear coordinate data from state object + delete s.pX; delete s.pY; + return cfg.over.apply($el[0],[ev]); + } else { + // set previous coordinates for next comparison + s.pX = cX; s.pY = cY; + // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs) + s.timeoutId = setTimeout( function(){compare(ev, $el, s, cfg);} , cfg.interval ); + } + }; + + // triggers given `out` function at configured `timeout` after a mouseleave and clears state + var delay = function(ev,$el,s,out) { + var data = $el.data('hoverIntent'); + if (data) { + delete data[s.id]; + } + return out.apply($el[0],[ev]); + }; + + // checks if `value` is a function + var isFunction = function (value) { + return typeof value === 'function'; + }; + + $.fn.hoverIntent = function(handlerIn,handlerOut,selector) { + // instance ID, used as a key to store and retrieve state information on an element + var instanceId = INSTANCE_COUNT++; + + // extend the default configuration and parse parameters + var cfg = $.extend({}, _cfg); + if ( $.isPlainObject(handlerIn) ) { + cfg = $.extend(cfg, handlerIn); + if ( !isFunction(cfg.out) ) { + cfg.out = cfg.over; + } + } else if ( isFunction(handlerOut) ) { + cfg = $.extend(cfg, { over: handlerIn, out: handlerOut, selector: selector } ); + } else { + cfg = $.extend(cfg, { over: handlerIn, out: handlerIn, selector: handlerOut } ); + } + + // A private function for handling mouse 'hovering' + var handleHover = function(e) { + // cloned event to pass to handlers (copy required for event object to be passed in IE) + var ev = $.extend({},e); + + // the current target of the mouse event, wrapped in a jQuery object + var $el = $(this); + + // read hoverIntent data from element (or initialize if not present) + var hoverIntentData = $el.data('hoverIntent'); + if (!hoverIntentData) { $el.data('hoverIntent', (hoverIntentData = {})); } + + // read per-instance state from element (or initialize if not present) + var state = hoverIntentData[instanceId]; + if (!state) { hoverIntentData[instanceId] = state = { id: instanceId }; } + + // state properties: + // id = instance ID, used to clean up data + // timeoutId = timeout ID, reused for tracking mouse position and delaying "out" handler + // isActive = plugin state, true after `over` is called just until `out` is called + // pX, pY = previously-measured pointer coordinates, updated at each polling interval + // event = string representing the namespaced event used for mouse tracking + + // clear any existing timeout + if (state.timeoutId) { state.timeoutId = clearTimeout(state.timeoutId); } + + // namespaced event used to register and unregister mousemove tracking + var mousemove = state.event = 'mousemove.hoverIntent.hoverIntent'+instanceId; + + // handle the event, based on its type + if (e.type === 'mouseenter') { + // do nothing if already active + if (state.isActive) { return; } + // set "previous" X and Y position based on initial entry point + state.pX = ev.pageX; state.pY = ev.pageY; + // update "current" X and Y position based on mousemove + $el.off(mousemove,track).on(mousemove,track); + // start polling interval (self-calling timeout) to compare mouse coordinates over time + state.timeoutId = setTimeout( function(){compare(ev,$el,state,cfg);} , cfg.interval ); + } else { // "mouseleave" + // do nothing if not already active + if (!state.isActive) { return; } + // unbind expensive mousemove event + $el.off(mousemove,track); + // if hoverIntent state is true, then call the mouseOut function after the specified delay + state.timeoutId = setTimeout( function(){delay(ev,$el,state,cfg.out);} , cfg.timeout ); + } + }; + + // listen for mouseenter and mouseleave + return this.on({'mouseenter.hoverIntent':handleHover,'mouseleave.hoverIntent':handleHover}, cfg.selector); + }; +}); diff --git a/web/libraries/jquery.pause/jquery.pause.js.2 b/web/libraries/jquery.pause/jquery.pause.js.2 new file mode 100644 index 000000000..1b5a09474 --- /dev/null +++ b/web/libraries/jquery.pause/jquery.pause.js.2 @@ -0,0 +1,94 @@ +/*! + * Pause jQuery plugin v0.1 + * + * Copyright 2010 by Tobia Conforto <tobia.conforto@gmail.com> + * + * Based on Pause-resume-animation jQuery plugin by Joe Weitzel + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or(at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., 51 + * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +/* Changelog: + * + * 0.1 2010-06-13 Initial release + */ +(function() { + var $ = jQuery, + pauseId = 'jQuery.pause', + uuid = 1, + oldAnimate = $.fn.animate, + anims = {}; + + function now() { return new Date().getTime(); } + + $.fn.animate = function(prop, speed, easing, callback) { + var optall = $.speed(speed, easing, callback); + optall.complete = optall.old; // unwrap callback + return this.each(function() { + // check pauseId + if (! this[pauseId]) + this[pauseId] = uuid++; + // start animation + var opt = $.extend({}, optall); + oldAnimate.apply($(this), [prop, $.extend({}, opt)]); + // store data + anims[this[pauseId]] = { + run: true, + prop: prop, + opt: opt, + start: now(), + done: 0 + }; + }); + }; + + $.fn.pause = function() { + return this.each(function() { + // check pauseId + if (! this[pauseId]) + this[pauseId] = uuid++; + // fetch data + var data = anims[this[pauseId]]; + if (data && data.run) { + data.done += now() - data.start; + if (data.done > data.opt.duration) { + // remove stale entry + delete anims[this[pauseId]]; + } else { + // pause animation + $(this).stop(); + data.run = false; + } + } + }); + }; + + $.fn.resume = function() { + return this.each(function() { + // check pauseId + if (! this[pauseId]) + this[pauseId] = uuid++; + // fetch data + var data = anims[this[pauseId]]; + if (data && ! data.run) { + // resume animation + data.opt.duration -= data.done; + data.done = 0; + data.run = true; + data.start = now(); + oldAnimate.apply($(this), [data.prop, $.extend({}, data.opt)]); + } + }); + }; +})(); \ No newline at end of file diff --git a/web/libraries/json2/json2.js.2 b/web/libraries/json2/json2.js.2 new file mode 100644 index 000000000..f6fada687 --- /dev/null +++ b/web/libraries/json2/json2.js.2 @@ -0,0 +1,530 @@ +// json2.js +// 2017-06-12 +// Public Domain. +// NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. + +// USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO +// NOT CONTROL. + +// This file creates a global JSON object containing two methods: stringify +// and parse. This file provides the ES5 JSON capability to ES3 systems. +// If a project might run on IE8 or earlier, then this file should be included. +// This file does nothing on ES5 systems. + +// JSON.stringify(value, replacer, space) +// value any JavaScript value, usually an object or array. +// replacer an optional parameter that determines how object +// values are stringified for objects. It can be a +// function or an array of strings. +// space an optional parameter that specifies the indentation +// of nested structures. If it is omitted, the text will +// be packed without extra whitespace. If it is a number, +// it will specify the number of spaces to indent at each +// level. If it is a string (such as "\t" or " "), +// it contains the characters used to indent at each level. +// This method produces a JSON text from a JavaScript value. +// When an object value is found, if the object contains a toJSON +// method, its toJSON method will be called and the result will be +// stringified. A toJSON method does not serialize: it returns the +// value represented by the name/value pair that should be serialized, +// or undefined if nothing should be serialized. The toJSON method +// will be passed the key associated with the value, and this will be +// bound to the value. + +// For example, this would serialize Dates as ISO strings. + +// Date.prototype.toJSON = function (key) { +// function f(n) { +// // Format integers to have at least two digits. +// return (n < 10) +// ? "0" + n +// : n; +// } +// return this.getUTCFullYear() + "-" + +// f(this.getUTCMonth() + 1) + "-" + +// f(this.getUTCDate()) + "T" + +// f(this.getUTCHours()) + ":" + +// f(this.getUTCMinutes()) + ":" + +// f(this.getUTCSeconds()) + "Z"; +// }; + +// You can provide an optional replacer method. It will be passed the +// key and value of each member, with this bound to the containing +// object. The value that is returned from your method will be +// serialized. If your method returns undefined, then the member will +// be excluded from the serialization. + +// If the replacer parameter is an array of strings, then it will be +// used to select the members to be serialized. It filters the results +// such that only members with keys listed in the replacer array are +// stringified. + +// Values that do not have JSON representations, such as undefined or +// functions, will not be serialized. Such values in objects will be +// dropped; in arrays they will be replaced with null. You can use +// a replacer function to replace those with JSON values. + +// JSON.stringify(undefined) returns undefined. + +// The optional space parameter produces a stringification of the +// value that is filled with line breaks and indentation to make it +// easier to read. + +// If the space parameter is a non-empty string, then that string will +// be used for indentation. If the space parameter is a number, then +// the indentation will be that many spaces. + +// Example: + +// text = JSON.stringify(["e", {pluribus: "unum"}]); +// // text is '["e",{"pluribus":"unum"}]' + +// text = JSON.stringify(["e", {pluribus: "unum"}], null, "\t"); +// // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]' + +// text = JSON.stringify([new Date()], function (key, value) { +// return this[key] instanceof Date +// ? "Date(" + this[key] + ")" +// : value; +// }); +// // text is '["Date(---current time---)"]' + +// JSON.parse(text, reviver) +// This method parses a JSON text to produce an object or array. +// It can throw a SyntaxError exception. + +// The optional reviver parameter is a function that can filter and +// transform the results. It receives each of the keys and values, +// and its return value is used instead of the original value. +// If it returns what it received, then the structure is not modified. +// If it returns undefined then the member is deleted. + +// Example: + +// // Parse the text. Values that look like ISO date strings will +// // be converted to Date objects. + +// myData = JSON.parse(text, function (key, value) { +// var a; +// if (typeof value === "string") { +// a = +// /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value); +// if (a) { +// return new Date(Date.UTC( +// +a[1], +a[2] - 1, +a[3], +a[4], +a[5], +a[6] +// )); +// } +// return value; +// } +// }); + +// myData = JSON.parse( +// "[\"Date(09/09/2001)\"]", +// function (key, value) { +// var d; +// if ( +// typeof value === "string" +// && value.slice(0, 5) === "Date(" +// && value.slice(-1) === ")" +// ) { +// d = new Date(value.slice(5, -1)); +// if (d) { +// return d; +// } +// } +// return value; +// } +// ); + +// This is a reference implementation. You are free to copy, modify, or +// redistribute. + +/*jslint + eval, for, this +*/ + +/*property + JSON, apply, call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours, + getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join, + lastIndex, length, parse, prototype, push, replace, slice, stringify, + test, toJSON, toString, valueOf +*/ + + +// Create a JSON object only if one does not already exist. We create the +// methods in a closure to avoid creating global variables. + +if (typeof JSON !== "object") { + JSON = {}; +} + +(function () { + "use strict"; + + var rx_one = /^[\],:{}\s]*$/; + var rx_two = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g; + var rx_three = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g; + var rx_four = /(?:^|:|,)(?:\s*\[)+/g; + var rx_escapable = /[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g; + var rx_dangerous = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g; + + function f(n) { + // Format integers to have at least two digits. + return (n < 10) + ? "0" + n + : n; + } + + function this_value() { + return this.valueOf(); + } + + if (typeof Date.prototype.toJSON !== "function") { + + Date.prototype.toJSON = function () { + + return isFinite(this.valueOf()) + ? ( + this.getUTCFullYear() + + "-" + + f(this.getUTCMonth() + 1) + + "-" + + f(this.getUTCDate()) + + "T" + + f(this.getUTCHours()) + + ":" + + f(this.getUTCMinutes()) + + ":" + + f(this.getUTCSeconds()) + + "Z" + ) + : null; + }; + + Boolean.prototype.toJSON = this_value; + Number.prototype.toJSON = this_value; + String.prototype.toJSON = this_value; + } + + var gap; + var indent; + var meta; + var rep; + + + function quote(string) { + +// If the string contains no control characters, no quote characters, and no +// backslash characters, then we can safely slap some quotes around it. +// Otherwise we must also replace the offending characters with safe escape +// sequences. + + rx_escapable.lastIndex = 0; + return rx_escapable.test(string) + ? "\"" + string.replace(rx_escapable, function (a) { + var c = meta[a]; + return typeof c === "string" + ? c + : "\\u" + ("0000" + a.charCodeAt(0).toString(16)).slice(-4); + }) + "\"" + : "\"" + string + "\""; + } + + + function str(key, holder) { + +// Produce a string from holder[key]. + + var i; // The loop counter. + var k; // The member key. + var v; // The member value. + var length; + var mind = gap; + var partial; + var value = holder[key]; + +// If the value has a toJSON method, call it to obtain a replacement value. + + if ( + value + && typeof value === "object" + && typeof value.toJSON === "function" + ) { + value = value.toJSON(key); + } + +// If we were called with a replacer function, then call the replacer to +// obtain a replacement value. + + if (typeof rep === "function") { + value = rep.call(holder, key, value); + } + +// What happens next depends on the value's type. + + switch (typeof value) { + case "string": + return quote(value); + + case "number": + +// JSON numbers must be finite. Encode non-finite numbers as null. + + return (isFinite(value)) + ? String(value) + : "null"; + + case "boolean": + case "null": + +// If the value is a boolean or null, convert it to a string. Note: +// typeof null does not produce "null". The case is included here in +// the remote chance that this gets fixed someday. + + return String(value); + +// If the type is "object", we might be dealing with an object or an array or +// null. + + case "object": + +// Due to a specification blunder in ECMAScript, typeof null is "object", +// so watch out for that case. + + if (!value) { + return "null"; + } + +// Make an array to hold the partial results of stringifying this object value. + + gap += indent; + partial = []; + +// Is the value an array? + + if (Object.prototype.toString.apply(value) === "[object Array]") { + +// The value is an array. Stringify every element. Use null as a placeholder +// for non-JSON values. + + length = value.length; + for (i = 0; i < length; i += 1) { + partial[i] = str(i, value) || "null"; + } + +// Join all of the elements together, separated with commas, and wrap them in +// brackets. + + v = partial.length === 0 + ? "[]" + : gap + ? ( + "[\n" + + gap + + partial.join(",\n" + gap) + + "\n" + + mind + + "]" + ) + : "[" + partial.join(",") + "]"; + gap = mind; + return v; + } + +// If the replacer is an array, use it to select the members to be stringified. + + if (rep && typeof rep === "object") { + length = rep.length; + for (i = 0; i < length; i += 1) { + if (typeof rep[i] === "string") { + k = rep[i]; + v = str(k, value); + if (v) { + partial.push(quote(k) + ( + (gap) + ? ": " + : ":" + ) + v); + } + } + } + } else { + +// Otherwise, iterate through all of the keys in the object. + + for (k in value) { + if (Object.prototype.hasOwnProperty.call(value, k)) { + v = str(k, value); + if (v) { + partial.push(quote(k) + ( + (gap) + ? ": " + : ":" + ) + v); + } + } + } + } + +// Join all of the member texts together, separated with commas, +// and wrap them in braces. + + v = partial.length === 0 + ? "{}" + : gap + ? "{\n" + gap + partial.join(",\n" + gap) + "\n" + mind + "}" + : "{" + partial.join(",") + "}"; + gap = mind; + return v; + } + } + +// If the JSON object does not yet have a stringify method, give it one. + + if (typeof JSON.stringify !== "function") { + meta = { // table of character substitutions + "\b": "\\b", + "\t": "\\t", + "\n": "\\n", + "\f": "\\f", + "\r": "\\r", + "\"": "\\\"", + "\\": "\\\\" + }; + JSON.stringify = function (value, replacer, space) { + +// The stringify method takes a value and an optional replacer, and an optional +// space parameter, and returns a JSON text. The replacer can be a function +// that can replace values, or an array of strings that will select the keys. +// A default replacer method can be provided. Use of the space parameter can +// produce text that is more easily readable. + + var i; + gap = ""; + indent = ""; + +// If the space parameter is a number, make an indent string containing that +// many spaces. + + if (typeof space === "number") { + for (i = 0; i < space; i += 1) { + indent += " "; + } + +// If the space parameter is a string, it will be used as the indent string. + + } else if (typeof space === "string") { + indent = space; + } + +// If there is a replacer, it must be a function or an array. +// Otherwise, throw an error. + + rep = replacer; + if (replacer && typeof replacer !== "function" && ( + typeof replacer !== "object" + || typeof replacer.length !== "number" + )) { + throw new Error("JSON.stringify"); + } + +// Make a fake root object containing our value under the key of "". +// Return the result of stringifying the value. + + return str("", {"": value}); + }; + } + + +// If the JSON object does not yet have a parse method, give it one. + + if (typeof JSON.parse !== "function") { + JSON.parse = function (text, reviver) { + +// The parse method takes a text and an optional reviver function, and returns +// a JavaScript value if the text is a valid JSON text. + + var j; + + function walk(holder, key) { + +// The walk method is used to recursively walk the resulting structure so +// that modifications can be made. + + var k; + var v; + var value = holder[key]; + if (value && typeof value === "object") { + for (k in value) { + if (Object.prototype.hasOwnProperty.call(value, k)) { + v = walk(value, k); + if (v !== undefined) { + value[k] = v; + } else { + delete value[k]; + } + } + } + } + return reviver.call(holder, key, value); + } + + +// Parsing happens in four stages. In the first stage, we replace certain +// Unicode characters with escape sequences. JavaScript handles many characters +// incorrectly, either silently deleting them, or treating them as line endings. + + text = String(text); + rx_dangerous.lastIndex = 0; + if (rx_dangerous.test(text)) { + text = text.replace(rx_dangerous, function (a) { + return ( + "\\u" + + ("0000" + a.charCodeAt(0).toString(16)).slice(-4) + ); + }); + } + +// In the second stage, we run the text against regular expressions that look +// for non-JSON patterns. We are especially concerned with "()" and "new" +// because they can cause invocation, and "=" because it can cause mutation. +// But just to be safe, we want to reject all unexpected forms. + +// We split the second stage into 4 regexp operations in order to work around +// crippling inefficiencies in IE's and Safari's regexp engines. First we +// replace the JSON backslash pairs with "@" (a non-JSON character). Second, we +// replace all simple value tokens with "]" characters. Third, we delete all +// open brackets that follow a colon or comma or that begin the text. Finally, +// we look to see that the remaining characters are only whitespace or "]" or +// "," or ":" or "{" or "}". If that is so, then the text is safe for eval. + + if ( + rx_one.test( + text + .replace(rx_two, "@") + .replace(rx_three, "]") + .replace(rx_four, "") + ) + ) { + +// In the third stage we use the eval function to compile the text into a +// JavaScript structure. The "{" operator is subject to a syntactic ambiguity +// in JavaScript: it can begin a block or an object literal. We wrap the text +// in parens to eliminate the ambiguity. + + j = eval("(" + text + ")"); + +// In the optional fourth stage, we recursively walk the new structure, passing +// each name/value pair to a reviver function for possible transformation. + + return (typeof reviver === "function") + ? walk({"": j}, "") + : j; + } + +// If the text is not JSON parseable, then a SyntaxError is thrown. + + throw new SyntaxError("JSON.parse"); + }; + } +}()); -- GitLab From 3a2d516d42c92f906bf1d3ea245e8354b5044846 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Thu, 7 Oct 2021 03:41:26 +0200 Subject: [PATCH 18/27] Revert "Update dependencies" This reverts commit f2e51f809e6913eaebb4687e507c105c8992cb1e. --- composer.json | 306 +++++++++------------------ composer.lock | 561 +++++++++++++++++++++++++------------------------- 2 files changed, 379 insertions(+), 488 deletions(-) diff --git a/composer.json b/composer.json index 2b77c18e7..8c20ed13e 100644 --- a/composer.json +++ b/composer.json @@ -134,229 +134,127 @@ ], "require": { "php": ">=7.3", - "composer/installers": "~1.10", - "composer/installers": "~1.10", - "cweagans/composer-patches": "~1.7", - "cweagans/composer-patches": "~1.7", - "drupal/admin_toolbar": "~2.4", - "drupal/admin_toolbar": "~2.4", - "drupal/adminimal_theme": "~1.6", - "drupal/adminimal_theme": "~1.6", - "drupal/allowed_formats": "~1.3", - "drupal/allowed_formats": "~1.3", - "drupal/bootstrap": "~3.23", - "drupal/bootstrap": "~3.23", - "drupal/captcha": "~1.1", - "drupal/captcha": "~1.1", - "drupal/cern-adminimal-subtheme": "~2.1", - "drupal/cern-adminimal-subtheme": "~2.1", - "drupal/cern-base-theme": "~2.6", - "drupal/cern-base-theme": "~2.6", - "drupal/cern-cds-media": "~2.1", - "drupal/cern-cds-media": "~2.1", - "drupal/cern-components": "~2.7", - "drupal/cern-components": "~2.7", - "drupal/cern-dev-status": "~2.0", - "drupal/cern-dev-status": "~2.0", - "drupal/cern-display-formats": "~1.4", - "drupal/cern-display-formats": "~1.4", - "drupal/cern-drupal-welcome-message-block": "~1.1", - "drupal/cern-drupal-welcome-message-block": "~1.1", - "drupal/cern-full-html-format": "~2.0", - "drupal/cern-full-html-format": "~2.0", - "drupal/cern-indico-feeds": "~2.0", - "drupal/cern-indico-feeds": "~2.0", + "composer/installers": "~1.10.0", + "cweagans/composer-patches": "~1.7.0", + "drupal/admin_toolbar": "~2.4.0", + "drupal/adminimal_theme": "~1.6.0", + "drupal/allowed_formats": "~1.3.0", + "drupal/bootstrap": "~3.23.0", + "drupal/captcha": "~1.1.0", + "drupal/cern-adminimal-subtheme": "~2.1.0", + "drupal/cern-base-theme": "~2.6.6", + "drupal/cern-cds-media": "~2.1.4", + "drupal/cern-components": "~2.7.10", + "drupal/cern-dev-status": "~2.0.5", + "drupal/cern-display-formats": "~1.4.5", + "drupal/cern-drupal-welcome-message-block": "~1.1.0", + "drupal/cern-full-html-format": "~2.0.4", + "drupal/cern-indico-feeds": "~2.0.5", "drupal/cern-install-profiles": "dev-k8s", - "drupal/cern-integration": "~1.0", - "drupal/cern-integration": "~1.0", - "drupal/cern-landing-page": "~2.2", - "drupal/cern-landing-page": "~2.2", - "drupal/cern-ldap-api": "~1.0", - "drupal/cern-ldap-api": "~1.0", - "drupal/cern-loading": "~2.1", - "drupal/cern-loading": "~2.1", - "drupal/cern-paragraph-types": "~2.2", - "drupal/cern-paragraph-types": "~2.2", - "drupal/cern-profile-displayname": "~2.1", - "drupal/cern-profile-displayname": "~2.1", - "drupal/cern-theme": "~2.6", - "drupal/cern-theme": "~2.6", - "drupal/cern-toolbar": "~2.2", - "drupal/cern-toolbar": "~2.2", - "drupal/cern-webcast-feeds": "~2.0", - "drupal/cern-webcast-feeds": "~2.0", - "drupal/cern-webform-invitation": "~1.0", - "drupal/cern-webform-invitation": "~1.0", - "drupal/ckeditor_font": "~1.1", - "drupal/ckeditor_font": "~1.1", - "drupal/codesnippet": "~1.7", - "drupal/codesnippet": "~1.7", - "drupal/color_field": "~2.4", - "drupal/color_field": "~2.4", - "drupal/colorbox": "~1.7", - "drupal/colorbox": "~1.7", - "drupal/colorbutton": "~1.2", - "drupal/colorbutton": "~1.2", - "drupal/components": "~2.4", - "drupal/components": "~2.4", - "drupal/config_update": "~1.7", - "drupal/config_update": "~1.7", + "drupal/cern-integration": "~1.0.0", + "drupal/cern-landing-page": "~2.2.4", + "drupal/cern-ldap-api": "~1.0.0", + "drupal/cern-loading": "~2.1.2", + "drupal/cern-paragraph-types": "~2.2.3", + "drupal/cern-profile-displayname": "~2.1.0", + "drupal/cern-theme": "~2.6.11", + "drupal/cern-toolbar": "~2.2.3", + "drupal/cern-webcast-feeds": "~2.0.4", + "drupal/cern-webform-invitation": "~1.0.0", + "drupal/ckeditor_font": "~1.1.0", + "drupal/codesnippet": "~1.7.0", + "drupal/color_field": "~2.4.0", + "drupal/colorbox": "~1.7.0", + "drupal/colorbutton": "~1.2.0", + "drupal/components": "~2.4.0", + "drupal/config_update": "~1.7.0", "drupal/content_access": "~1.0.0@alpha", "drupal/context": "~4.0.0@beta", "drupal/contribute": "~1.0.0@beta", - "drupal/cookieconsent": "~1.6", - "drupal/cookieconsent": "~1.6", - "drupal/core-composer-scaffold": "8.9", - "drupal/core-composer-scaffold": "8.9", - "drupal/core-project-message": "8.9", - "drupal/core-project-message": "8.9", - "drupal/core-recommended": "8.9", - "drupal/core-recommended": "8.9", - "drupal/ctools": "~3.6", - "drupal/ctools": "~3.6", - "drupal/devel": "~2.1", - "drupal/devel": "~2.1", + "drupal/cookieconsent": "~1.6.0", + "drupal/core-composer-scaffold": "8.9.18", + "drupal/core-project-message": "8.9.18", + "drupal/core-recommended": "8.9.18", + "drupal/ctools": "~3.6.0", + "drupal/devel": "~2.1.0", "drupal/domain_301_redirect": "~1.0.0@alpha", - "drupal/ds": "~3.12", - "drupal/ds": "~3.12", - "drupal/easy_breadcrumb": "~1.15", - "drupal/easy_breadcrumb": "~1.15", - "drupal/easychart": "~3.4", - "drupal/easychart": "~3.4", - "drupal/entity_browser": "~2.5", - "drupal/entity_browser": "~2.5", - "drupal/entity_print": "~2.2", - "drupal/entity_print": "~2.2", - "drupal/entity_reference_revisions": "~1.9", - "drupal/entity_reference_revisions": "~1.9", - "drupal/externalauth": "~1.3", - "drupal/externalauth": "~1.3", - "drupal/extlink": "~1.6", - "drupal/extlink": "~1.6", - "drupal/facets": "~1.7", - "drupal/facets": "~1.7", + "drupal/ds": "~3.12.0", + "drupal/easy_breadcrumb": "~1.15.0", + "drupal/easychart": "~3.4.0", + "drupal/entity_browser": "~2.5.0", + "drupal/entity_print": "~2.2.0", + "drupal/entity_reference_revisions": "~1.9.0", + "drupal/externalauth": "~1.3.0", + "drupal/extlink": "~1.6.0", + "drupal/facets": "~1.7.0", "drupal/fast_404": "~2.0.0@alpha", - "drupal/features": "~3.12", - "drupal/features": "~3.12", + "drupal/features": "~3.12.0", "drupal/feeds": "~3.0.0@alpha", "drupal/fences": "~2.0.0@rc", - "drupal/field_formatter_class": "~1.5", - "drupal/field_formatter_class": "~1.5", - "drupal/field_group": "~3.1", - "drupal/field_group": "~3.1", - "drupal/field_permissions": "~1.1", - "drupal/field_permissions": "~1.1", + "drupal/field_formatter_class": "~1.5.0", + "drupal/field_group": "~3.1.0", + "drupal/field_permissions": "~1.1.0", "drupal/filefield_paths": "~1.0.0@beta", - "drupal/honeypot": "~1.30", - "drupal/honeypot": "~1.30", - "drupal/hook_event_dispatcher": "~1.29", - "drupal/hook_event_dispatcher": "~1.29", - "drupal/hotjar": "~2.0", - "drupal/hotjar": "~2.0", - "drupal/imagemagick": "~2.7", - "drupal/imagemagick": "~2.7", - "drupal/imce": "~2.3", - "drupal/imce": "~2.3", - "drupal/jquery_ui": "~1.4", - "drupal/jquery_ui": "~1.4", - "drupal/jquery_ui_draggable": "~1.2", - "drupal/jquery_ui_draggable": "~1.2", - "drupal/jquery_ui_droppable": "~1.2", - "drupal/jquery_ui_droppable": "~1.2", - "drupal/ludwig": "~1.7", - "drupal/ludwig": "~1.7", - "drupal/mailsystem": "~4.3", - "drupal/mailsystem": "~4.3", - "drupal/matomo": "~1.11", - "drupal/matomo": "~1.11", - "drupal/memcache": "~2.3", - "drupal/memcache": "~2.3", - "drupal/menu_block": "~1.6", - "drupal/menu_block": "~1.6", - "drupal/menu_breadcrumb": "~1.14", - "drupal/menu_breadcrumb": "~1.14", - "drupal/menu_force": "~1.2", - "drupal/menu_force": "~1.2", - "drupal/metatag": "~1.16", - "drupal/metatag": "~1.16", - "drupal/migrate_plus": "~4.2", - "drupal/migrate_plus": "~4.2", - "drupal/migrate_tools": "~4.5", - "drupal/migrate_tools": "~4.5", - "drupal/migrate_upgrade": "~3.2", - "drupal/migrate_upgrade": "~3.2", - "drupal/module_filter": "~3.2", - "drupal/module_filter": "~3.2", - "drupal/node_view_permissions": "~1.4", - "drupal/node_view_permissions": "~1.4", + "drupal/honeypot": "~1.30.0", + "drupal/hook_event_dispatcher": "~1.29.0", + "drupal/hotjar": "~2.0.0", + "drupal/imagemagick": "~2.7.0", + "drupal/imce": "~2.3.0", + "drupal/jquery_ui": "~1.4.0", + "drupal/jquery_ui_draggable": "~1.2.0", + "drupal/jquery_ui_droppable": "~1.2.0", + "drupal/ludwig": "~1.7.0", + "drupal/mailsystem": "~4.3.0", + "drupal/matomo": "~1.11.0", + "drupal/memcache": "~2.3.0", + "drupal/menu_block": "~1.6.0", + "drupal/menu_breadcrumb": "~1.14.0", + "drupal/menu_force": "~1.2.0", + "drupal/metatag": "~1.16.0", + "drupal/migrate_plus": "~4.2.0", + "drupal/migrate_tools": "~4.5.0", + "drupal/migrate_upgrade": "~3.2.0", + "drupal/module_filter": "~3.2.0", + "drupal/node_view_permissions": "~1.4.0", "drupal/openid_connect": "^1.1", - "drupal/panelbutton": "~1.3", - "drupal/panelbutton": "~1.3", - "drupal/panelizer": "~4.4", - "drupal/panelizer": "~4.4", - "drupal/panels": "~4.6", - "drupal/panels": "~4.6", - "drupal/paragraphs": "~1.12", - "drupal/paragraphs": "~1.12", - "drupal/pathauto": "~1.8", - "drupal/pathauto": "~1.8", - "drupal/permissions_by_term": "~2.31", - "drupal/permissions_by_term": "~2.31", - "drupal/piwik": "~1.4", - "drupal/piwik": "~1.4", - "drupal/recaptcha": "~2.5", - "drupal/recaptcha": "~2.5", - "drupal/redirect": "~1.6", - "drupal/redirect": "~1.6", - "drupal/require_login": "~2.4", - "drupal/require_login": "~2.4", + "drupal/panelbutton": "~1.3.0", + "drupal/panelizer": "~4.4.0", + "drupal/panels": "~4.6.0", + "drupal/paragraphs": "~1.12.0", + "drupal/pathauto": "~1.8.0", + "drupal/permissions_by_term": "~2.31.0", + "drupal/piwik": "~1.4.0", + "drupal/recaptcha": "~2.5.0", + "drupal/redirect": "~1.6.0", + "drupal/require_login": "~2.4.0", "drupal/rules": "~3.0.0@alpha", - "drupal/scheduler": "~1.3", - "drupal/scheduler": "~1.3", - "drupal/search_api": "~1.19", - "drupal/search_api": "~1.19", - "drupal/simplesamlphp_auth": "~3.2", - "drupal/simplesamlphp_auth": "~3.2", - "drupal/smart_trim": "~1.3", - "drupal/smart_trim": "~1.3", - "drupal/sticky": "~1.1", - "drupal/sticky": "~1.1", - "drupal/token": "~1.9", - "drupal/token": "~1.9", - "drupal/twig_tweak": "~2.9", - "drupal/twig_tweak": "~2.9", - "drupal/ui_patterns": "~1.2", - "drupal/ui_patterns": "~1.2", + "drupal/scheduler": "~1.3.0", + "drupal/search_api": "~1.19.0", + "drupal/simplesamlphp_auth": "~3.2.0", + "drupal/smart_trim": "~1.3.0", + "drupal/sticky": "~1.1.0", + "drupal/token": "~1.9.0", + "drupal/twig_tweak": "~2.9.0", + "drupal/ui_patterns": "~1.2.0", "drupal/upgrade_status": "~3.11", - "drupal/userprotect": "~1.1", - "drupal/userprotect": "~1.1", - "drupal/views_bulk_operations": "~2.6", - "drupal/views_bulk_operations": "~2.6", - "drupal/views_slideshow": "~4.8", - "drupal/views_slideshow": "~4.8", + "drupal/userprotect": "~1.1.0", + "drupal/views_bulk_operations": "~2.6.0", + "drupal/views_slideshow": "~4.8.0", "drupal/views_taxonomy_term_name_depth": "^7.0", - "drupal/viewsreference": "~1.7", - "drupal/viewsreference": "~1.7", - "drupal/webform": "~5.25", - "drupal/webform": "~5.25", + "drupal/viewsreference": "~1.7.0", + "drupal/webform": "~5.25.0", "drupal/webform_analysis": "~1.0.0@beta", - "drupal/webform_invitation": "~1.1", - "drupal/webform_invitation": "~1.1", - "drupal/workbench": "~1.3", - "drupal/workbench": "~1.3", + "drupal/webform_invitation": "~1.1.0", + "drupal/workbench": "~1.3.0", "drupal/workbench_access": "~1.0.0@beta", - "drupal/workbench_moderation": "~1.6", - "drupal/workbench_moderation": "~1.6", + "drupal/workbench_moderation": "~1.6.0", "drush/drush": "~10.3", - "vlucas/phpdotenv": "~5.1", - "vlucas/phpdotenv": "~5.1", - "webflo/drupal-finder": "~1.2", - "webflo/drupal-finder": "~1.2", + "vlucas/phpdotenv": "~5.1.0", + "webflo/drupal-finder": "~1.2.0", "wikimedia/composer-merge-plugin": "~2.0.1" }, "require-dev": { - "drupal/core-dev": "~8.9", - "drupal/core-dev": "~8.9", + "drupal/core-dev": "~8.9.18", "zaporylie/composer-drupal-optimizations": "~1.2.0" }, "conflict": { diff --git a/composer.lock b/composer.lock index e33141f74..fa892c549 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": "a1f828da7531dee3e01f2a44ada593a4", + "content-hash": "9e2f9e0ec9b7b5b8040084f7a61c7322", "packages": [ { "name": "asm89/stack-cors", @@ -116,16 +116,16 @@ }, { "name": "composer/installers", - "version": "v1.12.0", + "version": "v1.10.0", "source": { "type": "git", "url": "https://github.com/composer/installers.git", - "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19" + "reference": "1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/installers/zipball/d20a64ed3c94748397ff5973488761b22f6d3f19", - "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19", + "url": "https://api.github.com/repos/composer/installers/zipball/1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d", + "reference": "1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d", "shasum": "" }, "require": { @@ -219,12 +219,10 @@ "majima", "mako", "mediawiki", - "miaoxing", "modulework", "modx", "moodle", "osclass", - "pantheon", "phpbb", "piwik", "ppi", @@ -238,7 +236,6 @@ "sydes", "sylius", "symfony", - "tastyigniter", "typo3", "wordpress", "yawik", @@ -247,7 +244,7 @@ ], "support": { "issues": "https://github.com/composer/installers/issues", - "source": "https://github.com/composer/installers/tree/v1.12.0" + "source": "https://github.com/composer/installers/tree/v1.10.0" }, "funding": [ { @@ -263,7 +260,7 @@ "type": "tidelift" } ], - "time": "2021-09-13T08:19:44+00:00" + "time": "2021-01-14T11:07:16+00:00" }, { "name": "composer/semver", @@ -1689,16 +1686,16 @@ }, { "name": "dompdf/dompdf", - "version": "v1.0.2", + "version": "v0.8.6", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "8768448244967a46d6e67b891d30878e0e15d25c" + "reference": "db91d81866c69a42dad1d2926f61515a1e3f42c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/8768448244967a46d6e67b891d30878e0e15d25c", - "reference": "8768448244967a46d6e67b891d30878e0e15d25c", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/db91d81866c69a42dad1d2926f61515a1e3f42c5", + "reference": "db91d81866c69a42dad1d2926f61515a1e3f42c5", "shasum": "" }, "require": { @@ -1706,11 +1703,11 @@ "ext-mbstring": "*", "phenx/php-font-lib": "^0.5.2", "phenx/php-svg-lib": "^0.3.3", - "php": "^7.1 || ^8.0" + "php": "^7.1" }, "require-dev": { "mockery/mockery": "^1.3", - "phpunit/phpunit": "^7.5 || ^8 || ^9", + "phpunit/phpunit": "^7.5", "squizlabs/php_codesniffer": "^3.5" }, "suggest": { @@ -1755,9 +1752,9 @@ "homepage": "https://github.com/dompdf/dompdf", "support": { "issues": "https://github.com/dompdf/dompdf/issues", - "source": "https://github.com/dompdf/dompdf/tree/v1.0.2" + "source": "https://github.com/dompdf/dompdf/tree/master" }, - "time": "2021-01-08T14:18:52+00:00" + "time": "2020-08-30T22:54:22+00:00" }, { "name": "drupal-ckeditor-libraries-group/codesnippet", @@ -1795,16 +1792,16 @@ }, { "name": "drupal-ckeditor-libraries-group/font", - "version": "4.16.2", + "version": "4.13.1", "source": { "type": "git", "url": "https://github.com/drupal-ckeditor-libraries-group/font.git", - "reference": "b6152ef945efcae2c8c3bb083ffc34bde6696532" + "reference": "52623aa91a9aea941570fb21b686e3295b337290" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal-ckeditor-libraries-group/font/zipball/b6152ef945efcae2c8c3bb083ffc34bde6696532", - "reference": "b6152ef945efcae2c8c3bb083ffc34bde6696532", + "url": "https://api.github.com/repos/drupal-ckeditor-libraries-group/font/zipball/52623aa91a9aea941570fb21b686e3295b337290", + "reference": "52623aa91a9aea941570fb21b686e3295b337290", "shasum": "" }, "type": "drupal-library", @@ -1825,21 +1822,21 @@ "issues": "https://github.com/ckeditor/ckeditor4/issues", "source": "https://github.com/ckeditor/ckeditor4/tree/master/plugins/font" }, - "time": "2021-07-15T11:15:39+00:00" + "time": "2019-06-27T14:05:00+00:00" }, { "name": "drupal/admin_toolbar", - "version": "2.5.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/admin_toolbar.git", - "reference": "8.x-2.5" + "reference": "8.x-2.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/admin_toolbar-8.x-2.5.zip", - "reference": "8.x-2.5", - "shasum": "c71e58051b8d6818272df96d14cb11407d5e5ceb" + "url": "https://ftp.drupal.org/files/projects/admin_toolbar-8.x-2.4.zip", + "reference": "8.x-2.4", + "shasum": "6240047b8d91ac78f98d861ba8282af971fa0b38" }, "require": { "drupal/core": "^8.8.0 || ^9.0" @@ -1847,7 +1844,7 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.5", + "version": "8.x-2.4", "datestamp": "1629907119", "security-coverage": { "status": "covered", @@ -2066,17 +2063,17 @@ }, { "name": "drupal/captcha", - "version": "1.2.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/captcha.git", - "reference": "8.x-1.2" + "reference": "8.x-1.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/captcha-8.x-1.2.zip", - "reference": "8.x-1.2", - "shasum": "e35a2ce42b652f833d140f7571d1eef0e06b0edc" + "url": "https://ftp.drupal.org/files/projects/captcha-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "2eaf6f00ea256652c09f785b26dc933cc5b3dd26" }, "require": { "drupal/core": "^8.8 || ^9" @@ -2084,8 +2081,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.2", - "datestamp": "1619673374", + "version": "8.x-1.1", + "datestamp": "1591160977", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2524,11 +2521,11 @@ }, { "name": "drupal/cern-theme", - "version": "2.7.0", + "version": "2.6.12", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/themes/cern.git", - "reference": "9b10b4897eb768c4e5740689135f5e618fd9f621" + "reference": "408630b7b5e53086c2991653fa8a0d561f3166b2" }, "require": { "drupal/cern-base-theme": "^2.6.1" @@ -2544,7 +2541,7 @@ } ], "description": "Defines the CERN theme", - "time": "2021-05-19T09:18:30+00:00" + "time": "2021-04-27T12:37:58+00:00" }, { "name": "drupal/cern-toolbar", @@ -2621,27 +2618,27 @@ }, { "name": "drupal/ckeditor_font", - "version": "1.2.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ckeditor_font.git", - "reference": "8.x-1.2" + "reference": "8.x-1.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.2.zip", - "reference": "8.x-1.2", - "shasum": "84462a78ddc4bbafb9ebc11f1e2871bfaa994a9f" + "url": "https://ftp.drupal.org/files/projects/ckeditor_font-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "a8d0d10e7b23307bb9aba5de707518c108f69570" }, "require": { - "drupal-ckeditor-libraries-group/font": "^4.13.1", + "drupal-ckeditor-libraries-group/font": "4.13.1", "drupal/core": "^8 || ^9" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.2", - "datestamp": "1617651505", + "version": "8.x-1.1", + "datestamp": "1590157419", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2740,24 +2737,24 @@ }, { "name": "drupal/color_field", - "version": "2.5.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/color_field.git", - "reference": "8.x-2.5" + "reference": "8.x-2.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/color_field-8.x-2.5.zip", - "reference": "8.x-2.5", - "shasum": "9b0d299cb24d3cb21c7fb6a6a08d32ae5aed8652" + "url": "https://ftp.drupal.org/files/projects/color_field-8.x-2.4.zip", + "reference": "8.x-2.4", + "shasum": "11c163a409f4f70083f188d917fecc6052c53a2f" }, "require": { "drupal/core": "^8 || ^9" }, "require-dev": { - "drupal/core-recommended": "*", - "drupal/token": "~1.3" + "drupal/token": "~1.3", + "nickwilde1990/php-composter-phpcs-drupal": "^2.0" }, "suggest": { "bower-asset/jquery-simple-color": "^v1.2.2: Provides JavaScript library necessary for the Color Grid widget", @@ -2766,8 +2763,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.5", - "datestamp": "1632938098", + "version": "8.x-2.4", + "datestamp": "1596479692", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2874,27 +2871,27 @@ }, { "name": "drupal/colorbutton", - "version": "1.3.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/colorbutton.git", - "reference": "8.x-1.3" + "reference": "8.x-1.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/colorbutton-8.x-1.3.zip", - "reference": "8.x-1.3", - "shasum": "1a3c8996b1db88e30a512d1a329e570160d783df" + "url": "https://ftp.drupal.org/files/projects/colorbutton-8.x-1.2.zip", + "reference": "8.x-1.2", + "shasum": "a3467286d9882819bc45e9573dc2253444971bfc" }, "require": { "drupal/core": "^8 || ^9", - "drupal/panelbutton": "^1.3" + "drupal/panelbutton": "*" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.3", - "datestamp": "1626792032", + "version": "8.x-1.2", + "datestamp": "1589886092", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2903,7 +2900,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0-or-later" + "GPL-2.0+" ], "authors": [ { @@ -3316,16 +3313,16 @@ }, { "name": "drupal/core", - "version": "8.9.0", + "version": "8.9.18", "source": { "type": "git", "url": "https://github.com/drupal/core.git", - "reference": "f90882ab0723becda2333e4d33e1a6ab27cb8f0c" + "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core/zipball/f90882ab0723becda2333e4d33e1a6ab27cb8f0c", - "reference": "f90882ab0723becda2333e4d33e1a6ab27cb8f0c", + "url": "https://api.github.com/repos/drupal/core/zipball/e536176c45d9d75ec57f7a12c0e3c0aead856841", + "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841", "shasum": "" }, "require": { @@ -3352,8 +3349,8 @@ "laminas/laminas-diactoros": "^1.8", "laminas/laminas-feed": "^2.12", "masterminds/html5": "^2.1", - "pear/archive_tar": "^1.4.9", - "php": ">=7.0.8", + "pear/archive_tar": "^1.4.14", + "php": "^7.0.8", "psr/log": "^1.0", "stack/builder": "^1.0", "symfony-cmf/routing": "^1.4", @@ -3544,22 +3541,22 @@ ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", "support": { - "source": "https://github.com/drupal/core/tree/8.9.0" + "source": "https://github.com/drupal/core/tree/8.9.18" }, - "time": "2020-06-03T16:44:36+00:00" + "time": "2021-08-12T17:48:42+00:00" }, { "name": "drupal/core-composer-scaffold", - "version": "8.9.0", + "version": "8.9.18", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", - "reference": "07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece" + "reference": "c902d07cb49ef73777e2b33a39e54c2861a8c81d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-composer-scaffold/zipball/07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece", - "reference": "07cdfe2799789fc0c2d0e3e1ba64cb5e2a973ece", + "url": "https://api.github.com/repos/drupal/core-composer-scaffold/zipball/c902d07cb49ef73777e2b33a39e54c2861a8c81d", + "reference": "c902d07cb49ef73777e2b33a39e54c2861a8c81d", "shasum": "" }, "require": { @@ -3594,22 +3591,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.0" + "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.5" }, - "time": "2020-05-29T11:36:27+00:00" + "time": "2020-08-07T22:30:30+00:00" }, { "name": "drupal/core-project-message", - "version": "8.9.0", + "version": "8.9.18", "source": { "type": "git", "url": "https://github.com/drupal/core-project-message.git", - "reference": "e0e237d3da026a87784f70c1069345855340ec23" + "reference": "3f8fa28128f1fef68ee0e6647011a543ef92be5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-project-message/zipball/e0e237d3da026a87784f70c1069345855340ec23", - "reference": "e0e237d3da026a87784f70c1069345855340ec23", + "url": "https://api.github.com/repos/drupal/core-project-message/zipball/3f8fa28128f1fef68ee0e6647011a543ef92be5b", + "reference": "3f8fa28128f1fef68ee0e6647011a543ef92be5b", "shasum": "" }, "require": { @@ -3635,22 +3632,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-project-message/tree/8.9.0-beta3" + "source": "https://github.com/drupal/core-project-message/tree/8.9.18" }, - "time": "2020-05-11T08:00:18+00:00" + "time": "2020-08-02T22:04:49+00:00" }, { "name": "drupal/core-recommended", - "version": "8.9.0", + "version": "8.9.18", "source": { "type": "git", "url": "https://github.com/drupal/core-recommended.git", - "reference": "1b87cf5dea633a66a1c4f22d635bc92c127071d9" + "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-recommended/zipball/1b87cf5dea633a66a1c4f22d635bc92c127071d9", - "reference": "1b87cf5dea633a66a1c4f22d635bc92c127071d9", + "url": "https://api.github.com/repos/drupal/core-recommended/zipball/71839bb9799b70f449b76294b461877ba1e9ff2c", + "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c", "shasum": "" }, "require": { @@ -3662,7 +3659,7 @@ "doctrine/common": "v2.7.3", "doctrine/inflector": "v1.2.0", "doctrine/lexer": "1.0.2", - "drupal/core": "8.9.0", + "drupal/core": "8.9.18", "easyrdf/easyrdf": "0.9.1", "egulias/email-validator": "2.1.17", "guzzlehttp/guzzle": "6.5.4", @@ -3675,7 +3672,7 @@ "laminas/laminas-zendframework-bridge": "1.0.4", "masterminds/html5": "2.3.0", "paragonie/random_compat": "v9.99.99", - "pear/archive_tar": "1.4.9", + "pear/archive_tar": "1.4.14", "pear/console_getopt": "v1.4.3", "pear/pear-core-minimal": "v1.10.10", "pear/pear_exception": "v1.0.1", @@ -3691,7 +3688,7 @@ "symfony/dependency-injection": "v3.4.41", "symfony/event-dispatcher": "v3.4.41", "symfony/http-foundation": "v3.4.41", - "symfony/http-kernel": "v3.4.41", + "symfony/http-kernel": "v3.4.44", "symfony/polyfill-ctype": "v1.17.0", "symfony/polyfill-iconv": "v1.17.0", "symfony/polyfill-intl-idn": "v1.17.0", @@ -3720,23 +3717,23 @@ ], "description": "Locked core dependencies; require this project INSTEAD OF drupal/core.", "support": { - "source": "https://github.com/drupal/core-recommended/tree/8.9.0" + "source": "https://github.com/drupal/core-recommended/tree/8.9.18" }, - "time": "2020-06-03T16:44:36+00:00" + "time": "2021-08-12T17:48:42+00:00" }, { "name": "drupal/ctools", - "version": "3.7.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ctools.git", - "reference": "8.x-3.7" + "reference": "8.x-3.6" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ctools-8.x-3.7.zip", - "reference": "8.x-3.7", - "shasum": "b11c0981a1d2ab3cc9e8e614a337d8e2a2a70c0e" + "url": "https://ftp.drupal.org/files/projects/ctools-8.x-3.6.zip", + "reference": "8.x-3.6", + "shasum": "9a849bb6ac9f4d02603d04b3265b35b7329e1ef5" }, "require": { "drupal/core": "^8.8 || ^9" @@ -3744,7 +3741,7 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.7", + "version": "8.x-3.6", "datestamp": "1623860918", "security-coverage": { "status": "covered", @@ -3979,9 +3976,6 @@ "reference": "8.x-1.0-alpha0", "shasum": "7b2756cdba8ecf8af052e9a6105530c1eaa2cfa5" }, - "require": { - "drupal/core": "~8.0" - }, "type": "drupal-module", "extra": { "drupal": { @@ -4031,17 +4025,17 @@ }, { "name": "drupal/ds", - "version": "3.13.0", + "version": "3.12.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ds.git", - "reference": "8.x-3.13" + "reference": "8.x-3.12" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.13.zip", - "reference": "8.x-3.13", - "shasum": "86c87f1bf845d26594ae3ce0061d8f311bdce73c" + "url": "https://ftp.drupal.org/files/projects/ds-8.x-3.12.zip", + "reference": "8.x-3.12", + "shasum": "0df49ccc28af94186a6c08aa4233f435c539b273" }, "require": { "drupal/core": "^8.8 || ^9" @@ -4053,8 +4047,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.13", - "datestamp": "1624456614", + "version": "8.x-3.12", + "datestamp": "1615995335", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4192,9 +4186,6 @@ "reference": "8.x-3.4", "shasum": "6ec1848fd12b1515c16d841cc87a071883fa476c" }, - "require": { - "drupal/core": "^8" - }, "type": "drupal-module", "extra": { "drupal": { @@ -4246,17 +4237,17 @@ }, { "name": "drupal/entity_browser", - "version": "2.6.0", + "version": "2.5.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/entity_browser.git", - "reference": "8.x-2.6" + "reference": "8.x-2.5" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/entity_browser-8.x-2.6.zip", - "reference": "8.x-2.6", - "shasum": "95cad4ce9620ccb4f02afa0e8b8bbf7c73fc5aac" + "url": "https://ftp.drupal.org/files/projects/entity_browser-8.x-2.5.zip", + "reference": "8.x-2.5", + "shasum": "29456b961f0f90ff064601ab8a382446a8143774" }, "require": { "drupal/core": "^8.8 || ^9" @@ -4273,8 +4264,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.6", - "datestamp": "1624401306", + "version": "8.x-2.5", + "datestamp": "1588015429", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4336,22 +4327,21 @@ }, { "name": "drupal/entity_print", - "version": "2.4.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/entity_print.git", - "reference": "8.x-2.4" + "reference": "8.x-2.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/entity_print-8.x-2.4.zip", - "reference": "8.x-2.4", - "shasum": "838fd304a408f8f7620eb26af52046ac9e88eead" + "url": "https://ftp.drupal.org/files/projects/entity_print-8.x-2.2.zip", + "reference": "8.x-2.2", + "shasum": "5bd7671e2563a68925ab7f6ecd8dc8e8e396a0ea" }, "require": { - "dompdf/dompdf": "~0.8.4 || ^1.0", - "drupal/core": "^8 || ^9", - "php": "^7.1 || ^8.0" + "dompdf/dompdf": "~0.8.0", + "drupal/core": "^8 || ^9" }, "suggest": { "mikehaertl/phpwkhtmltopdf": "PhpWkhtmlToPdf provides the PHP library to use Wkhtmltopdf" @@ -4359,8 +4349,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.4", - "datestamp": "1632300401", + "version": "8.x-2.2", + "datestamp": "1592533892", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4466,17 +4456,17 @@ }, { "name": "drupal/externalauth", - "version": "1.4.0", + "version": "1.3.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/externalauth.git", - "reference": "8.x-1.4" + "reference": "8.x-1.3" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/externalauth-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "caea7d2d5a890adad9e6b5beaa2cf139727266d6" + "url": "https://ftp.drupal.org/files/projects/externalauth-8.x-1.3.zip", + "reference": "8.x-1.3", + "shasum": "b1b38e6718fe66bd38fc894dab1f9d7a7d60f10b" }, "require": { "drupal/core": "^8 || ^9" @@ -4484,8 +4474,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1624457496", + "version": "8.x-1.3", + "datestamp": "1587629529", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4578,31 +4568,28 @@ }, { "name": "drupal/facets", - "version": "1.8.0", + "version": "1.7.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/facets.git", - "reference": "8.x-1.8" + "reference": "8.x-1.7" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/facets-8.x-1.8.zip", - "reference": "8.x-1.8", - "shasum": "f621b84b59c5315db14a0529df5dfc74ca5bc9de" + "url": "https://ftp.drupal.org/files/projects/facets-8.x-1.7.zip", + "reference": "8.x-1.7", + "shasum": "5a8a1092617c4dde96f691e23300d0d436c5fcb3" }, "require": { "drupal/core": "^8.8 || ^9" }, - "conflict": { - "drupal/search_api": "<1.14" - }, "require-dev": { - "drupal/search_api": "~1.14" + "drupal/search_api": "~1.5" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.8", + "version": "8.x-1.7", "datestamp": "1620838256", "security-coverage": { "status": "covered", @@ -5025,17 +5012,17 @@ }, { "name": "drupal/field_group", - "version": "3.2.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/field_group.git", - "reference": "8.x-3.2" + "reference": "8.x-3.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/field_group-8.x-3.2.zip", - "reference": "8.x-3.2", - "shasum": "2020bbfe40f6ba43bc733ae7c8761632572433a0" + "url": "https://ftp.drupal.org/files/projects/field_group-8.x-3.1.zip", + "reference": "8.x-3.1", + "shasum": "8a719eaea594f0ba874172831cb28da93c66b77a" }, "require": { "drupal/core": "^8.8 || ^9" @@ -5046,8 +5033,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-3.2", - "datestamp": "1628513585", + "version": "8.x-3.1", + "datestamp": "1591772567", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5458,17 +5445,17 @@ }, { "name": "drupal/hotjar", - "version": "2.2.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/hotjar.git", - "reference": "8.x-2.2" + "reference": "8.x-2.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/hotjar-8.x-2.2.zip", - "reference": "8.x-2.2", - "shasum": "4caab9aa02a3bf8f0670280e501dcf40b0fa83d0" + "url": "https://ftp.drupal.org/files/projects/hotjar-8.x-2.0.zip", + "reference": "8.x-2.0", + "shasum": "a2e21a22bcc7ba5e6f374350220eb00b1167722c" }, "require": { "drupal/core": "^8.8 || ^9", @@ -5477,8 +5464,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.2", - "datestamp": "1625130592", + "version": "8.x-2.0", + "datestamp": "1605689024", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5594,17 +5581,17 @@ }, { "name": "drupal/imce", - "version": "2.4.0", + "version": "2.3.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/imce.git", - "reference": "8.x-2.4" + "reference": "8.x-2.3" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/imce-8.x-2.4.zip", - "reference": "8.x-2.4", - "shasum": "2797d6a669b739490edd00c753303cd9263f8dc3" + "url": "https://ftp.drupal.org/files/projects/imce-8.x-2.3.zip", + "reference": "8.x-2.3", + "shasum": "87548af8f66ef91146b70046755c1700a3847be6" }, "require": { "drupal/core": "^8.8 || ^9" @@ -5612,8 +5599,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.4", - "datestamp": "1618251147", + "version": "8.x-2.3", + "datestamp": "1599926540", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5831,17 +5818,17 @@ }, { "name": "drupal/ludwig", - "version": "1.8.0", + "version": "1.7.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/ludwig.git", - "reference": "8.x-1.8" + "reference": "8.x-1.7" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/ludwig-8.x-1.8.zip", - "reference": "8.x-1.8", - "shasum": "d73a56f38d1148a5e3ae431e0a3cfec52f83e68f" + "url": "https://ftp.drupal.org/files/projects/ludwig-8.x-1.7.zip", + "reference": "8.x-1.7", + "shasum": "d951c3b4f76f8b0c2f8877793a392868f3537743" }, "require": { "drupal/core": "^8 || ^9" @@ -5849,8 +5836,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.8", - "datestamp": "1620028760", + "version": "8.x-1.7", + "datestamp": "1613389167", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6088,17 +6075,17 @@ }, { "name": "drupal/menu_block", - "version": "1.7.0", + "version": "1.6.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/menu_block.git", - "reference": "8.x-1.7" + "reference": "8.x-1.6" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/menu_block-8.x-1.7.zip", - "reference": "8.x-1.7", - "shasum": "6d021a24a6a8691becbecf02ac236a7d8626d4d0" + "url": "https://ftp.drupal.org/files/projects/menu_block-8.x-1.6.zip", + "reference": "8.x-1.6", + "shasum": "3da96af15c3a5f5f1966e28b6e87b74228617998" }, "require": { "drupal/core": "^8 || ^9" @@ -6106,8 +6093,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.7", - "datestamp": "1619638238", + "version": "8.x-1.6", + "datestamp": "1587721600", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6152,17 +6139,17 @@ }, { "name": "drupal/menu_breadcrumb", - "version": "1.16.0", + "version": "1.14.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/menu_breadcrumb.git", - "reference": "8.x-1.16" + "reference": "8.x-1.14" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-8.x-1.16.zip", - "reference": "8.x-1.16", - "shasum": "e7faa28edcd703c5512b480117d35718d0dd7441" + "url": "https://ftp.drupal.org/files/projects/menu_breadcrumb-8.x-1.14.zip", + "reference": "8.x-1.14", + "shasum": "3edeb447410cdb0635d0babbfc641010014bee7f" }, "require": { "drupal/core": "^8 || ^9" @@ -6170,8 +6157,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.16", - "datestamp": "1620238102", + "version": "8.x-1.14", + "datestamp": "1598626277", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6572,17 +6559,17 @@ }, { "name": "drupal/node_view_permissions", - "version": "1.5.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/node_view_permissions.git", - "reference": "8.x-1.5" + "reference": "8.x-1.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/node_view_permissions-8.x-1.5.zip", - "reference": "8.x-1.5", - "shasum": "e9f0bc9d1285e57233ab1b11833b55dda6d483f0" + "url": "https://ftp.drupal.org/files/projects/node_view_permissions-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "ba113ff1be022517a739dbf16d5caaae6dcccfd9" }, "require": { "drupal/core": "^8 || ^9" @@ -6590,8 +6577,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.5", - "datestamp": "1622716915", + "version": "8.x-1.4", + "datestamp": "1603096039", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6701,17 +6688,17 @@ }, { "name": "drupal/panelbutton", - "version": "1.4.0", + "version": "1.3.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/panelbutton.git", - "reference": "8.x-1.4" + "reference": "8.x-1.3" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/panelbutton-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "9e4b83af312607242dde0e095e80fb68264208a1" + "url": "https://ftp.drupal.org/files/projects/panelbutton-8.x-1.3.zip", + "reference": "8.x-1.3", + "shasum": "1d65e6b9d9b1dfbc27364e2b713f63826bc33031" }, "require": { "drupal/core": "^8 || ^9" @@ -6719,8 +6706,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1626792838", + "version": "8.x-1.3", + "datestamp": "1592593051", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6729,7 +6716,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0-or-later" + "GPL-2.0+" ], "authors": [ { @@ -7150,17 +7137,17 @@ }, { "name": "drupal/permissions_by_term", - "version": "2.34.0", + "version": "2.31.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/permissions_by_term.git", - "reference": "8.x-2.34" + "reference": "8.x-2.31" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.34.zip", - "reference": "8.x-2.34", - "shasum": "38233e447a83993ed660556d8b01534c3339c603" + "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.31.zip", + "reference": "8.x-2.31", + "shasum": "b92e303e579937a6985d21751e72ad67a1d4404b" }, "require": { "drupal/core": "^8.0", @@ -7169,8 +7156,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.34", - "datestamp": "1626101135", + "version": "8.x-2.31", + "datestamp": "1614602591", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7217,7 +7204,6 @@ "shasum": "3692831f4b3de636e90679fb052ba8f30e49ac97" }, "require": { - "drupal/core": "~8.0", "drupal/matomo": "^1.0" }, "require-dev": { @@ -7498,31 +7484,31 @@ }, { "name": "drupal/scheduler", - "version": "1.4.0", + "version": "1.3.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/scheduler.git", - "reference": "8.x-1.4" + "reference": "8.x-1.3" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/scheduler-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "5b2203e4688e5d3ac67d0780605809c92c6ece70" + "url": "https://ftp.drupal.org/files/projects/scheduler-8.x-1.3.zip", + "reference": "8.x-1.3", + "shasum": "704f9e289c7a42ddfb65297beb0be02e324f02c6" }, "require": { "drupal/core": "^8 || ^9" }, "require-dev": { - "drupal/devel_generate": "^2.0 || 4.x-dev", + "drupal/devel_generate": "^2.0 || 3.x-dev", "drupal/rules": "^3", "drush/drush": "^9.0 || ^10" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1626702090", + "version": "8.x-1.3", + "datestamp": "1591436219", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7530,7 +7516,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9 || ^10" + "drush.services.yml": "^9" } } }, @@ -7569,17 +7555,17 @@ }, { "name": "drupal/search_api", - "version": "1.20.0", + "version": "1.19.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/search_api.git", - "reference": "8.x-1.20" + "reference": "8.x-1.19" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/search_api-8.x-1.20.zip", - "reference": "8.x-1.20", - "shasum": "4bed60ac7b502ccc1d4a01411aa35d2cb7f496c7" + "url": "https://ftp.drupal.org/files/projects/search_api-8.x-1.19.zip", + "reference": "8.x-1.19", + "shasum": "5654e9d02117e28c585d89a25ea3cc40d20c5019" }, "require": { "drupal/core": "^8.8 || ^9" @@ -7600,8 +7586,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.20", - "datestamp": "1626684847", + "version": "8.x-1.19", + "datestamp": "1612192040", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7609,7 +7595,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9 || ^10" + "drush.services.yml": "^9" } } }, @@ -8496,17 +8482,17 @@ }, { "name": "drupal/webform", - "version": "5.28.0", + "version": "5.25.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/webform.git", - "reference": "8.x-5.28" + "reference": "8.x-5.25" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.28.zip", - "reference": "8.x-5.28", - "shasum": "31376657f81e50302cc6b89d5094e0b8a0810f57" + "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.25.zip", + "reference": "8.x-5.25", + "shasum": "115f8bc21549abc080543eb772166eb4fd2a162e" }, "require": { "drupal/core": "^8.8" @@ -8547,8 +8533,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-5.28", - "datestamp": "1629909852", + "version": "8.x-5.25", + "datestamp": "1629907242", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8556,7 +8542,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9 || ^10" + "drush.services.yml": "^9" } } }, @@ -10581,16 +10567,16 @@ }, { "name": "mglaman/phpstan-drupal", - "version": "0.12.15", + "version": "0.12.13", "source": { "type": "git", "url": "https://github.com/mglaman/phpstan-drupal.git", - "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e" + "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/1d65da838f3f5136e30e7a7023c235775f30c53e", - "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e", + "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/c149cae44eeb1edddac72fe9c1c11449abab782e", + "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e", "shasum": "" }, "require": { @@ -10662,7 +10648,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/0.12.15" + "source": "https://github.com/mglaman/phpstan-drupal/tree/0.12.13" }, "funding": [ { @@ -10678,7 +10664,7 @@ "type": "tidelift" } ], - "time": "2021-10-06T20:17:36+00:00" + "time": "2021-08-27T13:48:19+00:00" }, { "name": "nette/finder", @@ -10940,16 +10926,16 @@ }, { "name": "pear/archive_tar", - "version": "1.4.9", + "version": "1.4.14", "source": { "type": "git", "url": "https://github.com/pear/Archive_Tar.git", - "reference": "c5b00053770e1d72128252c62c2c1a12c26639f0" + "reference": "4d761c5334c790e45ef3245f0864b8955c562caa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/c5b00053770e1d72128252c62c2c1a12c26639f0", - "reference": "c5b00053770e1d72128252c62c2c1a12c26639f0", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/4d761c5334c790e45ef3245f0864b8955c562caa", + "reference": "4d761c5334c790e45ef3245f0864b8955c562caa", "shasum": "" }, "require": { @@ -11006,7 +10992,17 @@ "issues": "http://pear.php.net/bugs/search.php?cmd=display&package_name[]=Archive_Tar", "source": "https://github.com/pear/Archive_Tar" }, - "time": "2019-12-04T10:17:28+00:00" + "funding": [ + { + "url": "https://github.com/mrook", + "type": "github" + }, + { + "url": "https://www.patreon.com/michielrook", + "type": "patreon" + } + ], + "time": "2021-07-20T13:53:39+00:00" }, { "name": "pear/console_getopt", @@ -12333,7 +12329,6 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook" }, - "abandoned": true, "time": "2020-03-13T11:29:21+00:00" }, { @@ -12492,7 +12487,6 @@ "issues": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive/issues", "source": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive" }, - "abandoned": true, "time": "2019-12-03T09:01:13+00:00" }, { @@ -13278,7 +13272,6 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/" }, - "abandoned": true, "time": "2021-08-31T18:55:00+00:00" }, { @@ -14536,16 +14529,16 @@ }, { "name": "symfony/http-kernel", - "version": "v3.4.41", + "version": "v3.4.44", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "e4e4ed6c008c983645b4eee6b67d8f258cde54df" + "reference": "27dcaa8c6b18c75df9f37badeb4d3564ffaa1326" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e4e4ed6c008c983645b4eee6b67d8f258cde54df", - "reference": "e4e4ed6c008c983645b4eee6b67d8f258cde54df", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/27dcaa8c6b18c75df9f37badeb4d3564ffaa1326", + "reference": "27dcaa8c6b18c75df9f37badeb4d3564ffaa1326", "shasum": "" }, "require": { @@ -14623,7 +14616,7 @@ "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/3.4" + "source": "https://github.com/symfony/http-kernel/tree/v3.4.44" }, "funding": [ { @@ -14639,7 +14632,7 @@ "type": "tidelift" } ], - "time": "2020-05-31T05:14:17+00:00" + "time": "2020-08-31T05:53:42+00:00" }, { "name": "symfony/polyfill-ctype", @@ -16260,16 +16253,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.3.0", + "version": "v5.1.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56" + "reference": "448c76d7a9e30c341ff5bc367a923af74ae18467" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", - "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/448c76d7a9e30c341ff5bc367a923af74ae18467", + "reference": "448c76d7a9e30c341ff5bc367a923af74ae18467", "shasum": "" }, "require": { @@ -16284,7 +16277,7 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.14 || ^9.5.1" + "phpunit/phpunit": "^7.5.20 || ^8.5.2 || ^9.0" }, "suggest": { "ext-filter": "Required to use the boolean validator." @@ -16292,7 +16285,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -16324,7 +16317,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.3.0" + "source": "https://github.com/vlucas/phpdotenv/tree/master" }, "funding": [ { @@ -16336,7 +16329,7 @@ "type": "tidelift" } ], - "time": "2021-01-20T15:23:13+00:00" + "time": "2020-07-14T19:26:25+00:00" }, { "name": "webflo/drupal-finder", @@ -16845,16 +16838,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.2.11", + "version": "1.2.10", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582" + "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", - "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/9fdb22c2e97a614657716178093cd1da90a64aa8", + "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8", "shasum": "" }, "require": { @@ -16866,7 +16859,7 @@ "phpstan/phpstan": "^0.12.55", "psr/log": "^1.0", "symfony/phpunit-bridge": "^4.2 || ^5", - "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" + "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0" }, "type": "library", "extra": { @@ -16901,7 +16894,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.2.11" + "source": "https://github.com/composer/ca-bundle/tree/1.2.10" }, "funding": [ { @@ -16917,20 +16910,20 @@ "type": "tidelift" } ], - "time": "2021-09-25T20:32:43+00:00" + "time": "2021-06-07T13:58:28+00:00" }, { "name": "composer/composer", - "version": "1.10.23", + "version": "1.10.22", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae" + "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", - "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", + "url": "https://api.github.com/repos/composer/composer/zipball/28c9dfbe2351635961f670773e8d7b17bc5eda25", + "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25", "shasum": "" }, "require": { @@ -17000,7 +16993,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/1.10.23" + "source": "https://github.com/composer/composer/tree/1.10.22" }, "funding": [ { @@ -17016,7 +17009,7 @@ "type": "tidelift" } ], - "time": "2021-10-05T07:44:27+00:00" + "time": "2021-04-27T11:10:45+00:00" }, { "name": "composer/spdx-licenses", @@ -17967,16 +17960,16 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.5.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae" + "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae", - "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/30f38bffc6f24293dadd1823936372dfa9e86e2f", + "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f", "shasum": "" }, "require": { @@ -18011,9 +18004,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.0" }, - "time": "2021-10-02T14:08:47+00:00" + "time": "2021-09-17T15:28:14+00:00" }, { "name": "phpspec/prophecy", -- GitLab From c3a214927ec347ab86e8a0e5759bc043b7583324 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Thu, 7 Oct 2021 16:40:23 +0200 Subject: [PATCH 19/27] Drush is incompreensible, we clear cache now before admin deletion to avoid errors --- images/drupal-operations-scripts/ensure-site-install.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/images/drupal-operations-scripts/ensure-site-install.sh b/images/drupal-operations-scripts/ensure-site-install.sh index 87a50cc86..a142719fc 100755 --- a/images/drupal-operations-scripts/ensure-site-install.sh +++ b/images/drupal-operations-scripts/ensure-site-install.sh @@ -19,6 +19,11 @@ # Install Drupal site echo "Installing Drupal site" drush site-install cern -y --config-dir=../config/sync --account-name=admin install_configure_form.enable_update_status_emails=NULL -vvv +# We double check that cache does not interfere with user deletion, details can be seen here: https://gitlab.cern.ch/drupal/paas/cern-drupal-distribution/-/merge_requests/33 +drush cr +if [ "$?" -ne "0" ]; then + drush cr +fi # Remove admin account drush user-cancel admin -y drush cr -- GitLab From 3916e17effb53f110d100824a2ac260d970e135e Mon Sep 17 00:00:00 2001 From: Dimitra Chatzichrysou <dimitra.chatzichrysou@cern.ch> Date: Mon, 11 Oct 2021 23:26:23 +0200 Subject: [PATCH 20/27] Update modules to be ready for d9 --- composer.json | 38 +-- composer.lock | 671 ++++++++++++++++++++++++++++---------------------- 2 files changed, 390 insertions(+), 319 deletions(-) diff --git a/composer.json b/composer.json index 8c20ed13e..fd7425f56 100644 --- a/composer.json +++ b/composer.json @@ -142,22 +142,22 @@ "drupal/bootstrap": "~3.23.0", "drupal/captcha": "~1.1.0", "drupal/cern-adminimal-subtheme": "~2.1.0", - "drupal/cern-base-theme": "~2.6.6", + "drupal/cern-base-theme": "~2.6.9", "drupal/cern-cds-media": "~2.1.4", - "drupal/cern-components": "~2.7.10", + "drupal/cern-components": "~2.7.13", "drupal/cern-dev-status": "~2.0.5", - "drupal/cern-display-formats": "~1.4.5", + "drupal/cern-display-formats": "~1.4.6", "drupal/cern-drupal-welcome-message-block": "~1.1.0", "drupal/cern-full-html-format": "~2.0.4", - "drupal/cern-indico-feeds": "~2.0.5", + "drupal/cern-indico-feeds": "~2.0.5@alpha", "drupal/cern-install-profiles": "dev-k8s", "drupal/cern-integration": "~1.0.0", - "drupal/cern-landing-page": "~2.2.4", + "drupal/cern-landing-page": "~2.2.4@beta", "drupal/cern-ldap-api": "~1.0.0", "drupal/cern-loading": "~2.1.2", "drupal/cern-paragraph-types": "~2.2.3", "drupal/cern-profile-displayname": "~2.1.0", - "drupal/cern-theme": "~2.6.11", + "drupal/cern-theme": "~2.7.0", "drupal/cern-toolbar": "~2.2.3", "drupal/cern-webcast-feeds": "~2.0.4", "drupal/cern-webform-invitation": "~1.0.0", @@ -170,13 +170,13 @@ "drupal/config_update": "~1.7.0", "drupal/content_access": "~1.0.0@alpha", "drupal/context": "~4.0.0@beta", - "drupal/contribute": "~1.0.0@beta", + "drupal/contribute": "1.x-dev@dev", "drupal/cookieconsent": "~1.6.0", "drupal/core-composer-scaffold": "8.9.18", "drupal/core-project-message": "8.9.18", "drupal/core-recommended": "8.9.18", "drupal/ctools": "~3.6.0", - "drupal/devel": "~2.1.0", + "drupal/devel": "~4.1.1", "drupal/domain_301_redirect": "~1.0.0@alpha", "drupal/ds": "~3.12.0", "drupal/easy_breadcrumb": "~1.15.0", @@ -187,7 +187,7 @@ "drupal/externalauth": "~1.3.0", "drupal/extlink": "~1.6.0", "drupal/facets": "~1.7.0", - "drupal/fast_404": "~2.0.0@alpha", + "drupal/fast_404": "dev-2.x", "drupal/features": "~3.12.0", "drupal/feeds": "~3.0.0@alpha", "drupal/fences": "~2.0.0@rc", @@ -195,10 +195,10 @@ "drupal/field_group": "~3.1.0", "drupal/field_permissions": "~1.1.0", "drupal/filefield_paths": "~1.0.0@beta", - "drupal/honeypot": "~1.30.0", + "drupal/honeypot": "~2.0.1", "drupal/hook_event_dispatcher": "~1.29.0", "drupal/hotjar": "~2.0.0", - "drupal/imagemagick": "~2.7.0", + "drupal/imagemagick": "~3.2.0", "drupal/imce": "~2.3.0", "drupal/jquery_ui": "~1.4.0", "drupal/jquery_ui_draggable": "~1.2.0", @@ -211,7 +211,7 @@ "drupal/menu_breadcrumb": "~1.14.0", "drupal/menu_force": "~1.2.0", "drupal/metatag": "~1.16.0", - "drupal/migrate_plus": "~4.2.0", + "drupal/migrate_plus": "~5.1.0", "drupal/migrate_tools": "~4.5.0", "drupal/migrate_upgrade": "~3.2.0", "drupal/module_filter": "~3.2.0", @@ -222,27 +222,27 @@ "drupal/panels": "~4.6.0", "drupal/paragraphs": "~1.12.0", "drupal/pathauto": "~1.8.0", - "drupal/permissions_by_term": "~2.31.0", + "drupal/permissions_by_term": "^2.34", "drupal/piwik": "~1.4.0", - "drupal/recaptcha": "~2.5.0", + "drupal/recaptcha": "~3.0.0", "drupal/redirect": "~1.6.0", "drupal/require_login": "~2.4.0", - "drupal/rules": "~3.0.0@alpha", + "drupal/rules": "3.x-dev", "drupal/scheduler": "~1.3.0", "drupal/search_api": "~1.19.0", "drupal/simplesamlphp_auth": "~3.2.0", "drupal/smart_trim": "~1.3.0", - "drupal/sticky": "~1.1.0", + "drupal/sticky": "~2.0.0", "drupal/token": "~1.9.0", "drupal/twig_tweak": "~2.9.0", "drupal/ui_patterns": "~1.2.0", "drupal/upgrade_status": "~3.11", "drupal/userprotect": "~1.1.0", - "drupal/views_bulk_operations": "~2.6.0", + "drupal/views_bulk_operations": "~4.0.0", "drupal/views_slideshow": "~4.8.0", - "drupal/views_taxonomy_term_name_depth": "^7.0", + "drupal/views_taxonomy_term_name_depth": "~7.0.2", "drupal/viewsreference": "~1.7.0", - "drupal/webform": "~5.25.0", + "drupal/webform": "^5.25", "drupal/webform_analysis": "~1.0.0@beta", "drupal/webform_invitation": "~1.1.0", "drupal/workbench": "~1.3.0", diff --git a/composer.lock b/composer.lock index fa892c549..f29b8b29b 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": "9e2f9e0ec9b7b5b8040084f7a61c7322", + "content-hash": "ec6c52b29d6816fa250590f01260db41", "packages": [ { "name": "asm89/stack-cors", @@ -804,32 +804,32 @@ }, { "name": "consolidation/robo", - "version": "1.4.13", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/consolidation/Robo.git", - "reference": "fd28dcca1b935950ece26e63541fbdeeb09f7343" + "reference": "12bf6b608057604a283e9e597edfed36ba071631" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/Robo/zipball/fd28dcca1b935950ece26e63541fbdeeb09f7343", - "reference": "fd28dcca1b935950ece26e63541fbdeeb09f7343", + "url": "https://api.github.com/repos/consolidation/Robo/zipball/12bf6b608057604a283e9e597edfed36ba071631", + "reference": "12bf6b608057604a283e9e597edfed36ba071631", "shasum": "" }, "require": { - "consolidation/annotated-command": "^2.12.1|^4.1", + "consolidation/annotated-command": "^2.12.1 || ^4.1", "consolidation/config": "^1.2.1", - "consolidation/log": "^1.1.1|^2", - "consolidation/output-formatters": "^3.5.1|^4.1", - "consolidation/self-update": "^1.1.5", + "consolidation/log": "^1.1.1 || ^2", + "consolidation/output-formatters": "^3.5.1 || ^4.1", + "consolidation/self-update": "^1.1.5 || ^2", "grasmash/yaml-expander": "^1.4", "league/container": "^2.4.1", "php": ">=5.5.0", - "symfony/console": "^2.8|^3|^4", - "symfony/event-dispatcher": "^2.5|^3|^4", - "symfony/filesystem": "^2.5|^3|^4", - "symfony/finder": "^2.5|^3|^4|^5", - "symfony/process": "^2.5|^3|^4" + "symfony/console": "^2.8 || ^3 || ^4", + "symfony/event-dispatcher": "^2.5 || ^3 || ^4", + "symfony/filesystem": "^2.5 || ^3 || ^4", + "symfony/finder": "^2.5 || ^3 || ^4 || ^5", + "symfony/process": "^2.5 || ^3 || ^4" }, "replace": { "codegyre/robo": "< 1.0" @@ -917,9 +917,9 @@ "description": "Modern task runner", "support": { "issues": "https://github.com/consolidation/Robo/issues", - "source": "https://github.com/consolidation/Robo/tree/1.4.13" + "source": "https://github.com/consolidation/Robo/tree/1.5.0" }, - "time": "2020-10-11T04:51:34+00:00" + "time": "2021-10-08T03:51:31+00:00" }, { "name": "consolidation/self-update", @@ -2521,11 +2521,11 @@ }, { "name": "drupal/cern-theme", - "version": "2.6.12", + "version": "2.7.0", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/themes/cern.git", - "reference": "408630b7b5e53086c2991653fa8a0d561f3166b2" + "reference": "9b10b4897eb768c4e5740689135f5e618fd9f621" }, "require": { "drupal/cern-base-theme": "^2.6.1" @@ -2541,7 +2541,7 @@ } ], "description": "Defines the CERN theme", - "time": "2021-04-27T12:37:58+00:00" + "time": "2021-05-19T09:18:30+00:00" }, { "name": "drupal/cern-toolbar", @@ -3196,35 +3196,32 @@ }, { "name": "drupal/contribute", - "version": "1.0.0-beta8", + "version": "dev-1.x", "source": { "type": "git", "url": "https://git.drupalcode.org/project/contribute.git", - "reference": "8.x-1.0-beta8" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/contribute-8.x-1.0-beta8.zip", - "reference": "8.x-1.0-beta8", - "shasum": "0f197e7ed0997818366d557a1c990d2c199e3565" + "reference": "8e0692ac28de695942cbf88677eae7b35dfcd7b9" }, "require": { - "drupal/core": "~8.0" + "drupal/core": "^8.7.7 || ^9.0" }, "type": "drupal-module", "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, "drupal": { - "version": "8.x-1.0-beta8", - "datestamp": "1572372486", + "version": "8.x-1.0-beta8+4-dev", + "datestamp": "1588025707", "security-coverage": { "status": "not-covered", - "message": "Beta releases are not covered by Drupal security advisories." + "message": "Dev releases are not covered by Drupal security advisories." } } }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -3890,27 +3887,37 @@ }, { "name": "drupal/devel", - "version": "2.1.0", + "version": "4.1.1", "source": { "type": "git", "url": "https://git.drupalcode.org/project/devel.git", - "reference": "8.x-2.1" + "reference": "4.1.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/devel-8.x-2.1.zip", - "reference": "8.x-2.1", - "shasum": "8f735892922aa5f228e681e645e5f02b1c008f14" + "url": "https://ftp.drupal.org/files/projects/devel-4.1.1.zip", + "reference": "4.1.1", + "shasum": "88e5d49dda26a3136291ecd97bc6c8e897b24198" }, "require": { - "drupal/core": "~8.0", - "symfony/var-dumper": "~2.7|^3|^4" + "doctrine/common": "^2.7", + "drupal/core": "^8.8 || ^9", + "symfony/var-dumper": "^4 || ^5" + }, + "conflict": { + "kint-php/kint": "<3" + }, + "require-dev": { + "drush/drush": "^10" + }, + "suggest": { + "kint-php/kint": "Kint provides an informative display of arrays/objects. Useful for debugging and developing." }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.1", - "datestamp": "1556799496", + "version": "4.1.1", + "datestamp": "1631968537", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -3918,48 +3925,30 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { - "name": "Moshe Weitzman", - "homepage": "https://github.com/weitzman", - "email": "weitzman@tejasa.com", - "role": "Maintainer" - }, - { - "name": "Hans Salvisberg", - "homepage": "https://www.drupal.org/u/salvis", - "email": "drupal@salvisberg.com", - "role": "Maintainer" - }, - { - "name": "Luca Lusso", - "homepage": "https://www.drupal.org/u/lussoluca", - "role": "Maintainer" - }, - { - "name": "Marco (willzyx)", - "homepage": "https://www.drupal.org/u/willzyx", - "role": "Maintainer" + "name": "drupalspoons", + "homepage": "https://www.drupal.org/user/3647684" }, { - "name": "See contributors", - "homepage": "https://www.drupal.org/node/3236/committers" + "name": "moshe weitzman", + "homepage": "https://www.drupal.org/user/23" } ], "description": "Various blocks, pages, and functions for developers.", - "homepage": "http://drupal.org/project/devel", + "homepage": "https://www.drupal.org/project/devel", "support": { - "source": "http://cgit.drupalcode.org/devel", - "issues": "http://drupal.org/project/devel", - "irc": "irc://irc.freenode.org/drupal-contribute" + "source": "https://gitlab.com/drupalspoons/devel", + "issues": "https://gitlab.com/drupalspoons/devel/-/issues", + "slack": "https://drupal.slack.com/archives/C012WAW1MH6" } }, { @@ -3976,6 +3965,9 @@ "reference": "8.x-1.0-alpha0", "shasum": "7b2756cdba8ecf8af052e9a6105530c1eaa2cfa5" }, + "require": { + "drupal/core": "~8.0" + }, "type": "drupal-module", "extra": { "drupal": { @@ -4186,6 +4178,9 @@ "reference": "8.x-3.4", "shasum": "6ec1848fd12b1515c16d841cc87a071883fa476c" }, + "require": { + "drupal/core": "^8" + }, "type": "drupal-module", "extra": { "drupal": { @@ -4636,29 +4631,26 @@ }, { "name": "drupal/fast_404", - "version": "2.0.0-alpha5", + "version": "dev-2.x", "source": { "type": "git", "url": "https://git.drupalcode.org/project/fast_404.git", - "reference": "8.x-2.0-alpha5" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/fast_404-8.x-2.0-alpha5.zip", - "reference": "8.x-2.0-alpha5", - "shasum": "071518c28f73ed011068ec0dbfe07a5904b8f982" + "reference": "5382a99335ee466f8261dc1774a3d56f1699da81" }, "require": { - "drupal/core": "^8.8" + "drupal/core": "^8.8 || ^9" }, "type": "drupal-module", "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + }, "drupal": { - "version": "8.x-2.0-alpha5", - "datestamp": "1590876049", + "version": "8.x-2.0-alpha5+6-dev", + "datestamp": "1600095923", "security-coverage": { "status": "not-covered", - "message": "Alpha releases are not covered by Drupal security advisories." + "message": "Dev releases are not covered by Drupal security advisories." } } }, @@ -5140,66 +5132,32 @@ }, { "name": "drupal/file_mdm", - "version": "dev-1.x", + "version": "2.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/file_mdm.git", - "reference": "30264f78b6c6f98a614e2da8d1e0c843dce59472" - }, - "require": { - "drupal/core": "~8.0", - "lsolesen/pel": "0.9.6", - "phenx/php-font-lib": "^0.5", - "php": ">=5.6" - }, - "require-dev": { - "drupal/image_effects": "*" + "reference": "8.x-2.1" }, - "type": "drupal-module", - "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev" - }, - "drupal": { - "version": "8.x-1.1+8-dev", - "datestamp": "1576326787", - "security-coverage": { - "status": "not-covered", - "message": "Dev releases are not covered by Drupal security advisories." - } - } + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/file_mdm-8.x-2.1.zip", + "reference": "8.x-2.1", + "shasum": "5c3d75622299ebddc0e8456bb08bb371da8771bd" }, - "notification-url": "https://packages.drupal.org/8/downloads", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "mondrake", - "homepage": "https://www.drupal.org/user/1307444" - } - ], - "description": "Provides a service to manage file metadata.", - "homepage": "https://www.drupal.org/project/file_mdm", - "support": { - "source": "https://git.drupalcode.org/project/file_mdm" - } - }, - { - "name": "drupal/file_mdm_exif", - "version": "1.1.0", "require": { - "drupal/core": "~8.0", - "drupal/file_mdm": "*" + "drupal/core": "^8.8 || ^9", + "lsolesen/pel": "^0.9.8", + "phenx/php-font-lib": "^0.5.2", + "php": ">=7" }, "require-dev": { "drupal/image_effects": "*" }, - "type": "metapackage", + "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.1", - "datestamp": "1488273785", + "version": "8.x-2.1", + "datestamp": "1586801064", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5216,7 +5174,7 @@ "homepage": "https://www.drupal.org/user/1307444" } ], - "description": "Provides a file metadata plugin for EXIF image information.", + "description": "Provides a service to manage file metadata.", "homepage": "https://www.drupal.org/project/file_mdm", "support": { "source": "https://git.drupalcode.org/project/file_mdm" @@ -5278,26 +5236,26 @@ }, { "name": "drupal/honeypot", - "version": "1.30.0", + "version": "2.0.1", "source": { "type": "git", "url": "https://git.drupalcode.org/project/honeypot.git", - "reference": "8.x-1.30" + "reference": "2.0.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/honeypot-8.x-1.30.zip", - "reference": "8.x-1.30", - "shasum": "1d7983e8e07feee4f13e4b05c9a10db15ae2097e" + "url": "https://ftp.drupal.org/files/projects/honeypot-2.0.1.zip", + "reference": "2.0.1", + "shasum": "c29d248c0fdcdf733a31b9214355acfa73716632" }, "require": { - "drupal/core": "~8.0" + "drupal/core": "^8.0 || ^9.0" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.30", - "datestamp": "1576274288", + "version": "2.0.1", + "datestamp": "1597855128", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5306,7 +5264,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -5334,7 +5292,8 @@ "spam" ], "support": { - "source": "https://git.drupalcode.org/project/honeypot" + "source": "https://git.drupalcode.org/project/honeypot", + "issues": "https://www.drupal.org/project/issues/honeypot" } }, { @@ -5494,29 +5453,29 @@ }, { "name": "drupal/imagemagick", - "version": "2.7.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/imagemagick.git", - "reference": "8.x-2.7" + "reference": "8.x-3.2" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/imagemagick-8.x-2.7.zip", - "reference": "8.x-2.7", - "shasum": "e70fa0124305d99d5cf3f59d95c3e52657c1c8b4" + "url": "https://ftp.drupal.org/files/projects/imagemagick-8.x-3.2.zip", + "reference": "8.x-3.2", + "shasum": "35346cda3bb9c989387a282dd7f7bb4da4f70fce" }, "require": { - "drupal/core": "^8.3", - "drupal/file_mdm": "^1.1", - "drupal/file_mdm_exif": "^1.1", - "fileeye/mimemap": "^1.1.1" + "drupal/core": "^8.9 || ^9.1", + "drupal/file_mdm": "^2", + "drupal/sophron": "^1", + "php": ">=7.1" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.7", - "datestamp": "1581425670", + "version": "8.x-3.2", + "datestamp": "1622711751", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6319,27 +6278,25 @@ }, { "name": "drupal/migrate_plus", - "version": "4.2.0", + "version": "5.1.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/migrate_plus.git", - "reference": "8.x-4.2" + "reference": "8.x-5.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/migrate_plus-8.x-4.2.zip", - "reference": "8.x-4.2", - "shasum": "5736a43e39cc5c091d54ceef2849ea35ba979af3" + "url": "https://ftp.drupal.org/files/projects/migrate_plus-8.x-5.1.zip", + "reference": "8.x-5.1", + "shasum": "1257427ab0c64459c3c1e42bb2a98d3114b77163" }, "require": { - "drupal/core": "^8.3" + "drupal/core": "^8.8 || ^9", + "php": ">=7.1" }, "require-dev": { - "drupal/entity": "*", "drupal/migrate_example_advanced_setup": "*", - "drupal/migrate_example_setup": "*", - "drupal/migrate_tools": "*", - "drupal/profile": "*" + "drupal/migrate_example_setup": "*" }, "suggest": { "ext-soap": "*", @@ -6348,8 +6305,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-4.2", - "datestamp": "1555683487", + "version": "8.x-5.1", + "datestamp": "1588261060", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -6358,7 +6315,7 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -6367,16 +6324,17 @@ "role": "Maintainer" }, { - "name": "mikeryan", - "homepage": "https://www.drupal.org/user/4420" + "name": "Lucas Hedding", + "homepage": "https://www.drupal.org/u/heddn", + "role": "Maintainer" } ], "description": "Enhancements to core migration support.", "homepage": "https://www.drupal.org/project/migrate_plus", "support": { - "source": "https://cgit.drupalcode.org/migrate_plus", + "source": "https://git.drupalcode.org/project/migrate_plus", "issues": "https://www.drupal.org/project/issues/migrate_plus", - "irc": "irc://irc.freenode.org/drupal-migrate" + "slack": "#migrate" } }, { @@ -7137,17 +7095,17 @@ }, { "name": "drupal/permissions_by_term", - "version": "2.31.0", + "version": "2.34.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/permissions_by_term.git", - "reference": "8.x-2.31" + "reference": "8.x-2.34" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.31.zip", - "reference": "8.x-2.31", - "shasum": "b92e303e579937a6985d21751e72ad67a1d4404b" + "url": "https://ftp.drupal.org/files/projects/permissions_by_term-8.x-2.34.zip", + "reference": "8.x-2.34", + "shasum": "38233e447a83993ed660556d8b01534c3339c603" }, "require": { "drupal/core": "^8.0", @@ -7156,8 +7114,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.31", - "datestamp": "1614602591", + "version": "8.x-2.34", + "datestamp": "1626101135", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7204,6 +7162,7 @@ "shasum": "3692831f4b3de636e90679fb052ba8f30e49ac97" }, "require": { + "drupal/core": "~8.0", "drupal/matomo": "^1.0" }, "require-dev": { @@ -7244,27 +7203,28 @@ }, { "name": "drupal/recaptcha", - "version": "2.5.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/recaptcha.git", - "reference": "8.x-2.5" + "reference": "8.x-3.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/recaptcha-8.x-2.5.zip", - "reference": "8.x-2.5", - "shasum": "ffc4e334c2b09cb04b75fa9e0df3f63d1ebde0bc" + "url": "https://ftp.drupal.org/files/projects/recaptcha-8.x-3.0.zip", + "reference": "8.x-3.0", + "shasum": "5f1b179184b105ad6c121ab5505054e1e99331b9" }, "require": { "drupal/captcha": "^1.0.0-alpha1", - "drupal/core": "~8.0" + "drupal/core": "^8 || ^9", + "google/recaptcha": "^1.2" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.5", - "datestamp": "1580340616", + "version": "8.x-3.0", + "datestamp": "1591216085", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7422,38 +7382,35 @@ }, { "name": "drupal/rules", - "version": "3.0.0-alpha6", + "version": "dev-3.x", "source": { "type": "git", "url": "https://git.drupalcode.org/project/rules.git", - "reference": "8.x-3.0-alpha6" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/rules-8.x-3.0-alpha6.zip", - "reference": "8.x-3.0-alpha6", - "shasum": "073bf5c23f0ef8f1aebf56538249d50d631d5a24" + "reference": "7092780804d0da79f09b0d140d117129e48cc71c" }, "require": { - "drupal/core": "^8.7", - "drupal/typed_data": "1.x-dev" + "drupal/core": "^8.8.2 || ^9", + "drupal/typed_data": "^1.0" }, "require-dev": { "drupal/typed_data": "1.x-dev" }, "type": "drupal-module", "extra": { + "branch-alias": { + "dev-3.x": "3.x-dev" + }, "drupal": { - "version": "8.x-3.0-alpha6", - "datestamp": "1595975406", + "version": "8.x-3.x-dev", + "datestamp": "1623740127", "security-coverage": { "status": "not-covered", - "message": "Alpha releases are not covered by Drupal security advisories." + "message": "Dev releases are not covered by Drupal security advisories." } }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, @@ -7750,27 +7707,78 @@ } }, { - "name": "drupal/sticky", + "name": "drupal/sophron", "version": "1.1.0", "source": { "type": "git", - "url": "https://git.drupalcode.org/project/sticky.git", + "url": "https://git.drupalcode.org/project/sophron.git", "reference": "8.x-1.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/sticky-8.x-1.1.zip", + "url": "https://ftp.drupal.org/files/projects/sophron-8.x-1.1.zip", "reference": "8.x-1.1", - "shasum": "98735598ba94c5ef2c0ae2ee77717174994724a4" + "shasum": "afb3650458b15b87918471defa763f24880622ca" }, "require": { - "drupal/core": "~8.0" + "drupal/core": "^8.9 || ^9", + "fileeye/mimemap": "^1.1.4", + "php": ">=7.1" }, "type": "drupal-module", "extra": { "drupal": { "version": "8.x-1.1", - "datestamp": "1491909243", + "datestamp": "1606047077", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "autoload": { + "psr-4": { + "Drupal\\sophron\\": "src/" + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "mondrake", + "homepage": "https://www.drupal.org/user/1307444" + } + ], + "description": "Provides an extensive MIME types management API", + "homepage": "https://www.drupal.org/project/sophron", + "support": { + "source": "https://git.drupalcode.org/project/sophron" + } + }, + { + "name": "drupal/sticky", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/sticky.git", + "reference": "2.0.0" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/sticky-2.0.0.zip", + "reference": "2.0.0", + "shasum": "26855934f046d6b95ca21544a581ae875157115f" + }, + "require": { + "drupal/core": "^8 || ^9" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "2.0.0", + "datestamp": "1627460893", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7917,31 +7925,29 @@ }, { "name": "drupal/typed_data", - "version": "dev-1.x", + "version": "1.0.0-alpha5", "source": { "type": "git", "url": "https://git.drupalcode.org/project/typed_data.git", - "reference": "d6550fd64428642da9ace9281670e70f7018f0b1" + "reference": "8.x-1.0-alpha5" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/typed_data-8.x-1.0-alpha5.zip", + "reference": "8.x-1.0-alpha5", + "shasum": "44cfaf8f6d6bc0b876e88a8b9d473799818d395f" }, "require": { - "drupal/core": "^8.8.2 || ^9" + "drupal/core": "^8.7.7 || ^9" }, "type": "drupal-module", "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev" - }, "drupal": { - "version": "8.x-1.0-alpha5+24-dev", - "datestamp": "1623702620", + "version": "8.x-1.0-alpha5", + "datestamp": "1591397037", "security-coverage": { "status": "not-covered", - "message": "Dev releases are not covered by Drupal security advisories." - } - }, - "drush": { - "services": { - "drush.services.yml": "^9 || ^10" + "message": "Alpha releases are not covered by Drupal security advisories." } } }, @@ -8213,26 +8219,32 @@ }, { "name": "drupal/views_bulk_operations", - "version": "2.6.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/views_bulk_operations.git", - "reference": "8.x-2.6" + "reference": "4.0.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-8.x-2.6.zip", - "reference": "8.x-2.6", - "shasum": "517b671adb55c3ad023032607d360dab77db9f22" + "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-4.0.0.zip", + "reference": "4.0.0", + "shasum": "d5bb4afeaaead0b8ebc7dd9e1fc6aac464aff4b1" }, "require": { - "drupal/core": "~8.5" + "drupal/core": "^8.8 || ^9" + }, + "require-dev": { + "drush/drush": "^10" + }, + "suggest": { + "drush/drush": "^9 || ^10" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.6", - "datestamp": "1580924749", + "version": "4.0.0", + "datestamp": "1625650987", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8240,13 +8252,13 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -8273,7 +8285,7 @@ "description": "Adds an ability to perform bulk operations on selected entities from view results. Provides an API to create such operations.", "homepage": "https://www.drupal.org/project/views_bulk_operations", "support": { - "source": "https://git.drupalcode.org/project/views_bulk_operations", + "source": "https://git.drupalcode.org/project/views_bulk_operations/-/tree/8.x-3.x", "issues": "https://www.drupal.org/project/issues/views_bulk_operations?version=8.x", "docs": "https://www.drupal.org/docs/8/modules/views-bulk-operations-vbo" } @@ -8482,17 +8494,17 @@ }, { "name": "drupal/webform", - "version": "5.25.0", + "version": "5.28.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/webform.git", - "reference": "8.x-5.25" + "reference": "8.x-5.28" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.25.zip", - "reference": "8.x-5.25", - "shasum": "115f8bc21549abc080543eb772166eb4fd2a162e" + "url": "https://ftp.drupal.org/files/projects/webform-8.x-5.28.zip", + "reference": "8.x-5.28", + "shasum": "31376657f81e50302cc6b89d5094e0b8a0810f57" }, "require": { "drupal/core": "^8.8" @@ -8533,8 +8545,8 @@ "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-5.25", - "datestamp": "1629907242", + "version": "8.x-5.28", + "datestamp": "1629909852", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8542,7 +8554,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, @@ -9458,6 +9470,58 @@ ], "time": "2021-07-14T15:03:58+00:00" }, + { + "name": "google/recaptcha", + "version": "1.2.4", + "source": { + "type": "git", + "url": "https://github.com/google/recaptcha.git", + "reference": "614f25a9038be4f3f2da7cbfd778dc5b357d2419" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/google/recaptcha/zipball/614f25a9038be4f3f2da7cbfd778dc5b357d2419", + "reference": "614f25a9038be4f3f2da7cbfd778dc5b357d2419", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.2.20|^2.15", + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^4.8.36|^5.7.27|^6.59|^7.5.11" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "ReCaptcha\\": "src/ReCaptcha" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Client library for reCAPTCHA, a free service that protects websites from spam and abuse.", + "homepage": "https://www.google.com/recaptcha/", + "keywords": [ + "Abuse", + "captcha", + "recaptcha", + "spam" + ], + "support": { + "forum": "https://groups.google.com/forum/#!forum/recaptcha", + "issues": "https://github.com/google/recaptcha/issues", + "source": "https://github.com/google/recaptcha" + }, + "time": "2020-03-31T17:50:54+00:00" + }, { "name": "graham-campbell/result-type", "version": "v1.0.2", @@ -10388,26 +10452,27 @@ }, { "name": "lsolesen/pel", - "version": "0.9.6", + "version": "0.9.10", "source": { "type": "git", - "url": "https://github.com/lsolesen/pel.git", - "reference": "c9e3919f5db3b85c3c422d4f8d448dbcb2a87a23" + "url": "https://github.com/pel/pel.git", + "reference": "04ecb8a29e4b1628414193b0df9294232a44f8a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lsolesen/pel/zipball/c9e3919f5db3b85c3c422d4f8d448dbcb2a87a23", - "reference": "c9e3919f5db3b85c3c422d4f8d448dbcb2a87a23", + "url": "https://api.github.com/repos/pel/pel/zipball/04ecb8a29e4b1628414193b0df9294232a44f8a9", + "reference": "04ecb8a29e4b1628414193b0df9294232a44f8a9", "shasum": "" }, "require": { - "php": ">=5.0.0" + "php": ">=7.1.0" }, "require-dev": { + "ext-exif": "*", "ext-gd": "*", - "phpunit/phpunit": "5.7.*", - "satooshi/php-coveralls": "1.0.*", - "squizlabs/php_codesniffer": "3.0.0RC3" + "php-coveralls/php-coveralls": ">2.4", + "squizlabs/php_codesniffer": ">3.5", + "symfony/phpunit-bridge": "^4 || ^5" }, "type": "library", "autoload": { @@ -10434,16 +10499,16 @@ } ], "description": "PHP Exif Library. A library for reading and writing Exif headers in JPEG and TIFF images using PHP.", - "homepage": "http://lsolesen.github.com/pel/", + "homepage": "http://pel.github.com/pel/", "keywords": [ "exif", "image" ], "support": { - "issues": "https://github.com/lsolesen/pel/issues", - "source": "https://github.com/lsolesen/pel/tree/master" + "issues": "https://github.com/pel/pel/issues", + "source": "https://github.com/pel/pel/tree/0.9.10" }, - "time": "2017-02-03T11:58:58+00:00" + "time": "2021-01-01T22:15:50+00:00" }, { "name": "masterminds/html5", @@ -10567,16 +10632,16 @@ }, { "name": "mglaman/phpstan-drupal", - "version": "0.12.13", + "version": "0.12.15", "source": { "type": "git", "url": "https://github.com/mglaman/phpstan-drupal.git", - "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e" + "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/c149cae44eeb1edddac72fe9c1c11449abab782e", - "reference": "c149cae44eeb1edddac72fe9c1c11449abab782e", + "url": "https://api.github.com/repos/mglaman/phpstan-drupal/zipball/1d65da838f3f5136e30e7a7023c235775f30c53e", + "reference": "1d65da838f3f5136e30e7a7023c235775f30c53e", "shasum": "" }, "require": { @@ -10648,7 +10713,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/0.12.13" + "source": "https://github.com/mglaman/phpstan-drupal/tree/0.12.15" }, "funding": [ { @@ -10664,7 +10729,7 @@ "type": "tidelift" } ], - "time": "2021-08-27T13:48:19+00:00" + "time": "2021-10-06T20:17:36+00:00" }, { "name": "nette/finder", @@ -11743,16 +11808,16 @@ }, { "name": "psy/psysh", - "version": "v0.10.8", + "version": "v0.10.9", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "e4573f47750dd6c92dca5aee543fa77513cbd8d3" + "reference": "01281336c4ae557fe4a994544f30d3a1bc204375" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/e4573f47750dd6c92dca5aee543fa77513cbd8d3", - "reference": "e4573f47750dd6c92dca5aee543fa77513cbd8d3", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/01281336c4ae557fe4a994544f30d3a1bc204375", + "reference": "01281336c4ae557fe4a994544f30d3a1bc204375", "shasum": "" }, "require": { @@ -11812,9 +11877,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.10.8" + "source": "https://github.com/bobthecow/psysh/tree/v0.10.9" }, - "time": "2021-04-10T16:23:39+00:00" + "time": "2021-10-10T13:37:39+00:00" }, { "name": "ralouphie/getallheaders", @@ -12329,6 +12394,7 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook" }, + "abandoned": true, "time": "2020-03-13T11:29:21+00:00" }, { @@ -12487,6 +12553,7 @@ "issues": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive/issues", "source": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive" }, + "abandoned": true, "time": "2019-12-03T09:01:13+00:00" }, { @@ -13272,6 +13339,7 @@ "issues": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/issues", "source": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/" }, + "abandoned": true, "time": "2021-08-31T18:55:00+00:00" }, { @@ -13682,16 +13750,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.6.0", + "version": "3.6.1", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625" + "reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ffced0d2c8fa8e6cdc4d695a743271fab6c38625", - "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/f268ca40d54617c6e06757f83f699775c9b3ff2e", + "reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e", "shasum": "" }, "require": { @@ -13734,7 +13802,7 @@ "source": "https://github.com/squizlabs/PHP_CodeSniffer", "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" }, - "time": "2021-04-09T00:54:41+00:00" + "time": "2021-10-11T04:00:11+00:00" }, { "name": "stack/builder", @@ -16588,26 +16656,27 @@ "packages-dev": [ { "name": "behat/mink", - "version": "v1.8.1", + "version": "v1.9.0", "source": { "type": "git", "url": "https://github.com/minkphp/Mink.git", - "reference": "07c6a9fe3fa98c2de074b25d9ed26c22904e3887" + "reference": "e35f4695de8800fc776af34ebf665ad58ebdd996" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/minkphp/Mink/zipball/07c6a9fe3fa98c2de074b25d9ed26c22904e3887", - "reference": "07c6a9fe3fa98c2de074b25d9ed26c22904e3887", + "url": "https://api.github.com/repos/minkphp/Mink/zipball/e35f4695de8800fc776af34ebf665ad58ebdd996", + "reference": "e35f4695de8800fc776af34ebf665ad58ebdd996", "shasum": "" }, "require": { - "php": ">=5.3.1", + "php": ">=5.4", "symfony/css-selector": "^2.7|^3.0|^4.0|^5.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20", - "symfony/debug": "^2.7|^3.0|^4.0", - "symfony/phpunit-bridge": "^3.4.38 || ^5.0.5" + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5 || ^9.5", + "symfony/debug": "^2.7|^3.0|^4.0|^5.0", + "symfony/phpunit-bridge": "^3.4.38 || ^4.4 || ^5.0.5", + "yoast/phpunit-polyfills": "^1.0" }, "suggest": { "behat/mink-browserkit-driver": "extremely fast headless driver for Symfony\\Kernel-based apps (Sf2, Silex)", @@ -16619,7 +16688,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.8.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -16639,7 +16708,7 @@ } ], "description": "Browser controller/emulator abstraction for PHP", - "homepage": "http://mink.behat.org/", + "homepage": "https://mink.behat.org/", "keywords": [ "browser", "testing", @@ -16647,9 +16716,9 @@ ], "support": { "issues": "https://github.com/minkphp/Mink/issues", - "source": "https://github.com/minkphp/Mink/tree/v1.8.1" + "source": "https://github.com/minkphp/Mink/tree/v1.9.0" }, - "time": "2020-03-11T15:45:53+00:00" + "time": "2021-10-11T11:58:47+00:00" }, { "name": "behat/mink-browserkit-driver", @@ -16838,16 +16907,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.2.10", + "version": "1.2.11", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8" + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/9fdb22c2e97a614657716178093cd1da90a64aa8", - "reference": "9fdb22c2e97a614657716178093cd1da90a64aa8", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", "shasum": "" }, "require": { @@ -16859,7 +16928,7 @@ "phpstan/phpstan": "^0.12.55", "psr/log": "^1.0", "symfony/phpunit-bridge": "^4.2 || ^5", - "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0" + "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" }, "type": "library", "extra": { @@ -16894,7 +16963,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.2.10" + "source": "https://github.com/composer/ca-bundle/tree/1.2.11" }, "funding": [ { @@ -16910,20 +16979,20 @@ "type": "tidelift" } ], - "time": "2021-06-07T13:58:28+00:00" + "time": "2021-09-25T20:32:43+00:00" }, { "name": "composer/composer", - "version": "1.10.22", + "version": "1.10.23", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25" + "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/28c9dfbe2351635961f670773e8d7b17bc5eda25", - "reference": "28c9dfbe2351635961f670773e8d7b17bc5eda25", + "url": "https://api.github.com/repos/composer/composer/zipball/eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", + "reference": "eb3bae3d3de2e4abd94fa56fbe18355aba0b47ae", "shasum": "" }, "require": { @@ -16993,7 +17062,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/1.10.22" + "source": "https://github.com/composer/composer/tree/1.10.23" }, "funding": [ { @@ -17009,7 +17078,7 @@ "type": "tidelift" } ], - "time": "2021-04-27T11:10:45+00:00" + "time": "2021-10-05T07:44:27+00:00" }, { "name": "composer/spdx-licenses", @@ -17960,16 +18029,16 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f" + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/30f38bffc6f24293dadd1823936372dfa9e86e2f", - "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae", + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae", "shasum": "" }, "require": { @@ -18004,9 +18073,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.0" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1" }, - "time": "2021-09-17T15:28:14+00:00" + "time": "2021-10-02T14:08:47+00:00" }, { "name": "phpspec/prophecy", @@ -19739,16 +19808,18 @@ "aliases": [], "minimum-stability": "dev", "stability-flags": { + "drupal/cern-indico-feeds": 15, "drupal/cern-install-profiles": 20, + "drupal/cern-landing-page": 10, "drupal/content_access": 15, "drupal/context": 10, - "drupal/contribute": 10, + "drupal/contribute": 20, "drupal/domain_301_redirect": 15, - "drupal/fast_404": 15, + "drupal/fast_404": 20, "drupal/feeds": 15, "drupal/fences": 5, "drupal/filefield_paths": 10, - "drupal/rules": 15, + "drupal/rules": 20, "drupal/webform_analysis": 10, "drupal/workbench_access": 10 }, -- GitLab From dd6fed515dc83f76dd17d16bdb506109d6de3b3f Mon Sep 17 00:00:00 2001 From: Francisco Borges Aurindo Barros <francisco.borges.aurindo.barros@cern.ch> Date: Tue, 12 Oct 2021 15:16:25 +0200 Subject: [PATCH 21/27] Up profile displayname --- composer.json | 9 +- composer.lock | 2535 +----------------------------- images/nginx/config/default.conf | 13 - 3 files changed, 64 insertions(+), 2493 deletions(-) diff --git a/composer.json b/composer.json index fd7425f56..ca93ccb19 100644 --- a/composer.json +++ b/composer.json @@ -149,15 +149,15 @@ "drupal/cern-display-formats": "~1.4.6", "drupal/cern-drupal-welcome-message-block": "~1.1.0", "drupal/cern-full-html-format": "~2.0.4", - "drupal/cern-indico-feeds": "~2.0.5@alpha", - "drupal/cern-install-profiles": "dev-k8s", + "drupal/cern-indico-feeds": "~2.0.5", + "drupal/cern-install-profiles": "~8.1.5", "drupal/cern-integration": "~1.0.0", "drupal/cern-landing-page": "~2.2.4@beta", "drupal/cern-ldap-api": "~1.0.0", "drupal/cern-loading": "~2.1.2", "drupal/cern-paragraph-types": "~2.2.3", - "drupal/cern-profile-displayname": "~2.1.0", - "drupal/cern-theme": "~2.7.0", + "drupal/cern-profile-displayname": "~2.1.1", + "drupal/cern-theme": "~2.6.11", "drupal/cern-toolbar": "~2.2.3", "drupal/cern-webcast-feeds": "~2.0.4", "drupal/cern-webform-invitation": "~1.0.0", @@ -230,7 +230,6 @@ "drupal/rules": "3.x-dev", "drupal/scheduler": "~1.3.0", "drupal/search_api": "~1.19.0", - "drupal/simplesamlphp_auth": "~3.2.0", "drupal/smart_trim": "~1.3.0", "drupal/sticky": "~2.0.0", "drupal/token": "~1.9.0", diff --git a/composer.lock b/composer.lock index f29b8b29b..9706097a7 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": "ec6c52b29d6816fa250590f01260db41", + "content-hash": "e01d3e13d89748712b12b7a1a2ef4fe6", "packages": [ { "name": "asm89/stack-cors", @@ -2349,13 +2349,12 @@ }, { "name": "drupal/cern-install-profiles", - "version": "dev-k8s", + "version": "8.1.5", "source": { "type": "git", "url": "https://gitlab.cern.ch/drupal/profiles.git", - "reference": "7710a2c7ff3d94146803285aea2f4c96a52493fe" + "reference": "3e36a5d9ee9b497e8c37caafc2426e532fc8a72c" }, - "default-branch": true, "type": "drupal-profile", "license": [ "Apache-v2" @@ -2367,7 +2366,7 @@ } ], "description": "Initialize the site with configuration that integrates it with the CERN environment", - "time": "2021-09-29T15:23:07+00:00" + "time": "2021-10-12T10:12:38+00:00" }, { "name": "drupal/cern-integration", @@ -2497,35 +2496,36 @@ }, { "name": "drupal/cern-profile-displayname", - "version": "2.1.0", + "version": "2.1.1", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-profile-displayname.git", - "reference": "1392ffebc377e627a22b6a817f2c342d126b93f2" - }, - "require": { - "drupal/simplesamlphp_auth": "^3.2" + "reference": "eff1c71cf767115d588b2c4d169399793074a0a5" }, "type": "drupal-custom-module", "license": [ "GPL-2.0-or-later" ], "authors": [ + { + "name": "Joachim Valdemar Yde", + "email": "joachim.git@cern.ch" + }, { "name": "Konstantinos Platis", "email": "konstantinos.platis@cern.ch" } ], - "description": "Overrides user login names with the SimpleSaml fullname attribute. Enables redirection to Profiles site.", - "time": "2021-02-11T10:01:34+00:00" + "description": "Overrides user login names with the fullname attribute. Enables redirection to Profiles site.", + "time": "2021-10-01T12:42:57+00:00" }, { "name": "drupal/cern-theme", - "version": "2.7.0", + "version": "2.6.12", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/themes/cern.git", - "reference": "9b10b4897eb768c4e5740689135f5e618fd9f621" + "reference": "408630b7b5e53086c2991653fa8a0d561f3166b2" }, "require": { "drupal/cern-base-theme": "^2.6.1" @@ -2541,7 +2541,7 @@ } ], "description": "Defines the CERN theme", - "time": "2021-05-19T09:18:30+00:00" + "time": "2021-04-27T12:37:58+00:00" }, { "name": "drupal/cern-toolbar", @@ -7582,72 +7582,6 @@ "irc": "irc://irc.freenode.org/drupal-search-api" } }, - { - "name": "drupal/simplesamlphp_auth", - "version": "3.2.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/simplesamlphp_auth.git", - "reference": "8.x-3.2" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/simplesamlphp_auth-8.x-3.2.zip", - "reference": "8.x-3.2", - "shasum": "a5a2b10fc873eb8669929ad1a6d9599e47a2ca99" - }, - "require": { - "drupal/core": "^8.7|^9.0", - "drupal/externalauth": "^1.1", - "simplesamlphp/simplesamlphp": "^1.18.2" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-3.2", - "datestamp": "1580423953", - "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": "Berdir", - "homepage": "https://www.drupal.org/user/214652" - }, - { - "name": "colan", - "homepage": "https://www.drupal.org/user/58704" - }, - { - "name": "dakku", - "homepage": "https://www.drupal.org/user/97634" - }, - { - "name": "geekwisdom", - "homepage": "https://www.drupal.org/user/1662" - }, - { - "name": "snufkin", - "homepage": "https://www.drupal.org/user/58645" - }, - { - "name": "svendecabooter", - "homepage": "https://www.drupal.org/user/35369" - } - ], - "description": "Allows users to authenticate to a remote SAML identity provider (IdP) via a locally configured SimpleSAMLphp service point (SP).", - "homepage": "https://www.drupal.org/project/simplesamlphp_auth", - "support": { - "source": "https://git.drupalcode.org/project/simplesamlphp_auth" - } - }, { "name": "drupal/smart_trim", "version": "1.3.0", @@ -9315,161 +9249,6 @@ }, "time": "2021-09-21T16:22:01+00:00" }, - { - "name": "gettext/gettext", - "version": "v4.8.5", - "source": { - "type": "git", - "url": "https://github.com/php-gettext/Gettext.git", - "reference": "ef2e312dff383fc0e4cd62dd39042e1157f137d4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-gettext/Gettext/zipball/ef2e312dff383fc0e4cd62dd39042e1157f137d4", - "reference": "ef2e312dff383fc0e4cd62dd39042e1157f137d4", - "shasum": "" - }, - "require": { - "gettext/languages": "^2.3", - "php": ">=5.4.0" - }, - "require-dev": { - "illuminate/view": "^5.0.x-dev", - "phpunit/phpunit": "^4.8|^5.7|^6.5", - "squizlabs/php_codesniffer": "^3.0", - "symfony/yaml": "~2", - "twig/extensions": "*", - "twig/twig": "^1.31|^2.0" - }, - "suggest": { - "illuminate/view": "Is necessary if you want to use the Blade extractor", - "symfony/yaml": "Is necessary if you want to use the Yaml extractor/generator", - "twig/extensions": "Is necessary if you want to use the Twig extractor", - "twig/twig": "Is necessary if you want to use the Twig extractor" - }, - "type": "library", - "autoload": { - "psr-4": { - "Gettext\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Oscar Otero", - "email": "oom@oscarotero.com", - "homepage": "http://oscarotero.com", - "role": "Developer" - } - ], - "description": "PHP gettext manager", - "homepage": "https://github.com/oscarotero/Gettext", - "keywords": [ - "JS", - "gettext", - "i18n", - "mo", - "po", - "translation" - ], - "support": { - "email": "oom@oscarotero.com", - "issues": "https://github.com/oscarotero/Gettext/issues", - "source": "https://github.com/php-gettext/Gettext/tree/v4.8.5" - }, - "funding": [ - { - "url": "https://paypal.me/oscarotero", - "type": "custom" - }, - { - "url": "https://github.com/oscarotero", - "type": "github" - }, - { - "url": "https://www.patreon.com/misteroom", - "type": "patreon" - } - ], - "time": "2021-07-13T16:45:53+00:00" - }, - { - "name": "gettext/languages", - "version": "2.8.1", - "source": { - "type": "git", - "url": "https://github.com/php-gettext/Languages.git", - "reference": "4ad818b6341e177b7c508ec4c37e18932a7b788a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-gettext/Languages/zipball/4ad818b6341e177b7c508ec4c37e18932a7b788a", - "reference": "4ad818b6341e177b7c508ec4c37e18932a7b788a", - "shasum": "" - }, - "require": { - "php": ">=5.3" - }, - "require-dev": { - "phpunit/phpunit": "^4.8 || ^5.7 || ^6.5 || ^7.5 || ^8.4" - }, - "bin": [ - "bin/export-plural-rules" - ], - "type": "library", - "autoload": { - "psr-4": { - "Gettext\\Languages\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michele Locati", - "email": "mlocati@gmail.com", - "role": "Developer" - } - ], - "description": "gettext languages with plural rules", - "homepage": "https://github.com/php-gettext/Languages", - "keywords": [ - "cldr", - "i18n", - "internationalization", - "l10n", - "language", - "languages", - "localization", - "php", - "plural", - "plural rules", - "plurals", - "translate", - "translations", - "unicode" - ], - "support": { - "issues": "https://github.com/php-gettext/Languages/issues", - "source": "https://github.com/php-gettext/Languages/tree/2.8.1" - }, - "funding": [ - { - "url": "https://paypal.me/mlocati", - "type": "custom" - }, - { - "url": "https://github.com/mlocati", - "type": "github" - } - ], - "time": "2021-07-14T15:03:58+00:00" - }, { "name": "google/recaptcha", "version": "1.2.4", @@ -11312,160 +11091,6 @@ }, "time": "2019-09-11T20:02:13+00:00" }, - { - "name": "phpfastcache/riak-client", - "version": "3.4.3", - "source": { - "type": "git", - "url": "https://github.com/PHPSocialNetwork/riak-php-client.git", - "reference": "d771f75d16196006604a30bb15adc1c6a9b0fcc9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHPSocialNetwork/riak-php-client/zipball/d771f75d16196006604a30bb15adc1c6a9b0fcc9", - "reference": "d771f75d16196006604a30bb15adc1c6a9b0fcc9", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "ext-json": "*", - "php": ">=5.4" - }, - "conflict": { - "basho/riak": "*" - }, - "require-dev": { - "apigen/apigen": "4.1.*", - "phpunit/phpunit": "4.8.*" - }, - "type": "library", - "autoload": { - "psr-4": { - "Basho\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "Georges.L", - "email": "contact@geolim4.com", - "homepage": "https://github.com/Geolim4", - "role": "Maintainer" - }, - { - "name": "Christopher Mancini", - "email": "cmancini@basho.com", - "homepage": "https://github.com/christophermancini", - "role": "Former Lead Developer" - }, - { - "name": "Alex Moore", - "email": "amoore@basho.com", - "homepage": "https://github.com/alexmoore", - "role": "Former Developer" - } - ], - "description": "Riak client for PHP (Fork of the official basho/riak due to maintainer significant inactivity)", - "homepage": "https://github.com/PHPSocialNetwork/riak-php-client", - "keywords": [ - "basho", - "client", - "crdt", - "data", - "database", - "datatype", - "driver", - "kv", - "nosql", - "riak" - ], - "support": { - "issues": "https://github.com/PHPSocialNetwork/riak-php-client/issues", - "source": "https://github.com/PHPSocialNetwork/riak-php-client/tree/develop" - }, - "time": "2017-11-23T21:33:15+00:00" - }, - { - "name": "phpmailer/phpmailer", - "version": "v6.5.1", - "source": { - "type": "git", - "url": "https://github.com/PHPMailer/PHPMailer.git", - "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/dd803df5ad7492e1b40637f7ebd258fee5ca7355", - "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-filter": "*", - "ext-hash": "*", - "php": ">=5.5.0" - }, - "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "doctrine/annotations": "^1.2", - "php-parallel-lint/php-console-highlighter": "^0.5.0", - "php-parallel-lint/php-parallel-lint": "^1.3", - "phpcompatibility/php-compatibility": "^9.3.5", - "roave/security-advisories": "dev-latest", - "squizlabs/php_codesniffer": "^3.6.0", - "yoast/phpunit-polyfills": "^1.0.0" - }, - "suggest": { - "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses", - "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication", - "league/oauth2-google": "Needed for Google XOAUTH2 authentication", - "psr/log": "For optional PSR-3 debug logging", - "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication", - "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)" - }, - "type": "library", - "autoload": { - "psr-4": { - "PHPMailer\\PHPMailer\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-only" - ], - "authors": [ - { - "name": "Marcus Bointon", - "email": "phpmailer@synchromedia.co.uk" - }, - { - "name": "Jim Jagielski", - "email": "jimjag@gmail.com" - }, - { - "name": "Andy Prevost", - "email": "codeworxtech@users.sourceforge.net" - }, - { - "name": "Brent R. Matzelle" - } - ], - "description": "PHPMailer is a full-featured email creation and transfer class for PHP", - "support": { - "issues": "https://github.com/PHPMailer/PHPMailer/issues", - "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.1" - }, - "funding": [ - { - "url": "https://github.com/Synchro", - "type": "github" - } - ], - "time": "2021-08-18T09:14:16+00:00" - }, { "name": "phpoption/phpoption", "version": "1.8.0", @@ -11926,1827 +11551,53 @@ "time": "2019-03-08T08:55:37+00:00" }, { - "name": "robrichards/xmlseclibs", - "version": "3.1.1", + "name": "sabberworm/php-css-parser", + "version": "8.3.1", "source": { "type": "git", - "url": "https://github.com/robrichards/xmlseclibs.git", - "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df" + "url": "https://github.com/sabberworm/PHP-CSS-Parser.git", + "reference": "d217848e1396ef962fb1997cf3e2421acba7f796" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/robrichards/xmlseclibs/zipball/f8f19e58f26cdb42c54b214ff8a820760292f8df", - "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df", + "url": "https://api.github.com/repos/sabberworm/PHP-CSS-Parser/zipball/d217848e1396ef962fb1997cf3e2421acba7f796", + "reference": "d217848e1396ef962fb1997cf3e2421acba7f796", "shasum": "" }, "require": { - "ext-openssl": "*", - "php": ">= 5.4" + "php": ">=5.3.2" + }, + "require-dev": { + "codacy/coverage": "^1.4", + "phpunit/phpunit": "~4.8" }, "type": "library", "autoload": { - "psr-4": { - "RobRichards\\XMLSecLibs\\": "src" + "psr-0": { + "Sabberworm\\CSS": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "A PHP library for XML Security", - "homepage": "https://github.com/robrichards/xmlseclibs", - "keywords": [ - "security", - "signature", - "xml", - "xmldsig" - ], - "support": { - "issues": "https://github.com/robrichards/xmlseclibs/issues", - "source": "https://github.com/robrichards/xmlseclibs/tree/3.1.1" - }, - "time": "2020-09-05T13:00:25+00:00" - }, - { - "name": "sabberworm/php-css-parser", - "version": "8.3.1", - "source": { - "type": "git", - "url": "https://github.com/sabberworm/PHP-CSS-Parser.git", - "reference": "d217848e1396ef962fb1997cf3e2421acba7f796" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sabberworm/PHP-CSS-Parser/zipball/d217848e1396ef962fb1997cf3e2421acba7f796", - "reference": "d217848e1396ef962fb1997cf3e2421acba7f796", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "require-dev": { - "codacy/coverage": "^1.4", - "phpunit/phpunit": "~4.8" - }, - "type": "library", - "autoload": { - "psr-0": { - "Sabberworm\\CSS": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Raphael Schweikert" - } - ], - "description": "Parser for CSS Files written in PHP", - "homepage": "http://www.sabberworm.com/blog/2010/6/10/php-css-parser", - "keywords": [ - "css", - "parser", - "stylesheet" - ], - "support": { - "issues": "https://github.com/sabberworm/PHP-CSS-Parser/issues", - "source": "https://github.com/sabberworm/PHP-CSS-Parser/tree/8.3.1" - }, - "time": "2020-06-01T09:10:00+00:00" - }, - { - "name": "simplesamlphp/composer-module-installer", - "version": "v1.1.8", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/composer-module-installer.git", - "reference": "45161b5406f3e9c82459d0f9a5a1dba064953cfa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/composer-module-installer/zipball/45161b5406f3e9c82459d0f9a5a1dba064953cfa", - "reference": "45161b5406f3e9c82459d0f9a5a1dba064953cfa", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1|^2.0", - "simplesamlphp/simplesamlphp": "*" - }, - "type": "composer-plugin", - "extra": { - "class": "SimpleSamlPhp\\Composer\\ModuleInstallerPlugin" - }, - "autoload": { - "psr-0": { - "SimpleSamlPhp\\Composer": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-only" - ], - "description": "A Composer plugin that allows installing SimpleSAMLphp modules through Composer.", - "support": { - "issues": "https://github.com/simplesamlphp/composer-module-installer/issues", - "source": "https://github.com/simplesamlphp/composer-module-installer/tree/v1.1.8" - }, - "time": "2020-08-25T19:04:33+00:00" - }, - { - "name": "simplesamlphp/saml2", - "version": "v4.2.4", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/saml2.git", - "reference": "8e3ad89b97d2f2f922f67894675e3460feab2209" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/saml2/zipball/8e3ad89b97d2f2f922f67894675e3460feab2209", - "reference": "8e3ad89b97d2f2f922f67894675e3460feab2209", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-openssl": "*", - "ext-zlib": "*", - "php": ">=7.1 || ^8.0", - "psr/log": "~1.1", - "robrichards/xmlseclibs": "^3.1.1", - "webmozart/assert": "^1.9" - }, - "require-dev": { - "mockery/mockery": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "sebastian/phpcpd": "~4.1 || ^5.0 || ^6.0", - "simplesamlphp/simplesamlphp-test-framework": "~0.1.0", - "squizlabs/php_codesniffer": "~3.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "v4.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "SAML2\\": "src/SAML2" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "SAML2 PHP library from SimpleSAMLphp", - "support": { - "issues": "https://github.com/simplesamlphp/saml2/issues", - "source": "https://github.com/simplesamlphp/saml2/tree/v4.2.4" - }, - "time": "2021-08-24T12:21:57+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp", - "version": "v1.18.8", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp.git", - "reference": "ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp/zipball/ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b", - "reference": "ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b", - "shasum": "" - }, - "require": { - "ext-date": "*", - "ext-dom": "*", - "ext-hash": "*", - "ext-json": "*", - "ext-mbstring": "*", - "ext-openssl": "*", - "ext-pcre": "*", - "ext-spl": "*", - "ext-zlib": "*", - "gettext/gettext": "^4.6", - "php": ">=5.6", - "phpmailer/phpmailer": "^6.0", - "robrichards/xmlseclibs": "^3.0.4", - "simplesamlphp/saml2": "^3.4 || ^4.0", - "simplesamlphp/simplesamlphp-module-adfs": "^0.9", - "simplesamlphp/simplesamlphp-module-authcrypt": "^0.9", - "simplesamlphp/simplesamlphp-module-authfacebook": "^0.9", - "simplesamlphp/simplesamlphp-module-authorize": "^0.9", - "simplesamlphp/simplesamlphp-module-authtwitter": "^0.9", - "simplesamlphp/simplesamlphp-module-authwindowslive": "^0.9", - "simplesamlphp/simplesamlphp-module-authx509": "^0.9", - "simplesamlphp/simplesamlphp-module-authyubikey": "^0.9", - "simplesamlphp/simplesamlphp-module-cas": "^0.9", - "simplesamlphp/simplesamlphp-module-cdc": "^0.9", - "simplesamlphp/simplesamlphp-module-consent": "^0.9", - "simplesamlphp/simplesamlphp-module-consentadmin": "^0.9", - "simplesamlphp/simplesamlphp-module-discopower": "^0.9", - "simplesamlphp/simplesamlphp-module-exampleattributeserver": "^1.0", - "simplesamlphp/simplesamlphp-module-expirycheck": "^0.9", - "simplesamlphp/simplesamlphp-module-ldap": "^0.9", - "simplesamlphp/simplesamlphp-module-memcachemonitor": "^0.9", - "simplesamlphp/simplesamlphp-module-memcookie": "^1.2", - "simplesamlphp/simplesamlphp-module-metarefresh": "^0.9", - "simplesamlphp/simplesamlphp-module-negotiate": "^0.9", - "simplesamlphp/simplesamlphp-module-oauth": "^0.9", - "simplesamlphp/simplesamlphp-module-preprodwarning": "^0.9", - "simplesamlphp/simplesamlphp-module-radius": "^0.9", - "simplesamlphp/simplesamlphp-module-riak": "^0.9", - "simplesamlphp/simplesamlphp-module-sanitycheck": "^0.9", - "simplesamlphp/simplesamlphp-module-smartattributes": "^0.9", - "simplesamlphp/simplesamlphp-module-sqlauth": "^0.9", - "simplesamlphp/simplesamlphp-module-statistics": "^0.9", - "simplesamlphp/twig-configurable-i18n": "^2.2", - "symfony/config": "^3.4 || ^4.0", - "symfony/dependency-injection": "^3.4 || ^4.0", - "symfony/http-foundation": "^3.4 || ^4.0", - "symfony/http-kernel": "^3.4 || ^4.0", - "symfony/routing": "^3.4 || ^4.0", - "symfony/yaml": "^3.4 || ^4.0", - "twig/twig": "~1.0 || ~2.0" - }, - "require-dev": { - "ext-curl": "*", - "mikey179/vfsstream": "~1.6", - "phpunit/phpunit": "~5.7", - "sensiolabs/security-checker": "^5.0.3", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.14", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "~1.1.9" - }, - "suggest": { - "ext-curl": "Needed in order to check for updates automatically", - "ext-ldap": "Needed if an LDAP backend is used", - "ext-memcache": "Needed if a Memcache server is used to store session information", - "ext-mysql": "Needed if a MySQL backend is used, either for authentication or to store session information", - "ext-pdo": "Needed if a database backend is used, either for authentication or to store session information", - "ext-pgsql": "Needed if a PostgreSQL backend is used, either for authentication or to store session information", - "ext-radius": "Needed if a Radius backend is used", - "predis/predis": "Needed if a Redis server is used to store session information" - }, - "type": "project", - "autoload": { - "psr-4": { - "SimpleSAML\\": "lib/SimpleSAML" - }, - "files": [ - "lib/_autoload_modules.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - }, - { - "name": "Olav Morken", - "email": "olav.morken@uninett.no" - }, - { - "name": "Jaime Perez", - "email": "jaime.perez@uninett.no" - } - ], - "description": "A PHP implementation of a SAML 2.0 service provider and identity provider, also compatible with Shibboleth 1.3 and 2.0.", - "homepage": "http://simplesamlphp.org", - "keywords": [ - "SAML2", - "idp", - "oauth", - "shibboleth", - "sp", - "ws-federation" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp" - }, - "time": "2020-09-02T12:07:28+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-adfs", - "version": "v0.9.8", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-adfs.git", - "reference": "ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-adfs/zipball/ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e", - "reference": "ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "sensiolabs/security-checker": "^5.0", - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.15", - "webmozart/assert": "<1.7" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\adfs\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that implements the WS-federation IDP", - "keywords": [ - "adfs", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-adfs/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-adfs" - }, - "time": "2021-08-17T07:54:07+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authcrypt", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authcrypt.git", - "reference": "9a2c1a761e2d94394a4f2d3499fd6f0853899530" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authcrypt/zipball/9a2c1a761e2d94394a4f2d3499fd6f0853899530", - "reference": "9a2c1a761e2d94394a4f2d3499fd6f0853899530", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "~1.4", - "whitehat101/apr1-md5": "~1.0" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authcrypt\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "This module provides authentication against password hashes or .htpasswd files", - "keywords": [ - "authcrypt", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authcrypt/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authcrypt" - }, - "time": "2021-01-08T09:09:33+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authfacebook", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook.git", - "reference": "9152731e939ad4a49e0f06da5f0009ebde0d2b5c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authfacebook/zipball/9152731e939ad4a49e0f06da5f0009ebde0d2b5c", - "reference": "9152731e939ad4a49e0f06da5f0009ebde0d2b5c", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.10" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authfacebook\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Andjelko Horvat", - "email": "comel@vingd.com" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to authenticate against Facebook", - "keywords": [ - "facebook", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook" - }, - "abandoned": true, - "time": "2020-03-13T11:29:21+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authorize", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authorize.git", - "reference": "0593bfcb84fca9d9133f415246ab8ca51b412c92" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authorize/zipball/0593bfcb84fca9d9133f415246ab8ca51b412c92", - "reference": "0593bfcb84fca9d9133f415246ab8ca51b412c92", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authorize\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Ernesto Revilla", - "email": "erny@yaco.es" - } - ], - "description": "This module provides a user authorization filter based on attribute matching", - "keywords": [ - "authorize", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authorize/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authorize" - }, - "time": "2021-03-24T10:37:17+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authtwitter", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authtwitter.git", - "reference": "29a15e58061222632fea9eb2c807aef5e2c0d54a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authtwitter/zipball/29a15e58061222632fea9eb2c807aef5e2c0d54a", - "reference": "29a15e58061222632fea9eb2c807aef5e2c0d54a", - "shasum": "" - }, - "require": { - "php": ">=5.5", - "simplesamlphp/composer-module-installer": "~1.0", - "simplesamlphp/simplesamlphp-module-oauth": "^0.9" - }, - "require-dev": { - "phpunit/phpunit": "~4.8.35", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authtwitter\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to perform authentication against Twitter", - "keywords": [ - "simplesamlphp", - "twitter" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authtwitter/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authtwitter" - }, - "time": "2019-12-03T09:00:09+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authwindowslive", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authwindowslive.git", - "reference": "f40aecec6c0adaedb6693309840c98cec783876e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authwindowslive/zipball/f40aecec6c0adaedb6693309840c98cec783876e", - "reference": "f40aecec6c0adaedb6693309840c98cec783876e", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authwindowslive\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to perform authentication against Windows Live", - "keywords": [ - "live", - "simplesamlphp", - "windows", - "windowslive" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive" - }, - "abandoned": true, - "time": "2019-12-03T09:01:13+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authx509", - "version": "v0.9.8", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authX509.git", - "reference": "66525b1ec4145ec8d0d0e9db4534624b6be4c1fb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authX509/zipball/66525b1ec4145ec8d0d0e9db4534624b6be4c1fb", - "reference": "66525b1ec4145ec8d0d0e9db4534624b6be4c1fb", - "shasum": "" - }, - "require": { - "php": ">=5.5", - "simplesamlphp/composer-module-installer": "~1.1", - "simplesamlphp/simplesamlphp-module-ldap": "^0.9" - }, - "require-dev": { - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.15" - }, - "type": "simplesamlphp-module", - "extra": { - "ssp-mixedcase-module-name": "authX509" - }, - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\authX509\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Joost van Dijk", - "email": "Joost.vanDijk@surfnet.nl" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to authenticate users based on X509 client certificates", - "keywords": [ - "simplesamlphp", - "x509" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authx509/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authx509" - }, - "time": "2020-12-15T23:06:47+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-authyubikey", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-authyubikey.git", - "reference": "8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authyubikey/zipball/8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2", - "reference": "8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "extra": { - "ssp-mixedcase-module-name": "authYubikey" - }, - "autoload": { - "psr-4": { - "SimpleSAML\\modules\\yubikey\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to authenticate against YubiKey", - "keywords": [ - "authyubikey", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-authyubikey/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-authyubikey" - }, - "time": "2019-12-03T08:52:49+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-cas", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-cas.git", - "reference": "63b72e4600550c507cdfc32fdd208ad59a64321e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-cas/zipball/63b72e4600550c507cdfc32fdd208ad59a64321e", - "reference": "63b72e4600550c507cdfc32fdd208ad59a64321e", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "simplesamlphp/simplesamlphp-module-ldap": "^0.9", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\cas\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "A module that provides CAS authentication", - "keywords": [ - "cas", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-cas/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-cas" - }, - "time": "2019-12-03T09:03:06+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-cdc", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-cdc.git", - "reference": "16a5bfac7299e04e5feb472af328e07598708166" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-cdc/zipball/16a5bfac7299e04e5feb472af328e07598708166", - "reference": "16a5bfac7299e04e5feb472af328e07598708166", - "shasum": "" - }, - "require": { - "simplesamlphp/composer-module-installer": ">=1.1.6" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\cdc\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olav.morken@uninett.no" - }, - { - "name": "Jaime Perez Crespo", - "email": "jaime.perez@uninett.no" - } - ], - "description": "A SimpleSAMLphp module that allows integration with CDC", - "homepage": "https://simplesamlphp.org/", - "keywords": [ - "cdc", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-cdc/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-cdc/" - }, - "time": "2019-12-03T09:04:11+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-consent", - "version": "v0.9.7", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-consent.git", - "reference": "16a347ee4003e2adf415284b334a582e9b8a5717" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-consent/zipball/16a347ee4003e2adf415284b334a582e9b8a5717", - "reference": "16a347ee4003e2adf415284b334a582e9b8a5717", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "webmozart/assert": "<1.6" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\consent\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "lavmrk@gmail.com" - } - ], - "description": "A module that will ask for user consent before releasing attributes", - "keywords": [ - "consent", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-consent/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-consent" - }, - "time": "2021-09-04T19:57:14+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-consentadmin", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin.git", - "reference": "466e8d0d751f0080162d78e63ab2e125b24d17a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-consentadmin/zipball/466e8d0d751f0080162d78e63ab2e125b24d17a1", - "reference": "466e8d0d751f0080162d78e63ab2e125b24d17a1", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "simplesamlphp/simplesamlphp-module-consent": "^0.9", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "extra": { - "ssp-mixedcase-module-name": "consentAdmin" - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Jacob Christiansen", - "email": "jach@wayf.dk" - }, - { - "name": "Olav Morken", - "email": "olav.morken@uninett.no" - } - ], - "description": "A module that allows users to manage their consent", - "keywords": [ - "consentadmin", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin" - }, - "time": "2019-12-03T09:06:40+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-discopower", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-discopower.git", - "reference": "006c0617610f1bae11cf4d17e8ce4c509239a60e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-discopower/zipball/006c0617610f1bae11cf4d17e8ce4c509239a60e", - "reference": "006c0617610f1bae11cf4d17e8ce4c509239a60e", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\modules\\discopower\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "Fancy tabbed discovery service with filtering capabilities where SPs can have different sets of metadata listed", - "keywords": [ - "discopower", - "discovery", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-discopower/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-discopower" - }, - "time": "2019-11-27T20:34:37+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-exampleattributeserver", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-exampleattributeserver.git", - "reference": "63e0323e81c32bc3c9eaa01ea45194bb10153708" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-exampleattributeserver/zipball/63e0323e81c32bc3c9eaa01ea45194bb10153708", - "reference": "63e0323e81c32bc3c9eaa01ea45194bb10153708", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\exampleattributeserver\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "An example for SAML attributes queries", - "keywords": [ - "exampleattributeserver", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-exampleattributeserver/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-exampleattributeserver" - }, - "time": "2019-05-28T12:37:15+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-expirycheck", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck.git", - "reference": "59c59cdf87e2679257b46c07bb4c27666a11cc20" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-expirycheck/zipball/59c59cdf87e2679257b46c07bb4c27666a11cc20", - "reference": "59c59cdf87e2679257b46c07bb4c27666a11cc20", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.10" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\expirycheck\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Alex MihiÄinac", - "email": "alexm@arnes.si" - } - ], - "description": "The expirycheck module validates user's expiry date", - "keywords": [ - "expirycheck", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck" - }, - "time": "2019-12-14T13:20:46+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-ldap", - "version": "v0.9.12", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-ldap.git", - "reference": "88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-ldap/zipball/88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1", - "reference": "88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "suggest": { - "ext-ldap": "Needed when using LDAP authentication in SimpleSAMLphp" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\ldap\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that provides authentication against LDAP stores", - "keywords": [ - "ldap", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-ldap/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-ldap" - }, - "time": "2021-09-07T15:21:37+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-memcachemonitor", - "version": "v0.9.2", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-memcachemonitor.git", - "reference": "900b5c6b59913d9013b8dae090841a127ae55ae5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-memcachemonitor/zipball/900b5c6b59913d9013b8dae090841a127ae55ae5", - "reference": "900b5c6b59913d9013b8dae090841a127ae55ae5", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "~0.0.6" - }, - "type": "simplesamlphp-module", - "extra": { - "ssp-mixedcase-module-name": "memcacheMonitor" - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - }, - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able display usage statistics of a memcache(d) store", - "keywords": [ - "memcachemonitor", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-memcachemonitor/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-memcachemonitor" - }, - "time": "2021-01-25T15:44:44+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-memcookie", - "version": "v1.2.2", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie.git", - "reference": "39535304e8d464b7baa1e82cb441fa432947ff57" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-memcookie/zipball/39535304e8d464b7baa1e82cb441fa432947ff57", - "reference": "39535304e8d464b7baa1e82cb441fa432947ff57", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": ">=1.1.6" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.6" - }, - "type": "simplesamlphp-module", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olav.morken@uninett.no" - }, - { - "name": "Jaime Perez Crespo", - "email": "jaime.perez@uninett.no" - } - ], - "description": "A SimpleSAMLphp module that allows integration with Auth MemCookie, allowing web applications written in other languages than PHP to integrate with SimpleSAMLphp.", - "homepage": "https://simplesamlphp.org/", - "keywords": [ - "Auth MemCookie", - "apache", - "cookies", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie/" - }, - "time": "2019-08-08T18:33:47+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-metarefresh", - "version": "v0.9.6", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-metarefresh.git", - "reference": "e284306a7097297765b5b78a4e28f19f18d4e001" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-metarefresh/zipball/e284306a7097297765b5b78a4e28f19f18d4e001", - "reference": "e284306a7097297765b5b78a4e28f19f18d4e001", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.18" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\metarefresh\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "The metarefresh module will download and parse metadata documents and store them locally", - "keywords": [ - "metarefresh", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-metarefresh/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-metarefresh" - }, - "time": "2020-07-31T14:43:37+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-negotiate", - "version": "v0.9.11", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-negotiate.git", - "reference": "e7c4597110c753a750cd522220fc2a5a34b7c1b8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-negotiate/zipball/e7c4597110c753a750cd522220fc2a5a34b7c1b8", - "reference": "e7c4597110c753a750cd522220fc2a5a34b7c1b8", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "simplesamlphp/simplesamlphp-module-ldap": "^0.9", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "sensiolabs/security-checker": "^5.0.3", - "simplesamlphp/simplesamlphp": "dev-testing-1.18", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.14", - "squizlabs/php_codesniffer": "^3.5" - }, - "suggest": { - "ext-krb5": "Needed in case the SimpleSAMLphp negotiate module is used" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\negotiate\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "The Negotiate module implements Microsofts Kerberos SPNEGO mechanism", - "keywords": [ - "negotiate", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-negotiate/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-negotiate" - }, - "time": "2021-05-17T11:01:39+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-oauth", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-oauth.git", - "reference": "2a2433144dca408315e4ee163f9ab73a6110b2b1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-oauth/zipball/2a2433144dca408315e4ee163f9ab73a6110b2b1", - "reference": "2a2433144dca408315e4ee163f9ab73a6110b2b1", - "shasum": "" - }, - "require": { - "simplesamlphp/composer-module-installer": ">=1.1.6" - }, - "require-dev": { - "phpunit/phpunit": "~4.8.36", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\oauth\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olav.morken@uninett.no" - }, - { - "name": "Jaime Perez Crespo", - "email": "jaime.perez@uninett.no" - } - ], - "description": "A SimpleSAMLphp module that allows integration with OAuth1,", - "homepage": "https://simplesamlphp.org/", - "keywords": [ - "oauth1", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/" - }, - "abandoned": true, - "time": "2021-08-31T18:55:00+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-preprodwarning", - "version": "v0.9.2", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning.git", - "reference": "8e032de33a75eb44857dc06d886ad94ee3af4638" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-preprodwarning/zipball/8e032de33a75eb44857dc06d886ad94ee3af4638", - "reference": "8e032de33a75eb44857dc06d886ad94ee3af4638", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "webmozart/assert": "^1.4" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\preprodwarning\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "Display a warning when using a pre-production environment", - "keywords": [ - "preprodwarning", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning" - }, - "time": "2020-04-09T13:05:27+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-radius", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-radius.git", - "reference": "36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-radius/zipball/36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d", - "reference": "36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.7" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\radius\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "A module that is able perform authentication against a RADIUS server", - "keywords": [ - "radius", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-radius/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-radius" - }, - "time": "2019-10-03T18:13:07+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-riak", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-riak.git", - "reference": "c1a9d9545cb4e05b9205b34624850bb777aca991" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-riak/zipball/c1a9d9545cb4e05b9205b34624850bb777aca991", - "reference": "c1a9d9545cb4e05b9205b34624850bb777aca991", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "phpfastcache/riak-client": "^3.4", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\riak\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Tim van Dijen", - "email": "tvdijen@gmail.com" - } - ], - "description": "A module that is able to store key/value pairs in a Riak store", - "keywords": [ - "riak", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-riak/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-riak" - }, - "time": "2019-12-03T08:28:45+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-sanitycheck", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-sanitycheck.git", - "reference": "15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-sanitycheck/zipball/15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a", - "reference": "15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "~1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\sanitycheck\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "Perform sanity checks on configuration", - "keywords": [ - "sanitycheck", - "simplesamlphp" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-sanitycheck/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-sanitycheck" - }, - "time": "2020-05-07T11:34:29+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-smartattributes", - "version": "v0.9.1", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-smartattributes.git", - "reference": "b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-smartattributes/zipball/b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6", - "reference": "b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\smartattributes\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "The SmartAttributes module provides additional authentication processing filters to manipulate attributes.", - "keywords": [ - "simplesamlphp", - "smartattributes" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-smartattributes/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-smartattributes" - }, - "time": "2019-12-03T09:24:09+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-sqlauth", - "version": "v0.9.3", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-sqlauth.git", - "reference": "c2dc4fc8aa6d8b2408131e09b39f06d8610ff374" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-sqlauth/zipball/c2dc4fc8aa6d8b2408131e09b39f06d8610ff374", - "reference": "c2dc4fc8aa6d8b2408131e09b39f06d8610ff374", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "webmozart/assert": "^1.4 <1.7" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\sqlauth\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Olav Morken", - "email": "olavmrk@gmail.com" - } - ], - "description": "This is a authentication module for authenticating a user against a SQL database", - "keywords": [ - "simplesamlphp", - "sqlauth" - ], - "support": { - "issues": "https://github.com/tvdijen/simplesamlphp-module-sqlauth/issues", - "source": "https://github.com/tvdijen/simplesamlphp-module-sqlauth" - }, - "time": "2021-04-29T16:51:59+00:00" - }, - { - "name": "simplesamlphp/simplesamlphp-module-statistics", - "version": "v0.9.6", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/simplesamlphp-module-statistics.git", - "reference": "03fb6bdbbf5ce0a0cb257208db79aacac227ac10" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-statistics/zipball/03fb6bdbbf5ce0a0cb257208db79aacac227ac10", - "reference": "03fb6bdbbf5ce0a0cb257208db79aacac227ac10", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "simplesamlphp/composer-module-installer": "~1.1", - "webmozart/assert": "^1.4" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "simplesamlphp/simplesamlphp": "^1.17", - "simplesamlphp/simplesamlphp-test-framework": "^0.0.12" - }, - "type": "simplesamlphp-module", - "autoload": { - "psr-4": { - "SimpleSAML\\Module\\statistics\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Andreas Ã…kre Solberg", - "email": "andreas.solberg@uninett.no" - } - ], - "description": "The SimpleSAMLphp statistics module", - "keywords": [ - "simplesamlphp", - "statistics" - ], - "support": { - "issues": "https://github.com/simplesamlphp/simplesamlphp-module-statistics/issues", - "source": "https://github.com/simplesamlphp/simplesamlphp-module-statistics" - }, - "time": "2021-01-25T15:15:26+00:00" - }, - { - "name": "simplesamlphp/twig-configurable-i18n", - "version": "v2.3.4", - "source": { - "type": "git", - "url": "https://github.com/simplesamlphp/twig-configurable-i18n.git", - "reference": "e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/simplesamlphp/twig-configurable-i18n/zipball/e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a", - "reference": "e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a", - "shasum": "" - }, - "require": { - "php": ">=7.1", - "twig/extensions": "@dev" - }, - "require-dev": { - "phpunit/phpunit": "^7.5", - "sensiolabs/security-checker": "~6.0.3", - "simplesamlphp/simplesamlphp-test-framework": "~0.1.2", - "squizlabs/php_codesniffer": "^3.5", - "twig/twig": "^2.13" - }, - "type": "project", - "autoload": { - "psr-4": { - "SimpleSAML\\TwigConfigurableI18n\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1" + "MIT" ], "authors": [ { - "name": "Jaime Perez", - "email": "jaime.perez@uninett.no" + "name": "Raphael Schweikert" } ], - "description": "This is an extension on top of Twig's i18n extension, allowing you to customize which functions to use for translations.", + "description": "Parser for CSS Files written in PHP", + "homepage": "http://www.sabberworm.com/blog/2010/6/10/php-css-parser", "keywords": [ - "extension", - "gettext", - "i18n", - "internationalization", - "translation", - "twig" + "css", + "parser", + "stylesheet" ], "support": { - "issues": "https://github.com/simplesamlphp/twig-configurable-i18n/issues", - "source": "https://github.com/simplesamlphp/twig-configurable-i18n" + "issues": "https://github.com/sabberworm/PHP-CSS-Parser/issues", + "source": "https://github.com/sabberworm/PHP-CSS-Parser/tree/8.3.1" }, - "time": "2020-08-27T12:51:10+00:00" + "time": "2020-06-01T09:10:00+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -13993,84 +11844,6 @@ ], "time": "2020-03-15T09:38:08+00:00" }, - { - "name": "symfony/config", - "version": "v4.4.30", - "source": { - "type": "git", - "url": "https://github.com/symfony/config.git", - "reference": "d9ea72de055cd822e5228ff898e2aad2f52f76b0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/d9ea72de055cd822e5228ff898e2aad2f52f76b0", - "reference": "d9ea72de055cd822e5228ff898e2aad2f52f76b0", - "shasum": "" - }, - "require": { - "php": ">=7.1.3", - "symfony/filesystem": "^3.4|^4.0|^5.0", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php80": "^1.16", - "symfony/polyfill-php81": "^1.22" - }, - "conflict": { - "symfony/finder": "<3.4" - }, - "require-dev": { - "symfony/event-dispatcher": "^3.4|^4.0|^5.0", - "symfony/finder": "^3.4|^4.0|^5.0", - "symfony/messenger": "^4.1|^5.0", - "symfony/service-contracts": "^1.1|^2", - "symfony/yaml": "^3.4|^4.0|^5.0" - }, - "suggest": { - "symfony/yaml": "To use the yaml reference dumper" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Config\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/config/tree/v4.4.30" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-08-04T20:31:23+00:00" - }, { "name": "symfony/console", "version": "v3.4.41", @@ -15312,85 +13085,6 @@ ], "time": "2021-07-28T13:41:28+00:00" }, - { - "name": "symfony/polyfill-php81", - "version": "v1.23.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "e66119f3de95efc359483f810c4c3e6436279436" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/e66119f3de95efc359483f810c4c3e6436279436", - "reference": "e66119f3de95efc359483f810c4c3e6436279436", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, - "files": [ - "bootstrap.php" - ], - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.23.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-05-21T13:25:03+00:00" - }, { "name": "symfony/polyfill-util", "version": "v1.17.0", @@ -16137,66 +13831,6 @@ ], "time": "2020-05-11T07:51:54+00:00" }, - { - "name": "twig/extensions", - "version": "v1.5.4", - "source": { - "type": "git", - "url": "https://github.com/twigphp/Twig-extensions.git", - "reference": "57873c8b0c1be51caa47df2cdb824490beb16202" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig-extensions/zipball/57873c8b0c1be51caa47df2cdb824490beb16202", - "reference": "57873c8b0c1be51caa47df2cdb824490beb16202", - "shasum": "" - }, - "require": { - "twig/twig": "^1.27|^2.0" - }, - "require-dev": { - "symfony/phpunit-bridge": "^3.4", - "symfony/translation": "^2.7|^3.4" - }, - "suggest": { - "symfony/translation": "Allow the time_diff output to be translated" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.5-dev" - } - }, - "autoload": { - "psr-0": { - "Twig_Extensions_": "lib/" - }, - "psr-4": { - "Twig\\Extensions\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Common additional features for Twig that do not directly belong in core", - "keywords": [ - "i18n", - "text" - ], - "support": { - "issues": "https://github.com/twigphp/Twig-extensions/issues", - "source": "https://github.com/twigphp/Twig-extensions/tree/master" - }, - "abandoned": true, - "time": "2018-12-05T18:34:18+00:00" - }, { "name": "twig/twig", "version": "v1.42.5", @@ -16551,54 +14185,6 @@ }, "time": "2015-12-17T08:42:14+00:00" }, - { - "name": "whitehat101/apr1-md5", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/whitehat101/apr1-md5.git", - "reference": "8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/whitehat101/apr1-md5/zipball/8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819", - "reference": "8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "phpunit/phpunit": "4.0.*" - }, - "type": "library", - "autoload": { - "psr-4": { - "WhiteHat101\\Crypt\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jeremy Ebler", - "email": "jebler@gmail.com" - } - ], - "description": "Apache's APR1-MD5 algorithm in pure PHP", - "homepage": "https://github.com/whitehat101/apr1-md5", - "keywords": [ - "MD5", - "apr1" - ], - "support": { - "issues": "https://github.com/whitehat101/apr1-md5/issues", - "source": "https://github.com/whitehat101/apr1-md5/tree/master" - }, - "time": "2015-02-11T11:06:42+00:00" - }, { "name": "wikimedia/composer-merge-plugin", "version": "v2.0.1", @@ -16722,33 +14308,35 @@ }, { "name": "behat/mink-browserkit-driver", - "version": "v1.3.4", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/minkphp/MinkBrowserKitDriver.git", - "reference": "e3b90840022ebcd544c7b394a3c9597ae242cbee" + "reference": "0ed1919eb09968f2e152ed91aee35300e70602a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/minkphp/MinkBrowserKitDriver/zipball/e3b90840022ebcd544c7b394a3c9597ae242cbee", - "reference": "e3b90840022ebcd544c7b394a3c9597ae242cbee", + "url": "https://api.github.com/repos/minkphp/MinkBrowserKitDriver/zipball/0ed1919eb09968f2e152ed91aee35300e70602a8", + "reference": "0ed1919eb09968f2e152ed91aee35300e70602a8", "shasum": "" }, "require": { "behat/mink": "^1.7.1@dev", - "php": ">=5.3.6", + "php": ">=5.4", "symfony/browser-kit": "~2.3|~3.0|~4.0", "symfony/dom-crawler": "~2.3|~3.0|~4.0" }, "require-dev": { "mink/driver-testsuite": "dev-master", + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.18 || ^8.5 || ^9.5", "symfony/debug": "^2.7|^3.0|^4.0", - "symfony/http-kernel": "~2.3|~3.0|~4.0" + "symfony/http-kernel": "~2.3|~3.0|~4.0", + "yoast/phpunit-polyfills": "^1.0" }, "type": "mink-driver", "extra": { "branch-alias": { - "dev-master": "1.3.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -16768,7 +14356,7 @@ } ], "description": "Symfony2 BrowserKit driver for Mink framework", - "homepage": "http://mink.behat.org/", + "homepage": "https://mink.behat.org/", "keywords": [ "Mink", "Symfony2", @@ -16777,37 +14365,36 @@ ], "support": { "issues": "https://github.com/minkphp/MinkBrowserKitDriver/issues", - "source": "https://github.com/minkphp/MinkBrowserKitDriver/tree/v1.3.4" + "source": "https://github.com/minkphp/MinkBrowserKitDriver/tree/v1.4.0" }, - "time": "2020-03-11T09:49:45+00:00" + "time": "2021-10-12T09:42:37+00:00" }, { "name": "behat/mink-goutte-driver", - "version": "v1.2.1", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/minkphp/MinkGoutteDriver.git", - "reference": "8b9ad6d2d95bc70b840d15323365f52fcdaea6ca" + "reference": "8139f520f417c81bf9d2f9a171fff400f6adc9ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/minkphp/MinkGoutteDriver/zipball/8b9ad6d2d95bc70b840d15323365f52fcdaea6ca", - "reference": "8b9ad6d2d95bc70b840d15323365f52fcdaea6ca", + "url": "https://api.github.com/repos/minkphp/MinkGoutteDriver/zipball/8139f520f417c81bf9d2f9a171fff400f6adc9ea", + "reference": "8139f520f417c81bf9d2f9a171fff400f6adc9ea", "shasum": "" }, "require": { - "behat/mink": "~1.6@dev", "behat/mink-browserkit-driver": "~1.2@dev", "fabpot/goutte": "~1.0.4|~2.0|~3.1", - "php": ">=5.3.1" + "php": ">=5.4" }, "require-dev": { - "symfony/phpunit-bridge": "~2.7|~3.0" + "mink/driver-testsuite": "dev-master" }, "type": "mink-driver", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -16827,7 +14414,7 @@ } ], "description": "Goutte driver for Mink framework", - "homepage": "http://mink.behat.org/", + "homepage": "https://mink.behat.org/", "keywords": [ "browser", "goutte", @@ -16836,9 +14423,9 @@ ], "support": { "issues": "https://github.com/minkphp/MinkGoutteDriver/issues", - "source": "https://github.com/minkphp/MinkGoutteDriver/tree/master" + "source": "https://github.com/minkphp/MinkGoutteDriver/tree/v1.3.0" }, - "time": "2016-03-05T09:04:22+00:00" + "time": "2021-10-12T11:35:46+00:00" }, { "name": "behat/mink-selenium2-driver", @@ -19808,8 +17395,6 @@ "aliases": [], "minimum-stability": "dev", "stability-flags": { - "drupal/cern-indico-feeds": 15, - "drupal/cern-install-profiles": 20, "drupal/cern-landing-page": 10, "drupal/content_access": 15, "drupal/context": 10, diff --git a/images/nginx/config/default.conf b/images/nginx/config/default.conf index 27113c5d9..6f6a66f59 100644 --- a/images/nginx/config/default.conf +++ b/images/nginx/config/default.conf @@ -170,17 +170,4 @@ server { log_not_found off; } - - location ^~ /simplesaml { - alias /app/vendor/simplesamlphp/simplesamlphp/www; - - location ~ ^(?<prefix>/simplesaml)(?<phpfile>.+?\.php)(?<pathinfo>/.*)?$ { - include fastcgi_params; - fastcgi_pass php; - fastcgi_index index.php; - fastcgi_split_path_info ^(.+?\.php)(/.+)$; - fastcgi_param SCRIPT_FILENAME $document_root$phpfile; - fastcgi_param PATH_INFO $pathinfo if_not_empty; - } - } } -- GitLab From ebd11ae638c9b4e0fcc2d196ba82a281be88f862 Mon Sep 17 00:00:00 2001 From: Francisco Barros <francisco.borges.aurindo.barros@cern.ch> Date: Tue, 12 Oct 2021 15:09:23 +0000 Subject: [PATCH 22/27] quick fix to return to bleeding edge --- composer.json | 4 ++-- composer.lock | 9 +++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/composer.json b/composer.json index ca93ccb19..d7c786c1e 100644 --- a/composer.json +++ b/composer.json @@ -149,7 +149,7 @@ "drupal/cern-display-formats": "~1.4.6", "drupal/cern-drupal-welcome-message-block": "~1.1.0", "drupal/cern-full-html-format": "~2.0.4", - "drupal/cern-indico-feeds": "~2.0.5", + "drupal/cern-indico-feeds": "~2.0.5@alpha", "drupal/cern-install-profiles": "~8.1.5", "drupal/cern-integration": "~1.0.0", "drupal/cern-landing-page": "~2.2.4@beta", @@ -157,7 +157,7 @@ "drupal/cern-loading": "~2.1.2", "drupal/cern-paragraph-types": "~2.2.3", "drupal/cern-profile-displayname": "~2.1.1", - "drupal/cern-theme": "~2.6.11", + "drupal/cern-theme": "~2.7.0", "drupal/cern-toolbar": "~2.2.3", "drupal/cern-webcast-feeds": "~2.0.4", "drupal/cern-webform-invitation": "~1.0.0", diff --git a/composer.lock b/composer.lock index 9706097a7..020f0f43f 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": "e01d3e13d89748712b12b7a1a2ef4fe6", + "content-hash": "0ee002fddd5042f450856540660db891", "packages": [ { "name": "asm89/stack-cors", @@ -2521,11 +2521,11 @@ }, { "name": "drupal/cern-theme", - "version": "2.6.12", + "version": "2.7.0", "source": { "type": "git", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/themes/cern.git", - "reference": "408630b7b5e53086c2991653fa8a0d561f3166b2" + "reference": "9b10b4897eb768c4e5740689135f5e618fd9f621" }, "require": { "drupal/cern-base-theme": "^2.6.1" @@ -2541,7 +2541,7 @@ } ], "description": "Defines the CERN theme", - "time": "2021-04-27T12:37:58+00:00" + "time": "2021-05-19T09:18:30+00:00" }, { "name": "drupal/cern-toolbar", @@ -17395,6 +17395,7 @@ "aliases": [], "minimum-stability": "dev", "stability-flags": { + "drupal/cern-indico-feeds": 15, "drupal/cern-landing-page": 10, "drupal/content_access": 15, "drupal/context": 10, -- GitLab From 4e2e0de00e9f3ac641f55a3185dfc77605f99b09 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Wed, 13 Oct 2021 00:33:18 +0200 Subject: [PATCH 23/27] Add back simplesaml --- composer.json | 1 + composer.lock | 2432 ++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 2424 insertions(+), 9 deletions(-) diff --git a/composer.json b/composer.json index d7c786c1e..db0d51986 100644 --- a/composer.json +++ b/composer.json @@ -230,6 +230,7 @@ "drupal/rules": "3.x-dev", "drupal/scheduler": "~1.3.0", "drupal/search_api": "~1.19.0", + "drupal/simplesamlphp_auth": "~3.2.0", "drupal/smart_trim": "~1.3.0", "drupal/sticky": "~2.0.0", "drupal/token": "~1.9.0", diff --git a/composer.lock b/composer.lock index 020f0f43f..b26861b91 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": "0ee002fddd5042f450856540660db891", + "content-hash": "7b94fae12290f1cfd13efdd12185a5f4", "packages": [ { "name": "asm89/stack-cors", @@ -7582,6 +7582,72 @@ "irc": "irc://irc.freenode.org/drupal-search-api" } }, + { + "name": "drupal/simplesamlphp_auth", + "version": "3.2.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/simplesamlphp_auth.git", + "reference": "8.x-3.2" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/simplesamlphp_auth-8.x-3.2.zip", + "reference": "8.x-3.2", + "shasum": "a5a2b10fc873eb8669929ad1a6d9599e47a2ca99" + }, + "require": { + "drupal/core": "^8.7|^9.0", + "drupal/externalauth": "^1.1", + "simplesamlphp/simplesamlphp": "^1.18.2" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-3.2", + "datestamp": "1580423953", + "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": "Berdir", + "homepage": "https://www.drupal.org/user/214652" + }, + { + "name": "colan", + "homepage": "https://www.drupal.org/user/58704" + }, + { + "name": "dakku", + "homepage": "https://www.drupal.org/user/97634" + }, + { + "name": "geekwisdom", + "homepage": "https://www.drupal.org/user/1662" + }, + { + "name": "snufkin", + "homepage": "https://www.drupal.org/user/58645" + }, + { + "name": "svendecabooter", + "homepage": "https://www.drupal.org/user/35369" + } + ], + "description": "Allows users to authenticate to a remote SAML identity provider (IdP) via a locally configured SimpleSAMLphp service point (SP).", + "homepage": "https://www.drupal.org/project/simplesamlphp_auth", + "support": { + "source": "https://git.drupalcode.org/project/simplesamlphp_auth" + } + }, { "name": "drupal/smart_trim", "version": "1.3.0", @@ -9249,6 +9315,161 @@ }, "time": "2021-09-21T16:22:01+00:00" }, + { + "name": "gettext/gettext", + "version": "v4.8.5", + "source": { + "type": "git", + "url": "https://github.com/php-gettext/Gettext.git", + "reference": "ef2e312dff383fc0e4cd62dd39042e1157f137d4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-gettext/Gettext/zipball/ef2e312dff383fc0e4cd62dd39042e1157f137d4", + "reference": "ef2e312dff383fc0e4cd62dd39042e1157f137d4", + "shasum": "" + }, + "require": { + "gettext/languages": "^2.3", + "php": ">=5.4.0" + }, + "require-dev": { + "illuminate/view": "^5.0.x-dev", + "phpunit/phpunit": "^4.8|^5.7|^6.5", + "squizlabs/php_codesniffer": "^3.0", + "symfony/yaml": "~2", + "twig/extensions": "*", + "twig/twig": "^1.31|^2.0" + }, + "suggest": { + "illuminate/view": "Is necessary if you want to use the Blade extractor", + "symfony/yaml": "Is necessary if you want to use the Yaml extractor/generator", + "twig/extensions": "Is necessary if you want to use the Twig extractor", + "twig/twig": "Is necessary if you want to use the Twig extractor" + }, + "type": "library", + "autoload": { + "psr-4": { + "Gettext\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oscar Otero", + "email": "oom@oscarotero.com", + "homepage": "http://oscarotero.com", + "role": "Developer" + } + ], + "description": "PHP gettext manager", + "homepage": "https://github.com/oscarotero/Gettext", + "keywords": [ + "JS", + "gettext", + "i18n", + "mo", + "po", + "translation" + ], + "support": { + "email": "oom@oscarotero.com", + "issues": "https://github.com/oscarotero/Gettext/issues", + "source": "https://github.com/php-gettext/Gettext/tree/v4.8.5" + }, + "funding": [ + { + "url": "https://paypal.me/oscarotero", + "type": "custom" + }, + { + "url": "https://github.com/oscarotero", + "type": "github" + }, + { + "url": "https://www.patreon.com/misteroom", + "type": "patreon" + } + ], + "time": "2021-07-13T16:45:53+00:00" + }, + { + "name": "gettext/languages", + "version": "2.8.1", + "source": { + "type": "git", + "url": "https://github.com/php-gettext/Languages.git", + "reference": "4ad818b6341e177b7c508ec4c37e18932a7b788a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-gettext/Languages/zipball/4ad818b6341e177b7c508ec4c37e18932a7b788a", + "reference": "4ad818b6341e177b7c508ec4c37e18932a7b788a", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^4.8 || ^5.7 || ^6.5 || ^7.5 || ^8.4" + }, + "bin": [ + "bin/export-plural-rules" + ], + "type": "library", + "autoload": { + "psr-4": { + "Gettext\\Languages\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michele Locati", + "email": "mlocati@gmail.com", + "role": "Developer" + } + ], + "description": "gettext languages with plural rules", + "homepage": "https://github.com/php-gettext/Languages", + "keywords": [ + "cldr", + "i18n", + "internationalization", + "l10n", + "language", + "languages", + "localization", + "php", + "plural", + "plural rules", + "plurals", + "translate", + "translations", + "unicode" + ], + "support": { + "issues": "https://github.com/php-gettext/Languages/issues", + "source": "https://github.com/php-gettext/Languages/tree/2.8.1" + }, + "funding": [ + { + "url": "https://paypal.me/mlocati", + "type": "custom" + }, + { + "url": "https://github.com/mlocati", + "type": "github" + } + ], + "time": "2021-07-14T15:03:58+00:00" + }, { "name": "google/recaptcha", "version": "1.2.4", @@ -11091,6 +11312,160 @@ }, "time": "2019-09-11T20:02:13+00:00" }, + { + "name": "phpfastcache/riak-client", + "version": "3.4.3", + "source": { + "type": "git", + "url": "https://github.com/PHPSocialNetwork/riak-php-client.git", + "reference": "d771f75d16196006604a30bb15adc1c6a9b0fcc9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPSocialNetwork/riak-php-client/zipball/d771f75d16196006604a30bb15adc1c6a9b0fcc9", + "reference": "d771f75d16196006604a30bb15adc1c6a9b0fcc9", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "ext-json": "*", + "php": ">=5.4" + }, + "conflict": { + "basho/riak": "*" + }, + "require-dev": { + "apigen/apigen": "4.1.*", + "phpunit/phpunit": "4.8.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "Basho\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Georges.L", + "email": "contact@geolim4.com", + "homepage": "https://github.com/Geolim4", + "role": "Maintainer" + }, + { + "name": "Christopher Mancini", + "email": "cmancini@basho.com", + "homepage": "https://github.com/christophermancini", + "role": "Former Lead Developer" + }, + { + "name": "Alex Moore", + "email": "amoore@basho.com", + "homepage": "https://github.com/alexmoore", + "role": "Former Developer" + } + ], + "description": "Riak client for PHP (Fork of the official basho/riak due to maintainer significant inactivity)", + "homepage": "https://github.com/PHPSocialNetwork/riak-php-client", + "keywords": [ + "basho", + "client", + "crdt", + "data", + "database", + "datatype", + "driver", + "kv", + "nosql", + "riak" + ], + "support": { + "issues": "https://github.com/PHPSocialNetwork/riak-php-client/issues", + "source": "https://github.com/PHPSocialNetwork/riak-php-client/tree/develop" + }, + "time": "2017-11-23T21:33:15+00:00" + }, + { + "name": "phpmailer/phpmailer", + "version": "v6.5.1", + "source": { + "type": "git", + "url": "https://github.com/PHPMailer/PHPMailer.git", + "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/dd803df5ad7492e1b40637f7ebd258fee5ca7355", + "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-filter": "*", + "ext-hash": "*", + "php": ">=5.5.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "doctrine/annotations": "^1.2", + "php-parallel-lint/php-console-highlighter": "^0.5.0", + "php-parallel-lint/php-parallel-lint": "^1.3", + "phpcompatibility/php-compatibility": "^9.3.5", + "roave/security-advisories": "dev-latest", + "squizlabs/php_codesniffer": "^3.6.0", + "yoast/phpunit-polyfills": "^1.0.0" + }, + "suggest": { + "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses", + "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication", + "league/oauth2-google": "Needed for Google XOAUTH2 authentication", + "psr/log": "For optional PSR-3 debug logging", + "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication", + "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPMailer\\PHPMailer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-only" + ], + "authors": [ + { + "name": "Marcus Bointon", + "email": "phpmailer@synchromedia.co.uk" + }, + { + "name": "Jim Jagielski", + "email": "jimjag@gmail.com" + }, + { + "name": "Andy Prevost", + "email": "codeworxtech@users.sourceforge.net" + }, + { + "name": "Brent R. Matzelle" + } + ], + "description": "PHPMailer is a full-featured email creation and transfer class for PHP", + "support": { + "issues": "https://github.com/PHPMailer/PHPMailer/issues", + "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.1" + }, + "funding": [ + { + "url": "https://github.com/Synchro", + "type": "github" + } + ], + "time": "2021-08-18T09:14:16+00:00" + }, { "name": "phpoption/phpoption", "version": "1.8.0", @@ -11550,6 +11925,48 @@ }, "time": "2019-03-08T08:55:37+00:00" }, + { + "name": "robrichards/xmlseclibs", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/robrichards/xmlseclibs.git", + "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/robrichards/xmlseclibs/zipball/f8f19e58f26cdb42c54b214ff8a820760292f8df", + "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "php": ">= 5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "RobRichards\\XMLSecLibs\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "A PHP library for XML Security", + "homepage": "https://github.com/robrichards/xmlseclibs", + "keywords": [ + "security", + "signature", + "xml", + "xmldsig" + ], + "support": { + "issues": "https://github.com/robrichards/xmlseclibs/issues", + "source": "https://github.com/robrichards/xmlseclibs/tree/3.1.1" + }, + "time": "2020-09-05T13:00:25+00:00" + }, { "name": "sabberworm/php-css-parser", "version": "8.3.1", @@ -11599,6 +12016,1738 @@ }, "time": "2020-06-01T09:10:00+00:00" }, + { + "name": "simplesamlphp/composer-module-installer", + "version": "v1.1.8", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/composer-module-installer.git", + "reference": "45161b5406f3e9c82459d0f9a5a1dba064953cfa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/composer-module-installer/zipball/45161b5406f3e9c82459d0f9a5a1dba064953cfa", + "reference": "45161b5406f3e9c82459d0f9a5a1dba064953cfa", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1|^2.0", + "simplesamlphp/simplesamlphp": "*" + }, + "type": "composer-plugin", + "extra": { + "class": "SimpleSamlPhp\\Composer\\ModuleInstallerPlugin" + }, + "autoload": { + "psr-0": { + "SimpleSamlPhp\\Composer": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-only" + ], + "description": "A Composer plugin that allows installing SimpleSAMLphp modules through Composer.", + "support": { + "issues": "https://github.com/simplesamlphp/composer-module-installer/issues", + "source": "https://github.com/simplesamlphp/composer-module-installer/tree/v1.1.8" + }, + "time": "2020-08-25T19:04:33+00:00" + }, + { + "name": "simplesamlphp/saml2", + "version": "v4.2.4", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/saml2.git", + "reference": "8e3ad89b97d2f2f922f67894675e3460feab2209" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/saml2/zipball/8e3ad89b97d2f2f922f67894675e3460feab2209", + "reference": "8e3ad89b97d2f2f922f67894675e3460feab2209", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-openssl": "*", + "ext-zlib": "*", + "php": ">=7.1 || ^8.0", + "psr/log": "~1.1", + "robrichards/xmlseclibs": "^3.1.1", + "webmozart/assert": "^1.9" + }, + "require-dev": { + "mockery/mockery": "^1.3", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "sebastian/phpcpd": "~4.1 || ^5.0 || ^6.0", + "simplesamlphp/simplesamlphp-test-framework": "~0.1.0", + "squizlabs/php_codesniffer": "~3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "v4.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "SAML2\\": "src/SAML2" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "SAML2 PHP library from SimpleSAMLphp", + "support": { + "issues": "https://github.com/simplesamlphp/saml2/issues", + "source": "https://github.com/simplesamlphp/saml2/tree/v4.2.4" + }, + "time": "2021-08-24T12:21:57+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp", + "version": "v1.18.8", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp.git", + "reference": "ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp/zipball/ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b", + "reference": "ebb6d15bb8e8b45504adc26fd3872073d1e5cd9b", + "shasum": "" + }, + "require": { + "ext-date": "*", + "ext-dom": "*", + "ext-hash": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-openssl": "*", + "ext-pcre": "*", + "ext-spl": "*", + "ext-zlib": "*", + "gettext/gettext": "^4.6", + "php": ">=5.6", + "phpmailer/phpmailer": "^6.0", + "robrichards/xmlseclibs": "^3.0.4", + "simplesamlphp/saml2": "^3.4 || ^4.0", + "simplesamlphp/simplesamlphp-module-adfs": "^0.9", + "simplesamlphp/simplesamlphp-module-authcrypt": "^0.9", + "simplesamlphp/simplesamlphp-module-authfacebook": "^0.9", + "simplesamlphp/simplesamlphp-module-authorize": "^0.9", + "simplesamlphp/simplesamlphp-module-authtwitter": "^0.9", + "simplesamlphp/simplesamlphp-module-authwindowslive": "^0.9", + "simplesamlphp/simplesamlphp-module-authx509": "^0.9", + "simplesamlphp/simplesamlphp-module-authyubikey": "^0.9", + "simplesamlphp/simplesamlphp-module-cas": "^0.9", + "simplesamlphp/simplesamlphp-module-cdc": "^0.9", + "simplesamlphp/simplesamlphp-module-consent": "^0.9", + "simplesamlphp/simplesamlphp-module-consentadmin": "^0.9", + "simplesamlphp/simplesamlphp-module-discopower": "^0.9", + "simplesamlphp/simplesamlphp-module-exampleattributeserver": "^1.0", + "simplesamlphp/simplesamlphp-module-expirycheck": "^0.9", + "simplesamlphp/simplesamlphp-module-ldap": "^0.9", + "simplesamlphp/simplesamlphp-module-memcachemonitor": "^0.9", + "simplesamlphp/simplesamlphp-module-memcookie": "^1.2", + "simplesamlphp/simplesamlphp-module-metarefresh": "^0.9", + "simplesamlphp/simplesamlphp-module-negotiate": "^0.9", + "simplesamlphp/simplesamlphp-module-oauth": "^0.9", + "simplesamlphp/simplesamlphp-module-preprodwarning": "^0.9", + "simplesamlphp/simplesamlphp-module-radius": "^0.9", + "simplesamlphp/simplesamlphp-module-riak": "^0.9", + "simplesamlphp/simplesamlphp-module-sanitycheck": "^0.9", + "simplesamlphp/simplesamlphp-module-smartattributes": "^0.9", + "simplesamlphp/simplesamlphp-module-sqlauth": "^0.9", + "simplesamlphp/simplesamlphp-module-statistics": "^0.9", + "simplesamlphp/twig-configurable-i18n": "^2.2", + "symfony/config": "^3.4 || ^4.0", + "symfony/dependency-injection": "^3.4 || ^4.0", + "symfony/http-foundation": "^3.4 || ^4.0", + "symfony/http-kernel": "^3.4 || ^4.0", + "symfony/routing": "^3.4 || ^4.0", + "symfony/yaml": "^3.4 || ^4.0", + "twig/twig": "~1.0 || ~2.0" + }, + "require-dev": { + "ext-curl": "*", + "mikey179/vfsstream": "~1.6", + "phpunit/phpunit": "~5.7", + "sensiolabs/security-checker": "^5.0.3", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.14", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "~1.1.9" + }, + "suggest": { + "ext-curl": "Needed in order to check for updates automatically", + "ext-ldap": "Needed if an LDAP backend is used", + "ext-memcache": "Needed if a Memcache server is used to store session information", + "ext-mysql": "Needed if a MySQL backend is used, either for authentication or to store session information", + "ext-pdo": "Needed if a database backend is used, either for authentication or to store session information", + "ext-pgsql": "Needed if a PostgreSQL backend is used, either for authentication or to store session information", + "ext-radius": "Needed if a Radius backend is used", + "predis/predis": "Needed if a Redis server is used to store session information" + }, + "type": "project", + "autoload": { + "psr-4": { + "SimpleSAML\\": "lib/SimpleSAML" + }, + "files": [ + "lib/_autoload_modules.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + }, + { + "name": "Olav Morken", + "email": "olav.morken@uninett.no" + }, + { + "name": "Jaime Perez", + "email": "jaime.perez@uninett.no" + } + ], + "description": "A PHP implementation of a SAML 2.0 service provider and identity provider, also compatible with Shibboleth 1.3 and 2.0.", + "homepage": "http://simplesamlphp.org", + "keywords": [ + "SAML2", + "idp", + "oauth", + "shibboleth", + "sp", + "ws-federation" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp" + }, + "time": "2020-09-02T12:07:28+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-adfs", + "version": "v0.9.8", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-adfs.git", + "reference": "ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-adfs/zipball/ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e", + "reference": "ac2ba46a6b94ed48b527ac190b0fa99bcda8d98e", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "sensiolabs/security-checker": "^5.0", + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.15", + "webmozart/assert": "<1.7" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\adfs\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that implements the WS-federation IDP", + "keywords": [ + "adfs", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-adfs/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-adfs" + }, + "time": "2021-08-17T07:54:07+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authcrypt", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authcrypt.git", + "reference": "9a2c1a761e2d94394a4f2d3499fd6f0853899530" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authcrypt/zipball/9a2c1a761e2d94394a4f2d3499fd6f0853899530", + "reference": "9a2c1a761e2d94394a4f2d3499fd6f0853899530", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "~1.4", + "whitehat101/apr1-md5": "~1.0" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authcrypt\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "This module provides authentication against password hashes or .htpasswd files", + "keywords": [ + "authcrypt", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authcrypt/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authcrypt" + }, + "time": "2021-01-08T09:09:33+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authfacebook", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook.git", + "reference": "9152731e939ad4a49e0f06da5f0009ebde0d2b5c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authfacebook/zipball/9152731e939ad4a49e0f06da5f0009ebde0d2b5c", + "reference": "9152731e939ad4a49e0f06da5f0009ebde0d2b5c", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.10" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authfacebook\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Andjelko Horvat", + "email": "comel@vingd.com" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to authenticate against Facebook", + "keywords": [ + "facebook", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-authfacebook" + }, + "abandoned": true, + "time": "2020-03-13T11:29:21+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authorize", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authorize.git", + "reference": "0593bfcb84fca9d9133f415246ab8ca51b412c92" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authorize/zipball/0593bfcb84fca9d9133f415246ab8ca51b412c92", + "reference": "0593bfcb84fca9d9133f415246ab8ca51b412c92", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authorize\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Ernesto Revilla", + "email": "erny@yaco.es" + } + ], + "description": "This module provides a user authorization filter based on attribute matching", + "keywords": [ + "authorize", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authorize/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authorize" + }, + "time": "2021-03-24T10:37:17+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authtwitter", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authtwitter.git", + "reference": "29a15e58061222632fea9eb2c807aef5e2c0d54a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authtwitter/zipball/29a15e58061222632fea9eb2c807aef5e2c0d54a", + "reference": "29a15e58061222632fea9eb2c807aef5e2c0d54a", + "shasum": "" + }, + "require": { + "php": ">=5.5", + "simplesamlphp/composer-module-installer": "~1.0", + "simplesamlphp/simplesamlphp-module-oauth": "^0.9" + }, + "require-dev": { + "phpunit/phpunit": "~4.8.35", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authtwitter\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to perform authentication against Twitter", + "keywords": [ + "simplesamlphp", + "twitter" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authtwitter/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authtwitter" + }, + "time": "2019-12-03T09:00:09+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authwindowslive", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authwindowslive.git", + "reference": "f40aecec6c0adaedb6693309840c98cec783876e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authwindowslive/zipball/f40aecec6c0adaedb6693309840c98cec783876e", + "reference": "f40aecec6c0adaedb6693309840c98cec783876e", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authwindowslive\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to perform authentication against Windows Live", + "keywords": [ + "live", + "simplesamlphp", + "windows", + "windowslive" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authwindowslive" + }, + "abandoned": true, + "time": "2019-12-03T09:01:13+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authx509", + "version": "v0.9.8", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authX509.git", + "reference": "66525b1ec4145ec8d0d0e9db4534624b6be4c1fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authX509/zipball/66525b1ec4145ec8d0d0e9db4534624b6be4c1fb", + "reference": "66525b1ec4145ec8d0d0e9db4534624b6be4c1fb", + "shasum": "" + }, + "require": { + "php": ">=5.5", + "simplesamlphp/composer-module-installer": "~1.1", + "simplesamlphp/simplesamlphp-module-ldap": "^0.9" + }, + "require-dev": { + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.15" + }, + "type": "simplesamlphp-module", + "extra": { + "ssp-mixedcase-module-name": "authX509" + }, + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\authX509\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Joost van Dijk", + "email": "Joost.vanDijk@surfnet.nl" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to authenticate users based on X509 client certificates", + "keywords": [ + "simplesamlphp", + "x509" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authx509/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authx509" + }, + "time": "2020-12-15T23:06:47+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-authyubikey", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-authyubikey.git", + "reference": "8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-authyubikey/zipball/8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2", + "reference": "8c27bfeb4981d2e6fa40a831e945f40c5a4ad3d2", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "extra": { + "ssp-mixedcase-module-name": "authYubikey" + }, + "autoload": { + "psr-4": { + "SimpleSAML\\modules\\yubikey\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to authenticate against YubiKey", + "keywords": [ + "authyubikey", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-authyubikey/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-authyubikey" + }, + "time": "2019-12-03T08:52:49+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-cas", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-cas.git", + "reference": "63b72e4600550c507cdfc32fdd208ad59a64321e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-cas/zipball/63b72e4600550c507cdfc32fdd208ad59a64321e", + "reference": "63b72e4600550c507cdfc32fdd208ad59a64321e", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "simplesamlphp/simplesamlphp-module-ldap": "^0.9", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\cas\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "A module that provides CAS authentication", + "keywords": [ + "cas", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-cas/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-cas" + }, + "time": "2019-12-03T09:03:06+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-cdc", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-cdc.git", + "reference": "16a5bfac7299e04e5feb472af328e07598708166" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-cdc/zipball/16a5bfac7299e04e5feb472af328e07598708166", + "reference": "16a5bfac7299e04e5feb472af328e07598708166", + "shasum": "" + }, + "require": { + "simplesamlphp/composer-module-installer": ">=1.1.6" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\cdc\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olav.morken@uninett.no" + }, + { + "name": "Jaime Perez Crespo", + "email": "jaime.perez@uninett.no" + } + ], + "description": "A SimpleSAMLphp module that allows integration with CDC", + "homepage": "https://simplesamlphp.org/", + "keywords": [ + "cdc", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-cdc/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-cdc/" + }, + "time": "2019-12-03T09:04:11+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-consent", + "version": "v0.9.7", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-consent.git", + "reference": "16a347ee4003e2adf415284b334a582e9b8a5717" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-consent/zipball/16a347ee4003e2adf415284b334a582e9b8a5717", + "reference": "16a347ee4003e2adf415284b334a582e9b8a5717", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "webmozart/assert": "<1.6" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\consent\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "lavmrk@gmail.com" + } + ], + "description": "A module that will ask for user consent before releasing attributes", + "keywords": [ + "consent", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-consent/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-consent" + }, + "time": "2021-09-04T19:57:14+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-consentadmin", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin.git", + "reference": "466e8d0d751f0080162d78e63ab2e125b24d17a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-consentadmin/zipball/466e8d0d751f0080162d78e63ab2e125b24d17a1", + "reference": "466e8d0d751f0080162d78e63ab2e125b24d17a1", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "simplesamlphp/simplesamlphp-module-consent": "^0.9", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "extra": { + "ssp-mixedcase-module-name": "consentAdmin" + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Jacob Christiansen", + "email": "jach@wayf.dk" + }, + { + "name": "Olav Morken", + "email": "olav.morken@uninett.no" + } + ], + "description": "A module that allows users to manage their consent", + "keywords": [ + "consentadmin", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-consentadmin" + }, + "time": "2019-12-03T09:06:40+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-discopower", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-discopower.git", + "reference": "006c0617610f1bae11cf4d17e8ce4c509239a60e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-discopower/zipball/006c0617610f1bae11cf4d17e8ce4c509239a60e", + "reference": "006c0617610f1bae11cf4d17e8ce4c509239a60e", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\modules\\discopower\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "Fancy tabbed discovery service with filtering capabilities where SPs can have different sets of metadata listed", + "keywords": [ + "discopower", + "discovery", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-discopower/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-discopower" + }, + "time": "2019-11-27T20:34:37+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-exampleattributeserver", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-exampleattributeserver.git", + "reference": "63e0323e81c32bc3c9eaa01ea45194bb10153708" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-exampleattributeserver/zipball/63e0323e81c32bc3c9eaa01ea45194bb10153708", + "reference": "63e0323e81c32bc3c9eaa01ea45194bb10153708", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\exampleattributeserver\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "An example for SAML attributes queries", + "keywords": [ + "exampleattributeserver", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-exampleattributeserver/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-exampleattributeserver" + }, + "time": "2019-05-28T12:37:15+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-expirycheck", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck.git", + "reference": "59c59cdf87e2679257b46c07bb4c27666a11cc20" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-expirycheck/zipball/59c59cdf87e2679257b46c07bb4c27666a11cc20", + "reference": "59c59cdf87e2679257b46c07bb4c27666a11cc20", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.10" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\expirycheck\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Alex MihiÄinac", + "email": "alexm@arnes.si" + } + ], + "description": "The expirycheck module validates user's expiry date", + "keywords": [ + "expirycheck", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-expirycheck" + }, + "time": "2019-12-14T13:20:46+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-ldap", + "version": "v0.9.12", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-ldap.git", + "reference": "88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-ldap/zipball/88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1", + "reference": "88f2f40eedc27abfc5a9e5b61ae86cd6e86da4e1", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "suggest": { + "ext-ldap": "Needed when using LDAP authentication in SimpleSAMLphp" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\ldap\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that provides authentication against LDAP stores", + "keywords": [ + "ldap", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-ldap/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-ldap" + }, + "time": "2021-09-07T15:21:37+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-memcachemonitor", + "version": "v0.9.2", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-memcachemonitor.git", + "reference": "900b5c6b59913d9013b8dae090841a127ae55ae5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-memcachemonitor/zipball/900b5c6b59913d9013b8dae090841a127ae55ae5", + "reference": "900b5c6b59913d9013b8dae090841a127ae55ae5", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "~0.0.6" + }, + "type": "simplesamlphp-module", + "extra": { + "ssp-mixedcase-module-name": "memcacheMonitor" + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + }, + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able display usage statistics of a memcache(d) store", + "keywords": [ + "memcachemonitor", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-memcachemonitor/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-memcachemonitor" + }, + "time": "2021-01-25T15:44:44+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-memcookie", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie.git", + "reference": "39535304e8d464b7baa1e82cb441fa432947ff57" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-memcookie/zipball/39535304e8d464b7baa1e82cb441fa432947ff57", + "reference": "39535304e8d464b7baa1e82cb441fa432947ff57", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": ">=1.1.6" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.6" + }, + "type": "simplesamlphp-module", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olav.morken@uninett.no" + }, + { + "name": "Jaime Perez Crespo", + "email": "jaime.perez@uninett.no" + } + ], + "description": "A SimpleSAMLphp module that allows integration with Auth MemCookie, allowing web applications written in other languages than PHP to integrate with SimpleSAMLphp.", + "homepage": "https://simplesamlphp.org/", + "keywords": [ + "Auth MemCookie", + "apache", + "cookies", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-memcookie/" + }, + "time": "2019-08-08T18:33:47+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-metarefresh", + "version": "v0.9.6", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-metarefresh.git", + "reference": "e284306a7097297765b5b78a4e28f19f18d4e001" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-metarefresh/zipball/e284306a7097297765b5b78a4e28f19f18d4e001", + "reference": "e284306a7097297765b5b78a4e28f19f18d4e001", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.18" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\metarefresh\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "The metarefresh module will download and parse metadata documents and store them locally", + "keywords": [ + "metarefresh", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-metarefresh/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-metarefresh" + }, + "time": "2020-07-31T14:43:37+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-negotiate", + "version": "v0.9.11", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-negotiate.git", + "reference": "e7c4597110c753a750cd522220fc2a5a34b7c1b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-negotiate/zipball/e7c4597110c753a750cd522220fc2a5a34b7c1b8", + "reference": "e7c4597110c753a750cd522220fc2a5a34b7c1b8", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "simplesamlphp/simplesamlphp-module-ldap": "^0.9", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "sensiolabs/security-checker": "^5.0.3", + "simplesamlphp/simplesamlphp": "dev-testing-1.18", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.14", + "squizlabs/php_codesniffer": "^3.5" + }, + "suggest": { + "ext-krb5": "Needed in case the SimpleSAMLphp negotiate module is used" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\negotiate\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "The Negotiate module implements Microsofts Kerberos SPNEGO mechanism", + "keywords": [ + "negotiate", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-negotiate/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-negotiate" + }, + "time": "2021-05-17T11:01:39+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-oauth", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-oauth.git", + "reference": "2a2433144dca408315e4ee163f9ab73a6110b2b1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-oauth/zipball/2a2433144dca408315e4ee163f9ab73a6110b2b1", + "reference": "2a2433144dca408315e4ee163f9ab73a6110b2b1", + "shasum": "" + }, + "require": { + "simplesamlphp/composer-module-installer": ">=1.1.6" + }, + "require-dev": { + "phpunit/phpunit": "~4.8.36", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\oauth\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olav.morken@uninett.no" + }, + { + "name": "Jaime Perez Crespo", + "email": "jaime.perez@uninett.no" + } + ], + "description": "A SimpleSAMLphp module that allows integration with OAuth1,", + "homepage": "https://simplesamlphp.org/", + "keywords": [ + "oauth1", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-oauth/" + }, + "abandoned": true, + "time": "2021-08-31T18:55:00+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-preprodwarning", + "version": "v0.9.2", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning.git", + "reference": "8e032de33a75eb44857dc06d886ad94ee3af4638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-preprodwarning/zipball/8e032de33a75eb44857dc06d886ad94ee3af4638", + "reference": "8e032de33a75eb44857dc06d886ad94ee3af4638", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "webmozart/assert": "^1.4" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\preprodwarning\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "Display a warning when using a pre-production environment", + "keywords": [ + "preprodwarning", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-preprodwarning" + }, + "time": "2020-04-09T13:05:27+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-radius", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-radius.git", + "reference": "36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-radius/zipball/36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d", + "reference": "36bd0f39f9a13f7eb96ead97c97c3634aa1c3f2d", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.7" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\radius\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "A module that is able perform authentication against a RADIUS server", + "keywords": [ + "radius", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-radius/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-radius" + }, + "time": "2019-10-03T18:13:07+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-riak", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-riak.git", + "reference": "c1a9d9545cb4e05b9205b34624850bb777aca991" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-riak/zipball/c1a9d9545cb4e05b9205b34624850bb777aca991", + "reference": "c1a9d9545cb4e05b9205b34624850bb777aca991", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "phpfastcache/riak-client": "^3.4", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\riak\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Tim van Dijen", + "email": "tvdijen@gmail.com" + } + ], + "description": "A module that is able to store key/value pairs in a Riak store", + "keywords": [ + "riak", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-riak/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-riak" + }, + "time": "2019-12-03T08:28:45+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-sanitycheck", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-sanitycheck.git", + "reference": "15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-sanitycheck/zipball/15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a", + "reference": "15d6664eae73a233c3c4c72fd8a5c2be72b6ed2a", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "~1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\sanitycheck\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "Perform sanity checks on configuration", + "keywords": [ + "sanitycheck", + "simplesamlphp" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-sanitycheck/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-sanitycheck" + }, + "time": "2020-05-07T11:34:29+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-smartattributes", + "version": "v0.9.1", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-smartattributes.git", + "reference": "b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-smartattributes/zipball/b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6", + "reference": "b45d3ecd916e359a9cae05f9ae9df09b5c42f4e6", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\smartattributes\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "The SmartAttributes module provides additional authentication processing filters to manipulate attributes.", + "keywords": [ + "simplesamlphp", + "smartattributes" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-smartattributes/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-smartattributes" + }, + "time": "2019-12-03T09:24:09+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-sqlauth", + "version": "v0.9.3", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-sqlauth.git", + "reference": "c2dc4fc8aa6d8b2408131e09b39f06d8610ff374" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-sqlauth/zipball/c2dc4fc8aa6d8b2408131e09b39f06d8610ff374", + "reference": "c2dc4fc8aa6d8b2408131e09b39f06d8610ff374", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "webmozart/assert": "^1.4 <1.7" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\sqlauth\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Olav Morken", + "email": "olavmrk@gmail.com" + } + ], + "description": "This is a authentication module for authenticating a user against a SQL database", + "keywords": [ + "simplesamlphp", + "sqlauth" + ], + "support": { + "issues": "https://github.com/tvdijen/simplesamlphp-module-sqlauth/issues", + "source": "https://github.com/tvdijen/simplesamlphp-module-sqlauth" + }, + "time": "2021-04-29T16:51:59+00:00" + }, + { + "name": "simplesamlphp/simplesamlphp-module-statistics", + "version": "v0.9.6", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/simplesamlphp-module-statistics.git", + "reference": "03fb6bdbbf5ce0a0cb257208db79aacac227ac10" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/simplesamlphp-module-statistics/zipball/03fb6bdbbf5ce0a0cb257208db79aacac227ac10", + "reference": "03fb6bdbbf5ce0a0cb257208db79aacac227ac10", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "simplesamlphp/composer-module-installer": "~1.1", + "webmozart/assert": "^1.4" + }, + "require-dev": { + "phpunit/phpunit": "~5.7", + "simplesamlphp/simplesamlphp": "^1.17", + "simplesamlphp/simplesamlphp-test-framework": "^0.0.12" + }, + "type": "simplesamlphp-module", + "autoload": { + "psr-4": { + "SimpleSAML\\Module\\statistics\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Andreas Ã…kre Solberg", + "email": "andreas.solberg@uninett.no" + } + ], + "description": "The SimpleSAMLphp statistics module", + "keywords": [ + "simplesamlphp", + "statistics" + ], + "support": { + "issues": "https://github.com/simplesamlphp/simplesamlphp-module-statistics/issues", + "source": "https://github.com/simplesamlphp/simplesamlphp-module-statistics" + }, + "time": "2021-01-25T15:15:26+00:00" + }, + { + "name": "simplesamlphp/twig-configurable-i18n", + "version": "v2.3.4", + "source": { + "type": "git", + "url": "https://github.com/simplesamlphp/twig-configurable-i18n.git", + "reference": "e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/simplesamlphp/twig-configurable-i18n/zipball/e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a", + "reference": "e2bffc7eed3112a0b3870ef5b4da0fd74c7c4b8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "twig/extensions": "@dev" + }, + "require-dev": { + "phpunit/phpunit": "^7.5", + "sensiolabs/security-checker": "~6.0.3", + "simplesamlphp/simplesamlphp-test-framework": "~0.1.2", + "squizlabs/php_codesniffer": "^3.5", + "twig/twig": "^2.13" + }, + "type": "project", + "autoload": { + "psr-4": { + "SimpleSAML\\TwigConfigurableI18n\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1" + ], + "authors": [ + { + "name": "Jaime Perez", + "email": "jaime.perez@uninett.no" + } + ], + "description": "This is an extension on top of Twig's i18n extension, allowing you to customize which functions to use for translations.", + "keywords": [ + "extension", + "gettext", + "i18n", + "internationalization", + "translation", + "twig" + ], + "support": { + "issues": "https://github.com/simplesamlphp/twig-configurable-i18n/issues", + "source": "https://github.com/simplesamlphp/twig-configurable-i18n" + }, + "time": "2020-08-27T12:51:10+00:00" + }, { "name": "squizlabs/php_codesniffer", "version": "3.6.1", @@ -11844,6 +13993,84 @@ ], "time": "2020-03-15T09:38:08+00:00" }, + { + "name": "symfony/config", + "version": "v4.4.30", + "source": { + "type": "git", + "url": "https://github.com/symfony/config.git", + "reference": "d9ea72de055cd822e5228ff898e2aad2f52f76b0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/config/zipball/d9ea72de055cd822e5228ff898e2aad2f52f76b0", + "reference": "d9ea72de055cd822e5228ff898e2aad2f52f76b0", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/filesystem": "^3.4|^4.0|^5.0", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-php80": "^1.16", + "symfony/polyfill-php81": "^1.22" + }, + "conflict": { + "symfony/finder": "<3.4" + }, + "require-dev": { + "symfony/event-dispatcher": "^3.4|^4.0|^5.0", + "symfony/finder": "^3.4|^4.0|^5.0", + "symfony/messenger": "^4.1|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/yaml": "^3.4|^4.0|^5.0" + }, + "suggest": { + "symfony/yaml": "To use the yaml reference dumper" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Config\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/config/tree/v4.4.30" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-04T20:31:23+00:00" + }, { "name": "symfony/console", "version": "v3.4.41", @@ -13085,6 +15312,85 @@ ], "time": "2021-07-28T13:41:28+00:00" }, + { + "name": "symfony/polyfill-php81", + "version": "v1.23.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "e66119f3de95efc359483f810c4c3e6436279436" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/e66119f3de95efc359483f810c4c3e6436279436", + "reference": "e66119f3de95efc359483f810c4c3e6436279436", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php81\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php81/tree/v1.23.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-05-21T13:25:03+00:00" + }, { "name": "symfony/polyfill-util", "version": "v1.17.0", @@ -13831,6 +16137,66 @@ ], "time": "2020-05-11T07:51:54+00:00" }, + { + "name": "twig/extensions", + "version": "v1.5.4", + "source": { + "type": "git", + "url": "https://github.com/twigphp/Twig-extensions.git", + "reference": "57873c8b0c1be51caa47df2cdb824490beb16202" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/Twig-extensions/zipball/57873c8b0c1be51caa47df2cdb824490beb16202", + "reference": "57873c8b0c1be51caa47df2cdb824490beb16202", + "shasum": "" + }, + "require": { + "twig/twig": "^1.27|^2.0" + }, + "require-dev": { + "symfony/phpunit-bridge": "^3.4", + "symfony/translation": "^2.7|^3.4" + }, + "suggest": { + "symfony/translation": "Allow the time_diff output to be translated" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "psr-0": { + "Twig_Extensions_": "lib/" + }, + "psr-4": { + "Twig\\Extensions\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Common additional features for Twig that do not directly belong in core", + "keywords": [ + "i18n", + "text" + ], + "support": { + "issues": "https://github.com/twigphp/Twig-extensions/issues", + "source": "https://github.com/twigphp/Twig-extensions/tree/master" + }, + "abandoned": true, + "time": "2018-12-05T18:34:18+00:00" + }, { "name": "twig/twig", "version": "v1.42.5", @@ -14185,6 +16551,54 @@ }, "time": "2015-12-17T08:42:14+00:00" }, + { + "name": "whitehat101/apr1-md5", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/whitehat101/apr1-md5.git", + "reference": "8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/whitehat101/apr1-md5/zipball/8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819", + "reference": "8b261c9fc0481b4e9fa9d01c6ca70867b5d5e819", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "4.0.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "WhiteHat101\\Crypt\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Ebler", + "email": "jebler@gmail.com" + } + ], + "description": "Apache's APR1-MD5 algorithm in pure PHP", + "homepage": "https://github.com/whitehat101/apr1-md5", + "keywords": [ + "MD5", + "apr1" + ], + "support": { + "issues": "https://github.com/whitehat101/apr1-md5/issues", + "source": "https://github.com/whitehat101/apr1-md5/tree/master" + }, + "time": "2015-02-11T11:06:42+00:00" + }, { "name": "wikimedia/composer-merge-plugin", "version": "v2.0.1", @@ -14429,16 +16843,16 @@ }, { "name": "behat/mink-selenium2-driver", - "version": "v1.4.0", + "version": "v1.5.0", "source": { "type": "git", "url": "https://github.com/minkphp/MinkSelenium2Driver.git", - "reference": "312a967dd527f28980cce40850339cd5316da092" + "reference": "0dee8cceed7e198bf130b4af0fab0ffab6dab47f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/minkphp/MinkSelenium2Driver/zipball/312a967dd527f28980cce40850339cd5316da092", - "reference": "312a967dd527f28980cce40850339cd5316da092", + "url": "https://api.github.com/repos/minkphp/MinkSelenium2Driver/zipball/0dee8cceed7e198bf130b4af0fab0ffab6dab47f", + "reference": "0dee8cceed7e198bf130b4af0fab0ffab6dab47f", "shasum": "" }, "require": { @@ -14452,7 +16866,7 @@ "type": "mink-driver", "extra": { "branch-alias": { - "dev-master": "1.4.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -14477,7 +16891,7 @@ } ], "description": "Selenium2 (WebDriver) driver for Mink framework", - "homepage": "http://mink.behat.org/", + "homepage": "https://mink.behat.org/", "keywords": [ "ajax", "browser", @@ -14488,9 +16902,9 @@ ], "support": { "issues": "https://github.com/minkphp/MinkSelenium2Driver/issues", - "source": "https://github.com/minkphp/MinkSelenium2Driver/tree/v1.4.0" + "source": "https://github.com/minkphp/MinkSelenium2Driver/tree/v1.5.0" }, - "time": "2020-03-11T14:43:21+00:00" + "time": "2021-10-12T16:01:47+00:00" }, { "name": "composer/ca-bundle", -- GitLab From 5c45ec1ccdfe07a8ac87332d573e8c0b1006fe4c Mon Sep 17 00:00:00 2001 From: Dimitra Chatzichrysou <dimitra.chatzichrysou@cern.ch> Date: Wed, 13 Oct 2021 14:10:32 +0200 Subject: [PATCH 24/27] Update core to 8.9.19 --- composer.json | 8 ++++---- composer.lock | 36 ++++++++++++++++++------------------ 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/composer.json b/composer.json index db0d51986..5ea3a4bcc 100644 --- a/composer.json +++ b/composer.json @@ -172,9 +172,9 @@ "drupal/context": "~4.0.0@beta", "drupal/contribute": "1.x-dev@dev", "drupal/cookieconsent": "~1.6.0", - "drupal/core-composer-scaffold": "8.9.18", - "drupal/core-project-message": "8.9.18", - "drupal/core-recommended": "8.9.18", + "drupal/core-composer-scaffold": "8.9.19", + "drupal/core-project-message": "8.9.19", + "drupal/core-recommended": "8.9.19", "drupal/ctools": "~3.6.0", "drupal/devel": "~4.1.1", "drupal/domain_301_redirect": "~1.0.0@alpha", @@ -254,7 +254,7 @@ "wikimedia/composer-merge-plugin": "~2.0.1" }, "require-dev": { - "drupal/core-dev": "~8.9.18", + "drupal/core-dev": "~8.9.19", "zaporylie/composer-drupal-optimizations": "~1.2.0" }, "conflict": { diff --git a/composer.lock b/composer.lock index b26861b91..b5dade0a7 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": "7b94fae12290f1cfd13efdd12185a5f4", + "content-hash": "9bf06055c272575be4024765f1ec60ac", "packages": [ { "name": "asm89/stack-cors", @@ -3310,16 +3310,16 @@ }, { "name": "drupal/core", - "version": "8.9.18", + "version": "8.9.19", "source": { "type": "git", "url": "https://github.com/drupal/core.git", - "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841" + "reference": "96eb83b31d950f020cbc079ab960159c3735a033" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core/zipball/e536176c45d9d75ec57f7a12c0e3c0aead856841", - "reference": "e536176c45d9d75ec57f7a12c0e3c0aead856841", + "url": "https://api.github.com/repos/drupal/core/zipball/96eb83b31d950f020cbc079ab960159c3735a033", + "reference": "96eb83b31d950f020cbc079ab960159c3735a033", "shasum": "" }, "require": { @@ -3538,13 +3538,13 @@ ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", "support": { - "source": "https://github.com/drupal/core/tree/8.9.18" + "source": "https://github.com/drupal/core/tree/8.9.19" }, - "time": "2021-08-12T17:48:42+00:00" + "time": "2021-09-14T22:08:18+00:00" }, { "name": "drupal/core-composer-scaffold", - "version": "8.9.18", + "version": "8.9.19", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", @@ -3588,13 +3588,13 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.5" + "source": "https://github.com/drupal/core-composer-scaffold/tree/8.9.4" }, "time": "2020-08-07T22:30:30+00:00" }, { "name": "drupal/core-project-message", - "version": "8.9.18", + "version": "8.9.19", "source": { "type": "git", "url": "https://github.com/drupal/core-project-message.git", @@ -3629,22 +3629,22 @@ "drupal" ], "support": { - "source": "https://github.com/drupal/core-project-message/tree/8.9.18" + "source": "https://github.com/drupal/core-project-message/tree/8.9.4" }, "time": "2020-08-02T22:04:49+00:00" }, { "name": "drupal/core-recommended", - "version": "8.9.18", + "version": "8.9.19", "source": { "type": "git", "url": "https://github.com/drupal/core-recommended.git", - "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c" + "reference": "880335bafeeba6d29454053bd24f253a219c2cfc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal/core-recommended/zipball/71839bb9799b70f449b76294b461877ba1e9ff2c", - "reference": "71839bb9799b70f449b76294b461877ba1e9ff2c", + "url": "https://api.github.com/repos/drupal/core-recommended/zipball/880335bafeeba6d29454053bd24f253a219c2cfc", + "reference": "880335bafeeba6d29454053bd24f253a219c2cfc", "shasum": "" }, "require": { @@ -3656,7 +3656,7 @@ "doctrine/common": "v2.7.3", "doctrine/inflector": "v1.2.0", "doctrine/lexer": "1.0.2", - "drupal/core": "8.9.18", + "drupal/core": "8.9.19", "easyrdf/easyrdf": "0.9.1", "egulias/email-validator": "2.1.17", "guzzlehttp/guzzle": "6.5.4", @@ -3714,9 +3714,9 @@ ], "description": "Locked core dependencies; require this project INSTEAD OF drupal/core.", "support": { - "source": "https://github.com/drupal/core-recommended/tree/8.9.18" + "source": "https://github.com/drupal/core-recommended/tree/8.9.19" }, - "time": "2021-08-12T17:48:42+00:00" + "time": "2021-09-14T22:08:18+00:00" }, { "name": "drupal/ctools", -- GitLab From f9c7dafc17f1daa59335fac16fce9222e4e62b3c Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Mon, 18 Oct 2021 11:04:01 +0200 Subject: [PATCH 25/27] Add cern-taxonomies --- composer.json | 47 +++- composer.lock | 634 +++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 648 insertions(+), 33 deletions(-) diff --git a/composer.json b/composer.json index 5ea3a4bcc..884b4e94b 100644 --- a/composer.json +++ b/composer.json @@ -27,6 +27,50 @@ "type": "vcs", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/paragraph-types" }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-taxonomies.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_configuration.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_basic_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_event_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_faq_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_feature_story_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_news_pages.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_resource_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_story_page.git" + }, + { + "type": "vcs", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_system_page.git" + }, { "type": "vcs", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-components" @@ -157,6 +201,7 @@ "drupal/cern-loading": "~2.1.2", "drupal/cern-paragraph-types": "~2.2.3", "drupal/cern-profile-displayname": "~2.1.1", + "drupal/cern-taxonomies": "^2.0", "drupal/cern-theme": "~2.7.0", "drupal/cern-toolbar": "~2.2.3", "drupal/cern-webcast-feeds": "~2.0.4", @@ -238,7 +283,7 @@ "drupal/ui_patterns": "~1.2.0", "drupal/upgrade_status": "~3.11", "drupal/userprotect": "~1.1.0", - "drupal/views_bulk_operations": "~4.0.0", + "drupal/views_bulk_operations": "~2.6", "drupal/views_slideshow": "~4.8.0", "drupal/views_taxonomy_term_name_depth": "~7.0.2", "drupal/viewsreference": "~1.7.0", diff --git a/composer.lock b/composer.lock index b5dade0a7..011d0a12d 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": "9bf06055c272575be4024765f1ec60ac", + "content-hash": "b7f2a84347dd8d0573c1a6b5be07ea60", "packages": [ { "name": "asm89/stack-cors", @@ -2181,6 +2181,46 @@ "description": "Base theme of all CERN Drupal themes", "time": "2021-05-12T08:35:11+00:00" }, + { + "name": "drupal/cern-basic-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_basic_page.git", + "reference": "f359ea7ae685db04dbd2eeb7c8dd476fe193c675" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/color_field": "^2.4", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/easy_breadcrumb": "^1.15", + "drupal/entity_reference_revisions": "^1.8", + "drupal/field_formatter_class": "^1.5", + "drupal/filefield_paths": "^1.0", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/smart_trim": "^1.3", + "drupal/viewsreference": "^1.7" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides Basic Page content type and related configuration. Content type for creating basic page nodes.", + "time": "2021-05-28T12:42:32+00:00" + }, { "name": "drupal/cern-cds-media", "version": "2.1.4", @@ -2231,6 +2271,49 @@ "description": "Defines a set of re-usable patterns for the CERN Drupal infrastructure", "time": "2021-02-08T15:28:34+00:00" }, + { + "name": "drupal/cern-configuration", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_configuration.git", + "reference": "18eea689c94b1b219c3d7d6ef0110df8937308c7" + }, + "require": { + "drupal/cern-basic-page": "^2.0.1", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-event-page": "^2.0.1", + "drupal/cern-faq-page": "^2.0.1", + "drupal/cern-feature-story-page": "^2.0.1", + "drupal/cern-indico-feeds": "^2.0.5", + "drupal/cern-landing-page": "^2.2.4", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-resource-page": "^2.0.1", + "drupal/cern-story-page": "^2.0.1", + "drupal/cern-system-page": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/cern-webcast-feeds": "^2.0.4", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/field_formatter_class": "^1.5", + "drupal/filefield_paths": "^1.0", + "drupal/social_media": "^1.8", + "drupal/views_taxonomy_term_name_depth": "^7.0.1" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides the default configuration for CERN Home Website.", + "time": "2021-05-28T12:44:21+00:00" + }, { "name": "drupal/cern-dev-status", "version": "2.0.5", @@ -2297,6 +2380,127 @@ "description": "Creates the welcome message block for CERN Drupal websites", "time": "2021-02-11T13:36:40+00:00" }, + { + "name": "drupal/cern-event-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_event_page.git", + "reference": "82770e501c111f52a0bb567afdd55d725de9a285" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-basic-page": "^2.0.1", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-faq-page": "^2.0.1", + "drupal/cern-indico-feeds": "^2.0.5", + "drupal/cern-landing-page": "^2.2.4", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-resource-page": "^2.0.1", + "drupal/cern-system-page": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/cern-webcast-feeds": "^2.0.4", + "drupal/ctools": "^3.6", + "drupal/date_popup": "^1.1", + "drupal/ds": "^3.9", + "drupal/feeds": "^3.0", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/smart_trim": "^1.3", + "drupal/social_media": "^1.8" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides Event Page content type and related configuration. Content type for creating event nodes.", + "time": "2021-05-28T12:51:23+00:00" + }, + { + "name": "drupal/cern-faq-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_faq_page.git", + "reference": "abbe0a378af58e901ab7cf76ae740b790c8836f4" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/smart_trim": "^1.3", + "drupal/social_media": "^1.8" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides FAQ Page content type and related configuration. Content type for creating FAQ nodes", + "time": "2021-05-28T14:01:34+00:00" + }, + { + "name": "drupal/cern-feature-story-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_feature_story_page.git", + "reference": "fdb86aab49a40777af7ef3ce158276a53d9d98b3" + }, + "require": { + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-resource-page": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/ds": "^3.9", + "drupal/entity_reference_revisions": "^1.9", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/paragraphs": "^1.12", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/social_media": "^1.8", + "drupal/views_taxonomy_term_name_depth": "^7.0.1" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides Feature Story content type and related configuration. Content type for creating feature article nodes.", + "time": "2021-05-28T14:17:25+00:00" + }, { "name": "drupal/cern-full-html-format", "version": "2.0.4", @@ -2394,7 +2598,7 @@ "version": "2.2.4", "source": { "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page.git", "reference": "a6aa2903393d64b341900aa65c3e160afd39752f" }, "require": { @@ -2469,6 +2673,49 @@ "description": "Adds the loader animation on CERN Drupal sites", "time": "2021-01-14T09:07:39+00:00" }, + { + "name": "drupal/cern-news-pages", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_news_pages.git", + "reference": "70716b05082f10691348c0ecac8aee97549cfc74" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-feature-story-page": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-story-page": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/entity_reference_revisions": "^1.9", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/jcarousel": "^4.0", + "drupal/paragraphs": "^1.12", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/social_media": "^1.8", + "drupal/views_bulk_operations": "^2.6", + "drupal/views_taxonomy_term_name_depth": "^7.0.1" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides News Page content type and related configuration. Content type for creating news nodes.", + "time": "2021-05-28T12:46:51+00:00" + }, { "name": "drupal/cern-paragraph-types", "version": "2.2.3", @@ -2519,6 +2766,166 @@ "description": "Overrides user login names with the fullname attribute. Enables redirection to Profiles site.", "time": "2021-10-01T12:42:57+00:00" }, + { + "name": "drupal/cern-resource-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_resource_page.git", + "reference": "a6a720ea22775ea24184c77f0c03c5c4d2aa39de" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-event-page": "^2.0.1", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/entity_reference_revisions": "^1.9", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/paragraphs": "^1.12", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/views_taxonomy_term_name_depth": "^7.0.1" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides Resource Page content type and related configuration. Content type for creating resource nodes.", + "time": "2021-05-28T12:54:21+00:00" + }, + { + "name": "drupal/cern-story-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_story_page.git", + "reference": "cc03a53dffd7ad25c9172782f0ad2f570f50607e" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-basic-page": "^2.0.1", + "drupal/cern-cds-media": "^2.1.4", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-event-page": "^2.0.1", + "drupal/cern-faq-page": "^2.0.1", + "drupal/cern-feature-story-page": "^2.0.1", + "drupal/cern-indico-feeds": "^2.0.5", + "drupal/cern-landing-page": "^2.2.4", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-resource-page": "^2.0.1", + "drupal/cern-system-page": "^2.0.1", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/cern-webcast-feeds": "^2.0.4", + "drupal/ds": "^3.9", + "drupal/entity_reference_revisions": "^1.9", + "drupal/feeds": "^3.0", + "drupal/field_formatter_class": "^1.5", + "drupal/field_group": "^3.1", + "drupal/filefield_paths": "^1.0", + "drupal/paragraphs": "^1.12", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3", + "drupal/social_media": "^1.8" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides Story Page content type for creating long pages using Web Components.", + "time": "2021-05-28T14:11:00+00:00" + }, + { + "name": "drupal/cern-system-page", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_system_page.git", + "reference": "a79ed959c28e70104fa8eefa341a251e3f60e2ce" + }, + "require": { + "drupal/allowed_formats": "^1.3", + "drupal/cern-components": "^2.7.13", + "drupal/cern-taxonomies": "^2.0.1", + "drupal/ds": "^3.9", + "drupal/field_group": "^3.1", + "drupal/pathauto": "^1.8", + "drupal/scheduler": "^1.3" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides System Page content type and related configuration. Content type for creating system nodes.", + "time": "2021-05-28T14:12:59+00:00" + }, + { + "name": "drupal/cern-taxonomies", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-taxonomies.git", + "reference": "bceb47d9a540b21d4e34c13b2ca809e5ada1b5ff" + }, + "require": { + "drupal/cern-basic-page": "^2.0.1", + "drupal/cern-configuration": "^2.0.1", + "drupal/cern-event-page": "^2.0.1", + "drupal/cern-faq-page": "^2.0.1", + "drupal/cern-feature-story-page": "^2.0.1", + "drupal/cern-indico-feeds": "^2.0.5", + "drupal/cern-landing-page": "^2.2.4", + "drupal/cern-news-pages": "^2.0.1", + "drupal/cern-paragraph-types": "^2.2.3", + "drupal/cern-resource-page": "^2.0.1", + "drupal/cern-story-page": "^2.0.1", + "drupal/cern-system-page": "^2.0.1", + "drupal/cern-webcast-feeds": "^2.0.4", + "drupal/ctools": "^3.6", + "drupal/ds": "^3.9", + "drupal/field_formatter_class": "^1.5", + "drupal/filefield_paths": "^1.0", + "drupal/pathauto": "^1.8", + "drupal/smart_trim": "^1.3" + }, + "type": "drupal-custom-module", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Konstantinos Platis", + "email": "konstantinos.platis@cern.ch" + } + ], + "description": "Provides a set of pre-defined taxonomy terms, specially designed for the needs of CERN websites.", + "time": "2021-05-28T12:49:13+00:00" + }, { "name": "drupal/cern-theme", "version": "2.7.0", @@ -3885,6 +4292,54 @@ "source": "https://git.drupalcode.org/project/ctools" } }, + { + "name": "drupal/date_popup", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/date_popup.git", + "reference": "8.x-1.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/date_popup-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "b877b29cf11414e600b154eeea5c9078e0b125c6" + }, + "require": { + "drupal/core": "^8 || ^9" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.1", + "datestamp": "1591849806", + "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": "benjy", + "homepage": "https://www.drupal.org/user/1852732" + }, + { + "name": "larowlan", + "homepage": "https://www.drupal.org/user/395439" + } + ], + "description": "Provides a HTML 5 date popup for all views filters.", + "homepage": "https://www.drupal.org/project/date_popup", + "support": { + "source": "https://git.drupalcode.org/project/date_popup" + } + }, { "name": "drupal/devel", "version": "4.1.1", @@ -5588,6 +6043,74 @@ "issues": "https://www.drupal.org/project/issues/imce?version=8.x" } }, + { + "name": "drupal/jcarousel", + "version": "4.0.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/jcarousel.git", + "reference": "8.x-4.0" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/jcarousel-8.x-4.0.zip", + "reference": "8.x-4.0", + "shasum": "62b91427f95d4a482fa1f9b32ec6a422eea046ee" + }, + "require": { + "drupal/core": "^8" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-4.0", + "datestamp": "1492072743", + "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": "RobLoach", + "homepage": "https://www.drupal.org/user/61114" + }, + { + "name": "mangy.fox", + "homepage": "https://www.drupal.org/user/2513442" + }, + { + "name": "markpavlitski", + "homepage": "https://www.drupal.org/user/2438878" + }, + { + "name": "mfer", + "homepage": "https://www.drupal.org/user/25701" + }, + { + "name": "niko-", + "homepage": "https://www.drupal.org/user/1409266" + }, + { + "name": "quicksketch", + "homepage": "https://www.drupal.org/user/35821" + }, + { + "name": "voleger", + "homepage": "https://www.drupal.org/user/3260314" + } + ], + "description": "Create jQuery-based carousel rotators.", + "homepage": "https://www.drupal.org/project/jcarousel", + "support": { + "source": "https://git.drupalcode.org/project/jcarousel" + } + }, { "name": "drupal/jquery_ui", "version": "1.4.0", @@ -7706,6 +8229,58 @@ "issues": "https://drupal.org/project/issues/smart_trim" } }, + { + "name": "drupal/social_media", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/social_media.git", + "reference": "8.x-1.8" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/social_media-8.x-1.8.zip", + "reference": "8.x-1.8", + "shasum": "aaf92e087e5d3c4c6907b00b5dbb66b05eb5cda2" + }, + "require": { + "drupal/core": "^8", + "drupal/token": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.8", + "datestamp": "1581591836", + "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": "Takim Islam", + "homepage": "http://drupalsharing.com/", + "role": "Maintainer" + }, + { + "name": "Jack Over", + "homepage": "https://www.drupal.org/user/252386", + "role": "Maintainer" + } + ], + "description": "Share current page to social media", + "homepage": "https://drupal.org/project/social_media", + "support": { + "source": "http://cgit.drupalcode.org/social_media", + "issues": "https://www.drupal.org/project/issues/social_media" + } + }, { "name": "drupal/sophron", "version": "1.1.0", @@ -8113,7 +8688,7 @@ "extra": { "drupal": { "version": "8.x-3.11", - "datestamp": "1632233523", + "datestamp": "1632233579", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8219,32 +8794,26 @@ }, { "name": "drupal/views_bulk_operations", - "version": "4.0.0", + "version": "2.6.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/views_bulk_operations.git", - "reference": "4.0.0" + "reference": "8.x-2.6" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-4.0.0.zip", - "reference": "4.0.0", - "shasum": "d5bb4afeaaead0b8ebc7dd9e1fc6aac464aff4b1" + "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-8.x-2.6.zip", + "reference": "8.x-2.6", + "shasum": "517b671adb55c3ad023032607d360dab77db9f22" }, "require": { - "drupal/core": "^8.8 || ^9" - }, - "require-dev": { - "drush/drush": "^10" - }, - "suggest": { - "drush/drush": "^9 || ^10" + "drupal/core": "~8.5" }, "type": "drupal-module", "extra": { "drupal": { - "version": "4.0.0", - "datestamp": "1625650987", + "version": "8.x-2.6", + "datestamp": "1580924749", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8252,13 +8821,13 @@ }, "drush": { "services": { - "drush.services.yml": "^9 || ^10" + "drush.services.yml": "^9" } } }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0-or-later" + "GPL-2.0+" ], "authors": [ { @@ -8285,7 +8854,7 @@ "description": "Adds an ability to perform bulk operations on selected entities from view results. Provides an API to create such operations.", "homepage": "https://www.drupal.org/project/views_bulk_operations", "support": { - "source": "https://git.drupalcode.org/project/views_bulk_operations/-/tree/8.x-3.x", + "source": "https://git.drupalcode.org/project/views_bulk_operations", "issues": "https://www.drupal.org/project/issues/views_bulk_operations?version=8.x", "docs": "https://www.drupal.org/docs/8/modules/views-bulk-operations-vbo" } @@ -9524,16 +10093,16 @@ }, { "name": "graham-campbell/result-type", - "version": "v1.0.2", + "version": "v1.0.3", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "84afea85c6841deeea872f36249a206e878a5de0" + "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/84afea85c6841deeea872f36249a206e878a5de0", - "reference": "84afea85c6841deeea872f36249a206e878a5de0", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/296c015dc30ec4322168c5ad3ee5cc11dae827ac", + "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac", "shasum": "" }, "require": { @@ -9569,7 +10138,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.2" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.3" }, "funding": [ { @@ -9581,7 +10150,7 @@ "type": "tidelift" } ], - "time": "2021-08-28T21:34:50+00:00" + "time": "2021-10-17T19:48:54+00:00" }, { "name": "grasmash/expander", @@ -17446,16 +18015,16 @@ }, { "name": "instaclick/php-webdriver", - "version": "1.4.9", + "version": "1.4.10", "source": { "type": "git", "url": "https://github.com/instaclick/php-webdriver.git", - "reference": "961b12178cb71f8667afaf2f66ab3e000e060e1c" + "reference": "6bc1f44cf23031e68c326cd61e14ec32486f241b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/instaclick/php-webdriver/zipball/961b12178cb71f8667afaf2f66ab3e000e060e1c", - "reference": "961b12178cb71f8667afaf2f66ab3e000e060e1c", + "url": "https://api.github.com/repos/instaclick/php-webdriver/zipball/6bc1f44cf23031e68c326cd61e14ec32486f241b", + "reference": "6bc1f44cf23031e68c326cd61e14ec32486f241b", "shasum": "" }, "require": { @@ -17503,9 +18072,9 @@ ], "support": { "issues": "https://github.com/instaclick/php-webdriver/issues", - "source": "https://github.com/instaclick/php-webdriver/tree/1.4.9" + "source": "https://github.com/instaclick/php-webdriver/tree/1.4.10" }, - "time": "2021-06-28T22:23:20+00:00" + "time": "2021-10-14T03:25:34+00:00" }, { "name": "jcalderonzumba/gastonjs", @@ -19139,6 +19708,7 @@ "type": "github" } ], + "abandoned": true, "time": "2020-11-30T07:30:19+00:00" }, { -- GitLab From 38226b470b8254d5d517beef073d80a70d9d24b4 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <konstantinos.samaras-tsakiris@cern.ch> Date: Mon, 18 Oct 2021 17:00:12 +0200 Subject: [PATCH 26/27] Revert "Add cern-taxonomies" This reverts commit f9c7dafc17f1daa59335fac16fce9222e4e62b3c. --- composer.json | 47 +--- composer.lock | 634 +++----------------------------------------------- 2 files changed, 33 insertions(+), 648 deletions(-) diff --git a/composer.json b/composer.json index 884b4e94b..5ea3a4bcc 100644 --- a/composer.json +++ b/composer.json @@ -27,50 +27,6 @@ "type": "vcs", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/paragraph-types" }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-taxonomies.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_configuration.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_basic_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_event_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_faq_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_feature_story_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_news_pages.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_resource_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_story_page.git" - }, - { - "type": "vcs", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_system_page.git" - }, { "type": "vcs", "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-components" @@ -201,7 +157,6 @@ "drupal/cern-loading": "~2.1.2", "drupal/cern-paragraph-types": "~2.2.3", "drupal/cern-profile-displayname": "~2.1.1", - "drupal/cern-taxonomies": "^2.0", "drupal/cern-theme": "~2.7.0", "drupal/cern-toolbar": "~2.2.3", "drupal/cern-webcast-feeds": "~2.0.4", @@ -283,7 +238,7 @@ "drupal/ui_patterns": "~1.2.0", "drupal/upgrade_status": "~3.11", "drupal/userprotect": "~1.1.0", - "drupal/views_bulk_operations": "~2.6", + "drupal/views_bulk_operations": "~4.0.0", "drupal/views_slideshow": "~4.8.0", "drupal/views_taxonomy_term_name_depth": "~7.0.2", "drupal/viewsreference": "~1.7.0", diff --git a/composer.lock b/composer.lock index 011d0a12d..b5dade0a7 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": "b7f2a84347dd8d0573c1a6b5be07ea60", + "content-hash": "9bf06055c272575be4024765f1ec60ac", "packages": [ { "name": "asm89/stack-cors", @@ -2181,46 +2181,6 @@ "description": "Base theme of all CERN Drupal themes", "time": "2021-05-12T08:35:11+00:00" }, - { - "name": "drupal/cern-basic-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_basic_page.git", - "reference": "f359ea7ae685db04dbd2eeb7c8dd476fe193c675" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/color_field": "^2.4", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/easy_breadcrumb": "^1.15", - "drupal/entity_reference_revisions": "^1.8", - "drupal/field_formatter_class": "^1.5", - "drupal/filefield_paths": "^1.0", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/smart_trim": "^1.3", - "drupal/viewsreference": "^1.7" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides Basic Page content type and related configuration. Content type for creating basic page nodes.", - "time": "2021-05-28T12:42:32+00:00" - }, { "name": "drupal/cern-cds-media", "version": "2.1.4", @@ -2271,49 +2231,6 @@ "description": "Defines a set of re-usable patterns for the CERN Drupal infrastructure", "time": "2021-02-08T15:28:34+00:00" }, - { - "name": "drupal/cern-configuration", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_configuration.git", - "reference": "18eea689c94b1b219c3d7d6ef0110df8937308c7" - }, - "require": { - "drupal/cern-basic-page": "^2.0.1", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-event-page": "^2.0.1", - "drupal/cern-faq-page": "^2.0.1", - "drupal/cern-feature-story-page": "^2.0.1", - "drupal/cern-indico-feeds": "^2.0.5", - "drupal/cern-landing-page": "^2.2.4", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-resource-page": "^2.0.1", - "drupal/cern-story-page": "^2.0.1", - "drupal/cern-system-page": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/cern-webcast-feeds": "^2.0.4", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/field_formatter_class": "^1.5", - "drupal/filefield_paths": "^1.0", - "drupal/social_media": "^1.8", - "drupal/views_taxonomy_term_name_depth": "^7.0.1" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides the default configuration for CERN Home Website.", - "time": "2021-05-28T12:44:21+00:00" - }, { "name": "drupal/cern-dev-status", "version": "2.0.5", @@ -2380,127 +2297,6 @@ "description": "Creates the welcome message block for CERN Drupal websites", "time": "2021-02-11T13:36:40+00:00" }, - { - "name": "drupal/cern-event-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_event_page.git", - "reference": "82770e501c111f52a0bb567afdd55d725de9a285" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-basic-page": "^2.0.1", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-faq-page": "^2.0.1", - "drupal/cern-indico-feeds": "^2.0.5", - "drupal/cern-landing-page": "^2.2.4", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-resource-page": "^2.0.1", - "drupal/cern-system-page": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/cern-webcast-feeds": "^2.0.4", - "drupal/ctools": "^3.6", - "drupal/date_popup": "^1.1", - "drupal/ds": "^3.9", - "drupal/feeds": "^3.0", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/smart_trim": "^1.3", - "drupal/social_media": "^1.8" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides Event Page content type and related configuration. Content type for creating event nodes.", - "time": "2021-05-28T12:51:23+00:00" - }, - { - "name": "drupal/cern-faq-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_faq_page.git", - "reference": "abbe0a378af58e901ab7cf76ae740b790c8836f4" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/smart_trim": "^1.3", - "drupal/social_media": "^1.8" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides FAQ Page content type and related configuration. Content type for creating FAQ nodes", - "time": "2021-05-28T14:01:34+00:00" - }, - { - "name": "drupal/cern-feature-story-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_feature_story_page.git", - "reference": "fdb86aab49a40777af7ef3ce158276a53d9d98b3" - }, - "require": { - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-resource-page": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/ds": "^3.9", - "drupal/entity_reference_revisions": "^1.9", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/paragraphs": "^1.12", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/social_media": "^1.8", - "drupal/views_taxonomy_term_name_depth": "^7.0.1" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides Feature Story content type and related configuration. Content type for creating feature article nodes.", - "time": "2021-05-28T14:17:25+00:00" - }, { "name": "drupal/cern-full-html-format", "version": "2.0.4", @@ -2598,7 +2394,7 @@ "version": "2.2.4", "source": { "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page.git", + "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-landing-page", "reference": "a6aa2903393d64b341900aa65c3e160afd39752f" }, "require": { @@ -2673,49 +2469,6 @@ "description": "Adds the loader animation on CERN Drupal sites", "time": "2021-01-14T09:07:39+00:00" }, - { - "name": "drupal/cern-news-pages", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_news_pages.git", - "reference": "70716b05082f10691348c0ecac8aee97549cfc74" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-feature-story-page": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-story-page": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/entity_reference_revisions": "^1.9", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/jcarousel": "^4.0", - "drupal/paragraphs": "^1.12", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/social_media": "^1.8", - "drupal/views_bulk_operations": "^2.6", - "drupal/views_taxonomy_term_name_depth": "^7.0.1" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides News Page content type and related configuration. Content type for creating news nodes.", - "time": "2021-05-28T12:46:51+00:00" - }, { "name": "drupal/cern-paragraph-types", "version": "2.2.3", @@ -2766,166 +2519,6 @@ "description": "Overrides user login names with the fullname attribute. Enables redirection to Profiles site.", "time": "2021-10-01T12:42:57+00:00" }, - { - "name": "drupal/cern-resource-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_resource_page.git", - "reference": "a6a720ea22775ea24184c77f0c03c5c4d2aa39de" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-event-page": "^2.0.1", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/entity_reference_revisions": "^1.9", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/paragraphs": "^1.12", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/views_taxonomy_term_name_depth": "^7.0.1" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides Resource Page content type and related configuration. Content type for creating resource nodes.", - "time": "2021-05-28T12:54:21+00:00" - }, - { - "name": "drupal/cern-story-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_story_page.git", - "reference": "cc03a53dffd7ad25c9172782f0ad2f570f50607e" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-basic-page": "^2.0.1", - "drupal/cern-cds-media": "^2.1.4", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-event-page": "^2.0.1", - "drupal/cern-faq-page": "^2.0.1", - "drupal/cern-feature-story-page": "^2.0.1", - "drupal/cern-indico-feeds": "^2.0.5", - "drupal/cern-landing-page": "^2.2.4", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-resource-page": "^2.0.1", - "drupal/cern-system-page": "^2.0.1", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/cern-webcast-feeds": "^2.0.4", - "drupal/ds": "^3.9", - "drupal/entity_reference_revisions": "^1.9", - "drupal/feeds": "^3.0", - "drupal/field_formatter_class": "^1.5", - "drupal/field_group": "^3.1", - "drupal/filefield_paths": "^1.0", - "drupal/paragraphs": "^1.12", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3", - "drupal/social_media": "^1.8" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides Story Page content type for creating long pages using Web Components.", - "time": "2021-05-28T14:11:00+00:00" - }, - { - "name": "drupal/cern-system-page", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern_system_page.git", - "reference": "a79ed959c28e70104fa8eefa341a251e3f60e2ce" - }, - "require": { - "drupal/allowed_formats": "^1.3", - "drupal/cern-components": "^2.7.13", - "drupal/cern-taxonomies": "^2.0.1", - "drupal/ds": "^3.9", - "drupal/field_group": "^3.1", - "drupal/pathauto": "^1.8", - "drupal/scheduler": "^1.3" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides System Page content type and related configuration. Content type for creating system nodes.", - "time": "2021-05-28T14:12:59+00:00" - }, - { - "name": "drupal/cern-taxonomies", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://gitlab.cern.ch/web-team/drupal/public/d8/modules/cern-taxonomies.git", - "reference": "bceb47d9a540b21d4e34c13b2ca809e5ada1b5ff" - }, - "require": { - "drupal/cern-basic-page": "^2.0.1", - "drupal/cern-configuration": "^2.0.1", - "drupal/cern-event-page": "^2.0.1", - "drupal/cern-faq-page": "^2.0.1", - "drupal/cern-feature-story-page": "^2.0.1", - "drupal/cern-indico-feeds": "^2.0.5", - "drupal/cern-landing-page": "^2.2.4", - "drupal/cern-news-pages": "^2.0.1", - "drupal/cern-paragraph-types": "^2.2.3", - "drupal/cern-resource-page": "^2.0.1", - "drupal/cern-story-page": "^2.0.1", - "drupal/cern-system-page": "^2.0.1", - "drupal/cern-webcast-feeds": "^2.0.4", - "drupal/ctools": "^3.6", - "drupal/ds": "^3.9", - "drupal/field_formatter_class": "^1.5", - "drupal/filefield_paths": "^1.0", - "drupal/pathauto": "^1.8", - "drupal/smart_trim": "^1.3" - }, - "type": "drupal-custom-module", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Konstantinos Platis", - "email": "konstantinos.platis@cern.ch" - } - ], - "description": "Provides a set of pre-defined taxonomy terms, specially designed for the needs of CERN websites.", - "time": "2021-05-28T12:49:13+00:00" - }, { "name": "drupal/cern-theme", "version": "2.7.0", @@ -4292,54 +3885,6 @@ "source": "https://git.drupalcode.org/project/ctools" } }, - { - "name": "drupal/date_popup", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/date_popup.git", - "reference": "8.x-1.1" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/date_popup-8.x-1.1.zip", - "reference": "8.x-1.1", - "shasum": "b877b29cf11414e600b154eeea5c9078e0b125c6" - }, - "require": { - "drupal/core": "^8 || ^9" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-1.1", - "datestamp": "1591849806", - "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": "benjy", - "homepage": "https://www.drupal.org/user/1852732" - }, - { - "name": "larowlan", - "homepage": "https://www.drupal.org/user/395439" - } - ], - "description": "Provides a HTML 5 date popup for all views filters.", - "homepage": "https://www.drupal.org/project/date_popup", - "support": { - "source": "https://git.drupalcode.org/project/date_popup" - } - }, { "name": "drupal/devel", "version": "4.1.1", @@ -6043,74 +5588,6 @@ "issues": "https://www.drupal.org/project/issues/imce?version=8.x" } }, - { - "name": "drupal/jcarousel", - "version": "4.0.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/jcarousel.git", - "reference": "8.x-4.0" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/jcarousel-8.x-4.0.zip", - "reference": "8.x-4.0", - "shasum": "62b91427f95d4a482fa1f9b32ec6a422eea046ee" - }, - "require": { - "drupal/core": "^8" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-4.0", - "datestamp": "1492072743", - "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": "RobLoach", - "homepage": "https://www.drupal.org/user/61114" - }, - { - "name": "mangy.fox", - "homepage": "https://www.drupal.org/user/2513442" - }, - { - "name": "markpavlitski", - "homepage": "https://www.drupal.org/user/2438878" - }, - { - "name": "mfer", - "homepage": "https://www.drupal.org/user/25701" - }, - { - "name": "niko-", - "homepage": "https://www.drupal.org/user/1409266" - }, - { - "name": "quicksketch", - "homepage": "https://www.drupal.org/user/35821" - }, - { - "name": "voleger", - "homepage": "https://www.drupal.org/user/3260314" - } - ], - "description": "Create jQuery-based carousel rotators.", - "homepage": "https://www.drupal.org/project/jcarousel", - "support": { - "source": "https://git.drupalcode.org/project/jcarousel" - } - }, { "name": "drupal/jquery_ui", "version": "1.4.0", @@ -8229,58 +7706,6 @@ "issues": "https://drupal.org/project/issues/smart_trim" } }, - { - "name": "drupal/social_media", - "version": "1.8.0", - "source": { - "type": "git", - "url": "https://git.drupalcode.org/project/social_media.git", - "reference": "8.x-1.8" - }, - "dist": { - "type": "zip", - "url": "https://ftp.drupal.org/files/projects/social_media-8.x-1.8.zip", - "reference": "8.x-1.8", - "shasum": "aaf92e087e5d3c4c6907b00b5dbb66b05eb5cda2" - }, - "require": { - "drupal/core": "^8", - "drupal/token": "*" - }, - "type": "drupal-module", - "extra": { - "drupal": { - "version": "8.x-1.8", - "datestamp": "1581591836", - "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": "Takim Islam", - "homepage": "http://drupalsharing.com/", - "role": "Maintainer" - }, - { - "name": "Jack Over", - "homepage": "https://www.drupal.org/user/252386", - "role": "Maintainer" - } - ], - "description": "Share current page to social media", - "homepage": "https://drupal.org/project/social_media", - "support": { - "source": "http://cgit.drupalcode.org/social_media", - "issues": "https://www.drupal.org/project/issues/social_media" - } - }, { "name": "drupal/sophron", "version": "1.1.0", @@ -8688,7 +8113,7 @@ "extra": { "drupal": { "version": "8.x-3.11", - "datestamp": "1632233579", + "datestamp": "1632233523", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8794,26 +8219,32 @@ }, { "name": "drupal/views_bulk_operations", - "version": "2.6.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://git.drupalcode.org/project/views_bulk_operations.git", - "reference": "8.x-2.6" + "reference": "4.0.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-8.x-2.6.zip", - "reference": "8.x-2.6", - "shasum": "517b671adb55c3ad023032607d360dab77db9f22" + "url": "https://ftp.drupal.org/files/projects/views_bulk_operations-4.0.0.zip", + "reference": "4.0.0", + "shasum": "d5bb4afeaaead0b8ebc7dd9e1fc6aac464aff4b1" }, "require": { - "drupal/core": "~8.5" + "drupal/core": "^8.8 || ^9" + }, + "require-dev": { + "drush/drush": "^10" + }, + "suggest": { + "drush/drush": "^9 || ^10" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-2.6", - "datestamp": "1580924749", + "version": "4.0.0", + "datestamp": "1625650987", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -8821,13 +8252,13 @@ }, "drush": { "services": { - "drush.services.yml": "^9" + "drush.services.yml": "^9 || ^10" } } }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0+" + "GPL-2.0-or-later" ], "authors": [ { @@ -8854,7 +8285,7 @@ "description": "Adds an ability to perform bulk operations on selected entities from view results. Provides an API to create such operations.", "homepage": "https://www.drupal.org/project/views_bulk_operations", "support": { - "source": "https://git.drupalcode.org/project/views_bulk_operations", + "source": "https://git.drupalcode.org/project/views_bulk_operations/-/tree/8.x-3.x", "issues": "https://www.drupal.org/project/issues/views_bulk_operations?version=8.x", "docs": "https://www.drupal.org/docs/8/modules/views-bulk-operations-vbo" } @@ -10093,16 +9524,16 @@ }, { "name": "graham-campbell/result-type", - "version": "v1.0.3", + "version": "v1.0.2", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac" + "reference": "84afea85c6841deeea872f36249a206e878a5de0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/296c015dc30ec4322168c5ad3ee5cc11dae827ac", - "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/84afea85c6841deeea872f36249a206e878a5de0", + "reference": "84afea85c6841deeea872f36249a206e878a5de0", "shasum": "" }, "require": { @@ -10138,7 +9569,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.3" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.2" }, "funding": [ { @@ -10150,7 +9581,7 @@ "type": "tidelift" } ], - "time": "2021-10-17T19:48:54+00:00" + "time": "2021-08-28T21:34:50+00:00" }, { "name": "grasmash/expander", @@ -18015,16 +17446,16 @@ }, { "name": "instaclick/php-webdriver", - "version": "1.4.10", + "version": "1.4.9", "source": { "type": "git", "url": "https://github.com/instaclick/php-webdriver.git", - "reference": "6bc1f44cf23031e68c326cd61e14ec32486f241b" + "reference": "961b12178cb71f8667afaf2f66ab3e000e060e1c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/instaclick/php-webdriver/zipball/6bc1f44cf23031e68c326cd61e14ec32486f241b", - "reference": "6bc1f44cf23031e68c326cd61e14ec32486f241b", + "url": "https://api.github.com/repos/instaclick/php-webdriver/zipball/961b12178cb71f8667afaf2f66ab3e000e060e1c", + "reference": "961b12178cb71f8667afaf2f66ab3e000e060e1c", "shasum": "" }, "require": { @@ -18072,9 +17503,9 @@ ], "support": { "issues": "https://github.com/instaclick/php-webdriver/issues", - "source": "https://github.com/instaclick/php-webdriver/tree/1.4.10" + "source": "https://github.com/instaclick/php-webdriver/tree/1.4.9" }, - "time": "2021-10-14T03:25:34+00:00" + "time": "2021-06-28T22:23:20+00:00" }, { "name": "jcalderonzumba/gastonjs", @@ -19708,7 +19139,6 @@ "type": "github" } ], - "abandoned": true, "time": "2020-11-30T07:30:19+00:00" }, { -- GitLab From eeef8d598035aed8ae2d45d46eaf3d6bbdf141d7 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Wed, 20 Oct 2021 15:45:20 +0200 Subject: [PATCH 27/27] Backport redis --- composer.json | 1 + composer.lock | 74 +++++++++++++++++-- images/Dockerfile-composerbuilder | 9 ++- .../enable-or-disable-redis.sh | 22 ++++++ images/nginx/config/default.conf | 38 +++++++--- images/settings.php | 8 +- images/softwareVersions | 2 +- 7 files changed, 131 insertions(+), 23 deletions(-) create mode 100644 images/drupal-operations-scripts/enable-or-disable-redis.sh diff --git a/composer.json b/composer.json index 5ea3a4bcc..8efa2499a 100644 --- a/composer.json +++ b/composer.json @@ -226,6 +226,7 @@ "drupal/piwik": "~1.4.0", "drupal/recaptcha": "~3.0.0", "drupal/redirect": "~1.6.0", + "drupal/redis": "~1.5.0", "drupal/require_login": "~2.4.0", "drupal/rules": "3.x-dev", "drupal/scheduler": "~1.3.0", diff --git a/composer.lock b/composer.lock index b5dade0a7..5b5c84b9b 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": "9bf06055c272575be4024765f1ec60ac", + "content-hash": "67d04180287d95ddb2792eea83823efc", "packages": [ { "name": "asm89/stack-cors", @@ -7336,6 +7336,62 @@ "source": "https://git.drupalcode.org/project/redirect" } }, + { + "name": "drupal/redis", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/redis.git", + "reference": "8.x-1.5" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/redis-8.x-1.5.zip", + "reference": "8.x-1.5", + "shasum": "4283333dc2bf405045765b83ca662acc409a6543" + }, + "require": { + "drupal/core": "^8.8 || ^9" + }, + "suggest": { + "predis/predis": "^1.1.1" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.5", + "datestamp": "1609972488", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "autoload": { + "psr-4": { + "Drupal\\redis\\": "src" + } + }, + "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": "pounard", + "homepage": "https://www.drupal.org/user/240164" + } + ], + "description": "Integration of Drupal with the Redis key-value store.", + "homepage": "https://www.drupal.org/project/redis", + "support": { + "source": "https://git.drupalcode.org/project/redis" + } + }, { "name": "drupal/require_login", "version": "2.4.0", @@ -17974,16 +18030,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", + "version": "5.3.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", "shasum": "" }, "require": { @@ -17994,7 +18050,8 @@ "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.2" + "mockery/mockery": "~1.3.2", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -18024,9 +18081,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/master" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" }, - "time": "2020-09-03T19:13:55+00:00" + "time": "2021-10-19T17:43:47+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -19139,6 +19196,7 @@ "type": "github" } ], + "abandoned": true, "time": "2020-11-30T07:30:19+00:00" }, { diff --git a/images/Dockerfile-composerbuilder b/images/Dockerfile-composerbuilder index 3dc51978a..030f6b689 100644 --- a/images/Dockerfile-composerbuilder +++ b/images/Dockerfile-composerbuilder @@ -15,7 +15,7 @@ LABEL maintainer="Drupal Admins <drupal-admins@cern.ch>" \ # from https://github.com/docker-library/docs/blob/master/php/README.md#supported-tags-and-respective-dockerfile-links # install some utils RUN apk --update add \ - # Some composer packages need git + # Some composer packages need git git \ patch \ curl \ @@ -47,7 +47,13 @@ RUN set -eux; \ mysql-client \ ; \ \ + # install redis + pecl install -o -f redis \ + ; \ rm -rf /tmp/pear \ + ; \ + docker-php-ext-enable redis \ + ; \ \ docker-php-ext-configure gd \ @@ -74,6 +80,7 @@ RUN set -eux; \ RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer --version=${COMPOSER_VERSION} + # Install nginx on php-fpm. At this point in the Dockerfile PHP/composer is installed. Now we're also adding nginx. # We add nginx in the same image to eliminate the need to copy the sitebuilder to an empty dir on pod startup. # diff --git a/images/drupal-operations-scripts/enable-or-disable-redis.sh b/images/drupal-operations-scripts/enable-or-disable-redis.sh new file mode 100644 index 000000000..5d052582d --- /dev/null +++ b/images/drupal-operations-scripts/enable-or-disable-redis.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +# Enable redis if it's a critical site +if [[ -z "${ENABLE_REDIS}" ]]; then + echo "ENABLE_REDIS module not set. Therefore uninstalling redis module." + drush cr + drush pm:uninstall -y redis + drush cr + drush pm:list | grep redis | grep Disabled + if [ $? -ne "0" ]; then + exit 1 + fi +else + echo "ENABLE_REDIS module is set. Therefore enabling redis module." + drush cr + drush pm:enable -y redis + drush cr + drush pm:list | grep redis | grep Enabled + if [ $? -ne "0" ]; then + exit 1 + fi +fi diff --git a/images/nginx/config/default.conf b/images/nginx/config/default.conf index 6f6a66f59..8242829cf 100644 --- a/images/nginx/config/default.conf +++ b/images/nginx/config/default.conf @@ -5,6 +5,8 @@ upstream webdav { server unix:/var/run/webdav.sock; } +#proxy_cache_path /var/cache/nginx keys_zone=one:10m max_size=200m; + server { #listen 8080 ssl; listen 8080; @@ -16,9 +18,34 @@ server { root /app/web; + # Add gzip compression + gzip on; + gzip_vary on; + gzip_min_length 1000; + gzip_comp_level 5; + gzip_types application/json text/css text/javascript application/x-javascript application/javascript image/svg+xml; + gzip_proxied any; + + sendfile on; + keepalive_timeout 25; + + etag off; + # Disables specifying the port in absolute redirects port_in_redirect off; + location / { + # try_files $uri @rewrite; # For Drupal <= 6 + try_files $uri /index.php?$query_string; # For Drupal >= 7 + } + + # https://drupal.stackexchange.com/questions/192151/cannot-install-any-theme + rewrite ^/core/authorize.php/core/authorize.php(.*)$ /core/authorize.php$1; + + location @rewrite { + rewrite ^/(.*)$ /index.php?q=$1; + } + location = /favicon.ico { log_not_found off; access_log off; @@ -108,15 +135,6 @@ server { return 403; } - location / { - # try_files $uri @rewrite; # For Drupal <= 6 - try_files $uri /index.php?$query_string; # For Drupal >= 7 - } - - location @rewrite { - rewrite ^/(.*)$ /index.php?q=$1; - } - # Don't allow direct access to PHP files in the vendor directory. location ~ /vendor/.*\.php$ { deny all; @@ -167,7 +185,7 @@ server { location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { try_files $uri @rewrite; expires max; + access_log off; log_not_found off; } - } diff --git a/images/settings.php b/images/settings.php index eecb09fd8..174171892 100644 --- a/images/settings.php +++ b/images/settings.php @@ -65,9 +65,11 @@ // Set Redis as the default backend for any cache bin not otherwise specified. $settings['cache']['default'] = 'cache.backend.redis'; $settings['redis.connection']['interface'] = 'PhpRedis'; - $settings['redis.connection']['host'] = 'redis.' . getenv('NAMESPACE') . '.svc.cluster.local'; + //$settings['redis.connection']['host'] = 'redis.' . getenv('NAMESPACE') . '.svc.cluster.local'; + $settings['redis.connection']['host'] = getenv('REDIS_SERVICE_HOST'); $settings['redis.connection']['port'] = getenv('REDIS_SERVICE_PORT'); - + // NOTE: env `REDIS_PASSWORD` needs to be manually exposed + $settings['redis.connection']['password'] = getenv('REDIS_PASSWORD'); // Allow the services to work before the Redis module itself is enabled. $settings['container_yamls'][] = 'modules/contrib/redis/redis.services.yml'; // Manually add the classloader path, this is required for the container cache bin definition below @@ -148,4 +150,4 @@ // $databases['default']['default']['init_commands']['isolation'] = "SET SESSION tx_isolation='READ-COMMITTED'"; $databases['default']['default']['init_commands']['lock_wait_timeout'] = "SET SESSION innodb_lock_wait_timeout = 20"; $databases['default']['default']['init_commands']['wait_timeout'] = "SET SESSION wait_timeout = 600"; -// } \ No newline at end of file +// } diff --git a/images/softwareVersions b/images/softwareVersions index d7693f5d2..82f94cabf 100644 --- a/images/softwareVersions +++ b/images/softwareVersions @@ -4,4 +4,4 @@ nginx: '1.20.1' composer: '2.1.8' php: '7.3.23-fpm-alpine3.12' # This is instead the version of the composer builder that the sitebuilder will use. -composerBuilderTag: 'master-RELEASE-2021.10.06T01-02-31Z' +composerBuilderTag: 'perf-nginx-merge-bd2f8032' -- GitLab