Setup Php Versions Save

GitHub action to set up PHP with extensions, php.ini configuration, coverage drivers, and various tools.

2.30.2

3 weeks ago

Changelog

For the complete list of changes, please refer to the Full Changelog

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.30.1

4 weeks ago

Changelog

  • Improved updating Homebrew core tap on macOS using a retry logic.

  • Fixed support for phalcon on Windows.

  • Fixed support for OCI extensions for PHP 8.4 on Linux and macOS.

  • Fixed support for sqlsrv and pdo_sqlsrv on PHP 8.0.

  • Fixed type error on Windows in Get-File function.

  • Minified the release file dist/index.js file generated by vercel/ncc.

  • Updated pre-installed PHP versions for GitHub runners in the README.

  • Updated Node.js dependencies.

For the complete list of changes, please refer to the Full Changelog

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.30.0

1 month ago

Changelog

  • Added support to set custom composer timeout (#811)
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
  env:
    COMPOSER_PROCESS_TIMEOUT: 300
  • Fixed syncing dependency formulae on macOS. (#823, #825, #824)

  • Updated Node.js dependencies.

For the complete list of changes, please refer to the Full Changelog

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.29.0

3 months ago

Changelog

  • Added support for 'lowest' and 'highest' aliases to specify PHP versions. #794
    • The lowest alias installs the lowest actively supported version in the PHP project.
    • The 'highest' alias is equivalent to the 'latest' alias, so it installs the latest supported stable PHP version.
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: lowest # or highest
  • Added support for thread-safe builds on macOS. This completes the support for thread-safe builds on all supported platforms.
- name: Setup ZTS PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
  env:
    phpts: zts
  • Updated documentation for support to read the PHP version from composer.lock and composer.json files.
    • If php-version and php-version-file inputs are not specified, then it can read the php version from platform-overrides.php value in composer.lock or config.platform.php value from composer.json. #800
- name: Checkout
  uses: actions/checkout@v4
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  • Switched to the new PHPCSStandards/PHP_CodeSniffer repository for builds of phpcs and phpcbf tools. #809
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    tools: phpcs, phpcbf
  • Marked v1 version of the action as completely unsupported, it will receive no updates, please upgrade to v2, if not done already.

  • Fixed installing extensions on Windows for PHP 8.1 by reverting the version bump for minimum stability. #807

  • Fixed building extensions on PHP 8.4 that used backward compatibility headers from ext/standard to use ext/random/php_random.h header.

  • Improved support for phalcon to install the extension when specified without the version number. #796

- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: phalcon
  • Updated codeql workflow to use v3 versions of codeql actions. #803

  • Updated docs workflow to use actions/download-artifact@v4 and actions/upload-artifact@v4. #804, #805

  • Updated Node.js dependencies.

Merged Pull Requests

  • Merged pull request #794 from @davereid
  • Merged pull request #800 from @davereid

For the complete list of changes, please refer to the Full Changelog

Thanks @dr5hn, @tighten, @ZeekInteractive, @acelaya, and @fulopattila122 for the sponsorship ❤️

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.28.0

4 months ago

Changelog

  • Specifying 8.3 in php-version now installs a stable build of PHP 8.3.
- name: Setup PHP 8.3
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
  • Specifying latest in php-version now installs PHP 8.3 as well.
- name: Setup Latest PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: 'latest'
  • Specifying nightly in php-version now installs PHP 8.4.
- name: Setup Nightly PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: 'nightly'
- name: Setup PHP with intl
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: intl-74.1
  • Added support to specify zts in phpts environment variable instead of ts to set up thread-safe PHP on Linux and Windows.
- name: Setup PHP 8.3 (ZTS)
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
  env:
    phpts: zts
  • Fixed support for debug builds. (#784)
- name: Setup PHP 8.3
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
  env:
    debug: true
  • Added support for cached builds for PHP 8.3, PHP 8.4, and zts builds of all versions of PHP 5.6 and newer on Ubuntu GitHub Hosted environments. This should reduce the time it takes to set up these PHP versions.

  • Added swoole to the builds cache for GitHub-hosted environments for PHP 7.2 and newer.

- name: Setup PHP 8.3
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: swoole
  • Added PHP 8.3 and PHP 8.4 to the extension lists in the wiki. (#787).

  • PHP 8.0 is now marked as End of life and PHP 8.1 is now marked as Security fixes only in README. See PHP Support in README.

  • Fixed support for Blackfire extension. The action now disabled Xdebug and pcov extensions by default when blackfire is specified in extensions input.

- name: Setup PHP with blackfire extension
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: blackfire
  • Fixed support for grpc_php_plugin when installed along with protoc on macOS.
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    tools: protoc, grpc_php_plugin
  • Fixed support for geos extension on PHP 8.3.
- name: Setup PHP with geos extension
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: geos
  • Fixed support for event extension on macOS to use openssl@3 formula.
- name: Setup PHP with geos extension
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.3'
    extensions: event
  • Update Node.js dependencies.

Merged Pull Requests

  • Merged pull request #787 from @jrfnl
  • Merged pull request #7 from @jderusse

For the complete list of changes, please refer to the Full Changelog

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.27.1

5 months ago

Changelog

  • Fixed updating PHP dependencies after formulae in homebrew/core tap have been sharded into directories with prefixes. (#780)

  • Update actions/setup-node from v3 to v4 in the node workflow.

  • Update Node.js dependencies.

For the complete list of changes, please refer to the Full Changelog

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.27.0

5 months ago

Changelog

  • Tools box and php-scoper can now be installed easily using the tools input. (#776)
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.2'
    tools: box, php-scoper
  • Added support for macOS 14.x Sonoma and dropped support for macOS 11.x Big Sur following a three-year support cycle that Apple follows for macOS.

  • We now set keepAlive in https agent to false in fetch.ts. After Node 19 it is set to true by default. This prevented the node process from exiting until timeout after the action run was completed. (#773, #777) - Ref

  • Fixed support for couchbase extension for PHP 7.4.

- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '7.4'
    extensions: couchbase
  • Fixed a warning when find was run without checking if the path exists on macOS.

  • Fixed checking for existing PHP installations on macOS on self-hosted environments.

  • Fixed adding tools in case /usr/local/bin directory was missing on self-hosted environments.

  • Bumped Node.js dependencies.

Merged Pull Requests

  • Merged pull request #766 from @theofidry

New Contributors

Full Changelog

For the complete list of changes, please refer to the Full Changelog: 2.26.0...2.27.0.

Thanks @tillkruss for the sponsorship ❤️

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.26.0

7 months ago

Changelog

Microsoft SQL Server extensions. (#758, #766)

The latest supported version of sqlsrv and pdo_sqlsrv for the PHP version will be installed. Also, on Windows, these extensions will be installed from microsoft/msphpsql GitHub releases and will fallback to pecl.

- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.2'
    extensions: sqlsrv, pdo_sqlsrv

PHP 8.4 Support (#762)

Added support for PHP 8.4.0-dev from the master branch of php/php-src for all supported OS. Note: PHP 8.3.0-dev is now built from the new PHP-8.3 branch.

- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.4'

Fixes

Blackfire Player

Resolved issues affecting the blackfire-player on Linux and macOS. It now installs the uuid extension that is required for the tool. Dropped support for it on Windows as uuid extension is not available for the OS.

- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    tools: blackfire-player

Updates

Update actions/checkout

Updated the use of actions/checkout to v4 in the documentation and workflows.

- name: Checkout
  uses: actions/checkout@v4

Update Node.js Version

Note: Node.js 16 reached End-of-Life on 2023-09-11 (Ref).

Updated action.yml to use the node20 binary. If you use setup-php on a self-hosted runner, please make sure it is v2.308.0 or newer to use this release or the major version tag v2.

Node.js Dependencies

Bumped Node.js dependencies.

Merged Pull Requests

  • Merged pull request #766 from @GrahamCampbell
  • Merged pull request #754 from @jasongill

New Contributors

Full Changelog

For the complete list of changes, please refer to the Full Changelog: 2.25.5...2.26.0.

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.25.5

8 months ago

Changelog

  • Added support for castor in tools input. #746
- name: Setup PHP
  uses: shivammathur/setup-php@v2
  with:
    php-version: '8.2'
    tools: castor
  • Fixed support for self-hosted Debian 12 environments.

  • Fixed support for self-hosted environments using DEB822-STYLE .sources files.

  • Fixed re-enabling opcache extension on macOS. #749

  • Updated Node.js dependencies.

New Contributors

Full Changelog: https://github.com/shivammathur/setup-php/compare/2.25.4...2.25.5

Follow for updates

setup-php reddit setup-php twitter setup-php status

2.25.4

10 months ago

Changelog

  • Fixed regression in 2.25.3 in PHPUnit installation by specifying major or major.minor version in the tools input. #743

  • Fixed fs import in utls.test.ts.

  • Updated Node.js dependencies.

Full Changelog: https://github.com/shivammathur/setup-php/compare/2.25.3...2.25.4

Follow for updates

setup-php reddit setup-php twitter setup-php status