Journal InDefero, bug tracker et navigateur git/subversion en version 0.2.0

Posté par (page perso) .
Tags :
7
12
nov.
2008
Bonjour,

Cela faisait longtemps, mais enfin, il est arrivé en version 0.2.0[1]. InDefero[2] inclut maintenant la visualisation en ligne d'un fichier du dépôt si c'est un fichier "texte" et la possibilité d'attacher un fichier à un ticket (important pour les patchs).

Télécharger la dernière version ici : http://projects.ceondo.com/p/indefero/downloads/9/

Pour rappel, au départ, InDefero était un clone de GoogleCode avec git au lieu de subversion. Maintenant, InDefero propose même Subversion et un contributeur travail sur le support de Mercurial (et il y aurait une personne ayant un bout de code pour le support de bazaar). InDefero est codé en PHP5 et utilise le framework Pluf[3].

Il reste encore du chemin à parcourir, mais c'est déjà une alternative viable (si on n'a pas besoin du wiki) à GoogleCode ou Trac. Surtout, sa rapidité d'exécution et son poids plume (archive de 230Ko) peuvent séduire.

Le code évolue en étant à l'écoute des besoins des uns et des autres[4] tout en gardant toujours comme maître mot : simplicité. Vous pouvez lire sur l'évolution du projet sur mon carnet[5].

Vos remarques sont comme les dernières fois les bienvenues !

