Colin Maudry
fa2709b38c
fix: re-vérifier db_path.exists() dans le handler et assertion return value ( #78 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-12 13:50:57 +02:00
Colin Maudry
bba53d81e1
feat: réutiliser le DuckDB existant si le bootstrap échoue ( #78 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-12 13:48:32 +02:00
Colin Maudry
e55f3447db
Possibilité de charger les données depuis une URL, memoisation de last_modified
2026-06-04 21:34:36 +02:00
Colin Maudry
dadbb0aeff
Possibilité de chercher soit des mots présents, soit une suite de mot précise #42
2026-04-24 11:40:02 +02:00
Colin Maudry
3532a9c381
Path de duckdb configurable, correction des tests #72
2026-04-22 20:43:38 +02:00
Colin Maudry
cdb6a70f7a
feat(db): ajouter count_marches, count_unique_marches et paramètre offset à query_marches
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-21 23:39:51 +02:00
Colin Maudry
330ed4f0cb
Base de données et .lock à la racine de decp.info
2026-04-20 11:28:00 +02:00
Colin Maudry
1eb579da57
Logging des cache miss si DEVELOPMENT
2026-04-19 15:23:02 +02:00
Colin Maudry
a7516d65e3
Utilisation du logger global dans app et db
2026-04-18 19:28:34 +02:00
Colin Maudry
e352624c02
Capitalisation des constantes
2026-04-18 18:09:42 +02:00
Colin Maudry
f31522734c
Connexion DuckDB globale, verrou fcntl et query_marches
...
- _ensure_database : vérifie rebuild sous verrou fcntl exclusif
- conn en lecture seule au niveau module, schema importé via SELECT LIMIT 0
- query_marches : helper SQL paramétré retournant un pl.DataFrame
- get_cursor : cursor par appel pour thread-safety Dash
- pyarrow ajouté en dépendance (requis par duckdb .pl())
refs #71
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-15 16:23:09 +02:00
Colin Maudry
077af6dd2e
Implémentation de build_database avec transforms Polars et tables dérivées
...
- _load_source_frame reprend la pipeline Polars (sort, filtre donneesActuelles,
booleans_to_strings, remplacement des noms null)
- build_database utilise write_parquet + read_parquet pour zéro-dépendance
pyarrow (pyarrow absent du venv) et écrit atomiquement via .tmp + os.replace
- 4 tables dérivées : acheteurs_marches, titulaires_marches,
acheteurs_departement, titulaires_departement
refs #71
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-15 16:16:12 +02:00
Colin Maudry
e83df64261
Ajout de src.db.should_rebuild et ses tests
...
refs #71
2026-04-15 16:07:41 +02:00