@quenty/nevermore-cli 4.48.0 → 4.49.0

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.
Files changed (41) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/commands/batch-command/batch-test-command.d.ts +1 -0
  3. package/dist/commands/batch-command/batch-test-command.d.ts.map +1 -1
  4. package/dist/commands/batch-command/batch-test-command.js +11 -0
  5. package/dist/commands/batch-command/batch-test-command.js.map +1 -1
  6. package/dist/utils/build/place-recompression.d.ts +25 -0
  7. package/dist/utils/build/place-recompression.d.ts.map +1 -0
  8. package/dist/utils/build/place-recompression.js +166 -0
  9. package/dist/utils/build/place-recompression.js.map +1 -0
  10. package/dist/utils/build/place-recompression.test.d.ts +2 -0
  11. package/dist/utils/build/place-recompression.test.d.ts.map +1 -0
  12. package/dist/utils/build/place-recompression.test.js +68 -0
  13. package/dist/utils/build/place-recompression.test.js.map +1 -0
  14. package/dist/utils/job-context/batch-script-job-context.d.ts +20 -8
  15. package/dist/utils/job-context/batch-script-job-context.d.ts.map +1 -1
  16. package/dist/utils/job-context/batch-script-job-context.js +94 -22
  17. package/dist/utils/job-context/batch-script-job-context.js.map +1 -1
  18. package/dist/utils/open-cloud/open-cloud-client.d.ts +12 -0
  19. package/dist/utils/open-cloud/open-cloud-client.d.ts.map +1 -1
  20. package/dist/utils/open-cloud/open-cloud-client.js +37 -1
  21. package/dist/utils/open-cloud/open-cloud-client.js.map +1 -1
  22. package/dist/utils/testing/batch-run.e2e.test.js +78 -13
  23. package/dist/utils/testing/batch-run.e2e.test.js.map +1 -1
  24. package/dist/utils/testing/runner/combined-project-generator.d.ts +33 -5
  25. package/dist/utils/testing/runner/combined-project-generator.d.ts.map +1 -1
  26. package/dist/utils/testing/runner/combined-project-generator.js +116 -19
  27. package/dist/utils/testing/runner/combined-project-generator.js.map +1 -1
  28. package/dist/utils/testing/runner/combined-project-generator.test.d.ts +2 -0
  29. package/dist/utils/testing/runner/combined-project-generator.test.d.ts.map +1 -0
  30. package/dist/utils/testing/runner/combined-project-generator.test.js +26 -0
  31. package/dist/utils/testing/runner/combined-project-generator.test.js.map +1 -0
  32. package/package.json +2 -2
  33. package/src/commands/batch-command/batch-test-command.ts +14 -0
  34. package/src/utils/build/place-recompression.test.ts +104 -0
  35. package/src/utils/build/place-recompression.ts +236 -0
  36. package/src/utils/job-context/batch-script-job-context.ts +140 -31
  37. package/src/utils/open-cloud/open-cloud-client.ts +58 -1
  38. package/src/utils/testing/batch-run.e2e.test.ts +93 -13
  39. package/src/utils/testing/runner/combined-project-generator.test.ts +30 -0
  40. package/src/utils/testing/runner/combined-project-generator.ts +198 -30
  41. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"batch-run.e2e.test.js","sourceRoot":"","sources":["../../../src/utils/testing/batch-run.e2e.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-run.e2e.test.js","sourceRoot":"","sources":["../../../src/utils/testing/batch-run.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,28 @@
1
1
  import { BuildContext } from '@quenty/nevermore-template-helpers';
2
2
  import { type DeployTarget } from '@quenty/nevermore-deploy';
3
3
  import { type BatchTarget } from '../../batch/changed-packages-utils.js';
4
- export interface CombinedProjectResult {
5
- /** Absolute path to the combined .rbxl file. */
4
+ /**
5
+ * Budget for one combined place, as uploaded (recompressed). Under the upload
6
+ * limit (`PLACE_UPLOAD_MAX_BYTES`), and under the 100 MB Roblox documents as
7
+ * supported, since split places run in parallel and cost little.
8
+ */
9
+ export declare const DEFAULT_MAX_CHUNK_BYTES: number;
10
+ /** One combined place: the packages that are uploaded and executed together. */
11
+ export interface CombinedPlaceChunk {
12
+ /** Absolute path to this chunk's combined .rbxl file. */
6
13
  rbxlPath: string;
7
- /** batchTarget.name → ServerScriptService slug mapping. */
14
+ /** batchTarget.name → ServerScriptService slug, for this chunk's packages only. */
15
+ slugMap: Map<string, string>;
16
+ /** Size on disk — recompressed whenever the batch has a size budget. */
17
+ sizeBytes: number;
18
+ }
19
+ export interface CombinedProjectResult {
20
+ /**
21
+ * The combined places, in package order. Usually one; more when even
22
+ * recompressed the packages together exceed the per-upload budget.
23
+ */
24
+ chunks: CombinedPlaceChunk[];
25
+ /** batchTarget.name → ServerScriptService slug mapping, across every chunk. */
8
26
  slugMap: Map<string, string>;
9
27
  /** First batch target's deploy target (provides placeId/universeId for upload). */
10
28
  primaryTarget: DeployTarget;
@@ -20,17 +38,27 @@ export interface CombinedBuildProgress {
20
38
  onStepProgress?(progress: StepProgress): void;
21
39
  }
22
40
  /**
23
- * Build a combined .rbxl containing all testable packages.
41
+ * Build combined .rbxl files containing all testable packages.
24
42
  *
25
43
  * Two-phase approach to avoid rojo's symlink deduplication:
26
44
  * Phase 1: Build each package's .rbxl individually via rojo
27
- * Phase 2: Use Lune to merge the individual builds into a single .rbxl
45
+ * Phase 2: Use Lune to merge the individual builds into one place, split
46
+ * into more only if it measures over `maxChunkBytes`
28
47
  */
29
48
  export declare function generateCombinedProjectAsync(options: {
30
49
  batchTargets: BatchTarget[];
31
50
  repoRoot: string;
32
51
  batchPlaceId?: number;
33
52
  batchUniverseId?: number;
53
+ maxChunkBytes?: number;
34
54
  progress?: CombinedBuildProgress;
35
55
  }): Promise<CombinedProjectResult>;
56
+ /**
57
+ * Split items, in order, into consecutive groups whose summed size stays within
58
+ * `maxBytes`. An item larger than the budget on its own gets a group to itself
59
+ * rather than being dropped — the upload is what reports it as too big.
60
+ */
61
+ export declare function partitionBySize<T>(items: T[], sizeOf: (item: T) => number, maxBytes: number): T[][];
62
+ /** In Roblox's MB, which are 1024 * 1024 bytes. */
63
+ export declare function formatMegabytes(bytes: number): string;
36
64
  //# sourceMappingURL=combined-project-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"combined-project-generator.d.ts","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EAEb,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,mFAAmF;IACnF,aAAa,EAAE,YAAY,CAAC;IAC5B,sFAAsF;IACtF,YAAY,EAAE,YAAY,CAAC;CAC5B;AAMD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE,8EAA8E;AAC9E,MAAM,WAAW,qBAAqB;IACpC,mBAAmB,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,sBAAsB,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB,cAAc,CAAC,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;CAC/C;AASD;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAC1D,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAyGjC"}
1
+ {"version":3,"file":"combined-project-generator.d.ts","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EAEb,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAGzE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AAExD,gFAAgF;AAChF,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,+EAA+E;IAC/E,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,mFAAmF;IACnF,aAAa,EAAE,YAAY,CAAC;IAC5B,sFAAsF;IACtF,YAAY,EAAE,YAAY,CAAC;CAC5B;AAMD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE,8EAA8E;AAC9E,MAAM,WAAW,qBAAqB;IACpC,mBAAmB,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,sBAAsB,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB,cAAc,CAAC,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;CAC/C;AAWD;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAC1D,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAsIjC;AA+ED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAC/B,KAAK,EAAE,CAAC,EAAE,EACV,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC3B,QAAQ,EAAE,MAAM,GACf,CAAC,EAAE,EAAE,CAqBP;AAED,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -2,15 +2,23 @@ import * as fs from 'fs/promises';
2
2
  import * as path from 'path';
3
3
  import { BuildContext, resolvePackagePath, } from '@quenty/nevermore-template-helpers';
4
4
  import { OutputHelper } from '@quenty/cli-output-helpers';
5
+ import { recompressPlace } from '../../build/place-recompression.js';
5
6
  /**
6
- * Build a combined .rbxl containing all testable packages.
7
+ * Budget for one combined place, as uploaded (recompressed). Under the upload
8
+ * limit (`PLACE_UPLOAD_MAX_BYTES`), and under the 100 MB Roblox documents as
9
+ * supported, since split places run in parallel and cost little.
10
+ */
11
+ export const DEFAULT_MAX_CHUNK_BYTES = 90 * 1024 * 1024;
12
+ /**
13
+ * Build combined .rbxl files containing all testable packages.
7
14
  *
8
15
  * Two-phase approach to avoid rojo's symlink deduplication:
9
16
  * Phase 1: Build each package's .rbxl individually via rojo
10
- * Phase 2: Use Lune to merge the individual builds into a single .rbxl
17
+ * Phase 2: Use Lune to merge the individual builds into one place, split
18
+ * into more only if it measures over `maxChunkBytes`
11
19
  */
12
20
  export async function generateCombinedProjectAsync(options) {
13
- const { batchTargets, batchPlaceId, batchUniverseId, progress } = options;
21
+ const { batchTargets, batchPlaceId, batchUniverseId, maxChunkBytes = DEFAULT_MAX_CHUNK_BYTES, progress, } = options;
14
22
  if (batchTargets.length === 0) {
15
23
  throw new Error('No batch targets provided for combined project generation');
16
24
  }
@@ -57,32 +65,121 @@ export async function generateCombinedProjectAsync(options) {
57
65
  throw new Error(`No scriptTemplate for ${buildTarget.name} — required for batch testing`);
58
66
  }
59
67
  const scriptPath = path.resolve(buildTarget.path, target.scriptTemplate);
60
- builds.push({ slug, rbxlPath, scriptPath });
68
+ const { size: sizeBytes } = await fs.stat(rbxlPath);
69
+ builds.push({
70
+ name: buildTarget.name,
71
+ slug,
72
+ rbxlPath,
73
+ scriptPath,
74
+ sizeBytes,
75
+ });
61
76
  }
62
77
  // ── Phase 2: Merge via Lune ──
63
- const combinedRbxlPath = buildContext.resolvePath('batch-test.rbxl');
64
78
  const luneScriptPath = resolvePackagePath(import.meta.url, 'build-scripts', 'combine-test-places.lua');
65
- // Build args: <outputPath> <slug1> <rbxl1> <script1> <slug2> <rbxl2> <script2> ...
66
- const luneArgs = [combinedRbxlPath];
67
- for (const build of builds) {
68
- luneArgs.push(build.slug, build.rbxlPath, build.scriptPath);
69
- }
70
- OutputHelper.verbose(`Merging ${builds.length} targets into combined .rbxl...`);
71
79
  progress?.onCombineStart?.();
72
- progress?.onStepProgress?.({
73
- kind: 'steps',
74
- completed: 0,
75
- total: builds.length,
76
- });
77
- await buildContext.executeLuneTransformScriptAsync(luneScriptPath, ...luneArgs);
78
- OutputHelper.verbose(`Combined ${slugMap.size} targets at ${combinedRbxlPath}`);
80
+ // One place first, split only if it measures over budget. Sizes do not add
81
+ // up: recompression dedupes the modules the packages share, so a merge of
82
+ // many packages costs little more than one, and only measuring it says so.
83
+ const totalBytes = builds.reduce((sum, b) => sum + b.sizeBytes, 0);
84
+ let groups = [builds];
85
+ let chunks;
86
+ for (;;) {
87
+ chunks = await _mergeGroupsAsync(buildContext, luneScriptPath, groups, Number.isFinite(maxChunkBytes), progress);
88
+ const largest = Math.max(...chunks.map((c) => c.sizeBytes));
89
+ if (largest <= maxChunkBytes || groups.length === builds.length) {
90
+ break;
91
+ }
92
+ const groupCount = Math.max(groups.length + 1, Math.ceil((groups.length * largest) / maxChunkBytes));
93
+ OutputHelper.info(`Combined place${groups.length === 1 ? ' is' : 's reach'} ` +
94
+ `${formatMegabytes(largest)}, over the ${formatMegabytes(maxChunkBytes)} per-upload budget — splitting ${builds.length} targets into ` +
95
+ `about ${groupCount} places.`);
96
+ groups = partitionBySize(builds, (b) => b.sizeBytes, totalBytes / groupCount);
97
+ }
79
98
  return {
80
- rbxlPath: combinedRbxlPath,
99
+ chunks,
81
100
  slugMap,
82
101
  primaryTarget,
83
102
  buildContext,
84
103
  };
85
104
  }
105
+ /**
106
+ * Merge each group into its own place, recompressed when it will be measured
107
+ * against a budget — which is also the form it is uploaded in, so the upload
108
+ * has nothing left to do.
109
+ */
110
+ async function _mergeGroupsAsync(buildContext, luneScriptPath, groups, recompress, progress) {
111
+ progress?.onStepProgress?.({
112
+ kind: 'steps',
113
+ completed: 0,
114
+ total: groups.length,
115
+ });
116
+ const chunks = [];
117
+ for (const [index, group] of groups.entries()) {
118
+ const combinedRbxlPath = buildContext.resolvePath(groups.length === 1 ? 'batch-test.rbxl' : `batch-test-${index + 1}.rbxl`);
119
+ // Build args: <outputPath> <slug1> <rbxl1> <script1> <slug2> <rbxl2> <script2> ...
120
+ const luneArgs = [combinedRbxlPath];
121
+ for (const build of group) {
122
+ luneArgs.push(build.slug, build.rbxlPath, build.scriptPath);
123
+ }
124
+ OutputHelper.verbose(`Merging ${group.length} targets into ${path.basename(combinedRbxlPath)}...`);
125
+ await buildContext.executeLuneTransformScriptAsync(luneScriptPath, ...luneArgs);
126
+ let sizeBytes;
127
+ if (recompress) {
128
+ const merged = await fs.readFile(combinedRbxlPath);
129
+ const result = recompressPlace(merged);
130
+ if (result.kind === 'recompressed') {
131
+ await fs.writeFile(combinedRbxlPath, result.data);
132
+ }
133
+ sizeBytes = result.data.length;
134
+ OutputHelper.verbose(`Combined ${group.length} targets at ${combinedRbxlPath} ` +
135
+ `(${formatMegabytes(merged.length)} as built, ` +
136
+ `${formatMegabytes(sizeBytes)} to upload)`);
137
+ }
138
+ else {
139
+ ({ size: sizeBytes } = await fs.stat(combinedRbxlPath));
140
+ OutputHelper.verbose(`Combined ${group.length} targets at ${combinedRbxlPath} (${formatMegabytes(sizeBytes)})`);
141
+ }
142
+ chunks.push({
143
+ rbxlPath: combinedRbxlPath,
144
+ slugMap: new Map(group.map((b) => [b.name, b.slug])),
145
+ sizeBytes,
146
+ });
147
+ progress?.onStepProgress?.({
148
+ kind: 'steps',
149
+ completed: index + 1,
150
+ total: groups.length,
151
+ });
152
+ }
153
+ return chunks;
154
+ }
155
+ /**
156
+ * Split items, in order, into consecutive groups whose summed size stays within
157
+ * `maxBytes`. An item larger than the budget on its own gets a group to itself
158
+ * rather than being dropped — the upload is what reports it as too big.
159
+ */
160
+ export function partitionBySize(items, sizeOf, maxBytes) {
161
+ const groups = [];
162
+ let current = [];
163
+ let currentBytes = 0;
164
+ for (const item of items) {
165
+ const size = sizeOf(item);
166
+ if (current.length > 0 && currentBytes + size > maxBytes) {
167
+ groups.push(current);
168
+ current = [];
169
+ currentBytes = 0;
170
+ }
171
+ current.push(item);
172
+ currentBytes += size;
173
+ }
174
+ if (current.length > 0) {
175
+ groups.push(current);
176
+ }
177
+ return groups;
178
+ }
179
+ /** In Roblox's MB, which are 1024 * 1024 bytes. */
180
+ export function formatMegabytes(bytes) {
181
+ return `${(bytes / 1024 / 1024).toFixed(1)} MB`;
182
+ }
86
183
  /**
87
184
  * Extract the slug from a test rojo project.
88
185
  * The slug is the first non-`$`, non-`Script` key under ServerScriptService.
@@ -1 +1 @@
1
- {"version":3,"file":"combined-project-generator.js","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"combined-project-generator.js","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=combined-project-generator.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combined-project-generator.test.d.ts","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { partitionBySize } from './combined-project-generator.js';
3
+ describe('partitionBySize', () => {
4
+ const identity = (n) => n;
5
+ it('keeps everything in one group when it fits', () => {
6
+ expect(partitionBySize([10, 20, 30], identity, 60)).toEqual([[10, 20, 30]]);
7
+ });
8
+ it('starts a new group, in order, before the budget would be exceeded', () => {
9
+ expect(partitionBySize([40, 30, 20, 50, 10], identity, 60)).toEqual([
10
+ [40],
11
+ [30, 20],
12
+ [50, 10],
13
+ ]);
14
+ });
15
+ it('gives an item over the budget a group of its own', () => {
16
+ expect(partitionBySize([10, 100, 10], identity, 60)).toEqual([
17
+ [10],
18
+ [100],
19
+ [10],
20
+ ]);
21
+ });
22
+ it('returns no groups for no items', () => {
23
+ expect(partitionBySize([], identity, 60)).toEqual([]);
24
+ });
25
+ });
26
+ //# sourceMappingURL=combined-project-generator.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combined-project-generator.test.js","sourceRoot":"","sources":["../../../../src/utils/testing/runner/combined-project-generator.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC;IAElC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAClE,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,EAAE,EAAE,CAAC;YACR,CAAC,EAAE,EAAE,EAAE,CAAC;SACT,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3D,CAAC,EAAE,CAAC;YACJ,CAAC,GAAG,CAAC;YACL,CAAC,EAAE,CAAC;SACL,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/nevermore-cli",
3
- "version": "4.48.0",
3
+ "version": "4.49.0",
4
4
  "description": "CLI interface for Nevermore",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -60,5 +60,5 @@
60
60
  "engines": {
61
61
  "node": ">=16"
62
62
  },
63
- "gitHead": "eefcb7e24fe7642e06e4ceed920aceecdad97cd1"
63
+ "gitHead": "7882030eae407981a58c0adb5fe107757e26103d"
64
64
  }
@@ -54,6 +54,7 @@ interface BatchTestArgs extends NevermoreGlobalArgs {
54
54
  aggregated?: boolean;
55
55
  batchPlaceId?: number;
56
56
  batchUniverseId?: number;
57
+ maxPlaceMb?: number;
57
58
  timeout?: number;
58
59
  }
59
60
 
@@ -118,6 +119,11 @@ export const batchTestCommand: CommandModule<
118
119
  'Override universeId for the aggregated batch upload (--aggregated only)',
119
120
  type: 'number',
120
121
  })
122
+ .option('max-place-mb', {
123
+ describe:
124
+ 'Size budget in MB for one combined place (--aggregated only). Larger batches are split into several places that run in parallel. Open Cloud rejects place uploads over 150 MB. (default: 90 with --cloud, unlimited locally)',
125
+ type: 'number',
126
+ })
121
127
  .option('timeout', {
122
128
  describe:
123
129
  'Max script execution time in seconds for the whole batch. Sent to the Open Cloud API so Roblox cancels server-side on overrun. Max 300s (API limit). (default: 300)',
@@ -270,6 +276,14 @@ async function _runAsync(args: BatchTestArgs): Promise<void> {
270
276
  batchPlaceId: args.batchPlaceId,
271
277
  batchUniverseId: args.batchUniverseId,
272
278
  batchTimeoutMs: timeoutMs,
279
+ // Only an upload is size-limited, so a local run stays one place
280
+ // unless asked to split.
281
+ maxChunkBytes:
282
+ args.maxPlaceMb !== undefined
283
+ ? args.maxPlaceMb * 1024 * 1024
284
+ : cloud
285
+ ? undefined
286
+ : Infinity,
273
287
  reporter,
274
288
  })
275
289
  : undefined;
@@ -0,0 +1,104 @@
1
+ import * as zlib from 'zlib';
2
+ import { describe, it, expect } from 'vitest';
3
+ import {
4
+ decompressLz4Block,
5
+ getZstdSupport,
6
+ recompressPlace,
7
+ } from './place-recompression.js';
8
+
9
+ const zstd = zlib as unknown as { zstdDecompressSync(b: Buffer): Buffer };
10
+
11
+ /** "abcd", then 8 bytes copied from 4 back (overlapping), then "xy". */
12
+ const LZ4_BLOCK = Buffer.concat([
13
+ Buffer.from([0x44]),
14
+ Buffer.from('abcd'),
15
+ Buffer.from([0x04, 0x00]),
16
+ Buffer.from([0x20]),
17
+ Buffer.from('xy'),
18
+ ]);
19
+ const LZ4_DECODED = 'abcdabcdabcdxy';
20
+
21
+ function chunk(
22
+ name: string,
23
+ payload: Buffer,
24
+ uncompressedLength: number,
25
+ compressed: boolean
26
+ ) {
27
+ const header = Buffer.alloc(16);
28
+ header.write(name, 0, 'latin1');
29
+ header.writeUInt32LE(compressed ? payload.length : 0, 4);
30
+ header.writeUInt32LE(uncompressedLength, 8);
31
+ return Buffer.concat([header, payload]);
32
+ }
33
+
34
+ function place(...chunks: Buffer[]) {
35
+ const header = Buffer.alloc(32);
36
+ header.write('<roblox!', 0, 'latin1');
37
+ return Buffer.concat([header, ...chunks]);
38
+ }
39
+
40
+ const END = chunk('END\0', Buffer.from('</roblox>'), 9, false);
41
+
42
+ describe('decompressLz4Block', () => {
43
+ it('decodes literals and an overlapping match', () => {
44
+ expect(decompressLz4Block(LZ4_BLOCK, LZ4_DECODED.length).toString()).toBe(
45
+ LZ4_DECODED
46
+ );
47
+ });
48
+
49
+ it('rejects a block that decodes to the wrong length', () => {
50
+ expect(() => decompressLz4Block(LZ4_BLOCK, LZ4_DECODED.length + 1)).toThrow(
51
+ /expected/
52
+ );
53
+ });
54
+
55
+ it('rejects a match reaching before the start of the output', () => {
56
+ const bad = Buffer.from([0x14, 0x61, 0x09, 0x00, 0x00]);
57
+ expect(() => decompressLz4Block(bad, 13)).toThrow(/offset/);
58
+ });
59
+ });
60
+
61
+ describe.runIf(getZstdSupport().supported)('recompressPlace', () => {
62
+ it('rewrites LZ4 chunks as zstd holding the same bytes, and keeps the rest', () => {
63
+ const original = place(
64
+ chunk('PROP', LZ4_BLOCK, LZ4_DECODED.length, true),
65
+ END
66
+ );
67
+
68
+ const result = recompressPlace(original);
69
+ expect(result.kind).toBe('recompressed');
70
+
71
+ const data = result.data;
72
+ expect(data.subarray(0, 32)).toEqual(original.subarray(0, 32));
73
+ expect(data.toString('latin1', 32, 36)).toBe('PROP');
74
+
75
+ const compressedLength = data.readUInt32LE(36);
76
+ expect(data.readUInt32LE(40)).toBe(LZ4_DECODED.length);
77
+ const payload = data.subarray(48, 48 + compressedLength);
78
+ expect(payload.readUInt32LE(0)).toBe(0xfd2fb528);
79
+ expect(zstd.zstdDecompressSync(payload).toString()).toBe(LZ4_DECODED);
80
+
81
+ // END is uncompressed, so it comes through untouched.
82
+ expect(data.subarray(48 + compressedLength)).toEqual(END);
83
+ });
84
+
85
+ it('leaves a place with nothing left to recompress alone', () => {
86
+ const once = recompressPlace(
87
+ place(chunk('PROP', LZ4_BLOCK, LZ4_DECODED.length, true), END)
88
+ ).data;
89
+
90
+ expect(recompressPlace(once)).toEqual({ kind: 'unchanged', data: once });
91
+ });
92
+
93
+ it('leaves files that are not binary places alone', () => {
94
+ const xml = Buffer.from('<roblox version="4"></roblox>');
95
+ expect(recompressPlace(xml)).toEqual({ kind: 'unchanged', data: xml });
96
+ });
97
+
98
+ it('refuses a truncated place rather than uploading part of it', () => {
99
+ const truncated = place(
100
+ chunk('PROP', LZ4_BLOCK, LZ4_DECODED.length, true)
101
+ ).subarray(0, 40);
102
+ expect(() => recompressPlace(truncated)).toThrow(/truncated/);
103
+ });
104
+ });