bregctl: project lock adds a missing digest after the entry's trailing blank line
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 90/100
Direzione di ricerca
Inizia da crates/registry-bregctl/src/module_lock_patch.rs, in particolare da patch_module_locks e key_value_end, poi leggi i test unitari in quel file. Verifica dove si trova item.end per una voce finale e per una voce seguita da una riga vuota. Aggiungi test per entrambi i casi; il lavoro è terminato quando il digest resta associato alla sua voce e la riga vuota prima della successiva chiave di primo livello viene mantenuta.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
When a modules[] entry has no digest yet, bregctl project lock adds one at the end of the
entry. If the entry ends with a blank line (the usual spacing before the next top-level key),
the digest goes after the blank line, so the entry is split by a blank line. The YAML is still
valid and check accepts it, so this is cosmetic, but the lock is meant to be a minimal patch that
leaves the author's layout alone.
Minimal repro, a registry.yaml with:
modules:
- id: inspections
version: 0.1.0
evidenceProviders:
# ...
After bregctl project lock <project>:
modules:
- id: inspections
version: 0.1.0
digest: "sha256:..."
evidenceProviders:
# ...
Expected:
modules:
- id: inspections
version: 0.1.0
digest: "sha256:..."
evidenceProviders:
# ...
Likely fix: in crates/registry-bregctl/src/module_lock_patch.rs, patch_module_locks inserts a
missing digest at item.end (around line 131). For the last entry that is the end of the
modules block, which key_value_end (line 230) places after blank lines; for an earlier entry
it is the next entry's first line, so a blank line between entries has the same effect. Inserting
after the last non-blank line of the item fixes both.
Tests: unit tests in the same file (mod tests, line 249): one for the last entry followed by a
blank line and a top-level key, one for a blank line between two entries.
- Lingua principale
- Rust
- Stelle
- 2
- Fork
- 0
- Merge medio
- 9h 24m
- PR unite (30g)
- 271
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di registrystack/registry-stack
-
area:docs documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
registrystack/registry-stack#2253 ·
I maintainer di solito rispondono entro 1 giorno
-
area:coordinator bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
registrystack/registry-stack#2252 ·
I maintainer di solito rispondono entro 1 giorno
-
area:release bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
registrystack/registry-stack#2248 ·
I maintainer di solito rispondono entro 1 giorno
-
BReg docs: the WASM upgrade step points at a compatibility member that explain no longer emitsApertaarea:breg documentation
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
registrystack/registry-stack#2233 ·
I maintainer di solito rispondono entro 1 giorno
-
area:breg bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
registrystack/registry-stack#2227 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di registrystack/registry-stack
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
git-ai-project/git-ai#2434 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
peteonrails/voxtype#909 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
kucherenko/jscpd#1239 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
alchemyplatform/rundler#1358 ·
I maintainer di solito rispondono entro 3 giorni