[1]: http://projects.ceondo.com/p/indefero/downloads/9/
[2]: http://www.indefero.net
[3]: http://www.pluf.org
[4]: #indefero sur freenode
[5]: http://xhtml.net/scripts/InDefero-bug-tracking-git/
  • # Hum

    Posté par (page perso) . Évalué à 2.

    Hum alors le projet a l'air assez cool, mais l'installation est assez ardue, il faut télécharger Pluf à part, déduire des erreurs qu'il faut le mettre dans le répertoire src/, il faut aussi installer les packages pear Mail et Mail_mime (mais malgré ça InDefero me crie quand même ": Uncaught exception 'PlufErrorHandlerException' with message 'Mail_smtp::include_once(Net/SMTP.php) "), il faudrait donc dire de faire aussi un "pear install --alldeps Net_SMTP".

    Ensuite il faut faire la config et bon ça devrait aller, mais je sais pas trop à quoi sert "$cfg['svn_repositories_unique'] = true;" c'est pas dis.

    J'ai essayé de lancer "php src/migrate.php --conf=IDF/conf/idf.php -a -i -d -u" (comme indiqué dans la doc) depuis le root de InDefero et je me prends "Error: Missing what to do or config file." j'ai du réfléchir un peu pour comprendre qu'il faut mettre --conf=src/IDF/conf/idf.php en fait mais l'exemple est pas bon à ce moment-là et l'erreur pourrait être plus explicite.

    Et enfin à la fin il faut créer un script "bootstrap" qui va créer un premier utilisateur administrateur. C'est un peu lourd tout ça, peut-être qu'un script pourrait faire tout ça, en ayant juste à installer les packages pear et créer la conf ?

    Enfin, même avec tout ça l'appli ne semble pas vouloir marcher... Si je tape sur l'url directe du truc, Pluf jette une erreur 500 et si j'essaye de taper l'url de mon projet créé dans le bootstrap (index.php/p/misc/) ça me donne ça :

    Fatal error: Uncaught exception 'Exception' with message 'HY000 - 1 - no such table: idf_projects - SELECT idf_projects."id" AS "id", idf_projects."name" AS "name", idf_projects."shortname" AS "shortname", idf_projects."description" AS "description" FROM idf_projects WHERE (shortname='misc') ' in /home/bohwaz/www/tmp/test/indefero-0.2.0/src/Pluf/DB/SQLite.php:90

    Bref c'est pas super accessible pour commencer, mais bon c'est que la 0.2.0, ça va s'arranger :) Sinon pour relativiser le discours "c'est tout petit", chez moi avec pluf le code fait 2,4Mo décompressé, c'est juste 10 fois plus que ce que tu annonce ;) (et 1,1Mo juste indefero décompressé)

    Mais ça reste un bel effort, faut continuer :)

    « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

    • [^] # Re: Hum

      Posté par (page perso) . Évalué à 1.

      Merci pour ce retour ! C'est le genre d'expérience dont j'ai besoin pour pouvoir mettre à jour la doc. Cela sera fait aujourd'hui. Lance :

      $ php src/migrate.php --conf=src/IDF/conf/idf.php -a -i -d

      pour créer les tables, le "-u" c'est le "dry-run".

      Pour la taille, je parle effectivement de la taille de l'archive et non de la taille totale, c'est juste pour comparer avec les applications où il faut souvent se faire un téléchargement de 5Mo pour faire quelque chose.

      Encore merci !
      • [^] # Re: Hum

        Posté par (page perso) . Évalué à 2.

        J'ai mis à jour la doc avec tes remarques:

        http://projects.ceondo.com/p/indefero/source/commit/a5acd5d6(...)

        Pour le "script qui fait tout", cela va venir, c'est effectivement important pour éviter aux gens de mettre les mains dedans inutilement.
        • [^] # Re: Hum

          Posté par (page perso) . Évalué à 1.

          Je l'avais lancé sans le dry-run et je viens de comprendre pourquoi ça merdait.

          Il faut mettre le chemin absolu du fichier dans $cfg['db_database'] si on utilise SQLite, sinon quand on lance migrate.php ça crée dans le répertoire courant, ça marche, mais ensuite l'appli web ne le trouve pas...

          Un autre bug : si on commente ce qui relève de git dans la conf (je n'utilise que svn), ça marche plus...

          « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

          • [^] # Re: Hum

            Posté par (page perso) . Évalué à 1.

            Bon je t'invite à tester plus amplement le support svn, chez moi il ne le prends pas en compte du tout il faut que je force $scm = 'svn'; dans src/IDF/Scm.php. Et ensuite :

            simplexml_load_string() [function.simplexml-load-string]: Entity: line 5: parser error : Premature end of data in tag list line 3

            Je m'arrête là parce que sinon je vais y passer la nuit :)

            « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

            • [^] # Re: Hum

              Posté par (page perso) . Évalué à 1.

              OK j'ai rien dis il fallait configurer le dépôt dans la config web du projet, du coup ça sert à quoi la config dans conf.php pour svn ?

              Donc du coup ça marche :)

              Enfin vu les erreurs ça aurait été bien de gérer un peu les erreurs possibles, parce que là il faut lire le code pour comprendre ce qu'il faut faire. Sinon c'est normal que la visu de source par svn soit aussi lente (serveur différent de celui qui a indefero) ?

              Bon à part ça, c'est bien foutu mais ça manque de feedback lisible en cas d'erreur pour comprendre ce qu'il faut faire, pas super intuitif.

              « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

  • # bzr ?

    Posté par (page perso) . Évalué à 2.

    Pure question de curiosité : est-ce que tu envisages (même à long terme) le support de bzr ou alors pas du tout tu n'en as rien à foutre ?

    Bzr manque en effet d'une interface de ce genre.
    • [^] # Re: bzr ?

      Posté par (page perso) . Évalué à 2.

      C'est en cours, mais pas par Loic. Dans un projet concurrent à indefero, nous reutilisons les classes de indefero pour l'accés aux repository, et un contributeur est en train de faire l'accés à Bzr et Mercurial. Le code sera bien entendu proposé en upstream :-)
      • [^] # Re: bzr ?

        Posté par (page perso) . Évalué à 2.

        Effectivement on travaille de concert car les devs de Jelix codent un équivalent d'InDefero. On va pouvoir éviter de dupliquer le travail. Par ailleurs, le support de Mercurial vient d'être ajouté.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.