@scolladon/tsgit 1.2.0 → 1.3.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.
@@ -13,6 +13,18 @@ interface Blob {
13
13
  readonly content: Uint8Array;
14
14
  }
15
15
 
16
+ /**
17
+ * Commit serializer. Produces the canonical Git commit-object payload
18
+ * (`tree <sha>\nparent <sha>*\nauthor …\ncommitter …\n\n<message>`) that
19
+ * sits inside a loose commit object. SHA equality is the contract;
20
+ * disk-bytes vary by zlib compression level (loose object caveat).
21
+ *
22
+ * @writes
23
+ * surface: commit
24
+ * kind: equivalent-under-readback
25
+ * format: git-commit-object
26
+ */
27
+
16
28
  interface ExtraHeader {
17
29
  readonly key: string;
18
30
  readonly value: string;
@@ -43,6 +55,17 @@ type FileMode = (typeof FILE_MODE)[keyof typeof FILE_MODE];
43
55
 
44
56
  type ObjectType = 'blob' | 'tree' | 'commit' | 'tag';
45
57
 
58
+ /**
59
+ * Tag serializer. Produces the canonical annotated-tag payload
60
+ * (`object <sha>\ntype <type>\ntag <name>\ntagger …\n\n<message>`) inside a
61
+ * loose tag object.
62
+ *
63
+ * @writes
64
+ * surface: tag
65
+ * kind: equivalent-under-readback
66
+ * format: git-tag-object
67
+ */
68
+
46
69
  interface TagData {
47
70
  readonly object: ObjectId;
48
71
  readonly objectType: ObjectType;
@@ -13,6 +13,18 @@ interface Blob {
13
13
  readonly content: Uint8Array;
14
14
  }
15
15
 
16
+ /**
17
+ * Commit serializer. Produces the canonical Git commit-object payload
18
+ * (`tree <sha>\nparent <sha>*\nauthor …\ncommitter …\n\n<message>`) that
19
+ * sits inside a loose commit object. SHA equality is the contract;
20
+ * disk-bytes vary by zlib compression level (loose object caveat).
21
+ *
22
+ * @writes
23
+ * surface: commit
24
+ * kind: equivalent-under-readback
25
+ * format: git-commit-object
26
+ */
27
+
16
28
  interface ExtraHeader {
17
29
  readonly key: string;
18
30
  readonly value: string;
@@ -43,6 +55,17 @@ type FileMode = (typeof FILE_MODE)[keyof typeof FILE_MODE];
43
55
 
44
56
  type ObjectType = 'blob' | 'tree' | 'commit' | 'tag';
45
57
 
58
+ /**
59
+ * Tag serializer. Produces the canonical annotated-tag payload
60
+ * (`object <sha>\ntype <type>\ntag <name>\ntagger …\n\n<message>`) inside a
61
+ * loose tag object.
62
+ *
63
+ * @writes
64
+ * surface: tag
65
+ * kind: equivalent-under-readback
66
+ * format: git-tag-object
67
+ */
68
+
46
69
  interface TagData {
47
70
  readonly object: ObjectId;
48
71
  readonly objectType: ObjectType;
@@ -1,6 +1,6 @@
1
1
  import { add, branch, catFile, checkout, clone, commit, diff, fetch, fetchMissing, init, log, merge, push, reflog, reset, revParse, rm, sparseCheckout, status, submodules, tag } from '../commands/index.cjs';
2
2
  import { f as FileSystem, H as HashService, C as Compressor, n as RepositoryConfig, L as Logger, P as ProgressReporter, k as HookRunner, b as Context } from './context-CMrHCVwK.cjs';
3
- import { c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from './write-tree-B8G6kgTy.cjs';
3
+ import { c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from './write-tree-CuhpWKFo.cjs';
4
4
  import { b as HttpTransport } from './http-transport-DirKfK2S.cjs';
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { add, branch, catFile, checkout, clone, commit, diff, fetch, fetchMissing, init, log, merge, push, reflog, reset, revParse, rm, sparseCheckout, status, submodules, tag } from '../commands/index.js';
2
2
  import { f as FileSystem, H as HashService, C as Compressor, n as RepositoryConfig, L as Logger, P as ProgressReporter, k as HookRunner, b as Context } from './context-BORy7yXb.js';
3
- import { c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from './write-tree-BXCDChvv.js';
3
+ import { c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from './write-tree-Dn1LtIh7.js';
4
4
  import { b as HttpTransport } from './http-transport-DirKfK2S.js';
5
5
 
6
6
  /**
@@ -1,5 +1,5 @@
1
1
  import { O as ObjectId, d as FilePath, b as Context, R as RefName, h as HookName } from './context-CMrHCVwK.cjs';
2
- import { F as FileMode, a as CatFileBatchOptions, C as CatFileBatchEntry, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, s as TreeDiff, R as ReadObjectOptions, B as Blob, G as GitObject, T as Tree, r as ResolveRefOptions, U as UpdateRefOptions, W as WalkCommitsOptions, b as Commit, v as WalkSubmodulesOptions, S as SubmoduleEntry, x as WalkTreeOptions, w as WalkTreeEntry, z as WalkWorkingTreeOptions, y as WalkWorkingTreeEntry, t as TreeEntry } from './reflog-entry-BIf-zt__.cjs';
2
+ import { F as FileMode, a as CatFileBatchOptions, C as CatFileBatchEntry, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, s as TreeDiff, R as ReadObjectOptions, B as Blob, G as GitObject, T as Tree, r as ResolveRefOptions, U as UpdateRefOptions, W as WalkCommitsOptions, b as Commit, v as WalkSubmodulesOptions, S as SubmoduleEntry, x as WalkTreeOptions, w as WalkTreeEntry, z as WalkWorkingTreeOptions, y as WalkWorkingTreeEntry, t as TreeEntry } from './reflog-entry-DNvSz7S5.cjs';
3
3
 
4
4
  interface IndexEntryFlags {
5
5
  readonly assumeValid: boolean;
@@ -137,6 +137,16 @@ declare function walkWorkingTree(ctx: Context, options?: WalkWorkingTreeOptions)
137
137
 
138
138
  declare function writeObject(ctx: Context, object: GitObject): Promise<ObjectId>;
139
139
 
140
+ /**
141
+ * Symbolic-ref writer. Produces `ref: <target>\n` files (HEAD and friends).
142
+ * Used by `init`/`clone`/branch-rename to set the initial HEAD pointer.
143
+ *
144
+ * @writes
145
+ * surface: symbolicRef
146
+ * kind: byte-identical
147
+ * format: git-symbolic-ref
148
+ */
149
+
140
150
  /**
141
151
  * Write a symbolic ref atomically. Used for HEAD updates that point at a
142
152
  * branch, branch renames affecting the current HEAD, and `clone`/`init`
@@ -1,5 +1,5 @@
1
1
  import { O as ObjectId, d as FilePath, b as Context, R as RefName, h as HookName } from './context-BORy7yXb.js';
2
- import { F as FileMode, a as CatFileBatchOptions, C as CatFileBatchEntry, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, s as TreeDiff, R as ReadObjectOptions, B as Blob, G as GitObject, T as Tree, r as ResolveRefOptions, U as UpdateRefOptions, W as WalkCommitsOptions, b as Commit, v as WalkSubmodulesOptions, S as SubmoduleEntry, x as WalkTreeOptions, w as WalkTreeEntry, z as WalkWorkingTreeOptions, y as WalkWorkingTreeEntry, t as TreeEntry } from './reflog-entry-D9P2hCgv.js';
2
+ import { F as FileMode, a as CatFileBatchOptions, C as CatFileBatchEntry, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, s as TreeDiff, R as ReadObjectOptions, B as Blob, G as GitObject, T as Tree, r as ResolveRefOptions, U as UpdateRefOptions, W as WalkCommitsOptions, b as Commit, v as WalkSubmodulesOptions, S as SubmoduleEntry, x as WalkTreeOptions, w as WalkTreeEntry, z as WalkWorkingTreeOptions, y as WalkWorkingTreeEntry, t as TreeEntry } from './reflog-entry-C2Hsdobk.js';
3
3
 
4
4
  interface IndexEntryFlags {
5
5
  readonly assumeValid: boolean;
@@ -137,6 +137,16 @@ declare function walkWorkingTree(ctx: Context, options?: WalkWorkingTreeOptions)
137
137
 
138
138
  declare function writeObject(ctx: Context, object: GitObject): Promise<ObjectId>;
139
139
 
140
+ /**
141
+ * Symbolic-ref writer. Produces `ref: <target>\n` files (HEAD and friends).
142
+ * Used by `init`/`clone`/branch-rename to set the initial HEAD pointer.
143
+ *
144
+ * @writes
145
+ * surface: symbolicRef
146
+ * kind: byte-identical
147
+ * format: git-symbolic-ref
148
+ */
149
+
140
150
  /**
141
151
  * Write a symbolic ref atomically. Used for HEAD updates that point at a
142
152
  * branch, branch renames affecting the current HEAD, and `clone`/`init`
@@ -1,5 +1,5 @@
1
1
  import { d as FilePath, b as Context, R as RefName, O as ObjectId, m as PromisorRemote } from '../chunks/context-CMrHCVwK.cjs';
2
- import { C as CatFileBatchEntry, A as AuthorIdentity, s as TreeDiff, q as ReflogEntry, S as SubmoduleEntry } from '../chunks/reflog-entry-BIf-zt__.cjs';
2
+ import { C as CatFileBatchEntry, A as AuthorIdentity, s as TreeDiff, q as ReflogEntry, S as SubmoduleEntry } from '../chunks/reflog-entry-DNvSz7S5.cjs';
3
3
  import '../chunks/http-transport-DirKfK2S.cjs';
4
4
 
5
5
  interface AddOptions {
@@ -1,5 +1,5 @@
1
1
  import { d as FilePath, b as Context, R as RefName, O as ObjectId, m as PromisorRemote } from '../chunks/context-BORy7yXb.js';
2
- import { C as CatFileBatchEntry, A as AuthorIdentity, s as TreeDiff, q as ReflogEntry, S as SubmoduleEntry } from '../chunks/reflog-entry-D9P2hCgv.js';
2
+ import { C as CatFileBatchEntry, A as AuthorIdentity, s as TreeDiff, q as ReflogEntry, S as SubmoduleEntry } from '../chunks/reflog-entry-C2Hsdobk.js';
3
3
  import '../chunks/http-transport-DirKfK2S.js';
4
4
 
5
5
  interface AddOptions {
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BqibvTOu.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DCR_3RVt.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
3
  export { P as ProgressReporter } from './chunks/context-CMrHCVwK.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/reflog-entry-BIf-zt__.cjs';
6
- import './chunks/write-tree-B8G6kgTy.cjs';
5
+ import './chunks/reflog-entry-DNvSz7S5.cjs';
6
+ import './chunks/write-tree-CuhpWKFo.cjs';
7
7
  import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-C4rN09Am.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DFxFeYi3.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
3
  export { P as ProgressReporter } from './chunks/context-BORy7yXb.js';
4
4
  import './commands/index.js';
5
- import './chunks/reflog-entry-D9P2hCgv.js';
6
- import './chunks/write-tree-BXCDChvv.js';
5
+ import './chunks/reflog-entry-C2Hsdobk.js';
6
+ import './chunks/write-tree-Dn1LtIh7.js';
7
7
  import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
@@ -3,7 +3,7 @@ export { A as AuthStrategy, a as AuthorIdentity, b as Context, c as CreateContex
3
3
  import { b as HttpTransport } from './chunks/http-transport-DirKfK2S.cjs';
4
4
  export { H as HttpRequest, a as HttpResponse } from './chunks/http-transport-DirKfK2S.cjs';
5
5
  export { AddOptions, AddResult, BranchAction, BranchInfo, BranchResult, CatFileInput, CatFileResult, ChangeEntry, ChangeKind, CheckoutOptions, CheckoutResult, CloneOptions, CloneResult, CommitOptions, CommitResult, DiffOptions, FetchMissingOptions, FetchMissingResult, FetchOptions, FetchResult, InitOptions, InitResult, LogEntry, LogOptions, MergeOptions, MergeResult, PushOptions, PushResult, ReflogAction, ReflogResult, ReflogShowEntry, ResetMode, ResetOptions, ResetResult, RmOptions, RmResult, SparseCheckoutAction, SparseCheckoutResult, StatusResult, SubmodulesAction, SubmodulesResult, TagAction, TagInfo, TagResult, add, branch, catFile, checkout, clone, commit, createPromisorRemote, diff, fetch, fetchMissing, init, log, merge, push, reflog, reset, revParse, rm, sparseCheckout, status, submodules, tag } from './commands/index.cjs';
6
- export { C as CatFileBatchEntry, S as SubmoduleEntry } from './chunks/reflog-entry-BIf-zt__.cjs';
6
+ export { C as CatFileBatchEntry, S as SubmoduleEntry } from './chunks/reflog-entry-DNvSz7S5.cjs';
7
7
 
8
8
  /**
9
9
  * The four adapter ports the facade plumbs into the Context. Each runtime
@@ -3,7 +3,7 @@ export { A as AuthStrategy, a as AuthorIdentity, b as Context, c as CreateContex
3
3
  import { b as HttpTransport } from './chunks/http-transport-DirKfK2S.js';
4
4
  export { H as HttpRequest, a as HttpResponse } from './chunks/http-transport-DirKfK2S.js';
5
5
  export { AddOptions, AddResult, BranchAction, BranchInfo, BranchResult, CatFileInput, CatFileResult, ChangeEntry, ChangeKind, CheckoutOptions, CheckoutResult, CloneOptions, CloneResult, CommitOptions, CommitResult, DiffOptions, FetchMissingOptions, FetchMissingResult, FetchOptions, FetchResult, InitOptions, InitResult, LogEntry, LogOptions, MergeOptions, MergeResult, PushOptions, PushResult, ReflogAction, ReflogResult, ReflogShowEntry, ResetMode, ResetOptions, ResetResult, RmOptions, RmResult, SparseCheckoutAction, SparseCheckoutResult, StatusResult, SubmodulesAction, SubmodulesResult, TagAction, TagInfo, TagResult, add, branch, catFile, checkout, clone, commit, createPromisorRemote, diff, fetch, fetchMissing, init, log, merge, push, reflog, reset, revParse, rm, sparseCheckout, status, submodules, tag } from './commands/index.js';
6
- export { C as CatFileBatchEntry, S as SubmoduleEntry } from './chunks/reflog-entry-D9P2hCgv.js';
6
+ export { C as CatFileBatchEntry, S as SubmoduleEntry } from './chunks/reflog-entry-C2Hsdobk.js';
7
7
 
8
8
  /**
9
9
  * The four adapter ports the facade plumbs into the Context. Each runtime
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BqibvTOu.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DCR_3RVt.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
3
  export { P as ProgressReporter } from './chunks/context-CMrHCVwK.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/reflog-entry-BIf-zt__.cjs';
6
- import './chunks/write-tree-B8G6kgTy.cjs';
5
+ import './chunks/reflog-entry-DNvSz7S5.cjs';
6
+ import './chunks/write-tree-CuhpWKFo.cjs';
7
7
  import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-C4rN09Am.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DFxFeYi3.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
3
  export { P as ProgressReporter } from './chunks/context-BORy7yXb.js';
4
4
  import './commands/index.js';
5
- import './chunks/reflog-entry-D9P2hCgv.js';
6
- import './chunks/write-tree-BXCDChvv.js';
5
+ import './chunks/reflog-entry-C2Hsdobk.js';
6
+ import './chunks/write-tree-Dn1LtIh7.js';
7
7
  import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BqibvTOu.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DCR_3RVt.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
3
  export { P as ProgressReporter } from './chunks/context-CMrHCVwK.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/reflog-entry-BIf-zt__.cjs';
6
- import './chunks/write-tree-B8G6kgTy.cjs';
5
+ import './chunks/reflog-entry-DNvSz7S5.cjs';
6
+ import './chunks/write-tree-CuhpWKFo.cjs';
7
7
  import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
@@ -1,9 +1,9 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-C4rN09Am.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-DFxFeYi3.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
3
  export { P as ProgressReporter } from './chunks/context-BORy7yXb.js';
4
4
  import './commands/index.js';
5
- import './chunks/reflog-entry-D9P2hCgv.js';
6
- import './chunks/write-tree-BXCDChvv.js';
5
+ import './chunks/reflog-entry-C2Hsdobk.js';
6
+ import './chunks/write-tree-Dn1LtIh7.js';
7
7
  import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
@@ -1,8 +1,8 @@
1
- import { G as GitIndex, I as IndexEntry } from '../chunks/write-tree-B8G6kgTy.cjs';
2
- export { H as HookInput, c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, s as sparseCheckoutPath, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from '../chunks/write-tree-B8G6kgTy.cjs';
1
+ import { G as GitIndex, I as IndexEntry } from '../chunks/write-tree-CuhpWKFo.cjs';
2
+ export { H as HookInput, c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, s as sparseCheckoutPath, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from '../chunks/write-tree-CuhpWKFo.cjs';
3
3
  import { d as FilePath, O as ObjectId, b as Context, R as RefName } from '../chunks/context-CMrHCVwK.cjs';
4
- import { F as FileMode, A as AuthorIdentity, q as ReflogEntry } from '../chunks/reflog-entry-BIf-zt__.cjs';
5
- export { C as CatFileBatchEntry, a as CatFileBatchOptions, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, M as MAX_COMMIT_MESSAGE_BYTES, e as MAX_GITIGNORE_BYTES, f as MAX_GITMODULES_BYTES, g as MAX_HAVES, h as MAX_INDEX_BYTES, i as MAX_PEEL_DEPTH, j as MAX_PUSH_OBJECTS, k as MAX_REFLOG_BYTES, l as MAX_SUBMODULE_DEPTH, m as MAX_SYMBOLIC_REF_DEPTH, n as MAX_WALK_QUEUE_SIZE, o as MAX_WALK_SEEDS, p as MAX_WORKING_TREE_BLOB_BYTES, R as ReadObjectOptions, r as ResolveRefOptions, S as SubmoduleEntry, s as TreeDiff, U as UpdateRefOptions, W as WalkCommitsOptions, u as WalkIgnorePredicate, v as WalkSubmodulesOptions, w as WalkTreeEntry, x as WalkTreeOptions, y as WalkWorkingTreeEntry, z as WalkWorkingTreeOptions } from '../chunks/reflog-entry-BIf-zt__.cjs';
4
+ import { F as FileMode, A as AuthorIdentity, q as ReflogEntry } from '../chunks/reflog-entry-DNvSz7S5.cjs';
5
+ export { C as CatFileBatchEntry, a as CatFileBatchOptions, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, M as MAX_COMMIT_MESSAGE_BYTES, e as MAX_GITIGNORE_BYTES, f as MAX_GITMODULES_BYTES, g as MAX_HAVES, h as MAX_INDEX_BYTES, i as MAX_PEEL_DEPTH, j as MAX_PUSH_OBJECTS, k as MAX_REFLOG_BYTES, l as MAX_SUBMODULE_DEPTH, m as MAX_SYMBOLIC_REF_DEPTH, n as MAX_WALK_QUEUE_SIZE, o as MAX_WALK_SEEDS, p as MAX_WORKING_TREE_BLOB_BYTES, R as ReadObjectOptions, r as ResolveRefOptions, S as SubmoduleEntry, s as TreeDiff, U as UpdateRefOptions, W as WalkCommitsOptions, u as WalkIgnorePredicate, v as WalkSubmodulesOptions, w as WalkTreeEntry, x as WalkTreeOptions, y as WalkWorkingTreeEntry, z as WalkWorkingTreeOptions } from '../chunks/reflog-entry-DNvSz7S5.cjs';
6
6
  import { b as HttpTransport } from '../chunks/http-transport-DirKfK2S.cjs';
7
7
 
8
8
  /** `true` ⇒ the path is in the sparse set (materialise it). */
@@ -425,6 +425,11 @@ declare const updateCoreConfig: (ctx: Context, entries: Record<string, string>)
425
425
  * Write the `.git/info/sparse-checkout` pattern file. The command tier
426
426
  * computes the text (via `serializeCone` or raw non-cone lines); this
427
427
  * primitive only persists it (design §7.3).
428
+ *
429
+ * @writes
430
+ * surface: sparseCheckoutFile
431
+ * kind: byte-identical
432
+ * format: git-sparse-checkout
428
433
  */
429
434
 
430
435
  /**
@@ -1,8 +1,8 @@
1
- import { G as GitIndex, I as IndexEntry } from '../chunks/write-tree-BXCDChvv.js';
2
- export { H as HookInput, c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, s as sparseCheckoutPath, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from '../chunks/write-tree-BXCDChvv.js';
1
+ import { G as GitIndex, I as IndexEntry } from '../chunks/write-tree-Dn1LtIh7.js';
2
+ export { H as HookInput, c as catFileBatch, a as createCommit, d as diffTrees, g as getRepoRoot, m as mergeBase, r as readBlob, b as readIndex, e as readObject, f as readTree, h as recordRefUpdate, i as resolveRef, j as runHook, s as sparseCheckoutPath, u as updateRef, w as walkCommits, k as walkSubmodules, l as walkTree, n as walkWorkingTree, o as writeObject, p as writeSymbolicRef, q as writeTree } from '../chunks/write-tree-Dn1LtIh7.js';
3
3
  import { d as FilePath, O as ObjectId, b as Context, R as RefName } from '../chunks/context-BORy7yXb.js';
4
- import { F as FileMode, A as AuthorIdentity, q as ReflogEntry } from '../chunks/reflog-entry-D9P2hCgv.js';
5
- export { C as CatFileBatchEntry, a as CatFileBatchOptions, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, M as MAX_COMMIT_MESSAGE_BYTES, e as MAX_GITIGNORE_BYTES, f as MAX_GITMODULES_BYTES, g as MAX_HAVES, h as MAX_INDEX_BYTES, i as MAX_PEEL_DEPTH, j as MAX_PUSH_OBJECTS, k as MAX_REFLOG_BYTES, l as MAX_SUBMODULE_DEPTH, m as MAX_SYMBOLIC_REF_DEPTH, n as MAX_WALK_QUEUE_SIZE, o as MAX_WALK_SEEDS, p as MAX_WORKING_TREE_BLOB_BYTES, R as ReadObjectOptions, r as ResolveRefOptions, S as SubmoduleEntry, s as TreeDiff, U as UpdateRefOptions, W as WalkCommitsOptions, u as WalkIgnorePredicate, v as WalkSubmodulesOptions, w as WalkTreeEntry, x as WalkTreeOptions, y as WalkWorkingTreeEntry, z as WalkWorkingTreeOptions } from '../chunks/reflog-entry-D9P2hCgv.js';
4
+ import { F as FileMode, A as AuthorIdentity, q as ReflogEntry } from '../chunks/reflog-entry-C2Hsdobk.js';
5
+ export { C as CatFileBatchEntry, a as CatFileBatchOptions, c as CreateCommitInput, D as DiffTreesInput, d as DiffTreesOptions, M as MAX_COMMIT_MESSAGE_BYTES, e as MAX_GITIGNORE_BYTES, f as MAX_GITMODULES_BYTES, g as MAX_HAVES, h as MAX_INDEX_BYTES, i as MAX_PEEL_DEPTH, j as MAX_PUSH_OBJECTS, k as MAX_REFLOG_BYTES, l as MAX_SUBMODULE_DEPTH, m as MAX_SYMBOLIC_REF_DEPTH, n as MAX_WALK_QUEUE_SIZE, o as MAX_WALK_SEEDS, p as MAX_WORKING_TREE_BLOB_BYTES, R as ReadObjectOptions, r as ResolveRefOptions, S as SubmoduleEntry, s as TreeDiff, U as UpdateRefOptions, W as WalkCommitsOptions, u as WalkIgnorePredicate, v as WalkSubmodulesOptions, w as WalkTreeEntry, x as WalkTreeOptions, y as WalkWorkingTreeEntry, z as WalkWorkingTreeOptions } from '../chunks/reflog-entry-C2Hsdobk.js';
6
6
  import { b as HttpTransport } from '../chunks/http-transport-DirKfK2S.js';
7
7
 
8
8
  /** `true` ⇒ the path is in the sparse set (materialise it). */
@@ -425,6 +425,11 @@ declare const updateCoreConfig: (ctx: Context, entries: Record<string, string>)
425
425
  * Write the `.git/info/sparse-checkout` pattern file. The command tier
426
426
  * computes the text (via `serializeCone` or raw non-cone lines); this
427
427
  * primitive only persists it (design §7.3).
428
+ *
429
+ * @writes
430
+ * surface: sparseCheckoutFile
431
+ * kind: byte-identical
432
+ * format: git-sparse-checkout
428
433
  */
429
434
 
430
435
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scolladon/tsgit",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "Lightning-fast git, pure TypeScript, everywhere.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -166,6 +166,7 @@
166
166
  "scripts": {
167
167
  "prepare": "husky",
168
168
  "build": "wireit",
169
+ "build:parity": "wireit",
169
170
  "check": "wireit",
170
171
  "check:fix": "wireit",
171
172
  "check:types": "wireit",
@@ -178,20 +179,29 @@
178
179
  "test:integration": "wireit",
179
180
  "test:posix-integration": "wireit",
180
181
  "test:win-integration": "wireit",
182
+ "test:parity": "wireit",
183
+ "test:parity:deno": "wireit",
184
+ "test:parity:bun": "wireit",
185
+ "test:parity:workers": "wireit",
181
186
  "test:e2e": "wireit",
182
187
  "test:coverage": "wireit",
183
188
  "test:mutation": "wireit",
184
- "test:mutation:incremental": "wireit",
189
+ "test:mutation:pr": "wireit",
185
190
  "test:bench": "wireit",
186
191
  "bench:summary": "wireit",
187
- "bench:fixture": "node --experimental-strip-types scripts/gen-bench-fixture.ts",
188
- "profile": "npm run build && node --experimental-strip-types scripts/profile.ts",
192
+ "bench:fixture": "node --experimental-strip-types tooling/gen-bench-fixture.ts",
193
+ "profile": "npm run build && node --experimental-strip-types tooling/profile.ts",
189
194
  "docs": "wireit",
190
195
  "docs:check": "wireit",
191
196
  "docs:json": "wireit",
192
197
  "check:doc-links": "wireit",
193
198
  "check:doc-coverage": "wireit",
194
199
  "check:doc-typedoc": "wireit",
200
+ "check:test-pyramid": "wireit",
201
+ "check:parity-fixtures": "wireit",
202
+ "check:browser-surface": "wireit",
203
+ "check:write-surfaces": "wireit",
204
+ "check:mutation-budgets": "wireit",
195
205
  "verify:tarball": "wireit",
196
206
  "check:size": "wireit",
197
207
  "check:exports": "wireit",
@@ -345,15 +355,81 @@
345
355
  ],
346
356
  "output": []
347
357
  },
358
+ "test:parity": {
359
+ "command": "vitest run --project parity",
360
+ "dependencies": [
361
+ "check:types"
362
+ ],
363
+ "files": [
364
+ "src/**/*.ts",
365
+ "test/parity/**/*.ts",
366
+ "vitest.config.ts"
367
+ ],
368
+ "output": []
369
+ },
370
+ "test:parity:deno": {
371
+ "command": "deno test --no-check --allow-read --allow-write --allow-env --no-prompt --config test/runtime-parity/deno/deno.json test/runtime-parity/deno/",
372
+ "dependencies": [
373
+ "build"
374
+ ],
375
+ "files": [
376
+ "dist/esm/**/*.js",
377
+ "test/runtime-parity/deno/**",
378
+ "test/parity/scenarios/**/*.ts",
379
+ "test/parity/fixtures.ts"
380
+ ],
381
+ "output": []
382
+ },
383
+ "test:parity:bun": {
384
+ "command": "bun test test/runtime-parity/bun/",
385
+ "dependencies": [
386
+ "build"
387
+ ],
388
+ "files": [
389
+ "dist/esm/**/*.js",
390
+ "test/runtime-parity/bun/**",
391
+ "test/parity/scenarios/**/*.ts",
392
+ "test/parity/fixtures.ts"
393
+ ],
394
+ "output": []
395
+ },
396
+ "test:parity:workers": {
397
+ "command": "vitest run --config test/runtime-parity/workers/vitest.config.ts",
398
+ "dependencies": [
399
+ "build"
400
+ ],
401
+ "files": [
402
+ "dist/esm/**/*.js",
403
+ "test/runtime-parity/workers/**",
404
+ "test/parity/scenarios/**/*.ts",
405
+ "test/parity/fixtures.ts"
406
+ ],
407
+ "output": []
408
+ },
409
+ "build:parity": {
410
+ "command": "node --experimental-strip-types tooling/build-parity-bundle.ts",
411
+ "files": [
412
+ "test/parity/scenarios/**/*.ts",
413
+ "test/parity/fixtures.ts",
414
+ "test/browser/parity-scenarios.bundle.ts",
415
+ "tooling/build-parity-bundle.ts"
416
+ ],
417
+ "output": [
418
+ "test/browser/parity-scenarios.bundle.js",
419
+ "test/browser/parity-scenarios.bundle.js.map"
420
+ ]
421
+ },
348
422
  "test:e2e": {
349
423
  "command": "npx playwright test",
350
424
  "dependencies": [
351
- "build"
425
+ "build",
426
+ "build:parity"
352
427
  ],
353
428
  "files": [
354
429
  "test/browser/**/*.ts",
355
430
  "test/browser/**/*.mjs",
356
431
  "test/browser/index.html",
432
+ "test/browser/parity-scenarios.bundle.js",
357
433
  "playwright.config.ts"
358
434
  ],
359
435
  "output": [
@@ -389,14 +465,15 @@
389
465
  "reports/mutation/**"
390
466
  ]
391
467
  },
392
- "test:mutation:incremental": {
393
- "command": "stryker run --incremental",
468
+ "test:mutation:pr": {
469
+ "command": "node --experimental-strip-types tooling/run-stryker-pr.ts",
394
470
  "dependencies": [
395
471
  "test:unit"
396
472
  ],
397
473
  "files": [
398
474
  "src/**/*.ts",
399
475
  "test/unit/**/*.ts",
476
+ "tooling/run-stryker-pr.ts",
400
477
  "stryker.config.json",
401
478
  "vitest.config.ts"
402
479
  ],
@@ -419,12 +496,12 @@
419
496
  ]
420
497
  },
421
498
  "bench:summary": {
422
- "command": "node --experimental-strip-types scripts/bench-summarize.ts",
499
+ "command": "node --experimental-strip-types tooling/bench-summarize.ts",
423
500
  "dependencies": [
424
501
  "test:bench"
425
502
  ],
426
503
  "files": [
427
- "scripts/bench-summarize.ts",
504
+ "tooling/bench-summarize.ts",
428
505
  "reports/benchmarks/raw.json"
429
506
  ],
430
507
  "output": [
@@ -469,11 +546,11 @@
469
546
  "command": "lychee --config .lychee.toml README.md CONTRIBUTING.md RUNBOOK.md SECURITY.md 'docs/**/*.md'"
470
547
  },
471
548
  "check:doc-coverage": {
472
- "command": "node --experimental-strip-types scripts/check-doc-coverage.ts",
549
+ "command": "node --experimental-strip-types tooling/check-doc-coverage.ts",
473
550
  "files": [
474
551
  "src/repository.ts",
475
- "scripts/check-doc-coverage.ts",
476
- "scripts/check-doc-coverage.allowlist.json",
552
+ "tooling/check-doc-coverage.ts",
553
+ "tooling/check-doc-coverage.allowlist.json",
477
554
  "docs/use/commands/**/*.md",
478
555
  "docs/use/primitives/**/*.md"
479
556
  ],
@@ -485,13 +562,79 @@
485
562
  "docs:json"
486
563
  ]
487
564
  },
565
+ "check:test-pyramid": {
566
+ "command": "node --experimental-strip-types tooling/audit-test-pyramid.ts",
567
+ "files": [
568
+ "tooling/audit-test-pyramid.ts",
569
+ "tooling/test-pyramid/**/*.ts",
570
+ "test-pyramid-budgets.json",
571
+ "test/unit/**/*.test.ts",
572
+ "test/integration/**/*.test.ts",
573
+ "test/browser/**/*.spec.ts"
574
+ ],
575
+ "output": [
576
+ "reports/test-pyramid.json",
577
+ "reports/test-pyramid.md"
578
+ ]
579
+ },
580
+ "check:parity-fixtures": {
581
+ "command": "node --experimental-strip-types tooling/audit-parity-fixtures.ts",
582
+ "files": [
583
+ "tooling/audit-parity-fixtures.ts",
584
+ "tooling/parity-fixtures/**/*.ts",
585
+ "test/parity/scenarios/**/*.ts",
586
+ "test/parity/fixtures.ts"
587
+ ],
588
+ "output": [
589
+ "reports/parity-fixtures.json"
590
+ ]
591
+ },
592
+ "check:browser-surface": {
593
+ "command": "node --experimental-strip-types tooling/audit-browser-surface.ts",
594
+ "files": [
595
+ "src/repository.ts",
596
+ "test/browser/**/*.spec.ts",
597
+ "test/parity/scenarios/**/*.ts",
598
+ "tooling/audit-browser-surface.ts",
599
+ "tooling/audit-browser-surface/**/*.ts",
600
+ "tooling/audit-browser-surface.allowlist.json"
601
+ ],
602
+ "output": [
603
+ "reports/browser-surface-coverage.json"
604
+ ]
605
+ },
606
+ "check:write-surfaces": {
607
+ "command": "node --experimental-strip-types tooling/audit-write-surfaces.ts",
608
+ "files": [
609
+ "src/**/*.ts",
610
+ "test/integration/**/*.test.ts",
611
+ "tooling/audit-write-surfaces.ts",
612
+ "tooling/audit-write-surfaces/**/*.ts",
613
+ "tooling/audit-write-surfaces.allowlist.json",
614
+ "tooling/test-pyramid/parse-proves-header.ts",
615
+ "tooling/test-pyramid/parse-manifest.ts"
616
+ ],
617
+ "output": [
618
+ "reports/write-surface-coverage.json"
619
+ ]
620
+ },
621
+ "check:mutation-budgets": {
622
+ "command": "node --experimental-strip-types tooling/check-mutation-budgets.ts",
623
+ "files": [
624
+ "tooling/check-mutation-budgets.ts",
625
+ "tooling/mutation-budgets.ts",
626
+ "mutation-budgets.json",
627
+ "reports/mutation/mutation-report.json"
628
+ ],
629
+ "output": []
630
+ },
488
631
  "verify:tarball": {
489
- "command": "bash scripts/verify-tarball.sh",
632
+ "command": "bash tooling/verify-tarball.sh",
490
633
  "dependencies": [
491
634
  "build"
492
635
  ],
493
636
  "files": [
494
- "scripts/verify-tarball.sh",
637
+ "tooling/verify-tarball.sh",
495
638
  "dist/**",
496
639
  "package.json",
497
640
  "LICENSE",
@@ -562,8 +705,13 @@
562
705
  "check:security",
563
706
  "check:doc-coverage",
564
707
  "check:doc-typedoc",
708
+ "check:test-pyramid",
709
+ "check:parity-fixtures",
710
+ "check:browser-surface",
711
+ "check:write-surfaces",
565
712
  "test:coverage",
566
- "test:integration"
713
+ "test:integration",
714
+ "test:parity"
567
715
  ]
568
716
  }
569
717
  },
@@ -576,6 +724,8 @@
576
724
  "devDependencies": {
577
725
  "@arethetypeswrong/cli": "0.18.2",
578
726
  "@biomejs/biome": "2.4.15",
727
+ "@cloudflare/vitest-pool-workers": "0.16.9",
728
+ "@cloudflare/workers-types": "4.20260525.1",
579
729
  "@commitlint/cli": "21.0.1",
580
730
  "@commitlint/config-conventional": "21.0.1",
581
731
  "@ls-lint/ls-lint": "2.3.1",
@@ -590,13 +740,14 @@
590
740
  "@types/node": "25.9.1",
591
741
  "@vitest/coverage-v8": "4.1.7",
592
742
  "cspell": "10.0.0",
593
- "dependency-cruiser": "17.4.0",
743
+ "dependency-cruiser": "17.4.2",
594
744
  "fast-check": "4.8.0",
595
745
  "husky": "9.1.7",
596
- "isomorphic-git": "1.38.1",
597
- "jscpd": "4.2.3",
746
+ "isomorphic-git": "1.38.2",
747
+ "jscpd": "4.2.4",
598
748
  "knip": "6.14.2",
599
749
  "lint-staged": "17.0.5",
750
+ "minimatch": "10.2.5",
600
751
  "rollup": "4.60.4",
601
752
  "rollup-plugin-dts": "6.4.1",
602
753
  "rollup-plugin-visualizer": "7.0.1",
@@ -604,6 +755,7 @@
604
755
  "typedoc": "0.28.19",
605
756
  "typescript": "6.0.3",
606
757
  "vitest": "4.1.7",
607
- "wireit": "0.14.12"
758
+ "wireit": "0.14.12",
759
+ "wrangler": "4.94.0"
608
760
  }
609
761
  }