Dotclear

2023 janv. 18

Dotclear 2.24.1

Une mise à jour qui corrige quelques bugs rencontrés avec la 2.24 de Noël dernier.

2022 déc. 24

Dotclear 2.24

La nouvelle version pour les fêtes de fin d'année. Il est fortement recommandé de faire la mise à jour en mode de secours, ce qui vous permettra ensuite de mettre à jour les plugins qui doivent l'être.

Si vous avez un souci pour vous connecter après la mise à jour, supprimez les cookies associés avant de rafraichir la page de connexion.

Le CHANGELOG de la 2.24 :

  • 🐘 PHP 7.4+ is required, PHP 8.0/8.1 compliance
  • 🗑 Remove XML/RPC system (keep only minimum for Pingbacks)
  • New blog parameter to close comments/trackbacks after a period of inactivity on the blog
  • Core: Large code review has been done, may break old code (3rd party plugins and themes)
  • Admin UI: New default icons for media items
  • Admin UI: Message look reviewed
  • Admin UX: Preserve current dir and current view of media manager
  • Admin UX: Password strength use an entropy indicator
  • Admin UX: Improve navigation in about:config and user:preferences list
  • Admin UX: Allow activation and de-activation of plugins in safe mode
  • Admin UX: Allow update of disabled/activated plugins in safe mode/normal mode
  • Admin UX: Add folding capability to widgets group
  • Theme: Cope with theme defined widget container format
  • Theme: Smilies are available for every theme (Blowup theme not more mandatory)
  • Lib: Update CKEditor to 4.20.1
  • Lib: Update Codemirror to 5.65.10
  • 🐛 → Various bugs, a11y concerns and typos fixed
  • 🌼 → Some locales and cosmetic adjustments

2022 déc. 13

Faire la mise à jour en 2.24

On va pas se mentir, la prochaine mise à jour pourra être … sportive1 :-)

