setup-php 2.15.0 → 2.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.md +157 -143
  2. package/lib/config.d.ts +3 -3
  3. package/lib/config.js +71 -71
  4. package/lib/config.js.map +1 -1
  5. package/lib/coverage.d.ts +5 -4
  6. package/lib/coverage.js +97 -87
  7. package/lib/coverage.js.map +1 -1
  8. package/lib/extensions.d.ts +4 -4
  9. package/lib/extensions.js +214 -210
  10. package/lib/extensions.js.map +1 -1
  11. package/lib/fetch.d.ts +1 -0
  12. package/lib/fetch.js +63 -0
  13. package/lib/fetch.js.map +1 -0
  14. package/lib/install.d.ts +2 -2
  15. package/lib/install.js +75 -80
  16. package/lib/install.js.map +1 -1
  17. package/lib/tools.d.ts +23 -24
  18. package/lib/tools.js +373 -386
  19. package/lib/tools.js.map +1 -1
  20. package/lib/utils.d.ts +21 -23
  21. package/lib/utils.js +261 -293
  22. package/lib/utils.js.map +1 -1
  23. package/package.json +21 -20
  24. package/src/config.ts +8 -8
  25. package/src/configs/brew_extensions +2 -0
  26. package/src/configs/composer.env +2 -0
  27. package/src/configs/ini/jit.ini +3 -0
  28. package/src/configs/ini/php.ini +2 -0
  29. package/src/configs/ini/xdebug.ini +1 -0
  30. package/src/configs/os_releases.csv +2 -0
  31. package/src/configs/php-versions.json +2 -2
  32. package/src/configs/php_packages +12 -0
  33. package/src/configs/{php.json → pm/php.json} +0 -0
  34. package/src/configs/{phpunit.json → pm/phpunit.json} +24 -24
  35. package/src/configs/tools.json +48 -26
  36. package/src/configs/tools_schema.json +11 -0
  37. package/src/coverage.ts +47 -55
  38. package/src/extensions.ts +23 -19
  39. package/src/fetch.ts +54 -0
  40. package/src/install.ts +27 -40
  41. package/src/scripts/darwin.sh +72 -39
  42. package/src/scripts/extensions/add_extensions.ps1 +194 -0
  43. package/src/scripts/extensions/add_extensions.sh +184 -0
  44. package/src/scripts/{ext → extensions}/blackfire.ps1 +0 -0
  45. package/src/scripts/{ext → extensions}/blackfire.sh +0 -0
  46. package/src/scripts/{ext → extensions}/couchbase.sh +0 -0
  47. package/src/scripts/{ext → extensions}/cubrid.sh +3 -3
  48. package/src/scripts/{ext → extensions}/extension_map.php +36 -13
  49. package/src/scripts/{ext → extensions}/firebird.ps1 +0 -0
  50. package/src/scripts/{ext → extensions}/firebird.sh +0 -0
  51. package/src/scripts/{ext → extensions}/gearman.sh +0 -0
  52. package/src/scripts/{ext → extensions}/geos.sh +0 -0
  53. package/src/scripts/{ext → extensions}/http.ps1 +0 -0
  54. package/src/scripts/{ext → extensions}/http.sh +4 -15
  55. package/src/scripts/{ext → extensions}/intl.sh +0 -0
  56. package/src/scripts/{ext → extensions}/ioncube.ps1 +2 -2
  57. package/src/scripts/{ext → extensions}/ioncube.sh +2 -2
  58. package/src/scripts/{ext → extensions}/oci.ps1 +39 -14
  59. package/src/scripts/{ext → extensions}/oci.sh +3 -3
  60. package/src/scripts/{ext → extensions}/patches/firebird.sh +0 -0
  61. package/src/scripts/{ext → extensions}/patches/geos.sh +0 -0
  62. package/src/scripts/{ext → extensions}/patches/http.sh +0 -0
  63. package/src/scripts/{ext → extensions}/patches/pdo_oci.sh +0 -0
  64. package/src/scripts/{ext → extensions}/patches/phpize.sh +0 -0
  65. package/src/scripts/{ext → extensions}/patches/protobuf.sh +0 -0
  66. package/src/scripts/{ext → extensions}/phalcon.ps1 +0 -0
  67. package/src/scripts/{ext → extensions}/phalcon.sh +4 -5
  68. package/src/scripts/{ext → extensions}/source.sh +23 -22
  69. package/src/scripts/extensions/sqlsrv.sh +15 -0
  70. package/src/scripts/linux.sh +71 -40
  71. package/src/scripts/tools/add_tools.ps1 +220 -10
  72. package/src/scripts/tools/add_tools.sh +166 -15
  73. package/src/scripts/tools/blackfire.sh +2 -1
  74. package/src/scripts/tools/grpc_php_plugin.ps1 +4 -4
  75. package/src/scripts/tools/grpc_php_plugin.sh +3 -3
  76. package/src/scripts/tools/ppa.sh +12 -9
  77. package/src/scripts/tools/protoc.ps1 +2 -2
  78. package/src/scripts/tools/protoc.sh +2 -2
  79. package/src/scripts/tools/symfony.ps1 +18 -0
  80. package/src/scripts/tools/symfony.sh +18 -0
  81. package/src/scripts/unix.sh +186 -0
  82. package/src/scripts/win32.ps1 +145 -356
  83. package/src/tools.ts +62 -82
  84. package/src/utils.ts +57 -145
  85. package/lib/sapi.js +0 -64
  86. package/src/scripts/common.sh +0 -366
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "setup-php",
3
- "version": "2.15.0",
3
+ "version": "2.17.1",
4
4
  "private": false,
