@bash0816/claude-code 2.1.212 → 2.1.214

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
@@ -37,7 +37,7 @@ npm が `claude` bin link を管理する状態になれば、通常の `npm ins
37
37
  Latest audited version / 最新監査済み版:
38
38
 
39
39
  ```sh
40
- npm install -g @bash0816/claude-code@2.1.211
40
+ npm install -g @bash0816/claude-code@2.1.212
41
41
  ```
42
42
 
43
43
  ## Update / 更新
@@ -517,6 +517,15 @@
517
517
  "entry_end_offset": 254615605,
518
518
  "tarball_integrity": "sha512-PcQptwO1t9q6tkL41yjmf5jxLU7Kzce4apW6KzuDvffN8ueKzGfR+9PecyQt2W1/dD2x1fAhWjAaQA6XiP2SyQ==",
519
519
  "tarball_sha256": "4aa1adabed3fe20a193c87450e25f82b04de65d97cea75fa5a0e80a0e910dbf8",
520
+ "status": "termux_verified"
521
+ },
522
+ "2.1.214": {
523
+ "wrapper_spec": "@anthropic-ai/claude-code@2.1.214",
524
+ "native_spec": "@anthropic-ai/claude-code-linux-arm64@2.1.214",
525
+ "entry_js_offset": 235508132,
526
+ "entry_end_offset": 255659218,
527
+ "tarball_integrity": "sha512-WqNC8frNnFfNU6pFUilEk6bRWFjVI//iyZzB4VT4k9jRVJCsF4j2mrpu3AcDHbtVUqiBYsjfGXGjHmXtdhzZNw==",
528
+ "tarball_sha256": "64f555b005d4ffa3998482152e8a359b5d7f0b0df56f2246173cc495e6cc2f0b",
520
529
  "status": "offset_discovered"
521
530
  }
522
531
  }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "manifest_version": 1,
3
3
  "package_name": "@bash0816/claude-code",
4
- "latest_audited_version": "2.1.211",
5
- "latest_candidate_version": "2.1.212",
6
- "previous_stable_version": "2.1.210",
4
+ "latest_audited_version": "2.1.212",
5
+ "latest_candidate_version": "2.1.214",
6
+ "previous_stable_version": "2.1.211",
7
7
  "stable_pinned_version": "2.1.193",
8
8
  "manifest_url": "https://raw.githubusercontent.com/bash0816/ClaudeCode-Termux/main/config/claude-termux-release-manifest.json"
9
9
  }
@@ -583,6 +583,7 @@ function rewriteNativeChunkSource(source) {
583
583
  const _bunPropertyAccessExpected = (() => {
584
584
  const _ver = String(process.env.CURRENT_CLAUDE_VERSION || '');
585
585
  const _m = _ver.match(/^(\d+)\.(\d+)\.(\d+)/);
586
+ if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 214)) return 39;
586
587
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 205)) return 38;
587
588
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 202)) return 41;
588
589
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 200)) return 40;
@@ -1273,6 +1274,7 @@ function rewriteNativeChunkSource(source) {
1273
1274
  const _bunPropertyAccessExpected = (() => {
1274
1275
  const _ver = String(process.env.CURRENT_CLAUDE_VERSION || '');
1275
1276
  const _m = _ver.match(/^(\d+)\.(\d+)\.(\d+)/);
1277
+ if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 214)) return 39;
1276
1278
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 205)) return 38;
1277
1279
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 202)) return 41;
1278
1280
  if (_m && (Number(_m[1]) > 2 || Number(_m[2]) > 1 || Number(_m[3]) >= 200)) return 40;
@@ -403,6 +403,44 @@ test('rewriteNativeChunkSource rejects stale Bun property access count for versi
403
403
  }
404
404
  });
405
405
 
406
+ test('rewriteNativeChunkSource rewrites the synthetic bundle slice (version 2.1.214)', () => {
407
+ process.env.CURRENT_CLAUDE_VERSION = '2.1.214';
408
+ try {
409
+ const { rewriteNativeChunkSource } = loadHelperApi();
410
+ const typeofBun = Array.from({ length: 7 }, () => 'typeof Bun').join('; ');
411
+ const bunProps = Array.from({ length: 39 }, (_, index) => `Bun.p${index}`).join('; ');
412
+ const source = `function(exports, require, module, __filename, __dirname) { ${typeofBun}; typeof globalThis.Bun; globalThis.Bun; ${bunProps}; npmInstallDeprecated:!0; npmInstallDeprecated:!0 }`;
413
+ const patched = rewriteNativeChunkSource(source);
414
+
415
+ assert.match(patched, /var __claudeBun = globalThis\.__claudeBunShim;/);
416
+ assert.match(patched, /typeof __claudeBun/);
417
+ assert.match(patched, /typeof globalThis\.__claudeBun/);
418
+ assert.match(patched, /globalThis\.__claudeBun/);
419
+ assert.match(patched, /__claudeBun\./);
420
+ assert.match(patched, /npmInstallDeprecated:!1/);
421
+ assert.doesNotMatch(patched, /npmInstallDeprecated:!0/);
422
+ } finally {
423
+ delete process.env.CURRENT_CLAUDE_VERSION;
424
+ }
425
+ });
426
+
427
+ test('rewriteNativeChunkSource rejects stale Bun property access count for version 2.1.214', () => {
428
+ process.env.CURRENT_CLAUDE_VERSION = '2.1.214';
429
+ try {
430
+ const { rewriteNativeChunkSource } = loadHelperApi();
431
+ const typeofBun = Array.from({ length: 7 }, () => 'typeof Bun').join('; ');
432
+ const bunProps = Array.from({ length: 38 }, (_, index) => `Bun.p${index}`).join('; ');
433
+ const source = `function(exports, require, module, __filename, __dirname) { ${typeofBun}; typeof globalThis.Bun; globalThis.Bun; ${bunProps}; npmInstallDeprecated:!0; npmInstallDeprecated:!0 }`;
434
+
435
+ assert.throws(
436
+ () => rewriteNativeChunkSource(source),
437
+ /unexpected Bun property access count 38/,
438
+ );
439
+ } finally {
440
+ delete process.env.CURRENT_CLAUDE_VERSION;
441
+ }
442
+ });
443
+
406
444
  test('rewriteNativeChunkSource rejects unexpected replacement counts', () => {
407
445
  const { rewriteNativeChunkSource } = loadHelperApi();
408
446
  const source = buildSyntheticBundleSource().replace('Bun.p30;', '');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bash0816/claude-code",
3
- "version": "2.1.212",
3
+ "version": "2.1.214",
4
4
  "description": "Unofficial Termux-native Claude Code wrapper with audited native replay",
5
5
  "license": "GPL-3.0-only",
6
6
  "bin": {