Repository navigation
Commit d281b78
feat(gix): resolve supported committer identities through Gix
Use `Repository.committer()` for `GIT_COMMITTER_IDENT` and format the returned
native signature. Keep unsupported normalization, empty identities, and
per-command identity overrides on the CLI; Python must not fill missing fields
or manufacture a resolved identity.
Gix supports in-memory overrides for `committer.name`, `committer.email`, and
`gitoxide.commit.committerDate`. Applying them to the retained repository would
expose operation-specific identity to other threads. GixPython 0.1.0 binds no
cheap independent repository clone: `copy.copy` and `copy.deepcopy` raise
`TypeError`, while the binding's internal Rust `RepoHandle::clone()` shares its
`Arc` state. Upstream should bind an independent native clone, with isolated
configuration and native identity resolution (`GIX-21`). Reopening would isolate
state but repeats repository setup. Keep the existing fallback until this is
available; do not change the process environment or the shared snapshot.
A supported process/config identity avoids one CLI invocation. A command
override retains one. Native query parity uses a fixed process identity, and
regressions compare partial and complete overrides with Git. The reference
format query retains its repository-extension validation fallback (`GIX-1`).
Original validation: backend and commit tests passed with Gix first (65 passed
in 10.42s), then CLI (37 passed, 1 skipped in 10.97s), plus Ruff lint/format and
`git diff --check`. This follow-up only clarifies the commit message; direct
GixPython 0.1.0 probes verified native snapshot overrides and the absent copy API.1 parent ffea84b commit d281b78
2 files changed
Lines changed: 68 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
632 | 632 | | |
633 | 633 | | |
634 | 634 | | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
635 | 655 | | |
636 | 656 | | |
637 | 657 | | |
| |||
671 | 691 | | |
672 | 692 | | |
673 | 693 | | |
| 694 | + | |
674 | 695 | | |
675 | 696 | | |
676 | 697 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
113 | 160 | | |
114 | 161 | | |
115 | 162 | | |
| |||
0 commit comments