From e46e2e9fed7f045a5f9e80b59162fb528cd2d13c Mon Sep 17 00:00:00 2001 From: scsc Date: Wed, 21 Jul 2021 13:33:15 +0200 Subject: [PATCH] feat: script to check major dependency updates --- .../cna-template/template/nuxt/package.json | 2 + .../test/snapshots/index.test.js.md | 98 ++++++++++++++++++ .../test/snapshots/index.test.js.snap | Bin 8449 -> 8765 bytes 3 files changed, 100 insertions(+) diff --git a/packages/cna-template/template/nuxt/package.json b/packages/cna-template/template/nuxt/package.json index cec8abe1f..7279e6897 100644 --- a/packages/cna-template/template/nuxt/package.json +++ b/packages/cna-template/template/nuxt/package.json @@ -4,6 +4,8 @@ "build": "nuxt build", "start": "nuxt start", "generate": "nuxt generate", + "update:check": "npx npm-check-updates@latest --packageFile package.json", + "update:major": "<%= pmRun %> update:check <%= pm === 'yarn' ? '' : '-- ' %>-u && <%= pm === 'yarn' ? 'yarn' : 'npm install' %> && npx browserslist@latest --update-db", "lint:js": "eslint --ext \".js,.vue\" --ignore-path .gitignore .", "lint:style": "stylelint \"**/*.{vue,css}\" --ignore-path .gitignore", "prepare": "husky install" diff --git a/packages/create-nuxt-app/test/snapshots/index.test.js.md b/packages/create-nuxt-app/test/snapshots/index.test.js.md index d5bafa79e..b804c7b1a 100644 --- a/packages/create-nuxt-app/test/snapshots/index.test.js.md +++ b/packages/create-nuxt-app/test/snapshots/index.test.js.md @@ -35,6 +35,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -114,6 +116,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -197,6 +201,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -278,6 +284,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -357,6 +365,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'npm run update:check -- -u && npm install && npx browserslist@latest --update-db', }, } @@ -436,6 +446,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -517,6 +529,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -600,6 +614,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -683,6 +699,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -769,6 +787,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -853,6 +873,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -938,6 +960,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1029,6 +1053,8 @@ Generated by [AVA](https://avajs.dev). generate: 'nuxt generate', prepublish: 'yarn build:framevuerk', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1117,6 +1143,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1199,6 +1227,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1282,6 +1312,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1365,6 +1397,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1447,6 +1481,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1530,6 +1566,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1621,6 +1659,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1729,6 +1769,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1828,6 +1870,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -1917,6 +1961,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2004,6 +2050,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2121,6 +2169,8 @@ Generated by [AVA](https://avajs.dev). 'lint:style': 'stylelint "**/*.{vue,css}" --ignore-path .gitignore', prepare: 'husky install', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2214,6 +2264,8 @@ Generated by [AVA](https://avajs.dev). lint: 'yarn lint:js', 'lint:js': 'eslint --ext ".js,.vue" --ignore-path .gitignore .', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2299,6 +2351,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2378,6 +2432,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2464,6 +2520,8 @@ Generated by [AVA](https://avajs.dev). lint: 'yarn lint:style', 'lint:style': 'stylelint "**/*.{vue,css}" --ignore-path .gitignore', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2554,6 +2612,8 @@ Generated by [AVA](https://avajs.dev). generate: 'nuxt generate', prepare: 'husky install', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2633,6 +2693,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2722,6 +2784,8 @@ Generated by [AVA](https://avajs.dev). generate: 'nuxt generate', start: 'nuxt start', test: 'jest', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2820,6 +2884,8 @@ Generated by [AVA](https://avajs.dev). test: 'yarn test:unit && yarn test:e2e', 'test:e2e': 'cross-env TEST=e2e ava ./test/e2e/**/*', 'test:unit': 'cross-env TEST=unit ava ./test/specs/**/*', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2911,6 +2977,8 @@ Generated by [AVA](https://avajs.dev). generate: 'nuxt generate', start: 'nuxt start', 'test:e2e': 'wdio wdio.conf.js', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -2998,6 +3066,8 @@ Generated by [AVA](https://avajs.dev). generate: 'nuxt generate', start: 'nuxt start', 'test:e2e': 'nightwatch', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3077,6 +3147,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3156,6 +3228,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3238,6 +3312,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3317,6 +3393,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3402,6 +3480,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3482,6 +3562,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3562,6 +3644,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3642,6 +3726,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3721,6 +3807,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3800,6 +3888,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3879,6 +3969,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -3958,6 +4050,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -4037,6 +4131,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } @@ -4116,6 +4212,8 @@ Generated by [AVA](https://avajs.dev). dev: 'nuxt', generate: 'nuxt generate', start: 'nuxt start', + 'update:check': 'npx npm-check-updates@latest --packageFile package.json', + 'update:major': 'yarn update:check -u && yarn && npx browserslist@latest --update-db', }, } diff --git a/packages/create-nuxt-app/test/snapshots/index.test.js.snap b/packages/create-nuxt-app/test/snapshots/index.test.js.snap index e56978f40bf1a6d45725aec782ce4586410bd162..6ae9c4f9040eaaddcd5b17efbb9e53d49f1d5516 100644 GIT binary patch literal 8765 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