diff --git a/.gitattributes b/.gitattributes index c69345c17..4b640b060 100644 --- a/.gitattributes +++ b/.gitattributes @@ -35,6 +35,7 @@ hookdoc-conf.json export-ignore LICENSE.md export-ignore package-lock.json export-ignore package.json export-ignore +phpcs-compat.xml.dist export-ignore phpcs.xml.dist export-ignore phpstan.neon.dist export-ignore phpunit.xml.dist export-ignore diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index a75908f2c..a5823eb24 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -42,7 +42,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v1 + uses: github/codeql-action/init@v3 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -53,7 +53,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v1 + uses: github/codeql-action/autobuild@v3 # ℹī¸ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -67,4 +67,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 + uses: github/codeql-action/analyze@v3 diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 59c096836..54bb0e7be 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -19,6 +19,7 @@ jobs: - {name: 'WP latest', version: 'latest'} - {name: 'WP minimum', version: 'WordPress/WordPress#6.1'} - {name: 'WP trunk', version: 'WordPress/WordPress#master'} + steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml index bbb2ff8e8..ff98e80c2 100644 --- a/.github/workflows/dependency-review.yml +++ b/.github/workflows/dependency-review.yml @@ -16,6 +16,7 @@ jobs: steps: - name: 'Checkout Repository' uses: actions/checkout@v4 + - name: Dependency Review uses: actions/dependency-review-action@v4 with: diff --git a/.github/workflows/eslint.yml b/.github/workflows/eslint.yml new file mode 100644 index 000000000..43cd143f2 --- /dev/null +++ b/.github/workflows/eslint.yml @@ -0,0 +1,49 @@ +name: JS Linting + +on: + push: + branches: + - develop + - trunk + paths: + - '**.js' + - '**.json' + pull_request: + branches: + - develop + paths: + - '**.js' + - '**.json' + +jobs: + eslint: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup node and npm cache + uses: actions/setup-node@v4 + with: + node-version-file: .nvmrc + cache: npm + + - name: Install Node dependencies + run: npm ci --omit=optional + + - name: Get updated JS files + id: changed-files + uses: tj-actions/changed-files@v45 + with: + files: | + **/*.js + **/*.json + + - name: Run JS linting + run: | + if [[ "${{ steps.changed-files.outputs.any_changed }}" == 'true' && "${{ github.event_name }}" == "pull_request" ]]; then + npx wp-scripts lint-js ${{ steps.changed-files.outputs.all_changed_files }} + elif [[ "${{ github.event_name }}" == "push" ]]; then + npm run lint:js + fi diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index 0ddd4f95e..000000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,107 +0,0 @@ -name: Linting - -env: - COMPOSER_VERSION: "2" - COMPOSER_CACHE: "${{ github.workspace }}/.composer-cache" - -on: - push: - branches: - - develop - - trunk - pull_request: - branches: - - develop - -jobs: - eslint: - name: eslint - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - - name: Setup node - uses: actions/setup-node@v4 - with: - node-version-file: .nvmrc - cache: npm - - - name: Install node dependencies - run: npm ci --no-optional - - - name: Get updated JS files - id: changed-files - uses: tj-actions/changed-files@v45 - with: - files: | - **/*.js - **/*.json - - - name: Run JS linting - run: | - if [[ "${{ steps.changed-files.outputs.any_changed }}" == 'true' && "${{ github.event_name }}" == "pull_request" ]]; then - npx wp-scripts lint-js ${{ steps.changed-files.outputs.all_changed_files }} - elif [[ "${{ github.event_name }}" == "push" ]]; then - npm run lint:js - fi - - phpcs: - name: phpcs - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set standard cache directories - run: | - composer config -g cache-dir "${{ env.COMPOSER_CACHE }}" - - - name: Prepare composer cache - uses: actions/cache@v4 - with: - path: ${{ env.COMPOSER_CACHE }} - key: composer-${{ env.COMPOSER_VERSION }}-${{ hashFiles('**/composer.lock') }} - restore-keys: | - composer-${{ env.COMPOSER_VERSION }}- - - - name: Set PHP version - uses: shivammathur/setup-php@v2 - with: - php-version: '7.4' - coverage: none - tools: composer:v2 - - - name: Install dependencies - run: composer install - - - name: Get updated PHP files - id: changed-files - uses: tj-actions/changed-files@v45 - with: - files: | - **/*.php - - - name: PHPCS check - run: | - if [[ "${{ steps.changed-files.outputs.any_changed }}" == 'true' && "${{ github.event_name }}" == "pull_request" ]]; then - ./vendor/bin/phpcs ${{ steps.changed-files.outputs.all_changed_files }} -s --runtime-set testVersion 7.4- - elif [[ "${{ github.event_name }}" == "push" ]]; then - ./vendor/bin/phpcs . -s --runtime-set testVersion 7.4- - fi - - vipcs: - name: vipcs - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: VIPCS check - uses: 10up/wpcs-action@stable - with: - enable_warnings: true - standard: 'WordPress-VIP-Go' - excludes: 'tests' diff --git a/.github/workflows/php-compat.yml b/.github/workflows/php-compat.yml new file mode 100644 index 000000000..dc16eed32 --- /dev/null +++ b/.github/workflows/php-compat.yml @@ -0,0 +1,44 @@ +name: PHP Compatibility + +on: + push: + branches: + - develop + - trunk + paths: + - "**.php" + pull_request: + branches: + - develop + paths: + - "**.php" + +jobs: + php-compatibility: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup proper PHP version + uses: shivammathur/setup-php@v2 + with: + php-version: 7.4 + + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + + - name: Cache dependencies + uses: actions/cache@v4 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + + - name: Install dependencies + run: composer install --prefer-dist + + - name: Run PHP Compatibility + run: ./vendor/bin/phpcs --standard=./phpcs-compat.xml.dist -p . diff --git a/.github/workflows/phpcs.yml b/.github/workflows/phpcs.yml new file mode 100644 index 000000000..07f356104 --- /dev/null +++ b/.github/workflows/phpcs.yml @@ -0,0 +1,68 @@ +name: PHP Linting + +on: + push: + branches: + - develop + - trunk + paths: + - "**.php" + pull_request: + branches: + - develop + paths: + - "**.php" + +jobs: + phpcs: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup proper PHP version + uses: shivammathur/setup-php@v2 + with: + php-version: 7.4 + + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + + - name: Cache dependencies + uses: actions/cache@v4 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + + - name: Get changed files + id: changed-files + uses: tj-actions/changed-files@v45 + with: + files: | + **/*.php + + - name: Install dependencies + run: composer install --prefer-dist + + - name: Run PHP_CodeSniffer + run: | + HEAD_REF=$(git rev-parse HEAD) + git checkout $HEAD_REF + ./vendor/bin/phpcs-changed -s --git --git-base origin/${{ github.base_ref }} ${{ steps.changed-files.outputs.all_changed_files }} + + vipcs: + name: vipcs + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: VIPCS check + uses: 10up/wpcs-action@stable + with: + enable_warnings: true + standard: 'WordPress-VIP-Go' + excludes: 'tests' diff --git a/.github/workflows/phpstan.yml b/.github/workflows/phpstan.yml index 69188b856..60aa5408c 100644 --- a/.github/workflows/phpstan.yml +++ b/.github/workflows/phpstan.yml @@ -5,12 +5,15 @@ on: branches: - develop - trunk + paths: + - "**.php" pull_request: branches: - develop + paths: + - "**.php" jobs: - phpstan: name: PHPStan runs-on: ubuntu-latest @@ -26,6 +29,19 @@ jobs: coverage: none tools: composer:v2 + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + + - name: Cache dependencies + id: cache-composer + uses: actions/cache@v4 + env: + cache-name: cache-composer + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/composer.lock') }} + - name: Install dependencies run: composer install diff --git a/.github/workflows/test.yml b/.github/workflows/phpunit.yml similarity index 61% rename from .github/workflows/test.yml rename to .github/workflows/phpunit.yml index 7e1066fd6..58d842adf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/phpunit.yml @@ -1,19 +1,17 @@ name: PHPUnit Tests -env: - COMPOSER_VERSION: "2" - COMPOSER_CACHE: "${{ github.workspace }}/.composer-cache" - on: - schedule: - - cron: '0 0 * * *' push: branches: - develop - trunk + paths: + - "**.php" pull_request: branches: - develop + paths: + - "**.php" jobs: phpunit: @@ -29,19 +27,20 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - name: Set standard 10up cache directories - run: | - composer config -g cache-dir "${{ env.COMPOSER_CACHE }}" + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Prepare composer cache + - name: Cache dependencies + id: cache-composer uses: actions/cache@v4 + env: + cache-name: cache-composer with: - path: ${{ env.COMPOSER_CACHE }} - key: composer-${{ env.COMPOSER_VERSION }}-${{ hashFiles('**/composer.lock') }} - restore-keys: | - composer-${{ env.COMPOSER_VERSION }}- + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/composer.lock') }} - - uses: getong/mariadb-action@v1.1 + - uses: getong/mariadb-action@v1 - name: Set PHP version uses: shivammathur/setup-php@v2 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 03e5b4d17..a49a97a3c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,11 +8,12 @@ jobs: release: name: New release runs-on: ubuntu-latest + steps: - name: Checkout uses: actions/checkout@v4 - - name: Set Node.js 16.x + - name: Setup node uses: actions/setup-node@v4 with: node-version-file: .nvmrc @@ -22,7 +23,7 @@ jobs: npm install npm run build npm run makepot - composer install --no-dev + composer install --no-dev -o npm run archive - name: Upload release asset @@ -31,6 +32,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} - asset_path: ${{github.workspace}}/classifai.zip + asset_path: ${{ github.workspace }}/classifai.zip asset_name: classifai.zip asset_content_type: application/zip diff --git a/.github/workflows/repo-automator.yml b/.github/workflows/repo-automator.yml index 3caa63dc3..93ddaf647 100644 --- a/.github/workflows/repo-automator.yml +++ b/.github/workflows/repo-automator.yml @@ -19,6 +19,7 @@ on: jobs: Validate: runs-on: ubuntu-latest + steps: - uses: 10up/action-repo-automator@trunk with: diff --git a/.github/workflows/stable.yml b/.github/workflows/stable.yml index c71c849fc..1b7f26943 100644 --- a/.github/workflows/stable.yml +++ b/.github/workflows/stable.yml @@ -1,26 +1,32 @@ name: Release to Stable + on: push: branches: - trunk + jobs: release: name: Push (merge) to trunk runs-on: ubuntu-latest + steps: - name: Checkout uses: actions/checkout@v4 - - name: Set Node.js 16.x + + - name: Setup node uses: actions/setup-node@v4 with: node-version-file: .nvmrc + - name: npm install and build run: | npm install npm run build npm run makepot - composer install --no-dev + composer install --no-dev -o npm run archive + - name: Release to Stable uses: s0/git-publish-subdir-action@develop env: @@ -29,10 +35,12 @@ jobs: FOLDER: release GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} MESSAGE: 'Release: ({sha}) {msg}' + - name: Build docs run: npm run build:docs + - name: Deploy docs update - uses: peaceiris/actions-gh-pages@v3 + uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: './docs' diff --git a/.github/workflows/wordpress-version-checker.yml b/.github/workflows/wordpress-version-checker.yml index 4a4d096b5..12c83022f 100644 --- a/.github/workflows/wordpress-version-checker.yml +++ b/.github/workflows/wordpress-version-checker.yml @@ -1,4 +1,5 @@ name: "WordPress version checker" + on: push: branches: @@ -18,6 +19,6 @@ jobs: runs-on: ubuntu-latest steps: - name: WordPress version checker - uses: skaut/wordpress-version-checker@v2.0.0 + uses: skaut/wordpress-version-checker@v2.2.1 with: repo-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/composer.json b/composer.json index 6fce92d6b..0dac86242 100644 --- a/composer.json +++ b/composer.json @@ -33,7 +33,9 @@ "phpstan/extension-installer": "1.4.x-dev", "php-stubs/wp-cli-stubs": "dev-master", "johnbillion/wp-compat": "dev-trunk", - "phpstan/phpstan-deprecation-rules": "1.2.x-dev" + "phpstan/phpstan-deprecation-rules": "1.2.x-dev", + "sirbrillig/phpcs-changed": "^2.11", + "phpcompatibility/php-compatibility": "dev-develop as 9.99.99" }, "scripts": { "lint": "phpcs -s . --runtime-set testVersion 7.4-", diff --git a/composer.lock b/composer.lock index 9681127d0..ffd4004e4 100644 --- a/composer.lock +++ b/composer.lock @@ -4,20 +4,20 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2f9c2cc632c25b6e192ec4d8273e23a7", + "content-hash": "1dc4287becbbe3caba8b978b569b4c99", "packages": [ { "name": "aws/aws-crt-php", - "version": "v1.2.4", + "version": "v1.2.6", "source": { "type": "git", "url": "https://github.com/awslabs/aws-crt-php.git", - "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2" + "reference": "a63485b65b6b3367039306496d49737cf1995408" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/eb0c6e4e142224a10b08f49ebf87f32611d162b2", - "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2", + "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/a63485b65b6b3367039306496d49737cf1995408", + "reference": "a63485b65b6b3367039306496d49737cf1995408", "shasum": "" }, "require": { @@ -56,22 +56,22 @@ ], "support": { "issues": "https://github.com/awslabs/aws-crt-php/issues", - "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.4" + "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.6" }, - "time": "2023-11-08T00:42:13+00:00" + "time": "2024-06-13T17:21:28+00:00" }, { "name": "aws/aws-sdk-php", - "version": "3.300.13", + "version": "3.322.6", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "b1eb7307d30ebcfa4e156971f658c2d177434db3" + "reference": "ae7b0edab466c3440fe007c07cb62ae32a4dbfca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/b1eb7307d30ebcfa4e156971f658c2d177434db3", - "reference": "b1eb7307d30ebcfa4e156971f658c2d177434db3", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/ae7b0edab466c3440fe007c07cb62ae32a4dbfca", + "reference": "ae7b0edab466c3440fe007c07cb62ae32a4dbfca", "shasum": "" }, "require": { @@ -124,7 +124,10 @@ ], "psr-4": { "Aws\\": "src/" - } + }, + "exclude-from-classmap": [ + "src/data/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -151,9 +154,9 @@ "support": { "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.300.13" + "source": "https://github.com/aws/aws-sdk-php/tree/3.322.6" }, - "time": "2024-03-07T19:14:04+00:00" + "time": "2024-09-26T18:12:45+00:00" }, { "name": "composer/ca-bundle", @@ -161,24 +164,24 @@ "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "3ce240142f6d59b808dd65c1f52f7a1c252e6cfd" + "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/3ce240142f6d59b808dd65c1f52f7a1c252e6cfd", - "reference": "3ce240142f6d59b808dd65c1f52f7a1c252e6cfd", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/48a792895a2b7a6ee65dd5442c299d7b835b6137", + "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137", "shasum": "" }, "require": { "ext-openssl": "*", "ext-pcre": "*", - "php": "^5.3.2 || ^7.0 || ^8.0" + "php": "^7.2 || ^8.0" }, "require-dev": { - "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 || ^7.0" + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^8 || ^9", + "psr/log": "^1.0 || ^2.0 || ^3.0", + "symfony/process": "^4.0 || ^5.0 || ^6.0 || ^7.0" }, "default-branch": true, "type": "library", @@ -214,7 +217,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.4.1" + "source": "https://github.com/composer/ca-bundle/tree/1.5.2" }, "funding": [ { @@ -230,7 +233,7 @@ "type": "tidelift" } ], - "time": "2024-02-23T10:16:52+00:00" + "time": "2024-09-25T07:49:53+00:00" }, { "name": "guzzlehttp/guzzle", @@ -238,18 +241,18 @@ "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "41042bc7ab002487b876a0683fc8dce04ddce104" + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104", - "reference": "41042bc7ab002487b876a0683fc8dce04ddce104", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5.3 || ^2.0.1", - "guzzlehttp/psr7": "^1.9.1 || ^2.5.1", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -260,9 +263,9 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", "ext-curl": "*", - "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "guzzle/client-integration-tests": "3.0.2", "php-http/message-factory": "^1.1", - "phpunit/phpunit": "^8.5.36 || ^9.6.15", + "phpunit/phpunit": "^8.5.39 || ^9.6.20", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -270,6 +273,7 @@ "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr/log": "Required for using the Log middleware" }, + "default-branch": true, "type": "library", "extra": { "bamarni-bin": { @@ -340,7 +344,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.8.1" + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" }, "funding": [ { @@ -356,7 +360,7 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:35:24+00:00" + "time": "2024-07-24T11:22:20+00:00" }, { "name": "guzzlehttp/promises", @@ -364,12 +368,12 @@ "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223" + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223", - "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223", + "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", "shasum": "" }, "require": { @@ -377,7 +381,7 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", - "phpunit/phpunit": "^8.5.36 || ^9.6.15" + "phpunit/phpunit": "^8.5.39 || ^9.6.20" }, "default-branch": true, "type": "library", @@ -424,7 +428,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.0.2" + "source": "https://github.com/guzzle/promises/tree/2.0.3" }, "funding": [ { @@ -440,20 +444,20 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:19:20+00:00" + "time": "2024-07-18T10:29:17+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.6.x-dev", + "version": "2.7.x-dev", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221" + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221", - "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", "shasum": "" }, "require": { @@ -468,8 +472,8 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.36 || ^9.6.15" + "http-interop/http-factory-tests": "0.9.0", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" @@ -541,7 +545,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.6.2" + "source": "https://github.com/guzzle/psr7/tree/2.7.0" }, "funding": [ { @@ -557,7 +561,7 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:05:35+00:00" + "time": "2024-07-18T11:15:46+00:00" }, { "name": "mtdowling/jmespath.php", @@ -565,12 +569,12 @@ "source": { "type": "git", "url": "https://github.com/jmespath/jmespath.php.git", - "reference": "b243cacd2a9803b4cbc259246aa5081208238c10" + "reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/b243cacd2a9803b4cbc259246aa5081208238c10", - "reference": "b243cacd2a9803b4cbc259246aa5081208238c10", + "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/a2a865e05d5f420b50cc2f85bb78d565db12a6bc", + "reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc", "shasum": "" }, "require": { @@ -588,7 +592,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.7-dev" + "dev-master": "2.8-dev" } }, "autoload": { @@ -622,9 +626,9 @@ ], "support": { "issues": "https://github.com/jmespath/jmespath.php/issues", - "source": "https://github.com/jmespath/jmespath.php/tree/master" + "source": "https://github.com/jmespath/jmespath.php/tree/2.8.0" }, - "time": "2023-11-30T16:26:47+00:00" + "time": "2024-09-04T18:46:31+00:00" }, { "name": "psr/http-client", @@ -681,23 +685,22 @@ }, { "name": "psr/http-factory", - "version": "dev-master", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6" + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/7037f4b0950474e9d1350e8df89b15f1842085f6", - "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", "shasum": "" }, "require": { - "php": ">=7.0.0", + "php": ">=7.1", "psr/http-message": "^1.0 || ^2.0" }, - "default-branch": true, "type": "library", "extra": { "branch-alias": { @@ -733,7 +736,7 @@ "support": { "source": "https://github.com/php-fig/http-factory" }, - "time": "2023-09-22T11:16:44+00:00" + "time": "2024-04-15T12:06:14+00:00" }, { "name": "psr/http-message", @@ -839,12 +842,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d" + "reference": "d36279a5a4bc7f3ca2c412839f10d7c0aa2c1a02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/d36279a5a4bc7f3ca2c412839f10d7c0aa2c1a02", + "reference": "d36279a5a4bc7f3ca2c412839f10d7c0aa2c1a02", "shasum": "" }, "require": { @@ -898,7 +901,7 @@ "type": "tidelift" } ], - "time": "2023-01-24T14:02:46+00:00" + "time": "2024-04-18T08:26:06+00:00" }, { "name": "symfony/polyfill-mbstring", @@ -906,16 +909,16 @@ "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec" + "reference": "2369cb908b33d7b7518cce042615de430142497f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/2369cb908b33d7b7518cce042615de430142497f", + "reference": "2369cb908b33d7b7518cce042615de430142497f", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=7.2" }, "provide": { "ext-mbstring": "*" @@ -963,7 +966,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/1.x" }, "funding": [ { @@ -979,7 +982,7 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-09-10T14:38:51+00:00" }, { "name": "ua-parser/uap-php", @@ -1182,32 +1185,32 @@ }, { "name": "automattic/vipwpcs", - "version": "3.0.0", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/Automattic/VIP-Coding-Standards.git", - "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd" + "reference": "2b1d206d81b74ed999023cffd924f862ff2753c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", - "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", + "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/2b1d206d81b74ed999023cffd924f862ff2753c8", + "reference": "2b1d206d81b74ed999023cffd924f862ff2753c8", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsextra": "^1.1.0", - "phpcsstandards/phpcsutils": "^1.0.8", - "sirbrillig/phpcs-variable-analysis": "^2.11.17", - "squizlabs/php_codesniffer": "^3.7.2", - "wp-coding-standards/wpcs": "^3.0" + "phpcsstandards/phpcsextra": "^1.2.1", + "phpcsstandards/phpcsutils": "^1.0.11", + "sirbrillig/phpcs-variable-analysis": "^2.11.18", + "squizlabs/php_codesniffer": "^3.9.2", + "wp-coding-standards/wpcs": "^3.1.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9", "phpcsstandards/phpcsdevtools": "^1.0", - "phpunit/phpunit": "^4 || ^5 || ^6 || ^7" + "phpunit/phpunit": "^4 || ^5 || ^6 || ^7 || ^8 || ^9" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -1232,7 +1235,7 @@ "source": "https://github.com/Automattic/VIP-Coding-Standards", "wiki": "https://github.com/Automattic/VIP-Coding-Standards/wiki" }, - "time": "2023-09-05T11:01:05+00:00" + "time": "2024-05-10T20:31:09+00:00" }, { "name": "dealerdirect/phpcodesniffer-composer-installer", @@ -1388,12 +1391,12 @@ "source": { "type": "git", "url": "https://github.com/johnbillion/wp-compat.git", - "reference": "580cc09bdadd0922bd9de5d4e02fcc39c2ad342c" + "reference": "a50ffabab53c576a576a10c7111349fb04734b40" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/johnbillion/wp-compat/zipball/580cc09bdadd0922bd9de5d4e02fcc39c2ad342c", - "reference": "580cc09bdadd0922bd9de5d4e02fcc39c2ad342c", + "url": "https://api.github.com/repos/johnbillion/wp-compat/zipball/a50ffabab53c576a576a10c7111349fb04734b40", + "reference": "a50ffabab53c576a576a10c7111349fb04734b40", "shasum": "" }, "require": { @@ -1457,7 +1460,7 @@ "type": "github" } ], - "time": "2024-09-09T23:34:34+00:00" + "time": "2024-09-26T20:32:25+00:00" }, { "name": "myclabs/deep-copy", @@ -1465,12 +1468,12 @@ "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "2f5294676c802a62b0549f6bc8983f14294ce369" + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/2f5294676c802a62b0549f6bc8983f14294ce369", - "reference": "2f5294676c802a62b0549f6bc8983f14294ce369", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", "shasum": "" }, "require": { @@ -1510,7 +1513,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.x" + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" }, "funding": [ { @@ -1518,20 +1521,20 @@ "type": "tidelift" } ], - "time": "2024-02-10T11:10:03+00:00" + "time": "2024-06-12T14:39:25+00:00" }, { "name": "nikic/php-parser", - "version": "dev-master", + "version": "v5.2.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13" + "reference": "23c79fbbfb725fb92af9bcf41065c8e9a0d49ddb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/139676794dc1e9231bf7bcd123cfc0c99182cb13", - "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/23c79fbbfb725fb92af9bcf41065c8e9a0d49ddb", + "reference": "23c79fbbfb725fb92af9bcf41065c8e9a0d49ddb", "shasum": "" }, "require": { @@ -1542,9 +1545,8 @@ }, "require-dev": { "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + "phpunit/phpunit": "^9.0" }, - "default-branch": true, "bin": [ "bin/php-parse" ], @@ -1575,9 +1577,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.0.2" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.2.0" }, - "time": "2024-03-05T20:51:40+00:00" + "time": "2024-09-15T16:40:33+00:00" }, { "name": "phar-io/manifest", @@ -1793,33 +1795,45 @@ }, { "name": "phpcompatibility/php-compatibility", - "version": "9.3.5", + "version": "dev-develop", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibility.git", - "reference": "9fb324479acf6f39452e0655d2429cc0d3914243" + "reference": "5320beafb871c9267c7d03442044eedea4ca1f52" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243", - "reference": "9fb324479acf6f39452e0655d2429cc0d3914243", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/5320beafb871c9267c7d03442044eedea4ca1f52", + "reference": "5320beafb871c9267c7d03442044eedea4ca1f52", "shasum": "" }, "require": { - "php": ">=5.3", - "squizlabs/php_codesniffer": "^2.3 || ^3.0.2" + "php": ">=5.4", + "phpcsstandards/phpcsutils": "^1.0.12", + "squizlabs/php_codesniffer": "^3.10.0" }, - "conflict": { - "squizlabs/php_codesniffer": "2.6.2" + "replace": { + "wimg/php-compatibility": "*" }, "require-dev": { - "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0" + "php-parallel-lint/php-console-highlighter": "^1.0.0", + "php-parallel-lint/php-parallel-lint": "^1.4.0", + "phpcsstandards/phpcsdevcs": "^1.1.3", + "phpcsstandards/phpcsdevtools": "^1.2.0", + "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4 || ^10.1.0", + "yoast/phpunit-polyfills": "^1.0.5 || ^2.0.0" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, + "default-branch": true, "type": "phpcodesniffer-standard", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev", + "dev-develop": "10.x-dev" + } + }, "notification-url": "https://packagist.org/downloads/", "license": [ "LGPL-3.0-or-later" @@ -1845,38 +1859,54 @@ "keywords": [ "compatibility", "phpcs", - "standards" + "standards", + "static analysis" ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibility/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibility" }, - "time": "2019-12-27T09:44:58+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-09-18T23:29:28+00:00" }, { "name": "phpcompatibility/phpcompatibility-paragonie", - "version": "1.3.2", + "version": "1.3.3", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git", - "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26" + "reference": "293975b465e0e709b571cbf0c957c6c0a7b9a2ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", - "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/293975b465e0e709b571cbf0c957c6c0a7b9a2ac", + "reference": "293975b465e0e709b571cbf0c957c6c0a7b9a2ac", "shasum": "" }, "require": { "phpcompatibility/php-compatibility": "^9.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", "paragonie/random_compat": "dev-master", "paragonie/sodium_compat": "dev-master" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, "type": "phpcodesniffer-standard", @@ -1906,22 +1936,37 @@ ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie" }, - "time": "2022-10-25T01:46:02+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T21:30:46+00:00" }, { "name": "phpcompatibility/phpcompatibility-wp", - "version": "2.1.4", + "version": "2.1.5", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git", - "reference": "b6c1e3ee1c35de6c41a511d5eb9bd03e447480a5" + "reference": "01c1ff2704a58e46f0cb1ca9d06aee07b3589082" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/b6c1e3ee1c35de6c41a511d5eb9bd03e447480a5", - "reference": "b6c1e3ee1c35de6c41a511d5eb9bd03e447480a5", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/01c1ff2704a58e46f0cb1ca9d06aee07b3589082", + "reference": "01c1ff2704a58e46f0cb1ca9d06aee07b3589082", "shasum": "" }, "require": { @@ -1929,10 +1974,10 @@ "phpcompatibility/phpcompatibility-paragonie": "^1.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7" + "dealerdirect/phpcodesniffer-composer-installer": "^1.0" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, "type": "phpcodesniffer-standard", @@ -1961,9 +2006,24 @@ ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibilityWP/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibilityWP/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibilityWP" }, - "time": "2022-10-24T09:00:36+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T21:37:59+00:00" }, { "name": "phpcsstandards/phpcsextra", @@ -1971,12 +2031,12 @@ "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSExtra.git", - "reference": "7384703f57a65879dc6fb5a0fc0dbe60fe2c1d8d" + "reference": "de3789a59ee046291bb196c03862c871a692dc75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/7384703f57a65879dc6fb5a0fc0dbe60fe2c1d8d", - "reference": "7384703f57a65879dc6fb5a0fc0dbe60fe2c1d8d", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/de3789a59ee046291bb196c03862c871a692dc75", + "reference": "de3789a59ee046291bb196c03862c871a692dc75", "shasum": "" }, "require": { @@ -2042,7 +2102,7 @@ "type": "open_collective" } ], - "time": "2024-03-04T02:11:33+00:00" + "time": "2024-07-23T06:25:32+00:00" }, { "name": "phpcsstandards/phpcsutils", @@ -2050,25 +2110,25 @@ "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "7883bd854d3a7594a1504fca79aacd3595dacd2d" + "reference": "5ce89dad42ec5bf0a45fd244b05421c4f5c36299" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/7883bd854d3a7594a1504fca79aacd3595dacd2d", - "reference": "7883bd854d3a7594a1504fca79aacd3595dacd2d", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/5ce89dad42ec5bf0a45fd244b05421c4f5c36299", + "reference": "5ce89dad42ec5bf0a45fd244b05421c4f5c36299", "shasum": "" }, "require": { "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0", "php": ">=5.4", - "squizlabs/php_codesniffer": "^3.9.0 || 4.0.x-dev@dev" + "squizlabs/php_codesniffer": "^3.10.0 || 4.0.x-dev@dev" }, "require-dev": { "ext-filter": "*", "php-parallel-lint/php-console-highlighter": "^1.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcsstandards/phpcsdevcs": "^1.1.6", - "yoast/phpunit-polyfills": "^1.1.0 || ^2.0.0" + "yoast/phpunit-polyfills": "^1.1.0 || ^2.0.0 || ^3.0.0" }, "default-branch": true, "type": "phpcodesniffer-standard", @@ -2131,7 +2191,7 @@ "type": "open_collective" } ], - "time": "2024-03-04T08:00:16+00:00" + "time": "2024-09-20T09:50:45+00:00" }, { "name": "phpstan/extension-installer", @@ -2188,12 +2248,12 @@ "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "eb78fe30b1adbc3294c306925f359bd83c311153" + "reference": "3a83f6b575850b40b4895245d687c7435e475f2d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/eb78fe30b1adbc3294c306925f359bd83c311153", - "reference": "eb78fe30b1adbc3294c306925f359bd83c311153", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/3a83f6b575850b40b4895245d687c7435e475f2d", + "reference": "3a83f6b575850b40b4895245d687c7435e475f2d", "shasum": "" }, "require": { @@ -2238,7 +2298,7 @@ "type": "github" } ], - "time": "2024-09-26T18:32:52+00:00" + "time": "2024-09-27T13:36:41+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", @@ -2293,31 +2353,31 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965" + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/48c34b5d8d983006bd2adc2d0de92963b9155965", - "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.18 || ^5.0", + "nikic/php-parser": "^4.19.1 || ^5.1.0", "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", - "theseer/tokenizer": "^1.2.0" + "phpunit/php-file-iterator": "^3.0.6", + "phpunit/php-text-template": "^2.0.4", + "sebastian/code-unit-reverse-lookup": "^2.0.3", + "sebastian/complexity": "^2.0.3", + "sebastian/environment": "^5.1.5", + "sebastian/lines-of-code": "^1.0.4", + "sebastian/version": "^3.0.2", + "theseer/tokenizer": "^1.2.3" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^9.6" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", @@ -2326,7 +2386,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.2-dev" + "dev-main": "9.2.x-dev" } }, "autoload": { @@ -2355,7 +2415,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.31" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" }, "funding": [ { @@ -2363,7 +2423,7 @@ "type": "github" } ], - "time": "2024-03-02T06:37:42+00:00" + "time": "2024-08-22T04:23:01+00:00" }, { "name": "phpunit/php-file-iterator", @@ -2612,41 +2672,41 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "5b92d2809fe6c9dbf892e8016df656f16ef157e1" + "reference": "f928edda875630214710a8e62d6f0e4358e5dc21" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5b92d2809fe6c9dbf892e8016df656f16ef157e1", - "reference": "5b92d2809fe6c9dbf892e8016df656f16ef157e1", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f928edda875630214710a8e62d6f0e4358e5dc21", + "reference": "f928edda875630214710a8e62d6f0e4358e5dc21", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1 || ^2", + "doctrine/instantiator": "^1.5.0 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.3", - "phar-io/version": "^3.0.2", + "myclabs/deep-copy": "^1.12.0", + "phar-io/manifest": "^2.0.4", + "phar-io/version": "^3.2.1", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.28", - "phpunit/php-file-iterator": "^3.0.5", + "phpunit/php-code-coverage": "^9.2.32", + "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", + "phpunit/php-text-template": "^2.0.4", + "phpunit/php-timer": "^5.0.3", + "sebastian/cli-parser": "^1.0.2", + "sebastian/code-unit": "^1.0.8", "sebastian/comparator": "^4.0.8", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.5", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.2", + "sebastian/diff": "^4.0.6", + "sebastian/environment": "^5.1.5", + "sebastian/exporter": "^4.0.6", + "sebastian/global-state": "^5.0.7", + "sebastian/object-enumerator": "^4.0.4", + "sebastian/resource-operations": "^3.0.4", + "sebastian/type": "^3.2.1", "sebastian/version": "^3.0.2" }, "suggest": { @@ -2707,7 +2767,7 @@ "type": "tidelift" } ], - "time": "2024-03-06T06:47:12+00:00" + "time": "2024-09-27T07:01:02+00:00" }, { "name": "sebastian/cli-parser", @@ -3515,12 +3575,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "20bdda85c7c585ab265c0c37ec052a019bae29c4" + "reference": "ff553e7482dcee39fa4acc2b175d6ddeb0f7bc25" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/20bdda85c7c585ab265c0c37ec052a019bae29c4", - "reference": "20bdda85c7c585ab265c0c37ec052a019bae29c4", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ff553e7482dcee39fa4acc2b175d6ddeb0f7bc25", + "reference": "ff553e7482dcee39fa4acc2b175d6ddeb0f7bc25", "shasum": "" }, "require": { @@ -3562,7 +3622,7 @@ "type": "github" } ], - "time": "2023-03-25T08:11:39+00:00" + "time": "2024-03-14T18:47:08+00:00" }, { "name": "sebastian/type", @@ -3673,18 +3733,72 @@ ], "time": "2020-09-28T06:39:44+00:00" }, + { + "name": "sirbrillig/phpcs-changed", + "version": "v2.11.5", + "source": { + "type": "git", + "url": "https://github.com/sirbrillig/phpcs-changed.git", + "reference": "aaa144eb4f14697b6b06e3dcf74081b5a02f85f6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sirbrillig/phpcs-changed/zipball/aaa144eb4f14697b6b06e3dcf74081b5a02f85f6", + "reference": "aaa144eb4f14697b6b06e3dcf74081b5a02f85f6", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.1", + "phpunit/phpunit": "^6.4 || ^9.5", + "sirbrillig/phpcs-variable-analysis": "^2.1.3", + "squizlabs/php_codesniffer": "^3.2.1", + "vimeo/psalm": "^0.2 || ^0.3 || ^1.1 || ^4.24 || ^5.0@beta" + }, + "bin": [ + "bin/phpcs-changed" + ], + "type": "library", + "autoload": { + "files": [ + "PhpcsChanged/Cli.php", + "PhpcsChanged/functions.php" + ], + "psr-4": { + "PhpcsChanged\\": "PhpcsChanged/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Payton Swick", + "email": "payton@foolord.com" + } + ], + "description": "Run phpcs on files, but only report warnings/errors from lines which were changed.", + "support": { + "issues": "https://github.com/sirbrillig/phpcs-changed/issues", + "source": "https://github.com/sirbrillig/phpcs-changed/tree/v2.11.5" + }, + "time": "2024-05-23T20:01:41+00:00" + }, { "name": "sirbrillig/phpcs-variable-analysis", "version": "2.x-dev", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "b52d51ca3f224c4459a6ae686a0104e80fbfb7df" + "reference": "40d48007b37c65f3f79b097930f83f139d85355f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/b52d51ca3f224c4459a6ae686a0104e80fbfb7df", - "reference": "b52d51ca3f224c4459a6ae686a0104e80fbfb7df", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/40d48007b37c65f3f79b097930f83f139d85355f", + "reference": "40d48007b37c65f3f79b097930f83f139d85355f", "shasum": "" }, "require": { @@ -3695,9 +3809,9 @@ "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || ^1.0", "phpcsstandards/phpcsdevcs": "^1.1", "phpstan/phpstan": "^1.7", - "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.5 || ^7.0 || ^8.0 || ^9.0", + "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.5 || ^7.0 || ^8.0 || ^9.0 || ^10.5.32 || ^11.3.3", "sirbrillig/phpcs-import-detection": "^1.1", - "vimeo/psalm": "^0.2 || ^0.3 || ^1.1 || ^4.24 || ^5.0@beta" + "vimeo/psalm": "^0.2 || ^0.3 || ^1.1 || ^4.24 || ^5.0" }, "default-branch": true, "type": "phpcodesniffer-standard", @@ -3730,7 +3844,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2024-03-04T15:42:00+00:00" + "time": "2024-09-10T14:15:21+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -3738,12 +3852,12 @@ "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "e72c99b4785937d05f9790a95e41259dd8e9777c" + "reference": "92c8ef54357ea09d93f8efa043d7c9c0a71ae094" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/e72c99b4785937d05f9790a95e41259dd8e9777c", - "reference": "e72c99b4785937d05f9790a95e41259dd8e9777c", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/92c8ef54357ea09d93f8efa043d7c9c0a71ae094", + "reference": "92c8ef54357ea09d93f8efa043d7c9c0a71ae094", "shasum": "" }, "require": { @@ -3811,7 +3925,7 @@ "type": "open_collective" } ], - "time": "2024-03-07T21:48:16+00:00" + "time": "2024-09-18T16:46:38+00:00" }, { "name": "symfony/polyfill-php73", @@ -4012,16 +4126,16 @@ }, { "name": "wp-coding-standards/wpcs", - "version": "3.0.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress-Coding-Standards.git", - "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1" + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b4caf9689f1a0e4a4c632679a44e638c1c67aff1", - "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1", + "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/9333efcbff231f10dfd9c56bb7b65818b4733ca7", + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7", "shasum": "" }, "require": { @@ -4030,16 +4144,16 @@ "ext-tokenizer": "*", "ext-xmlreader": "*", "php": ">=5.4", - "phpcsstandards/phpcsextra": "^1.1.0", - "phpcsstandards/phpcsutils": "^1.0.8", - "squizlabs/php_codesniffer": "^3.7.2" + "phpcsstandards/phpcsextra": "^1.2.1", + "phpcsstandards/phpcsutils": "^1.0.10", + "squizlabs/php_codesniffer": "^3.9.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9.0", "phpcsstandards/phpcsdevtools": "^1.2.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "suggest": { "ext-iconv": "For improved results", @@ -4070,11 +4184,11 @@ }, "funding": [ { - "url": "https://opencollective.com/thewpcc/contribute/wp-php-63406", + "url": "https://opencollective.com/php_codesniffer", "type": "custom" } ], - "time": "2023-09-14T07:06:09+00:00" + "time": "2024-03-25T16:39:00+00:00" }, { "name": "yoast/phpunit-polyfills", @@ -4082,12 +4196,12 @@ "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e3a5bad2c69c147fbde4b8ad83f422bac3b36153" + "reference": "e87abf2352b5f6736cab7c8d23c581ef6aaeaf3f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e3a5bad2c69c147fbde4b8ad83f422bac3b36153", - "reference": "e3a5bad2c69c147fbde4b8ad83f422bac3b36153", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e87abf2352b5f6736cab7c8d23c581ef6aaeaf3f", + "reference": "e87abf2352b5f6736cab7c8d23c581ef6aaeaf3f", "shasum": "" }, "require": { @@ -4096,13 +4210,13 @@ }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", - "php-parallel-lint/php-parallel-lint": "^1.3.2", - "yoast/yoastcs": "^3.0.0" + "php-parallel-lint/php-parallel-lint": "^1.4.0", + "yoast/yoastcs": "^3.1.0" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -4137,17 +4251,26 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-03-04T17:15:33+00:00" + "time": "2024-09-16T19:21:25+00:00" + } + ], + "aliases": [ + { + "package": "phpcompatibility/php-compatibility", + "version": "dev-develop", + "alias": "9.99.99", + "alias_normalized": "9.99.99.0" } ], - "aliases": [], "minimum-stability": "dev", "stability-flags": { "ua-parser/uap-php": 20, "szepeviktor/phpstan-wordpress": 20, "phpstan/extension-installer": 20, "php-stubs/wp-cli-stubs": 20, - "johnbillion/wp-compat": 20 + "johnbillion/wp-compat": 20, + "phpstan/phpstan-deprecation-rules": 20, + "phpcompatibility/php-compatibility": 20 }, "prefer-stable": false, "prefer-lowest": false, diff --git a/includes/Classifai/Helpers.php b/includes/Classifai/Helpers.php index 60c31fdcf..71ed11b60 100644 --- a/includes/Classifai/Helpers.php +++ b/includes/Classifai/Helpers.php @@ -302,7 +302,7 @@ function attachment_is_pdf( $post ): bool { * @param string $attribute Optional attribute to get. Can be version or dependencies. * @return string|array */ -function get_asset_info( string $slug, string $attribute = null ) { +function get_asset_info( string $slug, ?string $attribute = null ) { if ( file_exists( CLASSIFAI_PLUGIN_DIR . '/dist/' . $slug . '.asset.php' ) ) { $asset = require CLASSIFAI_PLUGIN_DIR . '/dist/' . $slug . '.asset.php'; } else { diff --git a/includes/Classifai/Providers/Azure/ComputerVision.php b/includes/Classifai/Providers/Azure/ComputerVision.php index 0b4022b82..2d44e00f5 100644 --- a/includes/Classifai/Providers/Azure/ComputerVision.php +++ b/includes/Classifai/Providers/Azure/ComputerVision.php @@ -597,7 +597,7 @@ public function generate_image_tags( string $image_url, int $attachment_id ) { * @param \Classifai\Features\Feature $feature Feature instance * @return bool|object|WP_Error */ - protected function scan_image( string $image_url, \Classifai\Features\Feature $feature = null ) { + protected function scan_image( string $image_url, ?\Classifai\Features\Feature $feature = null ) { $settings = $feature->get_settings( static::ID ); // Check if valid authentication is in place. @@ -669,7 +669,7 @@ protected function scan_image( string $image_url, \Classifai\Features\Feature $f * @param \Classifai\Features\Feature $feature Feature instance * @return string */ - protected function prep_api_url( \Classifai\Features\Feature $feature = null ): string { + protected function prep_api_url( ?\Classifai\Features\Feature $feature = null ): string { $settings = $feature->get_settings( static::ID ); $api_features = []; diff --git a/includes/Classifai/Providers/Azure/Embeddings.php b/includes/Classifai/Providers/Azure/Embeddings.php index 7d4c205de..f6f8284ec 100644 --- a/includes/Classifai/Providers/Azure/Embeddings.php +++ b/includes/Classifai/Providers/Azure/Embeddings.php @@ -245,7 +245,7 @@ public function sanitize_settings( array $new_settings ): array { * @param Feature $feature Feature instance * @return string */ - protected function prep_api_url( Feature $feature = null ): string { + protected function prep_api_url( ?Feature $feature = null ): string { $settings = $feature->get_settings( static::ID ); $endpoint = $settings['endpoint_url'] ?? ''; $deployment = $settings['deployment'] ?? ''; @@ -824,7 +824,7 @@ public function generate_embedding_job( string $taxonomy = '', bool $all = false * @param Feature $feature The feature instance. * @return array|WP_Error */ - public function generate_embeddings_for_term( int $term_id, bool $force = false, Feature $feature = null ) { + public function generate_embeddings_for_term( int $term_id, bool $force = false, ?Feature $feature = null ) { // Ensure the user has permissions to edit. if ( ! current_user_can( 'edit_term', $term_id ) ) { return new WP_Error( 'invalid', esc_html__( 'User does not have valid permissions to edit this term.', 'classifai' ) ); diff --git a/includes/Classifai/Providers/Azure/OpenAI.php b/includes/Classifai/Providers/Azure/OpenAI.php index ddacf4d05..7fe0f397c 100644 --- a/includes/Classifai/Providers/Azure/OpenAI.php +++ b/includes/Classifai/Providers/Azure/OpenAI.php @@ -238,7 +238,7 @@ public function sanitize_settings( array $new_settings ): array { * @param \Classifai\Features\Feature $feature Feature instance * @return string */ - protected function prep_api_url( \Classifai\Features\Feature $feature = null ): string { + protected function prep_api_url( ?\Classifai\Features\Feature $feature = null ): string { $settings = $feature->get_settings( static::ID ); $endpoint = $settings['endpoint_url'] ?? ''; $deployment = $settings['deployment'] ?? ''; diff --git a/includes/Classifai/Providers/OpenAI/Embeddings.php b/includes/Classifai/Providers/OpenAI/Embeddings.php index e068fc36b..c40b19a5b 100644 --- a/includes/Classifai/Providers/OpenAI/Embeddings.php +++ b/includes/Classifai/Providers/OpenAI/Embeddings.php @@ -939,7 +939,7 @@ public function generate_embedding_job( string $taxonomy = '', bool $all = false * @param Feature $feature The feature instance. * @return array|WP_Error */ - public function generate_embeddings_for_term( int $term_id, bool $force = false, Feature $feature = null ) { + public function generate_embeddings_for_term( int $term_id, bool $force = false, ?Feature $feature = null ) { // Ensure the user has permissions to edit. if ( ! current_user_can( 'edit_term', $term_id ) ) { return new WP_Error( 'invalid', esc_html__( 'User does not have valid permissions to edit this term.', 'classifai' ) ); diff --git a/phpcs-compat.xml.dist b/phpcs-compat.xml.dist new file mode 100644 index 000000000..3160bf767 --- /dev/null +++ b/phpcs-compat.xml.dist @@ -0,0 +1,18 @@ + + + PHP Compatibility checks only + + + + . + + + + */dist/* + */tests/* + */node_modules/* + */vendor/* + + + + diff --git a/phpcs.xml.dist b/phpcs.xml.dist index 06072bd12..9a3868e86 100644 --- a/phpcs.xml.dist +++ b/phpcs.xml.dist @@ -14,4 +14,12 @@ */tests/* + + + + + + + +