Serendipity Styx Blog

Serendipity Styx 2.7.0 release

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

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

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

Serendipity Styx 2.6-beta1 release

N° 2018/3 - Serendipity Styx Edition 2.6-beta1 has lots of small improvements and/or fixes for the general workflow and extended Serendipity features. Check the ChangeLog for details!

  • Two of them - regarding comments - are the emergency spamblock killswitch-option to also hide the frontend commentforms and the new timeframe-option to disable comments after X days, i.e. when you don’t want to allow old entries comments, which usually don’t get very much valid comments after a certain amount of time.
  • The NL2BR-plugins P-option part was reworked, since the old code - not very ambitious - did not catch more advanced markups. This still is not absolutely bulletproof and you should always check what it produces in the frontend. The Styx recommendation for easy and extended use is to allow the WYSIWYG-Editor, in special the advanced CKEplus Plugin Edition.
  • Smarty and jQuery libs were updated. The latter even jumped up two major revisions to v.3.3.1, so quite some old methods won’t work any more or be called deprecated. This will only hit you if using an old plugin that has not been updated or been recognised to do so, or if using custom themes with old jQuery javascript code. It does not make sense to keep unsupported libraries because of laziness! 😃
  • The Spartacus plugin moved from custom mirror to Styx GitHub repository in the Spartacus configuration. All other mirror options were removed, since not making any sense with the Styx Edition. Additional themes are still fetched by the s9y origin repository. Additional themes most likely are highly outdated and should only be used with some deeply spend love. The Styx repository would certainly do some groundwork help for you, but as long as using this free and limited GitHub OpenSource account, without any Sponsor, this is not possible!
  • Since ImageMagick-7 versions more and more take place on servers, the Serendipity image processing order using different Operator-types and Setting parameters was re-checked and fixed, were it was silently ignored or tolerated by IM 6 versions and failed with the more strict ImageMagick-7 Series.
  • The most changing part went into debugging the Smarty template variables, without silenced undefined or unclear variables, which found quite some bugs or misinterpretations. This changed a lot of logic and variable workflow. Therefore the best recommendation for template copies is to start from scratch, to get all the tiny or bigger changes for the release themes, while most theme copies just do some user stylesheet changes.

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

Serendipity Styx 2.5.0 release

N° 2018/2 - The 2.5.0 release is out! Check the ChangeLog for details! Serendipity Styx is PHP 7.2 ready and requires PHP from 5.5+!

Styx 2.5.0 runs (…some highlights)

  • [NEW vs BETA] Various old and some new bugs were fixed. Example Gratia: the fixed bold markup interpretation of *words* by s9ymarkup or the XHTML-tag cleanup for ATOM feeds. Read the ChangeLog file.
  • [NEW vs BETA] Various THEMES were improved again, either updated, or revisited for certain places, like the shortcut pages for comments. Read on in the ChangeLog.
  • Various changes for encryption and hash generation were sorted out. Their usage depends on the PHP version used, getting stronger.
  • Multi cleanup for old bundled PEAR-libs and compatibility modes vs. update of external libs (Paragonie, simplePie, Pear, Smarty).
  • Various bug fixes, alongside with improvements like for the PLAIN TEXT Editor.
  • Set default Standard Backend ‘template_backend’ to Styx (2styx).
  • Add new “bootstrap 4” theme.
  • Multi changes and fixes for the Backend comments list, ie. the new moderate on/off buttons, or the new pending comment hideaway.
  • Regarding the European General Data Protection Regulation Act, taking action on May 25th, all plugins and themes were changed or prepared to collect “legal impact” information data for the newly added serendipity_event_dsgvo_gdpr plugin, which adds “legal consent” actions to user forms or even the blog.
  • Themes changes were made for consistency (serendipity message selectors), for GDPR (in clean-blog, skeleton, timeline) and real improvements for post comment author owners (in 2k11, next).
  • The NL2BR plugin found a bad interpretation of the ISO-lation tag option and improved the NL2P (experimental) option. Please review your settings on upgrade!
  • Again some improving changes in the language constants.
  • Last, but not least, a new option arrived, to run secured HTML comments. This option allows having coding example parts in comments and comments generally displayed more nicely. Since being a heavy change with “security impact”, this requires CHECKED comments, which should be your owners interest anyway!

It might 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!

example of improved comments changes

See download

What next?