--posix should disable the GNU regular expression escapes (\? \+ \| \w \s)
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 72/100
Direzione di ricerca
Inizia da fuzz/fuzz_targets/fuzz_sed.rs e dalla voce KNOWN_ISSUES indicata per comprendere gli scenari --posix saltati. Segui la gestione delle espressioni regolari di --posix, quindi verifica che \?, \+, \|, \w e \s si comportino come caratteri normali con --posix e che gli scenari corrispondenti del fuzzer non debbano più essere saltati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Found by the differential fuzzer (fuzz/fuzz_targets/fuzz_sed.rs).
With --posix, GNU sed drops the GNU regular expression escapes: \?, \+,
\| are not operators and \w, \s are not classes, they all stand for the
plain character. We keep honoring them.
$ printf 'a\nb\n0?\n' | sed --posix -e '/a\+/d'
a
b
0?
$ printf 'a\nb\n0?\n' | ./target/release/sed --posix -e '/a\+/d'
b
0?
Same for the others:
| script | GNU --posix deletes |
we delete |
|---|---|---|
/0\?/d |
0? |
every line (empty match) |
/a\+/d |
nothing | a |
/a|b/d |
nothing | a and b |
/\w/d |
nothing | every line |
Until this is fixed the fuzzer skips these scenarios; see KNOWN_ISSUES in
fuzz/fuzz_targets/fuzz_sed.rs.
- Lingua principale
- Rust
- Stelle
- 110
- Fork
- 36
- Merge medio
- 1g 23h
- PR unite (30g)
- 30
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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 uutils/sed
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
-
l command: the wrap width comes from the terminal size, and -l is ignoredForse già presa @SichenLiang l’ha presa 44 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
I maintainer di solito rispondono entro 1 giorno
-
Back-references are rejected in byte (C locale) modeForse già presa @Omkar-Wagholikar l’ha presa 8 giorni fa. Apertagood first issue
Difficoltà 4/5 3-5 giorni Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
s/// replacement: implement the \U \L \u \l \E case-conversion escapesForse già presa @dedsec-terminal l’ha presa 36 giorni fa. Apertagood first issue
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
project-robius/robrix#1177 ·
I maintainer di solito rispondono entro 1 giorno
-
Quadratic time in Query::bind() makes large parameterized queries (multi-row INSERT) very slowAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
ClickHouse/clickhouse-rs#497 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
I maintainer di solito rispondono entro 1 giorno
-
test(breg): postgres_startup needs the tooling feature its required-features does not declareApertaarea:breg bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
registrystack/registry-stack#2307 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
farion1231/cc-switch#8696 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno