163 Commits
1.2.0 ... v1

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
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
github-actions[bot]
959ba21b72 Updating lists 2022-01-18 15:14:29 +00:00
Shivam Mathur
5f06df1e0f Happy new year [skip ci] 2022-01-02 08:52:17 +00:00
Shivam Mathur
0d8f2cf62b Refactor workflows 2021-12-17 18:27:03 +05:30
Shivam Mathur
03f7f56b30 Bump Node version to 16.x 2021-12-17 18:27:03 +05:30
Shivam Mathur
79c4acf033 Add npm release workflow 2021-12-17 18:27:02 +05:30
Shivam Mathur
a173299cf0 Bump version to 1.7.0 2021-12-17 18:26:20 +05:30
Shivam Mathur
b0f769600b Add repo, workflow and job in cache key
Reset cache date
2021-12-17 09:53:59 +00:00
github-actions[bot]
fd96c6ef49 Updating lists 2021-12-13 15:05:37 +00:00
Shivam Mathur
506c0905f4 Update versions in README 2021-12-06 08:26:51 +05:30
github-actions[bot]
f509c0eeeb Updating lists 2021-12-02 15:02:55 +00:00
Shivam Mathur
354b2b75c4 Reset cache for PHP 8.1 and above 2021-11-24 13:02:42 +00:00
github-actions[bot]
75fdf09203 Updating lists 2021-11-10 15:12:14 +00:00
Shivam Mathur
2f58e22e3c Reset cache for imap on macOS 2021-10-22 11:36:38 +05:30
Shivam Mathur
2e789925e4 Bump macos cache 2021-10-05 13:09:10 +05:30
Shivam Mathur
5b215c413b Add patch for ca-certificate and reset cache on darwin 2021-10-05 12:54:35 +05:30
Shivam Mathur
20eb4f1c8b Update README 2021-09-27 04:01:02 +05:30
Shivam Mathur
21e27c8c67 Remove Ubuntu 16.04
Use /etc/os-release in release workflow
2021-09-22 05:34:52 +05:30
Shivam Mathur
da8a00bfab Suppress error if library is from lists 2021-09-19 20:09:38 +05:30
Shivam Mathur
59bc1e6fcf Fix to add dependency extensions config 2021-09-19 16:07:21 +05:30
Shivam Mathur
9b4ef64d32 Fix filter_extensions in darwin.sh 2021-09-19 08:03:18 +05:30
Shivam Mathur
e51a646160 Improve support for extensions with custom support on setup-php 2021-09-19 07:53:27 +05:30
Shivam Mathur
da71add69c Bump version to 1.6.2
Update Node.js dependencies
2021-09-19 06:28:55 +05:30
Shivam Mathur
b52930e590 Refactor to use setup-php 2021-09-19 06:06:31 +05:30
Shivam Mathur
3572ca5db9 Update README 2021-09-19 05:36:56 +05:30
Shivam Mathur
b8a361a25a Fix 8.1 cache
Reset cache date
2021-09-19 03:29:29 +05:30
github-actions[bot]
eb0ccb73d5 Updating lists 2021-09-16 15:05:10 +00:00
github-actions[bot]
2a56d34ea0 Updating lists 2021-09-01 12:36:03 +00:00
Shivam Mathur
075da4be87 Sort darwin extensions list 2021-09-01 18:00:01 +05:30
github-actions[bot]
b660f29789 Updating lists 2021-09-01 12:27:24 +00:00
Shivam Mathur
f73bbb0929 Update darwin extensions list in libs workflow
Rename workflow
2021-09-01 17:54:58 +05:30
Shivam Mathur
caa5d3f915 Minor refactor in darwin.sh 2021-09-01 17:43:30 +05:30
Shivam Mathur
6c67ee1261 Reset cache for PHP 8.1 2021-09-01 11:11:42 +05:30
Shivam Mathur
502885cc75 Update sponsor link in README [skip ci]. 2021-08-28 13:49:22 +05:30
Shivam Mathur
d3929ece8e Remove FUNDING.yml and use shivammathur/.github [skip ci] 2021-08-28 13:38:37 +05:30
Shivam Mathur
9355729f4a Reset cache on Windows 2021-08-23 20:06:03 +05:30
Shivam Mathur
7f4f2f921c Rename macos-11.0 to macos-11 2021-08-18 09:43:45 +05:30
Shivam Mathur
bcdf57190d Fix extension directory for PHP 8.1 on Linux
After d47fe5f570 extension directory for PHP 8.1 should be "/usr/lib/php/<phpapi>"
2021-08-17 12:27:15 +05:30
github-actions[bot]
fa913560e6 Updating lists 2021-08-04 15:10:27 +00:00
Shivam Mathur
90fc296fbc Add API version for PHP 8.1 2021-08-01 06:13:04 +05:30
Shivam Mathur
f851596ef0 Add support to skip dependency extensions 2021-07-23 11:04:34 +05:30
Shivam Mathur
319d6f9a6d Reset cache date for imagick, and apcu on PHP 8.1 2021-07-23 09:40:29 +05:30
Shivam Mathur
882ea8f750 Bump version to 1.6.1 2021-07-07 19:47:31 +05:30
Shivam Mathur
7e3d12a4c4 Skip restoring existing libraries
Cleanup add_library and its helper function in darwin.sh
2021-07-07 19:33:10 +05:30
Shivam Mathur
96afc02cad Fix library cache on macOS 2021-07-07 13:08:12 +05:30
Shivam Mathur
024a2e796f Add brew environment variables 2021-07-03 16:49:08 +05:30
Shivam Mathur
65ea75914e Add extension dependency support for Darwin
Refactor extension.sh to 3 scripts

Update dependencies

Minor fixes in cache.ts and tests

Improve get_api_version in cache.sh

Improve logs

Use @actions/cache to cache dependencies

Refactor linux.sh

Refactor Node.js code

Do not setup dependencies for old PHP

Remove duplicate dependency extensions in linux

Bump version to 1.6.0
2021-07-03 16:12:27 +05:30
Shivam Mathur
b9734e30e3 Reset cache if imagick is in extensions on macOS. 2021-06-30 20:41:22 +05:30
github-actions[bot]
a91eaeae66 Updating lists 2021-06-11 15:07:09 +00:00
github-actions[bot]
5fd9e31957 Updating lists 2021-06-03 15:16:23 +00:00
Shivam Mathur
3a9c03a639 Update dependencies
Update to Jest 27

Update tsconfig.json
2021-05-31 08:02:04 +05:30
github-actions[bot]
7c356bdccc Updating lists 2021-05-20 16:38:08 +00:00
github-actions[bot]
dc78eb217c Updating lists 2021-05-19 15:14:27 +00:00
github-actions[bot]
b98cea8adc Updating lists 2021-05-13 15:05:16 +00:00
Shivam Mathur
470b94d722 Clear cache on Windows for imagick 2021-05-12 19:43:35 +05:30
Shivam Mathur
acce7e61bc Update dependencies 2021-05-11 18:09:52 +05:30
github-actions[bot]
c2ce0737e9 Updating lists 2021-05-06 15:22:12 +00:00
github-actions[bot]
a6cb9851d8 Updating lists 2021-04-22 15:05:53 +00:00
Shivam Mathur
9d87cbc9e2 Update README.md 2021-04-06 13:55:10 +05:30
Shivam Mathur
dfaa2c7ea5 Fix extension_dir 2021-04-03 16:05:05 +05:30
github-actions[bot]
a0bace7fd6 Updating lists 2021-04-01 15:20:02 +00:00
github-actions[bot]
3da1e049db Updating lists 2021-03-18 15:22:07 +00:00
Shivam Mathur
1d41d22536 Fix Linux cache 2021-03-15 00:38:01 +05:30
Shivam Mathur
e8a5ac648c Clear cache
Update dependencies

Update ubuntu YAML labels in README
2021-03-13 02:24:16 +05:30
Shivam Mathur
61c3ac571e Fix libs workflow 2021-03-08 21:14:58 +05:30
github-actions[bot]
07f87f7871 Updating lists 2021-03-07 17:15:41 +00:00
Shivam Mathur
5a367d30f4 Add lists for libraries
Add workflow to update library lists

Refactor extensions.sh
2021-03-07 22:41:52 +05:30
Shivam Mathur
ac5140901c Remove lists
Fix extension dependency setup on linux

Update Node.js dependencies
2021-03-07 03:21:44 +05:30
Shivam Mathur
7df1333d2b Merge pull request #20 from shivammathur/develop
1.4.0
2020-12-30 14:20:37 -08:00
Shivam Mathur
9ef47bc1b1 Change extensions directory for PHP 5.3 on Ubuntu
Add support for PHP 5.6+ on MacOS ARM

Update lists for PHP 5.3

Clear cache

Bump version to 1.4.0
2020-12-31 03:47:46 +05:30
Shivam Mathur
bc3f3bc008 Merge pull request #19 from shivammathur/develop
1.3.3
2020-12-16 23:49:46 -08:00
Shivam Mathur
30e4da7ed2 Adjust extension_dir for PHP 8 on Ubuntu
Reset extension cache

Update dependencies

Update lists
2020-12-17 13:16:33 +05:30
Shivam Mathur
1b7b26deeb Merge pull request #18 from shivammathur/develop
1.3.2
2020-11-26 21:14:56 +05:30
Shivam Mathur
0487f686e2 Clear cache
Bump version to 1.3.2

Update dependencies
2020-11-26 21:14:34 +05:30
Shivam Mathur
f5a7bad686 Merge pull request #17 from shivammathur/develop
1.3.1
2020-10-24 07:40:06 +05:30
Shivam Mathur
d48014e2bb Add PHP 8.1 and macos-11.0 to the README
Update Node.js dependencies

Bump version to 1.3.1
2020-10-24 07:31:37 +05:30
Shivam Mathur
3809746e7d Merge pull request #16 from shivammathur/develop
1.3.0
2020-10-13 14:29:02 +05:30
Shivam Mathur
f55a0043ab Add support for PHP 8.1
Add support for alias latest

Bump version to 1.3.0
2020-10-13 14:22:54 +05:30
59 changed files with 70374 additions and 10132 deletions

View File

@@ -10,14 +10,7 @@
"plugin:import/warnings",
"plugin:import/typescript",
"plugin:prettier/recommended",
"prettier/@typescript-eslint"
"prettier"
],
"plugins": ["@typescript-eslint", "jest"],
"rules": {
"camelcase": "off",
"require-atomic-updates": "off",
"@typescript-eslint/ban-ts-ignore": "off",
"@typescript-eslint/camelcase": "off",
"@typescript-eslint/no-unused-vars": "off"
}
"plugins": ["@typescript-eslint", "jest"]
}

7
.github/FUNDING.yml vendored
View File

@@ -1,7 +0,0 @@
# These are supported funding model platforms
open_collective: setup-php
tidelift: "npm/setup-php"
community_bridge: setup-php
patreon: shivammathur
custom: https://www.paypal.me/shivammathur

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@v2
with:
config-file: ./.github/codeql/codeql-configuration.yml
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v2
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

72
.github/workflows/git-release.yml vendored Normal file
View File

