fuigo 1.0.3 → 1.0.4

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.
@@ -31,17 +31,20 @@ function readLocalVersion() {
31
31
  try { return require('../package.json').version; } catch { return undefined; }
32
32
  }
33
33
 
34
- // npm's spam filter refuses to CREATE any unscoped package name containing the
35
- // token `win32-arm64`: 403 "Package name triggered spam detection". Measured,
36
- // not guessed -- `fuigo-win32-x64`, `fuigo-darwin-arm64` and `fuigo-linux-arm64`
37
- // all publish fine from the same account, and `fuigo-windows-arm64` with
38
- // identical os/cpu metadata published minutes after `fuigo-win32-arm64` was
39
- // refused. So this one package's npm NAME cannot be derived from
40
- // process.platform/process.arch, and every place that derives it needs this map.
41
- const PLATFORM_PACKAGE_OVERRIDES = {
42
- 'win32-arm64': 'fuigo-windows-arm64',
43
- };
44
- const platformPackageName = (k) => PLATFORM_PACKAGE_OVERRIDES[k] ?? `fuigo-${k}`;
34
+ // The platform packages are scoped under the `fuigo` npm org: @fuigo/<platform>-<arch>.
35
+ // The meta package stays unscoped -- it is the name users install, and this is
36
+ // the same split @next, @anthropic-ai and @vscode use for native sidecars.
37
+ //
38
+ // Scoping is not cosmetic. npm's spam filter refuses to CREATE an unscoped
39
+ // package name containing the token `win32-arm64` (403 "Package name triggered
40
+ // spam detection"), which is why fuigo-win32-arm64 never existed at any version
41
+ // and Windows ARM shipped without a binary until 1.0.3. Measured: the refused
42
+ // name fails even when published ALONE ten minutes after a successful sibling,
43
+ // while the same binary under a different name publishes fine. A scope removes
44
+ // that entire class of failure for every platform, not just the one that hit it.
45
+ //
46
+ // The DIRECTORY is still fuigo-<platform>-<arch>; only the npm name is scoped.
47
+ const platformPackageName = (k) => `@fuigo/${k}`;
45
48
 
46
49
  // Returns null when npm skipped the matching optional dependency
47
50
  // (unsupported platform, or --no-optional).
@@ -40,17 +40,20 @@ if (!SUPPORTED.has(key)) {
40
40
  process.exit(0);
41
41
  }
42
42
 
43
- // npm's spam filter refuses to CREATE any unscoped package name containing the
44
- // token `win32-arm64`: 403 "Package name triggered spam detection". Measured,
45
- // not guessed -- `fuigo-win32-x64`, `fuigo-darwin-arm64` and `fuigo-linux-arm64`
46
- // all publish fine from the same account, and `fuigo-windows-arm64` with
47
- // identical os/cpu metadata published minutes after `fuigo-win32-arm64` was
48
- // refused. So this one package's npm NAME cannot be derived from
49
- // process.platform/process.arch, and every place that derives it needs this map.
50
- const PLATFORM_PACKAGE_OVERRIDES = {
51
- 'win32-arm64': 'fuigo-windows-arm64',
52
- };
53
- const platformPackageName = (k) => PLATFORM_PACKAGE_OVERRIDES[k] ?? `fuigo-${k}`;
43
+ // The platform packages are scoped under the `fuigo` npm org: @fuigo/<platform>-<arch>.
44
+ // The meta package stays unscoped -- it is the name users install, and this is
45
+ // the same split @next, @anthropic-ai and @vscode use for native sidecars.
46
+ //
47
+ // Scoping is not cosmetic. npm's spam filter refuses to CREATE an unscoped
48
+ // package name containing the token `win32-arm64` (403 "Package name triggered
49
+ // spam detection"), which is why fuigo-win32-arm64 never existed at any version
50
+ // and Windows ARM shipped without a binary until 1.0.3. Measured: the refused
51
+ // name fails even when published ALONE ten minutes after a successful sibling,
52
+ // while the same binary under a different name publishes fine. A scope removes
53
+ // that entire class of failure for every platform, not just the one that hit it.
54
+ //
55
+ // The DIRECTORY is still fuigo-<platform>-<arch>; only the npm name is scoped.
56
+ const platformPackageName = (k) => `@fuigo/${k}`;
54
57
 
55
58
  // Resolve the per-platform sibling package's directory. The matching
56
59
  // optionalDependency is installed by npm based on `os`/`cpu` filters; the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fuigo",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "Bring Fuigo into your terminal",
5
5
  "license": "Apache-2.0",
6
6
  "bin": {
@@ -35,11 +35,11 @@
35
35
  "@iarna/toml": "^3.0.0"
36
36
  },
37
37
  "optionalDependencies": {
38
- "fuigo-darwin-arm64": "1.0.3",
39
- "fuigo-darwin-x64": "1.0.3",
40
- "fuigo-linux-arm64": "1.0.3",
41
- "fuigo-linux-x64": "1.0.3",
42
- "fuigo-windows-arm64": "1.0.3",
43
- "fuigo-win32-x64": "1.0.3"
38
+ "@fuigo/darwin-arm64": "1.0.4",
39
+ "@fuigo/darwin-x64": "1.0.4",
40
+ "@fuigo/linux-arm64": "1.0.4",
41
+ "@fuigo/linux-x64": "1.0.4",
42
+ "@fuigo/win32-arm64": "1.0.4",
43
+ "@fuigo/win32-x64": "1.0.4"
44
44
  }
45
45
  }