Split `src/parser/mod.rs` and `src/ast/mod.rs` into smaller modules
Les mainteneurs répondent en général sous 2 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 38/100
- Type d'issue
- Refactorisation
- Clarté
- Plutôt claire
- Activité
- Active
- Domaine
- build-system, compilers
Piste de recherche
Start by reading src/parser/mod.rs and src/ast/mod.rs, then review the discussion in #944 and #1581 for the agreed boundaries and sequencing. The work should be divided into small pure-move PRs, with a CI script checking that each move is complete and contains no unintended changes; completion means both large modules are split without behavioral changes.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Several source files have grown past the point where navigating them is practical, with the parser mod at over 20k and the ast mod at over 10k.
This has come up before. #944 (2023, still open) proposed one parser file per statement, and #1581 (2024) split the whole parser in one draft PR. Both got agreement on the goal, conditioned on a series of small pure-move PRs. The earlier one-shot attempts #344 and #351 (2021) stalled on reviewer bandwidth, with concerns about conflicts with open PRs and about coupled code being easier to read in one file.
I suggest we try to do this before the next release, currently roughly planned for end of October (https://github.com/apache/datafusion-sqlparser-rs/issues/2454), as a series of pure move PRs. I believe that, given the size of the task, it may be desirable to:
- Do this operation in single, reasonably sized PRs
- Prepare BEFORE a script for the CI that checks that the move is actually a move, and it is complete
If agreed, this supersedes #944.
- Langage dominant
- Rust
- Étoiles
- 3.5k
- Forks
- 774
- Merge moyen
- 3 j 23 h
- PR mergées (30 j)
- 54
Préparer son environnement
Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
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
-
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
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
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
-
Difficulté 2/5 1-3 heures Accessibilité débutants 73/100
apache/datafusion-sqlparser-rs#2407 ·
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 68/100
trezor/trezor-firmware#7997 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
oxidecomputer/management-gateway-service#506 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
scylladb/nodejs-rs-driver#566 ·
Les mainteneurs répondent en général sous 1 jour
-
A-ABI needs-triage relnotes relnotes-needs-review relnotes-tracking-issue T-lang T-libs T-opsem
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour