@moneysiren/cli 0.1.0-alpha.4 → 0.1.0-alpha.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/README.md CHANGED
@@ -67,7 +67,7 @@ Install the generated tarball into a temporary project:
67
67
  mkdir -p /tmp/moneysiren-alpha-review
68
68
  cd /tmp/moneysiren-alpha-review
69
69
  npm init -y
70
- npm install /path/to/moneysiren-cli-0.1.0-alpha.4.tgz
70
+ npm install /path/to/moneysiren-cli-0.1.0-alpha.5.tgz
71
71
  npm exec moneysiren
72
72
  npm exec moneysiren -- --version
73
73
  npm exec moneysiren -- /version
@@ -83,7 +83,7 @@ PowerShell equivalent for the temporary project:
83
83
  New-Item -ItemType Directory -Force -Path $env:TEMP\moneysiren-alpha-review
84
84
  Set-Location $env:TEMP\moneysiren-alpha-review
85
85
  npm init -y
86
- npm install C:\path\to\moneysiren-cli-0.1.0-alpha.4.tgz
86
+ npm install C:\path\to\moneysiren-cli-0.1.0-alpha.5.tgz
87
87
  npm exec moneysiren
88
88
  npm exec moneysiren -- --version
89
89
  npm exec moneysiren -- modes
@@ -1,6 +1,6 @@
1
1
  import type { InstallSurface } from "./install-profile.js";
2
2
  export declare const DEFAULT_RELEASE_REPOSITORY = "ztwz11/moneysiren";
3
- export declare const DEFAULT_RELEASE_TAG = "v0.1.0-alpha.4";
3
+ export declare const DEFAULT_RELEASE_TAG = "v0.1.0-alpha.5";
4
4
  export interface ReleaseInstallOptions {
5
5
  env?: Record<string, string | undefined>;
6
6
  fetchImpl: typeof fetch;
@@ -7,7 +7,7 @@ import { promisify } from "node:util";
7
7
  const execFileAsync = promisify(execFile);
8
8
  export const DEFAULT_RELEASE_REPOSITORY = "ztwz11/moneysiren";
9
9
  // Keep the source-free installer pinned to the latest published desktop/web release tag.
10
- export const DEFAULT_RELEASE_TAG = "v0.1.0-alpha.4";
10
+ export const DEFAULT_RELEASE_TAG = "v0.1.0-alpha.5";
11
11
  const RELEASE_REPOSITORY_ENV_KEY = "MONEYSIREN_RELEASE_REPOSITORY";
12
12
  const RELEASE_TAG_ENV_KEY = "MONEYSIREN_RELEASE_TAG";
13
13
  const RELEASE_INSTALL_DIR_ENV_KEY = "MONEYSIREN_RELEASE_INSTALL_DIR";
@@ -194,13 +194,26 @@ function selectSurfaceAsset(surface, platform, assets) {
194
194
  return candidates.find((asset) => /^moneysiren-web-runtime-.+\.tar\.gz$/i.test(asset.name)) ?? null;
195
195
  }
196
196
  if (platform === "win32") {
197
- return candidates.find((asset) => /\.(exe|msi)$/i.test(asset.name)) ?? null;
197
+ return candidates.find(isDirectWindowsHudAsset) ??
198
+ candidates.find((asset) => isWindowsHudAsset(asset.name)) ??
199
+ null;
198
200
  }
199
201
  if (platform === "darwin") {
200
202
  return candidates.find((asset) => /macos/i.test(asset.name) && /\.(tar\.gz|dmg)$/i.test(asset.name)) ?? null;
201
203
  }
202
204
  return null;
203
205
  }
206
+ function isDirectWindowsHudAsset(asset) {
207
+ return isWindowsHudAsset(asset.name) &&
208
+ /\.exe$/i.test(asset.name) &&
209
+ !isInstallerLikeWindowsAsset(asset.name);
210
+ }
211
+ function isWindowsHudAsset(name) {
212
+ return /\.(exe|msi)$/i.test(name);
213
+ }
214
+ function isInstallerLikeWindowsAsset(name) {
215
+ return /\.msi$/i.test(name) || /(?:^|[._ -])(?:setup|install|installer)(?:[._ -]|$)/i.test(name);
216
+ }
204
217
  async function findChecksum(input) {
205
218
  for (const checksumAsset of input.checksumAssets) {
206
219
  const content = await downloadAsset(input.fetchImpl, checksumAsset.browser_download_url);
@@ -274,7 +287,7 @@ const defaultReleaseAssetSignatureVerifier = {
274
287
  return {
275
288
  verified: false,
276
289
  status: "unsupported",
277
- message: "Windows HUD release assets must be .exe or .msi installers.",
290
+ message: "Windows HUD release assets must be .exe or .msi artifacts.",
278
291
  };
279
292
  }
280
293
  if (input.expectedSignerThumbprints === undefined || input.expectedSignerThumbprints.length === 0) {
@@ -1,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.0-alpha.4";
1
+ export declare const CLI_VERSION = "0.1.0-alpha.5";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,2 +1,2 @@
1
- export const CLI_VERSION = "0.1.0-alpha.4";
1
+ export const CLI_VERSION = "0.1.0-alpha.5";
2
2
  //# sourceMappingURL=version.js.map
@@ -3,7 +3,7 @@ import { parseNotificationPreferences, readNotificationDigest, readNotificationP
3
3
  import { assertLoopbackHost, isLoopbackHost, removeRuntimeLock, writeRuntimeLock, } from "../../runtime/src/index.js";
4
4
  const DEFAULT_HOST = "127.0.0.1";
5
5
  const DEFAULT_PORT = 47831;
6
- const DEFAULT_VERSION = "0.1.0-alpha.4";
6
+ const DEFAULT_VERSION = "0.1.0-alpha.5";
7
7
  export async function startLocalApiServer(options = {}) {
8
8
  const host = options.host ?? DEFAULT_HOST;
9
9
  const requestedPort = options.port ?? DEFAULT_PORT;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneysiren/cli",
3
- "version": "0.1.0-alpha.4",
3
+ "version": "0.1.0-alpha.5",
4
4
  "description": "Local-first cloud/SaaS usage, status, and expected billing CLI for MoneySiren.",
5
5
  "private": false,
6
6
  "license": "MIT",