Skip to content

Conversation

tillkruss
Copy link
Contributor


name: ⚙ Improvement
about: Want to improve something
labels: enhancement

A Pull Request should be associated with a Discussion.

If you're fixing a bug, adding a new feature or improving something please provide the details in discussions,
so that the development can be pointed in the intended direction.

Related discussion: #1010

Further notes in Contribution Guidelines
Thank you for your contribution.

Description

This PR [briefly explain what it does]

In case this PR introduced TypeScript/JavaScript code changes:

  • I have written test cases for the changes in this pull request
  • I have run npm run format before the commit.
  • I have run npm run lint before the commit.
  • I have run npm run release before the commit.
  • npm test returns with no unit test errors and all code covered.

In case this PR edits any scripts:

  • I have checked the edited scripts for syntax.
  • I have tested the changes in an integration test (If yes, provide workflow YAML and link).

@tillkruss tillkruss changed the base branch from main to develop October 16, 2025 22:42
Copy link

codecov bot commented Oct 16, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (319ac00) to head (1e8cc75).
⚠️ Report is 6 commits behind head on develop.

Additional details and impacted files
@@            Coverage Diff            @@
##           develop     #1011   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            7         7           
  Lines          822       822           
  Branches       286       286           
=========================================
  Hits           822       822           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tillkruss tillkruss marked this pull request as ready for review October 16, 2025 22:43
@shivammathur shivammathur merged commit 3efd894 into shivammathur:develop Oct 17, 2025
70 checks passed
@tillkruss tillkruss deleted the patch-2 branch October 17, 2025 02:45
@shivammathur
Copy link
Owner

@tillkruss

As per the builds page, PHP 7.4 builds are only there for 0.7.0 on macOS.

After this it fails to install on PHP 7.4 on macOS.
https://github.com/shivammathur/test-setup-php/actions/runs/18580337934/job/52974664696

Maybe the lock should be there only for macOS or builds for macOS can be added to the newer releases for PHP 7.4.

@tillkruss
Copy link
Contributor Author

You're right, we should have 7.4 builds. I'll check in with @michael-grunder tomorrow and make sure we have those.

@tillkruss
Copy link
Contributor Author

Quick update, in version v0.8.0 we dropped x86 and 7.4 builds on macOS. All other OS still have 7.4 and x86.

I'll check if we can easily restore these, or if we need to block exclude macOS 7.4 from the setup-php builds.

@tillkruss
Copy link
Contributor Author

tillkruss commented Oct 17, 2025

@shivammathur: I tested the 7.4 dev nightly builds against macOS 14 and 15.

Do we need to do anything to block x86 macOS in the relay.sh or just let it fail?

name: Compatibility
on: [push]

jobs:

  test:

    name: ${{ matrix.runner }} (PHP ${{ matrix.php }})
    runs-on: ${{ matrix.runner }}
    timeout-minutes: 5

    strategy:
      matrix:
        runner:
          - macos-14
          - macos-15
        php:
          - '7.4'
          - '8.0'
          - '8.1'
          - '8.2'
          - '8.3'
          - '8.4'

    env:
      RELAY_VERSION: dev

    steps:
      - name: Install PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php }}
          extensions: msgpack, igbinary, redis

      - name: Install Packages
        if: ${{ startsWith(matrix.runner, 'macos') }}
        run: |
          brew install gsed # needed for gsed call in this workflow
          brew install ck hiredis

      - name: Install Relay (macOS)
        if: ${{ startsWith(matrix.runner, 'macos') }}
        run: |
          ARCH=$(arch | sed -e 's/amd64\|x86_64/x86-64/')
          RELAY_ARTIFACT="https://builds.r2.relay.so/$RELAY_VERSION/relay-$RELAY_VERSION-php${{ matrix.php }}-darwin-$ARCH.tar.gz"

          RELAY_INI_DIR=$(php-config --ini-dir)
          RELAY_EXT_DIR=$(php-config --extension-dir)
          RELAY_TMP_DIR=$(mktemp -dt relay)

          curl -sSL $RELAY_ARTIFACT | tar -xz --strip-components=1 -C $RELAY_TMP_DIR
          sudo gsed -i "s/00000000-0000-0000-0000-000000000000/$(uuidgen)/" $RELAY_TMP_DIR/relay.so

          cp $RELAY_TMP_DIR/relay.so $RELAY_EXT_DIR
          cp $RELAY_TMP_DIR/relay.ini $RELAY_INI_DIR

      - name: Dump version
        run: php --ri relay | grep -i version

@shivammathur
Copy link
Owner

@tillkruss We can let it fail, with the error that x86_64 is not supported on macOS.

@tillkruss
Copy link
Contributor Author

@shivammathur I've search for everything I can think of but I'm not sure how to do this correctly, can you point me at an extension on how to fail the install with a message?

@shivammathur
Copy link
Owner

@tillkruss I have added that in 6f15379

@tillkruss
Copy link
Contributor Author

I have added that in 6f15379

Much appreciated!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants