7 * Support for the new 5.x version of Artemus has been added.
8 Once Artemus 5 has been stabilised and correctly documented,
9 it will become Gruta's templating standard.
10 * Date formatting is done using strftime(), so its full
11 set of percent-prefixed commands is available.
12 * A new field in stories allow a Table of Contents to be
13 created for each story.
14 * A new template `status' has been added to set the HTTP
16 * A security bug that allowed to bypass a story's publication
17 date by using the STORY_PRINTABLE template has been fixed.
18 * Improved cookie parsing.
19 * The `gruta_mksite' helper scripts has been renamed to
20 `gruta-mksite' and it's also installed in /usr/local/bin.
25 * Templates are now stored inside source backends instead of
26 having a special directory of plain files. So, it's no
27 longer necessary to prepend the writable directory to
28 the template path in Gruta::Template::Artemus creation.
29 * The TT template toolkit has been officially deprecated.
30 * New global CGI variable `set_date', to force a date to
31 be assumed as today, to be used to take a look at how would
32 a page be shown in the given date. Only usable by a logged-in
34 * A new script `gruta_mksite', to help in the creation of a
36 * A new command, `set_story_date', has been added to bin/gruta.
37 * The full set of `mod_rewrite' keywords to be used if `static_urls'
38 is set has been expanded.
40 RewriteRule ^/([0-9]+)\.html$ /?t=INDEX&offset=$1 [PT,L]
41 RewriteRule ^/([0-9]+)-([0-9]+)\.html$ /?t=SEARCH_BY_DATE&from=$1&to=$2 [PT,L]
42 RewriteRule ^/tag/(.+)\.html$ /?t=SEARCH_BY_TAG&tag=$1 [PT,L]
43 RewriteRule ^/tag/$ /?t=TAGS [PT,L]
44 RewriteRule ^/top/$ /?t=TOP_TEN [PT,L]
45 RewriteRule ^/(.+)/$ /?t=TOPIC&topic=$1 [PT,L]
46 RewriteRule ^/(.+)/index\.html$ /?t=TOPIC&topic=$1 [PT,L]
47 RewriteRule ^/(.+)/([0-9]+)\.html$ /?t=TOPIC&topic=$1&offset=$2 [PT,L]
48 RewriteRule ^/(.+)/(.+)\.html$ /?t=STORY&topic=$1&id=$2 [PT,L]
49 RewriteRule ^/rss\.xml$ /?t=RSS [PT,L]
50 RewriteRule ^/sitemap\.xml$ /?t=SITEMAP [PT,L]
51 RewriteRule ^/style\.css$ /?t=CSS [PT,L]
57 Please note that version 4.1.2 of the Artemus template toolkit
58 is required for this release to work properly.
60 * Story rendering is cached, resulting in faster page loading.
61 * An existing story can be copied to another topic from the story
63 * The template `stories_by_date' has changed the order of their
64 output values; now they are topic_id, id and date.
65 * The RSS template now accepts an optional CGI argument `tag', to
66 get feeds on stories by tag.
67 * Multiple sources are no longer supported; it never really worked
68 well, made the code cumbersome and had no real advantage after
69 all. The cgi caller needs not to be changed, as the `sources'
70 argument is still supported (only the first one is used, though),
71 but the scalar `source' is preferred now.
72 * The file format in the FS source has changed; the `.META' extension
73 has been changed to `.M', and `.TAGS' to `.T'. Also, new files
74 appear in the `stories' directory with the `.A' and `.B' extensions,
75 holding the rendered abstract and story body, respectively. The
76 transition is made automatically on the first run, no manual
78 * New argument `hard_top_ten_limit' to Gruta::Source::FS, to set
79 the maximum number of stories to be tested when generating the top
80 read stories index (previously hardcoded to 100).
81 * New argument `min_size_for_gzip' to Gruta::CGI, to set the minimum
82 size for the output body to be Gzip compressed (previously hardcoded
84 * If a story pointed by a story:// pseudo-url has a publication date
85 in the future, only the title is shown (i.e., it's not clickable).
86 * The Mbox source is officially deprecated.
87 * Static URLs are also generated for the `CSS', `RSS' and `SITEMAP'
88 pages. The following `mod_rewrite' rule must be added to the ones
89 suggested in the previous version:
91 RewriteRule ^/style\.css$ /?t=CSS [PT]
96 * Fixed a last time bug in the DBI schema generation.
101 * On-the-fly Gzip compression (if browser accepts it).
102 * New special uris; `abstract', to paste a story's abstract, and `body',
103 to paste the full body of another one.
104 * A new renderer, Text, for plain text content.
105 * New Artemus variables to set HTML metadata; `html_title',
106 `html_description' and `html_keywords'.
107 * A new supertemplate called CSS, that returns the Cascading Style
108 Sheet instead of having it embedded in all output.
109 * A new supertemplate called SITEMAP (to be aliased to /sitemap.xml).
110 * If a story called `index' is present in a topic, the 'TOPIC' template
111 shows its body instead of the list of stories in it.
112 * Several new commands in the `gruta' command line tool; _new_story_ (to
113 create a new story from STDIN), _import_rss_ (to import an RSS file
114 into a topic), _update_story_ (to update a story from STDIN).
115 * Topics and stories now have a new field, `description', that is used
116 in the HTML description meta tag in `TOPIC' or `STORY'.
117 * Internal server errors set the HTTP status to 500.
118 * Some old function templates have been deleted and moved to Artemus.
119 * Many templates have been simplified with new Artemus keywords.
120 * The DBI driver is less verbose on errors.
121 * Those templates more prone to be changed when configuring a new
122 site have been renamed to have a prefix of 'cfg_'.
123 * Added POD documentation to some templates.
124 * Date formatting functions now accept `%w' to print the week day
126 * New global argument `dummy_touch' to avoid updating the `hits' count
128 * Several fixes to the Mbox driver.
129 * Don't generate empty 'about' and 'legal' links in 'meta_menu' if
131 * Confirmation is requested when deleting a story.
132 * New global argument `static_urls', that forces some urls (mainly
133 links to topics and stories) to use a simplified, static-like look.
134 You *need* to have the following Apache's mod_rewrite keywords
135 for these urls to be re-converted to usable ones:
138 RewriteRule /(img|download)/.* - [L]
139 RewriteRule ^/(.+)/index\.html$ /?t=TOPIC&topic=$1 [PT]
140 RewriteRule ^/(.+)/(.+)\.html$ /?t=STORY&topic=$1&id=$2 [PT]
141 RewriteRule ^/(.+)/$ /?t=TOPIC&topic=$1 [PT]
142 RewriteRule ^/rss\.xml$ /?t=RSS [PT]
143 RewriteRule ^/sitemap\.xml$ /?t=SITEMAP [PT]