39 Commits
1.7.0 ... 1.8.2

Author SHA1 Message Date
Shivam Mathur
d33ccd80be Add brew to PATH 2022-09-26 15:21:48 +00:00
github-actions[bot]
46aa274405 Updating lists 2022-09-07 15:05:11 +00:00
Shivam Mathur
9e9ad0fe5f Fix typo in ln command in darwin.sh 2022-09-05 17:35:22 +05:30
Shivam Mathur
f23390933a Remove ca-certificates formula update workaround 2022-09-05 17:28:11 +05:30
Shivam Mathur
c64a1a91b0 Manually link brew libraries on failure 2022-09-05 17:27:11 +05:30
Shivam Mathur
7e3a83aacd Add uses_from_macos libraries in cache on macOS 2022-09-02 16:55:46 +05:30
Shivam Mathur
c157badb12 Reset cache date to 20220831 2022-08-31 18:22:10 +05:30
Shivam Mathur
b47f0a89fb Bump version to 1.8.2
Bump Node.js dependencies
2022-08-30 14:43:45 +05:30
Shivam Mathur
58311d5340 Fix regex in check for valid package names 2022-08-30 14:36:45 +05:30
Shivam Mathur
55034917ed Use dpkg --print-architecture 2022-08-30 14:27:37 +05:30
github-actions[bot]
114c7bf40c Updating lists 2022-08-30 08:39:14 +00:00
Shivam Mathur
567dc865bb Add check for valid package names 2022-08-30 13:38:54 +05:30
Shivam Mathur
4f05196702 Bump version to 1.8.1 2022-08-19 06:03:29 +05:30
github-actions[bot]
ca0d32e2b6 Updating lists 2022-07-26 15:05:17 +00:00
github-actions[bot]
9e26d5f265 Updating lists 2022-07-19 15:11:26 +00:00
github-actions[bot]
9e71412838 Updating lists 2022-07-15 19:24:14 +00:00
github-actions[bot]
b75ff681db Updating lists 2022-07-12 15:08:02 +00:00
github-actions[bot]
bbf97e5a63 Updating lists 2022-07-11 15:15:18 +00:00
github-actions[bot]
c594f79a40 Updating lists 2022-07-05 10:05:22 +00:00
github-actions[bot]
88dd43cc51 Updating lists 2022-06-02 15:05:32 +00:00
Shivam Mathur
b9595b0dae Create deps directory in RUNNER_TOOL_CACHE 2022-05-30 13:40:39 +05:30
Shivam Mathur
d6ac7eb3e1 Check for dependency directory before saving cache 2022-05-30 13:25:36 +05:30
Shivam Mathur
845ca860fc Bump version to 1.8.0 2022-05-30 11:18:37 +05:30
github-actions[bot]
67605e7cb2 Updating lists 2022-05-30 05:41:41 +00:00
Shivam Mathur
a96cc5f73c Add support for ubuntu-22.04 2022-05-30 11:07:44 +05:30
github-actions[bot]
111a9ae78c Updating lists 2022-05-24 13:52:44 +00:00
github-actions[bot]
51ce802077 Updating lists 2022-04-07 15:13:17 +00:00
github-actions[bot]
6f1e8c47b9 Updating lists 2022-04-06 15:13:20 +00:00
github-actions[bot]
0a28ecc62d Updating lists 2022-04-04 15:08:21 +00:00
Shivam Mathur
257e3c93fb Handle cache errors 2022-03-22 10:31:41 +05:30
Shivam Mathur
f1c2fee180 Clear cache for mongodb and http on macOS 2022-03-04 07:01:05 +05:30
Shivam Mathur
bc065e2169 Bump actions/checkout to v3 2022-03-02 03:16:14 +00:00
Shivam Mathur
f77feb6ec0 Bump Node.js dependencies 2022-03-01 21:06:18 +05:30
Shivam Mathur
850e46eba6 Reset cache for vips on macOS 2022-02-24 23:25:53 +05:30
Shivam Mathur
fe198edd1a Bump version to 1.7.1 2022-02-10 06:54:20 +05:30
Shivam Mathur
9c9aa7fd23 Improve node tests workflow 2022-02-10 06:47:30 +05:30
Shivam Mathur
24eb15e5fa Fix import in cache.test.ts 2022-02-10 06:42:53 +05:30
Shivam Mathur
2f6e2f662c Add CodeQL workflow 2022-02-10 06:38:32 +05:30
Shivam Mathur
a4da3200ee Update Node.js dependencies 2022-02-10 06:38:32 +05:30
18 changed files with 12056 additions and 6845 deletions

