Config uit git #6

Merged
marijn merged 2 commits from config_uit_git into main 2026-10-14 18:19:52 +00:00
4 changed files with 62 additions and 1 deletions
Showing only changes of commit 6e78b2e790 - Show all commits

No files matched your search

+18
View File
@@ -0,0 +1,18 @@
# PIVOT – afspraken voor Claude
## Versienummer bij elke commit
Het versienummer van PIVOT staat in het bestand `VERSION` (onderaan elke pagina: "PIVOT – Versie x.y.z").
**Vóór elke commit** het versienummer één stap verhogen en `VERSION` mee in de commit opnemen:
```bash
python verhoog_versie.py
git add VERSION
```
- Eén verhoging per commit, niet per gewijzigd bestand.
- Regels: het laatste cijfer telt op tot 99, daarna gaat het middelste cijfer omhoog (`1.1.99` → `1.2.0`); het middelste cijfer gaat ook tot 99 (`1.99.99` → `2.0.0`). Het eerste cijfer heeft geen maximum.
- Nooit `VERSION` met de hand aanpassen of nummers overslaan.
- Geeft een merge of pull een conflict in `VERSION` (twee branches verhoogden tegelijk)? Neem het **hoogste** van de twee nummers en voer daarna `python verhoog_versie.py` nog één keer uit.
- Vermeld het nieuwe nummer in de commitboodschap, bv. `Logo leesbaar maken in het donkere thema (1.1.2)`.
+1
View File
@@ -0,0 +1 @@
1.1.1
+10 -1
View File
@@ -27,6 +27,15 @@ def _get(section, key, fallback='', env=None):
return config_file.get(section, key, fallback=fallback) return config_file.get(section, key, fallback=fallback)
def _versie():
"""Versienummer uit het bestand VERSION (wordt bij elke commit verhoogd met verhoog_versie.py, zie CLAUDE.md)."""
try:
with open(os.path.join(base_dir, 'VERSION'), encoding='utf-8') as f:
return f.read().strip()
except OSError:
return _get('algemeen', 'app_version', 'onbekend')
def _secret_key(): def _secret_key():
"""FLASK_SECRET_KEY, config.ini, of anders een willekeurige sleutel die bewaard wordt in geheimen/flask.key. """FLASK_SECRET_KEY, config.ini, of anders een willekeurige sleutel die bewaard wordt in geheimen/flask.key.
(Nooit een vaste standaardsleutel: daarmee kan iemand een sessie voor eender welke school vervalsen.)""" (Nooit een vaste standaardsleutel: daarmee kan iemand een sessie voor eender welke school vervalsen.)"""
@@ -86,7 +95,7 @@ class Config(metaclass=_SchoolConfigMeta):
_get('algemeen', 'superbeheerders', env='PIVOT_SUPERBEHEERDERS').replace(';', ',').split(',') _get('algemeen', 'superbeheerders', env='PIVOT_SUPERBEHEERDERS').replace(';', ',').split(',')
if x.strip()] if x.strip()]
APP_VERSION = _get('algemeen', 'app_version', '1.1.0') APP_VERSION = _versie()
# Elke bezochte pagina bewaren in de tabel Logs (centrale database) # Elke bezochte pagina bewaren in de tabel Logs (centrale database)
LOGBOEK = _get('algemeen', 'logboek', 'ja').strip().lower() in ('ja', 'yes', 'true', '1', 'on') LOGBOEK = _get('algemeen', 'logboek', 'ja').strip().lower() in ('ja', 'yes', 'true', '1', 'on')
+33
View File
@@ -0,0 +1,33 @@
"""
Verhoogt het versienummer in VERSION met één stap. Uitvoeren vóór elke commit:
python verhoog_versie.py
Regels: het laatste cijfer gaat telkens één omhoog, tot 99.
1.1.0 -> 1.1.1
1.1.99 -> 1.2.0
1.99.99 -> 2.0.0 (het eerste cijfer heeft geen maximum)
"""
import os
PAD = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'VERSION')
MAX = 99
def volgende(versie):
hoofd, sub, patch = (int(x) for x in versie.strip().split('.'))
patch += 1
if patch > MAX:
patch, sub = 0, sub + 1
if sub > MAX:
sub, hoofd = 0, hoofd + 1
return f"{hoofd}.{sub}.{patch}"
if __name__ == '__main__':
with open(PAD, encoding='utf-8') as f:
oud = f.read().strip()
nieuw = volgende(oud)
with open(PAD, 'w', encoding='utf-8') as f:
f.write(nieuw + '\n')
print(f"{oud} -> {nieuw}")