netlify-cli 19.0.0-pre.93d6107 → 19.0.0-pre.94cb80a

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "netlify-cli",
3
3
  "description": "Netlify command line tool",
4
- "version": "19.0.0-pre.93d6107",
4
+ "version": "19.0.0-pre.94cb80a",
5
5
  "author": "Netlify Inc.",
6
6
  "type": "module",
7
7
  "engines": {
@@ -31,8 +31,7 @@
31
31
  "url": "https://github.com/netlify/cli/issues"
32
32
  },
33
33
  "scripts": {
34
- "prepublishOnly": "node ./scripts/prepare-for-publish.js",
35
- "postinstall": "node ./scripts/postinstall.js"
34
+ "prepublishOnly": "node ./scripts/prepare-for-publish.js"
36
35
  },
37
36
  "dependencies": {
38
37
  "@bugsnag/js": "8.2.0",
@@ -137,6 +136,6 @@
137
136
  "uuid": "11.0.5",
138
137
  "wait-port": "1.1.0",
139
138
  "write-file-atomic": "5.0.1",
140
- "ws": "8.18.0"
139
+ "ws": "8.18.1"
141
140
  }
142
141
  }
@@ -5,8 +5,29 @@ import { fileURLToPath } from 'url'
5
5
  import execa from 'execa'
6
6
  import ora from 'ora'
7
7
 
8
- // These scripts from package.json need to be preserved on publish
9
- const preserveScripts = new Set([
8
+ const insertUserPostinstall = (pkgJson) => {
9
+ pkgJson.scripts.postinstall = pkgJson.scripts['postinstall-pack']
10
+ delete pkgJson.scripts['postinstall-pack']
11
+ }
12
+
13
+ const installDeps = async () => {
14
+ let spinner = ora('Running `npm install --no-audit`').start()
15
+ await execa('npm', ['install', '--no-audit'])
16
+ spinner.succeed()
17
+
18
+ spinner = ora('Running `npm shrinkwrap`').start()
19
+ await execa('npm', ['shrinkwrap'])
20
+ spinner.succeed()
21
+ }
22
+
23
+ // NOTE: this must run before `cleanPackageJson`, otherwise the `build` script has been deleted
24
+ const buildPackageForPublish = async () => {
25
+ const spinner = ora('Running `npm run build`').start()
26
+ await execa('npm', ['run', 'build'])
27
+ spinner.succeed()
28
+ }
29
+
30
+ const SCRIPTS_TO_KEEP_ON_PUBLISHED_PKG = new Set([
10
31
  'postinstall-pack',
11
32
  'postpack',
12
33
  'preinstall',
@@ -15,42 +36,35 @@ const preserveScripts = new Set([
15
36
  'prepublishOnly',
16
37
  ])
17
38
 
18
- let spinner = ora({
19
- spinner: 'star',
20
- text: 'Patching package.json (removing devDependencies, scripts, etc)',
21
- }).start()
39
+ const cleanPackageJson = (pkgJson) => {
40
+ delete pkgJson.devDependencies
41
+ delete pkgJson.config
42
+
43
+ for (const scriptName in pkgJson.scripts) {
44
+ if (SCRIPTS_TO_KEEP_ON_PUBLISHED_PKG.has(scriptName)) continue
22
45
 
23
- const dir = dirname(fileURLToPath(import.meta.url))
24
- const packageJsonPath = join(dir, '../package.json')
46
+ delete pkgJson.scripts[scriptName]
47
+ }
48
+ }
49
+
50
+ const writeUpdatedPackageJson = async (pkgJson, packageJsonPath) => {
51
+ const spinner = ora('Patching package.json (removing devDependencies, scripts, etc').start()
52
+ await writeFile(packageJsonPath, JSON.stringify(pkgJson, null, 2))
53
+ spinner.succeed()
54
+ }
25
55
 
26
- const pkgJson = JSON.parse(await readFile(packageJsonPath))
56
+ const main = async () => {
57
+ const dir = dirname(fileURLToPath(import.meta.url))
58
+ const pkgJsonPath = join(dir, '../package.json')
59
+ const pkgJson = JSON.parse(await readFile(pkgJsonPath))
27
60
 
28
- delete pkgJson.devDependencies
29
- delete pkgJson.ava
30
- delete pkgJson.config
61
+ await installDeps()
31
62
 
32
- for (const scriptName in pkgJson.scripts) {
33
- if (preserveScripts.has(scriptName)) continue
63
+ await buildPackageForPublish()
34
64
 
35
- delete pkgJson.scripts[scriptName]
65
+ insertUserPostinstall(pkgJson)
66
+ cleanPackageJson(pkgJson)
67
+ await writeUpdatedPackageJson(pkgJson, pkgJsonPath)
36
68
  }
37
69
 
38
- pkgJson.scripts.postinstall = pkgJson.scripts['postinstall-pack']
39
- delete pkgJson.scripts['postinstall-pack']
40
-
41
- await writeFile(packageJsonPath, JSON.stringify(pkgJson, null, 2))
42
- spinner.succeed()
43
-
44
- spinner = ora({
45
- spinner: 'star',
46
- text: 'Running `npm install --no-audit`',
47
- }).start()
48
- await execa('npm', ['install', '--no-audit'])
49
- spinner.succeed()
50
-
51
- spinner = ora({
52
- spinner: 'star',
53
- text: 'Running `npm shrinkwrap`',
54
- }).start()
55
- await execa('npm', ['shrinkwrap'])
56
- spinner.succeed()
70
+ await main()