@@ -0,0 +1,72 @@
name: Git release workflow
on:
workflow_dispatch:
schedule:
- cron: '0 15 * * *'
jobs:
update:
name: update
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
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@v3
with:
name: lists
path: |
/tmp/*-libs
sync:
name: sync
needs: update
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: develop
fetch-depth: 0
- name: Download lists
uses: actions/download-artifact@v3
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
find "$(brew --repository shivammathur/extensions)"/.github/deps -mindepth 1 -type d -name "*" -exec basename {} \; | sort > src/lists/darwin-extensions
- name: Update tags and branches
run: |
push_ref() {
ref=$1
git push -f https://${{ github.repository_owner }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}.git "$ref" || true
}
git config --local user.email "$bot_user_id+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
if [ "$(git status --porcelain=v1 2>/dev/null | wc -l)" != "0" ]; then
git add .
git commit -m "Updating lists"
fi
push_ref develop
semver=$(git tag --sort=-refname | awk 'match($0, /^[0-9]+\.[0-9]+\.[0-9]+$/)' | head -n 1)
rolling=$(git tag --sort=-refname | awk 'match($0, /^v[0-9]/)' | head -n 1)
for branch in master releases/$rolling; do
git checkout $branch
if [ "$(git rev-parse "$branch")" != "$(git rev-parse develop)" ]; then
git merge --allow-unrelated-histories develop || true
fi
push_ref "$branch"
done
for tag in $semver $rolling; do
git tag -fa "$tag" -m "Update %1 tag"
push_ref "$tag"
done

61
.github/workflows/node-release.yml vendored Normal file
View File

@@ -0,0 +1,61 @@
name: Node release workflow
on:
release:
types: [created]
workflow_dispatch:
inputs:
skip:
description: Skip release to repository
required: false
tag:
description: Tag name
required: true
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout release
if: github.event_name != 'workflow_dispatch'
uses: actions/checkout@v3
- name: Checkout tag
uses: actions/checkout@v3
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ github.event.inputs.tag }}
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '16.x'
registry-url: https://registry.npmjs.org
- name: Install dependencies and add lib
run: |
npm install
npm run build
sed -i -e '/lib\//d' .gitignore
- name: Publish to NPM
if: "!contains(github.event.inputs.skip, 'skip-npm')"
run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Change to GitHub Packages registry
uses: actions/setup-node@v3
with:
registry-url: https://npm.pkg.github.com
scope: '@shivammathur'
- name: Patch package.json
run: |
sed -i 's#"name": "#"name": "@shivammathur/#' package.json
- name: Publish to GitHub Packages
if: "!contains(github.event.inputs.skip, 'skip-github-packages')"
run: npm publish
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

41
.github/workflows/node-test.yml vendored Normal file
View File

@@ -0,0 +1,41 @@
name: Node test workflow
on: [push, pull_request]
jobs:
run:
name: Run
runs-on: ${{ matrix.operating-system }}
strategy:
fail-fast: false
matrix:
operating-system: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Setup Node.js 16.x
uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install dependencies
run: npm install
- name: Prettier Format Check
run: npm run format-check
- name: ESLint Check
run: npm run lint
- name: Run npm audit
run: npm audit
- name: Send Coverage
uses: codecov/codecov-action@v3
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

@@ -1,31 +0,0 @@
name: Main workflow
on: [push, pull_request]
jobs:
run:
name: Run
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Install dependencies
run: npm install
- name: Prettier Format Check
run: npm run format-check
- name: ESLint Check
run: npm run lint
- name: Run tests
run: npm test
- 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 }}

View File

@@ -1,7 +1,7 @@
The MIT License (MIT)
Copyright (c) 2020 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

@@ -3,11 +3,11 @@
<p align="center">
<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"></a>
<a href="#tada-php-support" title="PHP Versions Supported"><img alt="PHP Versions Supported" src="https://img.shields.io/badge/php-%3E%3D%205.3-8892BF.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.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 to see how to use this.
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.
## Contents
@@ -32,38 +32,54 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|5.6|`Stable`|`End of life`|
|7.0|`Stable`|`End of life`|
|7.1|`Stable`|`End of life`|
|7.2|`Stable`|`Security fixes only`|
|7.3|`Stable`|`Active`|
|7.4|`Stable`|`Active`|
|8.0|`Nightly`|`In development`|
|7.2|`Stable`|`End of life`|
|7.3|`Stable`|`End of life`|
|7.4|`Stable`|`Security fixes only`|
|8.0|`Stable`|`Active`|
|8.1|`Stable`|`Active`|
|8.2|`Stable`|`Active`|
|8.3|`Nightly`|`In development`|
## :cloud: OS/Platform Support
|Virtual environment|YAML workflow label|
|--- |--- |
|Windows Server 2019|`windows-latest` or `windows-2019`|
|Ubuntu 20.04|`ubuntu-20.04`|
|Ubuntu 18.04|`ubuntu-latest` or `ubuntu-18.04`|
|Ubuntu 16.04|`ubuntu-16.04`|
|macOS Catalina 10.15|`macos-latest` or `macOS-10.15`|
| Virtual environment | YAML workflow label |
|----------------------|------------------------------------|
| Ubuntu 22.04 | `ubuntu-22.04` |
| Ubuntu 20.04 | `ubuntu-latest` or `ubuntu-20.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` |
## :memo: Usage
Use this GitHub Action when the extensions you are adding in [setup-php](https://github.com/shivammathur/setup-php "setup-php GitHub Action") are installed and take a long time to setup. If you are using extensions which have the result `Installed and enabled` in the logs like `pecl` extensions on `Ubuntu` or extensions which have custom support, it is recommended to use this action to cache your extensions.
Use this GitHub Action when the extensions you are adding in [setup-php](https://github.com/shivammathur/setup-php "setup-php GitHub Action") are installed and take a long time to set up. If you are using extensions which have the result `Installed and enabled` in the logs like `pecl` extensions on `Ubuntu` or extensions which have custom support, it is recommended to use this action to cache your extensions.
### Inputs
#### `php-version` (required)
#### `php-version` (optional)
- Specify the PHP version you want to setup.
- Accepts a `string`. For example `'7.4'`.
- See [PHP support](#tada-php-support) for supported PHP versions.
- Specify the PHP version you want to set up.
- 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 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)
- Specify the extensions you want to add or remove.
- Accepts a `string` in csv-format. For example `mbstring, , xdebug, :opcache`.
- Extensions prefixed with `:` are ignored.
- Specify the extensions you want to set up.
- Accepts a `string` in csv-format. For example `mbstring, xdebug, :opcache`.
- Extensions prefixed with `:` are ignored in output cache key.
#### `key` (required)
@@ -84,14 +100,14 @@ jobs:
strategy:
matrix:
operating-system: [ubuntu-latest, windows-latest, macos-latest]
php-versions: ['7.2', '7.3', '7.4']
php-versions: ['8.0', '8.1', '8.2', '8.3']
name: PHP ${{ matrix.php-versions }} Test on ${{ matrix.operating-system }}
env:
extensions: intl, pcov
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
@@ -102,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 }}
@@ -117,11 +133,11 @@ jobs:
### Thread Safe Setup
If you setup 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 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 }}
@@ -130,7 +146,7 @@ If you setup both `TS` and `NTS` PHP versions on `Windows` in your workflow, ple
## :scroll: License
The scripts and documentation in this project are released under the [MIT License](LICENSE "License for shivammathur/cache-extensions"). This project has multiple [dependencies](https://github.com/shivammathur/cache-extensions/network/dependencies "Dependencies for this PHP Action"). Their licenses can be found in their respective repositories.
The code and documentation in this project are under the [MIT License](LICENSE "License for shivammathur/cache-extensions"). This project has multiple [dependencies](https://github.com/shivammathur/cache-extensions/network/dependencies "Dependencies for this PHP Action"). Their licenses can be found in their respective repositories.
## :+1: Contributions
@@ -141,10 +157,8 @@ Contributions are welcome! See [Contributor's Guide](.github/CONTRIBUTING.md "sh
If this action helped you.
- Please star the project and share it. If you blog, please share your experience of using this action.
- Please consider supporting our work by sponsoring using [Open Collective](https://opencollective.com/setup-php), [Paypal](https://www.paypal.me/shivammathur "Shivam Mathur PayPal") or [Patreon](https://www.patreon.com/shivammathur "Shivam Mathur Patreon").
- If you use this action at your company, please [reach out](mailto:contact@setup-php.com) to sponsor the project.
- Please support our work by sponsoring using [GitHub sponsors](https://github.com/sponsors/shivammathur).
## :package: Dependencies
- [Node.js dependencies](https://github.com/shivammathur/setup-php/network/dependencies "Node.js dependencies")
- [Node.js dependencies](https://github.com/shivammathur/cache-extensions/network/dependencies "Node.js dependencies")

View File

@@ -1,3 +1,5 @@
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';
@@ -5,21 +7,16 @@ import * as utils from '../src/utils';
* Mock cache.ts
*/
jest.mock('../src/cache', () => ({
run: jest.fn().mockImplementation(
async (): Promise<string> => {
let version: string = process.env['php-version'] || '';
version = version.length > 1 ? version.slice(0, 3) : version + '.0';
const extensions = await utils.filterExtensions(
process.env['extensions'] || ''
);
const key: string = process.env['key'] || '';
const script_path = 'extensions.sh';
return (
'bash ' + script_path + ' "' + extensions + '" ' + key + ' ' + version
);
}
)
run: jest.fn().mockImplementation(async (): Promise<string> => {
const version: string = await spu.parseVersion(
process.env['php-version'] || ''
);
const extensions = await utils.filterExtensions(
process.env['extensions'] || ''
);
const key: string = process.env['key'] || '';
return await utils.scriptCall('test', extensions, key, version);
})
}));
/**
@@ -40,21 +37,22 @@ function setEnv(
}
describe('Install', () => {
const spath: string = path.join(__dirname, '../src/scripts/cache.sh');
it('Test Run', async () => {
setEnv('7.0', 'xdebug, pcov', 'cache-v1');
const script: string = '' + (await cache.run());
expect(script).toContain('bash extensions.sh "xdebug, pcov" cache-v1 7.0');
expect(script).toContain(`bash ${spath} test "xdebug, pcov" cache-v1 7.0`);
});
it('Test Run', async () => {
setEnv('7.4', 'xdebug, zip', 'cache-v2');
const script: string = '' + (await cache.run());
expect(script).toContain('bash extensions.sh "xdebug, zip" cache-v2 7.4');
expect(script).toContain(`bash ${spath} test "xdebug, zip" cache-v2 7.4`);
});
it('Test Run', async () => {
setEnv('7.4', 'xdebug, :zip', 'cache-v2');
const script: string = '' + (await cache.run());
expect(script).toContain('bash extensions.sh "xdebug" cache-v2 7.4');
expect(script).toContain(`bash ${spath} test "xdebug" cache-v2 7.4`);
});
});

View File

@@ -1,25 +1,33 @@
import * as fs from 'fs';
import * as path from 'path';
import * as utils from '../src/utils';
jest.mock('@actions/core', () => ({
getInput: jest.fn().mockImplementation(key => {
return ['cache-extensions'].indexOf(key) !== -1 ? key : '';
})
}));
async function cleanup(path: string): Promise<void> {
fs.unlink(path, error => {
if (error) {
console.log(error);
}
});
}
describe('Utils tests', () => {
it('checking getInput', async () => {
process.env['test'] = 'cache-extensions';
process.env['undefined'] = '';
expect(await utils.getInput('test', false)).toBe('cache-extensions');
expect(await utils.getInput('undefined', false)).toBe('');
expect(await utils.getInput('cache-extensions', false)).toBe(
'cache-extensions'
);
expect(await utils.getInput('DoesNotExist', false)).toBe('');
it('checking getOutput', async () => {
const temp_dir: string = process.env['RUNNER_TEMP'] || '';
const file_path: string = path.join(temp_dir, 'test');
fs.writeFileSync(file_path, 'test', {mode: 0o755});
expect(await utils.getOutput('test')).toBe('test');
await cleanup(file_path);
});
it('checking filterExtensions', async () => {
expect(await utils.filterExtensions('a,:b,c')).toBe('a,c');
expect(await utils.filterExtensions('a, :b, c')).toBe('a, c');
expect(await utils.filterExtensions('a,:b,c')).toBe('"a,c"');
expect(await utils.filterExtensions('a, :b, c')).toBe('"a, c"');
});
it('checking scriptCall', async () => {
const script: string = path.join(__dirname, '../src/scripts/cache.sh');
expect(await utils.scriptCall('test a b')).toBe(
['bash', script, 'test', 'a', 'b'].join(' ')
);
});
});

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
@@ -15,5 +18,5 @@ inputs:
description: 'Key to version the cache hash.'
required: true
runs:
using: 'node12'
using: 'node16'
main: 'dist/index.js'

59950
dist/index.js vendored

File diff suppressed because one or more lines are too long

15344
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,15 +1,25 @@
{
"name": "cache-extensions",
"version": "1.2.0",
"version": "1.10.0",
"private": false,
"description": "Cache extensions in GitHub Actions",
"main": "dist/index.js",
"description": "Cache PHP extensions in GitHub Actions",
"main": "lib/cache.js",
"types": "lib/cache.d.ts",
"directories": {
"lib": "lib",
"test": "__tests__",
"src": "src"
},
"files": [
"lib",
"src"
],
"scripts": {
"build": "tsc",
"lint": "eslint **/*.ts --cache",
"format": "prettier --write **/*.ts && git add .",
"format-check": "prettier --check **/*.ts",
"release": "ncc build src/cache.ts -o dist && git add -f dist/",
"lint": "eslint **/src/*.ts --cache --fix",
"format": "prettier --write **/src/*.ts && git add .",
"format-check": "prettier --check **/src/*.ts",
"release": "ncc build -o dist && git add -f dist/",
"test": "jest"
},
"repository": {
@@ -19,36 +29,38 @@
"keywords": [
"actions",
"php",
"setup"
"extension",
"cache"
],
"author": "shivammathur",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.2.6",
"@actions/exec": "^1.0.4"
"@actions/cache": "^3.2.1",
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.1",
"setup-php": "2.25.4"
},
"devDependencies": {
"@types/jest": "^26.0.14",
"@types/node": "^14.11.2",
"@typescript-eslint/eslint-plugin": "^4.3.0",
"@typescript-eslint/parser": "^4.3.0",
"@zeit/ncc": "^0.22.3",
"eslint": "^7.10.0",
"eslint-config-prettier": "^6.12.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-jest": "^24.0.2",
"eslint-plugin-prettier": "^3.1.4",
"husky": "^4.3.0",
"jest": "^26.4.2",
"jest-circus": "^26.4.2",
"prettier": "^2.1.2",
"ts-jest": "^26.4.1",
"typescript": "^4.0.3"
"@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"
},
"husky": {
"skipCI": true,
"hooks": {
"pre-commit": "npm run format && npm run lint && npm run test && npm run build && npm run release"
}
"bugs": {
"url": "https://github.com/shivammathur/cache-extensions/issues"
},
"simple-git-hooks": {
"pre-commit": "npm run format && npm run lint && npm run test && npm run build && npm run release"
}
}

