16 Commits
1.2.0 ... 1.5.0

Author SHA1 Message Date
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
43 changed files with 10699 additions and 5512 deletions

View File

@@ -10,7 +10,7 @@
"plugin:import/warnings", "plugin:import/warnings",
"plugin:import/typescript", "plugin:import/typescript",
"plugin:prettier/recommended", "plugin:prettier/recommended",
"prettier/@typescript-eslint" "prettier"
], ],
"plugins": ["@typescript-eslint", "jest"], "plugins": ["@typescript-eslint", "jest"],
"rules": { "rules": {

66
.github/workflows/libs.yml vendored Normal file
View File

@@ -0,0 +1,66 @@
name: Libs workflow
on:
workflow_dispatch:
schedule:
- cron: '0 15 * * *'
jobs:
update:
name: update
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-18.04, ubuntu-16.04]
steps:
- name: Update lists
run: |
. /etc/lsb-release
dpkg -l | awk '($1 == "ii") && ($2 ~ /^lib|lib$/) { print $2 }' | sed 's/:amd64//' > /tmp/"$DISTRIB_CODENAME"-libs
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
name: lists
path: |
/tmp/*-libs
sync:
name: sync
needs: update
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
ref: develop
fetch-depth: 0
- name: Download lists
uses: actions/download-artifact@v2
with:
name: lists
path: src/lists
- 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

View File

@@ -3,8 +3,8 @@
<p align="center"> <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://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://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="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-%3E%3D%205.3-8892BF.svg"></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.1-777bb3.svg?logo=php&logoColor=white&labelColor=555555"></a>
</p> </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 to see how to use this.
@@ -32,30 +32,32 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|5.6|`Stable`|`End of life`| |5.6|`Stable`|`End of life`|
|7.0|`Stable`|`End of life`| |7.0|`Stable`|`End of life`|
|7.1|`Stable`|`End of life`| |7.1|`Stable`|`End of life`|
|7.2|`Stable`|`Security fixes only`| |7.2|`Stable`|`End of life`|
|7.3|`Stable`|`Active`| |7.3|`Stable`|`Security fixes only`|
|7.4|`Stable`|`Active`| |7.4|`Stable`|`Active`|
|8.0|`Nightly`|`In development`| |8.0|`Stable`|`Active`|
|8.1|`Nightly`|`In development`|
## :cloud: OS/Platform Support ## :cloud: OS/Platform Support
|Virtual environment|YAML workflow label| |Virtual environment|YAML workflow label|
|--- |--- | |--- |--- |
|Windows Server 2019|`windows-latest` or `windows-2019`| |Windows Server 2019|`windows-latest` or `windows-2019`|
|Ubuntu 20.04|`ubuntu-20.04`| |Ubuntu 20.04|`ubuntu-latest` or `ubuntu-20.04`|
|Ubuntu 18.04|`ubuntu-latest` or `ubuntu-18.04`| |Ubuntu 18.04|`ubuntu-18.04`|
|Ubuntu 16.04|`ubuntu-16.04`| |Ubuntu 16.04|`ubuntu-16.04`|
|macOS Catalina 10.15|`macos-latest` or `macOS-10.15`| |macOS Catalina 10.15|`macos-latest` or `macOS-10.15`|
|macOS Big Sur 11.0|`macOS-11.0`|
## :memo: Usage ## :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 ### Inputs
#### `php-version` (required) #### `php-version` (required)
- Specify the PHP version you want to setup. - Specify the PHP version you want to set up.
- Accepts a `string`. For example `'7.4'`. - Accepts a `string`. For example `'7.4'`.
- See [PHP support](#tada-php-support) for supported PHP versions. - See [PHP support](#tada-php-support) for supported PHP versions.
@@ -117,7 +119,7 @@ jobs:
### Thread Safe Setup ### 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 `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 ```yaml
- name: Cache extensions - name: Cache extensions
@@ -130,7 +132,7 @@ If you setup both `TS` and `NTS` PHP versions on `Windows` in your workflow, ple
## :scroll: License ## :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 scripts 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 ## :+1: Contributions
@@ -144,7 +146,6 @@ If this action helped you.
- 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"). - 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. - If you use this action at your company, please [reach out](mailto:contact@setup-php.com) to sponsor the project.
## :package: Dependencies ## :package: Dependencies
- [Node.js dependencies](https://github.com/shivammathur/setup-php/network/dependencies "Node.js dependencies") - [Node.js dependencies](https://github.com/shivammathur/setup-php/network/dependencies "Node.js dependencies")

View File

@@ -7,15 +7,28 @@ jest.mock('@actions/core', () => ({
})); }));
describe('Utils tests', () => { describe('Utils tests', () => {
it('checking readEnv', async () => {
process.env['test'] = 'setup-php';
expect(await utils.readEnv('test')).toBe('setup-php');
expect(await utils.readEnv('undefined')).toBe('');
});
it('checking getInput', async () => { it('checking getInput', async () => {
process.env['test'] = 'cache-extensions'; process.env['test'] = 'setup-php';
process.env['undefined'] = ''; expect(await utils.getInput('test', false)).toBe('setup-php');
expect(await utils.getInput('test', false)).toBe('cache-extensions');
expect(await utils.getInput('undefined', false)).toBe('');
expect(await utils.getInput('cache-extensions', false)).toBe( expect(await utils.getInput('cache-extensions', false)).toBe(
'cache-extensions' 'cache-extensions'
); );
expect(await utils.getInput('DoesNotExist', false)).toBe(''); expect(await utils.getInput('DoesNotExist', false)).toBe('');
expect(async () => {
await utils.getInput('DoesNotExist', true);
}).rejects.toThrow('Input required and not supplied: DoesNotExist');
});
it('checking parseVersion', async () => {
expect(await utils.parseVersion('7')).toBe('7.0');
expect(await utils.parseVersion('7.4')).toBe('7.4');
expect(await utils.parseVersion('latest')).toBe('7.4');
}); });
it('checking filterExtensions', async () => { it('checking filterExtensions', async () => {

55
dist/index.js vendored
View File

@@ -1054,8 +1054,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
return result; return result;
}; };
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
exports.filterExtensions = exports.getInput = void 0; exports.filterExtensions = exports.parseVersion = exports.getInput = exports.readEnv = void 0;
const core = __importStar(__webpack_require__(470)); const core = __importStar(__webpack_require__(470));
/**
* Function to read environment variable and return a string value.
*
* @param property
*/
async function readEnv(property) {
const value = process.env[property];
switch (value) {
case undefined:
return '';
default:
return value;
}
}
exports.readEnv = readEnv;
/** /**
* Function to get inputs from both with and env annotations. * Function to get inputs from both with and env annotations.
* *
@@ -1063,16 +1078,39 @@ const core = __importStar(__webpack_require__(470));
* @param mandatory * @param mandatory
*/ */
async function getInput(name, mandatory) { async function getInput(name, mandatory) {
const input = process.env[name]; const input = core.getInput(name);
switch (input) { const env_input = await readEnv(name);
case '': switch (true) {
case undefined: case input != '':
return core.getInput(name, { required: mandatory });
default:
return input; return input;
case input == '' && env_input != '':
return env_input;
case input == '' && env_input == '' && mandatory:
throw new Error(`Input required and not supplied: ${name}`);
default:
return '';
} }
} }
exports.getInput = getInput; exports.getInput = getInput;
/**
* Function to parse PHP version.
*
* @param version
*/
async function parseVersion(version) {
switch (version) {
case 'latest':
return '7.4';
default:
switch (true) {
case version.length > 1:
return version.slice(0, 3);
default:
return version + '.0';
}
}
}
exports.parseVersion = parseVersion;
/** /**
* Function to filter extensions * Function to filter extensions
* *
@@ -1687,8 +1725,7 @@ const utils = __importStar(__webpack_require__(163));
*/ */
async function run() { async function run() {
try { try {
let version = await utils.getInput('php-version', true); const version = await utils.parseVersion(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 extensions = await utils.filterExtensions(await utils.getInput('extensions', true));
const key = await utils.getInput('key', true); const key = await utils.getInput('key', true);
const script_path = path.join(__dirname, '../src/extensions.sh'); const script_path = path.join(__dirname, '../src/extensions.sh');

13054
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "cache-extensions", "name": "cache-extensions",
"version": "1.2.0", "version": "1.5.1",
"private": false, "private": false,
"description": "Cache extensions in GitHub Actions", "description": "Cache extensions in GitHub Actions",
"main": "dist/index.js", "main": "dist/index.js",
@@ -28,22 +28,22 @@
"@actions/exec": "^1.0.4" "@actions/exec": "^1.0.4"
}, },
"devDependencies": { "devDependencies": {
"@types/jest": "^26.0.14", "@types/jest": "^26.0.20",
"@types/node": "^14.11.2", "@types/node": "^14.14.34",
"@typescript-eslint/eslint-plugin": "^4.3.0", "@typescript-eslint/eslint-plugin": "^4.17.0",
"@typescript-eslint/parser": "^4.3.0", "@typescript-eslint/parser": "^4.17.0",
"@zeit/ncc": "^0.22.3", "@zeit/ncc": "^0.22.3",
"eslint": "^7.10.0", "eslint": "^7.21.0",
"eslint-config-prettier": "^6.12.0", "eslint-config-prettier": "^8.1.0",
"eslint-plugin-import": "^2.22.1", "eslint-plugin-import": "^2.22.1",
"eslint-plugin-jest": "^24.0.2", "eslint-plugin-jest": "^24.2.1",
"eslint-plugin-prettier": "^3.1.4", "eslint-plugin-prettier": "^3.3.1",
"husky": "^4.3.0", "husky": "^4.3.8",
"jest": "^26.4.2", "jest": "^26.6.3",
"jest-circus": "^26.4.2", "jest-circus": "^26.6.3",
"prettier": "^2.1.2", "prettier": "^2.2.1",
"ts-jest": "^26.4.1", "ts-jest": "^26.5.3",
"typescript": "^4.0.3" "typescript": "^4.2.3"
}, },
"husky": { "husky": {
"skipCI": true, "skipCI": true,

View File

@@ -1,4 +1,4 @@
import {exec} from '@actions/exec/lib/exec'; import {exec} from '@actions/exec';
import * as core from '@actions/core'; import * as core from '@actions/core';
import * as path from 'path'; import * as path from 'path';
import * as utils from './utils'; import * as utils from './utils';
@@ -8,9 +8,10 @@ import * as utils from './utils';
*/ */
export async function run(): Promise<void> { export async function run(): Promise<void> {
try { try {
let version: string = await utils.getInput('php-version', true); const version: string = await utils.parseVersion(
version = version.length > 1 ? version.slice(0, 3) : version + '.0'; await utils.getInput('php-version', true)
const extensions = await utils.filterExtensions( );
const extensions: string = await utils.filterExtensions(
await utils.getInput('extensions', true) await utils.getInput('extensions', true)
); );
const key: string = await utils.getInput('key', true); const key: string = await utils.getInput('key', true);

View File

@@ -1,96 +1,219 @@
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
}
fix_ownership() {
dir=$1
sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")"
}
link_apt_fast() {
if ! command -v apt-fast >/dev/null; then
sudo ln -sf /usr/bin/apt-get /usr/bin/apt-fast
fi
}
fetch_package() {
if ! [ -e /tmp/Packages ]; then
deb_build_arch=$(dpkg-architecture -q DEB_BUILD_ARCH)
curl -o /tmp/Packages.gz -sL "http://ppa.launchpad.net/ondrej/php/ubuntu/dists/$DISTRIB_CODENAME/main/binary-$deb_build_arch/Packages.gz"
gzip -df /tmp/Packages.gz
fi
}
get_dependencies() {
package=$1
prefix=$2
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
}
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"
}
linux_extension_dir() { linux_extension_dir() {
apiv=$1 api_version=$1
old_versions_linux="5.[4-5]" if [[ "$version" =~ $old_versions ]]; then
if [ "$version" = "5.3" ]; then echo "/usr/lib/php5/$api_version"
echo "/home/runner/php/5.3.29/lib/php/extensions/no-debug-non-zts-$apiv" elif [[ "$version" =~ 5.3|$nightly_versions ]]; then
elif [[ "$version" =~ $old_versions_linux ]]; then echo "/usr/local/php/$version/lib/php/extensions/no-debug-non-zts-$api_version"
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 else
echo "/usr/lib/php/$apiv" echo "/usr/lib/php/$api_version"
fi fi
} }
darwin_extension_dir() { darwin_extension_dir() {
apiv=$1 api_version=$1
old_versions_darwin="5.[3-5]" old_versions_darwin="5.[3-5]"
if [[ "$version" =~ $old_versions_darwin ]]; then if [[ "$version" =~ $old_versions_darwin ]]; then
echo "/opt/local/lib/php${version/./}/extensions/no-debug-non-zts-$apiv" echo "/opt/local/lib/php${version/./}/extensions/no-debug-non-zts-$api_version"
else else
echo "/usr/local/lib/php/pecl/$apiv" 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 fi
} }
get_apiv() { get_api_version() {
case $version in case $version in
5.3) echo "20090626" ;; 5.3) echo "20090626" ;;
5.4) echo "20100525" ;; 5.4) echo "20100525" ;;
5.5) echo "20121212" ;; 5.5) echo "20121212" ;;
5.6) echo "20131226" ;; 5.6) echo "20131226" ;;
7.0) echo "20151012" ;; 7.0) echo "20151012" ;;
7.1) echo "20160303" ;; 7.1) echo "20160303" ;;
7.2) echo "20170718" ;; 7.2) echo "20170718" ;;
7.3) echo "20180731" ;; 7.3) echo "20180731" ;;
7.4) echo "20190902" ;; 7.4) echo "20190902" ;;
*) 8.0) echo "20200930" ;;
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 php_header="https://raw.githubusercontent.com/php/php-src/master/main/php.h"
;; curl -sSL --retry 5 "$php_header" | grep "PHP_API_VERSION" | cut -d' ' -f 3
;;
esac esac
} }
setup_dependencies() { add_config() {
exts=$1 dependent_extension=$1
release=$2 dependency_extension=$2
empty_reg="\s+|^$" echo "$dependency_extension" | sudo tee "$cache_directory/$dependent_extension/$dependency_extension" >/dev/null 2>&1
}
setup_extension() {
dependent_extension=$1
dependency_extension=$2
extension_dir=$3
if ! [ -e "$extension_dir/$dependency_extension.so" ]; then
extension_package_link="$(get_package_link "php$version-$dependency_extension")"
sudo curl -H "User-Agent: Debian APT-HTTP/GHA(ce)" -o "$dependency_extension".deb -sL "$extension_package_link"
sudo dpkg-deb -x "$dependency_extension".deb /
fix_ownership "$dir"
fi
if [ -e "$extension_dir/$dependency_extension.so" ]; then
add_config "$dependent_extension" "$dependency_extension"
add_log "$tick" "$dependency_extension"
else
add_log "$cross" "$dependency_extension"
fi
}
filter_dependencies_libs() {
libraries="$(echo "$1" | xargs -n1 | uniq | xargs)"
script_dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd ) script_dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )
exts=${exts//,/} for library in $libraries; do
for ext in $exts; do if grep -i -q -w "$library" "$script_dir"/lists/"$DISTRIB_CODENAME"-libs; then
if grep -i -q -w "$ext" "$script_dir"/lists/"$release"-php"$version"-extensions; then libraries=${libraries//$library/}
exts=${exts//$ext/}
fi fi
done done
if [[ ! "$exts" =~ $empty_reg ]]; then echo "$libraries"
# shellcheck disable=SC2001,SC2086 }
exts=$(echo ${exts//pdo_} | sed "s/[^ ]* */php$version-&/g")
# shellcheck disable=SC2086 setup_dependencies_libs() {
deps=$(apt-cache depends $exts 2>/dev/null | awk '/Depends: lib/{print$2}') libraries=$1
for dep in $deps; do if [[ -n "${libraries// }" ]]; then
if grep -i -q -w "$dep" "$script_dir"/lists/"$release"-libs; then libraries=$(filter_dependencies_libs "$libraries")
deps=${deps//$dep/} if [[ -n "${libraries// }" ]]; then
fi step_log "Setup libraries"
done IFS=' ' read -r -a libraries_array <<<"$libraries"
if [[ ! "${deps[*]}" =~ $empty_reg ]]; then link_apt_fast
echo "Adding ${deps[*]}" (
# shellcheck disable=SC2068 sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y "${libraries_array[@]}" >/dev/null 2>&1 &&
sudo DEBIAN_FRONTEND=noninteractive apt-fast install --no-install-recommends --no-upgrade -y ${deps[@]} add_log "$tick" "${libraries_array[@]}"
) || add_log "$cross" "${libraries_array[@]}"
fi fi
fi fi
} }
setup_dependencies_extensions() {
extension_dir=$1
shift
extensions_array=("$@")
. /etc/lsb-release
cache_directory=/tmp/extcache
sudo rm -rf "$cache_directory" || true
libraries=""
for extension_package in "${extensions_array[@]}"; do
fetch_package
libraries="$libraries $(get_dependencies "$extension_package" "lib")"
extension="${extension_package/php$version-/}"
if ! [ -d "$cache_directory"/"$extension" ]; then
extension_dependencies=$(get_dependencies "$extension_package" "php$version-")
extension_dependencies="${extension_dependencies//php$version-common/}"
if [[ -n "${extension_dependencies// }" ]]; then
step_log "Setup extensions for $extension"
extension_dependencies_array=()
IFS=' ' read -r -a extension_dependencies_array <<<"$extension_dependencies"
sudo mkdir -p "$cache_directory"/"$extension"
(
cd "$cache_directory" || exit 1
to_wait=()
for extension_dependeny_package in "${extension_dependencies_array[@]}"; do
if [[ -n "${extension_dependeny_package// }" ]]; then
extension_dependency=${extension_dependeny_package/php$version-/}
setup_extension "$extension" "$extension_dependency" "$extension_dir" &
to_wait+=($!)
fi
done
wait "${to_wait[@]}"
)
fi
fi
done
setup_dependencies_libs "$libraries"
}
setup_dependencies() {
extensions=$1
extension_dir=$2
if [[ -n "${extensions// }" ]]; then
IFS=' ' read -r -a extensions_array <<<"$(echo "$extensions" | sed -e "s/pdo[_-]//g" -Ee "s/^|,\s*/ php$version-/g")"
setup_dependencies_extensions "$extension_dir" "${extensions_array[@]}"
fi
}
extensions=$1 extensions=$1
key=$2 key=$2
version=$3 version=$3
tick="✓"
cross="✗"
os=$(uname -s) os=$(uname -s)
old_versions="5.[4-5]"
nightly_versions="8.[1-9]"
if [ "$os" = "Linux" ]; then if [ "$os" = "Linux" ]; then
release=$(lsb_release -s -c) . /etc/lsb-release
os=$os-$release os=$os-$DISTRIB_CODENAME
apiv=$(get_apiv) api_version=$(get_api_version)
dir=$(linux_extension_dir "$apiv") dir=$(linux_extension_dir "$api_version")
sudo mkdir -p "$dir" && sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")" sudo mkdir -p "$dir" && fix_ownership "$dir"
setup_dependencies "$extensions" "$release" setup_dependencies "$extensions" "$dir"
elif [ "$os" = "Darwin" ]; then elif [ "$os" = "Darwin" ]; then
apiv=$(get_apiv) api_version=$(get_api_version)
dir=$(darwin_extension_dir "$apiv") dir=$(darwin_extension_dir "$api_version")
sudo mkdir -p "$dir" && sudo chown -R "$USER":"$(id -g -n)" "$(dirname "$dir")" sudo mkdir -p "$dir" && fix_ownership "$dir"
else else
os="Windows" os="Windows"
dir='C:\\tools\\php\\ext' dir='C:\\tools\\php\\ext'
fi 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) key="$os"-ext-"$version"-$(echo -n "$extensions-$key" | openssl dgst -sha256 | cut -d ' ' -f 2)
key="$key-20210313"
echo "::set-output name=dir::$dir" echo "::set-output name=dir::$dir"
echo "::set-output name=key::$key" echo "::set-output name=key::$key"

View File

@@ -1,18 +1,22 @@
lib32gcc1 lib32gcc1
lib32stdc++6 lib32stdc++6
lib32z1
libaccountsservice0 libaccountsservice0
libacl1 libacl1
libaio1 libaio1
libapparmor1 libapparmor1
libappindicator3-1
libapr1 libapr1
libaprutil1 libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-inst2.0 libapt-inst2.0
libapt-pkg5.0 libapt-pkg5.0
libarchive13 libarchive13
libargon2-0 libargon2-0
libargon2-1
libasan4 libasan4
libasan5 libasan5
libasan6
libasn1-8-heimdal libasn1-8-heimdal
libasound2 libasound2
libasound2-data libasound2-data
@@ -33,16 +37,19 @@ libavahi-common-data
libavahi-common3 libavahi-common3
libbind9-160 libbind9-160
libbinutils libbinutils
libbison-dev
libblas-dev
libblas3
libblkid1 libblkid1
libboost-context1.65.1
libboost-filesystem1.65.1
libboost-program-options1.65.1
libboost-system1.65.1
libboost-thread1.65.1
libbsd0 libbsd0
libburn4 libburn4
libbz2-1.0 libbz2-1.0
libbz2-dev libbz2-dev
libc++-dev
libc++-helpers
libc++1
libc++abi-dev
libc++abi1
libc-ares2 libc-ares2
libc-bin libc-bin
libc-client2007e libc-client2007e
@@ -75,8 +82,6 @@ libcom-err2
libcroco3 libcroco3
libcryptsetup12 libcryptsetup12
libcups2 libcups2
libcupsfilters1
libcupsimage2
libcurl3-gnutls libcurl3-gnutls
libcurl4 libcurl4
libdata-dump-perl libdata-dump-perl
@@ -143,10 +148,14 @@ libfreetype6
libfreetype6-dev libfreetype6-dev
libfribidi0 libfribidi0
libfuse2 libfuse2
libgbm-dev
libgbm1
libgc1c2 libgc1c2
libgcc-10-dev
libgcc-7-dev libgcc-7-dev
libgcc-8-dev libgcc-8-dev
libgcc-9-dev libgcc-9-dev
libgcc-s1
libgcc1 libgcc1
libgconf-2-4 libgconf-2-4
libgcrypt20 libgcrypt20
@@ -159,8 +168,11 @@ libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev libgdk-pixbuf2.0-dev
libgeoip1 libgeoip1
libgflags2.2 libgflags2.2
libgfortran-10-dev
libgfortran-7-dev
libgfortran-8-dev libgfortran-8-dev
libgfortran-9-dev libgfortran-9-dev
libgfortran4
libgfortran5 libgfortran5
libgif7 libgif7
libgirepository-1.0-1 libgirepository-1.0-1
@@ -185,11 +197,13 @@ libgnutls30
libgomp1 libgomp1
libgoogle-glog0v5 libgoogle-glog0v5
libgpg-error0 libgpg-error0
libgpgme11
libgpm2 libgpm2
libgraphite2-3 libgraphite2-3
libgraphite2-dev libgraphite2-dev
libgs9 libgsl-dev
libgs9-common libgsl23
libgslcblas0
libgssapi-krb5-2 libgssapi-krb5-2
libgssapi3-heimdal libgssapi3-heimdal
libgtk-3-0 libgtk-3-0
@@ -201,6 +215,7 @@ libharfbuzz-dev
libharfbuzz-gobject0 libharfbuzz-gobject0
libharfbuzz-icu0 libharfbuzz-icu0
libharfbuzz0b libharfbuzz0b
libhavege1
libhcrypto4-heimdal libhcrypto4-heimdal
libheimbase1-heimdal libheimbase1-heimdal
libheimntlm0-heimdal libheimntlm0-heimdal
@@ -228,10 +243,8 @@ libicu65
libiculx60 libiculx60
libidn11 libidn11
libidn2-0 libidn2-0
libijs-0.35
libilmbase-dev libilmbase-dev
libilmbase12 libilmbase12
libindicator3-7
libio-html-perl libio-html-perl
libio-socket-ssl-perl libio-socket-ssl-perl
libip4tc0 libip4tc0
@@ -251,7 +264,6 @@ libitm1
libjansson4 libjansson4
libjbig-dev libjbig-dev
libjbig0 libjbig0
libjbig2dec0
libjpeg-dev libjpeg-dev
libjpeg-turbo8 libjpeg-turbo8
libjpeg-turbo8-dev libjpeg-turbo8-dev
@@ -272,6 +284,8 @@ libkrb5-26-heimdal
libkrb5-3 libkrb5-3
libkrb5support0 libkrb5support0
libksba8 libksba8
liblapack-dev
liblapack3
liblcms2-2 liblcms2-2
liblcms2-dev liblcms2-dev
libldap-2.4-2 libldap-2.4-2
@@ -280,6 +294,7 @@ libldb1
liblldb-6.0 liblldb-6.0
liblldb-8 liblldb-8
liblldb-9 liblldb-9
libllvm10
libllvm6.0 libllvm6.0
libllvm8 libllvm8
libllvm9 libllvm9
@@ -319,7 +334,9 @@ libmagickwand-6.q16-dev
libmagickwand-dev libmagickwand-dev
libmailtools-perl libmailtools-perl
libmcrypt4 libmcrypt4
libmediainfo0v5
libmemcached11 libmemcached11
libmms0
libmnl0 libmnl0
libmono-2.0-1 libmono-2.0-1
libmono-2.0-dev libmono-2.0-dev
@@ -474,17 +491,27 @@ libmspack0
libmysqlclient-dev libmysqlclient-dev
libmysqlclient20 libmysqlclient20
libncurses5 libncurses5
libncurses5-dev
libncursesw5 libncursesw5
libnet-dbus-perl libnet-dbus-perl
libnet-http-perl libnet-http-perl
libnet-smtp-ssl-perl libnet-smtp-ssl-perl
libnet-ssleay-perl libnet-ssleay-perl
libnet1
libnetfilter-conntrack3 libnetfilter-conntrack3
libnetplan0
libnettle6 libnettle6
libnewt0.52 libnewt0.52
libnfnetlink0 libnfnetlink0
libnghttp2-14 libnghttp2-14
libnginx-mod-http-geoip
libnginx-mod-http-image-filter
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnih1 libnih1
libnl-3-200
libnl-genl-3-200
libnorm1 libnorm1
libnotify4 libnotify4
libnpth0 libnpth0
@@ -528,7 +555,6 @@ libpcre3
libpcre3-dev libpcre3-dev
libpcre32-3 libpcre32-3
libpcrecpp0v5 libpcrecpp0v5
libpcsclite1
libperl5.26 libperl5.26
libpfm4 libpfm4
libpgm-5.2-0 libpgm-5.2-0
@@ -545,6 +571,8 @@ libpopt0
libpq-dev libpq-dev
libpq5 libpq5
libprocps6 libprocps6
libprotobuf-c1
libprotobuf10
libproxy1v5 libproxy1v5
libpsl5 libpsl5
libpthread-stubs0-dev libpthread-stubs0-dev
@@ -564,6 +592,7 @@ libqdbm14
libquadmath0 libquadmath0
librabbitmq4 librabbitmq4
libre2-4 libre2-4
libreadline-dev
libreadline5 libreadline5
libreadline7 libreadline7
librecode0 librecode0
@@ -603,11 +632,12 @@ libsodium23
libsoup-gnome2.4-1 libsoup-gnome2.4-1
libsoup2.4-1 libsoup2.4-1
libsqlite3-0 libsqlite3-0
libsqlite3-dev
libss2 libss2
libssl-dev libssl-dev
libssl1.0.0 libssl1.0.0
libssl1.1 libssl1.1
libstartup-notification0 libstdc++-10-dev
libstdc++-7-dev libstdc++-7-dev
libstdc++-8-dev libstdc++-8-dev
libstdc++-9-dev libstdc++-9-dev
@@ -624,6 +654,7 @@ libtdb1
libtevent0 libtevent0
libtext-charwidth-perl libtext-charwidth-perl
libtext-iconv-perl libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl libtext-wrapi18n-perl
libthai-data libthai-data
libthai0 libthai0
@@ -636,6 +667,7 @@ libtiffxx5
libtimedate-perl libtimedate-perl
libtinfo-dev libtinfo-dev
libtinfo5 libtinfo5
libtinyxml2-6
libtk8.6 libtk8.6
libtommath1 libtommath1
libtool libtool
@@ -657,9 +689,11 @@ libuv1
libvorbis0a libvorbis0a
libvorbisfile3 libvorbisfile3
libvpx5 libvpx5
libvulkan1
libwayland-client0 libwayland-client0
libwayland-cursor0 libwayland-cursor0
libwayland-egl1 libwayland-egl1
libwayland-server0
libwbclient0 libwbclient0
libwebp6 libwebp6
libwind0-heimdal libwind0-heimdal
@@ -688,7 +722,6 @@ libxcb-shape0
libxcb-shm0 libxcb-shm0
libxcb-shm0-dev libxcb-shm0-dev
libxcb-sync1 libxcb-sync1
libxcb-util1
libxcb1 libxcb1
libxcb1-dev libxcb1-dev
libxcomposite1 libxcomposite1
@@ -707,7 +740,11 @@ libxinerama1
libxkbcommon0 libxkbcommon0
libxkbfile-dev libxkbfile-dev
libxkbfile1 libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-parser-perl libxml-parser-perl
libxml-sax-base-perl
libxml-sax-perl
libxml-twig-perl libxml-twig-perl
libxml-xpathengine-perl libxml-xpathengine-perl
libxml2 libxml2
@@ -731,7 +768,10 @@ libxtst6
libxv1 libxv1
libxxf86dga1 libxxf86dga1
libxxf86vm1 libxxf86vm1
libyajl2
libyaml-0-2 libyaml-0-2
libzen0v5
libzip4 libzip4
libzmq5 libzmq5
libzstd1 libzstd1
python3-oauthlib

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

View File

@@ -1,24 +1,26 @@
lib32gcc-s1 lib32gcc-s1
lib32gcc1
lib32stdc++6 lib32stdc++6
lib32z1 lib32z1
libaccountsservice0 libaccountsservice0
libacl1 libacl1
libaio1 libaio1
libapparmor1 libapparmor1
libappindicator3-1
libappstream4 libappstream4
libapr1 libapr1
libaprutil1 libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-pkg6.0 libapt-pkg6.0
libarchive13 libarchive13
libargon2-1 libargon2-1
libaria2-0 libaria2-0
libasan4 libasan4
libasan5 libasan5
libasan6
libasn1-8-heimdal libasn1-8-heimdal
libasound2-data
libasound2 libasound2
libasound2-data
libaspell15
libassuan0 libassuan0
libatk-bridge2.0-0 libatk-bridge2.0-0
libatk1.0-0 libatk1.0-0
@@ -34,6 +36,8 @@ libavahi-client3
libavahi-common-data libavahi-common-data
libavahi-common3 libavahi-common3
libbinutils libbinutils
libblas-dev
libblas3
libblkid-dev libblkid-dev
libblkid1 libblkid1
libboost-context1.71.0 libboost-context1.71.0
@@ -45,32 +49,39 @@ libbsd0
libburn4 libburn4
libbz2-1.0 libbz2-1.0
libbz2-dev libbz2-dev
libc++-10-dev
libc++-dev
libc++1-10
libc++abi-10-dev
libc++abi-dev
libc++abi1-10
libc-ares2 libc-ares2
libc-bin libc-bin
libc-client2007e libc-client2007e
libc-dev-bin libc-dev-bin
libc6
libc6-dev libc6-dev
libc6-i386 libc6-i386
libc6
libcairo-gobject2 libcairo-gobject2
libcairo-script-interpreter2 libcairo-script-interpreter2
libcairo2-dev
libcairo2 libcairo2
libcairo2-dev
libcanberra0 libcanberra0
libcap-ng0 libcap-ng0
libcap2-bin
libcap2 libcap2
libcap2-bin
libcbor0.6 libcbor0.6
libcc1-0 libcc1-0
libcgi-fast-perl libcgi-fast-perl
libcgi-pm-perl libcgi-pm-perl
libcgroup1 libcgroup1
libcilkrts5 libcilkrts5
libclang-common-6.0-dev libclang-common-10-dev
libclang-common-8-dev libclang-common-8-dev
libclang-common-9-dev libclang-common-9-dev
libclang-cpp10
libclang-cpp9 libclang-cpp9
libclang1-6.0 libclang1-10
libclang1-8 libclang1-8
libcolord2 libcolord2
libcom-err2 libcom-err2
@@ -111,6 +122,7 @@ libedit2
libefiboot1 libefiboot1
libefivar1 libefivar1
libelf1 libelf1
libenchant-2-2
libencode-locale-perl libencode-locale-perl
libepoxy0 libepoxy0
liberror-perl liberror-perl
@@ -120,11 +132,12 @@ libevent-core-2.1-7
libevent-pthreads-2.1-7 libevent-pthreads-2.1-7
libexif-dev libexif-dev
libexif12 libexif12
libexpat1-dev
libexpat1 libexpat1
libexpat1-dev
libext2fs2 libext2fs2
libfakeroot libfakeroot
libfastjson4 libfastjson4
libfbclient2
libfcgi-perl libfcgi-perl
libfdisk1 libfdisk1
libffi-dev libffi-dev
@@ -137,26 +150,29 @@ libfile-listing-perl
libfile-mimeinfo-perl libfile-mimeinfo-perl
libfl2 libfl2
libfont-afm-perl libfont-afm-perl
libfontconfig1-dev
libfontconfig1 libfontconfig1
libfontconfig1-dev
libfontenc1 libfontenc1
libfreetype-dev libfreetype-dev
libfreetype6-dev
libfreetype6 libfreetype6
libfreetype6-dev
libfribidi0 libfribidi0
libfuse2 libfuse2
libfuse3-3
libfwupd2 libfwupd2
libfwupdplugin1 libfwupdplugin1
libgbm-dev libgbm-dev
libgbm1 libgbm1
libgc1c2 libgc1c2
libgcab-1.0-0 libgcab-1.0-0
libgcc-10-dev
libgcc-7-dev libgcc-7-dev
libgcc-8-dev libgcc-8-dev
libgcc-9-dev libgcc-9-dev
libgcc-s1 libgcc-s1
libgconf-2-4 libgconf-2-4
libgcrypt20 libgcrypt20
libgd3
libgdbm-compat4 libgdbm-compat4
libgdbm6 libgdbm6
libgdiplus libgdiplus
@@ -165,19 +181,20 @@ libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev libgdk-pixbuf2.0-dev
libgflags2.2 libgflags2.2
libgfortran-10-dev
libgfortran-8-dev libgfortran-8-dev
libgfortran-9-dev libgfortran-9-dev
libgfortran5 libgfortran5
libgif7 libgif7
libgirepository-1.0-1 libgirepository-1.0-1
libgl1-mesa-dri
libgl1 libgl1
libgl1-mesa-dri
libglapi-mesa libglapi-mesa
libglib2.0-0 libglib2.0-0
libglib2.0-bin libglib2.0-bin
libglib2.0-data libglib2.0-data
libglib2.0-dev-bin
libglib2.0-dev libglib2.0-dev
libglib2.0-dev-bin
libglvnd0 libglvnd0
libglx-mesa0 libglx-mesa0
libglx0 libglx0
@@ -191,8 +208,9 @@ libgpg-error0
libgpgme11 libgpgme11
libgpm2 libgpm2
libgraphite2-3 libgraphite2-3
libgs9-common libgsl-dev
libgs9 libgsl23
libgslcblas0
libgssapi-krb5-2 libgssapi-krb5-2
libgssapi3-heimdal libgssapi3-heimdal
libgstreamer1.0-0 libgstreamer1.0-0
@@ -217,6 +235,7 @@ libhttp-daemon-perl
libhttp-date-perl libhttp-date-perl
libhttp-message-perl libhttp-message-perl
libhttp-negotiate-perl libhttp-negotiate-perl
libhunspell-1.7-0
libhx509-5-heimdal libhx509-5-heimdal
libice-dev libice-dev
libice6 libice6
@@ -224,7 +243,6 @@ libicu-dev
libicu66 libicu66
libidn11 libidn11
libidn2-0 libidn2-0
libijs-0.35
libilmbase-dev libilmbase-dev
libilmbase24 libilmbase24
libio-html-perl libio-html-perl
@@ -239,22 +257,21 @@ libisns0
libisoburn1 libisoburn1
libisofs6 libisofs6
libitm1 libitm1
libjansson4
libjbig-dev libjbig-dev
libjbig0 libjbig0
libjbig2dec0
libjemalloc2 libjemalloc2
libjpeg-dev libjpeg-dev
libjpeg-turbo8-dev
libjpeg-turbo8 libjpeg-turbo8
libjpeg8-dev libjpeg-turbo8-dev
libjpeg8 libjpeg8
libjpeg8-dev
libjq1 libjq1
libjs-jquery libjs-jquery
libjs-xmlextras libjs-xmlextras
libjson-c4 libjson-c4
libjson-glib-1.0-0 libjson-glib-1.0-0
libjson-glib-1.0-common libjson-glib-1.0-common
libjsoncpp1
libjte2 libjte2
libk5crypto3 libk5crypto3
libkeyutils1 libkeyutils1
@@ -264,24 +281,28 @@ libkrb5-26-heimdal
libkrb5-3 libkrb5-3
libkrb5support0 libkrb5support0
libksba8 libksba8
liblapack-dev
liblapack3
liblcms2-2 liblcms2-2
liblcms2-dev liblcms2-dev
libldap-2.4-2 libldap-2.4-2
libldap-common libldap-common
liblldb-6.0-dev liblldb-10
liblldb-6.0
liblldb-8 liblldb-8
liblldb-9 liblldb-9
libllvm6.0 libllvm10
libllvm11
libllvm8 libllvm8
libllvm9 libllvm9
liblmdb0 liblmdb0
liblocale-gettext-perl liblocale-gettext-perl
liblqr-1-0-dev
liblqr-1-0 liblqr-1-0
liblqr-1-0-dev
liblsan0 liblsan0
libltdl-dev libltdl-dev
libltdl7 libltdl7
liblttng-ust-ctl4
liblttng-ust0
liblua5.2-0 liblua5.2-0
liblvm2cmd2.03 liblvm2cmd2.03
liblwp-mediatypes-perl liblwp-mediatypes-perl
@@ -295,8 +316,8 @@ libmagic-mgc
libmagic1 libmagic1
libmagickcore-6-arch-config libmagickcore-6-arch-config
libmagickcore-6-headers libmagickcore-6-headers
libmagickcore-6.q16-6-extra
libmagickcore-6.q16-6 libmagickcore-6.q16-6
libmagickcore-6.q16-6-extra
libmagickcore-6.q16-dev libmagickcore-6.q16-dev
libmagickcore-dev libmagickcore-dev
libmagickwand-6-headers libmagickwand-6-headers
@@ -307,7 +328,9 @@ libmailtools-perl
libmaxminddb0 libmaxminddb0
libmcrypt4 libmcrypt4
libmecab2 libmecab2
libmediainfo0v5
libmemcached11 libmemcached11
libmms0
libmnl0 libmnl0
libmono-2.0-1 libmono-2.0-1
libmono-2.0-dev libmono-2.0-dev
@@ -471,6 +494,7 @@ libnet-dbus-perl
libnet-http-perl libnet-http-perl
libnet-smtp-ssl-perl libnet-smtp-ssl-perl
libnet-ssleay-perl libnet-ssleay-perl
libnet1
libnetfilter-conntrack3 libnetfilter-conntrack3
libnetplan0 libnetplan0
libnettle7 libnettle7
@@ -478,6 +502,11 @@ libnewt0.52
libnfnetlink0 libnfnetlink0
libnftnl11 libnftnl11
libnghttp2-14 libnghttp2-14
libnginx-mod-http-image-filter
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnl-3-200
libnorm1 libnorm1
libnotify4 libnotify4
libnpth0 libnpth0
@@ -489,18 +518,18 @@ libnuma1
libobjc-8-dev libobjc-8-dev
libobjc-9-dev libobjc-9-dev
libobjc4 libobjc4
libodbc1
libogg0 libogg0
libomp-9-dev libomp-10-dev
libomp5-9 libomp5-10
libonig5 libonig5
libopenexr-dev libopenexr-dev
libopenexr24 libopenexr24
libopenjp2-7
libp11-kit0 libp11-kit0
libpackagekit-glib2-18 libpackagekit-glib2-18
libpam-cap libpam-cap
libpam-modules-bin
libpam-modules libpam-modules
libpam-modules-bin
libpam-runtime libpam-runtime
libpam-systemd libpam-systemd
libpam0g libpam0g
@@ -519,11 +548,10 @@ libpcre2-32-0
libpcre2-8-0 libpcre2-8-0
libpcre2-dev libpcre2-dev
libpcre2-posix2 libpcre2-posix2
libpcre3
libpcre3-dev libpcre3-dev
libpcre32-3 libpcre32-3
libpcre3
libpcrecpp0v5 libpcrecpp0v5
libpcsclite1
libperl5.30 libperl5.30
libpfm4 libpfm4
libpgm-5.2-0 libpgm-5.2-0
@@ -539,22 +567,25 @@ libpopt0
libpq-dev libpq-dev
libpq5 libpq5
libprocps8 libprocps8
libprotobuf-c1
libprotobuf17
libproxy1v5 libproxy1v5
libpsl5 libpsl5
libpthread-stubs0-dev libpthread-stubs0-dev
libpython2-stdlib libpython2-stdlib
libpython2.7-minimal libpython2.7-minimal
libpython2.7-stdlib libpython2.7-stdlib
libpython2.7
libpython3-dev libpython3-dev
libpython3-stdlib libpython3-stdlib
libpython3.8
libpython3.8-dev libpython3.8-dev
libpython3.8-minimal libpython3.8-minimal
libpython3.8-stdlib libpython3.8-stdlib
libpython3.8 libqdbm14
libquadmath0 libquadmath0
librabbitmq4 librabbitmq4
libre2-5 libre2-5
libreadline-dev
libreadline5 libreadline5
libreadline8 libreadline8
librest-0.7-0 librest-0.7-0
@@ -569,26 +600,25 @@ librsvg2-dev
librtmp1 librtmp1
libruby2.7 libruby2.7
libsasl2-2 libsasl2-2
libsasl2-modules-db
libsasl2-modules libsasl2-modules
libsasl2-modules-db
libsctp1 libsctp1
libseccomp2 libseccomp2
libsecret-1-0 libsecret-1-0
libsecret-1-dev libsecret-1-dev
libsecret-common libsecret-common
libselinux1-dev
libselinux1 libselinux1
libselinux1-dev
libsemanage-common libsemanage-common
libsemanage1 libsemanage1
libsensors-config libsensors-config
libsensors5 libsensors5
libsepol1-dev
libsepol1 libsepol1
libsepol1-dev
libserf-1-1 libserf-1-1
libsgutils2-2 libsgutils2-2
libsigsegv2 libsigsegv2
libslang2 libslang2
libslirp0
libsm-dev libsm-dev
libsm6 libsm6
libsmartcols1 libsmartcols1
@@ -599,17 +629,20 @@ libsodium23
libsoup-gnome2.4-1 libsoup-gnome2.4-1
libsoup2.4-1 libsoup2.4-1
libsqlite3-0 libsqlite3-0
libsqlite3-dev
libss2 libss2
libssh-4 libssh-4
libssh2-1 libssh2-1
libssl-dev libssl-dev
libssl1.1 libssl1.1
libstdc++-10-dev
libstdc++-7-dev libstdc++-7-dev
libstdc++-8-dev libstdc++-8-dev
libstdc++-9-dev libstdc++-9-dev
libstdc++6 libstdc++6
libstemmer0d libstemmer0d
libsvn1 libsvn1
libsybdb5
libsystemd0 libsystemd0
libtalloc2 libtalloc2
libtasn1-6 libtasn1-6
@@ -619,9 +652,11 @@ libtdb1
libtevent0 libtevent0
libtext-charwidth-perl libtext-charwidth-perl
libtext-iconv-perl libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl libtext-wrapi18n-perl
libthai-data libthai-data
libthai0 libthai0
libtidy5deb1
libtie-ixhash-perl libtie-ixhash-perl
libtiff-dev libtiff-dev
libtiff5 libtiff5
@@ -630,7 +665,10 @@ libtimedate-perl
libtinfo-dev libtinfo-dev
libtinfo5 libtinfo5
libtinfo6 libtinfo6
libtinyxml2-6a
libtk8.6 libtk8.6
libtommath1
libtool
libtry-tiny-perl libtry-tiny-perl
libtsan0 libtsan0
libtss2-esys0 libtss2-esys0
@@ -680,14 +718,15 @@ libxcb-dri2-0
libxcb-dri3-0 libxcb-dri3-0
libxcb-glx0 libxcb-glx0
libxcb-present0 libxcb-present0
libxcb-render0-dev
libxcb-render0 libxcb-render0
libxcb-render0-dev
libxcb-shape0 libxcb-shape0
libxcb-shm0-dev
libxcb-shm0 libxcb-shm0
libxcb-shm0-dev
libxcb-sync1 libxcb-sync1
libxcb1-dev libxcb-xfixes0
libxcb1 libxcb1
libxcb1-dev
libxcomposite1 libxcomposite1
libxcursor1 libxcursor1
libxdamage1 libxdamage1
@@ -704,14 +743,19 @@ libxinerama1
libxkbcommon0 libxkbcommon0
libxkbfile-dev libxkbfile-dev
libxkbfile1 libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-parser-perl libxml-parser-perl
libxml-sax-base-perl
libxml-sax-perl
libxml-twig-perl libxml-twig-perl
libxml-xpathengine-perl libxml-xpathengine-perl
libxml2-dev
libxml2 libxml2
libxml2-dev
libxmlb1 libxmlb1
libxmlsec1-openssl libxmlrpc-epi0
libxmlsec1 libxmlsec1
libxmlsec1-openssl
libxmu6 libxmu6
libxmuu1 libxmuu1
libxpm4 libxpm4
@@ -728,26 +772,14 @@ libxtst6
libxv1 libxv1
libxxf86dga1 libxxf86dga1
libxxf86vm1 libxxf86vm1
libyajl2
libyaml-0-2 libyaml-0-2
libz3-4 libz3-4
libz3-dev libz3-dev
libzen0v5
libzip4
libzmq5 libzmq5
libzstd1 libzstd1
linux-azure-cloud-tools-5.4.0-1012 python3-launchpadlib
linux-azure-headers-5.4.0-1012 python3-oauthlib
linux-azure-tools-5.4.0-1012 python3-wadllib
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

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,17 +1,19 @@
lib32gcc1 lib32gcc1
lib32stdc++6 lib32stdc++6
lib32z1
libaccountsservice0 libaccountsservice0
libacl1 libacl1
libaio1 libaio1
libapparmor-perl libapparmor-perl
libapparmor1 libapparmor1
libappindicator3-1
libapr1 libapr1
libaprutil1 libaprutil1
libaprutil1-dbd-sqlite3
libaprutil1-ldap
libapt-inst2.0 libapt-inst2.0
libapt-pkg5.0 libapt-pkg5.0
libarchive13 libarchive13
libargon2-0 libargon2-1
libasan2 libasan2
libasan4 libasan4
libasan5 libasan5
@@ -20,6 +22,7 @@ libasound2
libasound2-data libasound2-data
libaspell15 libaspell15
libasprintf0v5 libasprintf0v5
libassuan0
libatk-bridge2.0-0 libatk-bridge2.0-0
libatk1.0-0 libatk1.0-0
libatk1.0-data libatk1.0-data
@@ -34,6 +37,10 @@ libavahi-client3
libavahi-common-data libavahi-common-data
libavahi-common3 libavahi-common3
libbind9-140 libbind9-140
libbison-dev
libblas-common
libblas-dev
libblas3
libblkid1 libblkid1
libboost-filesystem1.58.0 libboost-filesystem1.58.0
libboost-system1.58.0 libboost-system1.58.0
@@ -41,6 +48,11 @@ libbsd0
libburn4 libburn4
libbz2-1.0 libbz2-1.0
libbz2-dev libbz2-dev
libc++-dev
libc++-helpers
libc++1
libc++abi-dev
libc++abi1
libc-ares2 libc-ares2
libc-bin libc-bin
libc-client2007e libc-client2007e
@@ -75,8 +87,6 @@ libcomerr2
libcroco3 libcroco3
libcryptsetup4 libcryptsetup4
libcups2 libcups2
libcupsfilters1
libcupsimage2
libcurl3 libcurl3
libcurl3-gnutls libcurl3-gnutls
libdatrie1 libdatrie1
@@ -131,6 +141,7 @@ libfile-basedir-perl
libfile-desktopentry-perl libfile-desktopentry-perl
libfile-listing-perl libfile-listing-perl
libfile-mimeinfo-perl libfile-mimeinfo-perl
libfl-dev
libfont-afm-perl libfont-afm-perl
libfontconfig1 libfontconfig1
libfontconfig1-dev libfontconfig1-dev
@@ -139,7 +150,9 @@ libfreetype6
libfreetype6-dev libfreetype6-dev
libfribidi0 libfribidi0
libfuse2 libfuse2
libgbm-dev
libgbm1 libgbm1
libgc1c2
libgcc-5-dev libgcc-5-dev
libgcc-7-dev libgcc-7-dev
libgcc-8-dev libgcc-8-dev
@@ -155,8 +168,10 @@ libgdk-pixbuf2.0-common
libgdk-pixbuf2.0-dev libgdk-pixbuf2.0-dev
libgeoip1 libgeoip1
libgflags2v5 libgflags2v5
libgfortran-5-dev
libgfortran-8-dev libgfortran-8-dev
libgfortran-9-dev libgfortran-9-dev
libgfortran3
libgfortran5 libgfortran5
libgif7 libgif7
libgirepository-1.0-1 libgirepository-1.0-1
@@ -181,11 +196,10 @@ libgpg-error0
libgpm2 libgpm2
libgraphite2-3 libgraphite2-3
libgraphviz-dev libgraphviz-dev
libgs9 libgsl-dev
libgs9-common libgsl2
libgssapi-krb5-2 libgssapi-krb5-2
libgssapi3-heimdal libgssapi3-heimdal
libgssrpc4
libgtk-3-0 libgtk-3-0
libgtk-3-bin libgtk-3-bin
libgtk-3-common libgtk-3-common
@@ -196,6 +210,7 @@ libgvc6
libgvc6-plugins-gtk libgvc6-plugins-gtk
libgvpr2 libgvpr2
libharfbuzz0b libharfbuzz0b
libhavege1
libhcrypto4-heimdal libhcrypto4-heimdal
libheimbase1-heimdal libheimbase1-heimdal
libheimntlm0-heimdal libheimntlm0-heimdal
@@ -219,10 +234,8 @@ libicu-dev
libicu55 libicu55
libicu65 libicu65
libidn11 libidn11
libijs-0.35
libilmbase-dev libilmbase-dev
libilmbase12 libilmbase12
libindicator3-7
libio-html-perl libio-html-perl
libio-socket-ssl-perl libio-socket-ssl-perl
libipc-system-simple-perl libipc-system-simple-perl
@@ -238,7 +251,6 @@ libjasper-dev
libjasper1 libjasper1
libjbig-dev libjbig-dev
libjbig0 libjbig0
libjbig2dec0
libjpeg-dev libjpeg-dev
libjpeg-turbo8 libjpeg-turbo8
libjpeg-turbo8-dev libjpeg-turbo8-dev
@@ -251,15 +263,15 @@ libjson-glib-1.0-common
libjsoncpp1 libjsoncpp1
libjte1 libjte1
libk5crypto3 libk5crypto3
libkadm5clnt-mit9
libkadm5srv-mit9
libkdb5-8
libkeyutils1 libkeyutils1
libklibc libklibc
libkmod2 libkmod2
libkrb5-26-heimdal libkrb5-26-heimdal
libkrb5-3 libkrb5-3
libkrb5support0 libkrb5support0
libksba8
liblapack-dev
liblapack3
liblcms2-2 liblcms2-2
liblcms2-dev liblcms2-dev
libldap-2.4-2 libldap-2.4-2
@@ -279,6 +291,7 @@ libltdl-dev
libltdl7 libltdl7
liblttng-ust-ctl2 liblttng-ust-ctl2
liblttng-ust0 liblttng-ust0
liblua5.1-0
liblua5.2-0 liblua5.2-0
liblvm2app2.2 liblvm2app2.2
liblvm2cmd2.02 liblvm2cmd2.02
@@ -304,11 +317,13 @@ libmagickwand-6.q16-dev
libmagickwand-dev libmagickwand-dev
libmailtools-perl libmailtools-perl
libmcrypt4 libmcrypt4
libmediainfo0v5
libmemcached11 libmemcached11
libmirclient9 libmirclient9
libmircommon7 libmircommon7
libmircore1 libmircore1
libmirprotobuf3 libmirprotobuf3
libmms0
libmnl0 libmnl0
libmono-2.0-1 libmono-2.0-1
libmono-2.0-dev libmono-2.0-dev
@@ -464,6 +479,7 @@ libmspack0
libmysqlclient-dev libmysqlclient-dev
libmysqlclient20 libmysqlclient20
libncurses5 libncurses5
libncurses5-dev
libncursesw5 libncursesw5
libnet-dbus-perl libnet-dbus-perl
libnet-http-perl libnet-http-perl
@@ -477,6 +493,7 @@ libnih-dbus1
libnih1 libnih1
libnorm1 libnorm1
libnotify4 libnotify4
libnpth0
libnspr4 libnspr4
libnss3 libnss3
libnss3-nssdb libnss3-nssdb
@@ -516,7 +533,6 @@ libpcre3
libpcre3-dev libpcre3-dev
libpcre32-3 libpcre32-3
libpcrecpp0v5 libpcrecpp0v5
libpcsclite1
libperl5.22 libperl5.22
libpfm4 libpfm4
libpgm-5.2-0 libpgm-5.2-0
@@ -552,8 +568,10 @@ libqdbm14
libquadmath0 libquadmath0
librabbitmq4 librabbitmq4
libre2-1v5 libre2-1v5
libreadline-dev
libreadline5 libreadline5
libreadline6 libreadline6
libreadline6-dev
librecode0 librecode0
librest-0.7-0 librest-0.7-0
libroken18-heimdal libroken18-heimdal
@@ -591,13 +609,13 @@ libsodium23
libsoup-gnome2.4-1 libsoup-gnome2.4-1
libsoup2.4-1 libsoup2.4-1
libsqlite3-0 libsqlite3-0
libsqlite3-dev
libss2 libss2
libssh2-1 libssh2-1
libssl-dev libssl-dev
libssl-doc libssl-doc
libssl1.0.0 libssl1.0.0
libssl1.1 libssl1.1
libstartup-notification0
libstdc++-5-dev libstdc++-5-dev
libstdc++-7-dev libstdc++-7-dev
libstdc++-8-dev libstdc++-8-dev
@@ -616,6 +634,7 @@ libtdb1
libtevent0 libtevent0
libtext-charwidth-perl libtext-charwidth-perl
libtext-iconv-perl libtext-iconv-perl
libtext-unidecode-perl
libtext-wrapi18n-perl libtext-wrapi18n-perl
libthai-data libthai-data
libthai0 libthai0
@@ -627,6 +646,7 @@ libtiffxx5
libtimedate-perl libtimedate-perl
libtinfo-dev libtinfo-dev
libtinfo5 libtinfo5
libtinyxml2-2v5
libtk8.6 libtk8.6
libtool libtool
libtsan0 libtsan0
@@ -645,6 +665,7 @@ libuuid1
libvorbis0a libvorbis0a
libvorbisfile3 libvorbisfile3
libvpx3 libvpx3
libvulkan1
libwayland-client0 libwayland-client0
libwayland-cursor0 libwayland-cursor0
libwayland-egl1-mesa libwayland-egl1-mesa
@@ -676,7 +697,6 @@ libxcb-shape0
libxcb-shm0 libxcb-shm0
libxcb-shm0-dev libxcb-shm0-dev
libxcb-sync1 libxcb-sync1
libxcb-util1
libxcb-xfixes0 libxcb-xfixes0
libxcb1 libxcb1
libxcb1-dev libxcb1-dev
@@ -697,7 +717,11 @@ libxinerama1
libxkbcommon0 libxkbcommon0
libxkbfile-dev libxkbfile-dev
libxkbfile1 libxkbfile1
libxml-libxml-perl
libxml-namespacesupport-perl
libxml-parser-perl libxml-parser-perl
libxml-sax-base-perl
libxml-sax-perl
libxml-twig-perl libxml-twig-perl
libxml-xpathengine-perl libxml-xpathengine-perl
libxml2 libxml2
@@ -723,6 +747,8 @@ libxxf86dga1
libxxf86vm1 libxxf86vm1
libyaml-0-2 libyaml-0-2
libz3-dev libz3-dev
libzen0v5
libzip4 libzip4
libzmq5 libzmq5
libzstd1 libzstd1
python3-oauthlib

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

View File

@@ -1,6 +1,21 @@
import * as fs from 'fs'; import * as fs from 'fs';
import * as core from '@actions/core'; import * as core from '@actions/core';
/**
* Function to read environment variable and return a string value.
*
* @param property
*/
export async function readEnv(property: string): Promise<string> {
const value = process.env[property];
switch (value) {
case undefined:
return '';
default:
return value;
}
}
/** /**
* Function to get inputs from both with and env annotations. * Function to get inputs from both with and env annotations.
* *
@@ -11,13 +26,36 @@ export async function getInput(
name: string, name: string,
mandatory: boolean mandatory: boolean
): Promise<string> { ): Promise<string> {
const input = process.env[name]; const input = core.getInput(name);
switch (input) { const env_input = await readEnv(name);
case '': switch (true) {
case undefined: case input != '':
return core.getInput(name, {required: mandatory});
default:
return input; return input;
case input == '' && env_input != '':
return env_input;
case input == '' && env_input == '' && mandatory:
throw new Error(`Input required and not supplied: ${name}`);
default:
return '';
}
}
/**
* Function to parse PHP version.
*
* @param version
*/
export async function parseVersion(version: string): Promise<string> {
switch (version) {
case 'latest':
return '7.4';
default:
switch (true) {
case version.length > 1:
return version.slice(0, 3);
default:
return version + '.0';
}
} }
} }