@jcoreio/toolchain 2.0.0 → 2.0.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 (2) hide show
  1. package/package.json +1 -1
  2. package/scripts/init.cjs +22 -13
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jcoreio/toolchain",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "base JS build toolchain",
5
5
  "repository": {
6
6
  "type": "git",
package/scripts/init.cjs CHANGED
@@ -1,13 +1,18 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  const { packageJson } = require('../util/findUps.cjs')
4
+ const fs = require('../util/projectFs.cjs')
4
5
  const preinstall = require('./preinstall.cjs')
5
6
  const execa = require('../util/execa.cjs')
6
7
  const hasTSFiles = require('../util/hasTSFiles.cjs')
7
8
 
8
9
  async function init(args = []) {
9
- const { dependencies = {}, devDependencies = {} } = packageJson
10
- const toolchains = []
10
+ const { version, dependencies = {}, devDependencies = {} } = packageJson
11
+ const toolchains = new Set(
12
+ Object.keys(devDependencies).filter((dep) =>
13
+ dep.startsWith('@jcoreio/toolchain-')
14
+ )
15
+ )
11
16
  const isBabel =
12
17
  devDependencies['@babel/core'] != null ||
13
18
  devDependencies['babel-core'] != null ||
@@ -17,15 +22,17 @@ async function init(args = []) {
17
22
  const isReact = dependencies.react != null || devDependencies.react != null
18
23
  const isMocha = devDependencies['mocha'] != null
19
24
  const isCircle = true // might be false someday
20
- const isSemanticRelease = devDependencies['semantic-release'] != null
25
+ const isSemanticRelease =
26
+ devDependencies['semantic-release'] != null ||
27
+ (await fs.pathExists('release.config.cjs'))
21
28
 
22
- if (isMocha) toolchains.push('@jcoreio/toolchain-mocha')
23
- if (isBabel) toolchains.push('@jcoreio/toolchain-esnext')
24
- if (isFlow) toolchains.push('@jcoreio/toolchain-flow')
25
- if (isTS) toolchains.push('@jcoreio/toolchain-typescript')
26
- if (isReact) toolchains.push('@jcoreio/toolchain-react')
27
- if (isCircle) toolchains.push('@jcoreio/toolchain-circle')
28
- if (isSemanticRelease) toolchains.push('@jcoreio/toolchain-semantic-release')
29
+ if (isMocha) toolchains.add('@jcoreio/toolchain-mocha')
30
+ if (isBabel) toolchains.add('@jcoreio/toolchain-esnext')
31
+ if (isFlow) toolchains.add('@jcoreio/toolchain-flow')
32
+ if (isTS) toolchains.add('@jcoreio/toolchain-typescript')
33
+ if (isReact) toolchains.add('@jcoreio/toolchain-react')
34
+ if (isCircle) toolchains.add('@jcoreio/toolchain-circle')
35
+ if (isSemanticRelease) toolchains.add('@jcoreio/toolchain-semantic-release')
29
36
 
30
37
  const isTest = Boolean(process.env.JCOREIO_TOOLCHAIN_TEST)
31
38
 
@@ -33,10 +40,12 @@ async function init(args = []) {
33
40
  await execa('pnpm', [
34
41
  'add',
35
42
  '-D',
36
- isTest ? '../packages/base' : '@jcoreio/toolchain',
43
+ isTest ? '../packages/base' : `@jcoreio/toolchain@^${version}`,
37
44
  ...(isTest
38
- ? toolchains.map((t) => t.replace(/@jcoreio\/toolchain-/, '../packages/'))
39
- : toolchains),
45
+ ? [...toolchains].map((t) =>
46
+ t.replace(/@jcoreio\/toolchain-/, '../packages/')
47
+ )
48
+ : [...toolchains].map((t) => `${t}@^${version}`)),
40
49
  ])
41
50
  await execa('tc', ['migrate'])
42
51
  }