bin - Compte rendu de réunion (2020-10-27)

tags: RtD bin réunion

Ce document est un compte rendu de réunion, il reprend un ordre du jour et acte des différentes décisions prises.

Date : Mardi 27 octobre 2020
Membres présents : Aakodal, Aca., AntoineJT, Dr Lazor, Milenien, Noé, Override,
TeIA, tim54k, wyxo et x0rld
Lien permanent : https://docs.drlazor.be/rfc/002_rtd_bin.md

Résumé

La réunion a concerné le choix des fonctionnalités à implémenter dans le service de pastebin développé pour la communauté Read the Docs. Chaque fonctionnalité a été esquissé techniquement. Quelques décisions relatives à l'organisation du projet ont également été prises.

Choix des fonctionnalités

la coloration syntaxique du code source

Proposition retenue, une droplist listera les formats supportés sur le formulaire HTML, le backend ajoutera l'extension correspondate à l'url unique, le frontend utilisera cette extension pour coloriser le code source.

la numérotation des lignes de code

Proposition retenue, à la marge à gauche, alignée à droite.

la persistance des snippets

Le choix s'est porté sur la base de donnée Redis, le snippet et les meta-data seront sauvegardés dans un HASH, la clé sera l'identifiant unique du snippet.

la longévité des snippets

Il a été décidé de limiter la taille de la base de donnée de redis et d'utiliser son mécanisme LRU pour évincer les snippets peu lus lorsque toute la mémoire allouée a été utilisée. Les snippets pourront aussi être auto détruits après un certain temps ou après qu'ils aient été affiché un certain nombre de fois.

un système de versionning

Proposition retenue, il a été décidé de lier chaque snippet à son parent. Les limitations techniques de redis font qu'il sera difficile de lister les révisions (enfants) d'un snippet existant et ne sera pas implémenté dans un premier temps.

avoir la possibilité de sauvegarder son snippet en public ou en privé

Proposition rejetée, les snippets seront uniquement privés.

avoir la possibilité de sauvegarder plusieurs fichiers sous un seul même lien

Proposition gelée, aucune solution technique faisant l'unanimité n'a été trouvée.

pouvoir limiter l'accès à un snippet par un mot de passe

Proposition rejetée, les snippets sont privés par défaut, l'identifiant étant aléatoire il constitue déjà un secret en soit.

pouvoir modérer le contenu comme supprimer des bins problématiques

Proposition gelée , aucune solution technique faisant l’unanimité n'a été trouvée.

ajouter une ancre pour lier une ligne précise

Proposition retenue

Tableau récapitulatif

PropositionDécision
ColorationRetenu
NumérotationRetenu
PersistanceRedis
LongévitéRetenu
VersionningRetenu
PublicRejeté
DossierGelé
Mot de passRejeté
ModérationGelé
AncreRetenu

Sitemap

Le service sera hébergé sous l'url https://bin.readthedocs.fr.

VerbeURIDescription
GET/Accéder au formulaire HTML pour publier un nouveau snippet
POST/newPublier un nouveau snippet
GET/<id>[.<ext>]Afficher un snippet au format html avec coloration syntaxique
GET/raw/<id>[.<ext>]Afficher un snippet au format texte

Développement

Le groupe de travail s'est entendu pour développer l'application en utilisant les langages de programmation Python 3, ECMAScript 2018, HTML5 et CSS3. Le groupe de travail s'est aussi entendu pour collaborer via l'outil git et la plateforme en ligne GitHub à l'url https://github.com/readthedocs-fr/bin/.

Julien (Dr Lazor) Castiaux et Antoine (AntoineJT) Tournepiche ont été désignés comme administrateurs pour faciliter la collaboration sur GitHub. Les membres du groupe de travail ont reçu les permissions d'écriture et se sont entendus pour collaborer au moyen de pull requests et de systématiquement faire valider leurs soumissions de code par un pair.