Serendipity Styx Blog

A word about distribution politics

Styx 2019/2

A word about (server) Distribution politics for the ImageMagick graphics package and new exciting image formats!

There are two current versions of ImageMagick, the LTS-alike version 6, which will be supported for another 7+ years and the rewrite version 7, being a little more strict and which becomes new features and enhancements etc. This will give legacy applications more time to upgrade to version 7.

The current stable Debian 9 "stretch" is running IM 6.9.7.x, while upcoming Debian 10 "buster" and "sid" are at IM 6.9.10.x versions. That means, it seems that even for dist-upgrades the next ~5 years there will be no change, without giving the opportunity to run both versions co-existing in your environment. Same issue for Centos/Fedora or Ubuntu. Fedora Devs stated to support the co-existing tooling, so that migration is at least possible over the years.

Serendipity Styx does already support ImageMagick 7 processing.

WebP support is another thing coming up. As you might have noticed, bigger web sites already use WebP images more and more. WebP is a new image format developed by Google, which is both, lossy and lossless. WebP-related software is released under a BSD license. It is a sister Project of VP8 video and WebM multimedia formats. I am truly convinced that this will be the NEW open standard for lossy compressed true-color graphics on the web in the near future, producing much smaller files of comparable image quality to the older JPEG and PNG schemes. There are limitation as ever, since you need a browser to support it - well, and the good thing is the most already do - and you need PHP builds enabled --with-webp, you need either PHP GD having it enabled (see gd_info()) or ImageMagick build with webP support, which is ready for Debian 10 since version (see above).

Unwilling to wait?

You can do one thing about it now. Load the free available tool cwebp and pre convert your images to the new format before you upload them to your blog. If you then have PHP 7 with GD enabled WebP support or even the mentioned IM (or better) versions, then you can already use WebP in your Styx MediaLibrary with success. If not, you cannot create an upload auto thumb of this format for the moment and probably have to wait until Styx will release the next major version 3.0.

Happy Birthday old girl

Styx 2019/1 - 16 years of Serendipity

You’ve come a long way, ... what a fortunate stroke of serendipity !

Its time to give an update of development and the future plans for Serendipity. Upcoming Serendipity Styx 2.8 revision will be the last update for the old and outdated PHP 5 Series and future 2.8.x dot versions will only address security or real bug fixes.

Serendipity Styx 2.8.0 will prepare the core system themes for consistency and to easily live in these modern “mobile-device” times without breaking too much for fallback or engine depend themes.

Then Serendipity Styx will strongly jump right to 3.0 and will further only support PHP 7 Editions. And it will be (much more) “feature” complete. 🙂

I sat for years and found you saying:
Never mind old chap, I will resist
kill my bugs, that still persist!

Serendipity Styx 2.7.0 release

Styx 2018/6 - The Serendipity Styx 2.7.0 New Year’s Eve Release Edition is out! Serendipity Styx is PHP 7.3 READY and requires PHP from 5.5+! Approximately this is the last edition supporting the old PHP 5 Series, since its End of Life support just ended.

Styx 2.7.0 runs (…some highlights)

  • Various old and some new bugs were fixed
  • Various THEMES were improved again, either updated, or revisited for certain places, like the new “pcomments.tpl” file for paged comment shortcut pages. Read on in the ChangeLog and keep your copy themes up-to-date!
  • Improve media directory list, adding the number of local media entries
  • Improve categories list, adding the number of associated entries
  • Multiple improvements for the MediaLibrary, like lowercase .ext conversion and adding possible missing media file extensions for image types.
  • Improve the Media Gallery markup and display notation (referred to rendering) to run and float with the much better column ordered lists, compared to a per row display gallery.
  • Improve the Maintenance widget page to display items column-ordered
  • Preparations to allow and replace hidden-category entries by the categorytemplates event plugin, which makes it possible to use categories/entries independently.
  • Various lang constant fixes and improvements, like finding a better name for the MediaLibrary in german [de] language files.
  • Add a new “Zombie Plugin Manager” Clearance Maintenance Spot, to get rid of old, locally outdated and unsynchronized plugins, physically. This has a “dependency” twin in ZARATHUSTRA, an upgrade task, which makes (unused) local plugins upgradeable via Spartacus for the case of being (re-)installed again in future.
  • Works on PHP 7.3 readiness

It might again be a good idea to take the advantage of starting a new copy template before adapting each single theme change to your old copy themes!

Check out the ChangeLog for details or even read the commit history for more. See download

Serendipity Styx 2.6.1 - Bugfix Release

Styx 2018/5 - Short bugfix update for certain issues

Refactor, Rebuild, Regression

Mainly an odd plain editor NL2BR / NL2P parsing regression was fixed, that prevented correct parsing of plain text markup_elements in certain situations.

Also the maintenance MediaLibrary-Synchronizer thumbnail rebuilding area was refactored and conditionally fixed. It now works very much as expected.

