Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Distinguish Rust character literals from lifetimes in the spacing helper

Aperta Adatta ai principianti
#888 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

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
78/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
python, rust
Ambito
testing, tooling

Direzione di ricerca

Inizia con tools/format-rust.py, in particolare con add_function_spacing e la gestione dello stato lessicale. Aggiungi test Python mirati per la riproduzione, i lifetimes, le virgolette con escape e i letterali di carattere byte; verifica che i confini delle funzioni vengano individuati, che il contenuto dei letterali rimanga invariato e che le esecuzioni ripetute siano idempotenti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug good first issue

Problem

An alphabetic char literal such as 'a' is treated as a lifetime prefix. Its closing quote opens char state, so function boundaries later in the file disappear.

Reproduction

Executed the helper at fd07427f4a976de05e38eff3ee1760db97fbb761 using importlib and add_function_spacing on:

fn first() {
    let c = 'a';
}
fn second() {}

The result is unchanged; the intended separating blank line is missing. Starting point: tools/format-rust.py.

Scope

Fix lexical state for character/escaped/byte-character literals while preserving lifetimes. Keep literal contents unchanged. Difficulty: easy.

Completion criteria

  • Find function boundaries after char literals.
  • Cover lifetimes, escaped quotes and byte chars.
  • Keep the helper idempotent with focused Python tests.
Lingua principale
Rust
Stelle
56
Fork
21
Merge medio
3h 54m
PR unite (30g)
49

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di wavefnd/Wave

Tutte le issue di wavefnd/Wave

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.