Releases: shivammathur/setup-php
2.25.0
Changelog
- Dropped support for Ubuntu 18.04. (#717)
Please useubuntu-22.04
orubuntu-20.04
runners.
- runs-on: ubuntu-18.04
+ runs-on: ubuntu-22.04
# or
- runs-on: ubuntu-18.04
+ runs-on: ubuntu-20.04
-
Added support for
php-version-file
input to read the input PHP version from a file Docs. (#690)Example: If you have a file
.php-version
in your file structure with the PHP version as its content, you can use thephp-version-file
input.
- name: Checkout
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version-file: .php-version
- Added support for
intl
extension withICU 73.1
. shivammathur/icu-intl#5
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
extensions: intl-73.1
- Added support for
snmp
anduuid
on macOS usingshivammathur/extensions
tap. (shivammathur/homebrew-extensions#2426, shivammathur/homebrew-extensions#2452)
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
extensions: snmp, uuid
-
Added retry logic across Windows to decrease the network failure rate. (#700, #711)
-
Switched to using
phpenmod
script to enable extensions on Linux. -
Switched to using
Write-Error
instead ofExit
on Windows as that did not stop the workflow on errors. (#709) -
Improved support for
relay
extension. #719 -
Fixed support for
zts
build ofzephir_parser
extension. #701 -
Fixed parameters in the
xargs
call. #712 -
Fixed minor shellcheck error.
-
Fixed the wrapper used to install Debian packages to check for broken package failures.
-
Fixed the JIT config set up to match the docs.
-
Updated Node.js dependencies.
Full Changelog: 2.24.0...2.25.0
Contributions
- Fix DocBlock in
utils.ts
by @viktorruskai in #689 - Support .php-version file for version detection by @stevelacey in #690
- Move php version default out of action.yml and update inputs by @stevelacey in #691
- docs: improve sentence structure slightly by @G-Rath in #707
- Add support for ICU 73-1 by @jderusse in shivammathur/icu-intl#5
New Contributors
- @viktorruskai made their first contribution in #689
- @stevelacey made their first contribution in #690
- @G-Rath made their first contribution in #707
Thanks! for the contribution 🎉
Follow for updates
2.24.0
Support Ukraine
- Added support for
relay
extension on Linux and macOS for PHP 7.4 to 8.2. (#682)
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: relay # or specific version like relay-0.4.6
env:
RELAY_KEY: ${{ secrets.RELAY_KEY }}
RELAY_ENVIRONMENT: development
RELAY_EVICTION_POLICY: lru
RELAY_MAX_MEMORY: 256M
- Improved support for
zephir_parser
extension. (#681)
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: zephir_parser
-
Fixed support for self-hosted environments with outdated package lists. (#688)
-
Fixed logs for coverage extensions on PHP 8.3. (#685)
-
Fixed PECL options parsing on macOS. (#680)
-
Fixed support for
blackfire-player
. -
Fixed fetching
phalcon
release asset URL on Windows. -
Fixed
protoc
support to account for release versions inmajor.minor
format. -
Change the
choco
install script URL to avoid redirecting. -
Refactored function names in scripts for tools and extensions with custom support.
-
Updated Node.js dependencies.
Full Changelog: 2.23.0...2.24.0
Thanks! @tillkruss, @quick-order, @jobbsy-dev, and @DracoBlue for the sponsorship ❤️
Thanks! @Rotzbua for the contribution 🎉
Follow for updates
2.23.0
Support Ukraine
- Added support for nightly builds of
PHP 8.3
.
Note: Specifying nightly as thephp-version
now will set upPHP 8.3
.
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.3'
- PHP 8.2 is now stable on
setup-php
. #673
Notes:- Specifying
latest
or8.x
as thephp-version
now will set upPHP 8.2
. - Except
ubuntu-22.04
, all GitHub runners now havePHP 8.2
as the default version.
- Specifying
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
- Added support for thread-safe builds of PHP on Linux. #651
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
env:
phpts: ts
-
Improved extension support on macOS for various extensions using the
shivammathur/extensions
tap. -
Dropped support for
macos-10.15
GitHub runner. Please update your workflows to usemacos-latest
ormacos-12
runner. -
Fixed support for
composer-unused
. #668 -
Fixed support for
ini-values
with the=
sign in the value. #676 -
Added fallbacks to various tools and extensions that use the GitHub API for setup to avoid rate limit errors on Windows.
-
Fixed a minor error on macOS while patching updated dependency formulae.
-
Updated Node.js dependencies.
Full Changelog: 2.22.0...2.23.0
Merry Christmas and happy holidays! 🎄🎁
Thanks! @jrfnl and @flavioheleno for the contributions 🎉
Follow for updates
2.22.0
Support Ukraine
- Added support for PHP builds with debugging symbols for PHP 5.6 and above. ALPHA Docs, (#634, shivammathur/homebrew-php#976)
- name: Setup PHP with debugging symbols
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
env:
debug: true
- Added support for intl extension with ICU 72.1. shivammathur/icu-intl#4
- name: Setup PHP with intl
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
extensions: intl-72.1
-
Existing PHP version on GitHub actions Ubuntu images is now updated if
ppa:ondrej/php
is missing regardless of theupdate
environment variable. (actions/runner-images#6331). -
Environment variable
COMPOSER_NO_AUDIT
is now set by default. If you would like to run the composer audit in your workflows, please add a step withcomposer audit
command. (#635, #636)
- name: Composer audit
run: composer audit
-
Switched to
GITHUB_OUTPUT
environment file for setting up outputs. If you are usingsetup-php
on self-hosted runners, please update it to2.297.0
or greater. More Info (#654) -
Updated
sqlsrv
andpdo_sqlsrv
version to5.10.1
for PHP 7.0 and above on Linux. -
Improved support for
phalcon5
extension to set up the latest stable version. -
Improved
symfony-cli
support to fetch the artifact URL from the brew tap on Linux. (#641, #652, #653) -
Improved fetching
brew
taps on Linux to avoid brew's overhead. -
Fixed installing extension packages on self-hosted Linux runners. (#642)
-
Fixed support for
couchbase
andfirebird
extensions after GitHub release page changes. -
Fixed support for older versions of
laravel/pint
. (#647) -
Updated Node.js dependencies.
Full Changelog: 2.21.2...2.22.0
Thanks! @alcaeus and @jderusse for the contributions 🎉
Follow for updates
2.21.2
Support Ukraine
- Added support for
rector
in tools input. #627
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
tools: rector
- Added support for
ast
extension onmacOS
usingshivammathur/extensions
tap.
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: ast
- Fixed support for
symfony-cli
on Linux #632
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
tools: symfony
- Fixed installing unstable extensions from
PECL
. #625 - Updated Node.js dependencies.
Follow for updates
2.21.1
2.21.0
Support Ukraine
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: `8.1`
tools: pint
- Added support for
phalcon5
for all OS. shivammathur/homebrew-extensions#1890
Also fixedphalcon3
andphalcon4
support onUbuntu 22.04
.
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: `8.1`
extensions: phalcon5
- Added support for Private Packagist authentication for composer. Docs
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
env:
PACKAGIST_TOKEN: ${{ secrets.PACKAGIST_TOKEN }}
- Added support for manual JSON-based authentication for composer Docs
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
env:
COMPOSER_AUTH_JSON: |
{
"http-basic": {
"example.org": {
"username": "${{ secrets.EXAMPLE_ORG_USERNAME }}",
"password": "${{ secrets.EXAMPLE_ORG_PASSWORD }}"
}
}
}
- Deprecated
COMPOSER_TOKEN
in favor ofGITHUB_TOKEN
. Docs
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- Updated Node.js dependencies.
Thanks! @phpstan for the sponsorship ❤️
Thanks! @d8vjork and @ChristophWurst for the contributions 🎉
Follow for updates
2.20.1
Support Ukraine
-
Fixed support for
prestissimo
with composerv1
. #612 -
Added support for Private Packagist and manual JSON based authentication for composer. ALPHA
Docs - Private Packagist Authentication
Docs - Manual Composer Authentication -
Deprecated
COMPOSER_TOKEN
in favor ofGITHUB_TOKEN
. Docs -
Updated Node.js dependencies.
Follow for updates
2.20.0
Support Ukraine
-
Improved support for
event
extension on Linux and macOS for PHP 5.4 and above. #604 -
Fixed support for composer plugins in
tools
input. Since composer 2.2, the plugins are required to be marked as allowed in the composer config. This will now be done by default. #611 -
Added support to show code coverage driver's (Xdebug/PCOV) version in the logs when setup using the
coverage
input. #610 -
Fixed a bug where PHP was not added to
PATH
during the action run on self-hosted Windows environments. #609 -
Fixed a bug where the tool cache path was not set on self-hosted environments. #606
-
Updated Node.js dependencies.
Thanks! @jrfnl, @dino182 and @markseuffert for the contributions 🚀