View File

@@ -0,0 +1,4 @@
name : CodeQL Configuration
paths:
- './src'

25
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: CodeQL Workflow
on:
workflow_dispatch:
schedule:
- cron: '0 15 * * 6'
jobs:
codeql:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
config-file: ./.github/codeql/codeql-configuration.yml
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

View File

@@ -10,7 +10,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-18.04]
os: [ubuntu-22.04, ubuntu-20.04, ubuntu-18.04]
steps:
- name: Update lists
run: |
@@ -29,7 +29,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
ref: develop
fetch-depth: 0
@@ -38,6 +38,8 @@ jobs:
with:
name: lists
path: src/lists
- name: Add brew to PATH
run: echo "/home/linuxbrew/.linuxbrew/bin" >> $GITHUB_PATH
- name: Update darwin extensions list
run: |
brew tap shivammathur/extensions

View File

@@ -27,10 +27,10 @@ jobs:
- name: Checkout release
if: github.event_name != 'workflow_dispatch'
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Checkout tag
uses: actions/checkout@v2
uses: actions/checkout@v3
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ github.event.inputs.tag }}

View File

@@ -3,10 +3,16 @@ on: [push, pull_request]
jobs:
run:
name: Run
runs-on: ubuntu-latest
runs-on: ${{ matrix.operating-system }}
strategy:
fail-fast: false
matrix:
operating-system: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Setup Node.js 16.x
uses: actions/setup-node@v2
@@ -22,10 +28,14 @@ jobs:
- name: ESLint Check
run: npm run lint
- name: Run tests
run: npm test
- name: Run npm audit
run: npm audit
- name: Send Coverage
continue-on-error: true
timeout-minutes: 1
run: curl -s https://codecov.io/bash | bash -s -- -t ${{secrets.CODECOV_TOKEN}} -f coverage/clover.xml -n github-actions-codecov-${{ matrix.operating-system }}-php${{ matrix.php-versions }}
uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/lcov.info
name: github-actions-codecov-${{ matrix.operating-system }}
fail_ci_if_error: false
verbose: true

View File

@@ -41,14 +41,16 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
## :cloud: OS/Platform Support
|Virtual environment|YAML workflow label|
|--- |--- |
|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 Catalina 10.15|`macos-latest` or `macOS-10.15`|
|macOS Big Sur 11.x|`macOS-11`|
| Virtual environment | YAML workflow label |
|----------------------|------------------------------------|
| 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
@@ -97,7 +99,7 @@ jobs:
key: cache-v1 # can be any string, change to clear the extension cache.
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Setup cache environment
id: extcache

View File

@@ -1,4 +1,4 @@
import path from 'path';
import * as path from 'path';
import * as spu from 'setup-php/lib/utils';
import * as cache from '../src/cache';
import * as utils from '../src/utils';

11229
dist/index.js vendored

File diff suppressed because one or more lines are too long

