Re: [Galette-devel] Future (proche ?) évolution majeure
Salut, Le 11/11/2014 19:43, Mélissa Djebel a écrit : > Coucou, > > Foncièrement, je n'ai rien contre, on va s'adapter hein, on l'a déjà > fait au début pour réussir à faire des plugins sur Galette 0.7, puis les > changements que l'on sait pour Galette 0.8, on va continuer pareil avec > Slim. :-) > A partir du moment où il y a un 1er plugin (Paypal, Voiture, etc.) qui > fonctionne, ça permet d'avoir une "doc" développeur et d'avoir une idée > de ce qu'il faut faire. Oui, bien évidemment, les plugins « officiels » seront mis à jour (de toutes façons, je vais être obligé pour pouvoir mener les choses à bien), et différents exemples concrets seront disponibles (« comme toujours » en somme ;p). > Je ne m'y connais pas assez dans les différents framework de redirection > d'url pour dire quoi que ce soit et juger du framework choisi. Les solutions alternatives (Zend, Symfony, etc), sont plus complexes à appréhender et on peut douter des performances de certaines, surtout si l'on tente de les sortir de leur framework natal (qui a dit Symfony ??). Mis à part quelques projets mineurs, il ne semble pas y avoir tellement de possibilités, sauf de le faire à la mano (mais là... il faudrait écrire la doc, prendre en compte un nombre incalculable de cas de figure etc ; que Slim gère dores et déjà nativement). > Quitte à > tout pêter, on peut aussi partir sur du Ruby, du Python, du Responsive > Design (ping Bootstrap) et/ou soyons folles sur du Node.js. Alors... D'ici à ce qu'une appli Ruby soit facilement déployable sur n'importe quel hébergeur mutualisé, il va couler de l'eau sous les ponts (confer les problématique de déps) :D Python a toute mon affection, mais c'est un peu pareil ; j ne parle même pas de nodejs ;) C'est « rigolo » que tu associes Reponsive Design à Bootstrap (qui pour moi et un machin plutôt impossible à personnaliser, et qui requiert nombre d'éléments vides utiles à lui seul [au temps pour l'accessibilité !] -- bien que mon expérience [pas très heureuse] se limite à la version 2 du bazar. Et puis... Le coup du responsive dans Galette, oui, j'y ai déjà songé (on a même un embryon de démo en mode mobile) ; mais les histoires de tableaux et de formulaires complexes vont vite me filer des boutons :p Ceci étant dit, ça ne péterait que l'affichage, et encore... Tandis que là, on peut sans aucune vergogne introduire de bons gros bogues invisibles ; du genre qui n'enregistre pas, ou supprime de travers... \o/ Merci pour les différents retours en tous les cas, je ne manquerait pas de vous tenir informés de l'évolution de ce chantier. ++ -- Johan signature.asc Description: OpenPGP digital signature ___ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel
Re: [Galette-devel] Future (proche ?) évolution majeure
Salut, Le 11/11/2014 18:51, geg...@free.fr a écrit : > Bonsoir > C'est toi qui même la barque alors faudra bien suivre ! Certes... Mais si j'en parle un peu avant, c'est aussi pour prendre en compte les choses que j'aurai pu ne pas voir, emballé que je suis par les possibilités ;) > Coté vitesse d’exécution et utilisation de ressources, est ce que ça ne > rajoute pas une surcouche au traitement des pages et donc des lags ? C'est une question légitime, en effet. Mais même si le chargement de Slim représente un poids, il peut en revanche être mis en cache de manière très efficace, car on appelle toujours le même fichier. J'ai testé avec XHProf actif, sur la page du « bureau » : une première génération avec le dossier templates_c vide, et un seconde au rechargement de la page (c'est ce qui survient le plus fréquemment). Sans slim, cela donne : - 1 Overall Summary Total Incl. Wall Time (microsec): 1,357,868 microsecs Total Incl. CPU (microsecs):642,000 microsecs Total Incl. MemUse (bytes): 9,552,264 bytes Total Incl. PeakMemUse (bytes): 9,840,320 bytes Number of Function Calls: 74,760 - 2 Overall Summary Total Incl. Wall Time (microsec): 1,674,565 microsecs Total Incl. CPU (microsecs):69,000 microsecs Total Incl. MemUse (bytes): 6,045,408 bytes Total Incl. PeakMemUse (bytes): 6,107,656 bytes Number of Function Calls: 1,710 Avec Slim : - 1 Overall Summary Total Incl. Wall Time (microsec): 1,321,170 microsecs Total Incl. CPU (microsecs):700,000 microsecs Total Incl. MemUse (bytes): 11,063,504 bytes Total Incl. PeakMemUse (bytes): 11,281,784 bytes Number of Function Calls: 84,006 - 2 Overall Summary Total Incl. Wall Time (microsec): 1,637,169 microsecs Total Incl. CPU (microsecs):73,000 microsecs Total Incl. MemUse (bytes): 7,136,048 bytes Total Incl. PeakMemUse (bytes): 7,154,696 bytes Number of Function Calls: 3,431 Donc, à moins que je ne fasse des bêtises, ou que certaines fonctionnalités viendraient à pousser Slim dans ses derniers retranchements, je ne pense pas que les performances soient à craindre. > Et concernant les plugins va t'il falloir s'avaler toute la doc et les WIki > de Slim ou bien est ce que la ré-ecriture des URL sera suffisante ? La lecture de la doc, pour comprendre ce qu'on fait, restera utile (en l'état actuel des choses, c'est plus simple... Il n'y a pas de doc :D). De l'expérience que j'en ai, la migration est assez simple. Par exemple, pour le « bureau », on a actuellement ceci : https://github.com/galette/galette/blob/develop/galette/desktop.php#L51 Avec Slim, ça devient : https://github.com/galette/galette/blob/feature/slim/galette/includes/main.inc.php#L467 Ce n'est pas strictement identique, mais la somme de travail est somme toute assez réduite (la différence sur cette route particulière se situe surtout au niveau des variables passées aux templates ; et dans les templates eux-mêmes [cf. https://github.com/galette/galette/commit/f6ac1b0a9c39dadd1875a901d68ab7ce71894757#diff-0 -- juste desktop.tpl]). > Si les plugins tiers ne suivent pas tous, alors le risque est de voir > certains galettiens rester scotchés à la 8.2 et ne plus faire de MAJ (ceci > dit elle est bien cette 0.8.2) C'est là le problème des plugins, pas forcément que dans Galette... Mais il semble que tous ceux (et celles !) qui ont développé de tels plugins les mettent à jour régulièrement (et vous pouvez me solliciter pour tenter de vous expliquer ce que vous n'auriez pas saisi). > Enfin bloquer les évolutions de galette en attendant, pourquoi pas, on > patientera pour enfin avoir un onglet pour les coordonnées bancaire et de > préfecture de l'association, pour avoir une rubrique de saisie d' IBAN avec > contrôle des clés pour chaque adhérent et autres souhaits du tracker. On va > pas en mourir , non ? J'espère bien, je m'en voudrai d'en être la cause :D Mais c'est effectivement un peu le « fond » du problème, je ne travaillerai sur rien d'autre (sauf éventuelles commandes à la rigueur, mais comme c'est le calme plat de ce côté là, ce n'est pas pris en considération). ++ -- Johan signature.asc Description: OpenPGP digital signature ___ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel
Re: [Galette-devel] Future (proche ?) évolution majeure
Coucou, Foncièrement, je n'ai rien contre, on va s'adapter hein, on l'a déjà fait au début pour réussir à faire des plugins sur Galette 0.7, puis les changements que l'on sait pour Galette 0.8, on va continuer pareil avec Slim. A partir du moment où il y a un 1er plugin (Paypal, Voiture, etc.) qui fonctionne, ça permet d'avoir une "doc" développeur et d'avoir une idée de ce qu'il faut faire. Je ne m'y connais pas assez dans les différents framework de redirection d'url pour dire quoi que ce soit et juger du framework choisi. Quitte à tout pêter, on peut aussi partir sur du Ruby, du Python, du Responsive Design (ping Bootstrap) et/ou soyons folles sur du Node.js. Bises, Mélissa Le 11/11/2014 06:45, Johan Cwiklinski a écrit : Sur le plan technique, j'ai décidé de tester Slim (http://www.slimframework.com/) ___ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel
Re: [Galette-devel] Future (proche ?) évolution majeure
Bonsoir C'est toi qui même la barque alors faudra bien suivre ! Coté vitesse d’exécution et utilisation de ressources, est ce que ça ne rajoute pas une surcouche au traitement des pages et donc des lags ? Et concernant les plugins va t'il falloir s'avaler toute la doc et les WIki de Slim ou bien est ce que la ré-ecriture des URL sera suffisante ? Si les plugins tiers ne suivent pas tous, alors le risque est de voir certains galettiens rester scotchés à la 8.2 et ne plus faire de MAJ (ceci dit elle est bien cette 0.8.2) Enfin bloquer les évolutions de galette en attendant, pourquoi pas, on patientera pour enfin avoir un onglet pour les coordonnées bancaire et de préfecture de l'association, pour avoir une rubrique de saisie d' IBAN avec contrôle des clés pour chaque adhérent et autres souhaits du tracker. On va pas en mourir , non ? François - Mail original - De: "Johan Cwiklinski" À: "Galette development list" , "Galette general discussion" Envoyé: Mardi 11 Novembre 2014 06:45:18 Objet: [Galette-devel] Future (proche ?) évolution majeure Salut, Voilà quelque temps que je souhaite apporter une modification assez importante dans Galette : http://redmine.ulysses.fr/issues/417 Depuis novembre 2012, j'ai épisodiquement travaillé sur le sujet ; mais j'ai aussi passé un temps monstrueux à remettre ça à niveau à chaque fois que je m'y suis remis :( En effet, la nature même de la modification implique de ré-écrire et de supprimer l'ensemble des fichiers PHP présents directement à la racine de de galette, les templates doivent changer aussi, de même que les chemins vers les fichiers javascript, css, images, etc... Concrètement, que signifie cette évolution ? Plusieurs choses : 1- l'application ne devra plus forcément être intégralement servie par le serveur web, 2- on met en commun différents fichiers PHP actuellement épars, 3- les URL deviennent abstraites, alors qu'elles sont aujourd'hui basées sur des noms de fichiers, 4- Une application plus « moderne ». En ce qui concerne le point 1, ce que l'on a aujourd'hui : galette/ <-- racine web lib/ includes/ gestion_adherents.php Tout ce petit monde répond aux URL suivantes : http://monsite.fr/galette/ http://monsite.fr/galette/lib/ http://monsite.fr/galette/includes/ http://monsite.fr/galette/gestion_adherents.php Et ce que l'on aurait demain : galette/ lib includes/ webroot/ <-- racine web Si la racine web est définie sur le dossier webroot, les autres dossiers ne seront absolument pas accessible via quelque URL que ce soit. Bien évidemment, le dossier galette peut toujours faire office de racine, et le comportement sera le même qu'avant. Le point 2 quant à lui devrait permettre de rendre le code plus facile à maintenir, et aussi de mettre en commun pas mal de choses actuellement redondantes. Et enfin, le troisième point permettrait d'avoir des URL du type galette/member/show/2 au lieu de galette/voir_adherent.php?id_adh=2. L'avantage, c'est que les URL ne sont plus qu'une sorte de directive de configuration, qu'il est même possible de traduire (et obtenir ainsi galette/adherent/voir/2 - c'est possible, j'ai testé, restent à voir les implications et limitations -- on verra). Sur le plan technique, j'ai décidé de tester Slim (http://www.slimframework.com/), que je trouve vraiment pas mal : c'est simple, souple, et suffisamment puissant pour faire tout ce dont j'ai eu besoin jusque maintenant. Mon choix est arrêté sur cette bibliothèque. Bon... Passons aux « sujets qui fâchent » maintenant - Pendant le temps nécessaire à ce développement, Galette n'évoluera plus, hormis d'éventuels correctifs mineurs. Cela va prendre un certain temps de tout modifier, encore plus de vérifier et de tester (plusieurs mois). - Il est fort possible que des bogues importants surviennent (on va essayer d'éviter, hein, mais il faut être réaliste :p) - Les plugins seront tous à revoir (mais on y accèdera potentiellement avec de de jolis liens du genre http://monsite.fr/carte plutôt que http://monsite.fr/plugins/plugin-maps/maps.php :p)... Ce devrait être la dernière modification de fond sur Galette avant un bon moment ; sauf imprévus (qui sont par nature, imprévisibles). Je ne sais pas encore quand exactement je vais mettre ça définitivement en chantier. Comme je le disais, j'ai déjà commencé (https://github.com/galette/galette/compare/feature/slim), et je ne souhaite pas perdre le temps passé cette fois. J'envisage potentiellement d'apporter les dernières modifications à la version 0.8.2, de la sortir, puis d'embrayer là dessus ; rien n'est arrêté. Des avis ? Des remarques ? ++ -- Johan ___ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel ___ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel