@kitsi/pack-github-release 0.0.3 → 0.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"create-release.d.ts","sourceRoot":"","sources":["../../src/steps/create-release.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAuED;;;GAGG;AACH,wBAAiB,aAAa,CAC5B,GAAG,EAAE,oBAAoB,EACzB,IAAI,GAAE,oBAAyB,GAC9B,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,EAAE,OAAO,CAAC,CAiBnD"}
1
+ {"version":3,"file":"create-release.d.ts","sourceRoot":"","sources":["../../src/steps/create-release.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAmFD;;;GAGG;AACH,wBAAiB,aAAa,CAC5B,GAAG,EAAE,oBAAoB,EACzB,IAAI,GAAE,oBAAyB,GAC9B,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,EAAE,OAAO,CAAC,CAsBnD"}
@@ -1,28 +1,35 @@
1
- import { sh } from '@kitsi/cli';
1
+ import { CommandBuilder, sh } from '@kitsi/cli';
2
2
  /**
3
- * Builds the gh release create flags from options.
3
+ * Builds the gh release create template parts from options.
4
4
  */
5
- function buildReleaseFlags(pkg, opts) {
6
- const flags = [];
5
+ function buildReleaseTemplateParts(pkg, opts) {
6
+ const parts = [];
7
+ const pushFlag = (flag) => {
8
+ parts.push({ type: 'text', value: ` ${flag}` });
9
+ };
10
+ const pushFlagValue = (flag, value) => {
11
+ parts.push({ type: 'text', value: ` ${flag} ` });
12
+ parts.push({ type: 'interpolated', value });
13
+ };
7
14
  if (opts.draft)
8
- flags.push('--draft');
15
+ pushFlag('--draft');
9
16
  if (opts.prerelease)
10
- flags.push('--prerelease');
17
+ pushFlag('--prerelease');
11
18
  if (opts.generateNotes !== false)
12
- flags.push('--generate-notes');
19
+ pushFlag('--generate-notes');
13
20
  if (opts.latest === true)
14
- flags.push('--latest');
21
+ pushFlag('--latest');
15
22
  else if (opts.latest === false)
16
- flags.push('--latest=false');
23
+ pushFlag('--latest=false');
17
24
  if (opts.discussionCategory) {
18
- flags.push(`--discussion-category "${opts.discussionCategory}"`);
25
+ pushFlagValue('--discussion-category', opts.discussionCategory);
19
26
  }
20
27
  const title = pkg.title ?? pkg.tagName;
21
- flags.push(`--title "${title}"`);
28
+ pushFlagValue('--title', title);
22
29
  if (pkg.body) {
23
- flags.push(`--notes "${pkg.body.replace(/"/g, '\\"')}"`);
30
+ pushFlagValue('--notes', pkg.body);
24
31
  }
25
- return flags;
32
+ return parts;
26
33
  }
27
34
  /**
28
35
  * Creates a dry run result for testing.
@@ -63,14 +70,19 @@ function parseReleaseResult(pkg, output, opts) {
63
70
  * Yields shell commands and returns the release result.
64
71
  */
65
72
  export function* createRelease(pkg, opts = {}) {
66
- const flags = buildReleaseFlags(pkg, opts);
67
- const flagsStr = flags.join(' ');
68
73
  const tagName = pkg.tagName;
69
74
  if (opts.dryRun) {
70
75
  yield sh `echo "[DRY RUN] Would create release: ${tagName}"`.must();
71
76
  return createDryRunResult(pkg, opts);
72
77
  }
73
- const result = (yield sh `gh release create "${tagName}" ${flagsStr} 2>&1`.stdout());
78
+ const template = [
79
+ { type: 'text', value: 'gh release create ' },
80
+ { type: 'interpolated', value: tagName },
81
+ ...buildReleaseTemplateParts(pkg, opts),
82
+ { type: 'text', value: ' 2>&1' },
83
+ ];
84
+ const command = new CommandBuilder({ kind: 'command', capture: 'result', template });
85
+ const result = (yield command.stdout());
74
86
  if (result === '') {
75
87
  return null; // Analysis mode
76
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create-release.js","sourceRoot":"","sources":["../../src/steps/create-release.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-release.js","sourceRoot":"","sources":["../../src/steps/create-release.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kitsi/pack-github-release",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "Kitsi pack for publishing GitHub releases with auto-generated release notes",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",