Pour le projet Jelix, j'utilise Trac pour le suivi et la gestion des bugs (il est hebergé sur http://developer.jelix.org/). Au départ, je l'avais trouvé sympa : simple à utiliser, avec des rubriques utiles comme la gestion et la visualisation des roadmap, la timeline pour être au courant de toutes les dernières modifications, le wiki intégré, la navigation dans les sources plus "sexy" que websvn.

Par contre à l'usage, Trac commence sérieusement à me gonfler :

  • Contenu des tickets vraiment minimal. Certes on peut ajouter des champs via le trac.ini (très facile), mais on ne peut définir aucune règle de gestion, sauf à développer un plugin (et le python n'est pas encore ma tasse de thé), ou alors à faire du javascript dans tout les sens pour cacher la misère (le plugin des dépendances de tickets est un bel exemple en la matière).
  • Les plugins parlons-en : du fait du minimalisme dans les tickets, on est obligé d'en installer un minimum afin d'avoir un truc décent. Par exemple, pour pouvoir créer des dépendances entre tickets (tel ticket bloque tel autre ticket), pouvoir gérer certaines choses "basiques" (liste des composants des versions etc), Ou encore avoir une authentification un peu mieux foutu. Cependant, le problème avec les plugins, c'est que la plupart sont soit incomplets, soit buggés, soit obsolètes ou utilisables seulement pour une version supérieure (et instable) de trac.
  • Il en découle un autre problème : la complexité de mettre à jour trac ou d'installer les plugins. Faut avoir les droits d'admin pour installer trac, modifier la conf apache et cie. Il y a des dépendances de partout. Il faut taper des lignes de commandes dans tout les sens, dont on ne se rappelle jamais la syntaxe. Bref, par rapport à une appli PHP traditionnelle, c'est l'horreur.
  • Impossible de rajouter des informations sur les pièces jointes. La gestion des pièces jointes est finalement trop pauvre pour mes besoins.
  • L'affichage des pièces jointes : buggé tout simplement. Quand on attache un patch par exemple. Pour certains, on peut les visualiser directement dans trac (avec coloration syntaxique et tout), pour d'autre, obligation de les télécharger pour les voir. Je soupçonne un problème de reconnaissance du mime type du fichier lors de l'upload, ou un truc dans le genre. Toujours est-il que c'est très énervant.
  • Bon et puis c'est pas super réactif, dû peut-être au fait que c'est en Python (pas taper :-) ), mais aussi certainement dû à la base de donnée : les concepteurs de trac sont vraiment des newbies en modélisation de base de données. Le schéma fait vraiment peur à voir. Un exemple : ils ne connaissent pas varchar, et vas-y que je te met tout les champs textuel en type "TEXT", des champs contenant uniquement des valeurs numériques en type "TEXT" également... Bien sûr, j'ai tenté d'améliorer tout ça, en changeant certains types, en ajoutant des indexes (primaire ou pas) là où il devait y en avoir etc.. Mais ça n'a que vaguement améliorer les choses.
  • Je ne parle pas des templates super lourdingues à modifier. J'en ai passé des heures à intégrer le design "jelix.org"...

J'utilise une version 0.10, je sais que la 0.11 est en préparation et corrige certains points (le langage des templates, l'admin par ex). Mais j'envisage sérieusement de changer de gestionnaire de projet. J'en ai déjà regardé quelques-uns : Bugzilla, Mantis, Redmine. Cependant, ils ne me conviennent pas forcément.

  • La gestion des tickets dans bugzilla est tout à fait ce qu'il faut. Mais l'interface est austère, et il n'y a pas de rubriques annexes comme la vue des roadmaps, de la timeline, la navigation dans les sources, ni de wiki intégré.
  • Redmine : ça a l'air sympa, mais un peu simpliste quand même. Et j'ai eu des retours comme quoi c'était plutôt lent, même sur une machine dédiée (rails oblige ?)
  • Mantis : l'interface est tout simplement une horreur. Pas seulement le design, mais aussi la façon dont elle est organisée. Et c'est lent.

Je suis en train de regarder une autre solution, mais je vous en dirais plus un autre jour.

Mise à jour : autres produits vus

  • phpBugTracker : trop simpliste, moche
  • Jira : ça a l'air complet et semble y avoir tout ce qu'il faut. Mais faut installer un serveur java, et puis c'est pas libre, bien que la licence soit gratuite pour les projets libres.