Merge tag 'v2.6.0' into dev
- Suite de la refonte graphique - Persistence des filtres, des tris et des choix de colonnes sur toutes les pages - Joli tableau pour choisir les colonnes à afficher - Meilleure gestion des acheteurs et titulaires absents de la base SIRENE - Amélioration du SEO (liens canoniques)
This commit is contained in:
@@ -1,3 +1,11 @@
|
|||||||
|
#### 2.6.0 (5 février 2026)
|
||||||
|
|
||||||
|
- Suite de la refonte graphique
|
||||||
|
- Persistence des filtres, des tris et des choix de colonnes sur toutes les pages
|
||||||
|
- Joli tableau pour choisir les colonnes à afficher
|
||||||
|
- Meilleure gestion des acheteurs et titulaires absents de la base SIRENE
|
||||||
|
- Amélioration du SEO (liens canoniques)
|
||||||
|
|
||||||
##### 2.5.1 (29 janvier 2026)
|
##### 2.5.1 (29 janvier 2026)
|
||||||
|
|
||||||
- Mise en production un peu hâtive ([#67](https://github.com/ColinMaudry/decp.info/issues/67), [#68](https://github.com/ColinMaudry/decp.info/issues/68))
|
- Mise en production un peu hâtive ([#67](https://github.com/ColinMaudry/decp.info/issues/67), [#68](https://github.com/ColinMaudry/decp.info/issues/68))
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# decp.info
|
# decp.info
|
||||||
|
|
||||||
> v2.5.1
|
> v2.6.0
|
||||||
> Outil d'exploration et de téléchargement des données essentielles de la commande publique.
|
> Outil d'exploration et de téléchargement des données essentielles de la commande publique.
|
||||||
|
|
||||||
=> [decp.info](https://decp.info)
|
=> [decp.info](https://decp.info)
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "decp.info"
|
name = "decp.info"
|
||||||
description = "Interface d'exploration et d'analyse des marchés publics français."
|
description = "Interface d'exploration et d'analyse des marchés publics français."
|
||||||
version = "2.5.1"
|
version = "2.6.0"
|
||||||
requires-python = ">= 3.10"
|
requires-python = ">= 3.10"
|
||||||
authors = [
|
authors = [
|
||||||
{ name = "Colin Maudry", email = "colin@colmo.tech" }
|
{ name = "Colin Maudry", email = "colin@colmo.tech" }
|
||||||
|
|||||||
@@ -392,6 +392,13 @@ button.show-hide {
|
|||||||
color: #333 !important;
|
color: #333 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Checkboxes */
|
||||||
|
|
||||||
|
input[type="checkbox"] {
|
||||||
|
height: 17px;
|
||||||
|
width: 17px;
|
||||||
|
}
|
||||||
|
|
||||||
/* Tooltips */
|
/* Tooltips */
|
||||||
.dash-tooltip,
|
.dash-tooltip,
|
||||||
.dash-table-tooltip {
|
.dash-table-tooltip {
|
||||||
|
|||||||
@@ -318,7 +318,7 @@ def get_acheteur_marches_data(url, acheteur_year: str) -> tuple:
|
|||||||
Output("btn-download-filtered-data-acheteur", "disabled"),
|
Output("btn-download-filtered-data-acheteur", "disabled"),
|
||||||
Output("btn-download-filtered-data-acheteur", "children"),
|
Output("btn-download-filtered-data-acheteur", "children"),
|
||||||
Output("btn-download-filtered-data-acheteur", "title"),
|
Output("btn-download-filtered-data-acheteur", "title"),
|
||||||
Output("filter-cleanup-trigger-acheteur", "data", allow_duplicate=True),
|
Output("filter-cleanup-trigger-acheteur", "data"),
|
||||||
Input("acheteur_url", "href"),
|
Input("acheteur_url", "href"),
|
||||||
Input("acheteur_data", "data"),
|
Input("acheteur_data", "data"),
|
||||||
Input("acheteur_datatable", "page_current"),
|
Input("acheteur_datatable", "page_current"),
|
||||||
@@ -326,7 +326,6 @@ def get_acheteur_marches_data(url, acheteur_year: str) -> tuple:
|
|||||||
Input("acheteur_datatable", "filter_query"),
|
Input("acheteur_datatable", "filter_query"),
|
||||||
Input("acheteur_datatable", "sort_by"),
|
Input("acheteur_datatable", "sort_by"),
|
||||||
State("acheteur_datatable", "data_timestamp"),
|
State("acheteur_datatable", "data_timestamp"),
|
||||||
prevent_initial_call=True,
|
|
||||||
)
|
)
|
||||||
def get_last_marches_data(
|
def get_last_marches_data(
|
||||||
href, data, page_current, page_size, filter_query, sort_by, data_timestamp
|
href, data, page_current, page_size, filter_query, sort_by, data_timestamp
|
||||||
|
|||||||
@@ -326,7 +326,7 @@ def get_titulaire_marches_data(url, titulaire_year: str) -> tuple:
|
|||||||
Output("btn-download-filtered-data-titulaire", "disabled"),
|
Output("btn-download-filtered-data-titulaire", "disabled"),
|
||||||
Output("btn-download-filtered-data-titulaire", "children"),
|
Output("btn-download-filtered-data-titulaire", "children"),
|
||||||
Output("btn-download-filtered-data-titulaire", "title"),
|
Output("btn-download-filtered-data-titulaire", "title"),
|
||||||
Output("filter-cleanup-trigger-titulaire", "data", allow_duplicate=True),
|
Output("filter-cleanup-trigger-titulaire", "data"),
|
||||||
Input(component_id="titulaire_url", component_property="href"),
|
Input(component_id="titulaire_url", component_property="href"),
|
||||||
Input("titulaire_data", "data"),
|
Input("titulaire_data", "data"),
|
||||||
Input("titulaire_datatable", "page_current"),
|
Input("titulaire_datatable", "page_current"),
|
||||||
@@ -334,7 +334,6 @@ def get_titulaire_marches_data(url, titulaire_year: str) -> tuple:
|
|||||||
Input("titulaire_datatable", "filter_query"),
|
Input("titulaire_datatable", "filter_query"),
|
||||||
Input("titulaire_datatable", "sort_by"),
|
Input("titulaire_datatable", "sort_by"),
|
||||||
State("titulaire_datatable", "data_timestamp"),
|
State("titulaire_datatable", "data_timestamp"),
|
||||||
config_prevent_initial_callbacks=True,
|
|
||||||
)
|
)
|
||||||
def get_last_marches_data(
|
def get_last_marches_data(
|
||||||
href, data, page_current, page_size, filter_query, sort_by, data_timestamp
|
href, data, page_current, page_size, filter_query, sort_by, data_timestamp
|
||||||
|
|||||||
Reference in New Issue
Block a user