Repository navigation
Commit bbd78bb
fix(gix): omit dangling symbolic references from enumeration
`for-each-ref` omits symbolic references whose targets do not exist, while
GixPython's reference iterator yields them. This made `Repo.heads` include
branches that the CLI backend would omit.
Resolve symbolic targets while retaining their original names. A dangling
target uses the existing read-error fallback, allowing Git to handle its
filtering and diagnostics. Valid symbolic aliases still use native enumeration.
The regression failed for both SHA-1 and SHA-256 before the fix. All six
selected enumeration, query, and reference tests now pass, as do Ruff lint
and format checks.1 parent c5452bd commit bbd78bb
2 files changed
Lines changed: 19 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
187 | 192 | | |
188 | 193 | | |
189 | 194 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
125 | 138 | | |
126 | 139 | | |
127 | 140 | | |
| |||
0 commit comments