8000 update crate status (#301) · GitoxideLabs/gitoxide@ed63ec0 · GitHub
[go: up one dir, main page]

Skip to content

Commit ed63ec0

Browse files
committed
update crate status (#301)
Really just an excuse to start a new PR for additional attribute work without investing much time.
1 parent b574a39 commit ed63ec0

File tree

2 files changed

+26
-4
lines changed

2 files changed

+26
-4
lines changed

crate-status.md

+10-4
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ Make it the best-performing implementation and the most convenient one.
440440
- [ ] handle submodules
441441
- [ ] handle sparse directories
442442
- [ ] handle sparse index
443-
- [ ] linear scaling with multi-threading up to IO saturation
443+
- [x] linear scaling with multi-threading up to IO saturation
444444
- supported attributes to affect working tree and index contents
445445
- [ ] eol
446446
- [ ] working-tree-encoding
@@ -450,8 +450,10 @@ Make it the best-performing implementation and the most convenient one.
450450
- [ ] `ident`
451451
- [ ] filter processes
452452
- [ ] single-invocation clean/smudge filters
453-
* [x] access to all .gitignore/exclude information
454-
* [ ] access to all attributes information
453+
* manage multiple worktrees
454+
* access to per-path information, like `.gitignore` and `.gitattributes` in a manner well suited for efficient lookups
455+
* [x] _exclude_ information
456+
* [ ] attributes
455457

456458
### gix-revision
457459
* [x] `describe()` (similar to `git name-rev`)
@@ -602,6 +604,8 @@ See its [README.md](https://github.com/Byron/gitoxide/blob/main/gix-lock/README.
602604
* [x] tree with other tree
603605
* [ ] respect case-sensitivity of host filesystem.
604606
* [x] a way to access various diff related settings or use them
607+
* [ ] respect `diff.*.textconv`, `diff.*.cachetextconv` and external diff viewers with `diff.*.command`,
608+
[along with support for reading `diff` gitattributes](https://github.com/git/git/blob/73876f4861cd3d187a4682290ab75c9dccadbc56/Documentation/gitattributes.txt#L699:L699).
605609
* **rewrite tracking**
606610
* **deviation** - git keeps up to four candidates whereas we use the first-found candidate that matches the similarity percentage.
607611
This can lead to different sources being found. As such, we also don't consider the filename at all.
@@ -614,7 +618,7 @@ See its [README.md](https://github.com/Byron/gitoxide/blob/main/gix-lock/README.
614618
* [x] renames
615619
* [x] copies
616620
* [x] 'find-copies-harder' - find copies with the source being the entire tree.
617-
* [ ] tree with working tree
621+
* [ ] tree or index with working tree
618622
* [x] diffs between modified blobs with various algorithms
619623
* [ ] tree with index
620624
* [x] initialize
@@ -673,6 +677,8 @@ See its [README.md](https://github.com/Byron/gitoxide/blob/main/gix-lock/README.
673677
* [ ] obtain 'prunable' information
674678
* [x] proper handling of worktree related refs
675679
* [ ] create, move, remove, and repair
680+
* [x] access exclude information
681+
* [ ] access attribute information
676682
* [x] respect `core.worktree` configuration
677683
- **deviation**
678684
* The delicate interplay between `GIT_COMMON_DIR` and `GIT_WORK_TREE` isn't implemented.

src/plumbing/progress.rs

+16
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,10 @@ static GIT_CONFIG: &[Record] = &[
116116
config: "core.packedGitLimit",
117117
usage: NotApplicable { reason: "we target 32bit systems only and don't use a windowing mechanism" }
118118
},
119+
Record {
120+
config: "core.checkRoundtripEncoding",
121+
usage: Planned { note: Some("needed once working-tree-encoding attributes are supported") }
122+
},
119123
Record {
120124
config: "core.bigFileThreshold",
121125
usage: Planned { note: Some("unfortunately we can't stream packed files yet, even if not delta-compressed, but respecting the threshold for other operations is definitely a must") }
@@ -458,6 +462,18 @@ static GIT_CONFIG: &[Record] = &[
458462
config: "status.renames",
459463
usage: Planned { note: Some("the same as diff.renames") }
460464
},
465+
Record {
466+
config: "diff.*.textconv",
467+
usage: Planned { note: None }
468+
},
469+
Record {
470+
config: "diff.*.cachetextconv",
471+
usage: Planned { note: None }
472+
},
473+
Record {
474+
config: "diff.*.command",
475+
usage: Planned { note: None }
476+
},
461477
];
462478

463479
/// A programmatic way to record and display progress.

0 commit comments

Comments
 (0)
0