@automattic/vip 3.8.7 → 3.9.0
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.
- package/assets/dev-env.lando.template.yml.ejs +2 -2
- package/dist/bin/vip-import-sql.js +1 -1
- package/dist/bin/vip-logs.js +25 -19
- package/dist/bin/vip-search-replace.js +7 -7
- package/dist/bin/vip-slowlogs.js +3 -2
- package/dist/bin/vip.js +1 -1
- package/dist/lib/api.js +11 -1
- package/dist/lib/cli/command.js +1 -1
- package/dist/lib/constants/dev-environment.js +5 -1
- package/docs/CHANGELOG.md +36 -14
- package/npm-shrinkwrap.json +28 -28
- package/package.json +1 -1
|
@@ -332,7 +332,7 @@ tooling:
|
|
|
332
332
|
nocopy: true
|
|
333
333
|
- type: volume
|
|
334
334
|
source: clientcode_vipconfig
|
|
335
|
-
target: /wp/
|
|
335
|
+
target: /wp/vip-config
|
|
336
336
|
volume:
|
|
337
337
|
nocopy: true
|
|
338
338
|
<% } else { %>
|
|
@@ -342,6 +342,6 @@ tooling:
|
|
|
342
342
|
- <%= appCode.dir %>/plugins:/wp/wp-content/plugins
|
|
343
343
|
- <%= appCode.dir %>/private:/wp/wp-content/private
|
|
344
344
|
- <%= appCode.dir %>/themes:/wp/wp-content/themes
|
|
345
|
-
- <%= appCode.dir %>/vip-config:/wp/
|
|
345
|
+
- <%= appCode.dir %>/vip-config:/wp/vip-config
|
|
346
346
|
<% } %>
|
|
347
347
|
<% } %>
|
|
@@ -339,7 +339,7 @@ void (0, _command.default)({
|
|
|
339
339
|
requiredArgs: 1,
|
|
340
340
|
module: 'import-sql',
|
|
341
341
|
usage
|
|
342
|
-
}).command('status', 'Check the status of a SQL database import currently in progress.').option('skip-validate', 'Do not perform file validation prior to import. If the file contains unsupported entries, the import is likely to fail.').option('search-replace', 'Search for a string in the SQL file and replace it with a new string. Separate the values by a comma only; no spaces (e.g. --search-replace=“from,to”).').option('in-place', '
|
|
342
|
+
}).command('status', 'Check the status of a SQL database import currently in progress.').option('skip-validate', 'Do not perform file validation prior to import. If the file contains unsupported entries, the import is likely to fail.').option('search-replace', 'Search for a string in the SQL file and replace it with a new string. Separate the values by a comma only; no spaces (e.g. --search-replace=“from,to”).').option('in-place', 'Overwrite the local input file with the results of the search and replace operation prior to import.').option('output', 'The local file path to save a copy of the results from the search and replace operation when the --search-replace option is passed. Ignored when used with the --in-place option.').examples(examples).argv(process.argv, async (arg, opts) => {
|
|
343
343
|
const {
|
|
344
344
|
app,
|
|
345
345
|
env
|
package/dist/bin/vip-logs.js
CHANGED
|
@@ -21,7 +21,7 @@ const LIMIT_MIN = 1;
|
|
|
21
21
|
const LIMIT_MAX = 5000;
|
|
22
22
|
const LIMIT_DEFAULT = 500;
|
|
23
23
|
const ALLOWED_TYPES = ['app', 'batch'];
|
|
24
|
-
const ALLOWED_FORMATS = ['csv', 'json', 'table'];
|
|
24
|
+
const ALLOWED_FORMATS = ['csv', 'json', 'table', 'text'];
|
|
25
25
|
const DEFAULT_POLLING_DELAY_IN_SECONDS = 30;
|
|
26
26
|
const MIN_POLLING_DELAY_IN_SECONDS = 5;
|
|
27
27
|
const MAX_POLLING_DELAY_IN_SECONDS = 300;
|
|
@@ -30,6 +30,9 @@ const MAX_POLLING_DELAY_IN_SECONDS = 300;
|
|
|
30
30
|
* @param {string[]} arg
|
|
31
31
|
*/
|
|
32
32
|
async function getLogs(arg, opt) {
|
|
33
|
+
opt.type ??= 'app';
|
|
34
|
+
opt.limit ??= LIMIT_DEFAULT;
|
|
35
|
+
opt.format ??= 'table';
|
|
33
36
|
validateInputs(opt.type, opt.limit, opt.format);
|
|
34
37
|
const trackingParams = getBaseTrackingParams(opt);
|
|
35
38
|
await (0, _tracker.trackEvent)('logs_command_execute', trackingParams);
|
|
@@ -140,7 +143,7 @@ function printLogs(logs, format) {
|
|
|
140
143
|
};
|
|
141
144
|
});
|
|
142
145
|
let output = '';
|
|
143
|
-
if (
|
|
146
|
+
if ('table' === format) {
|
|
144
147
|
const options = {
|
|
145
148
|
wordWrap: true,
|
|
146
149
|
wrapOnWordBoundary: true,
|
|
@@ -165,6 +168,15 @@ function printLogs(logs, format) {
|
|
|
165
168
|
table.push([timestamp, msg]);
|
|
166
169
|
}
|
|
167
170
|
output = table.toString();
|
|
171
|
+
} else if ('text' === format) {
|
|
172
|
+
const rows = [];
|
|
173
|
+
for (const {
|
|
174
|
+
timestamp,
|
|
175
|
+
message
|
|
176
|
+
} of logs) {
|
|
177
|
+
rows.push(`${timestamp} ${message}`);
|
|
178
|
+
output = rows.join('\n');
|
|
179
|
+
}
|
|
168
180
|
} else {
|
|
169
181
|
output = (0, _format.formatData)(logs, format);
|
|
170
182
|
}
|
|
@@ -177,9 +189,6 @@ function printLogs(logs, format) {
|
|
|
177
189
|
* @param {string} format
|
|
178
190
|
*/
|
|
179
191
|
function validateInputs(type, limit, format) {
|
|
180
|
-
if (limit === undefined) {
|
|
181
|
-
limit = LIMIT_DEFAULT;
|
|
182
|
-
}
|
|
183
192
|
if (!ALLOWED_TYPES.includes(type)) {
|
|
184
193
|
exit.withError(`Invalid type: ${type}. The supported types are: ${ALLOWED_TYPES.join(', ')}.`);
|
|
185
194
|
}
|
|
@@ -187,7 +196,7 @@ function validateInputs(type, limit, format) {
|
|
|
187
196
|
exit.withError(`Invalid format: ${format}. The supported formats are: ${ALLOWED_FORMATS.join(', ')}.`);
|
|
188
197
|
}
|
|
189
198
|
if (!Number.isInteger(limit) || limit < LIMIT_MIN || limit > logsLib.LIMIT_MAX) {
|
|
190
|
-
exit.withError(`Invalid limit: ${limit}.
|
|
199
|
+
exit.withError(`Invalid limit: ${limit}. Set the limit to an integer between ${LIMIT_MIN} and ${logsLib.LIMIT_MAX}.`);
|
|
191
200
|
}
|
|
192
201
|
}
|
|
193
202
|
const appQuery = exports.appQuery = `
|
|
@@ -209,21 +218,18 @@ const appQuery = exports.appQuery = `
|
|
|
209
218
|
appQuery,
|
|
210
219
|
envContext: true,
|
|
211
220
|
module: 'logs'
|
|
212
|
-
}).option('type', '
|
|
221
|
+
}).option('type', 'Specify the type of Runtime Logs to retrieve. Accepts "batch" (only valid for WordPress environments).', 'app')
|
|
213
222
|
// The default limit is set manually in the validateInputs function to address validation issues, avoiding incorrect replacement of the default value.
|
|
214
|
-
.option('limit', `The maximum number of
|
|
215
|
-
usage: 'vip @
|
|
216
|
-
description: '
|
|
217
|
-
}, {
|
|
218
|
-
usage: 'vip @mysite.production logs --type batch',
|
|
219
|
-
description: 'Get the most recent batch logs'
|
|
223
|
+
.option('limit', `The maximum number of entries to return. Accepts an integer value between 1 and 5000 (defaults to ${LIMIT_DEFAULT}).`).option('follow', 'Output new entries as they are generated.').option('format', 'Render output in a particular format. Accepts “csv”, “json”, and “text”.', 'table').examples([{
|
|
224
|
+
usage: 'vip @example-app.production logs',
|
|
225
|
+
description: 'Retrieve up to 500 of the most recent entries of application Runtime Logs from web containers.'
|
|
220
226
|
}, {
|
|
221
|
-
usage: 'vip @
|
|
222
|
-
description: '
|
|
227
|
+
usage: 'vip @example-app.production logs --type=batch',
|
|
228
|
+
description: 'Retrieve up to 500 of the most recent entries generated by cron tasks or WP-CLI commands from batch containers.'
|
|
223
229
|
}, {
|
|
224
|
-
usage: 'vip @
|
|
225
|
-
description: '
|
|
230
|
+
usage: 'vip @example-app.production logs --limit=100',
|
|
231
|
+
description: 'Retrieve up to 100 of the most recent entries of application logs.'
|
|
226
232
|
}, {
|
|
227
|
-
usage: 'vip @
|
|
228
|
-
description: '
|
|
233
|
+
usage: 'vip @example-app.production logs --type=batch --limit=800 --format=csv',
|
|
234
|
+
description: 'Retrieve up to 800 of the most recent entries of batch logs and output them in CSV format.'
|
|
229
235
|
}]).argv(process.argv, getLogs);
|
|
@@ -14,22 +14,22 @@ const debug = (0, _debug.default)('@automattic/vip:bin:vip-search-replace');
|
|
|
14
14
|
const examples = [
|
|
15
15
|
// `search-replace` flag
|
|
16
16
|
{
|
|
17
|
-
usage: 'vip search-replace
|
|
18
|
-
description: '
|
|
17
|
+
usage: 'vip search-replace file.sql --search-replace="from,to"',
|
|
18
|
+
description: 'Search for every instance of the value "from" in the local input file named "file.sql" and replace it with the value "to".\n' + ' * Results of the operation output to STDOUT by default.'
|
|
19
19
|
},
|
|
20
20
|
// `in-place` flag
|
|
21
21
|
{
|
|
22
|
-
usage: 'vip search-replace
|
|
23
|
-
description: 'Perform
|
|
22
|
+
usage: 'vip search-replace file.sql --search-replace="from,to" --in-place',
|
|
23
|
+
description: 'Perform the search and replace operation on the local input file "file.sql" and overwrite the file with the results.'
|
|
24
24
|
},
|
|
25
25
|
// `output` flag
|
|
26
26
|
{
|
|
27
|
-
usage: 'vip search-replace
|
|
28
|
-
description: '
|
|
27
|
+
usage: 'vip search-replace file.sql --search-replace="from,to" --output=output-file.sql',
|
|
28
|
+
description: 'Perform the search and replace operation and save the results to a local clone of the input file named "output-file.sql".'
|
|
29
29
|
}];
|
|
30
30
|
(0, _command.default)({
|
|
31
31
|
requiredArgs: 1
|
|
32
|
-
}).option('search-replace', '
|
|
32
|
+
}).option('search-replace', 'A comma-separated pair of strings that specify the values to search for and replace (e.g. --search-replace="from,to").').option('in-place', 'Overwrite the local input file with the results of the search and replace operation.').option('output', 'The local file path used to save a copy of the results from the search and replace operation. Ignored when used with the --in-place option.').examples(examples).argv(process.argv, async (arg, opt) => {
|
|
33
33
|
// TODO: tracks event for usage of this command stand alone
|
|
34
34
|
const {
|
|
35
35
|
searchReplace,
|
package/dist/bin/vip-slowlogs.js
CHANGED
|
@@ -25,6 +25,7 @@ const MAX_POLLING_DELAY_IN_SECONDS = 300;
|
|
|
25
25
|
const exampleUsage = 'vip @example-app.develop slowlogs';
|
|
26
26
|
const baseUsage = 'vip slowlogs';
|
|
27
27
|
async function getSlowlogs(arg, opt) {
|
|
28
|
+
opt.format ??= 'table';
|
|
28
29
|
validateInputs(opt.limit, opt.format);
|
|
29
30
|
const trackingParams = getBaseTrackingParams(opt);
|
|
30
31
|
await (0, _tracker.trackEvent)('slowlogs_command_execute', trackingParams);
|
|
@@ -147,7 +148,7 @@ function validateInputs(limit, format) {
|
|
|
147
148
|
exit.withError(`Invalid format: ${format}. The supported formats are: ${ALLOWED_FORMATS.join(', ')}.`);
|
|
148
149
|
}
|
|
149
150
|
if (!Number.isInteger(limit) || limit < LIMIT_MIN || limit > slowlogsLib.LIMIT_MAX) {
|
|
150
|
-
exit.withError(`Invalid limit: ${limit}.
|
|
151
|
+
exit.withError(`Invalid limit: ${limit}. Set the limit to an integer between ${LIMIT_MIN} and ${slowlogsLib.LIMIT_MAX}.`);
|
|
151
152
|
}
|
|
152
153
|
}
|
|
153
154
|
const appQuery = exports.appQuery = `
|
|
@@ -171,7 +172,7 @@ void (0, _command.default)({
|
|
|
171
172
|
format: false,
|
|
172
173
|
module: 'slowlogs',
|
|
173
174
|
usage: baseUsage
|
|
174
|
-
}).option('limit', '
|
|
175
|
+
}).option('limit', 'Set the maximum number of log entries. Accepts an integer value between 1 and 500.', 500).option('format', 'Render output in a particular format. Accepts “csv”, and “json”.', 'table').examples([{
|
|
175
176
|
description: 'Retrieve up to 500 of the most recent entries from the MySQL slow query logs in the default format.',
|
|
176
177
|
usage: exampleUsage
|
|
177
178
|
}, {
|
package/dist/bin/vip.js
CHANGED
|
@@ -22,7 +22,7 @@ const tokenURL = 'https://dashboard.wpvip.com/me/cli/token';
|
|
|
22
22
|
const customDeployToken = process.env.WPVIP_DEPLOY_TOKEN;
|
|
23
23
|
const runCmd = async function () {
|
|
24
24
|
const cmd = (0, _command.default)();
|
|
25
|
-
cmd.command('logout', 'Log out the current authenticated VIP-CLI user.').command('app', 'Interact with applications that the current authenticated VIP-CLI user has permission to access.').command('backup', 'Generate a backup of an environment.').command('cache', 'Manage page cache for an environment.').command('config', 'Manage environment configurations.').command('dev-env', 'Create and manage VIP Local Development Environments.').command('export', 'Export a copy of data associated with an environment.').command('import', 'Import media or SQL database files to an environment.').command('logs', '
|
|
25
|
+
cmd.command('logout', 'Log out the current authenticated VIP-CLI user.').command('app', 'Interact with applications that the current authenticated VIP-CLI user has permission to access.').command('backup', 'Generate a backup of an environment.').command('cache', 'Manage page cache for an environment.').command('config', 'Manage environment configurations.').command('dev-env', 'Create and manage VIP Local Development Environments.').command('export', 'Export a copy of data associated with an environment.').command('import', 'Import media or SQL database files to an environment.').command('logs', 'Retrieve Runtime Logs from an environment.').command('search-replace', 'Search for a string in a local SQL file and replace it with a new string.').command('slowlogs', 'Retrieve MySQL slow query logs from an environment.').command('db', "Access an environment's database.").command('sync', 'Sync the database from production to a non-production environment.').command('whoami', 'Retrieve details about the current authenticated VIP-CLI user.').command('validate', 'Validate your VIP application and environment').command('wp', 'Execute a WP-CLI command against an environment.');
|
|
26
26
|
cmd.argv(process.argv);
|
|
27
27
|
};
|
|
28
28
|
|
package/dist/lib/api.js
CHANGED
|
@@ -27,6 +27,12 @@ function disableGlobalGraphQLErrorHandling() {
|
|
|
27
27
|
function enableGlobalGraphQLErrorHandling() {
|
|
28
28
|
globalGraphQLErrorHandlingEnabled = true;
|
|
29
29
|
}
|
|
30
|
+
function isServerError(networkError) {
|
|
31
|
+
if (!networkError) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
return 'result' in networkError;
|
|
35
|
+
}
|
|
30
36
|
function API({
|
|
31
37
|
exitOnError = true
|
|
32
38
|
} = {}) {
|
|
@@ -35,7 +41,11 @@ function API({
|
|
|
35
41
|
graphQLErrors
|
|
36
42
|
}) => {
|
|
37
43
|
if (networkError && 'statusCode' in networkError && networkError.statusCode === 401) {
|
|
38
|
-
|
|
44
|
+
let message = 'You are not authorized to perform this request; please logout with `vip logout`, then try again.';
|
|
45
|
+
if (isServerError(networkError) && networkError.result?.code === 'token-disabled-inactivity') {
|
|
46
|
+
message = 'Your token has been disabled due to inactivity; please log out with `vip logout`, then try again.';
|
|
47
|
+
}
|
|
48
|
+
console.error(_chalk.default.red('Unauthorized:'), message);
|
|
39
49
|
process.exit(1);
|
|
40
50
|
}
|
|
41
51
|
if (graphQLErrors?.length && globalGraphQLErrorHandlingEnabled) {
|
package/dist/lib/cli/command.js
CHANGED
|
@@ -534,7 +534,7 @@ function _default(opts) {
|
|
|
534
534
|
_args.default.option('force', 'Skip confirmation.', false);
|
|
535
535
|
}
|
|
536
536
|
if (_opts.format) {
|
|
537
|
-
_args.default.option('format', 'Render output in a particular format. Accepts
|
|
537
|
+
_args.default.option('format', 'Render output in a particular format. Accepts “csv”, and “json”.', 'table');
|
|
538
538
|
}
|
|
539
539
|
|
|
540
540
|
// Add help and version to all subcommands
|
|
@@ -25,6 +25,10 @@ const DEV_ENVIRONMENT_PHP_VERSIONS = exports.DEV_ENVIRONMENT_PHP_VERSIONS = {
|
|
|
25
25
|
8.3: {
|
|
26
26
|
image: 'ghcr.io/automattic/vip-container-images/php-fpm:8.3',
|
|
27
27
|
label: '8.3'
|
|
28
|
+
},
|
|
29
|
+
8.4: {
|
|
30
|
+
image: 'ghcr.io/automattic/vip-container-images/php-fpm:8.4',
|
|
31
|
+
label: '8.4 (experimental)'
|
|
28
32
|
}
|
|
29
33
|
};
|
|
30
34
|
const DEV_ENVIRONMENT_DEFAULTS = exports.DEV_ENVIRONMENT_DEFAULTS = {
|
|
@@ -32,4 +36,4 @@ const DEV_ENVIRONMENT_DEFAULTS = exports.DEV_ENVIRONMENT_DEFAULTS = {
|
|
|
32
36
|
multisite: false,
|
|
33
37
|
phpVersion: Object.keys(DEV_ENVIRONMENT_PHP_VERSIONS)[0]
|
|
34
38
|
};
|
|
35
|
-
const DEV_ENVIRONMENT_VERSION = exports.DEV_ENVIRONMENT_VERSION = '2.1.
|
|
39
|
+
const DEV_ENVIRONMENT_VERSION = exports.DEV_ENVIRONMENT_VERSION = '2.1.2';
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -1,18 +1,40 @@
|
|
|
1
1
|
## Changelog
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
### 3.9.0
|
|
4
|
+
|
|
5
|
+
* feat(dev-env): add support for PHP 8.4
|
|
6
|
+
* Provide dedicated error message for when a token is marked as disabled due to inactivity
|
|
7
|
+
* Set the mount path for vip-config to ABSPATH/vip-config to match production
|
|
8
|
+
* Add --format="text" option to vip logs
|
|
9
|
+
* build(deps-dev): bump typescript from 5.6.3 to 5.7.2
|
|
10
|
+
* build(deps-dev): bump @types/node from 22.9.1 to 22.10.0
|
|
11
|
+
|
|
12
|
+
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.8...3.9.0
|
|
13
|
+
|
|
14
|
+
### 3.8.8
|
|
15
|
+
|
|
16
|
+
* build(deps-dev): bump @types/dockerode from 3.3.31 to 3.3.32
|
|
17
|
+
* Update the `search-replace` command to follow the VIP-CLI style guide
|
|
18
|
+
* Update the`vip logs` command to follow the VIP-CLI style guide
|
|
19
|
+
* build(deps-dev): bump @types/node from 22.9.0 to 22.9.1
|
|
20
|
+
* build(deps): bump actions/dependency-review-action from 4.4.0 to 4.5.0
|
|
21
|
+
* build(deps): bump step-security/harden-runner from 2.10.1 to 2.10.2
|
|
22
|
+
|
|
23
|
+
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.7...3.8.8
|
|
24
|
+
|
|
25
|
+
### 3.8.7
|
|
4
26
|
|
|
5
27
|
* fix(dev-env): SQL sync for single sites
|
|
6
28
|
|
|
7
29
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.6...3.8.7
|
|
8
30
|
|
|
9
|
-
|
|
31
|
+
### 3.8.6
|
|
10
32
|
|
|
11
33
|
* Updating Node.js versions and standardize the format
|
|
12
34
|
|
|
13
35
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.5...3.8.6
|
|
14
36
|
|
|
15
|
-
|
|
37
|
+
### 3.8.5
|
|
16
38
|
|
|
17
39
|
* build(deps-dev): bump the babel group with 4 updates
|
|
18
40
|
* build(deps-dev): bump typescript from 5.6.2 to 5.6.3
|
|
@@ -43,7 +65,7 @@
|
|
|
43
65
|
* build(deps): bump uuid from 11.0.2 to 11.0.3
|
|
44
66
|
* Update socket error handler
|
|
45
67
|
* Fix --limit arg handling in vip logs command
|
|
46
|
-
* New package release: v3.9.0 by
|
|
68
|
+
* New package release: v3.9.0 by
|
|
47
69
|
* Revert "New package release: v3.9.0"
|
|
48
70
|
* chore(deps): update Lando to 6ca2668
|
|
49
71
|
* fix: `table` format output
|
|
@@ -52,7 +74,7 @@
|
|
|
52
74
|
|
|
53
75
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.4...3.8.5
|
|
54
76
|
|
|
55
|
-
|
|
77
|
+
### 3.8.4
|
|
56
78
|
|
|
57
79
|
* build(deps): bump step-security/harden-runner from 2.9.1 to 2.10.1
|
|
58
80
|
* build(deps-dev): bump @types/jest from 29.5.12 to 29.5.13 in the testing group
|
|
@@ -66,7 +88,7 @@
|
|
|
66
88
|
|
|
67
89
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.3...3.8.4
|
|
68
90
|
|
|
69
|
-
|
|
91
|
+
### 3.8.3
|
|
70
92
|
|
|
71
93
|
* build(deps): bump adm-zip from 0.5.15 to 0.5.16
|
|
72
94
|
* build(deps): bump debug from 4.3.6 to 4.3.7
|
|
@@ -78,7 +100,7 @@
|
|
|
78
100
|
|
|
79
101
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.2...3.8.3
|
|
80
102
|
|
|
81
|
-
|
|
103
|
+
### 3.8.2
|
|
82
104
|
|
|
83
105
|
* chore(deps): make `node-fetch` 2.x depend on `whatwg-url` 14.x to address deprecations
|
|
84
106
|
* build(deps-dev): bump nock from 13.5.4 to 13.5.5
|
|
@@ -93,14 +115,14 @@
|
|
|
93
115
|
|
|
94
116
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.1...3.8.2
|
|
95
117
|
|
|
96
|
-
|
|
118
|
+
### 3.8.1
|
|
97
119
|
|
|
98
120
|
* fix(dev-env): clean up data after `vip dev-env sync sql`
|
|
99
121
|
* security: fix high severity CVE-2024-39338 in `axios`
|
|
100
122
|
|
|
101
123
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.8.0...3.8.1
|
|
102
124
|
|
|
103
|
-
|
|
125
|
+
### 3.8.0
|
|
104
126
|
|
|
105
127
|
* build(deps-dev): bump @babel/preset-env from 7.24.8 to 7.25.0 in the babel group
|
|
106
128
|
* build(deps): bump debug from 4.3.5 to 4.3.6
|
|
@@ -115,7 +137,7 @@
|
|
|
115
137
|
|
|
116
138
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.7.1...3.8.0
|
|
117
139
|
|
|
118
|
-
|
|
140
|
+
### 3.7.1
|
|
119
141
|
|
|
120
142
|
* build(deps): bump step-security/harden-runner from 2.8.1 to 2.9.0
|
|
121
143
|
* build(deps): bump semver from 7.6.2 to 7.6.3
|
|
@@ -131,7 +153,7 @@
|
|
|
131
153
|
|
|
132
154
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.7.0...3.7.1
|
|
133
155
|
|
|
134
|
-
|
|
156
|
+
### 3.7.0
|
|
135
157
|
|
|
136
158
|
* build(deps-dev): bump @automattic/eslint-plugin-wpvip from 0.12.0 to 0.13.0
|
|
137
159
|
* build(deps-dev): bump the babel group with 3 updates
|
|
@@ -140,17 +162,17 @@
|
|
|
140
162
|
* build(deps-dev): bump @babel/core from 7.24.8 to 7.24.9 in the babel group
|
|
141
163
|
* build(deps-dev): bump @types/dockerode from 3.3.29 to 3.3.30
|
|
142
164
|
* update: media import validate-files
|
|
143
|
-
|
|
165
|
+
|
|
144
166
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.6.0...3.7.0
|
|
145
167
|
|
|
146
|
-
|
|
168
|
+
### 3.6.0
|
|
147
169
|
|
|
148
170
|
* build(deps-dev): bump rimraf from 5.0.7 to 5.0.8
|
|
149
171
|
* feat(dev-env): add DNS check to health check to ensure domains resolve correctly
|
|
150
172
|
|
|
151
173
|
**Full Changelog**: https://github.com/Automattic/vip-cli/compare/3.5.1...3.6.0
|
|
152
174
|
|
|
153
|
-
|
|
175
|
+
### 3.5.1
|
|
154
176
|
|
|
155
177
|
* fix(dev-env): display cron status in `vip dev-env info --extended`
|
|
156
178
|
* build(deps-dev): bump typescript from 5.5.2 to 5.5.3
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@automattic/vip",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.9.0",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@automattic/vip",
|
|
9
|
-
"version": "3.
|
|
9
|
+
"version": "3.9.0",
|
|
10
10
|
"hasInstallScript": true,
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"dependencies": {
|
|
@@ -3526,9 +3526,9 @@
|
|
|
3526
3526
|
}
|
|
3527
3527
|
},
|
|
3528
3528
|
"node_modules/@types/dockerode": {
|
|
3529
|
-
"version": "3.3.
|
|
3530
|
-
"resolved": "https://registry.npmjs.org/@types/dockerode/-/dockerode-3.3.
|
|
3531
|
-
"integrity": "sha512-
|
|
3529
|
+
"version": "3.3.32",
|
|
3530
|
+
"resolved": "https://registry.npmjs.org/@types/dockerode/-/dockerode-3.3.32.tgz",
|
|
3531
|
+
"integrity": "sha512-xxcG0g5AWKtNyh7I7wswLdFvym4Mlqks5ZlKzxEUrGHS0r0PUOfxm2T0mspwu10mHQqu3Ck3MI3V2HqvLWE1fg==",
|
|
3532
3532
|
"dev": true,
|
|
3533
3533
|
"dependencies": {
|
|
3534
3534
|
"@types/docker-modem": "*",
|
|
@@ -3618,11 +3618,11 @@
|
|
|
3618
3618
|
"dev": true
|
|
3619
3619
|
},
|
|
3620
3620
|
"node_modules/@types/node": {
|
|
3621
|
-
"version": "22.
|
|
3622
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.
|
|
3623
|
-
"integrity": "sha512-
|
|
3621
|
+
"version": "22.10.0",
|
|
3622
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.0.tgz",
|
|
3623
|
+
"integrity": "sha512-XC70cRZVElFHfIUB40FgZOBbgJYFKKMa5nb9lxcwYstFG/Mi+/Y0bGS+rs6Dmhmkpq4pnNiLiuZAbc02YCOnmA==",
|
|
3624
3624
|
"dependencies": {
|
|
3625
|
-
"undici-types": "~6.
|
|
3625
|
+
"undici-types": "~6.20.0"
|
|
3626
3626
|
}
|
|
3627
3627
|
},
|
|
3628
3628
|
"node_modules/@types/node-fetch": {
|
|
@@ -12278,9 +12278,9 @@
|
|
|
12278
12278
|
}
|
|
12279
12279
|
},
|
|
12280
12280
|
"node_modules/typescript": {
|
|
12281
|
-
"version": "5.
|
|
12282
|
-
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.
|
|
12283
|
-
"integrity": "sha512-
|
|
12281
|
+
"version": "5.7.2",
|
|
12282
|
+
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz",
|
|
12283
|
+
"integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
|
|
12284
12284
|
"dev": true,
|
|
12285
12285
|
"bin": {
|
|
12286
12286
|
"tsc": "bin/tsc",
|
|
@@ -12314,9 +12314,9 @@
|
|
|
12314
12314
|
}
|
|
12315
12315
|
},
|
|
12316
12316
|
"node_modules/undici-types": {
|
|
12317
|
-
"version": "6.
|
|
12318
|
-
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.
|
|
12319
|
-
"integrity": "sha512-
|
|
12317
|
+
"version": "6.20.0",
|
|
12318
|
+
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
|
|
12319
|
+
"integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="
|
|
12320
12320
|
},
|
|
12321
12321
|
"node_modules/unicode-canonical-property-names-ecmascript": {
|
|
12322
12322
|
"version": "2.0.1",
|
|
@@ -15786,9 +15786,9 @@
|
|
|
15786
15786
|
}
|
|
15787
15787
|
},
|
|
15788
15788
|
"@types/dockerode": {
|
|
15789
|
-
"version": "3.3.
|
|
15790
|
-
"resolved": "https://registry.npmjs.org/@types/dockerode/-/dockerode-3.3.
|
|
15791
|
-
"integrity": "sha512-
|
|
15789
|
+
"version": "3.3.32",
|
|
15790
|
+
"resolved": "https://registry.npmjs.org/@types/dockerode/-/dockerode-3.3.32.tgz",
|
|
15791
|
+
"integrity": "sha512-xxcG0g5AWKtNyh7I7wswLdFvym4Mlqks5ZlKzxEUrGHS0r0PUOfxm2T0mspwu10mHQqu3Ck3MI3V2HqvLWE1fg==",
|
|
15792
15792
|
"dev": true,
|
|
15793
15793
|
"requires": {
|
|
15794
15794
|
"@types/docker-modem": "*",
|
|
@@ -15878,11 +15878,11 @@
|
|
|
15878
15878
|
"dev": true
|
|
15879
15879
|
},
|
|
15880
15880
|
"@types/node": {
|
|
15881
|
-
"version": "22.
|
|
15882
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.
|
|
15883
|
-
"integrity": "sha512-
|
|
15881
|
+
"version": "22.10.0",
|
|
15882
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.0.tgz",
|
|
15883
|
+
"integrity": "sha512-XC70cRZVElFHfIUB40FgZOBbgJYFKKMa5nb9lxcwYstFG/Mi+/Y0bGS+rs6Dmhmkpq4pnNiLiuZAbc02YCOnmA==",
|
|
15884
15884
|
"requires": {
|
|
15885
|
-
"undici-types": "~6.
|
|
15885
|
+
"undici-types": "~6.20.0"
|
|
15886
15886
|
}
|
|
15887
15887
|
},
|
|
15888
15888
|
"@types/node-fetch": {
|
|
@@ -22169,9 +22169,9 @@
|
|
|
22169
22169
|
}
|
|
22170
22170
|
},
|
|
22171
22171
|
"typescript": {
|
|
22172
|
-
"version": "5.
|
|
22173
|
-
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.
|
|
22174
|
-
"integrity": "sha512-
|
|
22172
|
+
"version": "5.7.2",
|
|
22173
|
+
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz",
|
|
22174
|
+
"integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
|
|
22175
22175
|
"dev": true
|
|
22176
22176
|
},
|
|
22177
22177
|
"typical": {
|
|
@@ -22192,9 +22192,9 @@
|
|
|
22192
22192
|
}
|
|
22193
22193
|
},
|
|
22194
22194
|
"undici-types": {
|
|
22195
|
-
"version": "6.
|
|
22196
|
-
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.
|
|
22197
|
-
"integrity": "sha512-
|
|
22195
|
+
"version": "6.20.0",
|
|
22196
|
+
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
|
|
22197
|
+
"integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="
|
|
22198
22198
|
},
|
|
22199
22199
|
"unicode-canonical-property-names-ecmascript": {
|
|
22200
22200
|
"version": "2.0.1",
|