47 Commits
1.8.2 ... 1.9.1

Author SHA1 Message Date
github-actions[bot]
d622719c5f Updating lists 2023-11-20 15:04:20 +00:00
github-actions[bot]
bb415ca8c6 Updating lists 2023-11-19 15:04:00 +00:00
github-actions[bot]
863787aaca Updating lists 2023-11-18 15:03:55 +00:00
github-actions[bot]
b44eafb2c0 Updating lists 2023-11-07 15:04:00 +00:00
github-actions[bot]
a8d07a7ebe Updating lists 2023-10-26 15:04:16 +00:00
Shivam Mathur
844d1f1ac9 Merge pull request #36 from shivammathur/dependabot/npm_and_yarn/babel/traverse-7.23.2
Bump @babel/traverse from 7.19.4 to 7.23.2
2023-10-18 15:51:20 +05:30
dependabot[bot]
3b1bb85fc9 Bump @babel/traverse from 7.19.4 to 7.23.2
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.19.4 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 10:18:26 +00:00
github-actions[bot]
d776e47f06 Updating lists 2023-09-28 15:04:23 +00:00
github-actions[bot]
23e13768c5 Updating lists 2023-09-27 15:04:38 +00:00
github-actions[bot]
03b30f7d9f Updating lists 2023-09-26 15:04:17 +00:00
github-actions[bot]
cfc6bab678 Updating lists 2023-09-14 15:04:38 +00:00
github-actions[bot]
e8283f3a29 Updating lists 2023-08-10 15:04:30 +00:00
Shivam Mathur
e303256c08 Update Node.js dependenices
Bump version to 1.10.0
2023-07-29 22:37:26 +05:30
Shivam Mathur
63adf40f8c Try to fix packages before installing libraries 2023-07-29 22:33:18 +05:30
github-actions[bot]
7d0d256df1 Updating lists 2023-06-22 15:04:14 +00:00
github-actions[bot]
f6bffb2308 Updating lists 2023-05-19 15:04:12 +00:00
Shivam Mathur
5e752a9c57 Merge pull request #31 from shivammathur/dependabot/npm_and_yarn/xml2js-and-azure/ms-rest-js-and-azure/storage-blob-0.5.0
Bump xml2js, @azure/ms-rest-js and @azure/storage-blob
2023-04-17 07:36:39 +05:30
dependabot[bot]
a0de9172f2 Bump xml2js, @azure/ms-rest-js and @azure/storage-blob
Bumps [xml2js](https://github.com/Leonidas-from-XIV/node-xml2js), [@azure/ms-rest-js](https://github.com/Azure/ms-rest-js) and [@azure/storage-blob](https://github.com/Azure/azure-sdk-for-js). These dependencies needed to be updated together.

Updates `xml2js` from 0.4.23 to 0.5.0
- [Release notes](https://github.com/Leonidas-from-XIV/node-xml2js/releases)
- [Commits](https://github.com/Leonidas-from-XIV/node-xml2js/commits/0.5.0)

Updates `@azure/ms-rest-js` from 2.6.1 to 2.6.6
- [Release notes](https://github.com/Azure/ms-rest-js/releases)
- [Changelog](https://github.com/Azure/ms-rest-js/blob/master/Changelog.md)
- [Commits](https://github.com/Azure/ms-rest-js/commits)

Updates `@azure/storage-blob` from 12.10.0 to 12.14.0
- [Release notes](https://github.com/Azure/azure-sdk-for-js/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Changelog-for-next-generation.md)
- [Commits](https://github.com/Azure/azure-sdk-for-js/compare/@azure/storage-blob_12.10.0...@azure/storage-blob_12.14.0)

---
updated-dependencies:
- dependency-name: xml2js
  dependency-type: indirect
- dependency-name: "@azure/ms-rest-js"
  dependency-type: indirect
- dependency-name: "@azure/storage-blob"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 01:49:18 +00:00
Shivam Mathur
5c19332f87 Bump version to 1.9.1
Add support for php-version-file

Update Node.js dependencies
2023-04-17 07:17:34 +05:30
Shivam Mathur
c8177cca56 Drop support for ubuntu 18.04 2023-04-04 15:07:22 +00:00
github-actions[bot]
15d69f21b8 Updating lists 2023-02-09 15:04:15 +00:00
Shivam Mathur
e13a77655f Happy new year 🎉 [skip ci] 2023-02-09 12:57:05 +05:30
github-actions[bot]
680ac6a4c1 Updating lists 2023-01-29 03:23:52 +00:00
Shivam Mathur
b433d435c1 Add PHP 8.3 to the README 2023-01-29 03:41:20 +05:30
Shivam Mathur
d6a8ec7cfb Merge pull request #30 from danepowell/cache-v3
use cache@v3
2023-01-24 21:28:43 +05:30
Dane Powell
41dbe75153 use cache@v3 2023-01-24 07:48:02 -08:00
github-actions[bot]
dafd61109e Updating lists 2023-01-20 15:04:21 +00:00
github-actions[bot]
581f023de0 Updating lists 2023-01-19 15:04:22 +00:00
github-actions[bot]
56ea88f536 Updating lists 2023-01-14 15:04:08 +00:00
github-actions[bot]
1970264699 Updating lists 2023-01-12 15:06:56 +00:00
github-actions[bot]
e119b54661 Updating lists 2023-01-11 15:07:15 +00:00
Shivam Mathur
efbaf97d0a Merge pull request #29 from shivammathur/dependabot/npm_and_yarn/json5-1.0.2
Bump json5 from 1.0.1 to 1.0.2
2023-01-08 17:16:40 +05:30
dependabot[bot]
a8ecef19ac Bump json5 from 1.0.1 to 1.0.2
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-08 06:57:19 +00:00
Shivam Mathur
bb222c3f18 Update README 2022-12-26 03:53:52 +05:30
github-actions[bot]
aedfae77ea Updating lists 2022-12-22 15:04:41 +00:00
github-actions[bot]
ad807e7d2c Updating lists 2022-12-15 15:04:37 +00:00
Shivam Mathur
38fa3d98ee Fix package regex in linux.sh 2022-12-11 03:40:02 +05:30
github-actions[bot]
861c58f080 Updating lists 2022-12-01 15:04:37 +00:00
github-actions[bot]
2ac4a0798e Updating lists 2022-11-24 15:04:13 +00:00
github-actions[bot]
021b07a2b2 Updating lists 2022-11-17 15:04:39 +00:00
github-actions[bot]
dc54f0353a Updating lists 2022-11-16 15:04:44 +00:00
github-actions[bot]
fd65aac1a3 Updating lists 2022-11-13 15:04:57 +00:00
github-actions[bot]
1dd1fede85 Updating lists 2022-11-03 15:05:44 +00:00
github-actions[bot]
f453437052 Updating lists 2022-10-27 15:04:43 +00:00
Shivam Mathur
813b6608e7 Update actions 2022-10-12 17:03:25 +05:30
Shivam Mathur
10843c9071 Bump version to 1.9.0
Bump Node.js dependencies
2022-10-12 16:51:25 +05:30
Shivam Mathur
db6bf65bd9 Switch to $GITHUB_OUTPUT 2022-10-12 16:44:36 +05:30
17 changed files with 7144 additions and 7930 deletions

View File

@@ -13,13 +13,13 @@ jobs:
fetch-depth: 2
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
config-file: ./.github/codeql/codeql-configuration.yml
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v1
uses: github/codeql-action/autobuild@v2
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2

View File

@@ -10,14 +10,14 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-20.04, ubuntu-18.04]
os: [ubuntu-22.04, ubuntu-20.04]
steps:
- name: Update lists
run: |
. /etc/os-release
dpkg -l | awk '($1 == "ii") && ($2 ~ /^lib|lib$/) { print $2 }' | sed 's/:amd64//' > /tmp/"$VERSION_CODENAME"-libs
- name: Upload Artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: lists
path: |
@@ -34,7 +34,7 @@ jobs:
ref: develop
fetch-depth: 0
- name: Download lists
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: lists
path: src/lists

View File

@@ -17,14 +17,6 @@ jobs:
contents: read
packages: write
steps:
- name: Harden Runner
uses: step-security/harden-runner@v1
with:
allowed-endpoints:
github.com:443
npm.pkg.github.com:443
registry.npmjs.org:443
- name: Checkout release
if: github.event_name != 'workflow_dispatch'
uses: actions/checkout@v3
@@ -36,7 +28,7 @@ jobs:
ref: ${{ github.event.inputs.tag }}
- name: Setup Node.js
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: '16.x'
registry-url: https://registry.npmjs.org
@@ -54,7 +46,7 @@ jobs:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Change to GitHub Packages registry
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
registry-url: https://npm.pkg.github.com
scope: '@shivammathur'

View File

@@ -15,7 +15,7 @@ jobs:
fetch-depth: 2
- name: Setup Node.js 16.x
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: 16.x
@@ -32,7 +32,7 @@ jobs:
run: npm audit
- name: Send Coverage
uses: codecov/codecov-action@v2
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/lcov.info

View File

@@ -1,7 +1,7 @@
The MIT License (MIT)
Copyright (c) 2020-2022 shivammathur and contributors
Copyright (c) 2020-2023 shivammathur and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -19,4 +19,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
THE SOFTWARE.

View File

@@ -4,7 +4,7 @@
<a href="https://github.com/shivammathur/cache-extensions" title="Cache PHP extensions in GitHub Actions"><img alt="GitHub Actions status" src="https://github.com/shivammathur/cache-extensions/workflows/Main%20workflow/badge.svg"></a>
<a href="https://codecov.io/gh/shivammathur/cache-extensions" title="Code coverage"><img alt="Codecov Code Coverage" src="https://codecov.io/gh/shivammathur/cache-extensions/branch/master/graph/badge.svg"></a>
<a href="https://github.com/shivammathur/cache-extensions/blob/master/LICENSE" title="license"><img alt="LICENSE" src="https://img.shields.io/badge/license-MIT-428f7e.svg?logo=open%20source%20initiative&logoColor=white&labelColor=555555"></a>
<a href="#tada-php-support" title="PHP Versions Supported"><img alt="PHP Versions Supported" src="https://img.shields.io/badge/php-5.3%20to%208.2-777bb3.svg?logo=php&logoColor=white&labelColor=555555"></a>
<a href="#tada-php-support" title="PHP Versions Supported"><img alt="PHP Versions Supported" src="https://img.shields.io/badge/php-5.3%20to%208.3-777bb3.svg?logo=php&logoColor=white&labelColor=555555"></a>
</p>
Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "GitHub Actions"). This action has to be used along with [shivammathur/setup-php](https://github.com/shivammathur/setup-php "Setup PHP") and [actions/cache](https://github.com/actions/cache "Cache in GitHub Actions") GitHub Actions. It configures the environment required to cache PHP extensions. Refer to [Usage](#memo-usage "How to use this") section for details and example workflow.
@@ -37,7 +37,8 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|7.4|`Stable`|`Security fixes only`|
|8.0|`Stable`|`Active`|
|8.1|`Stable`|`Active`|
|8.2|`Nightly`|`In development`|
|8.2|`Stable`|`Active`|
|8.3|`Nightly`|`In development`|
## :cloud: OS/Platform Support
@@ -45,12 +46,10 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|----------------------|------------------------------------|
| Ubuntu 22.04 | `ubuntu-22.04` |
| Ubuntu 20.04 | `ubuntu-latest` or `ubuntu-20.04` |
| Ubuntu 18.04 | `ubuntu-18.04` |
| Windows Server 2022 | `windows-2022` |
| Windows Server 2019 | `windows-latest` or `windows-2019` |
| macOS Big Sur 12.x | `macOS-12` |
| macOS Big Sur 11.x | `macos-latest` or `macOS-11` |
| macOS Catalina 10.15 | `macOS-10.15` |
## :memo: Usage
@@ -58,14 +57,23 @@ Use this GitHub Action when the extensions you are adding in [setup-php](https:/
### Inputs
#### `php-version` (required)
#### `php-version` (optional)
- Specify the PHP version you want to set up.
- Accepts a `string`. For example `'8.1'`.
- Accepts a `string`. For example `'8.0'`.
- Accepts `latest` to set up the latest stable PHP version.
- Accepts `nightly` to set up a nightly build from the master branch of PHP.
- Accepts the format `d.x`, where `d` is the major version. For example `5.x`, `7.x` and `8.x`.
- See [PHP support](#tada-php-support) for supported PHP versions.
- Accepts the format `d.x`, where `d` is the major version. For example `5.x`, `7.x` and `8.x`.
- See [PHP support](#tada-php-support) for the supported PHP versions.
- If not specified, it looks for `php-version-file` input.
#### `php-version-file` (optional)
- Specify a file with the PHP version you want to set up.
- Accepts a `string`. For example `'.phpenv-version'`.
- See [PHP support](#tada-php-support) for the supported PHP versions.
- By default, `.php-version` file is used.
- If not specified and the default `.php-version` file is not found, the latest stable PHP version is set up.
#### `extensions` (required)
@@ -92,7 +100,7 @@ jobs:
strategy:
matrix:
operating-system: [ubuntu-latest, windows-latest, macos-latest]
php-versions: ['7.4', '8.0', '8.1']
php-versions: ['8.0', '8.1', '8.2', '8.3']
name: PHP ${{ matrix.php-versions }} Test on ${{ matrix.operating-system }}
env:
extensions: intl, pcov
@@ -110,7 +118,7 @@ jobs:
key: ${{ env.key }}
- name: Cache extensions
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.extcache.outputs.dir }}
key: ${{ steps.extcache.outputs.key }}
@@ -125,11 +133,11 @@ jobs:
### Thread Safe Setup
If you set up both `TS` and `NTS` PHP versions on `Windows` in your workflow, please add `${{ env.phpts }}` to `key` and `restore-keys` inputs in `actions/cache` step in the above workflow to avoid a conflicting cache.
If you set up both `TS` and `NTS` PHP versions on `Ubuntu` or `Windows` in your workflow, please add `${{ env.phpts }}` to `key` and `restore-keys` inputs in `actions/cache` step in the above workflow to avoid a conflicting cache.
```yaml
- name: Cache extensions
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.extcache.outputs.dir }}
key: ${{ steps.extcache.outputs.key }}-${{ env.phpts }}

View File

@@ -6,8 +6,11 @@ branding:
icon: 'box'
inputs:
php-version:
description: 'PHP version you are setting up.'
required: true
description: 'Setup PHP version.'
required: false
php-version-file:
description: 'Setup PHP version from a file.'
required: false
extensions:
description: 'Extensions you want to cache.'
required: true

7448
dist/index.js vendored

File diff suppressed because one or more lines are too long

6573
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "cache-extensions",
"version": "1.8.2",
"version": "1.10.0",
"private": false,
"description": "Cache PHP extensions in GitHub Actions",
"main": "lib/cache.js",
@@ -35,27 +35,27 @@
"author": "shivammathur",
"license": "MIT",
"dependencies": {
"@actions/cache": "^3.0.4",
"@actions/core": "^1.9.1",
"@actions/cache": "^3.2.1",
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.1",
"setup-php": "2.21.2"
"setup-php": "2.25.4"
},
"devDependencies": {
"@types/jest": "^29.0.0",
"@types/node": "^18.7.14",
"@typescript-eslint/eslint-plugin": "^5.36.0",
"@typescript-eslint/parser": "^5.36.0",
"@vercel/ncc": "^0.34.0",
"eslint": "^8.23.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jest": "^27.0.1",
"eslint-plugin-prettier": "^4.2.1",
"jest": "^29.0.1",
"jest-circus": "^29.0.1",
"prettier": "^2.7.1",
"ts-jest": "^28.0.8",
"typescript": "^4.8.2"
"@types/jest": "^29.5.3",
"@types/node": "^20.4.5",
"@typescript-eslint/eslint-plugin": "^6.2.0",
"@typescript-eslint/parser": "^6.2.0",
"@vercel/ncc": "^0.36.1",
"eslint": "^8.46.0",
"eslint-config-prettier": "^8.9.0",
"eslint-plugin-import": "^2.28.0",
"eslint-plugin-jest": "^27.2.3",
"eslint-plugin-prettier": "^5.0.0",
"jest": "^29.6.2",
"jest-circus": "^29.6.2",
"prettier": "^3.0.0",
"ts-jest": "^29.1.1",
"typescript": "^5.1.6"
},
"bugs": {
"url": "https://github.com/shivammathur/cache-extensions/issues"

View File

@@ -43,9 +43,7 @@ export async function handleDependencies(
*/
export async function run(): Promise<void> {
try {
const version: string = await spu.parseVersion(
await spu.getInput('php-version', true)
);
const version: string = await spu.parseVersion(await spu.readPHPVersion());
const extensions: string = await utils.filterExtensions(
await spu.getInput('extensions', true)
);

View File

@@ -1,737 +0,0 @@
lib32gcc1
lib32stdc++6
lib32z1
libaccountsservice0
libacl1
libaio1
libapparmor1
libapr1
libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-inst2.0
libapt-pkg5.0
libarchive13
libargon2-0
libargon2-1
libasan4
libasan5
libasan6
libasn1-8-heimdal
libasound2
libasound2-data
libaspell15
libassuan0
libatk-bridge2.0-0
libatk1.0-0
libatk1.0-data
libatm1
libatomic1
libatspi2.0-0
libattr1
libaudit-common
libaudit1
libavahi-client3
libavahi-common-data
libavahi-common3
libbind9-160
libbinutils
libbison-dev
libblas-dev
libblas3
libblkid1
libbsd0
libburn4
libbz2-1.0
libbz2-dev
libc++-dev
libc++-helpers
libc++1
libc++abi-dev
libc++abi1
libc-ares2
libc-bin
libc-client2007e
libc-dev-bin
libc6
libc6-dev
libc6-i386
libcairo-gobject2
libcairo-script-interpreter2
libcairo2
libcairo2-dev
libcanberra0
libcap-ng0
libcap2
libcap2-bin
libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libcilkrts5
libclang-common-9-dev
libclang-cpp9
libclang1-9
libcolord2
libcom-err2
libcommon-sense-perl
libcroco3
libcryptsetup12
libcups2
libcurl3-gnutls
libcurl4
libdatrie1
libdb5.3
libdbus-1-3
libdbus-glib-1-2
libdbusmenu-glib4
libdbusmenu-gtk3-4
libdconf1
libdebconfclient0
libdevmapper-event1.02.1
libdevmapper1.02.1
libdjvulibre-dev
libdjvulibre-text
libdjvulibre21
libdns-export1100
libdns1100
libdpkg-perl
libdrm-amdgpu1
libdrm-common
libdrm-intel1
libdrm-nouveau2
libdrm-radeon1
libdrm2
libdumbnet1
libdw1
libdwarf1
libeatmydata1
libedit2
libefiboot1
libefivar1
libelf1
libenchant1c2a
libencode-locale-perl
libepoxy0
liberror-perl
libestr0
libevent-2.1-6
libevent-core-2.1-6
libevent-pthreads-2.1-6
libexif-dev
libexif12
libexpat1
libexpat1-dev
libext2fs2
libfakeroot
libfastjson4
libfbclient2
libfcgi-perl
libfdisk1
libffi-dev
libffi6
libfftw3-double3
libfontconfig1
libfontconfig1-dev
libfontenc1
libfreetype6
libfreetype6-dev
libfribidi0
libfuse2
libfuse3-3
libgbm-dev
libgbm1
libgc1c2
libgcc-10-dev
libgcc-7-dev
libgcc-9-dev
libgcc-s1
libgcc1
libgconf-2-4
libgcrypt20
libgd3
libgdbm-compat4
libgdbm5
libgdiplus
libgdk-pixbuf2.0-0
libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev
libgeoip1
libgflags2.2
libgfortran-10-dev
libgfortran-7-dev
libgfortran-9-dev
libgfortran4
libgfortran5
libgif7
libgirepository-1.0-1
libgl1
libgl1-mesa-dri
libglade2-0
libglade2.0-cil
libglapi-mesa
libglib2.0-0
libglib2.0-bin
libglib2.0-cil
libglib2.0-data
libglib2.0-dev
libglib2.0-dev-bin
libglvnd0
libglx-mesa0
libglx0
libgmp-dev
libgmp10
libgmpxx4ldbl
libgnutls30
libgomp1
libgoogle-glog0v5
libgpg-error0
libgpgme11
libgpm2
libgraphite2-3
libgraphite2-dev
libgsl-dev
libgsl23
libgslcblas0
libgssapi-krb5-2
libgssapi3-heimdal
libgtk-3-0
libgtk-3-common
libgtk2.0-0
libgtk2.0-cil
libgtk2.0-common
libharfbuzz-dev
libharfbuzz-gobject0
libharfbuzz-icu0
libharfbuzz0b
libhavege1
libhcrypto4-heimdal
libheimbase1-heimdal
libheimntlm0-heimdal
libhogweed4
libhtml-parser-perl
libhtml-tagset-perl
libhtml-template-perl
libhttp-date-perl
libhttp-message-perl
libhunspell-1.6-0
libhx509-5-heimdal
libice-dev
libice6
libicu-dev
libicu-le-hb-dev
libicu-le-hb0
libicu60
libicu65
libiculx60
libidn11
libidn2-0
libilmbase-dev
libilmbase12
libio-html-perl
libip4tc0
libip6tc0
libiptc0
libirs160
libisc-export169
libisc169
libisccc160
libisccfg160
libisl19
libisns0
libisoburn1
libisofs6
libitm1
libjansson4
libjbig-dev
libjbig0
libjpeg-dev
libjpeg-turbo8
libjpeg-turbo8-dev
libjpeg8
libjpeg8-dev
libjq1
libjs-jquery
libjson-c3
libjson-glib-1.0-0
libjson-glib-1.0-common
libjson-perl
libjson-xs-perl
libjte1
libk5crypto3
libkeyutils1
libklibc
libkmod2
libkrb5-26-heimdal
libkrb5-3
libkrb5support0
libksba8
liblapack-dev
liblapack3
liblcms2-2
liblcms2-dev
libldap-2.4-2
libldap-common
libldb1
liblldb-9
libllvm10
libllvm6.0
libllvm9
liblmdb0
liblocale-gettext-perl
liblqr-1-0
liblqr-1-0-dev
liblsan0
libltdl-dev
libltdl7
liblua5.2-0
liblvm2app2.2
liblvm2cmd2.02
liblwp-mediatypes-perl
liblwres160
liblxc-common
liblxc1
liblz4-1
liblzma-dev
liblzma5
liblzo2-2
libmagic-dev
libmagic-mgc
libmagic1
libmagickcore-6-arch-config
libmagickcore-6-headers
libmagickcore-6.q16-3
libmagickcore-6.q16-3-extra
libmagickcore-6.q16-dev
libmagickcore-dev
libmagickwand-6-headers
libmagickwand-6.q16-3
libmagickwand-6.q16-dev
libmagickwand-dev
libmcrypt4
libmediainfo0v5
libmemcached11
libmms0
libmnl0
libmono-2.0-1
libmono-2.0-dev
libmono-accessibility4.0-cil
libmono-cairo4.0-cil
libmono-cecil-private-cil
libmono-cil-dev
libmono-codecontracts4.0-cil
libmono-compilerservices-symbolwriter4.0-cil
libmono-corlib4.5-cil
libmono-cscompmgd0.0-cil
libmono-csharp4.0c-cil
libmono-custommarshalers4.0-cil
libmono-data-tds4.0-cil
libmono-db2-1.0-cil
libmono-debugger-soft4.0a-cil
libmono-http4.0-cil
libmono-i18n-cjk4.0-cil
libmono-i18n-mideast4.0-cil
libmono-i18n-other4.0-cil
libmono-i18n-rare4.0-cil
libmono-i18n-west4.0-cil
libmono-i18n4.0-all
libmono-i18n4.0-cil
libmono-ldap4.0-cil
libmono-management4.0-cil
libmono-messaging-rabbitmq4.0-cil
libmono-messaging4.0-cil
libmono-microsoft-build-engine4.0-cil
libmono-microsoft-build-framework4.0-cil
libmono-microsoft-build-tasks-v4.0-4.0-cil
libmono-microsoft-build-utilities-v4.0-4.0-cil
libmono-microsoft-build4.0-cil
libmono-microsoft-csharp4.0-cil
libmono-microsoft-visualc10.0-cil
libmono-microsoft-web-infrastructure1.0-cil
libmono-oracle4.0-cil
libmono-parallel4.0-cil
libmono-peapi4.0a-cil
libmono-posix4.0-cil
libmono-profiler
libmono-rabbitmq4.0-cil
libmono-relaxng4.0-cil
libmono-security4.0-cil
libmono-sharpzip4.84-cil
libmono-simd4.0-cil
libmono-smdiagnostics0.0-cil
libmono-sqlite4.0-cil
libmono-system-componentmodel-composition4.0-cil
libmono-system-componentmodel-dataannotations4.0-cil
libmono-system-configuration-install4.0-cil
libmono-system-configuration4.0-cil
libmono-system-core4.0-cil
libmono-system-data-datasetextensions4.0-cil
libmono-system-data-entity4.0-cil
libmono-system-data-linq4.0-cil
libmono-system-data-services-client4.0-cil
libmono-system-data-services4.0-cil
libmono-system-data4.0-cil
libmono-system-deployment4.0-cil
libmono-system-design4.0-cil
libmono-system-drawing-design4.0-cil
libmono-system-drawing4.0-cil
libmono-system-dynamic4.0-cil
libmono-system-enterpriseservices4.0-cil
libmono-system-identitymodel-selectors4.0-cil
libmono-system-identitymodel4.0-cil
libmono-system-io-compression-filesystem4.0-cil
libmono-system-io-compression4.0-cil
libmono-system-json-microsoft4.0-cil
libmono-system-json4.0-cil
libmono-system-ldap-protocols4.0-cil
libmono-system-ldap4.0-cil
libmono-system-management4.0-cil
libmono-system-messaging4.0-cil
libmono-system-net-http-formatting4.0-cil
libmono-system-net-http-webrequest4.0-cil
libmono-system-net-http4.0-cil
libmono-system-net4.0-cil
libmono-system-numerics-vectors4.0-cil
libmono-system-numerics4.0-cil
libmono-system-reactive-core2.2-cil
libmono-system-reactive-debugger2.2-cil
libmono-system-reactive-experimental2.2-cil
libmono-system-reactive-interfaces2.2-cil
libmono-system-reactive-linq2.2-cil
libmono-system-reactive-observable-aliases0.0-cil
libmono-system-reactive-platformservices2.2-cil
libmono-system-reactive-providers2.2-cil
libmono-system-reactive-runtime-remoting2.2-cil
libmono-system-reactive-windows-forms2.2-cil
libmono-system-reactive-windows-threading2.2-cil
libmono-system-reflection-context4.0-cil
libmono-system-runtime-caching4.0-cil
libmono-system-runtime-durableinstancing4.0-cil
libmono-system-runtime-serialization-formatters-soap4.0-cil
libmono-system-runtime-serialization4.0-cil
libmono-system-runtime4.0-cil
libmono-system-security4.0-cil
libmono-system-servicemodel-activation4.0-cil
libmono-system-servicemodel-discovery4.0-cil
libmono-system-servicemodel-internals0.0-cil
libmono-system-servicemodel-routing4.0-cil
libmono-system-servicemodel-web4.0-cil
libmono-system-servicemodel4.0a-cil
libmono-system-serviceprocess4.0-cil
libmono-system-threading-tasks-dataflow4.0-cil
libmono-system-transactions4.0-cil
libmono-system-web-abstractions4.0-cil
libmono-system-web-applicationservices4.0-cil
libmono-system-web-dynamicdata4.0-cil
libmono-system-web-extensions-design4.0-cil
libmono-system-web-extensions4.0-cil
libmono-system-web-http-selfhost4.0-cil
libmono-system-web-http-webhost4.0-cil
libmono-system-web-http4.0-cil
libmono-system-web-mobile4.0-cil
libmono-system-web-mvc3.0-cil
libmono-system-web-razor2.0-cil
libmono-system-web-regularexpressions4.0-cil
libmono-system-web-routing4.0-cil
libmono-system-web-services4.0-cil
libmono-system-web-webpages-deployment2.0-cil
libmono-system-web-webpages-razor2.0-cil
libmono-system-web-webpages2.0-cil
libmono-system-web4.0-cil
libmono-system-windows-forms-datavisualization4.0a-cil
libmono-system-windows-forms4.0-cil
libmono-system-windows4.0-cil
libmono-system-workflow-activities4.0-cil
libmono-system-workflow-componentmodel4.0-cil
libmono-system-workflow-runtime4.0-cil
libmono-system-xaml4.0-cil
libmono-system-xml-linq4.0-cil
libmono-system-xml-serialization4.0-cil
libmono-system-xml4.0-cil
libmono-system4.0-cil
libmono-tasklets4.0-cil
libmono-webbrowser4.0-cil
libmono-webmatrix-data4.0-cil
libmono-windowsbase4.0-cil
libmono-xbuild-tasks4.0-cil
libmonoboehm-2.0-1
libmonosgen-2.0-1
libmonosgen-2.0-dev
libmount1
libmpc3
libmpdec2
libmpfr6
libmpx2
libmspack0
libmysqlclient-dev
libmysqlclient20
libncurses5
libncurses5-dev
libncursesw5
libnet1
libnetfilter-conntrack3
libnetplan0
libnettle6
libnewt0.52
libnfnetlink0
libnghttp2-14
libnginx-mod-http-geoip
libnginx-mod-http-image-filter
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnih1
libnl-3-200
libnl-genl-3-200
libnorm1
libnotify4
libnpth0
libnspr4
libnss-systemd
libnss3
libntfs-3g88
libnuma1
libobjc-7-dev
libobjc4
libodbc1
libogg0
libomp-9-dev
libomp5-9
libonig4
libopenexr-dev
libopenexr22
libp11-kit0
libpam-cap
libpam-modules
libpam-modules-bin
libpam-runtime
libpam-systemd
libpam0g
libpango-1.0-0
libpangocairo-1.0-0
libpangoft2-1.0-0
libpaper-utils
libpaper1
libparted2
libpcap0.8
libpci3
libpciaccess0
libpcre16-3
libpcre2-16-0
libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
libpcrecpp0v5
libperl5.26
libpfm4
libpgm-5.2-0
libpipeline1
libpixman-1-0
libpixman-1-dev
libplymouth4
libpng-dev
libpng16-16
libpolkit-agent-1-0
libpolkit-backend-1-0
libpolkit-gobject-1-0
libpopt0
libpq-dev
libpq5
libprocps6
libprotobuf-c1
libprotobuf10
libproxy1v5
libpsl5
libpthread-stubs0-dev
libpython-dev
libpython-stdlib
libpython2.7
libpython2.7-dev
libpython2.7-minimal
libpython2.7-stdlib
libpython3-dev
libpython3-stdlib
libpython3.6
libpython3.6-dev
libpython3.6-minimal
libpython3.6-stdlib
libqdbm14
libquadmath0
librabbitmq4
libre2-4
libreadline-dev
libreadline5
libreadline7
librecode0
librest-0.7-0
libroken18-heimdal
librpm8
librpmbuild8
librpmio8
librpmsign8
librsvg2-2
librsvg2-common
librsvg2-dev
librtmp1
libruby2.5
libsasl2-2
libsasl2-modules
libsasl2-modules-db
libsctp1
libseccomp2
libsecret-1-0
libsecret-1-dev
libsecret-common
libselinux1
libsemanage-common
libsemanage1
libsensors4
libsepol1
libserf-1-1
libsigsegv2
libslang2
libsm-dev
libsm6
libsmartcols1
libsnappy1v5
libsnmp-base
libsnmp30
libsodium23
libsoup-gnome2.4-1
libsoup2.4-1
libsqlite3-0
libsqlite3-dev
libss2
libssl-dev
libssl1.0.0
libssl1.1
libstdc++-10-dev
libstdc++-7-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
libsvn1
libsybdb5
libsystemd0
libtalloc2
libtasn1-6
libtbb2
libtcl8.6
libtdb1
libtevent0
libtext-charwidth-perl
libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtiff-dev
libtiff5
libtiff5-dev
libtiffxx5
libtimedate-perl
libtinfo-dev
libtinfo5
libtinyxml2-6
libtk8.6
libtommath1
libtool
libtsan0
libtypes-serialiser-perl
libu2f-udev
libubsan0
libubsan1
libucl1
libudev1
libunistring2
libunwind8
liburi-perl
libusb-1.0-0
libutempter0
libuuid1
libuv1
libvorbis0a
libvorbisfile3
libvpx5
libvulkan1
libwayland-client0
libwayland-cursor0
libwayland-egl1
libwayland-server0
libwbclient0
libwebp6
libwind0-heimdal
libwmf-dev
libwmf0.2-7
libwrap0
libwxbase3.0-0v5
libwxgtk3.0-0v5
libx11-6
libx11-data
libx11-dev
libx11-xcb1
libxau-dev
libxau6
libxaw7
libxcb-dri2-0
libxcb-dri3-0
libxcb-glx0
libxcb-present0
libxcb-render0
libxcb-render0-dev
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
libxcb1
libxcb1-dev
libxcomposite1
libxcursor1
libxdamage1
libxdmcp-dev
libxdmcp6
libxext-dev
libxext6
libxfixes3
libxfont2
libxft-dev
libxft2
libxi6
libxinerama1
libxkbcommon0
libxkbfile-dev
libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-sax-base-perl
libxml-sax-perl
libxml2
libxml2-dev
libxmlrpc-epi0
libxmlsec1
libxmlsec1-openssl
libxmu6
libxmuu1
libxpm4
libxrandr2
libxrender-dev
libxrender1
libxshmfence1
libxslt1.1
libxss1
libxt-dev
libxt6
libxtables12
libxtst6
libxxf86vm1
libyajl2
libyaml-0-2
libzen0v5
libzip4
libzmq5
libzstd1
python3-oauthlib

View File

@@ -1,26 +1,171 @@
a
a
a
amqp
b
b
b
b
b
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
couchbase
e
e
event
expect
f
f
g
g
g
g
g
g
g
gearman
gnupg
grpc
h
h
i
i
i
i
i
imagick
imap
j
j
j
k
l
l
l
l
l
l
l
l
l
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lib
lua
m
m
m
m
m
mcrypt
memcached
mongodb
n
n
n
newrelic
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
p
p
p
p
p
p
p
p
p
p
pdo_sqlsrv
pecl_http
phalcon3
phalcon4
phalcon5
psr
r
r
r
r
r
rdkafka
redis
s
s
s
snmp
sqlsrv
ssh2
swoole
t
u
u
u
u
uuid
v
v
v8js
vips
xdebug
xdebug2
xlswriter
w
w
x
x
x
x
x
x
x
yaml
z
z
z
z
z
z
z
z
z
zmq

View File

@@ -220,6 +220,7 @@ libgtk-3-common
libgudev-1.0-0
libgusb2
libharfbuzz0b
libhashkit2
libhavege1
libhcrypto4-heimdal
libheimbase1-heimdal
@@ -299,6 +300,7 @@ liblua5.2-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblz4-1
liblz4-dev
liblzma-dev
liblzma5
liblzo2-2
@@ -487,6 +489,7 @@ libnetplan0
libnettle7
libnewt0.52
libnfnetlink0
libnftables1
libnftnl11
libnghttp2-14
libnginx-mod-http-image-filter
@@ -735,6 +738,7 @@ libxml-sax-perl
libxml2
libxml2-dev
libxmlb1
libxmlb2
libxmlrpc-epi0
libxmlsec1
libxmlsec1-openssl
@@ -754,6 +758,7 @@ libxtst6
libxxf86vm1
libyajl2
libyaml-0-2
libyaml-dev
libz3-4
libz3-dev
libzen0v5

View File

@@ -16,6 +16,7 @@ libargon2-1
libaria2-0
libasan5
libasan6
libasan8
libasound2
libasound2-data
libaspell15
@@ -71,6 +72,7 @@ libcairo-gobject2
libcairo-script-interpreter2
libcairo2
libcairo2-dev
libcanberra0
libcap-ng0
libcap2
libcap2-bin
@@ -79,15 +81,15 @@ libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libclang-common-12-dev
libclang-common-13-dev
libclang-common-14-dev
libclang-cpp12
libclang-common-15-dev
libclang-cpp13
libclang-cpp14
libclang1-12
libclang-cpp15
libclang1-13
libclang1-14
libclang1-15
libclone-perl
libcolord2
libcom-err2
@@ -105,6 +107,8 @@ libdav1d5
libdb5.3
libdbus-1-3
libdbus-glib-1-2
libdbusmenu-glib4
libdbusmenu-gtk3-4
libdconf1
libde265-0
libdebconfclient0
@@ -119,6 +123,7 @@ libdns-export1110
libdpkg-perl
libdrm-amdgpu1
libdrm-common
libdrm-intel1
libdrm-nouveau2
libdrm-radeon1
libdrm2
@@ -171,6 +176,8 @@ libgc1
libgcab-1.0-0
libgcc-10-dev
libgcc-11-dev
libgcc-12-dev
libgcc-13-dev
libgcc-9-dev
libgcc-s1
libgconf-2-4
@@ -186,6 +193,8 @@ libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common
libgfortran-10-dev
libgfortran-11-dev
libgfortran-12-dev
libgfortran-13-dev
libgfortran-9-dev
libgfortran5
libgif7
@@ -230,6 +239,7 @@ libhtml-template-perl
libhttp-date-perl
libhttp-message-perl
libhunspell-1.7-0
libhwasan0
libice-dev
libice6
libicu-dev
@@ -282,12 +292,12 @@ liblcms2-2
liblcms2-dev
libldap-2.5-0
libldap-common
liblldb-12
liblldb-13
liblldb-14
libllvm12
liblldb-15
libllvm13
libllvm14
libllvm15
liblmdb0
liblocale-gettext-perl
liblqr-1-0
@@ -299,6 +309,7 @@ liblua5.3-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblz4-1
liblz4-dev
liblzma-dev
liblzma5
liblzo2-2
@@ -512,6 +523,7 @@ libobjc4
libodbc2
libodbccr2
libodbcinst2
libogg0
libonig5
libopenexr-dev
libopenexr25
@@ -536,6 +548,7 @@ libparted-fs-resize0
libparted2
libpcap0.8
libpci3
libpciaccess0
libpcre16-3
libpcre2-16-0
libpcre2-32-0
@@ -630,6 +643,8 @@ libssl1.1
libssl3
libstdc++-10-dev
libstdc++-11-dev
libstdc++-12-dev
libstdc++-13-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
@@ -639,6 +654,7 @@ libsystemd0
libtalloc2
libtasn1-6
libtcl8.6
libtdb1
libterm-readkey-perl
libtevent0
libtext-charwidth-perl
@@ -662,8 +678,10 @@ libtk8.6
libtommath1
libtool
libtsan0
libtsan2
libtss2-esys-3.0.2-0
libtss2-mu0
libtss2-rc0
libtss2-sys1
libtss2-tcti-cmd0
libtss2-tcti-device0
@@ -688,6 +706,8 @@ libutf8proc2
libuuid1
libuv1
libvolume-key1
libvorbis0a
libvorbisfile3
libvulkan1
libwayland-client0
libwayland-cursor0
@@ -713,6 +733,7 @@ libxcb-dri2-0
libxcb-dri3-0
libxcb-glx0
libxcb-present0
libxcb-randr0
libxcb-render0
libxcb-render0-dev
libxcb-shm0
@@ -762,6 +783,7 @@ libxxf86vm1
libxxhash0
libyajl2
libyaml-0-2
libyaml-dev
libz3-4
libz3-dev
libzen0v5

View File

@@ -98,8 +98,8 @@ data() {
key="$os"-"$version"-"$key"-"$date"
echo "$dir" > "${RUNNER_TEMP:?}"/dir
echo "$key" > "${RUNNER_TEMP:?}"/key
echo "::set-output name=dir::$dir"
echo "::set-output name=key::$key"
echo "dir=$dir" >> "${GITHUB_OUTPUT:?}"
echo "key=$key" >> "${GITHUB_OUTPUT:?}"
}
dependencies() {

View File

@@ -4,6 +4,12 @@ link_apt_fast() {
fi
}
add_sudo() {
if ! command -v sudo >/dev/null; then
apt-get install -y sudo || (apt-get update && apt-get install -y sudo)
fi
}
fetch_package() {
if ! [ -e /tmp/Packages ]; then
. /etc/os-release
@@ -79,7 +85,7 @@ setup_libraries() {
IFS=' ' read -r -a libraries_array <<<"$libraries"
link_apt_fast
echo "::group::Logs to set up required libraries"
sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y "${libraries_array[@]}"
sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y "${libraries_array[@]}" || (sudo DEBIAN_FRONTEND=noninteractive apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y "${libraries_array[@]}")
ec="$?"
echo "::endgroup::"
if [ "$ec" -eq "0" ]; then mark="${tick:?}"; else mark="${cross:?}"; fi
@@ -92,13 +98,14 @@ setup_dependencies() {
extensions=$1
extension_dir=$2
[[ -z "${extensions// }" ]] && return
add_sudo
IFS=' ' read -r -a extensions_array <<<"$(echo "$extensions" | sed -e "s/pdo[_-]//g" -Ee "s/^|,\s*/ php$version-/g")"
. /etc/os-release
sudo rm -rf "${ext_config_directory:?}" || true
libraries=""
extension_packages=""
for extension_package in "${extensions_array[@]}"; do
[[ ! "$extension_package" =~ php[0-9]+\.[0-9]+-[a-zA-Z]+$ ]] && continue
[[ ! "$extension_package" =~ php[0-9]+\.[0-9]+-[a-zA-Z0-9]+$ ]] && continue
fetch_package
libraries="$libraries $(get_dependencies "$extension_package" "lib")"
IFS=' ' read -r -a dependency_extension_packages_array <<<"$(get_dependencies "$extension_package" "php$version-")"