Repository navigation
Watchoo v0.5.0
Journal des modifications : CHANGELOG.md.
Image Docker : ghcr.io/studoo-app/watchoo:0.5.0.
[0.5.0] - 2026-10-27
Page par contributeur avec lien vers son profil GitHub, et lignes ajoutées et supprimées de tous les
commits, calculées depuis un clone Git de chaque dépôt.
Ajouté
- Page par contributeur : l'interface web gagne la page
/contributors/{id}: nom, login, avatar et
nombre d'identités Git connues (jamais les adresses), totaux (commits, lignes ajoutées et supprimées,
« — » si inconnues, dépôts, premier et dernier commit), commits par jour sur 90 jours, commits par
semaine et par dépôt sur 12 semaines (table des données repliable), ses dépôts (commits, lignes,
dernier commit, état du dépôt), ses commits paginés (50 par page) et ses pull requests, rapprochées par
son compte GitHub quand il est connu. Le nom d'un contributeur y mène depuis le classement des
contributeurs, les tables des graphiques par contributeur, les contributeurs de la page d'un dépôt,
l'auteur des commits des historiques et du tableau de bord. Dans le TUI,entréesur la vue
Contributeurs ouvre le détail d'un contributeur (totaux, lignes+/-, courbe sur 12 semaines, ses
dépôts, ses derniers commits) ;échaprevient à la liste. - Lien vers le profil GitHub des contributeurs dont le compte est connu, partout où l'interface web
en montre un (lien secondaire « GitHub », nouvel onglet). L'adresse est celle que donne l'API GitHub,
enregistrée dans la nouvelle colonnecontributors.profile_url(migration00005, appliquée
automatiquement) ; pour les contributeurs déjà en base, elle arrive avec leur prochain commit lu par
l'API. Aucun lien pour un contributeur connu seulement par Git (clones Git locaux).
Modifié
- Toujours cloner : avec
ghaussi, chaque dépôt suivi a désormais son clone Git local dans
repos/(créé à la première synchro, mis à jour à chacune). L'API reste la source des commits, des
métadonnées, des logins, des pull requests, des releases et des tags ; le clone donne les lignes
ajoutées et supprimées de tous les commits, premier import compris, sans plafond ni quota
(git diff-tree --numstatpar paquets). Le clone utilise les identifiants Git de la machine
(git.protocol), jamais le token degh; en HTTPS,gh auth setup-gitpermet àgitde
réutiliser le compte degh. Si le clone d'un dépôt est indisponible, la synchro du dépôt réussit
quand même : ses statistiques sont demandées à l'API comme avant (au plus 100 nouveaux commits par
synchro), avec un avertissement dans le bilan (watchoo sync, TUI, indicateur de synchro du web).
repos/occupe à peu près la taille des dépôts suivis, et la première synchro d'un dépôt est plus
lente (clone complet). Sansgh, rien ne change, sinon que les statistiques couvrent tous les
commits. - Statistiques inconnues ou nulles : la nouvelle colonne
commits.stats_known(migration00006,
appliquée automatiquement) distingue un commit dont les lignes sont inconnues (« — ») d'un commit
réellement à+0 −0(merge sans changement, commit vide), qui affiche désormais ses zéros. Les
commits déjà en base sans statistiques sont calculés par le clone à la synchro suivante.watchoo log --json(et le dernier commit derepo list --json) gagnestats_knownpour chaque commit. - Lignes par commit et totaux partout : chaque liste de commits montre les lignes
+/-du commit
(« — » si inconnues) : fil du tableau de bord, historique d'un dépôt, commits d'un contributeur, vue
Commits et détails du TUI, colonne+/-dewatchoo log. Les totaux sont donnés par contributeur,
par dépôt (carte du tableau de bord, en-tête et contributeurs de la page d'un dépôt, détail du TUI)
et pour tout l'espace (compteur « Lignes » du tableau de bord), avec « (dont N commits non comptés) »
quand une partie des commits n'a pas encore de statistiques. - L'indicateur de synchro du web compte les avertissements du dernier bilan (détail en infobulle).