Continuous fuzzing roadmap toward OSS-Fuzz integration
Les mainteneurs répondent en général sous 2 jours
@LucaCappelletti94 y travaille déjà.
Depuis le 19/9/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
I believe having continuous fuzzer will help us a lot in the process more effectively the increasing number of PR and avoid merging regressions, other than of course discover current errors.
I propose the following sequence of PRs:
- Switching from honggfuzz to cargo-fuzz/libFuzzer harness. I agree that in the past honggfuzz was the goto solution, and it was also my favourite, but cargo-fuzz has improved a lot in the last few years and is required by OSS-Fuzz and ClusterFuzzLite. Done in #2520
- ClusterFuzzLite PR gate + daily batch, same targets. Done in #2527
- Adding a harness executing the parse ->
Display-> re-parse loop. Done in #2528 - Actually committed seed corpus. Ready for review in #2530
- Differential fuzzer for SQLite #2562
- Differential fuzzer for PostgreSQL #2563
- Differential fuzzer for DuckDB #2564
- Time ratio fuzzer. Ready for review in https://github.com/apache/datafusion-sqlparser-rs/pull/2580
- Clean code of harnesses & rest suite by moving the list of all currently supported dialects in an utility function in the main library.
- Bring up to speed the https://github.com/apache/datafusion-sqlparser-rs/pull/2193 Arbitrary PR
- OSS-Fuzz application (
projects/datafusion-sqlparser-rs) which I believe we may be approved for, given the reasonable user pool of this crate. This PR should only be opened after we reach some fuzzer stability. - Fuzz-byte-driven weighted recursive query generator (SparkFuzz/SQLsmith style)
- Langage dominant
- Rust
- Étoiles
- 3.5k
- Forks
- 786
- Merge moyen
- 4 j 6 h
- PR mergées (30 j)
- 56
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de apache/datafusion-sqlparser-rs
-
DuckDB MySQL PostgreSQL
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
apache/datafusion-sqlparser-rs#2615 ·
Les mainteneurs répondent en général sous 2 jours
-
ClickHouse
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/datafusion-sqlparser-rs#2599 ·
Les mainteneurs répondent en général sous 2 jours
-
ClickHouse: Support `GLOBAL IN` / `GLOBAL NOT IN`Peut-être pris @s5dsn-eqee l’a pris il y a 12 jours. OuverteClickHouse
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
apache/datafusion-sqlparser-rs#2597 ·
Les mainteneurs répondent en général sous 2 jours
-
HIVE: Round trip fails for field access on a numeric-prefix identifierPeut-être pris @efegokdemir l’a pris il y a 16 jours. OuverteHive
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
apache/datafusion-sqlparser-rs#2589 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/datafusion-sqlparser-rs#2461 · 2 commentaires ·
Les mainteneurs répondent en général sous 2 jours
Toutes les issues de apache/datafusion-sqlparser-rs
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
swc-project/swc#12516 ·
Les mainteneurs répondent en général sous 1 jour
-
app bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
mls-rs-crypto-awslc: exact aws-lc-rs =1.16.3 pin blocks rustls security updatePeut-être pris @muscariello l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
-
[work-item] adam-adae-worsening-emergence: conform spec.yaml to the specification style contract (REQ-1280)Peut-être pris @muse-yamaa-bot l’a pris aujourd’hui. Ouvertework-item
Difficulté 1/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour