docs(v1.4.0): update README, freeze CHANGELOG, bump version

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
sylvain
2026-03-13 04:20:36 +01:00
parent 84c8809f94
commit 5d3040a6ec
3 changed files with 66 additions and 17 deletions

View File

@@ -6,30 +6,39 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
## [Unreleased]
## [1.4.0] - 2026-03-13
### Added
- Support de fichier de configuration YAML (`.gitea-dashboard.yml` ou `~/.config/gitea-dashboard/config.yml`)
- Option `--config` pour specifier un fichier de configuration alternatif
- Resolution des variables `${VAR}` dans les fichiers de configuration
- Priorite de configuration : CLI > variables d'environnement > fichier config > defauts
- Vue milestones dediee avec `--milestones` (tableau Repo/Milestone/Open/Closed/Progress)
- Colonnes configurables avec `--columns` (inclusion, exclusion par prefixe `-`, `--columns help`)
- Vue milestones dédiée avec `--milestones` (tableau Repo/Milestone/Open/Closed/Progress)
- Support de fichier de configuration YAML (`~/.config/gitea-dashboard/config.yml`)
- Option `--config` pour spécifier un fichier de configuration alternatif
- Résolution des variables d'environnement `${VAR}` dans les fichiers de configuration
- Priorité de configuration : CLI > variables d'environnement > fichier config > défauts
- Colonnes configurables avec `--columns` (inclusion, exclusion par préfixe `-`, `--columns help`)
- Rétrocompatibilité `--no-desc` maintenue avec `--columns`
- Export JSON des milestones via `--milestones --format json`
- Parametre `state` dans `client.get_milestones()` (defaut: "open", supporte "all" pour la vue milestones)
- Paramètre `state` dans `client.get_milestones()` (défaut : "open", supporte "all" pour la vue milestones)
### Changed
- Colonne `activity` désormais rendue dans le tableau principal
### Fixed
- Degradation gracieuse sur timeout reseau pendant la pagination (retourne les donnees partielles au lieu de crasher)
- Dégradation gracieuse sur timeout réseau pendant la pagination (retourne les données partielles au lieu de crasher)
- Incohérence clé `token`/`auth` corrigée dans le chargement du fichier de configuration YAML
- Détection et rejet des variables `${VAR}` non résolues dans le token
### Technical
- Nouveau module `config.py` pour la gestion de configuration YAML (ADR-013)
- Nouvelle dependance PyYAML >= 6.0
- Nouvelle dépendance PyYAML >= 6.0
- Dataclass `MilestoneData` dans `collector.py` (ADR-014)
- Fonction `collect_milestones()` avec filtrage include/exclude et state=all
- Fonctions `render_milestones()`, `parse_columns()`, `AVAILABLE_COLUMNS` dans `display.py`
- Fonctions `milestones_to_dicts()`, `export_milestones_json()` dans `exporter.py`
- Refactoring : `_filter_repos()` extrait la logique de filtrage partagee dans `collector.py`
- Refactoring : `_filter_repos()` extrait la logique de filtrage partagée dans `collector.py`
## [1.3.0] - 2026-03-12
@@ -86,6 +95,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
- Gestion des erreurs réseau (connexion refusée, timeout, erreurs API)
- Masquage du token dans les messages d'erreur
[Unreleased]: https://gitea.tsmse.fr/admin/gitea-dashboard/compare/v1.4.0...HEAD
[1.4.0]: https://gitea.tsmse.fr/admin/gitea-dashboard/compare/v1.3.0...v1.4.0
[1.3.0]: https://gitea.tsmse.fr/admin/gitea-dashboard/compare/v1.2.0...v1.3.0
[1.2.0]: https://gitea.tsmse.fr/admin/gitea-dashboard/compare/v1.1.0...v1.2.0
[1.1.0]: https://gitea.tsmse.fr/admin/gitea-dashboard/compare/v1.0.0...v1.1.0

View File

@@ -6,6 +6,7 @@ Dashboard CLI affichant en une commande l'état de tous les repos d'une instance
- Python >= 3.10
- Accès à une instance Gitea avec un token API
- Dépendances : `requests`, `rich`, `PyYAML`
## Installation
@@ -15,7 +16,7 @@ pip install -e .
## Configuration
Le dashboard se configure via deux variables d'environnement :
### Variables d'environnement
| Variable | Description | Défaut |
|----------|-------------|--------|
@@ -24,19 +25,36 @@ Le dashboard se configure via deux variables d'environnement :
Pour créer un token : Gitea > Settings > Applications > Generate Token.
Exemple de configuration dans votre shell :
```bash
export GITEA_URL=https://gitea.tsmse.fr
# Définir GITEA_TOKEN avec la valeur obtenue depuis Gitea > Settings > Applications
```
### Fichier de configuration YAML
Le dashboard peut être configuré via un fichier YAML, évitant de répéter les variables d'environnement à chaque session. Le fichier est recherché dans l'ordre suivant :
1. Chemin spécifié via `--config`
2. `~/.config/gitea-dashboard/config.yml`
Les variables d'environnement `${VAR}` sont résolues automatiquement dans le fichier.
```yaml
url: https://gitea.tsmse.fr
token: ${GITEA_TOKEN}
```
La priorité de résolution est : options CLI > variables d'environnement > fichier de configuration > valeurs par défaut.
## Usage
```bash
gitea-dashboard
# ou
python -m gitea_dashboard
# Avec un fichier de configuration spécifique
gitea-dashboard --config /chemin/vers/config.yml
```
### Vérification de la connexion
@@ -87,12 +105,32 @@ gitea-dashboard --sort issues
gitea-dashboard -s activity
```
### Colonne Description
### Colonnes configurables
Le tableau affiche par défaut une colonne "Description" (tronquée à 40 caractères). Pour la masquer :
L'option `--columns` permet de choisir les colonnes affichées dans le tableau :
```bash
gitea-dashboard --no-desc
# Afficher uniquement les colonnes repo et issues
gitea-dashboard --columns repo,issues
# Exclure la colonne description
gitea-dashboard --columns -description
# Lister les colonnes disponibles
gitea-dashboard --columns help
```
Pour masquer la colonne description, l'option historique `--no-desc` reste disponible (équivalent à `--columns -description`).
### Vue milestones
L'option `--milestones` affiche un tableau dédié avec la progression de chaque milestone (colonnes Repo/Milestone/Open/Closed/Progress) :
```bash
gitea-dashboard --milestones
# Export JSON des milestones
gitea-dashboard --milestones --format json
```
### Export JSON

View File

@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "gitea-dashboard"
version = "1.3.0"
version = "1.4.0"
description = "CLI dashboard for Gitea repos status"
requires-python = ">=3.10"
dependencies = [