5
5
  "description": "Setup PHP for use with GitHub Actions",
6
6
  "main": "lib/install.js",
@@ -16,9 +16,9 @@
16
16
  ],
17
17
  "scripts": {
18
18
  "build": "tsc",
19
- "lint": "eslint **/src/*.ts --cache --fix",
20
- "format": "prettier --write **/src/*.ts && git add -f src/",
21
- "format-check": "prettier --check **/src/*.ts",
19
+ "lint": "eslint **/src/*.ts **/__tests__/*.ts --cache --fix",
20
+ "format": "prettier --write **/src/*.ts **/__tests__/*.ts && git add -f src/",
21
+ "format-check": "prettier --check **/src/*.ts **/__tests__/*.ts",
22
22
  "release": "ncc build -o dist && git add -f dist/",
23
23
  "test": "jest"
24
24
  },
@@ -34,28 +34,29 @@
34
34
  "author": "shivammathur",
35
35
  "license": "MIT",
36
36
  "dependencies": {
37
- "@actions/core": "^1.5.0",
37
+ "@actions/core": "^1.6.0",
38
38
  "@actions/exec": "^1.1.0",
39
39
  "@actions/io": "^1.1.1",
40
40
  "fs": "0.0.1-security"
41
41
  },
42
42
  "devDependencies": {
43
- "@types/jest": "^27.0.2",
44
- "@types/node": "^16.10.1",
45
- "@typescript-eslint/eslint-plugin": "^4.32.0",
46
- "@typescript-eslint/parser": "^4.32.0",
47
- "@vercel/ncc": "^0.31.1",
48
- "eslint": "^7.32.0",
49
- "eslint-config-prettier": "^8.3.0",
50
- "eslint-plugin-import": "^2.24.2",
51
- "eslint-plugin-jest": "^24.4.2",
43
+ "@types/jest": "^27.4.1",
44
+ "@types/node": "^17.0.21",
45
+ "@typescript-eslint/eslint-plugin": "^5.12.1",
46
+ "@typescript-eslint/parser": "^5.12.1",
47
+ "@vercel/ncc": "^0.33.3",
48
+ "eslint": "^8.10.0",
49
+ "eslint-config-prettier": "^8.4.0",
50
+ "eslint-plugin-import": "^2.25.4",
51
+ "eslint-plugin-jest": "^26.1.1",
52
52
  "eslint-plugin-prettier": "^4.0.0",
53
- "jest": "^27.2.2",
54
- "jest-circus": "^27.2.2",
55
- "prettier": "^2.4.1",
56
- "simple-git-hooks": "^2.6.1",
57
- "ts-jest": "^27.0.5",
58
- "typescript": "^4.4.3"
53
+ "jest": "^27.5.1",
54
+ "jest-circus": "^27.5.1",
55
+ "nock": "^13.2.4",
56
+ "prettier": "^2.5.1",
57
+ "simple-git-hooks": "^2.7.0",
58
+ "ts-jest": "^27.1.3",
59
+ "typescript": "^4.5.5"
59
60
  },
