`read_json` accepts a list of paths at runtime but the type stub only allows a single path.
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 78/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Calme
- Stack technique
- python
- Domaine
- developer-experience
Piste de recherche
Commencez par localiser le stub Python de con.read_json et inspectez l’annotation de path_or_buffer. Vérifiez la reproduction avec pyright et mypy ; c’est terminé lorsque les deux vérificateurs de types acceptent des listes de chemins JSON, tandis que les formes existantes avec un seul chemin restent valides.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What happens?
Hi duckdb team, big fan of the product!
I'm experiencing a small typing issue:
import duckdb
con = duckdb.connect()
rel = con.read_json(
["a.jsonl", "b.jsonl"],
format="newline_delimited",
)
print(rel.count("*").fetchone())
This runs fine and returns the union of both files.
However, pyright throws:
Argument of type "list[str]" cannot be assigned to parameter "path_or_buffer" of type "str | bytes | PathLike[str] | PathLike[bytes] | IO[bytes] | IO[str]"
mypy throws a similar error.
Adding list[str] (and probably list[PathLike]) to path_or_buffer in the Python stub would fix this
To Reproduce
import duckdb
con = duckdb.connect()
rel = con.read_json(
["a.jsonl", "b.jsonl"],
format="newline_delimited",
)
print(rel.count("*").fetchone())
OS:
macOS arm64
DuckDB Package Version:
1.5.3
Python Version:
3.10
Full Name:
Amir Refaee
Affiliation:
Railtracks
What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.
I have tested with a stable release
Did you include all relevant data sets for reproducing the issue?
Not applicable - the reproduction does not require a data set
Did you include all code required to reproduce the issue?
- Yes, I have
Did you include all relevant configuration to reproduce the issue?
- Yes, I have
- Langage dominant
- Python
- Étoiles
- 186
- Forks
- 113
- Merge moyen
- 1 j 1 h
- PR mergées (30 j)
- 16
Préparer son environnement
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 duckdb/duckdb-python
-
needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
duckdb/duckdb-python#633 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
duckdb/duckdb-python#627 ·
Les mainteneurs répondent en général sous 1 jour
-
needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
duckdb/duckdb-python#534 ·
Les mainteneurs répondent en général sous 1 jour
-
needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
duckdb/duckdb-python#386 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
duckdb/duckdb-python#638 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de duckdb/duckdb-python
Issues similaires
-
ACK_WAITING HELP_WANTED UPDATE_CS
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
OWASP/CheatSheetSeries#2458 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
BasedHardware/omi#19711 ·
Les mainteneurs répondent en général sous 1 jour
-
Qwen3_5MoeModel no longer returns router_logits, breaking aux loss with output_router_logits=TrueOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
huggingface/transformers#49172 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
vllm-project/vllm-metal#885 ·
Les mainteneurs répondent en général sous 1 jour