View File

@@ -1,27 +1,69 @@
import {exec} from '@actions/exec/lib/exec';
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';
/**
* Handle dependencies
*
* @param extensions
* @param version
*/
export async function handleDependencies(
extensions: string,
version: string
): Promise<void> {
if (!/^5.[3-5]$/.test(version) && /linux|darwin/.test(process.platform)) {
const cache_key: string = (await utils.getOutput('key')) + '-deps';
const cache_dir: string = path.join(
await spu.readEnv('RUNNER_TOOL_CACHE'),
'deps'
);
const cache_hit: string | undefined = await cache.restoreCache(
[cache_dir],
cache_key,
[cache_key]
);
await exec(await utils.scriptCall('dependencies', extensions, version));
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');
}
}
}
}
/**
* Run the script
*/
export async function run(): Promise<void> {
try {
let version: string = await utils.getInput('php-version', true);
version = version.length > 1 ? version.slice(0, 3) : version + '.0';
const extensions = await utils.filterExtensions(
await utils.getInput('extensions', true)
);
const key: string = await utils.getInput('key', true);
const script_path: string = path.join(__dirname, '../src/extensions.sh');
await exec(
'bash ' + script_path + ' "' + extensions + '" ' + key + ' ' + version
const version: string = await spu.parseVersion(await spu.readPHPVersion());
const extensions: string = await utils.filterExtensions(
await spu.getInput('extensions', true)
);
const key: string = await spu.getInput('key', true);
await exec(await utils.scriptCall('data', extensions, version, key));
await handleDependencies(extensions, version);
} catch (error) {
core.setFailed(error.message);
core.setFailed((error as Error).message);
}
}
// call the run function
run();
(async () => {
await run();
})().catch(error => {
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

@@ -1,96 +0,0 @@
linux_extension_dir() {
apiv=$1
old_versions_linux="5.[4-5]"
if [ "$version" = "5.3" ]; then
echo "/home/runner/php/5.3.29/lib/php/extensions/no-debug-non-zts-$apiv"
elif [[ "$version" =~ $old_versions_linux ]]; then
echo "/usr/lib/php5/$apiv"
elif [ "$version" = "8.0" ]; then
echo "/usr/local/php/8.0/lib/php/extensions/no-debug-non-zts-$apiv"
else
echo "/usr/lib/php/$apiv"
fi
}
darwin_extension_dir() {
apiv=$1
old_versions_darwin="5.[3-5]"
if [[ "$version" =~ $old_versions_darwin ]]; then
echo "/opt/local/lib/php${version/./}/extensions/no-debug-non-zts-$apiv"
else
echo "/usr/local/lib/php/pecl/$apiv"
fi
}
get_apiv() {
case $version in
5.3) echo "20090626" ;;
5.4) echo "20100525" ;;
5.5) echo "20121212" ;;
5.6) echo "20131226" ;;
7.0) echo "20151012" ;;
7.1) echo "20160303" ;;
7.2) echo "20170718" ;;
7.3) echo "20180731" ;;
7.4) echo "20190902" ;;
*)
php_h="https://raw.githubusercontent.com/php/php-src/master/main/php.h"
curl -sSL --retry 5 "$php_h" | grep "PHP_API_VERSION" | cut -d' ' -f 3
;;
esac
}
setup_dependencies() {
exts=$1
release=$2
empty_reg="\s+|^$"
script_dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )
exts=${exts//,/}
for ext in $exts; do
if grep -i -q -w "$ext" "$script_dir"/lists/"$release"-php"$version"-extensions; then
exts=${exts//$ext/}
fi
done
if [[ ! "$exts" =~ $empty_reg ]]; then
# shellcheck disable=SC2001,SC2086
exts=$(echo ${exts//pdo_} | sed "s/[^ ]* */php$version-&/g")
# shellcheck disable=SC2086
deps=$(apt-cache depends $exts 2>/dev/null | awk '/Depends: lib/{print$2}')
for dep in $deps; do
if grep -i -q -w "$dep" "$script_dir"/lists/"$release"-libs; then
deps=${deps//$dep/}
fi
done
if [[ ! "${deps[*]}" =~ $empty_reg ]]; then
echo "Adding ${deps[*]}"
# shellcheck disable=SC2068
sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y ${deps[@]}
fi
fi
}
extensions=$1
key=$2
version=$3
os=$(uname -s)
if [ "$os" = "Linux" ]; then
release=$(lsb_release -s -c)
os=$os-$release
apiv=$(get_apiv)
dir=$(linux_extension_dir "$apiv")
sudo mkdir -p "$dir" && sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")"
setup_dependencies "$extensions" "$release"
elif [ "$os" = "Darwin" ]; then
apiv=$(get_apiv)
dir=$(darwin_extension_dir "$apiv")
sudo mkdir -p "$dir" && sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")"
else
os="Windows"
dir='C:\\tools\\php\\ext'
fi
if [ "$version" = "8.0" ]; then
key="$key-20200930"
fi
key="$os"-ext-"$version"-$(echo -n "$extensions-$key" | openssl dgst -sha256 | cut -d ' ' -f 2)
echo "::set-output name=dir::$dir"
echo "::set-output name=key::$key"

View File

@@ -1,72 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
Core
ctype
cubrid
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gd
hash
iconv
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mongo
mysql
mysqli
mysqlnd
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_sqlite
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
SQLite
sqlite3
standard
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug

View File

@@ -1,76 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,76 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,68 +0,0 @@
[PHP Modules]
amqp
apc
apcu
calendar
Core
ctype
cubrid
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mhash
mongodb
msgpack
openssl
pcntl
pcov
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,65 +0,0 @@
[PHP Modules]
amqp
apcu
calendar
Core
ctype
cubrid
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mongodb
msgpack
openssl
pcntl
pcov
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
mcrypt
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,92 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,72 +0,0 @@
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
ioncube
intl
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Zend OPcache
Xdebug

1
src/lists/darwin-deps Normal file
View File

@@ -0,0 +1 @@
geos=geos

171
src/lists/darwin-extensions Normal file
View File

@@ -0,0 +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
w
w
x
x
x
x
x
x
x
yaml
z
z
z
z
z
z
z
z
z
zmq

View File

@@ -1,25 +1,27 @@
lib32gcc-s1
lib32gcc1
lib32stdc++6
lib32z1
libaccountsservice0
libacl1
libaio1
libapparmor1
libappindicator3-1
libappstream4
libapr1
libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-pkg6.0
libarchive13
libargon2-1
libaria2-0
libasan4
libasan5
libasan6
libasn1-8-heimdal
libasound2-data
libasound2
libasound2-data
libaspell15
libassuan0
libatasmart4
libatk-bridge2.0-0
libatk1.0-0
libatk1.0-data
@@ -29,13 +31,22 @@ libatspi2.0-0
libattr1
libaudit-common
libaudit1
libauthen-sasl-perl
libavahi-client3
libavahi-common-data
libavahi-common3
libbinutils
libblas-dev
libblas3
libblkid-dev
libblkid1
libblockdev-crypto2
libblockdev-fs2
libblockdev-loop2
libblockdev-part-err2
libblockdev-part2
libblockdev-swap2
libblockdev-utils2
libblockdev2
libboost-context1.71.0
libboost-filesystem1.71.0
libboost-program-options1.71.0
@@ -45,35 +56,44 @@ libbsd0
libburn4
libbz2-1.0
libbz2-dev
libc++-10-dev
libc++-dev
libc++1-10
libc++abi-10-dev
libc++abi-dev
libc++abi1-10
libc-ares2
libc-bin
libc-client2007e
libc-dev-bin
libc6
libc6-dev
libc6-i386
libc6
libcairo-gobject2
libcairo-script-interpreter2
libcairo2-dev
libcairo2
libcairo2-dev
libcanberra0
libcap-ng0
libcap2-bin
libcap2
libcap2-bin
libcbor0.6
libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libcilkrts5
libclang-common-6.0-dev
libclang-common-8-dev
libclang-common-9-dev
libclang-cpp9
libclang1-6.0
libclang1-8
libclang-common-10-dev
libclang-common-11-dev
libclang-common-12-dev
libclang-cpp10
libclang-cpp11
libclang-cpp12
libclang1-10
libclang1-11
libclang1-12
libcolord2
libcom-err2
libcommon-sense-perl
libcrypt-dev
libcrypt1
libcryptsetup12
@@ -82,7 +102,6 @@ libctf0
libcups2
libcurl3-gnutls
libcurl4
libdata-dump-perl
libdatrie1
libdb5.3
libdbus-1-3
@@ -111,6 +130,7 @@ libedit2
libefiboot1
libefivar1
libelf1
libenchant-2-2
libencode-locale-perl
libepoxy0
liberror-perl
@@ -120,43 +140,41 @@ libevent-core-2.1-7
libevent-pthreads-2.1-7
libexif-dev
libexif12
libexpat1-dev
libexpat1
libexpat1-dev
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-dev
libfontconfig1
libfontconfig1-dev
libfontenc1
libfreetype-dev
libfreetype6-dev
libfreetype6
libfreetype6-dev
libfribidi0
libfuse2
libfuse3-3
libfwupd2
libfwupdplugin1
libfwupdplugin5
libgbm-dev
libgbm1
libgc1c2
libgcab-1.0-0
libgcc-7-dev
libgcc-8-dev
libgcc-10-dev
libgcc-9-dev
libgcc-s1
libgconf-2-4
libgcrypt20
libgd3
libgdbm-compat4
libgdbm6
libgdiplus
@@ -165,19 +183,19 @@ libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev
libgflags2.2
libgfortran-8-dev
libgfortran-10-dev
libgfortran-9-dev
libgfortran5
libgif7
libgirepository-1.0-1
libgl1-mesa-dri
libgl1
libgl1-mesa-dri
libglapi-mesa
libglib2.0-0
libglib2.0-bin
libglib2.0-data
libglib2.0-dev-bin
libglib2.0-dev
libglib2.0-dev-bin
libglvnd0
libglx-mesa0
libglx0
@@ -191,8 +209,9 @@ libgpg-error0
libgpgme11
libgpm2
libgraphite2-3
libgs9-common
libgs9
libgsl-dev
libgsl23
libgslcblas0
libgssapi-krb5-2
libgssapi3-heimdal
libgstreamer1.0-0
@@ -201,22 +220,18 @@ libgtk-3-common
libgudev-1.0-0
libgusb2
libharfbuzz0b
libhashkit2
libhavege1
libhcrypto4-heimdal
libheimbase1-heimdal
libheimntlm0-heimdal
libhogweed5
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.7-0
libhx509-5-heimdal
libice-dev
libice6
@@ -224,37 +239,35 @@ libicu-dev
libicu66
libidn11
libidn2-0
libijs-0.35
libilmbase-dev
libilmbase24
libio-html-perl
libio-socket-ssl-perl
libio-stringy-perl
libip4tc2
libip6tc2
libipc-system-simple-perl
libisc-export1105
libisl22
libisns0
libisoburn1
libisofs6
libitm1
libjansson4
libjbig-dev
libjbig0
libjbig2dec0
libjcat1
libjemalloc2
libjpeg-dev
libjpeg-turbo8-dev
libjpeg-turbo8
libjpeg8-dev
libjpeg-turbo8-dev
libjpeg8
libjpeg8-dev
libjq1
libjs-jquery
libjs-xmlextras
libjson-c4
libjson-glib-1.0-0
libjson-glib-1.0-common
libjsoncpp1
libjson-perl
libjson-xs-perl
libjte2
libk5crypto3
libkeyutils1
@@ -264,29 +277,30 @@ libkrb5-26-heimdal
libkrb5-3
libkrb5support0
libksba8
liblapack-dev
liblapack3
liblcms2-2
liblcms2-dev
libldap-2.4-2
libldap-common
liblldb-6.0-dev
liblldb-6.0
liblldb-8
liblldb-9
libllvm6.0
libllvm8
libllvm9
liblldb-10
liblldb-11
liblldb-12
libllvm10
libllvm11
libllvm12
liblmdb0
liblocale-gettext-perl
liblqr-1-0-dev
liblqr-1-0
liblqr-1-0-dev
liblsan0
libltdl-dev
libltdl7
liblua5.2-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblwp-protocol-https-perl
liblz4-1
liblz4-dev
liblzma-dev
liblzma5
liblzo2-2
@@ -295,19 +309,23 @@ libmagic-mgc
libmagic1
libmagickcore-6-arch-config
libmagickcore-6-headers
libmagickcore-6.q16-6-extra
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
libmailtools-perl
libmaxminddb0
libmbim-glib4
libmbim-proxy
libmcrypt4
libmecab2
libmediainfo0v5
libmemcached11
libmm-glib0
libmms0
libmnl0
libmono-2.0-1
libmono-2.0-dev
@@ -458,26 +476,27 @@ libmount1
libmpc3
libmpdec2
libmpfr6
libmpx2
libmspack0
libmysqlclient-dev
libmysqlclient21
libncurses-dev
libncurses5
libncurses6
libncursesw5
libncursesw6
libnet-dbus-perl
libnet-http-perl
libnet-smtp-ssl-perl
libnet-ssleay-perl
libnet1
libnetfilter-conntrack3
libnetplan0
libnettle7
libnewt0.52
libnfnetlink0
libnftables1
libnftnl11
libnghttp2-14
libnginx-mod-http-image-filter
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnl-3-200
libnorm1
libnotify4
libnpth0
@@ -486,21 +505,20 @@ libnss-systemd
libnss3
libntfs-3g883
libnuma1
libobjc-8-dev
libobjc-9-dev
libobjc4
libodbc1
libogg0
libomp-9-dev
libomp5-9
libomp-11-dev
libomp5-11
libonig5
libopenexr-dev
libopenexr24
libopenjp2-7
libp11-kit0
libpackagekit-glib2-18
libpam-cap
libpam-modules-bin
libpam-modules
libpam-modules-bin
libpam-runtime
libpam-systemd
libpam0g
@@ -509,6 +527,7 @@ libpangocairo-1.0-0
libpangoft2-1.0-0
libpaper-utils
libpaper1
libparted-fs-resize0
libparted2
libpcap0.8
libpci3
@@ -519,11 +538,11 @@ libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix2
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
libpcre3
libpcrecpp0v5
libpcsclite1
libperl5.30
libpfm4
libpgm-5.2-0
@@ -539,22 +558,27 @@ libpopt0
libpq-dev
libpq5
libprocps8
libprotobuf-c1
libprotobuf17
libproxy1v5
libpsl5
libpthread-stubs0-dev
libpython2-stdlib
libpython2.7-minimal
libpython2.7-stdlib
libpython2.7
libpython3-dev
libpython3-stdlib
libpython3.8
libpython3.8-dev
libpython3.8-minimal
libpython3.8-stdlib
libpython3.8
libqdbm14
libqmi-glib5
libqmi-proxy
libquadmath0
librabbitmq4
libre2-5
libreadline-dev
libreadline5
libreadline8
librest-0.7-0
@@ -569,47 +593,48 @@ librsvg2-dev
librtmp1
libruby2.7
libsasl2-2
libsasl2-modules-db
libsasl2-modules
libsasl2-modules-db
libsctp1
libseccomp2
libsecret-1-0
libsecret-1-dev
libsecret-common
libselinux1-dev
libselinux1
libselinux1-dev
libsemanage-common
libsemanage1
libsensors-config
libsensors5
libsepol1-dev
libsepol1
libsepol1-dev
libserf-1-1
libsgutils2-2
libsigsegv2
libslang2
libslirp0
libsm-dev
libsm6
libsmartcols1
libsmbios-c2
libsnappy1v5
libsnmp-base
libsnmp35
libsodium23
libsoup-gnome2.4-1
libsoup2.4-1
libsqlite3-0
libsqlite3-dev
libss2
libssh-4
libssh2-1
libssl-dev
libssl1.1
libstdc++-7-dev
libstdc++-8-dev
libstdc++-10-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
libsvn1
libsybdb5
libsystemd0
libtalloc2
libtasn1-6
@@ -619,10 +644,11 @@ libtdb1
libtevent0
libtext-charwidth-perl
libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl
libthai-data
libthai0
libtie-ixhash-perl
libtidy5deb1
libtiff-dev
libtiff5
libtiffxx5
@@ -630,16 +656,19 @@ libtimedate-perl
libtinfo-dev
libtinfo5
libtinfo6
libtinyxml2-6a
libtk8.6
libtry-tiny-perl
libtommath1
libtool
libtsan0
libtss2-esys0
libtypes-serialiser-perl
libu2f-udev
libubsan0
libubsan1
libuchardet0
libucl1
libudev1
libudisks2-0
libunistring2
libunwind8
liburcu6
@@ -649,6 +678,7 @@ libutempter0
libutf8proc2
libuuid1
libuv1
libvolume-key1
libvorbis0a
libvorbisfile3
libvpx6
@@ -664,14 +694,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
@@ -680,14 +707,14 @@ libxcb-dri2-0
libxcb-dri3-0
libxcb-glx0
libxcb-present0
libxcb-render0-dev
libxcb-render0
libxcb-shape0
libxcb-shm0-dev
libxcb-render0-dev
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
libxcb1-dev
libxcb-xfixes0
libxcb1
libxcb1-dev
libxcomposite1
libxcursor1
libxdamage1
@@ -704,14 +731,17 @@ libxinerama1
libxkbcommon0
libxkbfile-dev
libxkbfile1
libxml-parser-perl
libxml-twig-perl
libxml-xpathengine-perl
libxml2-dev
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-sax-base-perl
libxml-sax-perl
libxml2
libxml2-dev
libxmlb1
libxmlsec1-openssl
libxmlb2
libxmlrpc-epi0
libxmlsec1
libxmlsec1-openssl
libxmu6
libxmuu1
libxpm4
@@ -725,29 +755,16 @@ libxt-dev
libxt6
libxtables12
libxtst6
libxv1
libxxf86dga1
libxxf86vm1
libyajl2
libyaml-0-2
libyaml-dev
libz3-4
libz3-dev
libzen0v5
libzip4
libzmq5
libzstd1
linux-azure-cloud-tools-5.4.0-1012
linux-azure-headers-5.4.0-1012
linux-azure-tools-5.4.0-1012
linux-azure
linux-base-sgx
linux-base
linux-cloud-tools-5.4.0-1012-azure
linux-cloud-tools-azure
linux-cloud-tools-common
linux-headers-5.4.0-1012-azure
linux-headers-azure
linux-image-5.4.0-1012-azure
linux-image-azure
linux-libc-dev
linux-modules-5.4.0-1012-azure
linux-tools-5.4.0-1012-azure
linux-tools-azure
linux-tools-common
python3-launchpadlib
python3-oauthlib
python3-wadllib

View File

@@ -1,68 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
Core
ctype
cubrid
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gd
hash
iconv
ioncube
intl
json
libxml
mbstring
mcrypt
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
SQLite
sqlite3
standard
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug

View File

@@ -1,75 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,75 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,67 +0,0 @@
[PHP Modules]
amqp
apc
apcu
calendar
Core
ctype
cubrid
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mhash
mongodb
msgpack
openssl
pcntl
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,64 +0,0 @@
[PHP Modules]
amqp
apcu
calendar
Core
ctype
cubrid
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mongodb
msgpack
openssl
pcntl
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,64 +0,0 @@
[PHP Modules]
amqp
apcu
calendar
Core
ctype
cubrid
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mongodb
msgpack
openssl
pcntl
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,65 +0,0 @@
[PHP Modules]
amqp
apcu
calendar
Core
ctype
cubrid
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mongodb
msgpack
openssl
pcntl
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
sodium
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,65 +0,0 @@
[PHP Modules]
amqp
apcu
calendar
Core
ctype
cubrid
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
igbinary
ioncube
intl
json
libxml
mbstring
memcache
memcached
mongodb
msgpack
openssl
pcntl
pcre
PDO
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
sodium
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
xsl
yaml
Zend OPcache
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,93 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imape
ioncub
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcov
pcre
oci8
PDO
pdo_dblib
PDO_Firebird
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,72 +0,0 @@
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
ioncube
intl
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Zend OPcache
Xdebug

View File

@@ -1,23 +1,27 @@
lib32gcc1
lib32gcc-s1
lib32stdc++6
libaccountsservice0
lib32z1
libacl1
libaio1
libaom3
libapparmor1
libappindicator3-1
libappstream4
libapr1
libaprutil1
libapt-inst2.0
libapt-pkg5.0
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-pkg6.0
libarchive13
libargon2-0
libasan4
libargon2-1
libaria2-0
libasan5
libasn1-8-heimdal
libasan6
libasan8
libasound2
libasound2-data
libaspell15
libassuan0
libatasmart4
libatk-bridge2.0-0
libatk1.0-0
libatk1.0-data
@@ -27,22 +31,36 @@ libatspi2.0-0
libattr1
libaudit-common
libaudit1
libauthen-sasl-perl
libavahi-client3
libavahi-common-data
libavahi-common3
libbind9-160
libavahi-glib1
libbinutils
libblas-dev
libblas3
libblkid-dev
libblkid1
libboost-context1.65.1
libboost-filesystem1.65.1
libboost-program-options1.65.1
libboost-system1.65.1
libboost-thread1.65.1
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
@@ -58,43 +76,50 @@ libcanberra0
libcap-ng0
libcap2
libcap2-bin
libcbor0.8
libcc1-0
libcgi-fast-perl
libcgi-pm-perl
libcgroup1
libcilkrts5
libclang-common-6.0-dev
libclang-common-8-dev
libclang-common-9-dev
libclang-cpp9
libclang1-6.0
libclang1-8
libclang1-9
libclang-common-13-dev
libclang-common-14-dev
libclang-common-15-dev
libclang-cpp13
libclang-cpp14
libclang-cpp15
libclang1-13
libclang1-14
libclang1-15
libclone-perl
libcolord2
libcom-err2
libcroco3
libcommon-sense-perl
libcrypt-dev
libcrypt1
libcryptsetup12
libctf-nobfd0
libctf0
libcups2
libcupsfilters1
libcupsimage2
libcurl3-gnutls
libcurl4
libdata-dump-perl
libdatrie1
libdav1d5
libdb5.3
libdbus-1-3
libdbus-glib-1-2
libdbusmenu-glib4
libdbusmenu-gtk3-4
libdconf1
libde265-0
libdebconfclient0
libdeflate-dev
libdeflate0
libdevmapper-event1.02.1
libdevmapper1.02.1
libdjvulibre-dev
libdjvulibre-text
libdjvulibre21
libdns-export1100
libdns1100
libdns-export1110
libdpkg-perl
libdrm-amdgpu1
libdrm-common
@@ -102,22 +127,19 @@ libdrm-intel1
libdrm-nouveau2
libdrm-radeon1
libdrm2
libdumbnet1
libdw1
libdwarf1
libeatmydata1
libedit2
libefiboot1
libefivar1
libelf1
libenchant1c2a
libenchant-2-2
libencode-locale-perl
libepoxy0
liberror-perl
libestr0
libevent-2.1-6
libevent-core-2.1-6
libevent-pthreads-2.1-6
libevent-core-2.1-7
libevent-pthreads-2.1-7
libexif-dev
libexif12
libexpat1
@@ -126,52 +148,62 @@ libext2fs2
libfakeroot
libfastjson4
libfbclient2
libfcgi-bin
libfcgi-perl
libfcgi0ldbl
libfdisk1
libffi-dev
libffi6
libffi8
libfftw3-double3
libfile-basedir-perl
libfile-desktopentry-perl
libfile-listing-perl
libfile-mimeinfo-perl
libfont-afm-perl
libfido2-1
libflashrom1
libfontconfig-dev
libfontconfig1
libfontconfig1-dev
libfontenc1
libfreetype-dev
libfreetype6
libfreetype6-dev
libfribidi0
libfuse2
libgc1c2
libgcc-7-dev
libgcc-8-dev
libfsverity0
libftdi1-2
libfuse3-3
libfwupd2
libfwupdplugin5
libgbm-dev
libgbm1
libgc1
libgcab-1.0-0
libgcc-10-dev
libgcc-11-dev
libgcc-12-dev
libgcc-13-dev
libgcc-9-dev
libgcc1
libgcc-s1
libgconf-2-4
libgcrypt20
libgcrypt20-dev
libgd3
libgdbm-compat4
libgdbm5
libgdbm6
libgdiplus
libgdk-pixbuf2.0-0
libgdk-pixbuf-2.0-0
libgdk-pixbuf-2.0-dev
libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev
libgeoip1
libgflags2.2
libgfortran-8-dev
libgfortran-10-dev
libgfortran-11-dev
libgfortran-12-dev
libgfortran-13-dev
libgfortran-9-dev
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
@@ -183,67 +215,46 @@ libgmp10
libgmpxx4ldbl
libgnutls30
libgomp1
libgoogle-glog0v5
libgpg-error-dev
libgpg-error0
libgpgme11
libgpm2
libgraphite2-3
libgraphite2-dev
libgs9
libgs9-common
libgsl-dev
libgsl27
libgslcblas0
libgssapi-krb5-2
libgssapi3-heimdal
libgstreamer1.0-0
libgtk-3-0
libgtk-3-common
libgtk2.0-0
libgtk2.0-cil
libgtk2.0-common
libharfbuzz-dev
libharfbuzz-gobject0
libharfbuzz-icu0
libgudev-1.0-0
libgusb2
libharfbuzz0b
libhcrypto4-heimdal
libheimbase1-heimdal
libheimntlm0-heimdal
libhogweed4
libhtml-form-perl
libhtml-format-perl
libhavege2
libheif1
libhogweed6
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
libhunspell-1.7-0
libhwasan0
libice-dev
libice6
libicu-dev
libicu-le-hb-dev
libicu-le-hb0
libicu60
libicu65
libiculx60
libidn11
libicu70
libidn2-0
libijs-0.35
libilmbase-dev
libilmbase12
libindicator3-7
libilmbase25
libinih1
libintl-perl
libintl-xs-perl
libio-html-perl
libio-socket-ssl-perl
libip4tc0
libip6tc0
libipc-system-simple-perl
libiptc0
libirs160
libisc-export169
libisc169
libisccc160
libisccfg160
libisl19
libip4tc2
libip6tc2
libisc-export1105
libisl23
libisns0
libisoburn1
libisofs6
@@ -251,7 +262,7 @@ libitm1
libjansson4
libjbig-dev
libjbig0
libjbig2dec0
libjcat1
libjpeg-dev
libjpeg-turbo8
libjpeg-turbo8-dev
@@ -259,30 +270,34 @@ libjpeg8
libjpeg8-dev
libjq1
libjs-jquery
libjson-c3
libjs-sphinxdoc
libjs-underscore
libjs-xmlextras
libjson-c5
libjson-glib-1.0-0
libjson-glib-1.0-common
libjsoncpp1
libjte1
libjson-perl
libjson-xs-perl
libjte2
libk5crypto3
libkeyutils1
libklibc
libkmod2
libkrb5-26-heimdal
libkrb5-3
libkrb5support0
libksba8
liblapack-dev
liblapack3
liblcms2-2
liblcms2-dev
libldap-2.4-2
libldap-2.5-0
libldap-common
libldb1
liblldb-6.0
liblldb-8
liblldb-9
libllvm6.0
libllvm8
libllvm9
liblldb-13
liblldb-14
liblldb-15
libllvm13
libllvm14
libllvm15
liblmdb0
liblocale-gettext-perl
liblqr-1-0
@@ -290,17 +305,11 @@ liblqr-1-0-dev
liblsan0
libltdl-dev
libltdl7
liblttng-ust-ctl4
liblttng-ust0
liblua5.2-0
liblvm2app2.2
liblvm2cmd2.02
liblua5.3-0
liblvm2cmd2.03
liblwp-mediatypes-perl
liblwp-protocol-https-perl
liblwres160
liblxc-common
liblxc1
liblz4-1
liblz4-dev
liblzma-dev
liblzma5
liblzo2-2
@@ -309,18 +318,26 @@ libmagic-mgc
libmagic1
libmagickcore-6-arch-config
libmagickcore-6-headers
libmagickcore-6.q16-3
libmagickcore-6.q16-3-extra
libmagickcore-6.q16-6
libmagickcore-6.q16-6-extra
libmagickcore-6.q16-dev
libmagickcore-dev
libmagickwand-6-headers
libmagickwand-6.q16-3
libmagickwand-6.q16-6
libmagickwand-6.q16-dev
libmagickwand-dev
libmailtools-perl
libmcrypt4
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
@@ -465,44 +482,57 @@ libmono-xbuild-tasks4.0-cil
libmonoboehm-2.0-1
libmonosgen-2.0-1
libmonosgen-2.0-dev
libmount-dev
libmount1
libmpc3
libmpdec2
libmpdec3
libmpfr6
libmpx2
libmspack0
libmysqlclient-dev
libmysqlclient20
libncurses5
libncursesw5
libnet-dbus-perl
libnet-http-perl
libnet-smtp-ssl-perl
libnet-ssleay-perl
libmysqlclient21
libncurses-dev
libncurses6
libncursesw6
libnetfilter-conntrack3
libnettle6
libnetplan0
libnettle8
libnewt0.52
libnfnetlink0
libnftables1
libnftnl11
libnghttp2-14
libnih1
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
libnotify4
libnpth0
libnsl-dev
libnsl2
libnspr4
libnss-systemd
libnss3
libntfs-3g88
libntfs-3g89
libnuma1
libobjc-7-dev
libobjc-11-dev
libobjc4
libodbc1
libodbc2
libodbccr2
libodbcinst2
libogg0
libomp-9-dev
libomp5-9
libonig4
libonig5
libopenexr-dev
libopenexr22
libopenexr25
libopeniscsiusr
libopenjp2-7
libopenjp2-7-dev
libostree-1-1
libp11-kit0
libpackagekit-glib2-18
libpam-cap
libpam-modules
libpam-modules-bin
@@ -514,6 +544,7 @@ libpangocairo-1.0-0
libpangoft2-1.0-0
libpaper-utils
libpaper1
libparted-fs-resize0
libparted2
libpcap0.8
libpci3
@@ -523,93 +554,97 @@ libpcre2-16-0
libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix2
libpcre2-posix3
libpcre3
libpcre3-dev
libpcre32-3
libpcrecpp0v5
libpcsclite1
libperl5.26
libperl5.34
libpfm4
libpgm-5.2-0
libpgm-5.3-0
libpipeline1
libpixman-1-0
libpixman-1-dev
libplymouth4
libplymouth5
libpng-dev
libpng16-16
libpolkit-agent-1-0
libpolkit-backend-1-0
libpolkit-gobject-1-0
libpopt0
libpq-dev
libpq5
libprocps6
libproc-processtable-perl
libprocps8
libprotobuf-lite23
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
libpython3.10
libpython3.10-dev
libpython3.10-minimal
libpython3.10-stdlib
libqdbm14
libqmi-glib5
libqmi-proxy
libquadmath0
librabbitmq4
libre2-4
libreadline5
libreadline7
librecode0
librest-0.7-0
libroken18-heimdal
librpm8
librpmbuild8
librpmio8
librpmsign8
libre2-9
libreadline-dev
libreadline8
librpm9
librpmbuild9
librpmio9
librpmsign9
librsvg2-2
librsvg2-common
librsvg2-dev
librtmp1
libruby2.5
libruby3.0
libsasl2-2
libsasl2-modules
libsasl2-modules-db
libsctp1
libseccomp2
libsecret-1-0
libsecret-1-dev
libsecret-common
libselinux1
libselinux1-dev
libsemanage-common
libsemanage1
libsensors4
libsepol1
libsemanage2
libsensors-config
libsensors5
libsepol-dev
libsepol2
libserf-1-1
libsgutils2-2
libsigsegv2
libslang2
libslirp0
libsm-dev
libsm6
libsmartcols1
libsmbios-c2
libsnappy1v5
libsnmp-base
libsnmp30
libsnmp40
libsodium23
libsoup-gnome2.4-1
libsort-naturally-perl
libsoup2.4-1
libsoup2.4-common
libsqlite3-0
libsqlite3-dev
libss2
libssh-4
libssh2-1
libssl-dev
libssl1.0.0
libssl1.1
libstartup-notification0
libstdc++-7-dev
libstdc++-8-dev
libssl3
libstdc++-10-dev
libstdc++-11-dev
libstdc++-12-dev
libstdc++-13-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
@@ -618,63 +653,79 @@ libsybdb5
libsystemd0
libtalloc2
libtasn1-6
libtbb2
libtcl8.6
libtdb1
libterm-readkey-perl
libtevent0
libtext-charwidth-perl
libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtie-ixhash-perl
libtiff-dev
libtiff5
libtiff5-dev
libtiffxx5
libtimedate-perl
libtinfo-dev
libtinfo5
libtinfo6
libtinyxml2-9
libtirpc-common
libtirpc-dev
libtirpc3
libtk8.6
libtommath1
libtool
libtry-tiny-perl
libtsan0
libtsan2
libtss2-esys-3.0.2-0
libtss2-mu0
libtss2-rc0
libtss2-sys1
libtss2-tcti-cmd0
libtss2-tcti-device0
libtss2-tcti-mssim0
libtss2-tcti-swtpm0
libtypes-serialiser-perl
libu2f-udev
libubsan0
libubsan1
libuchardet0
libucl1
libudev1
libudisks2-0
libunistring2
libunwind-14
libunwind-14-dev
libunwind8
liburcu6
liburcu8
liburi-perl
libusb-1.0-0
libutempter0
libutf8proc2
libuuid1
libuv1
libvolume-key1
libvorbis0a
libvorbisfile3
libvpx5
libvulkan1
libwayland-client0
libwayland-cursor0
libwayland-egl1
libwayland-server0
libwbclient0
libwebp6
libwind0-heimdal
libwebp7
libwebpdemux2
libwebpmux3
libwmf-0.2-7
libwmf-dev
libwmf0.2-7
libwmflite-0.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
libx265-199
libxau-dev
libxau6
libxaw7
@@ -682,13 +733,13 @@ libxcb-dri2-0
libxcb-dri3-0
libxcb-glx0
libxcb-present0
libxcb-randr0
libxcb-render0
libxcb-render0-dev
libxcb-shape0
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
libxcb-util1
libxcb-xfixes0
libxcb1
libxcb1-dev
libxcomposite1
@@ -700,19 +751,19 @@ libxext-dev
libxext6
libxfixes3
libxfont2
libxft-dev
libxft2
libxi6
libxinerama1
libxkbcommon0
libxkbfile-dev
libxkbfile1
libxml-parser-perl
libxml-twig-perl
libxml-xpathengine-perl
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-sax-base-perl
libxml-sax-perl
libxml2
libxml2-dev
libxmlrpc-epi0
libxmlb2
libxmlsec1
libxmlsec1-openssl
libxmu6
@@ -728,10 +779,18 @@ libxt-dev
libxt6
libxtables12
libxtst6
libxv1
libxxf86dga1
libxxf86vm1
libxxhash0
libyajl2
libyaml-0-2
libyaml-dev
libz3-4
libz3-dev
libzen0v5
libzip4
libzmq5
libzstd-dev
libzstd1
python3-launchpadlib
python3-oauthlib
python3-wadllib

4
src/lists/linux-deps Normal file
View File

@@ -0,0 +1,4 @@
geos=libgeos-dev
pdo_firebird=firebird-dev
oci8=libaio-dev
pdo_oci=libaio-dev

View File

@@ -1,728 +0,0 @@
lib32gcc1
lib32stdc++6
libaccountsservice0
libacl1
libaio1
libapparmor-perl
libapparmor1
libappindicator3-1
libapr1
libaprutil1
libapt-inst2.0
libapt-pkg5.0
libarchive13
libargon2-0
libasan2
libasan4
libasan5
libasn1-8-heimdal
libasound2
libasound2-data
libaspell15
libasprintf0v5
libatk-bridge2.0-0
libatk1.0-0
libatk1.0-data
libatm1
libatomic1
libatspi2.0-0
libattr1
libaudit-common
libaudit1
libauthen-sasl-perl
libavahi-client3
libavahi-common-data
libavahi-common3
libbind9-140
libblkid1
libboost-filesystem1.58.0
libboost-system1.58.0
libbsd0
libburn4
libbz2-1.0
libbz2-dev
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
libcapnp-0.5.3
libcc1-0
libcdt5
libcgi-fast-perl
libcgi-pm-perl
libcgraph6
libcgroup1
libcilkrts5
libclang-common-6.0-dev
libclang-common-8-dev
libclang-common-9-dev
libclang-cpp9
libclang1-6.0
libclang1-8
libcolord2
libcomerr2
libcroco3
libcryptsetup4
libcups2
libcupsfilters1
libcupsimage2
libcurl3
libcurl3-gnutls
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-export162
libdns162
libdpkg-perl
libdrm-amdgpu1
libdrm-common
libdrm-intel1
libdrm-nouveau2
libdrm-radeon1
libdrm2
libdumbnet1
libdw1
libeatmydata1
libedit2
libefivar0
libegl1-mesa
libelf1
libenchant1c2a
libencode-locale-perl
libepoxy0
liberror-perl
libestr0
libevent-2.0-5
libevent-core-2.0-5
libevent-pthreads-2.0-5
libexif-dev
libexif12
libexpat1
libexpat1-dev
libfakeroot
libfbclient2
libfcgi-perl
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
libfreetype6
libfreetype6-dev
libfribidi0
libfuse2
libgbm1
libgcc-5-dev
libgcc-7-dev
libgcc-8-dev
libgcc-9-dev
libgcc1
libgconf-2-4
libgcrypt20
libgd3
libgdbm3
libgdiplus
libgdk-pixbuf2.0-0
libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev
libgeoip1
libgflags2v5
libgfortran-8-dev
libgfortran-9-dev
libgfortran5
libgif7
libgirepository-1.0-1
libgl1-mesa-dri
libgl1-mesa-glx
libglade2-0
libglade2.0-cil
libglapi-mesa
libglib2.0-0
libglib2.0-bin
libglib2.0-cil
libglib2.0-data
libglib2.0-dev
libgmp-dev
libgmp10
libgmpxx4ldbl
libgnutls-openssl27
libgnutls30
libgomp1
libgoogle-glog0v5
libgpg-error0
libgpm2
libgraphite2-3
libgraphviz-dev
libgs9
libgs9-common
libgssapi-krb5-2
libgssapi3-heimdal
libgssrpc4
libgtk-3-0
libgtk-3-bin
libgtk-3-common
libgtk2.0-0
libgtk2.0-cil
libgtk2.0-common
libgvc6
libgvc6-plugins-gtk
libgvpr2
libharfbuzz0b
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.3-0
libhx509-5-heimdal
libice-dev
libice6
libicu-dev
libicu55
libicu65
libidn11
libijs-0.35
libilmbase-dev
libilmbase12
libindicator3-7
libio-html-perl
libio-socket-ssl-perl
libipc-system-simple-perl
libisc-export160
libisc160
libisccc140
libisccfg140
libisl15
libisoburn1
libisofs6
libitm1
libjasper-dev
libjasper1
libjbig-dev
libjbig0
libjbig2dec0
libjpeg-dev
libjpeg-turbo8
libjpeg-turbo8-dev
libjpeg8
libjpeg8-dev
libjs-jquery
libjson-c2
libjson-glib-1.0-0
libjson-glib-1.0-common
libjsoncpp1
libjte1
libk5crypto3
libkadm5clnt-mit9
libkadm5srv-mit9
libkdb5-8
libkeyutils1
libklibc
libkmod2
libkrb5-26-heimdal
libkrb5-3
libkrb5support0
liblcms2-2
liblcms2-dev
libldap-2.4-2
libldb1
liblldb-6.0
liblldb-8
liblldb-9
libllvm6.0
libllvm8
libllvm9
liblmdb0
liblocale-gettext-perl
liblqr-1-0
liblqr-1-0-dev
liblsan0
libltdl-dev
libltdl7
liblttng-ust-ctl2
liblttng-ust0
liblua5.2-0
liblvm2app2.2
liblvm2cmd2.02
liblwp-mediatypes-perl
liblwp-protocol-https-perl
liblwres141
liblxc1
liblz4-1
liblzma-dev
liblzma5
liblzo2-2
libmagic-dev
libmagic1
libmagickcore-6-arch-config
libmagickcore-6-headers
libmagickcore-6.q16-2
libmagickcore-6.q16-2-extra
libmagickcore-6.q16-dev
libmagickcore-dev
libmagickwand-6-headers
libmagickwand-6.q16-2
libmagickwand-6.q16-dev
libmagickwand-dev
libmailtools-perl
libmcrypt4
libmemcached11
libmirclient9
libmircommon7
libmircore1
libmirprotobuf3
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
libmpfr4
libmpx0
libmpx2
libmspack0
libmysqlclient-dev
libmysqlclient20
libncurses5
libncursesw5
libnet-dbus-perl
libnet-http-perl
libnet-smtp-ssl-perl
libnet-ssleay-perl
libnetfilter-conntrack3
libnettle6
libnewt0.52
libnfnetlink0
libnih-dbus1
libnih1
libnorm1
libnotify4
libnspr4
libnss3
libnss3-nssdb
libnuma1
libobjc-5-dev
libobjc4
libodbc1
libogg0
libomp-9-dev
libomp5-9
libonig2
libopenexr-dev
libopenexr22
libp11-kit0
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
libpathplan4
libpcap0.8
libpci3
libpciaccess0
libpcre16-3
libpcre2-16-0
libpcre2-32-0
libpcre2-8-0
libpcre2-dev
libpcre2-posix2
libpcre3
libpcre3-dev
libpcre32-3
libpcrecpp0v5
libpcsclite1
libperl5.22
libpfm4
libpgm-5.2-0
libpipeline1
libpixman-1-0
libpixman-1-dev
libplymouth4
libpng12-0
libpng12-dev
libpolkit-agent-1-0
libpolkit-backend-1-0
libpolkit-gobject-1-0
libpopt0
libpq-dev
libpq5
libprocps4
libprotobuf-lite9v5
libproxy1v5
libpthread-stubs0-dev
libpython-dev
libpython-stdlib
libpython2.7
libpython2.7-dev
libpython2.7-minimal
libpython2.7-stdlib
libpython3-dev
libpython3-stdlib
libpython3.5
libpython3.5-dev
libpython3.5-minimal
libpython3.5-stdlib
libqdbm14
libquadmath0
librabbitmq4
libre2-1v5
libreadline5
libreadline6
librecode0
librest-0.7-0
libroken18-heimdal
librpm3
librpmbuild3
librpmio3
librpmsign3
librsvg2-2
librsvg2-common
librsvg2-dev
librtmp1
libruby2.3
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
libsnmp-base
libsnmp30
libsodium23
libsoup-gnome2.4-1
libsoup2.4-1
libsqlite3-0
libss2
libssh2-1
libssl-dev
libssl-doc
libssl1.0.0
libssl1.1
libstartup-notification0
libstdc++-5-dev
libstdc++-7-dev
libstdc++-8-dev
libstdc++-9-dev
libstdc++6
libstemmer0d
libsvn1
libsybdb5
libsystemd0
libtalloc2
libtasn1-6
libtbb2
libtcl8.6
libtcltk-ruby
libtdb1
libtevent0
libtext-charwidth-perl
libtext-iconv-perl
libtext-wrapi18n-perl
libthai-data
libthai0
libtidy5deb1
libtie-ixhash-perl
libtiff5
libtiff5-dev
libtiffxx5
libtimedate-perl
libtinfo-dev
libtinfo5
libtk8.6
libtool
libtsan0
libubsan0
libubsan1
libucl1
libudev1
libunwind8
liburcu4
liburi-perl
libusb-0.1-4
libusb-1.0-0
libustr-1.0-1
libutempter0
libuuid1
libvorbis0a
libvorbisfile3
libvpx3
libwayland-client0
libwayland-cursor0
libwayland-egl1-mesa
libwayland-server0
libwbclient0
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
libxaw7
libxcb-dri2-0
libxcb-dri3-0
libxcb-glx0
libxcb-present0
libxcb-render0
libxcb-render0-dev
libxcb-shape0
libxcb-shm0
libxcb-shm0-dev
libxcb-sync1
libxcb-util1
libxcb-xfixes0
libxcb1
libxcb1-dev
libxcomposite1
libxcursor1
libxdamage1
libxdmcp-dev
libxdmcp6
libxdot4
libxext-dev
libxext6
libxfixes3
libxfont1
libxft-dev
libxft2
libxi6
libxinerama1
libxkbcommon0
libxkbfile-dev
libxkbfile1
libxml-parser-perl
libxml-twig-perl
libxml-xpathengine-perl
libxml2
libxml2-dev
libxmlrpc-epi0
libxmlsec1
libxmlsec1-openssl
libxmu6
libxmuu1
libxpm4
libxrandr2
libxrender-dev
libxrender1
libxshmfence1
libxslt1.1
libxss1
libxt-dev
libxt6
libxtables11
libxtst6
libxv1
libxxf86dga1
libxxf86vm1
libyaml-0-2
libz3-dev
libzip4
libzmq5
libzstd1

View File

@@ -1,71 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
Core
ctype
cubrid
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gd
hash
iconv
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mongo
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_sqlite
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
SQLite
sqlite3
standard
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug

View File

@@ -1,75 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,75 +0,0 @@
[PHP Modules]
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imagick
ioncube
intl
json
libxml
mbstring
mcrypt
memcached
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
redis
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,99 +0,0 @@
[PHP Modules]
amqp
apc
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
ereg
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
mcrypt
memcache
memcached
mhash
mongodb
msgpack
mssql
mysql
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
mcrypt
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
mcrypt
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,94 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
interbase
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
recode
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,92 +0,0 @@
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dba
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imap
ioncube
intl
json
ldap
libxml
mbstring
memcache
memcached
mongodb
msgpack
mysqli
mysqlnd
odbc
openssl
pcntl
pcre
PDO
pdo_dblib
PDO_Firebird
oci8
PDO_OCI
pdo_mysql
PDO_ODBC
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
redis
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
phalcon3
phalcon4
blackfire
[Zend Modules]
Xdebug
Zend OPcache

View File

@@ -1,73 +0,0 @@
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
cubrid
curl
date
dom
enchant
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
ioncube
intl
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcov
pcre
PDO
oci8
PDO_OCI
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib
phalcon3
phalcon4
blackfire
[Zend Modules]
Zend OPcache
Xdebug

125
src/scripts/cache.sh Normal file
View File

@@ -0,0 +1,125 @@
step_log() {
message=$1
printf "\n\033[90;1m==> \033[0m\033[37;1m%s\033[0m\n" "$message"
}
add_log() {
mark=$1
shift
subjects=("$@")
for subject in "${subjects[@]}"; do
if [ "$mark" = "$tick" ]; then
printf "\033[32;1m%s \033[0m\033[34;1m%s \033[0m\033[90;1m%s\033[0m\n" "$mark" "$subject" "Added $subject"
else
printf "\033[31;1m%s \033[0m\033[34;1m%s \033[0m\033[90;1m%s\033[0m\n" "$mark" "$subject" "Failed to setup $subject"
fi
done
}
get_api_version_from_repo() {
php_header="https://raw.githubusercontent.com/php/php-src/PHP-$version/main/php.h"
status_code=$(curl -sSL -o /tmp/php.h -w "%{http_code}" "$php_header")
if [ "$status_code" != "200" ]; then
curl -sSL --retry 5 "${php_header/PHP-$version/master}" | grep "PHP_API_VERSION" | cut -d' ' -f 3
else
grep "PHP_API_VERSION" /tmp/php.h | cut -d' ' -f 3
fi
}
get_api_version() {
case $version in
5.3) echo "20090626" ;;
5.4) echo "20100525" ;;
5.5) echo "20121212" ;;
5.6) echo "20131226" ;;
7.0) echo "20151012" ;;
7.1) echo "20160303" ;;
7.2) echo "20170718" ;;
7.3) echo "20180731" ;;
7.4) echo "20190902" ;;
8.0) echo "20200930" ;;
8.1) echo "20210902" ;;
*) get_api_version_from_repo ;;
esac
}
fix_ownership() {
dir=$1
sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")"
}
add_config() {
dependent_extension=$1
dependency_extension=$2
echo "$dependency_extension" | sudo tee "${ext_config_directory:?}/$dependent_extension/$dependency_extension" >/dev/null 2>&1
}
extension_dir_darwin() {
api_version=$1
if [[ "${version:?}" =~ ${old_versions:?} ]]; then
echo "/opt/local/lib/php${version/./}/extensions/no-debug-non-zts-$api_version"
else
if [[ "$(sysctl -n hw.optional.arm64 2>/dev/null)" == "1" ]]; then
echo "/opt/homebrew/lib/php/pecl/$api_version"
else
echo "/usr/local/lib/php/pecl/$api_version"
fi
fi
}
extension_dir_linux() {
api_version=$1
if [[ "${version:?}" =~ ${old_versions:?} ]]; then
echo "/usr/local/php/$version/lib/php/extensions/no-debug-non-zts-$api_version"
else
echo "/usr/lib/php/$api_version"
fi
}
data() {
old_versions="5.[3-5]"
date='20220831'
if [ "$os" = "Linux" ]; then
. /etc/lsb-release
os=$os-$DISTRIB_CODENAME
api_version=$(get_api_version)
dir=$(extension_dir_linux "$api_version")
sudo mkdir -p "$dir/deps" && fix_ownership "$dir"
elif [ "$os" = "Darwin" ]; then
api_version=$(get_api_version)
dir=$(extension_dir_darwin "$api_version")
sudo mkdir -p "$dir/deps" && fix_ownership "$dir"
else
os="Windows"
dir='C:\\tools\\php\\ext'
fi
job="${GITHUB_REPOSITORY}-${GITHUB_WORKFLOW}-${GITHUB_JOB}"
key="$(echo -n "$extensions-$key-$job" | openssl dgst -sha256 | cut -d ' ' -f 2)"
key="$os"-"$version"-"$key"-"$date"
echo "$dir" > "${RUNNER_TEMP:?}"/dir
echo "$key" > "${RUNNER_TEMP:?}"/key
echo "dir=$dir" >> "${GITHUB_OUTPUT:?}"
echo "key=$key" >> "${GITHUB_OUTPUT:?}"
}
dependencies() {
if [ "$os" = "Linux" ] || [ "$os" = "Darwin" ]; then
export tick="✓"
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"
setup_dependencies "$extensions" "$(cat "${RUNNER_TEMP:?}"/dir)"
fi
}
run=$1
extensions=$2
version=$3
key=$4
os=$(uname -s)
$run

192
src/scripts/darwin.sh Normal file
View File

@@ -0,0 +1,192 @@
fetch_brew_tap() {
tap=$1
tap_user=$(dirname "$tap")
tap_name=$(basename "$tap")
mkdir -p "$tap_dir/$tap_user"
curl -sL "https://github.com/$tap/archive/master.tar.gz" | sudo tar -xzf - -C "$tap_dir/$tap_user"
if [ -d "$tap_dir/$tap_user/$tap_name-master" ]; then
sudo mv "$tap_dir/$tap_user/$tap_name-master" "$tap_dir/$tap_user/$tap_name"
fi
}
add_brew_tap() {
tap=$1
if ! [ -d "$tap_dir/$tap" ]; then
if [ "${ImageOS:=}-${ImageVersion:=}" = "-" ]; then
brew tap --shallow "$tap" >/dev/null 2>&1
else
fetch_brew_tap "$tap" >/dev/null 2>&1
if ! [ -d "$tap_dir/$tap" ]; then
brew tap --shallow "$tap" >/dev/null 2>&1
fi
fi
fi
}
get_dependencies() {
extension=$1
list_deps="$(grep "$extension" "${script_dir:?}"/../lists/darwin-deps | cut -d '=' -f 2)"
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[@]}"
}
filter_extensions() {
extensions_array=("$@")
filtered_extensions=()
for ext in "${extensions_array[@]}"; do
if grep -i -q -w "$ext" "${script_dir:?}"/../lists/darwin-extensions ||
grep -q "$ext=" "${script_dir:?}"/../lists/darwin-deps; then
filtered_extensions+=("$ext")
fi
done
echo "${filtered_extensions[@]}"
}
setup_extensions_helper() {
dependent_extension=$1
dependency_extension=$2
extension_dir=$3
cached_extension="${deps_cache_directory:?}/$dependency_extension.so"
if ! [ -e "$cached_extension" ]; then
brew install "$dependency_extension@$version"
sudo find "$brew_cellar/$dependency_extension@${version:?}" -name "$dependency_extension.so" -exec cp {} "$cached_extension" \;
else
echo "Found $dependency_extension extension in cache"
sudo cp "$cached_extension" "$extension_dir/"
fi
add_config "$dependent_extension" "$dependency_extension"
}
setup_extensions() {
dependent_extension=$1
extension_dir=$2
shift 2
dependency_extensions_array=("$@")
sudo mkdir -p "$cache_directory"/"$extension"
echo "::group::Logs to set up extensions required for $extension"
for dependency_extension in "${dependency_extensions_array[@]}"; do
setup_extensions_helper "$dependent_extension" "$dependency_extension" "$extension_dir"
done
echo "::endgroup::"
add_log "${tick:?}" "${dependency_extensions_array[@]}"
}
add_library_helper() {
dep_name=$1
cache_dir=$2
echo "$dep_name" | sudo tee -a "$cache_dir"/list >/dev/null 2>&1
(
cd "$brew_cellar" || exit 1
if command -v gtar >/dev/null; then
sudo gtar -I "zstd -T0" -cf "$cache_dir"/"$dep_name".tar.zst "$dep_name"
else
sudo tar -cf - "$dep_name" | zstd -T0 > "$cache_dir"/"$dep_name".tar.zst
fi
)
}
add_library() {
lib=$1
cache_dir=$2
brew list "$lib" &>/dev/null || brew install "$lib"
IFS=' ' read -r -a deps_array <<<"$(brew deps "$lib" | tr '\n' ' ')"
to_wait=()
for dep_name in "$lib" "${deps_array[@]}"; do
add_library_helper "$dep_name" "$cache_dir" &
to_wait+=($!)
done
wait "${to_wait[@]}"
}
restore_library_helper() {
dep_name=$1
cache_dir=$2
if ! [ -d "$brew_cellar/$dep_name" ]; then
if command -v gtar >/dev/null; then
sudo gtar -I "zstd -d" -xf "$cache_dir"/"$dep_name".tar.zst -C "$brew_cellar"
else
sudo zstd -dq "$cache_dir"/"$dep_name".tar.zst && sudo tar -xf "$cache_dir"/"$dep_name".tar -C "$brew_cellar"
fi
fi
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() {
cache_dir=$1
to_wait=()
while read -r dep_name; do
restore_library_helper "$dep_name" "$cache_dir" &
to_wait+=($!)
done <"$cache_dir"/list
wait "${to_wait[@]}"
}
setup_libraries() {
extension=$1
shift 1
libraries_array=("$@")
ext_deps_dir="$deps_cache_directory/$extension"
sudo cp -a "$tap_dir"/"$ext_tap"/.github/deps/"$extension"/*.rb "$tap_dir"/"$core_tap"/Formula/ 2>/dev/null || true
sudo mkdir -p "$ext_deps_dir"
echo "::group::Logs to set up libraries required for $extension"
for lib in "${libraries_array[@]}"; do
if ! [ -e "$ext_deps_dir"/list ]; then
add_library "$lib" "$ext_deps_dir"
else
restore_library "$ext_deps_dir"
fi
done
echo "::endgroup::"
add_log "$tick" "${libraries_array[@]}"
}
setup_dependencies() {
extensions=$1
extension_dir=$2
cache_directory=/tmp/extcache
[[ -z "${extensions// /}" ]] && return
IFS=' ' read -r -a extensions_array <<<"$(echo "$extensions" | sed -e "s/pdo[_-]//g" -Ee "s/^|,\s*/ /g")"
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"
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' ' ')"
IFS=' ' read -r -a libraries_array <<<"${dependency_array[@]//shivammathur*/}"
if [[ -n "${libraries_array[*]// /}" ]]; then
step_log "Setup libraries for $extension"
setup_libraries "$extension" "${libraries_array[@]}"
fi
if [[ -n "${extension_array[*]// /}" ]] && [ "${skip_dependency_extensions:=}" != "true" ]; then
step_log "Setup extensions for $extension"
setup_extensions "$extension" "$extension_dir" "${extension_array[@]}"
fi
done
fi
}
export HOMEBREW_CHANGE_ARCH_TO_ARM=1
export HOMEBREW_NO_INSTALL_CLEANUP=1
export HOMEBREW_NO_AUTO_UPDATE=1
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
brew_prefix="$(brew --prefix)"
brew_cellar="$brew_prefix/Cellar"
tap_dir="$(brew --repository)"/Library/Taps
core_tap=homebrew/homebrew-core
php_tap=shivammathur/homebrew-php
ext_tap=shivammathur/homebrew-extensions

125
src/scripts/linux.sh Normal file
View File

@@ -0,0 +1,125 @@
link_apt_fast() {
if ! command -v apt-fast >/dev/null; then
sudo ln -sf /usr/bin/apt-get /usr/bin/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
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
}
get_dependencies() {
package=$1
prefix=$2
list_deps="$(grep "${package#*-}" "${script_dir:?}"/../lists/linux-deps | cut -d '=' -f 2 | grep -Eo "$prefix.*")"
package_deps="$(sed -e '/Package:\s'"$package$"'/,/^\s*$/!d' /tmp/Packages | grep -Eo "^Depends.*" | tr ',' '\n' | awk -v ORS='' '/^\s'"$prefix"'/{print$0}' | sed -e 's/([^()]*)//g' | sort | uniq | xargs echo -n)"
deps=()
[[ -n "${list_deps[*]}" ]] && deps+=("${list_deps[@]}")
[[ -n "${package_deps[*]}" ]] && deps+=("${package_deps[@]}")
echo "${deps[@]}"
}
get_package_link() {
package=$1
trunk="http://ppa.launchpad.net/ondrej/php/ubuntu"
file=$(sed -e '/Package:\s'"$package$"'/,/^\s*$/!d' /tmp/Packages | grep -Eo "^Filename.*" | cut -d' ' -f 2 | tr -d '\r')
echo "$trunk/$file"
}
setup_extensions_helper() {
dependency_extension=$1
extension_dir=$2
cached_extension="${deps_cache_directory:?}/$dependency_extension.so"
if ! [ -e "$extension_dir/$dependency_extension.so" ]; then
if ! [ -e "$cached_extension" ]; then
extension_package_link="$(get_package_link "php${version:?}-$dependency_extension")"
sudo curl -H "User-Agent: Debian APT-HTTP/GHA(ce)" -o "/tmp/$dependency_extension".deb -sL "$extension_package_link"
sudo dpkg-deb -x "/tmp/$dependency_extension".deb /
sudo cp "$extension_dir/$dependency_extension.so" "$cached_extension"
fix_ownership "$extension_dir"
else
sudo cp "$cached_extension" "$extension_dir/"
fi
fi
}
setup_extensions() {
extension_dir=$1
IFS=' ' read -r -a dependency_extension_array <<<"$(echo "$2" | xargs -n1 | sort | uniq | xargs)"
to_wait=()
for dependency_extension in "${dependency_extension_array[@]}"; do
setup_extensions_helper "$dependency_extension" "$extension_dir" &
to_wait+=($!)
done
wait "${to_wait[@]}"
add_log "${tick:?}" "${dependency_extension_array[@]}"
}
filter_libraries() {
libraries="$(echo "$1" | xargs -n1 | sort | uniq | xargs)"
for library in $libraries; do
if grep -i -q -w "$library" "${script_dir:?}"/../lists/"$VERSION_CODENAME"-libs; then
libraries=${libraries//$library/}
fi
done
echo "$libraries"
}
setup_libraries() {
libraries=$1
if [[ -n "${libraries// /}" ]]; then
libraries=$(filter_libraries "$libraries")
if [[ -n "${libraries// /}" ]]; then
step_log "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-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
add_log "$mark" "${libraries_array[@]}"
fi
fi
}
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-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-")"
extension_packages="$extension_packages ${dependency_extension_packages_array[*]}"
extension_packages="${extension_packages//php$version-common/}"
for dependency_extension in "${dependency_extension_packages_array[@]}"; do
mkdir -p "$ext_config_directory/${extension_package#*-}"
add_config "${extension_package#*-}" "$dependency_extension"
done
done
if [[ -n "${libraries// /}" ]]; then
setup_libraries "$libraries"
fi
if [[ -n "${extension_packages// /}" ]] && [ "${skip_dependency_extensions:=}" != "true" ]; then
setup_extensions "$extension_dir" "${extension_packages//php$version-/}"
fi
}

View File

@@ -1,24 +1,15 @@
import * as fs from 'fs';
import * as core from '@actions/core';
import * as path from 'path';
import * as spu from 'setup-php/lib/utils';
/**
* Function to get inputs from both with and env annotations.
*
* @param name
* @param mandatory
* Function to get outputs
*/
export async function getInput(
name: string,
mandatory: boolean
): Promise<string> {
const input = process.env[name];
switch (input) {
case '':
case undefined:
return core.getInput(name, {required: mandatory});
default:
return input;
}
export async function getOutput(output: string): Promise<string> {
return fs.readFileSync(
path.join(await spu.readEnv('RUNNER_TEMP'), output),
'utf8'
);
}
/**
@@ -27,10 +18,26 @@ export async function getInput(
* @param extension_csv
*/
export async function filterExtensions(extension_csv: string): Promise<string> {
return extension_csv
.split(',')
.filter(extension => {
return extension.trim()[0] != ':';
})
.join(',');
return JSON.stringify(
extension_csv
.split(',')
.filter(extension => {
return extension.trim()[0] != ':';
})
.join(',')
);
}
/**
* Function to get script call
*
* @param fn
* @param args
*/
export async function scriptCall(
fn: string,
...args: string[]
): Promise<string> {
const script: string = path.join(__dirname, '../src/scripts/cache.sh');
return ['bash', script, fn, ...args].join(' ');
}

View File

@@ -1,63 +1,19 @@
{
"compilerOptions": {
/* Basic Options */
// "incremental": true, /* Enable incremental compilation */
"target": "ES2019", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
"module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
// "allowJs": true, /* Allow javascript files to be compiled. */
// "checkJs": true, /* Report errors in .js files. */
// "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */
// "declaration": true, /* Generates corresponding '.d.ts' file. */
// "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
// "sourceMap": true, /* Generates corresponding '.map' file. */
// "outFile": "./", /* Concatenate and emit output to single file. */
"outDir": "./lib", /* Redirect output structure to the directory. */
"rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
// "composite": true, /* Enable project compilation */
// "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */
// "removeComments": true, /* Do not emit comments to output. */
// "noEmit": true, /* Do not emit outputs. */
// "importHelpers": true, /* Import emit helpers from 'tslib'. */
// "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
// "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
/* Strict Type-Checking Options */
"strict": true, /* Enable all strict type-checking options. */
// "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
// "strictNullChecks": true, /* Enable strict null checks. */
// "strictFunctionTypes": true, /* Enable strict checking of function types. */
// "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
// "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
// "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
// "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
/* Additional Checks */
// "noUnusedLocals": true, /* Report errors on unused locals. */
// "noUnusedParameters": true, /* Report errors on unused parameters. */
// "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
// "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
/* Module Resolution Options */
// "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
// "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
// "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */
// "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
// "typeRoots": [], /* List of folders to include type definitions from. */
// "types": [], /* Type declaration files to be included in compilation. */
// "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
"esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
// "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
/* Source Map Options */
// "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
// "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
// "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
// "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
/* Experimental Options */
// "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
// "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
"declaration": true,
"esModuleInterop": true,
"lib": [
"ESNext"
],
"module": "commonjs",
"moduleResolution": "node",
"noImplicitAny": true,
"outDir": "./lib",
"removeComments": true,
"rootDir": "./src",
"sourceMap": true,
"strict": true,
"target": "ESNext"
},
"exclude": ["node_modules", "**/*.test.ts"]
"exclude": ["__tests__", "lib", "node_modules"]
}