release: v0.2.0 — endpoint unifié et PIN de compte Pronote
Bump version 0.1.2 → 0.2.0. CHANGELOG mis à jour : contrat ExternalEndpoint commun, unification AI_BASE_URL, PIN de compte Pronote et durcissement sécurité.
This commit is contained in:
@@ -5,6 +5,35 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [0.2.0] - 2026-09-13
|
||||
|
||||
### Added
|
||||
|
||||
- Prise en charge du PIN de compte Pronote (`PRONOTE_ACCOUNT_PIN`) pour l'authentification par mot de passe (#8).
|
||||
- Contrat `ExternalEndpoint` commun (Pydantic v2 : `SecretStr`, `frozen`, `extra='forbid'`) pour les endpoints CalDAV, RSS et Pronote, avec nouvelles variables canoniques `CALDAV_ENDPOINT__URL`, `BLOG_ENDPOINT__URL`, `PRONOTE_ENDPOINT__URL`, `PRONOTE_ICAL_ENDPOINT__URL` (#16).
|
||||
|
||||
### Changed
|
||||
|
||||
- Unification du contrat `AI_BASE_URL` entre les fournisseurs de synthèse (#17).
|
||||
- Les anciennes variables `CALDAV_URL`, `BLOG_RSS_URL`, `PRONOTE_URL` et `PRONOTE_ICAL_URL` restent acceptées comme alias dépréciés (`DeprecationWarning`).
|
||||
- `hide_input_in_errors=True` sur les paramètres Pronote/CalDAV/Blog : les valeurs sensibles ne fuitent plus dans les erreurs de validation.
|
||||
- Schéma `file://` retiré du contrat des endpoints réseau ; HTTP restreint au loopback explicitement autorisé.
|
||||
- Documentation alignée (`README.LLM.md`, `.env.example`, `GUIDE_DEV_PYTHON.md`, `docs/pronote-auth.md`) et métadonnées de packaging (identité et URL Gitea réelles).
|
||||
|
||||
### Fixed
|
||||
|
||||
- Sécurité : détection des PIN `*_PIN` littéraux (#48), des PIN en query string (`?pin=`, #58) et des placeholders d'URL documentaires (#34) par `check_secrets.py`.
|
||||
- Sécurité : neutralisation de `__context__` et du traceback des exceptions expurgées (`raise ... from None` sorti des handlers) (#50).
|
||||
- `qr_token` : `get_informations()` ignorée en mode `qr_token` (erreur pronotepy 20 sur les instances HubEduConnect) (#21).
|
||||
- RSS : état mémoire confirmé après remplacement atomique avant l'acquittement des GUID (#49) ; GUID acquittés après livraison XMPP (#12).
|
||||
- CalDAV : devoirs rendus transparents (#11) ; événements gérés sans UID ignorés (#47).
|
||||
- Configuration : fenêtres de synchronisation négatives refusées (#14).
|
||||
- CLI : exécutions dégradées rendues observables (#13).
|
||||
- Pronote : parsing iCal fiabilisé pour l'année scolaire 2026.
|
||||
- XMPP : correction du timeout (mode TLS et timeouts de connexion/nettoyage).
|
||||
- Dry-run : simulation garantie sans persistance ; sérialisation du cycle QR/token local.
|
||||
- Documentation : commande `cd` corrigée après clonage du dépôt Gitea (#56).
|
||||
|
||||
## [0.1.2] - 2026-09-10
|
||||
|
||||
### Added
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "pronote-sync"
|
||||
version = "0.1.2"
|
||||
version = "0.2.0"
|
||||
description = "Synchronisation Pronote → CalDAV + XMPP"
|
||||
license = {text = "MIT"}
|
||||
readme = "README.md"
|
||||
|
||||
Reference in New Issue
Block a user