Dotclear

2023 Feb 13

Dotclear 2.25

A new version of Dotclear for which you should encounter fewer problems, if any, than at the time of the update to 2.24.

This version essentially incorporates a code modernization - a modernization that should continue for a few more quarters.

It is possible that in the near future the required PHP version will change, especially to allow us to focus on code modernization. For now it is still PHP 7.4, but the 2.25 administration interface will tell you, if you are still using this version, that it is time to consider switching to PHP 8.0 or PHP 8.1, or even PHP 8.2 for which we have worked hard to ensure compatibility.

A small note to plugin developers: It was optional until now to define the module type in the _define.php file; it is likely that the future 2.26 will require it, so add this line in the properties:

'type' => 'plugin',

Take example on one of the plugins distributed with Dotclear if necessary.

The changelog of the 2.25:

  • 🐘 PHP 7.4+ is required, PHP 8.0/8.1 compliance (and as far as we know PHP 8.2)
  • Core: New plugin/theme code structure (using a brand new autoloader), old plugins/themes remain compatibles
  • Core: Clearbricks is now included in Dotclear code, not more as a git sub-module
  • Core: Update last step will not redirect to the safe-mode login page
  • Core: No more need to add namespace (blog-settings) / workspace (user-preferences) before using them
  • Core: Add possible using of external db driver (Experimental)
  • Core: Add support of .mjs ECMAScript module files
  • Core: Remove unnecessary and weak protection code
  • Core: Move some legacy and proxy code in dcProxyV2 plugin
  • a11y: Some aria attributes have been set in backend
  • Theme: Merge default smilies and blog's smilies (the blog's smilies have a higher priority)
  • Theme: Merge plugin blowupConfig into theme Blowup
  • Admin: Some jQuery javascript scripts have been rewritten in pure ECMAScript
  • Admin: Add Atkinson Hyperlegible font (used by default in admin, may be disabled in user pref)
  • Admin: Add some shortcuts (CTRL+letter) to dcLegacyEditor toolbar
  • Admin: Add a specific warning message on update page if necessary (breaking changes)
  • Admin: Cope with no user TZ defined (use UTC in this case)
  • Admin: Fix admin permission management for blogroll and pages plugins
  • Admin: Cope with float/double values in about:config and user:pref
  • 🐛 → Various bugs, a11y concerns and typos fixed
  • 🌼 → Some locales and cosmetic adjustments
  • 📣 Warning: Next major release (2.26) may require PHP 8.0 (announced in backend) or PHP 8.1

2023 Jan 18

Dotclear 2.24.1

An update that fixes some bugs encountered with the 2.24 of last Christmas.

2022 Dec 24

Dotclear 2.24

The new version for the holidays. It is strongly recommended that you do the update in safe mode, which will then allow you to update the plugins that need to be updated.

If you have trouble logging in after the update, delete the associated cookies before refreshing the login page.

The 2.24 CHANGELOG:

  • 🐘 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 Dec 13

How to update to 2.24

We won't lie to ourselves, the next update could be ... sporty1 :-)

I just tested several times, from an installation that runs in production (my blog) with Dotclear 2.23.1 and I noticed the following things:

  1. If you ever use the static cache2 plugin, disable it temporarily (just comment out the DC_SC_CACHE_ENABLE activation constant in the inc/config.php file, or set it to false).

  2. Upgrading to Dotclear 2.24 in rescue mode is the best way to do it, once you know3 that the plugins you use are available for 2.244.

  3. If you ever need the FakeMeUp plugin, then log back in to normal mode, install it, run it, then log back in to rescue mode.

  4. Make way for updates:

    1. Upgrade Dotclear to 2.24 (still in rescue mode),
    2. Reconnect in rescue mode because the previous step will bring you back to the authentication page5,
    3. Do the update plugins6,
    4. Reactivate the static cache if necessary,
    5. Reconnect in normal mode.

This should be all good!

Take the opportunity to clear the template cache and the static cache (Maintenance plugin).

A little extra: it may be useful to install the growUp plugin to clean up a bit7 once the update is done8.

Anyway, we'll be around if there is a problem; on the forum in particular.


  1. To be honest my first attempt ran into a problem with the static cache (see item 1 in the list), otherwise I was able to do the update in normal mode without any trouble. 

  2. Especially if you use it, like me, aggressively. 

  3. Install the Check store version plugin, it will tell you all that. 

  4. If not, wait until they are, it's better! 

  5. The authentication page may not be displayed, in which case delete the cookies associated with the site and refresh the page. 

  6. Force the update check to make sure you don't miss anything. 

  7. This is normally done during the update, but sometimes things can happen ;-) 

  8. It can be disabled or uninstalled afterwards. 

2022 Aug 13

Dotclear 2.23.1

And in the meantime, a maintenance version to correct a bug with the addition of comments.

Dotclear 2.23

The new version for this quarter with some improvements in the program mainly in the core code, but not only.

Note the disappearance of the management of icon sets, little used and potentially complicated with the use of icons in SVG format in two versions (light and dark theme).

The CHANGELOG of 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 May 13

Dotclear 2.22

The new version for this quarter — we're keeping up, that's a good thing — with some improvements to the program:

  • 🐘 PHP 7.4+ is required, PHP 8.0/8.1 compliance
  • Remove anti-FLoC system
  • Add a live preview button to standard Dotclear editor (wiki syntax)
  • Use native Javascript in scripts shiped with Berlin and Ductile theme (no more need jQuery)
  • Improve retrieval of origin metadata on Webmention or Pingback
  • Add a "Reset to now" button near the publish datetime input field (post/page)
  • Reduce number of CSS mediaqueries' breakpoints to 3 (mobile, tablet, laptop) for backend
  • Add a sticky position to "quick access to section" menu for about:Config and user:Prefs
  • Toolbar icons reviewed for standard Dotclear editor