Je viens de tester plusieurs fois, à partir d'une installation qui tourne en production (mon blog) avec Dotclear 2.23.1 et j'ai noté les choses suivantes :

  1. Si jamais vous utilisez le plugin de cache statique2, désactivez-le temporairement (il suffit de commenter la constante d'activation DC_SC_CACHE_ENABLE dans le fichier inc/config.php, ou de la mettre à false).

  2. Faire la mise à jour vers Dotclear 2.24 en mode de secours est la meilleure façon de faire, une fois que vous savez3 que les plugins que vous utilisez sont disponibles pour la 2.244.

  3. Si jamais vous aviez besoin du plugin FakeMeUp, alors reconnectez-vous en mode normal, installez-le, lancez-le, puis reconnectez-vous en mode de secours.

  4. Place aux mises à jour :

    1. Faites la mise à jour de Dotclear en 2.24 (toujours en mode de secours),
    2. Reconnectez-vous en mode de secours car l'étape précédente vous ramènera sur la page d'authentification5,
    3. Faites la mise à jour des plugins6,
    4. Réactivez le cache statique si nécessaire,
    5. Reconnectez-vous en mode normal.

Ça devrait être tout bon !

Profitez-en pour vider le cache des templates et le cache statique (plugin Entretien).

Petit supplément : il peut être utile d'installer le plugin growUp pour faire un peu de ménage7 une fois la mise à jour effectuée8.

Quoi qu'il en soit on sera dans les parages si jamais il y avait un problème ; sur le forum en particulier.


  1. Pour être honnête ma première tentative s'est heurté à un problème avec le cache statique (voir le point 1 de la liste), sinon j'ai pu faire la mise à jour en mode normal sans souci. 

  2. Surtout si vous l'utilisez, comme moi, de façon agressive. 

  3. Installez le plugin Check store version, il vous dira tout ça. 

  4. Dans le cas contraire, attendez qu'ils le soient, c'est préférable ! 

  5. Il se peut que la page d'authentification ne s'affiche pas, dans ce cas supprimez les cookies associés au site et rafraichissez la page. 

  6. Forcez la vérification de mise à jour pour être sûr·e de ne rien louper. 

  7. C'est normalement effectué pendant la mise à jour, mais parfois il peut se passer des bricoles ;-) 

  8. Il peut être désactivé ou désinstallé ensuite. 

2022 déc. 3

Mode de secours de Dotclear 2.24

La version 2.24 de Dotclear — qui devrait être publiée dans quelques semaines — a été l'objet d'une reprise du code assez profonde, pour assurer une meilleure robustesse et pour évacuer quelques vieilleries qu'elle transportait depuis longtemps. Cependant cette refonte a généré quelques incompatibilités avec les versions précédentes des plugins et parfois des thèmes.

En conséquence, une fois mis à jour avec la version 2.24 de Dotclear il se pourrait bien que vous ayez du mal à retrouver votre tableau de bord ou autre chose qu'une page blanche du côté public de votre blog préféré.

Message d'erreur d'un plugin

La raison ?

Un ou plusieurs plugins qui nécessitent des mises à jour — celles-ci sont déjà disponibles pour un nombre conséquent de plugins tiers —, ou des désactivations.

Or comment faire cette ou ces mises à jour, voire cette ou ces désactivations si vous n'avez pas accès à l'administration de votre installation ?

C'est très exactement pour cette raison qu'il y a, depuis plusieurs années, un mode de secours — aussi appelé « mode sans échec » — qui permet de se connecter à l'interface d'administration sans activer aucun plugin. Et quand je dis aucun, c'est vraiment aucun ; même les plugins livrés avec Dotclear sont désactivés dans ce mode particulier.

Attention

Il vous est fortement conseillé, avant de mettre à jour votre installation vers la version 2.24, de lister les plugins tiers installés et actifs (et de mettre cette liste de côté), ils sont les plus susceptibles de poser des problèmes une fois la mise à jour effectuée, pour évaluer ensuite la liste des mises à jour requises, voire les désactivations à prévoir si elles n'étaient pas disponibles

Il existe d'ailleurs un plugin (pour les versions 2.19 à 2.23.1), nommé CheckStoreVersion, développé par Jean-Christian Denis, et qui permet d'ajouter un onglet supplémentaire sur la page de gestion des plugins (et des thèmes), et qui indique la liste des mises à jours disponibles pour les plugins (et thèmes) actuellement installés. Ce plugin est disponible sur DotAddict.

La nouveauté avec la version 2.24 de Dotclear est que vous pouvez, avec ce mode de secours, désactiver, mettre à jour, supprimer ou installer des plugins, ceux-ci restant bien évidemment inactifs tant que vous êtes connecté dans ce mode.

En pratique, comment ça se passe ?

Premièrement il faut vous connecter en mode de secours. Pour cela, sur la page de connexion vous avez un lien situé en bas et intitulé « Problème de connexion ? » :

Page de connexion normale

Si vous cliquez sur ce lien vous démasquez alors deux liens. Le premier permet d'engager la procédure à utiliser en cas d'oubli de son mot de passe — mais ce n'est pas l'objet de ce billet —, et le second vous permet de basculer en mode de secours :

Page de connexion normale avec les liens de secours

Astuce

Il se peut que même l'accès à la page de connexion soit impossible. Dans ce cas il vous suffira d'ajouter à la fin de l'URL de connexion que vous utilisez habituellement ceci :

?safe_mode=1
Safe mode étant l'équivalent anglais de Mode de secours (ou mode sans échec).

Si par exemple votre URL de connexion est :

https://example.com/admin/auth.php

alors l'URL de connexion en mode de secours sera :

https://example.com/admin/auth.php?safe_mode=1

Il faut donc cliquer sur ce deuxième lien qui vous amènera alors sur une autre page de connexion :

Page de connexion en mode de secours

Remplissez les champs comme à l'accoutumée et validez. Vous devriez maintenant avoir le tableau de bord affiché avec un beau message vous avertissant que vous êtes en mode de secours :

Tableau de bord avec le message concernant le mode de secours

Vous remarquerez alors, que comme précisé plus haut, aucun plugin n'est actif ; par contre vous avez la possibilité de basculer sur la page de gestion des plugins qui fonctionne de la même manière qu'en mode normal.

Vous retrouverez donc les onglets classiques qui listent les plugins en attente de mise à jour, les plugins installés, activés ou pas, ainsi que les onglets qui permettent l'installation automatique ou manuelle de plugins :

Page de gestion des plugins en mode de secours

Chaque action dans cette page ne vous sortira pas du mode de secours où aucun plugin n'est actif, donc aucun danger de « casser » votre installation ici.

Une fois tous les plugins mis à jour ou désactivés en attendant une prochaine mise à jour — comparez avec la liste que vous avez mis de côté avant de mettre à jour pour vérifier que vous n'avez rien oublié —, vous pouvez revenir à la connexion habituelle.

Il suffit pour cela de vous déconnecter et de vous reconnecter comme à l'ordinaire.


Gardez ce billet sous le coude pour le jour où vous ferez la mise à jour vers la 2.24, il se pourrait qu'il vous serve.

2022 août 13

Dotclear 2.23.1

Et dans la foulée, une version de maintenance pour corriger un bug avec l'ajout de commentaires.

Dotclear 2.23

La nouvelle version pour ce trimestre avec quelques améliorations au programme essentiellement dans le cœur du code, mais pas que.

Notez la disparition de la gestion des jeux d'icônes, peu utilisée et potentiellement complexifiée avec l'usage des icônes au format SVG en deux versions (thème clair et sombre).

Le CHANGELOG de la 2.23 :

  • 🐘 PHP 7.4+ is required, PHP 8.0/8.1 compliance
  • 🗑 Remove Iconset management
  • Admin UI: Harmonize font size on different support (laptop, tablet, mobile)
  • Admin UX: Group more logically buttons on CKEditor toolbar
  • Core: New constant DC_DEFAULT_THEME, set to 'berlin'
  • Core: Use predefined constants for post statuses (dcBlog::POST_*)
  • Core: Use predefined constants for comment statuses (dcBlog::COMMENT_*)
  • Core: Deprecated global $core (or $GLOBALS'core'), use dcCore::app() instead
  • Core: Deprecated global $_ctx, use dcCore::app()->ctx instead
  • Core: Deprecated global $_lang, use dcCore::app()->lang instead
  • Core: Deprecated global $mod_files, use dcCore::app()->cache'mod_files' instead
  • Core: Deprecated global $mod_ts, use dcCore::app()->cache'mod_ts' instead
  • Core: Deprecated global $_menu, use dcCore::app()->menu instead
  • Core: Deprecated global $__resources, use dcCore::app()->resources instead
  • Core: REST server now accepts JSON format (experimental)
  • Fix: Use relative URL for attachments as far as possible
  • Fix: Remove select hiding mechanism when help is displayed
  • Fix: Loading of modules (plugins/themes) in safe mode
  • Fix: Message position on Quick entry submit (dashboard)
  • Fix: Select appearance on Safari (webkit engine)
  • Lib: Update CKEditor to 4.19.1
  • Lib: Update Codemirror to 5.65.7
  • 🐛 → Various bugs, a11y concerns and typos fixed
  • 🌼 → Some locales and cosmetic adjustments
  • 📣 Warning: Internet Explorer is not more officially supported (may still work weirdly)

2022 mai 13

Dotclear 2.22

La nouvelle version pour ce trimestre — on tient le rythme, c'est une bonne chose — avec quelques améliorations au programme :

  • PHP 7.4 minimum et c'est compatible — sauf bug de dernière minute — jusqu'à PHP 8.1 inclus
  • On a retiré le système de traçage FLoC de Google qui a jeté l'éponge entretemps
  • Ajout d'un bouton de prévisualisation dans l'éditeur standard de Dotclear ; pratique pour vérifier les modifications d'un billet déjà publié, avant de les sauvegarder
  • Les thèmes Berlin et Ductile ne requièrent plus jQuery pour fonctionner ; vérifiez toutefois les plugins tiers que vous avez installé, ils peuvent toujours en avoir besoin côté public
  • Amélioration de la récupération des métadonnées de la source d'un Webmention ou d'un Pingback
  • Ajout d'un bouton « Réinitialiser à maintenant » pour la date de publication d'un billet ; permet de pallier l'absence de cette fonctionnalité sur certains navigateurs
  • Réduction des seuils de bascule de l'affichage de l'administration (mobile, tablette et laptop)
  • Le menu d'accès rapide aux sections de about:Config et user:Pref est maintenant en position fixe en haut de l'écran
  • Léger redesign des icônes de la barre d'outils de l'éditeur standard de Dotclear

2022 mar. 7

Dotclear 2.21.3

Une nouvelle version qui corrige deux bugs concernant la gestion des utilisateurs autres qu'administrateurs (ou super-administrateurs).

2022 fév. 26

Dotclear 2.21.2

Une nouvelle version de maintenance qui résout, entre autres, les problèmes de date et de cache rencontrés par certains utilisateurs.

Changements :

  • Retour en arrière sur certaines modifications faites pour la conformité à PHP 8.1 (strftime)
  • Nettoyage des dossiers currywurst restants (template currywurst supprimé depuis la 2.20)

2022 fév. 19

Dotclear 2.21.1

Une petite version de maintenance pour corriger trois bugs :

  • Ajustement du fuseau horaire de l'auteur en mode édition de billet ou de page (était en mode UTC)
  • Éviter la mise en cache du navigateur sur l'aperçu des pages/postes
  • Liste des entrées utilisant un média

2022 fév. 13

Dotclear 2.21

Une nouvelle version de Dotclear dont je vous laisse découvrir la reprise (légère) du look de l'administration. En particulier pas mal d'images au format PNG ont été remplacées par une version vectorielle (format SVG), qui permet de conserver une bonne qualité à n'importe quel niveau de zoom.

Notez qu'elle nécessite PHP 7.4 ou PHP 8.0. Nous avons essayé de corriger tous les problèmes pouvant survenir avec PHP 8.1, mais nos tests n'ont surement pas été exhaustifs et nous accueillerons avec plaisir toutes vos remarques de fonctionnement avec cette dernière version de PHP.

Pour le détail des changements, voyez le CHANGELOG, voire directement le dépôt.

2021 nov. 19

Dotclear 2.20.1

Une petite mise à jour qui corrige trois bugs pas très graves mais potentiellement gênant dans l'usage de Dotclear.

2021 nov. 13

Dotclear 2.20

Still gardening and happy tooyou Kozlika!


Comme annoncé à l'occasion de la sortie de la 2.19, nous publions plus souvent — ou tout au moins nous nous efforçons de — les nouvelles versions.

Dans cette nouvelle version 2.20, les éléments marquants sont les suivants :

  • Un nouveau système de dépôt alternatif a été mis en place pour les plugins et les thèmes tiers, ce qui peut rendre service si le serveur DotAddict a des vapeurs, comme ça lui est arrivé récemment (merci Noé pour la remise en route rapide d'icelui), ou si l'auteur ne souhaite pas déposer son œuvre ailleurs que sur son propre dépôt public. Nous détaillons la procédure à suivre ci-dessous.
  • Un nouveau filtre antispam, spécifique à IPv6 (qui commence à être pas mal déployé), est inclus en parallèle avec le filtre propre à IPv4.
  • Les utilisatrices et utilisateurs peuvent désormais indiquer plusieurs adresses email et sites web supplémentaires dans leur profil. En effet, certains thèmes permettent de différencier l'auteur d'un billet des autres commentatrices et commentateurs de celui-ci en fonction de cette adresse email, qui peut évoluer dans le temps. Ce système permet donc d'indiquer de nouvelles adresses sans devoir modifier les métadonnées de ses anciens commentaires.
  • La syntaxe wiki de Dotclear a été étendue pour permettre l'insertion aisée de bloc HTML details. Une barre verticale en début de ligne, suivie du texte du sommaire est nécessaire pour débuter ce bloc, suivi du contenu libre du bloc, suivi d'une ligne comportant une barre verticale en premier caractère uniquement terminant l'ensemble, soit :
|sommaire du bloc détail (caché par défaut)
    …
contenu de mon bloc
    …
|

À noter : cette version est la dernière à supporter PHP 7.3 ; la prochaine 2.21 nécessitera la version 7.4 minimum de PHP (ou PHP 8). Un message vous avertira sur votre tableau de bord si votre version de PHP est concernée.


Dépôts alternatifs :

Pour mettre en œuvre un dépôt alternatif pour un module, plugin ou thème, il faut deux choses :

  1. Une entrée repository dans les propriétés fournies dans le fichier _define.php du module, comme par exemple : 'repository' => 'https://raw.githubusercontent.com/franck-paul/sysInfo/main/dcstore.xml'
  2. Un fichier dcstore.xml structuré de la façon suivante, et stocké en concordance avec l'URL fournie ci-dessus :
<modules xmlns:da="http://dotaddict.org/da/">
  <module id="[MODULE_ID]">
    <name>[MODULE NAME]</name>
    <version>[MODULE.VERSION]</version>
    <author>[MODULE AUTHOR]</author>
    <desc>[MODULE DESCRIPTION]</desc>
    <file>[MODULE_ARCHIVE.ZIP]</file>
    <da:dcmin>[MODULE_DOTCLEAR_VERSION_MIN]</da:dcmin>
    <da:details>[MODULE_DETAIL_URL]</da:details>
    <da:support>[MODULE_SUPPORT_URL]</da:support>
  </module>
</modules>

Exemple pour le plugin sysInfo :

<modules xmlns:da="http://dotaddict.org/da/">
  <module id="sysInfo">
    <name>System Information</name>
    <version>1.16.3</version>
    <author>System Information</author>
    <desc>System Information</desc>
    <file>https://github.com/franck-paul/sysInfo/releases/download/1.16.3/plugin-sysInfo-1.16.3.zip</file>
    <da:dcmin>2.19</da:dcmin>
    <da:details>https://open-time.net/docs/plugins/sysInfo</da:details>
    <da:support>https://github.com/franck-paul/sysInfo</da:support>
  </module>
</modules>

Notez que le fichier dcstore.xml n'a pas besoin d'être inclus dans l'archive d'installation du module.

Dès lors qu'un module, indiquant dans son fichier _define.php un dépôt alternatif, sera installé avec la version 2.20 de Dotclear, alors ce dernier consultera aussi ce dépôt pour vérifier l'éventuelle présence d'une nouvelle version.


One more thing!

Il est possible d'enregistrer les paramètres d'insertion par défaut d'un fichier média (image, son, …) utilisés ensuite lors de l'édition des billets et pages. Voir les Paramètres du blog, section « Médias et images ». Il est aussi possible d'enregistrer les paramètres d'insertion courants, au moment de l'insertion d'un média dans un billet.

Ce système est pratique mais il peut être contre-productif dans certains cas.

La version 2.20 de Dotclear prend désormais en compte la présence d'un fichier .mediadef (ou .mediadef.json) structuré de la façon suivante, pour que les réglages précisés dans celui-ci deviennent automatiquement pré-sélectionnés au lieu de ceux enregistrés par défaut pour le blog :

{
"size": "o",
"legend": "none",
"alignment": "center",
"link": false
}

Voilà les valeurs possibles pour les différents réglages :

  • size : "sq" pour vignette, "s" pour petite, "m" pour moyenne, "o" pour original
  • legend : "none" pour aucune, "title" pour le titre seul, "legend" pour le titre et légende
  • alignment : "none" pour aucun, "left" pour aligner à gauche, "right" pour aligner à droite, "center" pour centrer
  • link : true avec le lien, false sans le lien vers l'image originale

Vous n'êtes pas obligés de préciser tous les réglages et en cas d'absence d'un ou de plusieurs d'entre eux c'est celui ou ceux enregistrés pour le blog qui seront utilisés.

Par ailleurs ce fichier de pré-réglage n'est valable que pour le dossier dans lequel il est enregistré et donc uniquement les médias qu'il contient.


Conclusion

Pour le reste les curieux pourront aller consulter le détail des modifications dans le fichier CHANGELOG de cette version.

Enjoy!

2021 août 13

Dotclear 2.19

Une nouvelle version pour fêter les 18 ans de Dotclear \o/

Au programme un code (PHP et Javascript) plus robuste, quelques améliorations pour les développeurs de thèmes, une version minimale de PHP 7.3 requise, la compatibilité avec PHP 8 étant assurée, les quelques bibliothèques utilisées ont été mises à jour (jQuery, CKEditor, codemirror, …).

Notez que le support du driver MySQL a été supprimé et qu'il est maintenant remplacé d'emblée par le driver MySQLi. Vous n'avez rien à changer si vous utilisiez l'ancien, le remplacement est automatique.

Par ailleurs la fonction « se souvenir de moi » présente sur les formulaires de commentaire des blogs, autrefois gérée via la création d'un cookie est maintenant remplacée par un stockage local dans le navigateur via l'API localStorage.

Notez également que le système de suivi FLoC de Google est désactivé automatiquement (blocage qui peut être annulé via les paramètres du blog).

Les curieux pourront étudier le fichier CHANGELOG pour les détails.

Nous allons par ailleurs essayer de publier plus souvent les nouvelles versions avec probablement moins de choses à chaque fois étant donné que l'application a dores et déjà atteint sa maturité/majorité :-)

2021 fév. 13

Dotclear 2.18.1

Une version de maintenance qui corrige quelques bugs, en particulier lors de la mise en ligne de billets programmés.

- page 1 de 13

Sites map