@jcoreio/toolchain 2.0.0 → 2.0.2

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