bitfab 0.62.7 → 0.63.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.
- package/dist/autoTrace.cjs.map +1 -1
- package/dist/autoTrace.js +2 -2
- package/dist/{chunk-DAHOCXKQ.js → chunk-GNDDPHTZ.js} +24 -7
- package/dist/chunk-GNDDPHTZ.js.map +1 -0
- package/dist/{chunk-S2YDBMPJ.js → chunk-KI2TAU36.js} +8 -8
- package/dist/{chunk-S2YDBMPJ.js.map → chunk-KI2TAU36.js.map} +1 -1
- package/dist/{chunk-BAOIRE5T.js → chunk-MT36GJMW.js} +13 -2
- package/dist/{chunk-BAOIRE5T.js.map → chunk-MT36GJMW.js.map} +1 -1
- package/dist/{chunk-ACULRSMF.js → chunk-NUMYG5MD.js} +5 -5
- package/dist/{chunk-ACULRSMF.js.map → chunk-NUMYG5MD.js.map} +1 -1
- package/dist/{chunk-U6S5C7WE.js → chunk-TTWRFQPU.js} +22 -25
- package/dist/chunk-TTWRFQPU.js.map +1 -0
- package/dist/{chunk-ALEQLDHW.js → chunk-VLBEFEIP.js} +15 -4
- package/dist/chunk-VLBEFEIP.js.map +1 -0
- package/dist/{chunk-K4XCWQBC.js → chunk-YWXQM6J3.js} +2 -2
- package/dist/{http-M63AQ3XH.js → http-EVUZHBV4.js} +2 -2
- package/dist/{http-7Z2B7R4F.js → http-N3TK6ASX.js} +3 -3
- package/dist/index.cjs +34 -27
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -7
- package/dist/index.d.ts +3 -7
- package/dist/index.js +5 -5
- package/dist/node.cjs +34 -27
- package/dist/node.cjs.map +1 -1
- package/dist/node.js +5 -5
- package/dist/{replay-E4YOU476.js → replay-ZH6CNI22.js} +10 -6
- package/dist/replayCli.js +2 -2
- package/dist/seedCli.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-ALEQLDHW.js.map +0 -1
- package/dist/chunk-DAHOCXKQ.js.map +0 -1
- package/dist/chunk-U6S5C7WE.js.map +0 -1
- /package/dist/{chunk-K4XCWQBC.js.map → chunk-YWXQM6J3.js.map} +0 -0
- /package/dist/{http-7Z2B7R4F.js.map → http-EVUZHBV4.js.map} +0 -0
- /package/dist/{http-M63AQ3XH.js.map → http-N3TK6ASX.js.map} +0 -0
- /package/dist/{replay-E4YOU476.js.map → replay-ZH6CNI22.js.map} +0 -0
package/dist/index.cjs
CHANGED
|
@@ -51,7 +51,7 @@ var __version__, __packageName__;
|
|
|
51
51
|
var init_version_generated = __esm({
|
|
52
52
|
"src/version.generated.ts"() {
|
|
53
53
|
"use strict";
|
|
54
|
-
__version__ = "0.
|
|
54
|
+
__version__ = "0.63.0";
|
|
55
55
|
__packageName__ = "bitfab";
|
|
56
56
|
}
|
|
57
57
|
});
|
|
@@ -722,6 +722,16 @@ function warnOnce(key, message) {
|
|
|
722
722
|
warned.add(key);
|
|
723
723
|
warn(message);
|
|
724
724
|
}
|
|
725
|
+
function writeOnce(key, line, write = console.warn) {
|
|
726
|
+
if (warned.has(key)) {
|
|
727
|
+
return;
|
|
728
|
+
}
|
|
729
|
+
warned.add(key);
|
|
730
|
+
try {
|
|
731
|
+
write(line);
|
|
732
|
+
} catch {
|
|
733
|
+
}
|
|
734
|
+
}
|
|
725
735
|
var warned;
|
|
726
736
|
var init_warnOnce = __esm({
|
|
727
737
|
"src/warnOnce.ts"() {
|
|
@@ -2894,7 +2904,7 @@ var init_http = __esm({
|
|
|
2894
2904
|
* Start a replay session by fetching historical traces.
|
|
2895
2905
|
* Blocking call - creates an experiment and returns lightweight item references.
|
|
2896
2906
|
*/
|
|
2897
|
-
async startReplay(traceFunctionKey, limit, traceIds, name, codeChangeDescription, codeChangeFiles, includeDbBranchLease, experimentGroupId, datasetIds, graderIds, dbBranchSettings, attempts, includeOriginalMetadata, onlyWithAssertions,
|
|
2907
|
+
async startReplay(traceFunctionKey, limit, traceIds, name, codeChangeDescription, codeChangeFiles, includeDbBranchLease, experimentGroupId, datasetIds, graderIds, dbBranchSettings, attempts, includeOriginalMetadata, onlyWithAssertions, skipAssertionJudging, experimentalSelectiveReplay, notes, metadata) {
|
|
2898
2908
|
const payload = { traceFunctionKey };
|
|
2899
2909
|
if (experimentalSelectiveReplay !== void 0) {
|
|
2900
2910
|
payload.experimentalSelectiveReplay = experimentalSelectiveReplay;
|
|
@@ -2949,7 +2959,7 @@ var init_http = __esm({
|
|
|
2949
2959
|
if (onlyWithAssertions) {
|
|
2950
2960
|
payload.onlyWithAssertions = true;
|
|
2951
2961
|
}
|
|
2952
|
-
if (
|
|
2962
|
+
if (skipAssertionJudging !== true) {
|
|
2953
2963
|
payload.judgeAssertions = true;
|
|
2954
2964
|
}
|
|
2955
2965
|
const git = await resolvedGitState();
|
|
@@ -3456,7 +3466,7 @@ async function captureCodeChangeFromGit(cwd, label) {
|
|
|
3456
3466
|
if (!resolved2) {
|
|
3457
3467
|
return null;
|
|
3458
3468
|
}
|
|
3459
|
-
const { base,
|
|
3469
|
+
const { base, against } = resolved2;
|
|
3460
3470
|
const blobBytes = async (ref2, path) => {
|
|
3461
3471
|
const out = await git(root, ["cat-file", "-s", `${ref2}:${path}`]);
|
|
3462
3472
|
const n = out ? Number.parseInt(out.trim(), 10) : Number.NaN;
|
|
@@ -3524,7 +3534,6 @@ async function captureCodeChangeFromGit(cwd, label) {
|
|
|
3524
3534
|
const subject = (await git(root, ["log", "-1", "--format=%s", "HEAD"]))?.trim();
|
|
3525
3535
|
const fileWord = files.length === 1 ? "file" : "files";
|
|
3526
3536
|
const head = label?.trim() || subject || "Working-tree change";
|
|
3527
|
-
const against = fromTrunk ? "vs trunk" : "uncommitted (vs HEAD)";
|
|
3528
3537
|
return {
|
|
3529
3538
|
description: `${head} (${files.length} ${fileWord} changed ${against})`,
|
|
3530
3539
|
files
|
|
@@ -3537,18 +3546,9 @@ async function resolveBase(git, root) {
|
|
|
3537
3546
|
const forced = process.env?.BITFAB_CODE_CHANGE_BASE;
|
|
3538
3547
|
if (forced && await refExists(git, root, forced)) {
|
|
3539
3548
|
const base = (await git(root, ["merge-base", "HEAD", forced]))?.trim() || (await git(root, ["rev-parse", "--verify", forced]))?.trim() || null;
|
|
3540
|
-
return base ? { base,
|
|
3549
|
+
return base ? { base, against: `vs ${forced}` } : null;
|
|
3541
3550
|
}
|
|
3542
|
-
|
|
3543
|
-
if (!await refExists(git, root, candidate)) {
|
|
3544
|
-
continue;
|
|
3545
|
-
}
|
|
3546
|
-
const mb = (await git(root, ["merge-base", "HEAD", candidate]))?.trim();
|
|
3547
|
-
if (mb) {
|
|
3548
|
-
return { base: mb, fromTrunk: true };
|
|
3549
|
-
}
|
|
3550
|
-
}
|
|
3551
|
-
return await refExists(git, root, "HEAD") ? { base: "HEAD", fromTrunk: false } : null;
|
|
3551
|
+
return await refExists(git, root, "HEAD") ? { base: "HEAD", against: "uncommitted (vs HEAD)" } : null;
|
|
3552
3552
|
}
|
|
3553
3553
|
async function refExists(git, root, ref2) {
|
|
3554
3554
|
return await git(root, ["rev-parse", "--verify", `${ref2}^{object}`]) !== null;
|
|
@@ -3582,7 +3582,7 @@ function parseNameStatusZ(raw) {
|
|
|
3582
3582
|
function looksBinary(s) {
|
|
3583
3583
|
return s.slice(0, 8e3).includes(NUL);
|
|
3584
3584
|
}
|
|
3585
|
-
var MAX_FILES, MAX_FILE_BYTES, MAX_TOTAL_BYTES,
|
|
3585
|
+
var MAX_FILES, MAX_FILE_BYTES, MAX_TOTAL_BYTES, NUL;
|
|
3586
3586
|
var init_codeChange = __esm({
|
|
3587
3587
|
"src/codeChange.ts"() {
|
|
3588
3588
|
"use strict";
|
|
@@ -3590,13 +3590,6 @@ var init_codeChange = __esm({
|
|
|
3590
3590
|
MAX_FILES = 60;
|
|
3591
3591
|
MAX_FILE_BYTES = 5e5;
|
|
3592
3592
|
MAX_TOTAL_BYTES = 2e6;
|
|
3593
|
-
TRUNK_CANDIDATES = [
|
|
3594
|
-
"origin/HEAD",
|
|
3595
|
-
"origin/main",
|
|
3596
|
-
"origin/master",
|
|
3597
|
-
"main",
|
|
3598
|
-
"master"
|
|
3599
|
-
];
|
|
3600
3593
|
NUL = String.fromCharCode(0);
|
|
3601
3594
|
}
|
|
3602
3595
|
});
|
|
@@ -4051,13 +4044,15 @@ var replay_exports = {};
|
|
|
4051
4044
|
__export(replay_exports, {
|
|
4052
4045
|
BITFAB_PROGRESS_PREFIX: () => BITFAB_PROGRESS_PREFIX,
|
|
4053
4046
|
DbBranchReplayError: () => DbBranchReplayError,
|
|
4047
|
+
JUDGE_ASSERTIONS_DEPRECATION_WARNING: () => JUDGE_ASSERTIONS_DEPRECATION_WARNING,
|
|
4054
4048
|
ReplayError: () => ReplayError,
|
|
4055
4049
|
deserializeInputs: () => deserializeInputs,
|
|
4056
4050
|
replay: () => replay,
|
|
4057
4051
|
reportReplayProgress: () => reportReplayProgress,
|
|
4058
4052
|
serializeReplayResult: () => serializeReplayResult,
|
|
4059
4053
|
sleepForReplayPersistence: () => sleepForReplayPersistence,
|
|
4060
|
-
waitForReplayPersistence: () => waitForReplayPersistence
|
|
4054
|
+
waitForReplayPersistence: () => waitForReplayPersistence,
|
|
4055
|
+
warnJudgeAssertionsDeprecated: () => warnJudgeAssertionsDeprecated
|
|
4061
4056
|
});
|
|
4062
4057
|
function expandReplayWork(serverItems, attempts) {
|
|
4063
4058
|
return Array.from(
|
|
@@ -4608,7 +4603,17 @@ async function mapWithConcurrency2(tasks, maxConcurrency, onSettled, onStarted,
|
|
|
4608
4603
|
await Promise.all(workers);
|
|
4609
4604
|
return results.slice(0, nextIndex);
|
|
4610
4605
|
}
|
|
4606
|
+
function warnJudgeAssertionsDeprecated(write = console.warn) {
|
|
4607
|
+
writeOnce(
|
|
4608
|
+
"judgeAssertions-deprecated",
|
|
4609
|
+
JUDGE_ASSERTIONS_DEPRECATION_WARNING,
|
|
4610
|
+
write
|
|
4611
|
+
);
|
|
4612
|
+
}
|
|
4611
4613
|
async function replay(httpClient, serviceUrl, traceFunctionKey, fn, options, registeredOverrides = []) {
|
|
4614
|
+
if (options?.judgeAssertions !== void 0) {
|
|
4615
|
+
warnJudgeAssertionsDeprecated();
|
|
4616
|
+
}
|
|
4612
4617
|
if (options?.resume !== void 0) {
|
|
4613
4618
|
validateResume(options.resume, options);
|
|
4614
4619
|
} else if (options?.force === true) {
|
|
@@ -4685,7 +4690,7 @@ async function replay(httpClient, serviceUrl, traceFunctionKey, fn, options, reg
|
|
|
4685
4690
|
requestedAttempts,
|
|
4686
4691
|
options?.adaptInputs !== void 0,
|
|
4687
4692
|
options?.onlyWithAssertions,
|
|
4688
|
-
options?.judgeAssertions,
|
|
4693
|
+
options?.skipAssertionJudging === true || options?.judgeAssertions === false,
|
|
4689
4694
|
options?.experimentalSelectiveReplay,
|
|
4690
4695
|
options?.notes,
|
|
4691
4696
|
options?.metadata
|
|
@@ -5060,7 +5065,7 @@ async function writeReplayResultFile(result) {
|
|
|
5060
5065
|
}
|
|
5061
5066
|
}
|
|
5062
5067
|
}
|
|
5063
|
-
var REPLAY_PERSISTENCE_TIMEOUT_MS, MAX_REPLAY_ATTEMPTS, RESUME_CONFLICTING_OPTIONS, CARRIED_OVER_ERROR, BITFAB_PROGRESS_PREFIX, ReplayError, DbBranchReplayError;
|
|
5068
|
+
var REPLAY_PERSISTENCE_TIMEOUT_MS, MAX_REPLAY_ATTEMPTS, RESUME_CONFLICTING_OPTIONS, CARRIED_OVER_ERROR, BITFAB_PROGRESS_PREFIX, ReplayError, DbBranchReplayError, JUDGE_ASSERTIONS_DEPRECATION_WARNING;
|
|
5064
5069
|
var init_replay = __esm({
|
|
5065
5070
|
"src/replay.ts"() {
|
|
5066
5071
|
"use strict";
|
|
@@ -5075,6 +5080,7 @@ var init_replay = __esm({
|
|
|
5075
5080
|
init_replayInterrupt();
|
|
5076
5081
|
init_selectiveReplayRuntime();
|
|
5077
5082
|
init_serialize();
|
|
5083
|
+
init_warnOnce();
|
|
5078
5084
|
REPLAY_PERSISTENCE_TIMEOUT_MS = 3e4;
|
|
5079
5085
|
MAX_REPLAY_ATTEMPTS = 100;
|
|
5080
5086
|
RESUME_CONFLICTING_OPTIONS = [
|
|
@@ -5111,6 +5117,7 @@ var init_replay = __esm({
|
|
|
5111
5117
|
this.name = "DbBranchReplayError";
|
|
5112
5118
|
}
|
|
5113
5119
|
};
|
|
5120
|
+
JUDGE_ASSERTIONS_DEPRECATION_WARNING = "Bitfab: judgeAssertions is deprecated. Assertion judging is on by default; pass skipAssertionJudging: true (--skip-assertion-judging) to turn it off.";
|
|
5114
5121
|
}
|
|
5115
5122
|
});
|
|
5116
5123
|
|