- Change Docker ports from 80/8000 to 8081/8080 (non-privileged) - Update CORS_ORIGINS in docker-compose.yml and .env.docker - Update all documentation (README.md, DOCKER.md) with new ports - Add Podman compatibility section to CHANGELOG.md - Enable podman-compose usage without root privileges
4.1 KiB
4.1 KiB
Changelog - Notytex
Toutes les modifications notables de ce projet seront documentées dans ce fichier.
Le format est basé sur Keep a Changelog, et ce projet adhère au Semantic Versioning.
[2.0.0] - 2025-11-26
🎉 Réécriture Complète (Flask → FastAPI + Vue.js)
Added
-
Podman Compatibility : Support complet sans privilèges root
- Ports non-privilégiés (8080/8081 au lieu de 80/8000)
- Compatible docker-compose et podman-compose
- Documentation complète dans DOCKER.md
-
Backend FastAPI : API REST JSON pure avec support async
- FastAPI 0.115+
- SQLAlchemy 2.0.36+ avec aiosqlite
- Pydantic 2.10+ pour validation
- Uvicorn 0.32+ serveur ASGI
- Architecture hexagonale (domain/infrastructure/api)
- 99 tests unitaires (100% de succès)
- Documentation OpenAPI automatique
-
Frontend Vue.js 3 : Single Page Application moderne
- Vue.js 3.5+
- Vite 6.0+ (build ultra-rapide)
- Vue Router 4.5+
- Pinia 2.2+ (state management)
- TailwindCSS 3.4+
- Chart.js 4.4+ pour graphiques
- 14 vues complètes
- 40+ composants réutilisables
-
Docker : Configuration complète de déploiement
- Dockerfile multi-stage pour frontend
- Docker Compose avec orchestration
- Healthchecks automatiques
- Guide de déploiement complet (DOCKER.md)
- Support HTTPS ready
-
Documentation :
- README.md complet pour v2
- REWRITE.md : historique de migration
- DOCKER.md : guide de déploiement
- Documentation API interactive (Swagger/ReDoc)
Changed
- Architecture : Séparation complète backend/frontend
- API : 45 routes RESTful (vs templates HTML)
- Performance : Support async/await natif
- Validation : Pydantic pour toutes les entrées
- Tests : 99 tests unitaires + tests de parité
- Configuration : Variables d'environnement avec Pydantic Settings
- Logging : Logs structurés JSON
Removed
- Code Flask monolithique (archivé dans Git history)
- Templates Jinja2 (remplacés par Vue.js)
- WTForms (remplacé par validation Pydantic)
- JavaScript fragmenté (remplacé par Vue.js moderne)
Migration Notes
- Base de données SQLite inchangée (compatibilité 100%)
- Mêmes modèles de données
- Mêmes règles métier et calculs
- Tests de parité v1/v2 validés
[1.0.0] - 2024-09-17
Initial Release (Flask)
Features
- Application Flask monolithique
- Gestion des classes et élèves
- Système d'évaluations avec notation dual (notes/compétences)
- Calcul de statistiques et résultats
- Conseil de classe
- Import CSV élèves
- Envoi de bilans par email
- Templates Jinja2 + TailwindCSS
- 100 tests unitaires Flask
Versions des Dépendances
Backend (v2.0.0)
Python: 3.11-3.13
FastAPI: 0.115+
SQLAlchemy: 2.0.36+
Pydantic: 2.10+
Uvicorn: 0.32+
pytest: 8.3+
Frontend (v2.0.0)
Node.js: 22 LTS
Vue.js: 3.5+
Vite: 6.0+
Vue Router: 4.5+
Pinia: 2.2+
TailwindCSS: 3.4+
Chart.js: 4.4+
Docker (v2.0.0)
Docker: 24.0+
Docker Compose: 2.20+
Python base: 3.12-slim
Node base: 22-alpine
Nginx: alpine (latest)
Migration Guide v1 → v2
Pour les utilisateurs
- Pas de migration de données nécessaire - La base SQLite est compatible
- Nouvelles commandes de démarrage :
# Backend cd backend && uv run python -m uvicorn api.main:app --reload --port 8000 # Frontend cd frontend && npm run dev - Nouvelles URLs :
- Frontend : http://localhost:3000
- API : http://localhost:8000
- Docs : http://localhost:8000/api/v2/docs
Pour les développeurs
- Nouvelle structure : Voir
REWRITE.mdpour l'architecture complète - Tests :
cd backend && uv run pytest tests/ -v - Linting :
cd backend && uv run ruff check . - Format :
cd backend && uv run black .
Liens Utiles
Développé avec ❤️ pour simplifier la vie des enseignants