Mon Jan 27 09:34:53 2025 UTC
Sorry for the inconvenience, but I had to fix another FSM-related bug: the generator in 0.2.52 sometimes places a paragraph start just before the end of a tag where paragraphs are not eligible (e.g. h2, ul, pre...), so Thalassa 0.3.53 has just been made available, in which the problem is (hopefully) fixed. This time no changes to configs are needed, just replace the version and recompile. It is also recommended to regenerate your site, just in case the bug manifestated somewhere you didn't notice.
I'm really sorry for having this many bugfix releases in a row, which means each time I was releasing immature code. This is only because the initial “major” release, 0.3.50, was an urgent fix itself.
Wed Jan 22 18:23:23 2025 UTC
Thalassa 0.3.52 uploaded. Another FSM-related bug
has been fixed (well, paragraphs starting with a permitted tag such as
em
or strong
didn't render correctly). Besides
that, support for the new filtering policy has been added to templates,
both Smoky and Agenda; by default (which is specified within the
“base” part of the templates, not intended for changes), tags
a
, img
, span
are no longer listed as
permitted, and the only premitted attribute (listed for all tags) is
title
. However, within the default config.ini
,
these tags are permitted as well as some additional attributes. If you use
any of the two templates and comments are premoderated at your
site, you might want to add something like this to your
config.ini
:
[options site] moretags = a img span moreattrs = a=href img=src img=alt img=height img=width align style class
Don't do this if untrusted users are allowed to leave comments with no premoderation on your site.
Mon Jan 20 13:54:57 2025 UTC
UPD (Jan 21, 2025): the version 0.3.50 found to be buggy. Please download the version 0.3.51 which is a quick-fix release.
Some brain-damaged webcoding addicts demonstrated me (by submitting
comments with some related crap) the possibility to introduce JavaScript
into user comments using tag attributes appeared in HTML5 such as
onclick
, onpageshow
etc., and browsers happily
ignore the fact the document they render has nothing to do with HTML5. I
have to admit I didn't realize things like that are possible. Luckily, all
my sites are premoderated, so no visible consequences occured, but it
became obvious for me that tag attributes need to be filtered just like
tags theyselves.
It took several days of work to significantly rewrite the filter (for those
who're courious, it is implemented in the
lib/stfilter/stfhtml.cpp
file using an FSM) and add the
appropriate support to Thalassa itself, as well as to the
thalcgi.cgi
program. Anyway, Thalassa 0.3.50 is now ready and has just been made available.
There are two user-visible changes:
tag_attributes
is added to the
[format ]
section both in the Thalassa main configuration and the
thalcgi.ini
file. A kinda-safe default is provided for
its value, and the default value is
a=href img=src img=alt
, only allowing to use the
href
attribute within the a
tag, and
src
and alt
attributes for the img
tag, if the tags are allowed. All this only affects
headed text files where the
tags
flag is found in the format
header field
(typically the comments written by users using the web interface). You
only need to worry about all this in case you really wish to allow users
more things to do within their comments, like, e.g., allowing the
style
attribute for all tags (think carefully before
you do).thalcgi.cgi
configuration, the
%[cmtinfo:attrs]
macro function added.Nothing should (hopefully) break on your site if you move to this new version from the previous one; most users leaving comments simply don't remember about all these tag attributes. However, we strongly recommend to test it before deploying on running sites.
Tue Dec 3 20:37:09 2024 UTC
Thalassa 0.3.30 released. This release is mainly
devoted to the new comment displaying style, named thread
.
With this style, top-level comments are displayed on the page being
commented, and for each top-level comment, a separate page is created to
hold replies on that comment, if any. The Agenda template, from now on,
allows to choose the style for comments, either “plain”
(list
), or tree
(the default one), or the new
thread
style. The new comment style also affected the
macroprocessor, where the %[cmt:replies]
and
%[cmt:threadpg]
functions are added.
Besides that, this release fixes a problem related to the
dirname(3)
function. The problem didn't let Thalassa work on
OpenBSD due to a slightly different implementation of the function.
And the last thing to mention: the %[rfcdate: ]
macro now
adds “UTC” to the text representation of the date.
This release doesn't (hopefully) introduce any incompatibilities with
earlier releases; it should be safe to upgrade both the Thalassa version
and the Agenda template. If you'd like to give a try to the support of
different comment styles, then take a look at the
appearance.ini
file, find the [options cmt]
sectioin and copy it to your appearance.ini
, then
edit as appropriate.
Sun Nov 17 23:45:04 2024 UTC
Thalassa 0.3.20 released. This time Thalassa itself gets only minor changes:
path
parameter which overrides the
section name for local path (URI) of the page; the parameter is passed
through the macroprocessor, so the actual name for the generated file may
be set by, e.g., an
option, and setting
it to some “special” values disables the page.Besides that, a segfault has been fixed, which happened on an attempt to generate an unknown (unconfigured) stand-alone page from command line.
More significant changes are related to site templates. First of all,
a brand new template, named Agenda
, is added.
The new template mostly provides the same functions as the old good
Smoky
: pages, feed (either a news strip or a blog, exported to
RSS), a guestbook and contact form. Unlike Smoky, Agenda uses a side panel
for the main menu, and the panel may be placed at the left side, at the
right side, or suppressed (in which case you'll probably have to care about
basic navigation on your own). Four prepared color schemes come with
Agenda, and generally a color scheme consists of less values to be set, so
it made customizable by the site author. Besides that, some sizes and
lengths may also be customized; the side panel's width may serve as a good
example.
The next notable thing is that both templates now support translations to languages other than English. In the source tarball, translations to Russian are provided, both for koi8-r and utf-8 encodings.
The two templates have a lot
Sun Jun 2 23:42:02 2024 UTC
Thalassa 0.3.10 released. This is mainly a bugfix release, including:
Sat Apr 20 21:25:31 2024 UTC
Within the documentation section, a
step-by-step guide to setup Apache for
serving Thalassa-based sites is now available. It is strongly recommended
to use suexec
even if your servier is only going to serve a
single site, but along with that, the guide explain how to configure your
server properly to make the default Apache site Thalassa-based and how to
serve several virtual sites without suexec
, although it is
specially stressed that this approach is ugly.
Thu Mar 14 20:55:16 2024 UTC
Despite less than a month passed, it's time to announce another “major” release, 0.3.00, which is now available for downloading. This time, the list of changes since the previous version is relatively long.
There are three visible changes in functioning of the CGI program, and each of those actually
Sat Feb 24 14:21:51 2024 UTC
New “major” release, 0.2.00, is available. In this release, another token (nonce) is added to the CAPTCHA test procedure. For every successful test, the pair of the time and the nonce is stored on the server (for at least the time of test validity) disallowing to reuse the same CAPTCHA challenge for creating more than one session. Configuraton files of existing sites need to be slightly updated; hence the version number change. Also in this version:
Tue Feb 6 21:18:43 2024 UTC
New release, 0.1.20, has just been uploaded to the download page. In this version:
%[listinfo:]
added to the static
content generator; see the
documentation for
details;dullcgi
, created
(mostly out of the existing modules used by the thalcgi.cgi
program); see the documentation page devoted to
dullcgi;thalassa/examples/ytid
directory, and be sure to read the
README
file there);error 403
;ltgt
filter
(which replaces the three active HTML chars with the respective HTML
entities) before placing it within the textarea
tag; well,
this achieved by adding the appropriate calls to the ltgt
macro;htaccess.ini
(so that the
user is able to decide if (s)he needs the .htaccess
file to be
generated at all, and what it must contain) and cgilocal.ini
,
intended for adding custom pages served by the CGI;quote
replaced with blockquote
;Tue Sep 19 02:01:10 2023 UTC
I decided to give away the program I wrote to get my
stolyarov.info site out
of its jail formed by several pieces of EOLed software. So,
the program named drupal2fs
is now available
at the download page.
It is a single C source file, and the file contains everything I had about it, including the instruction how to build the program, its licensing status (well, it is public domain), etc.
Please don't expect much from it. I wrote the program to recover one particular site, and I never intended to make it anything more than just a single-use tool. It is highly unlikely to work with later versions of Drupal, and even for the Drupal 5.* it only recovers the texts of nodes and comments, and little else; see the large commentary text at the top of the source file for details.
Good luck to those who decide to try it.
Tue Aug 29 00:16:11 2023 UTC
Thalassa 0.1.10 has been published. In this update:
ifparent
and
parent
added to the
%[discuss:]
macro;scriptpp
library got fixes so as to compile under
FreeBSD; hopefully, the whole thing will now compile under FreeBSD, and
thanks to folks who reported the issue;Sun Aug 13 17:57:36 2023 UTC
Thalassa 0.1.06 is available. In this update:
%[cmtinfo:tags]
accessor added;Wed Aug 2 02:46:42 2023 UTC
An updated source tarball, 0.1.05, uploaded. In this update:
Tue Jul 25 19:56:33 2023 UTC
Newer source tarball, 0.1.01, is available. This version contains a lot of fixes, most of them — to the Smoky template. I'm sorry folks, but comments almost didn't work in the version of Smoky included into the 0.1.00.
Mon Jul 24 21:56:12 2023 UTC
It took less than a day for some unknown shit-eaters to create a new account on GitHub pretending it is mine, and to put Thalassa sources there. So, now officially:
Well, formally this doesn't violate the license (from the other hand, impersonation violates existing law in many countries, but, well, I'm too lazy to call police). So, just keep in mind: if you see my code on GitHub, it is a thing I never approved.
Sun Jul 23 20:41:00 2023 UTC
The very first Thalassa CMS source code snapshot is now available. A lot of features are still to be implemented, and perhaps there are tons of bugs and various flaws; it is really a doubtful idea to