Changes for CHANGELOG.md: 18 added lines, 0 removed lines.
Original line number
Diff line number
Diff line
## 1.0.0
- Exemple de configuration livré avec le paquet, `config/unicaen_referentiel.yaml.dist`, à copier dans `config/packages/` de l'application
- Seuil du garde-fou destructif configurable par `unicaen_referentiel.max_destructive_ratio`, il n'est plus codé en dur à 30 %
- Sortie console resserrée : un fichier sans changement ne s'affiche plus, une ligne de récapitulatif remplace les compteurs à zéro
- Exécution atomique : tous les fichiers d'une même commande passent dans une seule transaction, l'échec de l'un annule les précédents
-`--dry-run` joue le même chemin qu'une exécution réelle puis annule, ce qui lui permet de résoudre les relations vers les lignes qu'un fichier précédent aurait créées, cas où il échouait à tort
- Code réparti en `Config/` (ce que le fichier déclare) et `Sync/` (ce que le moteur en fait), chaque classe tenant une seule responsabilité
- Messages d'erreur rassemblés dans `SyncException` sous forme de constructeurs nommés, les points de levée disent l'intention et non la phrase
- Extraction du moteur `dataSync/` de smile-plus-api en bundle autonome `unicaen/referentiel-bundle`, namespace `Unicaen\Referentiel\`
- Commande `unicaen:referentiel:sync` (alias historique `app:sync:reference-data`) : synchronisation idempotente depuis le répertoire de données, `--dry-run` et `--force`
- Identifiants simples ou composites, y compris portés par une association (`{ field, relation }`)
- Associations simples (ManyToOne/OneToOne) et multiples (ManyToMany/OneToMany), comparaison insensible à l'ordre
- Politiques de champ `update_always` et `create_only`, politiques de disparition `keep`, `disable` et `delete`, avec garde-fou destructif au-delà de 30 % des lignes
- Répertoire de données configurable via `unicaen_referentiel.data_dir`