Cette semaine, j’ai retravaillé la manière dont RSC affiche les conversations.
Le fil principal montre les publications qui démarrent une discussion, avec le nombre de réponses. On peut ensuite ouvrir la conversation complète sans mélanger toutes les réponses dans le fil.
Un bug assez important empêchait de répondre à certaines publications reçues depuis un flux RSS ou une autre instance.
C’est maintenant corrigé : les publications distantes peuvent réellement devenir le point de départ d’une conversation locale.
Sur un Web distribué, une publication peut disparaître alors que ses réponses existent toujours ailleurs.
RSC conserve maintenant la structure de la conversation et affiche « publication indisponible » à la place du message manquant, plutôt que de faire disparaître toute la discussion.
La vraie instance a rapidement révélé un problème que les petites instances de test ne montraient pas.
Avec plusieurs dizaines de milliers d’éléments, certains fils devenaient lents et le serveur travaillait beaucoup trop. Quelques index manquants dans la base ont été ajoutés et la différence est très nette.
Cloudron vérifiait que RSC fonctionnait en rechargeant régulièrement la page d’accueil complète.
Comme cette page doit construire le fil, une période chargée pouvait ressembler à une panne et déclencher des redémarrages inutiles.
Le contrôle de santé utilise maintenant une page minuscule dédiée à cette seule vérification.
Les sources provenant d’une même instance fédérée étaient auparavant affichées comme une longue liste sans véritable relation entre elles.
Elles sont maintenant regroupées sous leur instance. Cela rend l’administration plus lisible et permet d’appliquer des décisions à une instance tout en gardant la possibilité de gérer une source individuellement.
J’ai ajouté des actions groupées dans l’administration de RSC.
On peut sélectionner plusieurs sources ou utilisateurs, effectuer une action commune et voir le résultat pour chaque élément. Les actions destructrices demandent aussi une confirmation plus claire.
Une instance RSC peut suivre beaucoup de flux, et certains publient énormément.
L’administrateur peut maintenant limiter le nombre d’éléments conservés par source, ou supprimer automatiquement les éléments distants trop anciens. Le but est d’éviter qu’un seul flux fasse grossir la base indéfiniment.
J’ai continué à simplifier l’interface de RSC.
Moins de séparateurs, plus d’espace entre les publications, une meilleure hiérarchie entre le nom de l’auteur et les métadonnées, et le retour des avatars dans le fil principal.
Ce sont de petits changements, mais le fil est beaucoup plus facile à parcourir.
Le passage sur un design flat a fort changé l'expérience UI, je ne suis pas encore satisfait du résultat actuel, mais je vais continuer à itérer jusqu'à arriver à quelque chose de bien
je voulais limité lé côté interface Twitter et ce faisant l'intferface a perdu son côté immédiatement compréhensible, je ne suis pas certain du look actuel en fait, mais avant de me lancer dans un gros chantier je voudrais encore l'améliorer
RSC n’a même pas un mois, mais son fonctionnement a déjà beaucoup évolué.
Cette semaine, j’ai supprimé une bonne partie du premier système de traitement des flux, devenu inutile après l’arrivée du nouveau modèle de conversations.
C’est du code en moins, moins de chemins parallèles et une base plus simple pour continuer.
Oui ceci était aussi un moyen de tester le threading des commentaires sur un élément local :)