116 lines
3.4 KiB
Markdown
116 lines
3.4 KiB
Markdown
<!-- file: deltas/0.0.1/alpha.1.fix.1.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta 0.0.1-alpha.1.fix.1 — politique Eclipse UTF-8
|
|
|
|
## Base requise
|
|
|
|
`0.0.1-alpha.1` appliqué, avec son résultat de validation enregistré dans `history/0.0.1/alpha.1.md`.
|
|
|
|
Ce fix reste strictement dans le scope de `alpha.1`.
|
|
|
|
## Objet
|
|
|
|
Corriger la politique Eclipse initiale de PGR afin de conserver dans Git le fichier `.settings/org.eclipse.core.resources.prefs` qui fixe l'encodage UTF-8 du projet, tout en continuant à ignorer les autres métadonnées Eclipse locales.
|
|
|
|
La version devient :
|
|
|
|
```text
|
|
0.0.1-alpha.1.fix.1
|
|
```
|
|
|
|
## Fichiers remplacés
|
|
|
|
```text
|
|
.gitignore
|
|
VERSION
|
|
```
|
|
|
|
## Fichiers ajoutés
|
|
|
|
```text
|
|
.settings/org.eclipse.core.resources.prefs
|
|
deltas/0.0.1/alpha.1.fix.1.md
|
|
```
|
|
|
|
Aucun fichier n'est supprimé.
|
|
|
|
Aucun manifest de suppression n'est nécessaire.
|
|
|
|
## Correction `.gitignore`
|
|
|
|
La règle trop large :
|
|
|
|
```text
|
|
.settings/
|
|
```
|
|
|
|
est remplacée par :
|
|
|
|
```text
|
|
.settings/*
|
|
!.settings/org.eclipse.core.resources.prefs
|
|
```
|
|
|
|
Cette forme est cohérente avec les dépôts de référence `sasedev-games` et KSP : les préférences Eclipse générales restent locales, mais le fichier d'encodage projet est explicitement ré-inclus.
|
|
|
|
`.project`, `.classpath`, `.factorypath`, `.pydevproject` et les autres métadonnées IDE listées restent ignorés.
|
|
|
|
## Préférence Eclipse versionnée
|
|
|
|
Le nouveau fichier contient uniquement :
|
|
|
|
```text
|
|
eclipse.preferences.version=1
|
|
encoding/<project>=UTF-8
|
|
```
|
|
|
|
Il est volontairement dépourvu d'un header `file/version`, car le format Eclipse est possédé par l'outil et ne doit pas recevoir de métadonnées PGR artificielles.
|
|
|
|
## Impact du plan
|
|
|
|
Aucun replan n'est nécessaire.
|
|
|
|
Le fix ne change ni les objectifs de `0.0.1`, ni son forecast, ni la matrice de validation générale. Il corrige seulement une hypothèse erronée de la tranche de bootstrap.
|
|
|
|
## Validation attendue
|
|
|
|
```bash
|
|
test "$(cat VERSION)" = "0.0.1-alpha.1.fix.1"
|
|
|
|
grep -Fx '.settings/*' .gitignore
|
|
grep -Fx '!.settings/org.eclipse.core.resources.prefs' .gitignore
|
|
|
|
grep -Fx 'eclipse.preferences.version=1' .settings/org.eclipse.core.resources.prefs
|
|
grep -Fx 'encoding/<project>=UTF-8' .settings/org.eclipse.core.resources.prefs
|
|
|
|
git check-ignore -q .project
|
|
if git check-ignore -q .settings/org.eclipse.core.resources.prefs; then
|
|
echo '.settings/org.eclipse.core.resources.prefs must be tracked, not ignored' >&2
|
|
exit 1
|
|
fi
|
|
|
|
git add .gitignore VERSION .settings/org.eclipse.core.resources.prefs deltas/0.0.1/alpha.1.fix.1.md history/0.0.1/alpha.1.md
|
|
git diff --cached --check
|
|
git status --short
|
|
```
|
|
|
|
Revue opérateur complémentaire :
|
|
|
|
- vérifier que `.settings/org.eclipse.core.resources.prefs` apparaît comme fichier ajouté/stagé ;
|
|
- vérifier que `.project` reste ignoré ;
|
|
- vérifier qu'aucun autre fichier de `.settings/` n'est introduit ;
|
|
- vérifier que le fix ne modifie aucun document hors de son scope.
|
|
|
|
## Transition
|
|
|
|
### PASS
|
|
|
|
Créer `history/0.0.1/alpha.1.fix.1.md`, puis ouvrir `0.0.1-alpha.2` conformément au plan actif.
|
|
|
|
Après validation, le commit de la tranche fixée doit contenir l'historique de `alpha.1`, le correctif `alpha.1.fix.1` et les fichiers corrigés. Aucun commit séparé de l'état défectueux n'est requis pour ce bootstrap initial tant qu'il n'a pas déjà été committé.
|
|
|
|
### FAIL
|
|
|
|
Rester dans le scope `alpha.1` avec `0.0.1-alpha.1.fix.2` ou déclencher un REPLAN uniquement si un problème plus large est découvert.
|