2022 Mar 7

Dotclear 2.21.3

A new version that fixes two bugs concerning the management of users other than administrators (or super-administrators).

2022 Feb 26

Dotclear 2.21.2

A new maintenance release that solves, among other things, the date and cache problems encountered by some users.

Changes:

  • Revert some modifications done for PHP 8.1 compliance (strftime)
  • Cleanup remaining currywurst folders (currywurst template removed since 2.20)

2022 Feb 19

Dotclear 2.21.1

A maintenance release to fix these bugs:

  • Fix: Cope with author TZ for posts and pages edition
  • Fix: Avoid browser caching on page/post preview
  • Fix: List of entries using a media

2022 Feb 13

Dotclear 2.21

A new version of Dotclear which I let you discover the (light) resumption of the look of the administration. In particular, many PNG images have been replaced by a vector version (SVG format), which allows to keep a good quality at any zoom level.

Note that it requires PHP 7.4 or PHP 8.0. We have tried to fix all the problems that may occur with PHP 8.1, but our testing may not have been exhaustive and we welcome any feedback on how this latest version of PHP works.

For details of the changes, see the CHANGELOG or even the repository.

2021 Nov 19

Dotclear 2.20.1

A small update that fixes three not very serious but potentially annoying bugs in the use of Dotclear.

2021 Nov 13

Dotclear 2.20

Still gardening and happy tooyou Kozlika!


As announced at the time of the 2.19 release, we are publishing new versions more often - or at least trying to.

In this new version 2.20, the highlights are as follows:

  • A new alternative repository system has been set up for third-party plugins and themes, which can be useful if the DotAddict server is running out of steam, as it did recently (thanks to Noé for getting it up and running again), or if the author does not wish to deposit his work elsewhere than on his own public repository. We detail the procedure to follow below.
  • A new IPv6-specific spam filter (which is starting to be deployed quite a bit) is included in parallel with the IPv4-specific filter.
  • Users can now enter several additional email addresses and websites in their profile. Indeed, some themes allow the author of a post to be differentiated from other commenters on the basis of those email and web site addresses, which may change over time. This system therefore makes it possible to indicate new addresses without having to modify the metadata of old comments.
  • Dotclear's wiki syntax has been extended to allow the easy insertion of HTML block details. A vertical bar at the beginning of the line, followed by the text of the summary is necessary to start this block, followed by the free content of the block, followed by a line with a vertical bar as the first character only ending the whole, i.e. :
|summary of the detail block (hidden by default)
    …
content of my block
    …
|

Please note: this version is the last to support PHP 7.3; the next 2.21 will require at least PHP 7.4 (or PHP 8). A message will be displayed on your dashboard if your PHP version is affected.


Alternative repositories:

To implement an alternative repository for a module, plugin or theme, you need two things:

  1. A repository entry in the properties provided in the module's _define.php file, such as: 'repository' => 'https://raw.githubusercontent.com/franck-paul/sysInfo/main/dcstore.xml'
  2. A dcstore.xml file structured as follows, and stored in accordance with the URL provided above:
<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>

Example for the sysInfo plugin:

<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>

Note that the dcstore.xml file does not need to be included in the module installation archive.

As soon as a module, indicating in its _define.php file an alternative repository, will be installed with Dotclear version 2.20, then the latter will also consult this repository to check for the presence of a new version.


One more thing!

It is possible to save the default settings for inserting a media file (image, sound, ...) which is then used when editing posts and pages. See Blog settings, section "Media and images". It is also possible to save the current insertion parameters when inserting media into a post.

This is convenient but can be counterproductive in some cases.

Dotclear version 2.20 now takes into account the presence of a .mediadef file (or .mediadef.json) structured as follows, so that the settings specified in it become automatically pre-selected instead of those saved by default for the blog:

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

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

  • size : "sq" for thumbnail, "s" for small, "m" for medium, "o" for original
  • legend : "none" for none, "title" for title only, "legend" for title and legend
  • alignment : "none" for none, "left" to left align, "right" to right align, "center" to center
  • link : true with the link, false without the original image link

You are not obliged to specify all the settings and if one or more of them are missing, the one or more saved for the blog will be used.

Moreover, this preset file is only valid for the folder in which it is saved and therefore only for the media it contains.


Conclusion

For the rest, the curious can consult the details of the modifications in the CHANGELOG file of this version.

Et voilà !

2021 Aug 13

Dotclear 2.19

A new version to celebrate the 18 years of Dotclear.

On the program, a more robust code (PHP and Javascript), some improvements for themes developers, a minimal version of PHP 7.3 required, the compatibility with PHP 8 being ensured, the few used libraries have been updated (jQuery, CKEditor, codemirror, ...).

Note that the MySQL driver support has been removed and is now replaced by the MySQLi driver. You don't have to change anything if you were using the old one, the replacement is automatic.

Furthermore, the "remember me" function present on the blog comment forms, previously managed via the creation of a cookie, is now replaced by a local storage in the browser via the localStorage API.

Note also that Google's FLoC tracking system is automatically disabled (which can be overridden via the blog settings).

The curious can study the CHANGELOG file for details.

We will also try to publish new versions more often with probably less stuff each time as the application has already reached its maturity/majority :-)

2021 Feb 13

Dotclear 2.18.1

A maintenance version that corrects a few bugs, especially when putting programmed entries online.

- page 2 of 8 -

Sites map