Serendipity Styx Edition is up to date!

As ever, read the ChangeLog or even the commit history for more. See download

Serendipity Styx 2.6.0 - A Back-to-the-Roots Release

Styx 2018/4 - Long years of activity and continuously deep development have finally brought this shiny new release up to your attention.

So what is the difference?

The difference is under the hood. since Serendipity Styx does hold what was promised with Serendipity for such a long time.

The changes and fixes are uncountable. A very simple Serendipity user won't hardly ever notice, except for some obvious GUI related changes, since ‘he’ does not care of all the extended promises, which do not work for the reason of being unfinished from start or being borked by in past added tweaks or the fluent development. The one writes some articles, uploads an image, uses some categories and may even get some comments. Thats it!
Nothing to worry about, nothing to care. As you might know, a production release is designed to be very forgiving and let the users simply do their work. All seems well-matched and pleasant ready for extended future usage...

Yes, this is where the Serendipity Styx Edition comes into place. Its not there to be overconfident and say it is ever ready, since the author himself is always impressed and amazed of how much of those bugged or unfinished properties he has to face and to fix in the ongoing release cycles. But since having fixed an enormous amount of bugs and failing design patterns, Serendipity Styx is proud to say, that it has been done as much as possible, to polish and tune this up and keep the tremendous goal alive of being simple and infinite extendable together at the same time. All the past Designers of Serendipity conceptualised a system that kept to be incredibly modern and predictive, which is not that easy seeing all these fast and immense development progresses in these first two decades of the 21st century, regarding programming languages, design patterns and security.

Now, what exactly has happened since the Beta?

Serendipity Styx decided to go back to the roots. It changed the backend to where it belongs to, the default theme. While Serendipity 2.0 was developed over 2 years of heavy picking and replacing, a very lot of old XHTML and HTML4 code was replaced and therefore it was quite obvious to append the new developed Smarty Backend to the HTML5 Standard theme, which is 2k11. Since 2k11 sloughed the previously used Standard Theme Bulletproof, it tried to replace and take apart the “default” theme, which even got more and more a forgotten fallback template quarry to take out old and unfocused things. The bleeding rest. To be blunt: 2k11 tried to take over. This even got more and more relevant with the new backend and was a long going process of around 5 years in total. It was not that much in focus to think about the real relevance of default and standard. And that even more, since the Standard Theme name is held in the $serendipity['defaultTemplate'] variable, which does not really help to sharpen the difference. 😉

Back to the roots means in these terms: Default is the place of the last fallback cascade, not that much the present or absolute recommended frontend theme. It is the Serendipity Theme Basement, which is the right place to put a backend, since everything ends up here. A Standard Theme by comparison is just a current set, used and recommended standard for the weblog frontend. All items that are relevant to fall back, like remaining images for example and not particularly bound to the standard, are found in “default”.

One benefit of this change - apart from the simplification of understanding - is to be able now to simply force a standard theme change, without having to deal with the backend and fallback. That’s what it’s for.

What else?

A lot of deep inspection went into debugging the workflow between the core and some main external plugins logic and the Smarty template compiler. Since Smarty has an error suppressing handler it does not yell about unset or false variables, as long as you do ask the right conditional question. Answers may are others than you expect, but since being suppressed are not always that relevant to the conditional output. We have lived with it for years. Serendipity Styx did try to find all these unsharp needles and fixed them in the release themes. This is why you are strongly recommended to start a new theme copy, if already working with a copy template. For sure all additional themes over Serendipity-Origin repositories have not been touched for this relation!

Serendipity Styx would really like to take them over into this repositories account, to get rid of remaining Smarty2 API usage, forcing the core to hold backward compatible methods and fix the most prominent of these mentioned “bugs” above. But sadly this all takes too much of extremely valuable free memory GitHub space, until someone sponsors Styx with a real paid unlimited account and even something more like being a Patreon.

The Serendipity Styx Book [de] and the Serendipity Styx site documentary have been updated to already reflect some or most of these changes; Also the upgrade guide in the [en] documentary installation notes was partly reworked. It all is an ongoing process and I hope I haven’t missed that much to rewrite.

The Spartacus plugin was touched to get rid of the custom Styx pointer and ZARATHUSTRA (a local plugin version synchronizer) was added to the upgrade tasks. For all these changes you need to allow the upgrade tasks to run automatically for you.

And of course, Serendipity Styx is deeply tested with the latest PHP 7.2 release.

As a last-minute bonbon the maintenance section got extended with a so called "Theme Manager Clearance Spot". This will help you to quickly get rid of any private or additional themes in your themes directory, without having to start FTP once. Naturally benefits upgraders only.


Have fun and be productive with Serendipity Styx!
Ian Styx

As ever, read the ChangeLog or even the commit history for more. See download

What next?