diff --git a/CHANGELOG.md b/CHANGELOG.md index 09d58a3..4d5dbcd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +##### 2.7.7 (11 mai 2026) + +- Suppression des mentions sur les profils d'acheteur. Omnikles/Safetender publie via l'API DUME et Klekoon ne publie pas, mais c'est peut-être pas le seul, donc je préfère supprimer et refaire un tour. + ##### 2.7.6 (5 mai 2026) - Correction du problème de filtre par date dans les tableaux diff --git a/pyproject.toml b/pyproject.toml index e5a73b1..a1e0f52 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "decp.info" description = "Interface d'exploration et d'analyse des marchés publics français." -version = "2.7.6" +version = "2.7.7" requires-python = ">= 3.10" authors = [{ name = "Colin Maudry", email = "colin@colmo.tech" }] dependencies = [ diff --git a/src/app.py b/src/app.py index 5e9e490..40a40d5 100644 --- a/src/app.py +++ b/src/app.py @@ -145,7 +145,13 @@ navbar = dbc.Navbar( style={"minWidth": "230px"}, ), dbc.Nav( - children=[dcc.Markdown(os.getenv("ANNOUNCEMENTS"), id="announcements")], + children=[ + dcc.Markdown( + os.getenv("ANNOUNCEMENTS"), + id="announcements", + dangerously_allow_html=True, + ), + ], style={ "maxWidth": "1200px", "display": "inline-block", diff --git a/src/assets/css/style.css b/src/assets/css/style.css index ecba9b1..dcb90d6 100644 --- a/src/assets/css/style.css +++ b/src/assets/css/style.css @@ -144,6 +144,10 @@ p.version > a { max-width: 900px; } +#announcements p { + margin-bottom: 0.2rem; +} + .seeBorder { border: dotted 1px green; } diff --git a/src/pages/a-propos.py b/src/pages/a-propos.py index 91bb01b..26d2ba7 100644 --- a/src/pages/a-propos.py +++ b/src/pages/a-propos.py @@ -87,14 +87,7 @@ Vous pouvez consommer les données qui alimentent decp.info dcc.Markdown( """Les données visibles sur ce site proviennent exclusivement de la publication de données ouvertes par les acheteurs publics ou en leur nom, régie par [l'arrêté du 22 décembre 2022](https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000046850496). Leur qualité est donc principalement liée à la qualité de leur saisie par les agents publics, parfois peu aidé·es par la qualité des outils à leur disposition. Je pense que l'analyse de marchés individuels et le comptage de marchés sur des critères autres que financiers sont plutôt fiables. En revanche, certains montants de marché estimés à des valeurs farfelues ([1 euro](https://decp.info/marches/432766947000192025S01301), [1 milliard](https://decp.info/marches/2459004280001320210000000271)) faussent les calculs par aggrégation (sommes, moyennes, médianes) et donc la production de statistiques financières fiables. Acheteurs, acheteuses : s'il vous plaît, essayez d'estimer les montants des marchés publics attribués de manière plus précise. -Quant à l'exhaustivité, je consolide toutes les sources de données exploitables que j'ai pu identifier (voir [ci-dessous](/a-propos#sources). Certains profils d'acheteurs ne publient pas leurs données malgré l'obligation réglementaire : - -- klekoon.fr (ils y travaillent) -- safetender.com (Omnikles) - -**marches-publics.info** (AWS) publie ses données de manière assez sporadique depuis début 2023. Compte tenu de son poids dans le secteur, c'est assez dommageable pour la transparence des marchés publics. - -Au milieu de ces mauvaises nouvelles, je tiens à souligner la belle continuité de la publication par la DGFiP des données des marchés publics remontées via le [protocole PES](https://www.collectivites-locales.gouv.fr/finances-locales/le-protocole-dechange-standard-pes). Merci à leurs équipes.""" +Quant à l'exhaustivité, je consolide toutes les sources de données exploitables que j'ai pu identifier (voir [ci-dessous](/bin.usr-is-merged/)). Je tiens à souligner la belle continuité de la publication par la DGFiP des données des marchés publics remontées via le [protocole PES](https://www.collectivites-locales.gouv.fr/finances-locales/le-protocole-dechange-standard-pes). Merci à leurs équipes.""" ), html.H4("Sources de données ", id="sources"), get_sources_tables(os.getenv("SOURCE_STATS_CSV_PATH")),