`read_json` accepts a list of paths at runtime but the type stub only allows a single path.
- Vorherrschende Sprache
- Python
- Sterne
- 187
- Forks
- 112
- Ø Merge
- 13 Std. 29 Min.
- Gemergte PRs (30 T.)
- 17
Beschreibung
### What happens?
Hi duckdb team, big fan of the product!
I'm experiencing a small typing issue:
```python
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
```python
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?
- [x] Yes, I have
### Did you include all relevant configuration to reproduce the issue?
- [x] Yes, I have
Beitragsleitfaden
Rechercherichtung
Beginne damit, den Python-Stub für con.read_json zu finden, und überprüfe die Annotation von path_or_buffer. Überprüfe die Reproduktion mit pyright und mypy; abgeschlossen ist die Aufgabe, wenn beide Typechecker Listen von JSON-Pfaden akzeptieren, während die bestehenden Formen mit einem einzelnen Pfad weiterhin gültig bleiben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- developer-experience
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Ruhig
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 78/100