From 9e79ed6efad3f4b29e287368c74492828c2e7abc Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Thu, 9 Jan 2025 10:14:20 +0100 Subject: [PATCH 1/4] Update php-scoper Signed-off-by: Marcel Klehr # Conflicts: # vendor-bin/php-scoper/composer.lock --- vendor-bin/php-scoper/composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor-bin/php-scoper/composer.json b/vendor-bin/php-scoper/composer.json index 61735d40..676dd4cf 100644 --- a/vendor-bin/php-scoper/composer.json +++ b/vendor-bin/php-scoper/composer.json @@ -1,5 +1,5 @@ { "require-dev": { - "humbug/php-scoper": "^0.18.7" + "humbug/php-scoper": "0.18.x" } } From 92826dcb485a21882deb6c46c938f42a784dee8e Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 21 Jan 2025 09:31:52 +0100 Subject: [PATCH 2/4] fix: Patch php-scoper to support php 8.4 Signed-off-by: Marcel Klehr --- vendor-bin/php-scoper/composer.json | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/vendor-bin/php-scoper/composer.json b/vendor-bin/php-scoper/composer.json index 676dd4cf..84babd30 100644 --- a/vendor-bin/php-scoper/composer.json +++ b/vendor-bin/php-scoper/composer.json @@ -1,5 +1,23 @@ { - "require-dev": { - "humbug/php-scoper": "0.18.x" + "require": { + "humbug/php-scoper": "^0.18", + "cweagans/composer-patches": "^1.7" + }, + "config": { + "platform": { + "php": "8.1" + }, + "allow-plugins": { + "cweagans/composer-patches": true + } + }, + "extra": { + "patches": { + "thecodingmachine/safe": { + "PHP 8.4 compatibility, patch 1": "https://patch-diff.githubusercontent.com/raw/thecodingmachine/safe/pull/464.patch", + "PHP 8.4 compatibility, patch 2": "https://patch-diff.githubusercontent.com/raw/thecodingmachine/safe/pull/466.patch", + "PHP 8.4 compatibility, patch 3": "https://github.com/blizzz/safe/commit/6eeee2a20ffb2be3456ae8615b227c78e1ca8a20.patch" + } + } } -} +} \ No newline at end of file From 37e984c7a098ca590e55d7a7c742a55a67a49f84 Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 21 Jan 2025 13:28:57 +0100 Subject: [PATCH 3/4] fix: Fix psalm workflow Signed-off-by: Marcel Klehr --- .github/workflows/psalm-matrix.yml | 52 +++++++++--------------------- 1 file changed, 16 insertions(+), 36 deletions(-) diff --git a/.github/workflows/psalm-matrix.yml b/.github/workflows/psalm-matrix.yml index 840f8c3f..01a9c035 100644 --- a/.github/workflows/psalm-matrix.yml +++ b/.github/workflows/psalm-matrix.yml @@ -21,34 +21,27 @@ concurrency: cancel-in-progress: true jobs: - matrix: - runs-on: ubuntu-latest-low - outputs: - ocp-matrix: ${{ steps.versions.outputs.ocp-matrix }} - steps: - - name: Checkout app - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - - name: Get version matrix - id: versions - uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 - static-analysis: runs-on: ubuntu-latest - needs: matrix - strategy: - # do not stop on another job's failure - fail-fast: false - matrix: ${{ fromJson(needs.matrix.outputs.ocp-matrix) }} - name: static-psalm-analysis ${{ matrix.ocp-version }} + name: static-psalm-analysis steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + persist-credentials: false + + - name: Get php version + id: versions + uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 - - name: Set up php${{ matrix.php-versions }} + - name: Check enforcement of minimum PHP version ${{ steps.versions.outputs.php-min }} in psalm.xml + run: grep 'phpVersion="${{ steps.versions.outputs.php-min }}' psalm.xml + + - name: Set up php${{ steps.versions.outputs.php-available }} uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 with: - php-version: ${{ matrix.php-versions }} + php-version: ${{ steps.versions.outputs.php-available }} extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite coverage: none ini-file: development @@ -60,21 +53,8 @@ jobs: composer remove nextcloud/ocp --dev composer i - - - name: Install dependencies - run: composer require --dev 'nextcloud/ocp:${{ matrix.ocp-version }}' --ignore-platform-reqs --with-dependencies + - name: Install nextcloud/ocp + run: composer require --dev nextcloud/ocp:dev-${{ steps.versions.outputs.branches-max }} --ignore-platform-reqs --with-dependencies - name: Run coding standards check - run: composer run psalm - - summary: - runs-on: ubuntu-latest-low - needs: static-analysis - - if: always() - - name: static-psalm-analysis-summary - - steps: - - name: Summary status - run: if ${{ needs.static-analysis.result != 'success' }}; then exit 1; fi + run: composer run psalm -- --threads=1 --monochrome --no-progress --output-format=github \ No newline at end of file From 43375f902928b9d501869d6b0de3807ebc233193 Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 21 Jan 2025 13:32:36 +0100 Subject: [PATCH 4/4] fix: Fix psalm workflow Signed-off-by: Marcel Klehr --- psalm.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/psalm.xml b/psalm.xml index da15746f..a88c55e6 100644 --- a/psalm.xml +++ b/psalm.xml @@ -6,6 +6,7 @@ xmlns="https://getpsalm.org/schema/config" xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd" errorBaseline="psalm-baseline.xml" + phpVersion="8.1" >