From 55ef1e5c88cc6a22ab0516cabc22cbbfd98f19c2 Mon Sep 17 00:00:00 2001 From: "Garen J. Torikian" Date: Fri, 20 Mar 2026 15:02:02 -0400 Subject: [PATCH] feat!: bump minimum supported PHP version to 8.1 --- .github/workflows/ci.yml | 11 +---------- .github/workflows/lint.yml | 38 ++++++++++++++++++++++++++++++++++++++ .vscode/settings.json | 8 ++++++++ composer.json | 8 ++++---- 4 files changed, 51 insertions(+), 14 deletions(-) create mode 100644 .github/workflows/lint.yml create mode 100644 .vscode/settings.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e9011418..7cbf89cd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: true matrix: - php: ["7.3", "7.4", "8.1", "8.2", "8.3"] + php: ["8.1", "8.2", "8.3", "8.4", "8.5"] steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2.32.0 @@ -37,15 +37,6 @@ jobs: run: | composer install --prefer-dist --no-progress --no-interaction - - name: Lint and formatting - if: >- - matrix.php == '7.4' || - matrix.php == '8.1' || - matrix.php == '8.2' || - matrix.php == '8.3' - run: | - composer run-script format-check - - name: Test run: | composer run-script test diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000..7f9eea90 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,38 @@ +name: Lint + +on: + push: + branches: + - "main" + pull_request: {} + +defaults: + run: + shell: bash + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2.32.0 + with: + php-version: "8.1" + tools: "composer" + + - name: Cache Composer packages + uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3 + with: + path: vendor + key: ${{ runner.os }}-php-8.1-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-php-8.1- + + - name: Install dependencies + run: | + composer install --prefer-dist --no-progress --no-interaction + + - name: Lint and formatting + run: | + composer run-script format-check diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..f77c6209 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,8 @@ +{ + "[github-actions-workflow]": { + "editor.defaultFormatter": "redhat.vscode-yaml" + }, + "[json]": { + "editor.defaultFormatter": "vscode.json-language-features" + } +} diff --git a/composer.json b/composer.json index a3a630a6..031644ff 100644 --- a/composer.json +++ b/composer.json @@ -10,13 +10,13 @@ } ], "require": { - "php": ">=7.3.0", + "php": ">=8.1.0", "ext-curl": "*", - "paragonie/halite": "^4.0" + "paragonie/halite": "^5.1" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^2.15|^3.6", - "phpunit/phpunit": "^9" + "friendsofphp/php-cs-fixer": "^3.0", + "phpunit/phpunit": "^10.5" }, "autoload": { "psr-4": {