60
61
  "bugs": {
61
62
  "url": "https://github.com/shivammathur/setup-php/issues"
package/src/config.ts CHANGED
@@ -45,28 +45,28 @@ export async function addINIValuesWindows(
45
45
  * Function to add custom ini values
46
46
  *
47
47
  * @param ini_values_csv
48
- * @param os_version
48
+ * @param os
49
49
  * @param no_step
50
50
  */
51
51
  export async function addINIValues(
52
52
  ini_values_csv: string,
53
- os_version: string,
53
+ os: string,
54
54
  no_step = false
55
55
  ): Promise<string> {
56
56
  let script = '\n';
57
57
  switch (no_step) {
58
58
  case true:
59
59
  script +=
60
- (await utils.stepLog('Add php.ini values', os_version)) +
61
- (await utils.suppressOutput(os_version)) +
60
+ (await utils.stepLog('Add php.ini values', os)) +
61
+ (await utils.suppressOutput(os)) +
62
62
  '\n';
63
63
  break;
64
64
  case false:
65
65
  default:
66
- script += (await utils.stepLog('Add php.ini values', os_version)) + '\n';
66
+ script += (await utils.stepLog('Add php.ini values', os)) + '\n';
67
67
  break;
68
68
  }
69
- switch (os_version) {
69
+ switch (os) {
70
70
  case 'win32':
71
71
  return script + (await addINIValuesWindows(ini_values_csv));
72
72
  case 'darwin':
@@ -74,8 +74,8 @@ export async function addINIValues(
74
74
  return script + (await addINIValuesUnix(ini_values_csv));
75
75
  default:
76
76
  return await utils.log(
77
- 'Platform ' + os_version + ' is not supported',
78
- os_version,
77
+ 'Platform ' + os + ' is not supported',
78
+ os,
79
79
  'error'
80
80
  );
81
81
  }
@@ -1,10 +1,12 @@
1
1
  amqp=amqp
2
2
  apcu=apcu
3
3
  expect=expect
4
+ gnupg=gnupg
4
5
  grpc=grpc
5
6
  igbinary=igbinary
6
7
  imagick=imagick
7
8
  imap=imap
9
+ mailparse=mailparse
8
10
  memcache=memcache
9
11
  memcached=memcached
10
12
  mongodb=mongodb
@@ -0,0 +1,2 @@
1
+ COMPOSER_PROCESS_TIMEOUT=0
2
+ COMPOSER_NO_INTERACTION=1
@@ -0,0 +1,3 @@
1
+ opcache.enable=1
2
+ opcache.jit_buffer_size=256M
3
+ opcache.jit=1235
@@ -0,0 +1,2 @@
1
+ date.timezone=UTC
2
+ memory_limit=-1
@@ -0,0 +1 @@
1
+ xdebug.mode=coverage
@@ -3,6 +3,7 @@
3
3
  10,buster
4
4
  11,bullseye
5
5
  12,bookworm
6
+ 13,trixie
6
7
  16.04 LTS,xenial
7
8
  16.10,yakkety
8
9
  17.04,zesty
@@ -15,3 +16,4 @@
15
16
  20.10,groovy
16
17
  21.04,hirsute
17
18
  21.10,impish
19
+ 22.04,jammy
@@ -1,7 +1,7 @@
1
1
  {
2
- "latest": "8.0",
2
+ "latest": "8.1",
3
3
  "nightly": "8.2",
4
4
  "5.x": "5.6",
5
5
  "7.x": "7.4",
6
- "8.x": "8.0"
6
+ "8.x": "8.1"
7
7
  }
@@ -0,0 +1,12 @@
1
+ cgi
2
+ cli
3
+ curl
4
+ dev
5
+ fpm
6
+ intl
7
+ mbstring
8
+ mysql
9
+ opcache
10
+ pgsql
11
+ xml
12
+ zip
File without changes
@@ -1,24 +1,24 @@
1
- {
2
- "problemMatcher": [
3
- {
4
- "owner": "phpunit",
5
- "pattern": [
6
- {
7
- "regexp": "^\\d+\\)\\s.*$"
8
- },
9
- {
10
- "regexp": "^(.*Failed\\sasserting\\sthat.*)$",
11
- "message": 1
12
- },
13
- {
14
- "regexp": "^\\s*$"
15
- },
16
- {
17
- "regexp": "^(.*):(\\d+)$",
18
- "file": 1,
19
- "line": 2
20
- }
21
- ]
22
- }
23
- ]
24
- }
1
+ {
2
+ "problemMatcher": [
3
+ {
4
+ "owner": "phpunit",
5
+ "pattern": [
6
+ {
7
+ "regexp": "^\\d+\\)\\s.*$"
8
+ },
9
+ {
10
+ "regexp": "^(.*Failed\\sasserting\\sthat.*)$",
11
+ "message": 1
12
+ },
13
+ {
14
+ "regexp": "^\\s*$"
15
+ },
16
+ {
17
+ "regexp": "^(.*):(\\d+)$",
18
+ "file": 1,
19
+ "line": 2
20
+ }
21
+ ]
22
+ }
23
+ ]
24
+ }
@@ -1,4 +1,12 @@
1
1
  {
2
+ "churn": {
3
+ "type": "phar",
4
+ "repository": "bmitch/churn-php",
5
+ "extension": ".phar",
6
+ "domain": "https://github.com",
7
+ "version_prefix": "",
8
+ "version_parameter": "-V"
9
+ },
2
10
  "composer-normalize": {
3
11
  "type": "phar",
4
12
  "repository": "ergebnis/composer-normalize",
@@ -81,6 +89,14 @@
81
89
  "version_prefix": "",
82
90
  "version_parameter": "--version"
83
91
  },
92
+ "phpspec": {
93
+ "type": "phar",
94
+ "repository": "phpspec/phpspec",
95
+ "extension": ".phar",
96
+ "domain": "https://github.com",
97
+ "version_prefix": "",
98
+ "version_parameter": "-V"
99
+ },
84
100
  "phpstan": {
85
101
  "type": "phar",
86
102
  "repository": "phpstan/phpstan",
@@ -99,58 +115,66 @@
99
115
  },
100
116
  "behat": {
101
117
  "type": "composer",
102
- "repository": "behat/behat"
118
+ "repository": "behat/behat",
119
+ "scope": "scoped"
103
120
  },
104
121
  "codeception": {
105
122
  "type": "composer",
106
- "repository": "codeception/codeception"
123
+ "repository": "codeception/codeception",
124
+ "scope": "scoped"
107
125
  },
108
126
  "automatic-composer-prefetcher": {
109
127
  "type": "composer",
110
128
  "alias": "composer-prefetcher",
111
- "repository": "narrowspark/automatic-composer-prefetcher"
129
+ "repository": "narrowspark/automatic-composer-prefetcher",
130
+ "scope": "global"
112
131
  },
113
132
  "composer-require-checker": {
114
133
  "type": "composer",
115
- "repository": "maglnet/composer-require-checker"
134
+ "repository": "maglnet/composer-require-checker",
135
+ "scope": "scoped"
116
136
  },
117
137
  "composer-unused": {
118
138
  "type": "composer",
119
- "repository": "icanhazstring/composer-unused"
139
+ "repository": "icanhazstring/composer-unused",
140
+ "scope": "scoped"
120
141
  },
121
142
  "flex": {
122
143
  "type": "composer",
123
- "repository": "symfony/flex"
144
+ "repository": "symfony/flex",
145
+ "scope": "global"
124
146
  },
125
147
  "phinx": {
126
148
  "type": "composer",
127
- "repository": "robmorgan/phinx"
149
+ "repository": "robmorgan/phinx",
150
+ "scope": "scoped"
128
151
  },
129
152
  "phplint": {
130
153
  "type": "composer",
131
- "repository": "overtrue/phplint"
132
- },
133
- "phpspec": {
134
- "type": "composer",
135
- "repository": "phpspec/phpspec"
154
+ "repository": "overtrue/phplint",
155
+ "scope": "scoped"
136
156
  },
137
157
  "phpunit-bridge": {
138
158
  "alias": "simple-phpunit",
139
159
  "type": "composer",
140
- "repository": "symfony/phpunit-bridge"
160
+ "repository": "symfony/phpunit-bridge",
161
+ "scope": "global"
141
162
  },
142
163
  "phpunit-polyfills": {
143
164
  "type": "composer",
144
- "repository": "yoast/phpunit-polyfills"
165
+ "repository": "yoast/phpunit-polyfills",
166
+ "scope": "global"
145
167
  },
146
168
  "prestissimo": {
147
169
  "type": "composer",
148
- "repository": "hirak/prestissimo"
170
+ "repository": "hirak/prestissimo",
171
+ "scope": "global"
149
172
  },
150
173
  "vapor-cli": {
151
174
  "type": "composer",
152
175
  "alias": "vapor",
153
- "repository": "laravel/vapor-cli"
176
+ "repository": "laravel/vapor-cli",
177
+ "scope": "scoped"
154
178
  },
155
179
  "blackfire": {
156
180
  "type": "custom-package",
@@ -168,6 +192,13 @@
168
192
  "domain": "https://github.com",
169
193
  "version_prefix": "v"
170
194
  },
195
+ "symfony-cli": {
196
+ "alias": "symfony",
197
+ "type": "custom-package",
198
+ "repository": "symfony-cli/symfony-cli",
199
+ "domain": "https://github.com",
200
+ "version_prefix": "-V"
201
+ },
171
202
  "blackfire-player": {
172
203
  "type": "custom-function",
173
204
  "domain": "https://get.blackfire.io",
@@ -205,7 +236,7 @@
205
236
  "phive": {
206
237
  "type": "custom-function",
207
238
  "repository": "phar-io/phive",
208
- "domain": "https://phar.io",
239
+ "domain": "https://github.com",
209
240
  "function": "phive",
210
241
  "version_prefix": "",
211
242
  "version_parameter": "status"
@@ -235,15 +266,6 @@
235
266
  "type": "custom-function",
236
267
  "function": "dev_tools"
237
268
  },
238
- "symfony-cli": {
239
- "type": "custom-function",
240
- "function": "symfony",
241
- "alias": "symfony",
242
- "domain": "https://github.com",
243
- "repository": "symfony/cli",
244
- "version_prefix": "v",
245
- "version_parameter": "version"
246
- },
247
269
  "wp-cli": {
248
270
  "type": "custom-function",
249
271
  "function": "wp_cli",
@@ -13,6 +13,7 @@
13
13
  "fetch_latest": "true",
14
14
  "function": "function_name",
15
15
  "repository": "user/tool",
16
+ "scope": "global, scoped",
16
17
  "type": "phar, composer, custom-package or custom-function",
17
18
  "version_parameter": "--version",
18
19
  "version_prefix": "v"
@@ -76,6 +77,16 @@
76
77
  "user/tool"
77
78
  ]
78
79
  },
80
+ "scope": {
81
+ "$id": "#/items/properties/scope",
82
+ "type": "string",
83
+ "title": "The scope schema",
84
+ "description": "Scope of tool installation: global or scoped",
85
+ "enum": [
86
+ "global",
87
+ "scoped"
88
+ ]
89
+ },
79
90
  "type": {
80
91
  "$id": "#/items/properties/type",
81
92
  "type": "string",
package/src/coverage.ts CHANGED
@@ -2,33 +2,46 @@ import * as utils from './utils';
2
2
  import * as extensions from './extensions';
3
3
  import * as config from './config';
4
4
 
5
+ export async function checkXdebugError(
6
+ extension: string,
7
+ version: string
8
+ ): Promise<string> {
9
+ if (
10
+ (/^5\.[3-6]$|^7\.[0-1]$/.test(version) && extension == 'xdebug3') ||
11
+ (/^8\.[0-9]$/.test(version) && extension == 'xdebug2')
12
+ ) {
13
+ return extension + ' is not supported on PHP ' + version;
14
+ }
15
+ return '';
16
+ }
17
+
5
18
  /**
6
19
  * Function to setup Xdebug
7
20
  *
8
21
  * @param extension
9
22
  * @param version
10
- * @param os_version
23
+ * @param os
11
24
  * @param pipe
12
25
  */
13
26
  export async function addCoverageXdebug(
14
27
  extension: string,
15
28
  version: string,
16
- os_version: string,
29
+ os: string,
17
30
  pipe: string
18
31
  ): Promise<string> {
19
32
  let script = '\n';
20
- script +=
21
- (await extensions.addExtension(':pcov:false', version, os_version, true)) +
22
- pipe;
23
- script +=
24
- (await extensions.addExtension(extension, version, os_version, true)) +
25
- pipe;
26
- script += await utils.addLog(
27
- '$tick',
28
- extension,
29
- 'Xdebug enabled as coverage driver',
30
- os_version
31
- );
33
+ let message: string = await checkXdebugError(extension, version);
34
+ let status = '$cross';
35
+ if (!message) {
36
+ script +=
37
+ (await extensions.addExtension(':pcov:false', version, os, true)) + pipe;
38
+ extension = extension == 'xdebug3' ? 'xdebug' : extension;
39
+ script +=
40
+ (await extensions.addExtension(extension, version, os, true)) + pipe;
41
+ message = 'Xdebug enabled as coverage driver';
42
+ status = '$tick';
43
+ }
44
+ script += await utils.addLog(status, extension, message, os);
32
45
  return script;
33
46
  }
34
47
 
@@ -36,36 +49,30 @@ export async function addCoverageXdebug(
36
49
  * Function to setup PCOV
37
50
  *
38
51
  * @param version
39
- * @param os_version
52
+ * @param os
40
53
  * @param pipe
41
54
  */
42
55
  export async function addCoveragePCOV(
43
56
  version: string,
44
- os_version: string,
57
+ os: string,
45
58
  pipe: string
46
59
  ): Promise<string> {
47
60
  let script = '\n';
48
61
  switch (true) {
49
62
  default:
50
63
  script +=
51
- (await extensions.addExtension(
52
- ':xdebug:false',
53
- version,
54
- os_version,
55
- true
56
- )) + pipe;
57
- script +=
58
- (await extensions.addExtension('pcov', version, os_version, true)) +
64
+ (await extensions.addExtension(':xdebug:false', version, os, true)) +
59
65
  pipe;
60
66
  script +=
61
- (await config.addINIValues('pcov.enabled=1', os_version, true)) + '\n';
67
+ (await extensions.addExtension('pcov', version, os, true)) + pipe;
68
+ script += (await config.addINIValues('pcov.enabled=1', os, true)) + '\n';
62
69
 
63
70
  // success
64
71
  script += await utils.addLog(
65
72
  '$tick',
66
73
  'coverage: pcov',
67
74
  'PCOV enabled as coverage driver',
68
- os_version
75
+ os
69
76
  );
70
77
  // version is not supported
71
78
  break;
@@ -75,7 +82,7 @@ export async function addCoveragePCOV(
75
82
  '$cross',
76
83
  'pcov',
77
84
  'PHP 7.1 or newer is required',
78
- os_version
85
+ os
79
86
  );
80
87
  break;
81
88
  }
@@ -87,31 +94,20 @@ export async function addCoveragePCOV(
87
94
  * Function to disable Xdebug and PCOV
88
95
  *
89
96
  * @param version
90
- * @param os_version
97
+ * @param os
91
98
  * @param pipe
92
99
  */
93
100
  export async function disableCoverage(
94
101
  version: string,
95
- os_version: string,
102
+ os: string,
96
103
  pipe: string
97
104
  ): Promise<string> {
98
105
  let script = '\n';
99
106
  script +=
100
- (await extensions.addExtension(':pcov:false', version, os_version, true)) +
101
- pipe;
107
+ (await extensions.addExtension(':pcov:false', version, os, true)) + pipe;
102
108
  script +=
103
- (await extensions.addExtension(
104
- ':xdebug:false',
105
- version,
106
- os_version,
107
- true
108
- )) + pipe;
109
- script += await utils.addLog(
110
- '$tick',
111
- 'none',
112
- 'Disabled Xdebug and PCOV',
113
- os_version
114
- );
109
+ (await extensions.addExtension(':xdebug:false', version, os, true)) + pipe;
110
+ script += await utils.addLog('$tick', 'none', 'Disabled Xdebug and PCOV', os);
115
111
 
116
112
  return script;
117
113
  }
@@ -121,31 +117,27 @@ export async function disableCoverage(
121
117
  *
122
118
  * @param coverage_driver
123
119
  * @param version
124
- * @param os_version
120
+ * @param os
125
121
  */
126
122
  export async function addCoverage(
127
123
  coverage_driver: string,
128
124
  version: string,
129
- os_version: string
125
+ os: string
130
126
  ): Promise<string> {
131
127
  coverage_driver = coverage_driver.toLowerCase();
132
- const script: string =
133
- '\n' + (await utils.stepLog('Setup Coverage', os_version));
134
- const pipe: string = (await utils.suppressOutput(os_version)) + '\n';
128
+ const script: string = '\n' + (await utils.stepLog('Setup Coverage', os));
129
+ const pipe: string = (await utils.suppressOutput(os)) + '\n';
135
130
  switch (coverage_driver) {
136
131
  case 'pcov':
137
- return script + (await addCoveragePCOV(version, os_version, pipe));
132
+ return script + (await addCoveragePCOV(version, os, pipe));
138
133
  case 'xdebug':
139
- case 'xdebug3':
140
- return (
141
- script + (await addCoverageXdebug('xdebug', version, os_version, pipe))
142
- );
143
134
  case 'xdebug2':
135
+ case 'xdebug3':
144
136
  return (
145
- script + (await addCoverageXdebug('xdebug2', version, os_version, pipe))
137
+ script + (await addCoverageXdebug(coverage_driver, version, os, pipe))
146
138
  );
147
139
  case 'none':
148
- return script + (await disableCoverage(version, os_version, pipe));
140
+ return script + (await disableCoverage(version, os, pipe));
149
141
  default:
150
142
  return '';
151
143
  }