This repository has been archived by the owner on Jul 12, 2024. It is now read-only.
Update shivammathur/setup-php action to v2.19.0 #8501
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.9.0
->2.19.0
Release Notes
shivammathur/setup-php
v2.19.0
Compare Source
Support Ukraine
Added support for
ubuntu-22.04
runner. DocsAdded support for Couchbase extension
4.x
for PHP 7.4 and above. Also added support to specify the extension version you need. https://github.com/shivammathur/setup-php/issues/593Note: Please use the extensions cache if using the latest Couchbase version on Linux as it can take 10+ minutes to build along with its library.
To install the latest version of couchbase extension
To install a specific version - suffix couchbase with exact version you want in the extensions input.
Improved fallback support upon cache failure in composer setup. This fixes an error when the latest composer version was installed on older PHP versions when fetching composer from
shivammathur/composer-cache
failed.Bumped Node.js version required to 16.x. Also bumped build target version to
ES2021
.If you use any of the following to run
setup-php
, please upgrade to their latest versions.Removed support for Debian 9 and Ubuntu 21.04 for self-hosted runners. Docs
Fixed tools setup with older composer versions which do not create
composer.json
if missing in the directory.Fixed support for extensions on macOS where the extension package name might conflict with package names in homebrew-core repo. This fixes support for
redis
extension on macOS on PHP 7.0.Fixed enabling cached extensions which depend on other extensions on PHP 7.1 and lower.
Fixed setting default INI values so that it is possible to override those using
php -c
. https://github.com/shivammathur/setup-php/issues/595Fixed PECL support for PHP 5.3, this was broken in previous release while adding support for specifying configure options, as that is only supported on PHP 5.4 and above.
Fixed identifying the latest
protoc
release.Removed unnecessary
fs
dependency.Added
dependabot
config to update older actions in workflows. https://github.com/shivammathur/setup-php/pull/597Added permissions for
GITHUB_TOKEN
in workflows. https://github.com/shivammathur/setup-php/pull/596Updated Node.js dependencies.
Thanks! @naveensrinivasan for the contributions 🚀
Follow for updates
v2.18.1
Compare Source
Support Ukraine
Added support for macOS Monterey (
macos-12
) GitHub hosted environment.Added support for
mcrypt
extension usingshivammathur/extensions
tap on macOS.Fixed patching
brew
for overwriting existing linked libraries.Fixed identifying the latest
protoc
release.Updated Node.js dependencies.
Thanks! @jderusse for the contributions 🚀
Follow for updates
v2.18.0
Compare Source
Support Ukraine
Added support for installing libraries and custom configure options for
PECL
extensions. #575. Docs.Added support for
blackfire
extension on PHP 8.1 on Windows.Improved support for
http
extension on Windows and self-hosted environments.Fixed installing
php-dev
package on self-hosted environments when missing. #569Fixed linking pecl ini file on self-hosted environments. #569
Fixed copying extensions when installed using brew from its Cellar to extension directory on macOS.
Fixed generating extension dependency map.
Fixed a bug in log functions on Linux and macOS by using local variables.
Improved switching versions on Linux. #572
Improved enabling default extensions by reducing PHP calls.
Bumped
actions/checkout
,actions/upload-artifact
,actions/download-artifact
andactions/cache
version in examples and workflows to v3. #571, #577Added PECL customization guide to README.
Updated Node.js dependencies.
Thanks! @jrfnl for the contributions 🚀
Follow for updates
v2.17.1
Compare Source
This release is possible because of our sponsors ❤️.
Help setup-php reach its sponsorship goals.
Added support for OpenSSL config on Windows. #564
Now
setup-php
will set the environment variableOPENSSL_CONF
pointing to a validopenssl.cnf
file on Windows.Added GitHub releases fallback URL for
phing
.Updated version of
sqlsrv
andpdo_sqlsrv
extensions to5.10.0
for PHP 7.4 and above.Fixed logs for
symfony-cli
on failure. #568Fixed setting an environment variable on Windows in self-hosted environments.
Fixed a bug in adding a directory to
PATH
. #562Fixed a minor UUOC shellcheck warning in
add_tools.sh
.Updated Node.js dependencies.
Thanks! @mlocati for adding
Set-OpenSSLConf
🚀Follow for updates
v2.17.0
Compare Source
This release is possible because of our sponsors ❤️.
Help setup-php reach its sponsorship goals.
ini-file
input to specify the basephp.ini
file. Acceptsproduction
,development
ornone
. Docs (#450, #469)By default the production
php.ini
is used, you can change it to thedevelopment
one, or remove it usingnone
.symfony-cli
to use the new version fromsymfony-cli/symfony-cli
.Churn-PHP
(#561)blackfire
extension on PHP 8.1.Tools
pecl
,phpize
andphp-config
are now installed by default on Linux. Specifying these intools
input is no longer required.The environment variable
COMPOSER_NO_INTERACTION
is now set to1
by default, so using--no-interaction
in composer commands is not required. (#547)The environment is now considered self-hosted unless the GitHub hosted environment is detected. This should prevent broken PHP installs in self-hosted environments when the
runner
environment variable is not specified. (#554)Added support to enable disabled extensions when required by tools. For this extensions are now processed before tools.
Added support to enable
xml
extension before installing other extensions usingpecl
. (#553)Speed improvements
php-config
instead.brew
calls on macOS setup.shivammathur/php-builder-windows
releases as a faster cache withwindows.php.net
as a fallback.macports
builds fromshivammathur/php5-darwin
.Added support for installing tools using composer in different scopes. This allows installing two tools with different versions of a common dependency. (#549)
Added support to fail immediately when composer setup fails. (#548)
Added support to parse PECL extension versions when wrongly hyphenated. (#536)
Added support for composer phars from shivammathur/composer-cache with PHP version as now different PHP versions can have different composer versions for a release type.
Added
setup-php.com
as a fallback in addition tojsdeliver.com
for script sources.Fixed support for fallback sources for tools in Windows.
Fixed potential exponential backtracking in regex to parse extension input when installing extensions from a git repository.
Fixed adding
sudo
to self-hosted Linux environments. (#555)Fixed enabling disabled extensions with other extensions as dependencies. For example
pecl_http
,redis
, etc.Fixed a bug where the ini file used for enabling extensions by
pecl
in the scan directory was deleted when disabling extensions.Fixed misconfiguration which prevented package lists from updating on Linux.
Fixed the fallback to install PowerShell packages using
Install-Module
on Windows when GitHub Releases is down. Also fixed not adding the Import-Module command to the profile when it fallbacks.Fixed tools setup to not overwrite an existing tool with a broken one if it fails to set up.
Fixed an error when copying tools to a directory in PATH in tools setup.
Fixed parsing composer phars from snapshot channel for its version when is a stable version.
Fixed support for
oci8
andpdo_oci
extensions on Windows.Fixed
pecl_http
setup.Fixed
restore-keys
input in composer cache example inREADME
with dependency range.Fixed error in tools setup on self-hosted environments when composer's bin directory is not present.
Fixed
tools.getLatestVersion
to handle failing GitHub API call.Fixed output on non-GitHub Action environments where GitHub Action specific command syntax was printed.
Fixed a bug where the status variable was overwritten in
ppa.sh
and was breaking the status output.Fixed scope of variables to local in bash scripts.
Fixed setting extension stability in
Add-Extension
Function on Windows.Fixed
node-release
workflow to add lib directory to the packages.Fixed sending coverage data to
codecov
on pull requests.Refactored
utils.fetch
to its own module and mocked thehttp
module usingnock
for fetch tests. Now the Node.js test suite does not make any external requests.Refactored setting environment variables and adding to PATH.
Refactored setting outputs to functions with a check to only run on GitHub Actions.
Refactored extension functions to
add_extension.sh
andadd_extension.ps1
.Refactored the default PHP packages for self-hosted Linux environments to a config file. Also added
cgi
,fpm
,mysql
,opcache
,pgsql
andzip
to the list.Refactored Nightly PHP setup to
Install-PhpNightly
Function on Windows.Refactored CI workflows and templates.
Rename
common.sh
tounix.sh
.Update security policy to specify clearly that the latest patch versions of both
v1
andv2
are supported for security updates.Updated Node workflows to use
16.x
.Updated README for the release.
Updated Node.js dependencies.
Thanks! @jrfnl and @villfa for the contributions 🚀
Follow for updates
v2.16.0
Compare Source
This release is possible because of our sponsors. So, if your company uses setup-php, please ask them to sponsor my work.
8.1.0
) and marked as the latest version. 🥳7.3.33
,7.4.26
,8.0.13
, and8.1.0
respectively. Set the update environment variable to true for always updating to the latest patch version.PHP 5.6 to 7.2 have been rebuilt with patch for
CVE-2021-21707
backported fromPHP 7.3.33
.Add support for
ICU-70.1
based intl extension forPHP 5.6
and above. https://github.com/shivammathur/icu-intl/pull/2mailparse
andxlswriter
extensions on macOS using shivammathur/extensions tap.ppa:ondrej/php
in php-builder builds.RUNNER_TOOL_CACHE
.jest.each
forextensions
andinstall
modules' tests. #514, #516,Thanks! @jrfnl, @jderusse, and @aneeshrelan for the contributions 🚀
Follow for updates
v2.15.0
Compare Source
Setup PHP depends on sponsorships. Maintaining it takes time and money especially with daily builds for upcoming PHP versions. So, if you found it helpful, please support the project.
PHP 5.6 to 7.2 have been rebuilt with patch for
CVE-2021-21706
backported from7.3.31
.PHP 7.3 to PHP 8.0 packages have been updated to
7.3.31
,7.4.24
and8.0.11
respectively. Set theupdate
environment variable totrue
for always updating to the latest patch version.Add support for the following tools:
phpunit-polyfills
#503phpDocumentor
orphpdoc
#498parallel-lint
#500expect
andssh2
extensions on macOS. https://github.com/shivammathur/homebrew-extensions/issues/1097Fix parsing PHP 8.1 version with both
RC
anddev
suffixes in the semver notation.Fix to get correct
php-src
git ref for nightly builds.Fix version for extensions in logs when installed using
PECL
.Fix cache support for extensions with custom support. #496
Fix logs for extensions with custom support when cached.
Fix PPA setup to add/update list files in
/var/lib/apt/lists
. #492Fix typo to use correct key for
phpunit
intools.functionRecord
. #501Replace
husky
withsimple-git-hooks
.Cleanup trailing whitespace in README.
Fix git command in
format
NPM script.Update Node.js dependencies.
Thanks @jrfnl for the contributions 🚀
Follow for updates
v2.14.0
Compare Source
PHP 8.2
. #490, Docs8.2
in thephp-version
input will set up a nightly build ofPHP 8.2.0-dev
from themaster
branch ofphp/php-src
.nightly
alias for setting up a build from themaster
branch. #491, DocsPHP 8.2.0-dev
from themaster
branch ofphp/php-src
.none
in extensions input will now disable all shared extensions.❤️ Thanks! @sebastianbergmann and @localheinz for sponsoring this feature.
Fix disabling extensions to identify dependent extensions using the Reflection data and disable them as well. For example, disabling
PDO
will also disablepdo_mysql
.Fix warnings in
Windows
when the required directory is already present.Fix to identify
opcache
ifZend OPcache
is specified in extensions input.Fix Windows script to install PHP 8.2 and future nightly builds correctly.
Fix to parse PHP 8.1 semver version.
Use
shivammathur/extensions
tap to install vips extension on macOS.Internal
Add test cases for
ini-values
containing special characters toconfig.test.ts
to avoid regression.Add
bugs
,directories
,files
andtypes
properties inpackage.json
.Add an SVG with past and present individual sponsors to the
README
.Use commit hash from the path in URL instead of the query string for nightly builds on macOS.
Fix build error in
install.ts
after TypeScript upgrade.Minor refactor in
install.test.ts
.Refactor
config
andcoverage
test files to usejest.each
.Update
tsconfig
to generate type declarations.Update documentation in the
README
.Update versions in
SECURITY.md
.Update Node.js dependencies.
v2.13.0
Compare Source
windows-2022
to the supported OS environments.phpunit-bridge
and updatedsymfony
examples to install it usingsetup-php
.mongodb
andyaml
on macOS usingshivammathur/extensions
tap.phive
version compatible with PHP 7.2. #481--no-install-recommends
to apt install commands on Linux.shivammathur/node
images.spc
is no longer required for multi-arch workflows and normal GitHub Action syntax should work.shivammathur/php-builder
is now built nightly with the same configuration and patches as official Debian builds of PHP.NO_TOOLS_CACHE
. The tool will be fetched from the source instead of any cache that setup-php implements when this is set to true.composer
phars are cached.blackfire
in tools will now install the latest version of Blackfire CLI v2. #478Removed
software-properties-common
package from dependencies on self-hosted Linux. This package was used for adding third-party repositories(PPA). Removing this reduces self-hosted first run time from 2-3 minutes to 1-2 minutes.PPAs can now be added by
setup-php
without any dependencies and the deprecatedapt-key
. It follows the Debian specification for third-party repositories.Remove use of
/etc/lsb-release
file,/etc/os-release
is used now as it has better support.Fixed a bug where the status file was overwritten after PHP was set up on GitHub runners.
Fixed support for
php-cs-fixer
to parsereleases.atom
file and install correct latest version. #485brew cat
.tsconfig.json
setlib
toES2020
andtarget
toES2019
for supporting Node 12 in self-hosted runners.Thanks! @jrfnl and @lolautruche for the contributions 🎉
v2.12.0
Compare Source
major
ormajor.minor
versions for tools. Docs, #467php-version
output which can be used in later steps. Docs, #470composer
to installcomposer-require-checker
. #473shivammathur/extensions
tap forrdkafka
extension on macOS. shivammathur/homebrew-php#365Firebird
client version to3.0.7
on macOS.grpc_php_plugin
support on Ubuntu and macOS.phpdismod
on Ubuntu. actions/virtual-environments#3472Imagick
setup withshivammathur/cache-extensions
action on Windows. #455oci8
andpdo_oci
. #449Imagick
for PHP 5.3 to 5.5 on macOS.protoc
on macOS.COMPOSER_HOME
directory. #477Internal
README.md
to include contributors fromsetup-php
and all related projects.tools.ts
totools.json
config.utils.fetch
and its uses.jest.Each
.install.ts
.sourceMap
to true intsconfig.json
.Node.js
dependencies.v2.11.0
Compare Source
Improve cache in
shivammathur/php-ubuntu
for PHP 5.6 to PHP 8.0.Using cache should reduce setup-php runtime on Ubuntu when the PHP version is not installed on the runner or
update: true
is set from 1-2 minutes to less than 5 seconds.Add support to compile and install extensions from source from any git repository, from a sub-directory in a repository, with required libraries and configuration. Refer to this guide for more details and examples. #418, Closes #419
Add support to set up composer packages using tools input. Closes #442
tools: none
. Closes #4461.50.0
for PHP 5.6 and below.Internal
Install-Module
inInstall-PSPackage
inwin32.ps1
.add_ppa
function inlinux.sh
.install.ts
.darwin.sh
.extension.ts
.shivammathur/php5-ubuntu
.shivammathur/intl-icu
GitHub releases.clover.xml
tolcov.info
for coverage.clover.xml
has broken conditional coverage support.add_extension_from_source
for all custom supported extensions.add_pecl_extension
tocommon.sh
.switch_version
inlinux.sh
to accept parameters.tsconfig.json
.moduleResolution
tonode
intsconfig.json
.15.x
in Node workflow.SECURITY.md
.v2.10.0
Compare Source
Thanks @dingo-d, @alcaeus, @smoqadam and @glensc for the contributions 🎉
Configuration
📅 Schedule: Branch creation - "before 3am on wednesday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.