6652
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.7.0",
"version": "1.8.2",
"private": false,
"description": "Cache PHP extensions in GitHub Actions",
"main": "lib/cache.js",
@@ -35,27 +35,27 @@
"author": "shivammathur",
"license": "MIT",
"dependencies": {
"@actions/cache": "^1.0.8",
"@actions/core": "^1.6.0",
"@actions/exec": "^1.1.0",
"setup-php": "2.15.0"
"@actions/cache": "^3.0.4",
"@actions/core": "^1.9.1",
"@actions/exec": "^1.1.1",
"setup-php": "2.21.2"
},
"devDependencies": {
"@types/jest": "^27.0.3",
"@types/node": "^17.0.0",
"@typescript-eslint/eslint-plugin": "^5.7.0",
"@typescript-eslint/parser": "^5.7.0",
"@vercel/ncc": "^0.33.0",
"eslint": "^8.4.1",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-import": "^2.25.3",
"eslint-plugin-jest": "^25.3.0",
"eslint-plugin-prettier": "^4.0.0",
"jest": "^27.4.5",
"jest-circus": "^27.4.5",
"prettier": "^2.5.1",
"ts-jest": "^27.1.2",
"typescript": "^4.5.4"
"@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"
},
"bugs": {
"url": "https://github.com/shivammathur/cache-extensions/issues"

View File

@@ -2,6 +2,7 @@ import {exec} from '@actions/exec';
import * as cache from '@actions/cache';
import * as core from '@actions/core';
import * as spu from 'setup-php/lib/utils';
import * as fs from 'fs';
import * as path from 'path';
import * as utils from './utils';
@@ -27,8 +28,12 @@ export async function handleDependencies(
[cache_key]
);
await exec(await utils.scriptCall('dependencies', extensions, version));
if (!cache_hit) {
await cache.saveCache([cache_dir], cache_key);
if (!cache_hit && fs.existsSync(cache_dir)) {
try {
await cache.saveCache([cache_dir], cache_key);
} catch {
await cache.saveCache([cache_dir], cache_key + '-take-2');
}
}
}
}
@@ -56,5 +61,11 @@ export async function run(): Promise<void> {
(async () => {
await run();
})().catch(error => {
core.setFailed(error.message);
if (error.name === cache.ValidationError.name) {
core.setFailed(error.message);
} else if (error.name === cache.ReserveCacheError.name) {
core.info(error.message);
} else {
core.warning(error.message);
}
});

View File

@@ -31,7 +31,6 @@ libatspi2.0-0
libattr1
libaudit-common
libaudit1
libauthen-sasl-perl
libavahi-client3
libavahi-common-data
libavahi-common3
@@ -81,7 +80,6 @@ libcryptsetup12
libcups2
libcurl3-gnutls
libcurl4
libdata-dump-perl
libdatrie1
libdb5.3
libdbus-1-3
@@ -133,11 +131,6 @@ libfdisk1
libffi-dev
libffi6
libfftw3-double3
libfile-basedir-perl
libfile-desktopentry-perl
libfile-listing-perl
libfile-mimeinfo-perl
libfont-afm-perl
libfontconfig1
libfontconfig1-dev
libfontenc1
@@ -145,6 +138,7 @@ libfreetype6
libfreetype6-dev
libfribidi0
libfuse2
libfuse3-3
libgbm-dev
libgbm1
libgc1c2
@@ -215,17 +209,11 @@ libhcrypto4-heimdal
libheimbase1-heimdal
libheimntlm0-heimdal
libhogweed4
libhtml-form-perl
libhtml-format-perl
libhtml-parser-perl
libhtml-tagset-perl
libhtml-template-perl
libhtml-tree-perl
libhttp-cookies-perl
libhttp-daemon-perl
libhttp-date-perl
libhttp-message-perl
libhttp-negotiate-perl
libhunspell-1.6-0
libhx509-5-heimdal
libice-dev
@@ -241,10 +229,8 @@ libidn2-0
libilmbase-dev
libilmbase12
libio-html-perl
libio-socket-ssl-perl
libip4tc0
libip6tc0
libipc-system-simple-perl
libiptc0
libirs160
libisc-export169
@@ -302,7 +288,6 @@ liblua5.2-0
liblvm2app2.2
liblvm2cmd2.02
liblwp-mediatypes-perl
liblwp-protocol-https-perl
liblwres160
liblxc-common
liblxc1
@@ -323,7 +308,6 @@ libmagickwand-6-headers
libmagickwand-6.q16-3
libmagickwand-6.q16-dev
libmagickwand-dev
libmailtools-perl
libmcrypt4
libmediainfo0v5
libmemcached11
@@ -484,10 +468,6 @@ libmysqlclient20
libncurses5
libncurses5-dev
libncursesw5
libnet-dbus-perl
libnet-http-perl
libnet-smtp-ssl-perl
libnet-ssleay-perl
libnet1
libnetfilter-conntrack3
libnetplan0
@@ -541,7 +521,7 @@ libpcre2-16-0
libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix2
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
@@ -650,7 +630,6 @@ libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtie-ixhash-perl
libtiff-dev
libtiff5
libtiff5-dev
@@ -662,7 +641,6 @@ libtinyxml2-6
libtk8.6
libtommath1
libtool
libtry-tiny-perl
libtsan0
libtypes-serialiser-perl
libu2f-udev
@@ -691,14 +669,11 @@ libwind0-heimdal
libwmf-dev
libwmf0.2-7
libwrap0
libwww-perl
libwww-robotrules-perl
libwxbase3.0-0v5
libwxgtk3.0-0v5
libx11-6
libx11-data
libx11-dev
libx11-protocol-perl
libx11-xcb1
libxau-dev
libxau6
@@ -709,7 +684,6 @@ libxcb-glx0
libxcb-present0
libxcb-render0
libxcb-render0-dev
libxcb-shape0
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
@@ -733,11 +707,8 @@ libxkbfile-dev
libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-parser-perl
libxml-sax-base-perl
libxml-sax-perl
libxml-twig-perl
libxml-xpathengine-perl
libxml2
libxml2-dev
libxmlrpc-epi0
@@ -756,8 +727,6 @@ libxt-dev
libxt6
libxtables12
libxtst6
libxv1
libxxf86dga1
libxxf86vm1
libyajl2
libyaml-0-2

View File

@@ -1,19 +1,26 @@
amqp
couchbase
event
expect
gnupg
grpc
imagick
imap
mcrypt
memcached
mongodb
pecl_http
phalcon3
phalcon4
phalcon5
psr
rdkafka
redis
ssh2
swoole
vips
xdebug
xdebug2
xlswriter
yaml
zmq

View File

@@ -31,7 +31,6 @@ libatspi2.0-0
libattr1
libaudit-common
libaudit1
libauthen-sasl-perl
libavahi-client3
libavahi-common-data
libavahi-common3
@@ -80,6 +79,8 @@ libcap2
libcap2-bin
libcbor0.6
libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libclang-common-10-dev
libclang-common-11-dev
@@ -101,7 +102,6 @@ libctf0
libcups2
libcurl3-gnutls
libcurl4
libdata-dump-perl
libdatrie1
libdb5.3
libdbus-1-3
@@ -146,17 +146,13 @@ libext2fs2
libfakeroot
libfastjson4
libfbclient2
libfcgi-perl
libfdisk1
libffi-dev
libffi7
libfftw3-double3
libfido2-1
libfile-basedir-perl
libfile-desktopentry-perl
libfile-listing-perl
libfile-mimeinfo-perl
libfl2
libfont-afm-perl
libfontconfig1
libfontconfig1-dev
libfontenc1
@@ -168,6 +164,7 @@ libfuse2
libfuse3-3
libfwupd2
libfwupdplugin1
libfwupdplugin5
libgbm-dev
libgbm1
libgc1c2
@@ -228,16 +225,11 @@ libhcrypto4-heimdal
libheimbase1-heimdal
libheimntlm0-heimdal
libhogweed5
libhtml-form-perl
libhtml-format-perl
libhtml-parser-perl
libhtml-tagset-perl
libhtml-tree-perl
libhttp-cookies-perl
libhttp-daemon-perl
libhtml-template-perl
libhttp-date-perl
libhttp-message-perl
libhttp-negotiate-perl
libhunspell-1.7-0
libhx509-5-heimdal
libice-dev
@@ -249,11 +241,8 @@ libidn2-0
libilmbase-dev
libilmbase24
libio-html-perl
libio-socket-ssl-perl
libio-stringy-perl
libip4tc2
libip6tc2
libipc-system-simple-perl
libisc-export1105
libisl22
libisns0
@@ -299,7 +288,6 @@ liblldb-12
libllvm10
libllvm11
libllvm12
libllvm9
liblmdb0
liblocale-gettext-perl
liblqr-1-0
@@ -310,7 +298,6 @@ libltdl7
liblua5.2-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblwp-protocol-https-perl
liblz4-1
liblzma-dev
liblzma5
@@ -328,12 +315,14 @@ libmagickwand-6-headers
libmagickwand-6.q16-6
libmagickwand-6.q16-dev
libmagickwand-dev
libmailtools-perl
libmaxminddb0
libmbim-glib4
libmbim-proxy
libmcrypt4
libmecab2
libmediainfo0v5
libmemcached11
libmm-glib0
libmms0
libmnl0
libmono-2.0-1
@@ -492,10 +481,6 @@ libncurses-dev
libncurses5
libncurses6
libncursesw6
libnet-dbus-perl
libnet-http-perl
libnet-smtp-ssl-perl
libnet-ssleay-perl
libnet1
libnetfilter-conntrack3
libnetplan0
@@ -550,6 +535,7 @@ libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix2
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
@@ -584,6 +570,8 @@ libpython3.8-dev
libpython3.8-minimal
libpython3.8-stdlib
libqdbm14
libqmi-glib5
libqmi-proxy
libquadmath0
librabbitmq4
libre2-5
@@ -658,7 +646,6 @@ libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtie-ixhash-perl
libtiff-dev
libtiff5
libtiffxx5
@@ -670,7 +657,6 @@ libtinyxml2-6a
libtk8.6
libtommath1
libtool
libtry-tiny-perl
libtsan0
libtss2-esys0
libtypes-serialiser-perl
@@ -705,14 +691,11 @@ libwind0-heimdal
libwmf-dev
libwmf0.2-7
libwrap0
libwww-perl
libwww-robotrules-perl
libwxbase3.0-0v5
libwxgtk3.0-gtk3-0v5
libx11-6
libx11-data
libx11-dev
libx11-protocol-perl
libx11-xcb1
libxau-dev
libxau6
@@ -723,7 +706,6 @@ libxcb-glx0
libxcb-present0
libxcb-render0
libxcb-render0-dev
libxcb-shape0
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
@@ -748,11 +730,8 @@ libxkbfile-dev
libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-parser-perl
libxml-sax-base-perl
libxml-sax-perl
libxml-twig-perl
libxml-xpathengine-perl
libxml2
libxml2-dev
libxmlb1
@@ -772,8 +751,6 @@ libxt-dev
libxt6
libxtables12
libxtst6
libxv1
libxxf86dga1
libxxf86vm1
libyajl2
libyaml-0-2

774
src/lists/jammy-libs Normal file
View File

@@ -0,0 +1,774 @@
lib32gcc-s1
lib32stdc++6
lib32z1
libacl1
libaio1
libaom3
libapparmor1
libappstream4
libapr1
libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-pkg6.0
libarchive13
libargon2-1
libaria2-0
libasan5
libasan6
libasound2
libasound2-data
libaspell15
libassuan0
libatasmart4
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
libavahi-glib1
libbinutils
libblas-dev
libblas3
libblkid-dev
libblkid1
libblockdev-crypto2
libblockdev-fs2
libblockdev-loop2
libblockdev-part-err2
libblockdev-part2
libblockdev-swap2
libblockdev-utils2
libblockdev2
libbpf0
libbrotli-dev
libbrotli1
libbsd0
libburn4
libbz2-1.0
libbz2-dev
libc++-14-dev
libc++-dev
libc++1-14
libc++abi-14-dev
libc++abi-dev
libc++abi1-14
libc-ares2
libc-bin
libc-client2007e
libc-dev-bin
libc6
libc6-dev
libc6-i386
libcairo-gobject2
libcairo-script-interpreter2
libcairo2
libcairo2-dev
libcap-ng0
libcap2
libcap2-bin
libcbor0.8
libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libclang-common-12-dev
libclang-common-13-dev
libclang-common-14-dev
libclang-cpp12
libclang-cpp13
libclang-cpp14
libclang1-12
libclang1-13
libclang1-14
libclone-perl
libcolord2
libcom-err2
libcommon-sense-perl
libcrypt-dev
libcrypt1
libcryptsetup12
libctf-nobfd0
libctf0
libcups2
libcurl3-gnutls
libcurl4
libdatrie1
libdav1d5
libdb5.3
libdbus-1-3
libdbus-glib-1-2
libdconf1
libde265-0
libdebconfclient0
libdeflate-dev
libdeflate0
libdevmapper-event1.02.1
libdevmapper1.02.1
libdjvulibre-dev
libdjvulibre-text
libdjvulibre21
libdns-export1110
libdpkg-perl
libdrm-amdgpu1
libdrm-common
libdrm-nouveau2
libdrm-radeon1
libdrm2
libdw1
libeatmydata1
libedit2
libefiboot1
libefivar1
libelf1
libenchant-2-2
libencode-locale-perl
libepoxy0
liberror-perl
libestr0
libevent-core-2.1-7
libevent-pthreads-2.1-7
libexif-dev
libexif12
libexpat1
libexpat1-dev
libext2fs2
libfakeroot
libfastjson4
libfbclient2
libfcgi-bin
libfcgi-perl
libfcgi0ldbl
libfdisk1
libffi-dev
libffi8
libfftw3-double3
libfido2-1
libflashrom1
libfontconfig-dev
libfontconfig1
libfontconfig1-dev
libfontenc1
libfreetype-dev
libfreetype6
libfreetype6-dev
libfribidi0
libfsverity0
libftdi1-2
libfuse3-3
libfwupd2
libfwupdplugin5
libgbm-dev
libgbm1
libgc1
libgcab-1.0-0
libgcc-10-dev
libgcc-11-dev
libgcc-9-dev
libgcc-s1
libgconf-2-4
libgcrypt20
libgcrypt20-dev
libgd3
libgdbm-compat4
libgdbm6
libgdiplus
libgdk-pixbuf-2.0-0
libgdk-pixbuf-2.0-dev
libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common
libgfortran-10-dev
libgfortran-11-dev
libgfortran-9-dev
libgfortran5
libgif7
libgirepository-1.0-1
libgl1
libgl1-mesa-dri
libglapi-mesa
libglib2.0-0
libglib2.0-bin
libglib2.0-data
libglib2.0-dev
libglib2.0-dev-bin
libglvnd0
libglx-mesa0
libglx0
libgmp-dev
libgmp10
libgmpxx4ldbl
libgnutls30
libgomp1
libgpg-error-dev
libgpg-error0
libgpgme11
libgpm2
libgraphite2-3
libgsl-dev
libgsl27
libgslcblas0
libgssapi-krb5-2
libgstreamer1.0-0
libgtk-3-0
libgtk-3-common
libgudev-1.0-0
libgusb2
libharfbuzz0b
libhavege2
libheif1
libhogweed6
libhtml-parser-perl
libhtml-tagset-perl
libhtml-template-perl
libhttp-date-perl
libhttp-message-perl
libhunspell-1.7-0
libice-dev
libice6
libicu-dev
libicu70
libidn2-0
libilmbase-dev
libilmbase25
libinih1
libintl-perl
libintl-xs-perl
libio-html-perl
libip4tc2
libip6tc2
libisc-export1105
libisl23
libisns0
libisoburn1
libisofs6
libitm1
libjansson4
libjbig-dev
libjbig0
libjcat1
libjpeg-dev
libjpeg-turbo8
libjpeg-turbo8-dev
libjpeg8
libjpeg8-dev
libjq1
libjs-jquery
libjs-sphinxdoc
libjs-underscore
libjs-xmlextras
libjson-c5
libjson-glib-1.0-0
libjson-glib-1.0-common
libjson-perl
libjson-xs-perl
libjte2
libk5crypto3
libkeyutils1
libklibc
libkmod2
libkrb5-3
libkrb5support0
libksba8
liblapack-dev
liblapack3
liblcms2-2
liblcms2-dev
libldap-2.5-0
libldap-common
liblldb-12
liblldb-13
liblldb-14
libllvm12
libllvm13
libllvm14
liblmdb0
liblocale-gettext-perl
liblqr-1-0
liblqr-1-0-dev
liblsan0
libltdl-dev
libltdl7
liblua5.3-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblz4-1
liblzma-dev
liblzma5
liblzo2-2
libmagic-dev
libmagic-mgc
libmagic1
libmagickcore-6-arch-config
libmagickcore-6-headers
libmagickcore-6.q16-6
libmagickcore-6.q16-6-extra
libmagickcore-6.q16-dev
libmagickcore-dev
libmagickwand-6-headers
libmagickwand-6.q16-6
libmagickwand-6.q16-dev
libmagickwand-dev
libmaxminddb0
libmbim-glib4
libmbim-proxy
libmd0
libmecab2
libmediainfo0v5
libmemcached11
libmm-glib0
libmms0
libmnl0
libmodule-find-perl
libmodule-scandeps-perl
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
libmount-dev
libmount1
libmpc3
libmpdec3
libmpfr6
libmspack0
libmysqlclient-dev
libmysqlclient21
libncurses-dev
libncurses6
libncursesw6
libnetfilter-conntrack3
libnetplan0
libnettle8
libnewt0.52
libnfnetlink0
libnftables1
libnftnl11
libnghttp2-14
libnginx-mod-http-geoip2
libnginx-mod-http-image-filter
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnginx-mod-stream-geoip2
libnl-3-200
libnl-genl-3-200
libnorm1
libnpth0
libnsl-dev
libnsl2
libnspr4
libnss-systemd
libnss3
libntfs-3g89
libnuma1
libobjc-11-dev
libobjc4
libodbc2
libodbccr2
libodbcinst2
libonig5
libopenexr-dev
libopenexr25
libopeniscsiusr
libopenjp2-7
libopenjp2-7-dev
libostree-1-1
libp11-kit0
libpackagekit-glib2-18
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
libparted-fs-resize0
libparted2
libpcap0.8
libpci3
libpcre16-3
libpcre2-16-0
libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
libpcrecpp0v5
libperl5.34
libpfm4
libpgm-5.3-0
libpipeline1
libpixman-1-0
libpixman-1-dev
libplymouth5
libpng-dev
libpng16-16
libpolkit-agent-1-0
libpolkit-gobject-1-0
libpopt0
libpq-dev
libpq5
libproc-processtable-perl
libprocps8
libprotobuf-lite23
libproxy1v5
libpsl5
libpthread-stubs0-dev
libpython3-dev
libpython3-stdlib
libpython3.10
libpython3.10-dev
libpython3.10-minimal
libpython3.10-stdlib
libqdbm14
libqmi-glib5
libqmi-proxy
libquadmath0
librabbitmq4
libre2-9
libreadline-dev
libreadline8
librpm9
librpmbuild9
librpmio9
librpmsign9
librsvg2-2
librsvg2-common
librsvg2-dev
librtmp1
libruby3.0
libsasl2-2
libsasl2-modules
libsasl2-modules-db
libseccomp2
libsecret-1-0
libsecret-1-dev
libsecret-common
libselinux1
libselinux1-dev
libsemanage-common
libsemanage2
libsensors-config
libsensors5
libsepol-dev
libsepol2
libserf-1-1
libsgutils2-2
libsigsegv2
libslang2
libslirp0
libsm-dev
libsm6
libsmartcols1
libsmbios-c2
libsnappy1v5
libsnmp-base
libsnmp40
libsodium23
libsort-naturally-perl
libsoup2.4-1
libsoup2.4-common
libsqlite3-0
libsqlite3-dev
libss2
libssh-4
libssh2-1
libssl-dev
libssl1.1
libssl3
libstdc++-10-dev
libstdc++-11-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
libsvn1
libsybdb5
libsystemd0
libtalloc2
libtasn1-6
libtcl8.6
libterm-readkey-perl
libtevent0
libtext-charwidth-perl
libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtiff-dev
libtiff5
libtiffxx5
libtimedate-perl
libtinfo-dev
libtinfo6
libtinyxml2-9
libtirpc-common
libtirpc-dev
libtirpc3
libtk8.6
libtommath1
libtool
libtsan0
libtss2-esys-3.0.2-0
libtss2-mu0
libtss2-sys1
libtss2-tcti-cmd0
libtss2-tcti-device0
libtss2-tcti-mssim0
libtss2-tcti-swtpm0
libtypes-serialiser-perl
libu2f-udev
libubsan1
libuchardet0
libucl1
libudev1
libudisks2-0
libunistring2
libunwind-14
libunwind-14-dev
libunwind8
liburcu8
liburi-perl
libusb-1.0-0
libutempter0
libutf8proc2
libuuid1
libuv1
libvolume-key1
libvulkan1
libwayland-client0
libwayland-cursor0
libwayland-egl1
libwayland-server0
libwbclient0
libwebp7
libwebpdemux2
libwebpmux3
libwmf-0.2-7
libwmf-dev
libwmflite-0.2-7
libwrap0
libx11-6
libx11-data
libx11-dev
libx11-xcb1
libx265-199
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
libxcb-xfixes0
libxcb1
libxcb1-dev
libxcomposite1
libxcursor1
libxdamage1
libxdmcp-dev
libxdmcp6
libxext-dev
libxext6
libxfixes3
libxfont2
libxft2
libxi6
libxinerama1
libxkbcommon0
libxkbfile-dev
libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-sax-base-perl
libxml-sax-perl
libxml2
libxml2-dev
libxmlb2
libxmlsec1
libxmlsec1-openssl
libxmu6
libxmuu1
libxpm4
libxrandr2
libxrender-dev
libxrender1
libxshmfence1
libxslt1.1
libxss1
libxt-dev
libxt6
libxtables12
libxtst6
libxxf86vm1
libxxhash0
libyajl2
libyaml-0-2
libz3-4
libz3-dev
libzen0v5
libzip4
libzmq5
libzstd-dev
libzstd1
python3-launchpadlib
python3-oauthlib
python3-wadllib

View File

@@ -78,7 +78,7 @@ extension_dir_linux() {
data() {
old_versions="5.[3-5]"
date='20211217'
date='20220831'
if [ "$os" = "Linux" ]; then
. /etc/lsb-release
os=$os-$DISTRIB_CODENAME
@@ -108,6 +108,7 @@ dependencies() {
export cross="✗"
export ext_config_directory="/tmp/extcache"
export deps_cache_directory="${RUNNER_TOOL_CACHE}"/deps
sudo mkdir -p "$deps_cache_directory"
script_dir=$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)
# shellcheck disable=SC1090
. "$script_dir/$(echo "$os" | tr '[:upper:]' '[:lower:]').sh"

View File

@@ -29,10 +29,12 @@ get_dependencies() {
formula_file="$tap_dir/$ext_tap/Formula/$extension@${version:?}.rb"
if [ -e "$formula_file" ]; then
formula_deps="$(grep "depends_on" "$formula_file" | cut -d '"' -f 2 | tr '\n' ' ')"
formula_deps_from_macos="$(grep "uses_from_macos \"lib" "$formula_file" | cut -d '"' -f 2 | tr '\n' ' ')"
fi
deps=()
[[ -n "${list_deps[*]}" ]] && deps+=("${list_deps[@]}")
[[ -n "${formula_deps[*]}" ]] && deps+=("${formula_deps[@]}")
[[ -n "${formula_deps_from_macos[*]}" ]] && deps+=("${formula_deps_from_macos[@]}")
echo "${deps[@]}"
}
@@ -117,6 +119,9 @@ restore_library_helper() {
if ! [ -d "$brew_prefix/opt/$dep_name" ]; then
brew link --force --overwrite "$dep_name" 2>/dev/null || true
fi
if ! [ -d "$brew_prefix/opt/$dep_name" ]; then
sudo ln -sf "$brew_cellar"/"$dep_name"/* "$brew_prefix"/opt/"$dep_name"
fi
}
restore_library() {
@@ -157,9 +162,7 @@ setup_dependencies() {
IFS=' ' read -r -a extensions_array <<<"$(filter_extensions "${extensions_array[@]}")"
if [[ -n "${extensions_array[*]// /}" ]]; then
add_brew_tap "$php_tap"
add_brew_tap "$ext_tap"
# Remove once updated on the images
curl -o "$tap_dir"/"$core_tap"/Formula/ca-certificates.rb -sL https://raw.githubusercontent.com/"$core_tap"/master/Formula/ca-certificates.rb
add_brew_tap "$ext_tap"
for extension in "${extensions_array[@]}"; do
IFS=' ' read -r -a dependency_array <<<"$(get_dependencies "$extension")"
IFS=' ' read -r -a extension_array <<<"$(echo "${dependency_array[@]}" | grep -Eo "[a-z]*@" | sed 's/@//' | tr '\n' ' ')"

View File

@@ -7,8 +7,8 @@ link_apt_fast() {
fetch_package() {
if ! [ -e /tmp/Packages ]; then
. /etc/os-release
deb_build_arch=$(dpkg-architecture -q DEB_BUILD_ARCH)
curl -o /tmp/Packages.gz -sL "http://ppa.launchpad.net/ondrej/php/ubuntu/dists/$VERSION_CODENAME/main/binary-$deb_build_arch/Packages.gz"
arch=$(dpkg --print-architecture)
curl -o /tmp/Packages.gz -sL "http://ppa.launchpad.net/ondrej/php/ubuntu/dists/$VERSION_CODENAME/main/binary-$arch/Packages.gz"
gzip -df /tmp/Packages.gz
fi
}
@@ -98,6 +98,7 @@ setup_dependencies() {
libraries=""
extension_packages=""
for extension_package in "${extensions_array[@]}"; do
[[ ! "$extension_package" =~ php[0-9]+\.[0-9]+-[a-zA-Z]+$ ]] && continue
fetch_package
libraries="$libraries $(get_dependencies "$extension_package" "lib")"
IFS=' ' read -r -a dependency_extension_packages_array <<<"$(get_dependencies "$extension_package" "php$version-")"