Changes to "Documentation développeur" between 2016-10-11 21:54:22 and 2017-05-12 03:26:21

     1      1   <h3>Informations sur le projet</h3>
     2      2   
     3      3     *  Licence utilisée : Affero GPL v3 (basiquement identique à la GPL mais rajoute une obligation de distribuer le code pour une utilisation sur un serveur même si pas de distribution de binaire)
     4         -  *  Langage utilisé : PHP 5.4 (passage à PHP 5.6 prévu avec la sortie de Devuan Jessie)
            4  +  *  Langage utilisé : PHP 5.6 (passage à PHP 7.0 prévu avec la sortie de Debian Stretch)
     5      5     *  Base de donnée utilisée : SQLite 3
     6      6   
     7      7   <h4>Pourquoi SQLite seulement ?</h4>
     8      8   
     9      9   Parce que c'est une manière simple d'avoir toutes les données de l'application regroupées au même endroit, et que l'application puisse gérer ses propres imports / exports et sauvegardes. De même cela simplifie grandement l'installation pour les débutants : rien à configurer de technique.
    10     10   
    11     11   SQLite est une base de données très puissante et rapide qui offre de nombreuses possibilités avancées. L'avantage principal est que la base de données est comprise en un seul fichier, simplifiant sa gestion et réplication. Enfin, sa résilience et ses performances ne sont plus à prouver, d'autant plus maintenant qu'elle est la base de données la plus utilisée au monde. En se concentrant sur une seule base de données il est possible d'obtenir des améliorations et simplifications qu'il ne serait pas possible d'avoir en devant rester générique pour fonctionner avec plusieurs bases de données.
................................................................................
    21     21   
    22     22   <h3>Obtenir une copie du repository de développement</h3>
    23     23   
    24     24     *  Installer [http://fossil-scm.org/|Fossil], l'outil de versionnement utilisé pour le développement (sur Debian et Ubuntu : apt-get install fossil)
    25     25     *  Se placer dans un répertoire où l'on souhaite copier le fichier contenant le repository (il contiendra l'intégralité du code, mais aussi toutes les modifications réalisées, les tickets, le wiki, etc.) : par exemple ~/fossil/
    26     26     *  Lancer : fossil clone https://fossil.kd2.org/garradin/ garradin.fossil
    27     27     *  Créer un nouveau répertoire où l'on veut récupérer le code et s'y placer : par exemple ~/fossil/garradin/
    28         -  *  Lancer : fossil open ~/fossil/garradin.fossil
    29         -  *  Exécuter le script setup-dependencies.sh pour télécharger les dépendances
           28  +  *  Lancer : fossil open ~/fossil/garradin.fossil dev
           29  +  *  Installer les dépendances : make deps
           30  +
           31  +Pour tester Garradin avec le serveur web intégré à PHP lancer : make dev-server
           32  +
           33  +Et se rendre à l'adresse http://localhost:8082/ avec son navigateur web.
    30     34   
    31     35   <h3>Comment proposer un patch ?</h3>
    32     36   
    33     37     *  Créer sa propre branche de développement : fossil branch new --private perso trunk
    34     38     *  Se positionner sur cette branche : fossil checkout perso
    35     39     *  Faire ses modifs sur le code...
    36     40     *  Exporter un patch : fossil diff -N --branch perso > mon-patch.txt