@mercury-fw/cli 0.28.0 → 0.28.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/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @mercury-fw/cli
2
2
 
3
+ ## 0.28.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 0c5bb5b: Dependencies at their latest minor: `ai` 7.0.126, `ai-sdk-ollama` 4.4.0, `zod` 4.6.5, `yaml` 2.9.1, `shell-quote` 1.11.0. A new app from `mfw create` runs Qdrant on its `v1` tag, which follows every 1.x release, instead of a fixed 1.19.0, and gets `@types/bun` `^1.4.2`.
8
+ - Updated dependencies [0c5bb5b]
9
+ - @mercury-fw/core@0.28.2
10
+
11
+ ## 0.28.1
12
+
13
+ ### Patch Changes
14
+
15
+ - ab52977: An app created with the Google Chat channel trusts `protobufjs` in `trustedDependencies`, so its install no longer reports that package's postinstall as blocked. The channel's README says to do the same when adding it by hand.
16
+ - @mercury-fw/core@0.28.1
17
+
3
18
  ## 0.28.0
4
19
 
5
20
  ### Minor Changes
@@ -22,6 +22,9 @@ export type CatalogEntry = {
22
22
  env: EnvVar[];
23
23
  formatter?: FormatterExample;
24
24
  credentials?: CliCredentials;
25
+ /** Dependencies whose install scripts Bun must run for this entry (Bun runs
26
+ * none it isn't told to trust), on top of a tool plugin's own package. */
27
+ trusts?: string[];
25
28
  };
26
29
  /** Where a tool plugin's CLI keeps its login: `folder` under the CLI user's
27
30
  * `~/.config`, and the env variable that carries that folder into the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mercury-fw/cli",
3
- "version": "0.28.0",
3
+ "version": "0.28.2",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -36,18 +36,18 @@
36
36
  "comment:shape": "The Mercury CLI (`mfw`). `mfw create <dir>` writes a new Mercury app from the template. The framework packages move in lockstep with it, so a new app gets them at the CLI's own version; plugins and channels at the registry's latest. The plugin and channel packages are devDependencies only for the catalog test. `main(argv)` is exported for create-mercury-agent.",
37
37
  "dependencies": {
38
38
  "@clack/prompts": "^1.8.1",
39
- "@mercury-fw/core": "0.28.0",
39
+ "@mercury-fw/core": "0.28.2",
40
40
  "commander": "^15.0.0"
41
41
  },
42
42
  "devDependencies": {
43
- "@mercury-fw/channel-google-chat": "0.1.1",
43
+ "@mercury-fw/channel-google-chat": "0.1.2",
44
44
  "@mercury-fw/channel-http": "0.1.0",
45
- "@mercury-fw/formatter": "0.28.0",
45
+ "@mercury-fw/formatter": "0.28.2",
46
46
  "@mercury-fw/plugin-atlassian-admin": "0.1.0",
47
47
  "@mercury-fw/plugin-bitbucket": "0.1.0",
48
- "@mercury-fw/plugin-jira": "0.1.0",
48
+ "@mercury-fw/plugin-jira": "0.1.1",
49
49
  "@mercury-fw/typescript-config": "*",
50
- "@types/bun": "^1.4.0",
50
+ "@types/bun": "^1.4.2",
51
51
  "typescript": "^6.0.3"
52
52
  }
53
53
  }
package/src/catalog.ts CHANGED
@@ -20,6 +20,9 @@ export type CatalogEntry = {
20
20
  env: EnvVar[];
21
21
  formatter?: FormatterExample;
22
22
  credentials?: CliCredentials;
23
+ /** Dependencies whose install scripts Bun must run for this entry (Bun runs
24
+ * none it isn't told to trust), on top of a tool plugin's own package. */
25
+ trusts?: string[];
23
26
  };
24
27
 
25
28
  /** Where a tool plugin's CLI keeps its login: `folder` under the CLI user's
@@ -41,6 +44,9 @@ export const CATALOG: CatalogEntry[] = [
41
44
  kind: "channel",
42
45
  package: "@mercury-fw/channel-google-chat",
43
46
  exportName: "googleChatChannel",
47
+ // Pulled in by @google-cloud/pubsub; its postinstall only checks how
48
+ // dependents spell its version range.
49
+ trusts: ["protobufjs"],
44
50
  env: [
45
51
  {
46
52
  name: "GOOGLE_CHAT_PUBSUB_SUBSCRIPTION",
package/src/render.ts CHANGED
@@ -277,10 +277,11 @@ function renderPackageJson(
277
277
  dependencies,
278
278
  // The CLI in the app itself, so `bunx mfw` runs the version that matches
279
279
  // the framework the app depends on.
280
- devDependencies: { "@mercury-fw/cli": `^${cli}`, "@types/bun": "^1.4.0", typescript: "^6.0.3" },
280
+ devDependencies: { "@mercury-fw/cli": `^${cli}`, "@types/bun": "^1.4.2", typescript: "^6.0.3" },
281
281
  };
282
- if (tools.length > 0) {
283
- manifest.trustedDependencies = tools.map((t) => t.package).sort();
282
+ const trusted = [...new Set([...tools.map((t) => t.package), ...[...channels, ...tools].flatMap((e) => e.trusts ?? [])])];
283
+ if (trusted.length > 0) {
284
+ manifest.trustedDependencies = trusted.sort();
284
285
  }
285
286
  return `${JSON.stringify(manifest, null, 2)}\n`;
286
287
  }
@@ -345,7 +346,7 @@ function renderCompose(name: string, hasTools: boolean): string {
345
346
  " - qdrant",
346
347
  "",
347
348
  " qdrant:",
348
- " image: qdrant/qdrant:v1.19.0",
349
+ " image: qdrant/qdrant:v1",
349
350
  " volumes:",
350
351
  " - qdrant-data:/qdrant/storage",
351
352
  "",