L'équipe des développeurs de Zeste de Savoir est heureuse de vous présenter la version 1.7 (ainsi que la 1.6), qui vient d'être déployée en production ! Contrairement à la version 1.5, la version 1.6 renoue avec les grosses nouveautés que nous vous laissons découvrir dans la section ci-dessous (quel suspense insoutenable !).
Qu'est-ce qui a été modifié ?
Pas moins de 75 tickets ont été fermés pour la version 1.6 et 79 pour la 1.7, soit au total 154 tickets !
Certes, il y a eu beaucoup de corrections de bugs, mais surtout une grosse nouveauté : la première brique de l'API est disponible avec la publication de l'API des membres. Autre chantier qui a débuté : l'amélioration des performances. Pour l'instant, c'est mineur et peu visible mais certaines pages exécutent déjà beaucoup moins de requêtes SQL qu'en v1.5.
On peut noter l'énorme travail qui a été fait : la version 1.6 a été mise en production moins d'un mois après la version 1.5 ! La 1.7 a, elle, mis plus de temps à sortir (presque un mois et demi après la 1.6) et a subi 5 mises en bêta.
Voici la liste complète des tickets pour la version 1.6 puis la 1.7 :
Rapport pour le jalon Version 1.6 ()
75 tickets sont compris dans ce jalon (0 ouverts et 75 fermés)
Ticket toujours ouvert
Aucun ticket
Ticket fermé
Corrections de bug
Ticket # | Titre | Label(s) |
---|---|---|
#2355 | Autocomplétion mp validation du formulaire | BUG, Front |
#2324 | Compteur de membres erroné dans la liste des membres | Back, BUG, Facile |
#2320 | L'auto complétion ne fonctionne pas | API, BUG, Front |
#2317 | Throttling partagé entre tous les utilisateurs | API, BUG |
#2268 | Erreur 500 lors de la recherche d'un sujet | Back, BUG |
#2257 | Poser des limites d'utilisation à l'API | Back, BUG |
#2253 | "gulp watch" crash si il y a une erreur javascript | BUG, Front |
#2234 | Impossible de modifier son adresse email | Back, BUG |
#2233 | Impossible de modifier son mot de passe | Back, BUG |
#2232 | Erreur 500 lorsque j'essaie de modifier mon profil | Back, BUG |
#2231 | Plus de pagination dans la liste des membres | Back, BUG |
#2229 | Remplacer caffeinehit/django-oauth2-provider | Back, BUG |
#2223 | Un champ manquant durant la validation des articles | BUG, Facile |
#2209 | Faute d'orthographe qui s'immisce | BUG, Facile |
#2204 | La notification par email est cassee si on s'enregistre par un compte social | Back, BUG |
#2196 | Lien vers l'article faux quand on modifie et répond à un article | BUG, Facile |
#2193 | Boucle de requêtes SQL sur les alertes | Back, BUG |
#2176 | L'avertissement de reponse entre-temps est mal affiche | BUG, Facile, Front |
#2168 | Marquer un sujet comme non résolu enlève l'avertissement de flood | BUG, Facile, Front |
#2154 | L'ajax des +1/-1 n'est pas cohérent en cas d'égalité | BUG, Front |
#2135 | Travis utilise la mauvaise version de npm | BUG, Front |
#2131 | La licence est absente lors de la visualisation d'une partie du tutoriel | Back, BUG, Facile |
#2126 | Minituto, incohérence d'affichage du plan entre la version hors ligne et la version en ligne | BUG, Facile, Front |
#2125 | Typo dans le texte de dépublication. | BUG, Facile, Front |
#2124 | L'historique d'un tutoriel ne nous dit pas quelle version du tuto est en ligne | Back, BUG, Facile |
#2123 | La page d'historique d'un tutoriel propose de télécharger un tuto mais de version inconnue | BUG, Facile, Front |
#2105 | Fil d'ariane lors de l'édition d'un message incohérent entre les mps et les forums | BUG, Facile, Front |
#2097 | Le lien du forum Bug et Suggestion de la page 500 n'est pas le bon | BUG, Facile |
#2096 | la page d'erreur 500 manque de certaines informations | BUG, Facile, Front |
#2090 | En mode connecté, on fait une requête pour CHAQUE MP RECU ! | Back, BUG |
#2089 | 1 requête par membre pour en afficher les infos (toute pages) | Back, BUG |
#2075 | Tentative de signalement de faute, et rejet | Back, BUG, Facile |
#2073 | Un utilisateur peut s'écrire à lui même | Back, BUG |
#2066 | Il n'ya pas de ligne de césure entre le texte et la conclusion | BUG, Facile, Front |
#2030 | Le partge pas mail d'un article/tutoriel ne fonctionne pas | BUG, Facile, Front |
#2000 | LaTeX et la balise « secret » ne passent pas lors de la prévisualisation | BUG, Front |
#1973 | Les boutons d'actions dans la sidebar ne sont pas ajaxifiés sur mobile | BUG, Front |
#1936 | Utiliser le dropdown désactive les modales | BUG, Difficile, Front |
#1875 | Lien de telechargement de la doc de solr down | BUG, Documentation |
#1673 | Affichage des tutoriels en beta depuis un profil membre est cassé | BUG, Front |
#1477 | Les titres des tutoriels et articles long sont invisibles | BUG, Facile, Front |
Evolutions
Ticket # | Titre | Label(s) |
---|---|---|
#2374 | Afficher son profil par l'API sans spécifier un identifiant | API, Evolution |
#2278 | Vise à rendre plus explicite le terme LS | Evolution, Facile |
#2219 | Progdupeu.pl a changé de nom de domaine et d'hébergement Git | Evolution, Facile |
#2197 | Ajout du support de Django pour landscape.io | Back, Evolution |
#2179 | Les adresses emails des pages de contacts sont capturables par les bots | Evolution, Facile, Front |
#2173 | Un badge pour la santé du code | Documentation, Evolution |
#2170 | Transférer le reste de la documentation dans le dossier Sphinx | Documentation, Evolution |
#2127 | Mise à jour de gitpython | Back, Evolution |
#1738 | Réorganisation du code SASS | Evolution, Front |
#1724 | Versionner les fichiers statiques | Back, Evolution, Facile, Front |
#1718 | Nettoyer le fichier « scss/_icons.scss » | Evolution, Facile, Front |
Non défini
Ticket # | Titre | Label(s) |
---|---|---|
#2373 | Handles CORS for the API. | API |
#2372 | Improves documentation of the api | Documentation |
#2359 | Le wiki de github n'est pas à jour | Documentation, Facile |
#2356 | La bêta n'a pas d'IPv6 | Infra |
#2276 | Possible de se sélectionner pendant l'autocomplétion | Front, Régression |
#2249 | Rendre les messages d'erreurs moins agressifs | Facile, Front |
#2241 | La branche dev est cassée | Régression |
#2230 | L'autocompletion ne fonctionne plus | Front, Régression |
#2211 | fix #2209 : Correction orthographique v2 | |
#2207 | Nettoyage des MP | Back |
#2206 | Mettre à jour la page "A propos" | Facile |
#2188 | Améliorations du code (via les erreurs de landscape.io) | Back, Facile |
#2171 | Augmentation du taux de couverture des tests | Back |
#2164 | Problème de typo dans la doc | Documentation, Front |
#2142 | Petite faute lors de la validation de l'inscription | Facile, Front |
#2136 | Améliore la documentation front | |
#2134 | Impossible de selectionner les articles d'une sous catégories | Facile, Front |
#2122 | L'affichage des tags est cassé sur l'historique d'un tuto | Facile, Front, Régression |
#2061 | Met à jour l'année | Facile, Front |
#2010 | Documenter l'installation et la configuration de Sorl | Documentation |
#2002 | Les tests django écrasent les données ! | |
#1849 | docs : git pre-hook et autres instructions sur OSX | Facile, Infra |
#1510 | La doc de déploiement de ZdS sur le serveur est outdated | Documentation |
Rapport pour le jalon Version 1.7 ()
79 tickets sont compris dans ce jalon (0 ouverts et 79 fermés)
Ticket toujours ouvert
Aucun ticket
Ticket fermé
Corrections de bug
Ticket # | Titre | Label(s) |
---|---|---|
#2510 | Relase 1.7 : le slug dans un mp incorect | Back, BUG, Facile |
#2501 | Impossible de contacter l'ensemble des auteurs d'une publication via l'action du menu latéral | Back, BUG, Régression |
#2492 | Impossible de cliquer sur une conversation privée dans les notifications | BUG, Front |
#2491 | La liste des derniers sujets créés dans le profil sont mal affichées | BUG, Front |
#2488 | Page d'aide des auteurs : le compteur a disparu | Back, BUG |
#2487 | [version 1.7] La bannière "cookies" disparaît quand on clique sur "en savoir plus" | BUG, Front |
#2423 | URL des messages privés incorrecte | Back, BUG |
#2394 | Il est possible de créer un topic/mp sans titre apparent | Back, BUG, Front |
#2366 | Doublon dans la sidebar d'édition d'un MP | BUG, Facile, Front |
#2364 | Saut à la ligne avec la soumission par CTRL+Enter | BUG, Front |
#2337 | Icone "Sujet résolu" écrasé par le texte dans la liste des derniers sujets crées | BUG, Facile, Front |
#2336 | Les titres de MPs sont coupés alors qu'il y'a de la place | Back, BUG, Facile |
#2332 | Liens comptes sociaux footer - version mobile | BUG, Front |
#2326 | Problème de typo dans la sanction de type lecture seule | BUG, Facile, Front |
#2325 | Le nom de l'association est manquant dans le mail de demande d'adhésion | BUG, Front |
#2321 | Erreur 500 lors de l'édition d'un profil | Back, BUG |
#2319 | L'extrait d'un message masqué est affiché sur la page "Sujets créés par…" | Back, BUG, Facile |
#2305 | Il est possible d'envoyer un MP à l'auteur externe | Back, BUG |
#2303 | L'affichage de L'Ajax sur les +1/-1 ne colle pas a la réalité | BUG, Front |
#2301 | Impossible de voir le profil de certains membres avec des caractères particuliers | Back, BUG |
#2300 | Un membre non activé n'a pas de badge et une sidebar fausse | Back, BUG |
#2299 | Il est possible d'envoyer un MP a un membre qui n'a pas encore activé son compte | Back, BUG |
#2294 | API : paramètres pour le ban mal nommés | API, BUG, Documentation, Facile |
#2293 | Problème d'alignement dans les filtres du besoin de l'aide aux auteurs | BUG, Facile, Front |
#2289 | Problème d'affichage de "suivant" dans l'aide aux auteurs sur mobile | BUG, Facile, Front |
#2287 | Problème de taille entre les boutons connexion et inscription sur mobile | BUG, Front |
#2275 | Incohérence sur le nombre de messages d'un membre | Back, BUG, Facile |
#2178 | Icones de filtres de type d'articles changent de manière incohérente | BUG, Facile, Front |
#2177 | Erreur 500 lors de la création malencontreuse d'une réponse a un mp | Back, BUG, Facile |
#2115 | Les +1/-1 ne sont pas supprimé lors de la désinscription | Back, BUG |
#2111 | Erreur 500 lors du téléchargement d'un tutoriel inexistant | Back, BUG, Facile |
#2108 | Erreur 500 lors de l’édition malencontreuse d'un tutoriel | Back, BUG, Facile |
#2107 | Erreur 500 lors de l’édition malencontreuse d'un article | Back, BUG, Facile |
#2106 | Impossible d'ajouter un auteur pendant l'édition d'un article | BUG, Facile, Front |
#2104 | Erreur 500 lors de l’édition malencontreuse d'un commentaire d'article | Back, BUG, Facile |
#2103 | Erreur 500 lors de l’édition malencontreuse d'un commentaire de tutoriel | Back, BUG, Facile |
#2102 | Erreur 500 lors de l'edition malencontreuse d'un message de mp | Back, BUG, Facile |
#2100 | Erreur 500 dans la zone de validation d'un article | Back, BUG, Facile |
#2099 | Erreur 500 dans la zone de validation de tutoriel | Back, BUG, Facile |
#2098 | Erreur 500 lors de l'edition malencontreuse d'un message de forum | Back, BUG, Facile |
#2095 | Erreur 500 lors de la création d'un topic avec un mauvais paramètre | Back, BUG, Facile |
#2081 | Editer un message par du vide valide le message et garde l'ancien | Back, BUG |
#2079 | Le topic de beta ne s'en va pas avec le tutoriel | Back, BUG |
#2074 | Le compte anonyme est sanctionnable | BUG |
#2054 | Le site n'est pas compatible IE9 | BUG, Facile, Front |
#2052 | Incohérence dans l'affichage des licences d'un tutoriel/article | Back, BUG, Front |
#2049 | Problème de 404 dans la navigation par tag | Back, BUG |
#2013 | Lien d'adhésion toujours présent même si abence d'association | BUG, Facile, Front |
#1925 | Catégories du forum qui se superposent | BUG, Front |
#1913 | Des forums en double | Back, BUG |
#1817 | Interprétation des formules de MathJax dans les formulaires | Back, BUG |
#1784 | Le nom du site n'est pas présent dans les mails de MP | Back, BUG, Facile |
#1706 | Impossible de poster une image dans une galerie depuis son mobile | BUG, Front |
#1640 | Adresse email avec des caractères spéciaux provoque des 500 avec gravatar | Back, BUG |
Evolutions
Ticket # | Titre | Label(s) |
---|---|---|
#2398 | Refactorisation des vues du module des MPs | Back, Evolution |
#2387 | Permet d'installer un plugin de recherche | Evolution, Front |
#2363 | Soumettre un formulaire avec CMD+Enter | Evolution, Front |
#2334 | Contraste sur les boutons de stylisation d'un message | Evolution, Front |
#2264 | Améliore le design de la documentation de l'API | Evolution, Front |
#2113 | Le formulaire de demande de reinitialisation n'accepte pas les emails | Back, Evolution, Facile |
#2048 | Confirmer la fermeture d'un topic | Evolution, Facile, Front |
#2041 | Ajaxification du bouton "cette réponse m'a aidée" | Evolution, Front |
#1990 | Mettre un lien pour partager sur Diaspora* | Evolution, Front |
Non défini
Ticket # | Titre | Label(s) |
---|---|---|
#2521 | On ne distingue plus les sujets non lus et les sujets lus dans la sidebar | Front, Régression |
#2486 | [version 1.7] plus moyen de cliquer sur un pseudo dans le forum | Régression |
#2477 | Correction du test en erreur | |
#2455 | deploy.sh: Charge nvm que s'il existe + compatibilité npm < 2.x | Facile, Front |
#2446 | La v1.7-RC1 ne déploie pas | Régression |
#2441 | Compile les code C sans optimisation | |
#2440 | Signaler une faute dans un article | |
#2418 | Corrige une erreur dans Gulpfile.js | |
#2416 | Suppression d'un lien en double dans un template | |
#2392 | Les sujets privés ne sont pas si privés que ça | Back, Facile, Régression |
#2362 | Suppression d'un fichier inutilisé | Back |
#2361 | Petite correction d'URL dans la doc | Documentation |
#2358 | Le mot wget est présent deux fois dans la doc solr | |
#2304 | Libellé Administration réduit dans la sidebar | Front, Régression |
#2291 | Mise a jour markdown | Markdown |
#1528 | Sommaire vide sur les tutoriels en beta/en rédaction | Back, Régression |
L'API des membres, principale nouveauté
L'API des membres permet, comme son nom l'indique, de s'interfacer facilement et naturellement avec Zeste de Savoir – ou plus exactement avec le module des membres de Zeste de Savoir.
Toute la documentation est disponible :
- sur Read The Docs en ce qui concerne le fonctionnement général ;
- sur Zeste de Savoir (il y a un lien dans le pied de page) en ce qui concerne l'interface proprement dite.
Ceux que ça intéresse pourront toujours se reporter aux spécifications d'origine décrites dans la ZEP-17.
Comme de bien entendu, qui dit API dit applications, et qui dit applications dit "autorisation", parce qu'autoriser n'importe quoi à accéder à cette API, ce serait prendre des risques inconsidérés. Vous pouvez donc demander une clé d'API ici.
À noter que tout ça sentait encore un peu la peinture fraîche en version 1.6 :
- la documentation n'avait pas encore le design de Zeste de Savoir ;
- elle n'est disponible qu'en HTTP – le bug qui l'empêche de s'afficher en HTTPS est un bug connu de Swagger (l'outil qui génère une documentation interactive) ;
- il manque 2 URL dans la doc (affichées toutefois sur une instance locale, allez comprendre) :
GET /api/membres/
etPOST /api/membres/
; - une URL est affichée alors qu'elle n'existe pas :
PATCH /api/membres/
.
La version 1.7 fait mûrir un peu cette documentation avec l'intégration du design de Zeste de Savoir !
Et parce qu'une API seule ne sert pas à grand-chose (même si elle est utilisée en interne), Eskimon a lancé un sujet sur les utilisations les plus originales de cette API. Certains membres se sont donc mis à faire des graphiques en jouant avec les dates d'inscription et les dernières connexions !
Les ZEPs
ZEP-25 : catégorisation des articles et tutoriels
Du fait de la proximité de cette version avec la précédente, les membres n'ont pas eu beaucoup de temps. Toutefois, Dominus Carnufex nous propose de revoir la catégorisation des articles et des tutoriels.
ZEP-04 : Nouvelle page d'accueil !
La ZEP-04, concernant la présentation de la future nouvelle page d'accueil, est enfin passée au stade de développement ! Les deux contributeurs principaux, à savoir Situphen et Sandhose, dégagent doucement du temps pour pouvoir délivrer cette nouvelle page le plus tôt possible. Nous leur souhaitons bon courage en tout cas puisque cette ZEP est très demandée depuis un petit moment maintenant.
ZEP-12 : refonte du principe des tutoriels et articles
La ZEP-12 n'apporte pas forcement beaucoup de changements visuels, mais c'est tout le moteur des tutoriels et des articles qui a été revu. En effet, grâce à ce développement les incohérences de jeunesse entre articles et tutoriels vont disparaître, rendre la maintenance plus propre et simple pour les développeurs et le tout va permettre de casser la structure actuelle des tutoriels pour permettre de concevoir votre propre structure ! C'est un travail de longue haleine qui touche doucement au but, au grand soulagement de pierre-24 et artragis. Bravo les gars !
ZEP-05 : Refonte du traitement markdown pour l'export
Via la ZEP-05 ce sont les exports de contenu (tutos et articles) dans des formats hors-ligne (pdf, ebook…) qui sont concernés. Notre fantôme adoré, Kje, travail à améliorer l'outil gérant ces exports et rendre le tout plus flexible, notamment pour adapter les balises propres à ZdS. Dans une étape suivante, des passionnés de $\LaTeX$ seront mis à contribution pour aider à la mise en forme du contenu. Si vous avez des compétences dans ce dernier domaine, sachez que vous pourrez aider Kje avec votre expertise. Toutes les aides sont les bienvenues sur toutes les ZEP, ne l'oubliez pas.
Les problèmes récents
Vous êtes nombreux à l'avoir remarqué mais Zeste de Savoir a subi quelques perturbations ces derniers jours et vous avez le droit de savoir ce qu'il en retourne. Le mercredi 15 avril, le site a été inaccessible puis fortement ralenti pendant environ 3 heures. Au vu de la proximité de ces perturbations et de la mise en production de la version 1.7 de Zeste de Savoir, l'équipe technique pensait naturellement que cette dernière version en était la cause. Quelques recherches ont été faites et un bug dans les messages privés aurait pu causer ces ralentissements. En effet, la pagination n'était plus cohérente et certains messages privés contiennent plusieurs centaines de messages. Cela a causé une surcharge du serveur et a entrainé son plantage. Une correction a été rapidement proposée mais force a été de constater que le serveur souffrait toujours des lenteurs.
Alors d'où venait le problème ? L'équipe technique s'est tournée vers le serveur et son hébergeur. Avec l'aide des administrateurs systèmes de Zeste de Savoir, nous avons remarqué quelques métriques incohérentes qui pouvait nous laisser penser que la cause pouvait bien provenir de notre serveur, et plus précisément d'OVH, notre hébergeur. Après contact avec OVH, nous avions la confirmation que les perturbations provenaient bien de chez OVH suite à certaines manipulations de leur part sur notre VPS. Bilan des courses :
- Nous nous sommes lancés dans la recherche d'un nouvel hébergeur (lien).
- Gandi propose une formule d'hébergement pour soutenir certains projets (lien).
Pour l'instant, tout est revenu à la normale mais nous ne sommes pas encore à l'abri d'un nouveau problème du même genre. Nous restons donc vigilants et nous recherchons activement une autre solution.
Les choses à venir
Vous souhaitez contribuer à ZdS ?
Si vous avez l'intention de vouloir contribuer au support technique de Zeste de Savoir, c'est le bon moment puisque l'organisation de la documentation du projet open-source a été revue et le contenu a pris de la masse !
Teasing
Spoilers en vue !
Dans la prochaine version, nous passerons à Django 1.7 ! Nous travaillons bravement sur la migration vers Django 1.8 ainsi que le changement de Python 2 à Python 3 qui marquera alors le passage à la version 2.0 de la plateforme. Pour vous les visiteurs, rien de visuel ne changera mais d'un point de vue technique, c'est récupérer un énorme retard que nous avions pris sur les dernières versions des technologies que nous utilisons quotidiennement.
Le mot de la fin
La version 1.6 a apporté 255 commits et a modifié 382 fichiers (7,640 additions et 7,399 suppressions) ! La version 1.7 est moins conséquente avec 226 commits et 145 fichiers modifiés (3,354 additions et 2,146 suppressions).