zx-bulk-release 1.17.2 → 1.17.5

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/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ ## [1.17.5](https://github.com/semrel-extra/zx-bulk-release/compare/v1.17.4...v1.17.5) (2022-07-05)
2
+
3
+ ### Fixes & improvements
4
+ * perf: update zx-extra to v2.3.0 ([9de650f](https://github.com/semrel-extra/zx-bulk-release/commit/9de650fb84e1a33a1d670c394c94b565e7d11f3c))
5
+
6
+ ## [1.17.4](https://github.com/semrel-extra/zx-bulk-release/compare/v1.17.3...v1.17.4) (2022-07-03)
7
+
8
+ ### Fixes & improvements
9
+ * fix: fix tag pattern ([240b452](https://github.com/semrel-extra/zx-bulk-release/commit/240b452b8ee414bfbb0d13a0218790059400eb06))
10
+
11
+ ## [1.17.3](https://github.com/semrel-extra/zx-bulk-release/compare/v1.17.2...v1.17.3) (2022-06-29)
12
+
13
+ ### Fixes & improvements
14
+ * docs: add roadmap ([185a12d](https://github.com/semrel-extra/zx-bulk-release/commit/185a12d8956c3e274035b863682afee3bd64ccb7))
15
+
1
16
  ## [1.17.2](https://github.com/semrel-extra/zx-bulk-release/compare/v1.17.1...v1.17.2) (2022-06-28)
2
17
 
3
18
  ### Fixes & improvements
package/README.md CHANGED
@@ -17,6 +17,12 @@
17
17
  * Docs are published to `gh-pages` branch (configurable).
18
18
  * No extra builds. The required deps are fetched from the pkg registry (`npmFetch` config opt).
19
19
 
20
+ ## Roadmap
21
+ * [ ] Multistack. Add support for java/kt/py.
22
+ * [ ] Self-repair. Restore broken/missing metadata from external registries (npm, pypi, m2).
23
+ * [ ] Semaphore. Let several release agents to serve the monorepo at the same time.
24
+ * [ ] Stats. Store release metrics to `meta`.
25
+
20
26
  ## Requirements
21
27
  * macOS / linux
22
28
  * Node.js >= 16.0.0
@@ -238,6 +244,7 @@ Each release projects its result into the `meta` branch.
238
244
  * [conventional-changelog/releaser-tools](https://github.com/conventional-changelog/releaser-tools)
239
245
  * [pmowrer/semantic-release-monorepo](https://github.com/pmowrer/semantic-release-monorepo)
240
246
  * [jscutlery/semver](https://github.com/jscutlery/semver)
247
+ * [microsoft/rushstack](https://github.com/microsoft/rushstack)
241
248
  * [tophat/monodeploy](https://github.com/tophat/monodeploy)
242
249
  * [intuit/auto](https://github.com/intuit/auto)
243
250
  * [vercel/turborepo](https://github.com/vercel/turborepo)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zx-bulk-release",
3
- "version": "1.17.2",
3
+ "version": "1.17.5",
4
4
  "description": "zx-based alternative for multi-semantic-release",
5
5
  "type": "module",
6
6
  "exports": "./src/main/js/index.js",
@@ -11,15 +11,14 @@
11
11
  "docs": "mkdir -p docs && cp ./README.md ./docs/README.md"
12
12
  },
13
13
  "dependencies": {
14
- "@semrel-extra/topo": "^1.4.1",
14
+ "@semrel-extra/topo": "^1.4.2",
15
15
  "cosmiconfig": "^7.0.1",
16
- "git-glob-cp": "^1.7.2",
17
16
  "ini": "^3.0.0",
18
- "zx-extra": "^1.7.1"
17
+ "zx-extra": "^2.3.0"
19
18
  },
20
19
  "devDependencies": {
21
20
  "c8": "^7.11.3",
22
- "uvu": "^0.5.4",
21
+ "uvu": "^0.5.6",
23
22
  "verdaccio": "^5.13.1"
24
23
  },
25
24
  "publishConfig": {
package/renovate.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "extends": [
4
+ "local>semrel-extra/.github:renovate-config"
5
+ ]
6
+ }
@@ -1,7 +1,6 @@
1
1
  import {parseEnv} from './config.js'
2
- import {$, ctx, fs, path, tempy} from 'zx-extra'
2
+ import {$, ctx, fs, path, tempy, copy} from 'zx-extra'
3
3
  import ini from 'ini'
4
- import {copy} from 'git-glob-cp'
5
4
 
6
5
  export const fetchPkg = async (pkg, {env = $.env} = {}) => {
7
6
  try {
@@ -1,6 +1,5 @@
1
- import {$, ctx, fs, path, tempy} from 'zx-extra'
1
+ import {$, ctx, fs, path, tempy, copy} from 'zx-extra'
2
2
  import {parseEnv} from './config.js'
3
- import {copydir} from 'git-glob-cp'
4
3
 
5
4
  const branches = {}
6
5
  export const fetch = async ({cwd: _cwd, branch, origin: _origin}) => ctx(async ($) => {
@@ -32,7 +31,7 @@ export const push = async ({cwd, from, to, branch, origin, msg, ignoreFiles, fil
32
31
  const _contents = typeof contents === 'string' ? contents : JSON.stringify(contents, null, 2)
33
32
  await fs.outputFile(path.resolve(_cwd, to, relpath), _contents)
34
33
  }
35
- if (from) await copydir({baseFrom: cwd, from, baseTo: _cwd, to, ignoreFiles, cwd})
34
+ if (from) await copy({baseFrom: cwd, from, baseTo: _cwd, to, ignoreFiles, cwd})
36
35
 
37
36
  $.cwd = _cwd
38
37
 
@@ -22,7 +22,7 @@ const f0 = {
22
22
  parse(tag) {
23
23
  if (!tag.endsWith('-f0')) return null
24
24
 
25
- const pattern = /^(\d{4}\.(?:[1-9]|1[012])\.(?:0[1-9]|[12]\d|30|31))-((?:[a-z0-9-]+\.)?[a-z0-9-]+)\.(v?\d+\.\d+\.\d+.*)-f0$/
25
+ const pattern = /^(\d{4}\.(?:[1-9]|1[012])\.(?:[1-9]|[12]\d|30|31))-((?:[a-z0-9-]+\.)?[a-z0-9-]+)\.(v?\d+\.\d+\.\d+.*)-f0$/
26
26
  const matched = pattern.exec(tag) || []
27
27
  const [, _date, _name, version] = matched
28
28
 
@@ -47,7 +47,7 @@ const f1 = {
47
47
  parse(tag) {
48
48
  if (!tag.endsWith('-f1')) return null
49
49
 
50
- const pattern = /^(\d{4}\.(?:[1-9]|1[012])\.(?:0[1-9]|[12]\d|30|31))-[a-z0-9-]+\.(v?\d+\.\d+\.\d+.*)\.([^.]+)-f1$/
50
+ const pattern = /^(\d{4}\.(?:[1-9]|1[012])\.(?:[1-9]|[12]\d|30|31))-[a-z0-9-]+\.(v?\d+\.\d+\.\d+.*)\.([^.]+)-f1$/
51
51
  const matched = pattern.exec(tag) || []
52
52
  const [, _date, version, b64] = matched
53
53
 
@@ -133,6 +133,16 @@ test('formatTag() / parseTag()', () => {
133
133
  ref: '2022.6.13-a.v1.0.0-f0'
134
134
  }
135
135
  ],
136
+ [
137
+ '2022.7.3-a.1.0.1-f0',
138
+ {
139
+ name: 'a',
140
+ version: '1.0.1',
141
+ date: new Date(Date.UTC(2022, 6, 3)),
142
+ format: 'f0',
143
+ ref: '2022.7.3-a.1.0.1-f0'
144
+ }
145
+ ],
136
146
  [
137
147
  '2022.6.13-examplecom.v1.0.0.ZXhhbXBsZS5jb20-f1',
138
148
  {
@@ -20,6 +20,7 @@ export const createNpmRegistry = () => {
20
20
  return sleep(1000)
21
21
  },
22
22
  async stop() {
23
+ p._nothrow = true
23
24
  return p?.kill()
24
25
  }
25
26
  }