16 octobre 2007 - trunk r351
Un certain nombre de modifications sont en cours pour arriver à la 0.4.0.
La gestion de l'authentification progresse. Il est possible de s'authentifier à condition de modifier manuellement le fichier tribune/tribune.prefs. L'interface d'ajout/suppression d'identités est aussi en cours d'écriture. L'interface de gestion des bouchots a subi de gros changements.
Parmis les autres modifications mineures de l'interface, le Pinnipede affiche des boutons pour recharger le backend et s'authentifier si (au moins) une identité a été configurée. Ah, encore deux petits détails. Les liens apparaîssent dans le bas du Pinnipède et plus dans la barre de statut globale ; et la barre qui affiche le temps avant le prochain rechargement affiche aussi le temps restant (en secondes).
De plus, j'ai commencé à jouer avec les templates. Un nouveau namespace a vu
le jour : koinkoin::core::utils. Il regroupe une classe template Singleton,
ainsi qu'un ensemble pour gérer des plugins. En effet, koinkoin se dirige vers une architecture
où plusieurs types de plugins pourront cohabiter. Les détails ne sont pas encore
totalement fixés mais il y a déjà un BotsManager qui gère les plugins
de type Koinkoin/Bot. Ces plugins sont maintenant séparés de ceux
du PostProcessor. En parlant de lui, il hérite maintenant lui aussi de Singleton
et de PluginsManager.
Enfin, ce n'est pas grand-chose mais j'ai ajouté un début de documentation DocBook, en anglais uniquement pour le moment.
5 novembre 2006 - tags/0.3.1
La 0.3.1 est terminée !
La configuration est désormais enregistrée sous .kde/share/apps. Les bouchots et plugins sont restaurés au lancement. Enfin, la boite de dialogue de gestion des bouchots affiche correctement les bouchots personnalisés.
2 novembre 2006 - trunk r301
Sur la route de la 0.3.1... Le crash possible quand on tentait de recharger ou fermer le pinnipède courant sans pinnipède courant est réglé. Une grosse mise à jour des README, TODO, Changelog, toussa...
28 octobre 2006 - tags/0.3
Ayé ! Enfin une release stable de koinkoin depuis la 0.1.
Il n'y a pas eu de nouvelles ici, mais le dernier mois a vu de gros changements dans le core. En particulier, il n'y a plus un seul fichier de configuration mais un par tribune. Le format de ce fichier correspond à celui discuté il y a un moment sur la tribune de moules.org.
Parmis les plus grosses modifs :
- core
- ajout de la classe Module qui surclasse BoardModule et un hypothétique RssModule
- éclatement de la classe Bouchot en Bouchot, BoardModule, BoardConfig, HttpEngine et BackendUpdater. Modularisation ro><ore
- le koinkoin::core::BouchotsManager permet d'ajouter et de supprimer des fichiers de configuration
- le BackendUpdater n'appelle plus directement les slots du BouchotsManager mais lui envoie des signaux. Ainsi, c'est toujours la thread de la boucle d'évènements de Qt qui modifie l'interface graphique. Cela supprime les plantages au lancement de koinkoin.
- gui
- les widgets Palmipede et Pinnipede sont basés sur un fichier .ui créé avec KDevDesigner.
- ajout d'une boite de dialogue pour récupérer la liste des configurations de bouchots et choisir ceux que l'on veut.
- possibilité d'ajouter un bouchot manuellement (incomplet)
- la toolbar contient maintenant les boutons pour effacer et changer le mode du palmipède. Elle est placée en bas par défaut.
26 août 2006 - trunk r230
Le plus gros changement est le passage de Scons au système de compilation de KDE. Ainsi, toute la recherche des répertoires d'installation est automatique.
Dans les gros changements, le core a subi un gros lifting. La gestion des slips est passée de KoinkoinCore à un SlipsManager tout beau. Les *Manager sont maintenant des singletons, et il n'est plus nécessaire de passer par le KoinkoinCore pour les obtenir. De plus, la gestion des signaux/slots est plus directe car ne passe plus par le KoinkoinCore.
Le système de chargement des plugins utilise maintenant la notion de service de KDE.
L'interface est i18n-isée, avec bien évidemment une traduction française fournie par défaut.
Dernière petite chose : j'ai installé Trac pour suivre les bugs, features-requests, toussa...
10 août 2006 - trunk r206
Quelques corrections dans la mise à jour de la configuration évitent de disgracieux plantages. De plus, un système de suivi est en place.
31 mai 2006 - trunk r199
Les fichiers de configuration et préférences n'utilisent plus
d'URLs https. De plus, on peut indiquer dans les préférences
un élément <UseHttps/> pour forcer son utilisation.
Les archives de l'ebuild sont à jour.
29 mai 2006 - trunk r196
Changement dans la procédure d'installation. Elle ne passe plus par SCons mais utilise un simple script bash. Pour les utilisateurs de Gentoo, un ebuild est disponible. Vous trouverez plus d'informations sur la page d'installation.
20 mai 2006 - trunk r180
Quelques petites modifications ont permis d'améliorer la détection des faux totoz. Par ailleurs, la syntaxe du fichier de préférences a évolué pour permettre de définir le User-Agent à envoyer pour chaque bouchot.
17 mai 2006 - trunk r177
Pas de nouvelles depuis longtemps, mais ça ne signifie pas qu'il n'y ait eu aucune avancée. Le core (0.8.6-b3) a subit pas mal de modifs :
- il gère maintenant les préférences utilisateurs. Elles contiennent les bouchots et plugins à activer au lancement
- les plugins peuvent être activés et désactivés
- le plugin totoz récupère les images et les affiche (pas encore d'animation)
- un premier plugin boitakon a vu le jour. Il n'est pas encore configurable, c'est une PoC pour détecter d'éventuels problèmes
- une icône se place dans le systray et indique l'arrivée de nouveaux messages
- dans le pinni, les onglets des bouchots mis à jour présentent une astérisque
- le pinni ne scrolle plus en bas à l'arrivée de nouveaux messages si la barre n'était pas déjà en bas
- un passage dans valgrind a permis de corriger quelques erreurs
- les plugins et icônes sont placés dans share/apps/koinkoin/
8 mars 2006 - trunk - r151
Deux nouveautés :
- possibilité de rechargement de la configuration dans l'interface ;
- affichage des urls des liens du pinnipede courant dans la barre de statut.
24 février 2006 - koinkoin-0.1.0 - r143
La méthode d'encodage reprise de QUrl présentait une erreur d'adaptation qui faisait apparaitre des caractères bizarres à la fin des messages envoyés. En plus, ça sentait un peu la vieille chaussette trouée dans Bouchot à cause d'un QDomDocument non libéré.
Bref, avec le fonctionnement correct de l'encodage, il est temps pour une sortie importante. Le core passe en 0.7.0 tandis que koinkoin atteint la 0.1.
22 février 2006 - trunk - r139
Au menu : correction d'un léger bug dans la gestion de l'historique.
Ça, c'est l'entrée.
Le plat de résistance, c'est que l'encodage des posts semble marcher
honorablement. J'ai dû repiquer la méthode QUrl::encode(QString)
pour qu'elle gère des QCString et conserve l'encodage.
Normalement, c'est bon pour ces histoires tordues.
En dessert, le core passe en version 0.6.7
21 février 2006 - trunk - r137
Les nouveautés au programme concernent la gestion des carctères non US-ASCII lors de l'envoi de messages. J'ai tenté deux approches :
- convertir le post dans le charset indiqué dans le backend ;
- transformer les caractères accentués et autres joyeusetés du genre en leurs entités HTML.
La seconde méthode est imparfaite car certains moteurs de tribunes ont la fâcheuse habitude de remplacer systématiquement les & par &, ce qui pose problème à pycc. Disons que c'est un weurkarounde en attendant un encodage propre et frais.
Au passage, le core passe en version 0.6.5.
20 février 2006 - koinkoin-0.0.8b - r134
Correction d'un petit bug dans l'analyse des posts. Si le message contient un élément DOM (tags non encodés), les attributs sont pris en compte. Cela corrige le bug des [url] non cliquables sur certains bouchots. Le core passe à la version 0.6.3.
19 février 2006 - koinkoin-0.0.8a - r132
Les fichiers sources ont été convertis en UTF8. L'interface utilise désormais trUtf8() au lieu de tr(). Les traces envoyées sur kdDebug() sont également en UTF8. La version 0.0.8 (core 0.6.2) peut sortir.
Un include obsolète s'était glissé malencontreusement et empêchait la compilation. La 0.0.8a corrige cela.
17 février 2006 - trunk - r123
Voici une nouvelle version du core (0.6.0) qui analyse enfin correctement le backend de dlfp. Les entités en début de ligne et les tags nonésolus sont de l'histoire ancienne !
9 février 2006 - trunk - r120
Le core utilise un délai de rafraîchissement auto-adaptatif des backends. Le délai est calculé avec la formule delai = dernierDelai / nbPostsAjoutes. Les délais minimum et maximum sont respectivement de 9 secondes et 3 minutes. Le dernierDelai est mis à jour lorsqu'on force le rechargement.
Viennent d'autres petites corrections dans la gestion des namespaces du fichier de configuration, ainsi que l'apparition de fenêtres d'erreur quand le core renvoie une erreur. Comment ça fait pro !
Le core passe en version 0.5.4.
26 janvier 2006 - trunk - r116
Petite évolution dans la syntaxe du fichier de configuration :
- /Koinkoin/Slip/EncodeTags perd ses attributs et gagne une valeur (true/false)
- /Koinkoin/PluginsDir disparaît (il était inutile depuis longtemps)
25 janvier 2006 - trunk - r115
La classe MoteurBouchot et tout ce qui s'y référait a été renommé en Slip. De plus, un slip prend désormais en charge les noms des cookies nécessaires pour l'authentification. Comme cela a entraîné des modifications dans le fichier de configuration le rendant incompatible avec l'ancien, j'ai ajouté un système de version sur la config. Si le core étecte une version incompatible, il téléchargera sa version tout seul comme un grand.
22 janvier 2006 - koinkoin-0.0.7 - r106
Les modifications apportées depuis la précédante rilize sont suffisamment importantes pour sortir officiellement la version 0.0.7 ! On dirait que mes versions impaires sont stables et les paires celles de développment mais c'est pas voulu. J'ai aussi supprimé la branche koinkoin-tif puisque personne n'autre ne committe. Je vais donc tout faire dans trunk/.
21 janvier 2006 - koinkoin-tif - r103
Toute une série de modifications visantà éliminer la grande majoé des pointeurs et à les remplacer par des QGuardedPtr. De plus, davantage de passages de paramètres se font par références. Enfin, l'interface proposée par KoinkoinCore est épurée et repensée.
15 janvier 2006 - koinkoin-tif - r96
Modifications :
- correction de l'expression régulière de détection des norloges dans le post processor tagnorloges.
- quelques petites réorganisations dans le menu
- amélioration du dialogue entre le core et l'interface via de nouveaux signaux/slots
- la mise à jour de la configuration met aussi à jour les moteurs de bouchot
- un certain nombre de textes personalisés sont disponibles en plus du moment
- Enfin, la plus grosse modification concerne l'ajout de scripts de compilation pour scons. A terme, le Makefile sera supprimé.
08 janvier 2006 - koinkoin-tif - r86
Juste des corrections de bugs au programme. Tout d'abord, ajout de QMutexes pour mieux synchroniser les tâches de KIO_http. De plus, les SIGSEGVs qui avaient lieu lors de l'arrêt ont visiblementété suppés.
Enfin, le premier pinnipède est affiché au lancement.
06 janvier 2006 - koinkoin-tif - r84
Il est maintenant possible de recharger et appliquer la configuration du serveur. Ce fichier est automatiquement récupéré si le fichier local ne peut être lu correctement.
Graphiquement, les menus Processeurs de Posts et Configuration sont inversés.
De plus, les namespaces core, gui et plugins sont réunis sous le méta-namespace koinkoin.
Enfin, le core renvoie des exceptions et l'interaction core <-> GUI utilise des signaux et slots. Par exemple, les menus Bouchots et Processeurs de Posts sont mis à jour via les signaux du core. Le statut actif/inactif des Bouchots et PostProcessors est donc modifié en temps réel par le core. Par contre, la GUI n'influe pas encore sur le core.
15 décembre 2005 - koinkoin-tif - r78
Plus besoin de copier le fichier de configuration distribué, Koinkoin le fait pour vous ! Un fichier-type est disponible à https://tifauv.homeip.net/koinkoin/dist/koinkoin.cfg. Un merge dans trunk et une version 0.0.6 auront lieu quand on pourra récupérer et recharger une configuration depuis l'interface. Les fichiers koinkoin.cfg et koinkoin.pro devenus inutiles sont supprimés.
13 décembre 2005 - koinkoin-tif - r77
Le Makefile a été revu afin de limiter les dépendances inutiles qui forçaient une recompilation de certains éléments. De plus, les fichiers du core sont rassemblés dans la bibliothèque libkoinkoincore.so. koinkoin est maintenant lié à cette bibliothèque. J'ai ajouté un descriptif de la démarche à suivre pour compiler et installer koinkoin dans cette page. Enfin, la documentation du code est mise à jour (doxygen 1.4.4) et comprend désormais les namespaces.
26 novembre 2005 - 0.0.5
Modifications :
- la configuration est lue dans ~/.koinkoin (le répertoire est céé s'il n'existe pas)
- les plugins sont placés dans ~/.koinkoin/plugins (le épertoire est créé si besoin est)
- les plugins sont listés dans le menu Plugins (ça c'est une bonne idée, non ?)
- 2 plugins fournis : validcoincoin (colorie les canards LLG-compliants) et tagnorloges (colorie les norloges)
- la barre de titre affiche le nom du bouchot actif
- légères modifications de la feuille de style
- ajout de l'élément <ActivatePostProcessor> dans la configuration pour activer un postprocessor par défaut
- les items de menus des bouchots et plugins sont munis de checkboxes (qui n'indiquent pas grand chose pour le moment, mais c'est à signaler)
22 novembre 2005 - trunk
Passage de la branche koinkoin-tif courante dans trunk. Il y a eu un nombre sigificatif de modifications :
- plus besoin de qmake (Makefile complet)
- organisation des sources en namespaces (core, gui, plugins)
- fichier de génération de documentation
19 novembre 2005 - 0.0.4-pre3
Un certain nombre de modifications sont en cours afin d'ajouter un système de plugins. Dans un premier temps, les seuls plugins seront des post processors. Ces plugins sont appelés pour chaque nouveau message et peuvent le modifier. Un premier exemple est libvalidcoincoin.so qui colore en vert les \_o< valides. Pour le moment, la recherche des plugins dans un répertoire n'est pas faire, mais c'est la prochaine étape. Le chargement dynamique fonctionne, c'est déjà pas mal.
Cette fonction provoquera le passage en 0.0.4 finale. D'ici là, il devrait y avoir encore une ou deux -pre
12 octobre 2005
Kimael ayant demandé à participer au développement du \_o<, l'organisation du projet dans le repository a changé pour permettre la gestion des branches. Premier fait d'armes du nouveau : il a tué le bug de l'aperçu. Encore !