diff options
| author | 2026-03-24 09:03:13 +0000 | |
|---|---|---|
| committer | 2026-03-24 09:03:13 +0000 | |
| commit | ad25bb029ae430ffadfe6afd86bab4eed33a9a76 (patch) | |
| tree | 943db5c4b7ca9e1eec2038c4550592e95dbe2ddf /README.md | |
| parent | README: otherwise (diff) | |
| signature | No signature | |
ROADMAP: Split from README v0.1.105
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 214 |
1 files changed, 0 insertions, 214 deletions
@@ -94,220 +94,6 @@ over the stores that `Repository` already exposes: `commitquery` over the existing and quarantined object stores. Some hooks are provided. -## Features - -* Configuration - * [X] Parsing - * [ ] Includes - * [ ] Writing -* [X] Object IDs - * [X] SHA-256 - * [X] SHA-1 -* [X] Object model (incl., parse, serialize) - * [X] Blobs - * [X] Trees - * [X] File mode definitions - * [X] Entry insertion ordering - * [X] Traversal - * [ ] Pathspec - * [X] Commits - * [X] Annotated tags - * [X] Stored objects -* Further cryptography - * [ ] OpenPGP signatures - * [ ] SSH signatures -* [X] Reading object stores - * [X] Pluggable interface - * [X] Chain lookup store - * [X] Bundle store - * [X] MRU lookup store - * [X] Reading loose objects - * [ ] Promisor remotes - * [ ] Alternates - * [X] Reading packed objects - * [X] Pack index lookups - * [X] Delta caching - * [X] Delta application - * [ ] Pack-wide bloom filters - * [ ] Multi pack indexes -* [ ] Writing objects - * [X] Loose object writing -* Misc bundle features - * [ ] Writing bundles -* Misc packfile features - * [X] Writing pack indexes - * [X] Writing reverse pack indexes - * [ ] Writing packfiles - * [ ] Writing thin packs - * [ ] Compressing deltas - * [ ] Delta islands - * [ ] Pack verification -* Compression - * [ ] Plugabble compression algorithms - * [X] ZLIB support - * [ ] DEFLATE optimizations - * [X] Adler-32 SIMD optimizations -* [X] References - * [X] Detached references - * [X] Symbolic references - * [X] Name verification/resolution - * [X] Annotated tag ref peeling - * [ ] Describe - * [ ] Revision syntax - * [ ] Namespaces - * [ ] Replace refs, grafts -* [X] Reference stores - * [X] Chain lookup store - * [X] Files reference store - * [X] Reading loose refs - * [X] Reading packed refs - * [X] Atomic writes - * [X] Batched writes - * [ ] Packing refs - * [ ] Reflogs - * [ ] Reftable -* Reachability - * [X] Have/wants walks - * [X] Is ancestor - * [X] Merge bases - * [X] Commit graph - * [X] Changed path bloom filters - * [X] Chained graphs - * [ ] Writing - * [ ] Reachability bitmaps - * [ ] For a single packfile - * [ ] For Multi pack indexes -* Misc repository - * [X] Opening relevant stores - * [ ] Creating repositories - * [ ] Filter branch/repo - * [ ] Fast import/export - * [ ] Git notes - * [ ] Git attributes - * [ ] Pseudorefs - * Integrity and maintenance - * [ ] Fsck - * [ ] Repacking - * [ ] Garbage collection - * [ ] Cruft packing - * [ ] Expiration - * [ ] Grep - * [ ] Submodules - * [ ] Worktrees - * [ ] Archive - * [ ] LFS - * [ ] Revision log walk - * [ ] Topological ordering - * [ ] Date ordering - * [ ] Path-limited -* [ ] Diffing - * [ ] Blame - * [ ] Annotate - * [X] Tree diffing - * [ ] Similarity/rename/copy detection - * [ ] Multi-way diffs - * [ ] Patch-id - * [ ] Range-diff - * Blob diffing - * [ ] Word diffs - * [X] Myers - * [ ] Patience - * [ ] Histogram - * [ ] Tree-way - * [ ] Format patch - * [ ] Apply/amend patch -* Branch integration/rewrite/etc methods - * [ ] Merge - * [ ] Recursive - * [ ] ORT - * [ ] Rebase - * [ ] Cherry pick - * [ ] Revert - * [ ] Rerere -* Network protocols and related features - * [X] pkt-line - * [X] side-band-64k - * [X] Ingesting packfiles - * [X] Quarantine areas - * [X] Un-thinning thin packs - * Version 0, version 1 protocols - * [X] Server side - * [X] Reference advertisement - * [X] Capability negotiation - * [X] Receive - * [ ] "Upload" - * [ ] Client side - * [ ] Send - * [ ] Fetch - * Version 2 protocol - * [ ] Server side - * [ ] "Upload" - * [ ] Client side - * [ ] Fetch - * Protocol-independent logic - * Common - * [X] Progress meters - * Client side - * [ ] Refspec - * [ ] Fetch - * [ ] Partial clones - * [ ] Object filtering - * [ ] Bundle URI - * [ ] Packfile URI - * [ ] Shallow clones - * [ ] Send - * Server side - * [ ] Upload - * [ ] Object filtering - * [X] Receive - * [ ] Signed push - * Hooks - * Slots - * [ ] After ref negotiation - * [X] After object unpacking - * Provided samples - * [X] Chain - * [X] Force push rejection -* [ ] Working trees - * [ ] Stashing - * [ ] Ignore rules - * [ ] Checkouts - * [ ] Sparse checkouts - * [ ] CR/LF conversions - * [ ] File mode conversions - * [ ] Indexes - * [ ] Conflict resolution - * [ ] Split index - * [ ] Sparse index - * [ ] Untracked cache - * [ ] Status listing - * [ ] Filesystem monitor - * [ ] Worktree - * [ ] Common directory - * [ ] Worktree-specific references -* Research - * [ ] Dynamic packfiles - * [ ] Compaction; page-sized hole punching - * [ ] Dynamic indexing - * [ ] Linear/extendible/spiral hashing - * [ ] Dynamic reachability bitmaps - -## Not planned - -* CLI tools -* Clone -* Anything reasonably considered "porcelain" -* Credential helper -* Transports -* Auth -* Remote management -* Bisect -* Any use of env vars -* Repository discovery walking - -I might make a second project that supports these. -Furgit will probably not, and will remain sans-IO. - ## Benchmarks * See [gitbench](https://git.sr.ht/~runxiyu/gitbench). |
