Some minor features and bugfixes in this release:
Themes will no longer deploy their template files with the rest of the
site. This protects your templates from being read or stolen.
The Blog application tag descriptions (tag_text
)
is now processed as Markdown, so your tag pages can have links,
headers, and other stuff.
There is a new guide to resolving error
messages. It's only got some
config-related errors right now, but it will grow as time goes on.
Related to that, configuration errors are now detected and possible
resolutions suggested. A new version of
Beam::Wire makes it easier to
detect when the config file has a problem with parsing.
Finally, links to internal parts of Perldoc files (like
L<My::Module/SECTION>
are now fixed.
Full changelog below...
Continue reading Release v0.056...
We're in the run up to v1.0, the first stable
release. As a
result, there were quite a few deprecations in this release, and a lot
of new features.
Breaking Changes
The Perldoc app now creates folders
instead of files for the POD. This means the link to My::Module
will
now be /My/Module
and not /My/Module.html
.
This is being done outside a deprecation policy in the hope that
nobody's started using the app extensively enough to be hurt. Having
both sets of pages (.html and non-.html) was deemed too much for a
non-stable release. If something like this happens after v1.0, we will
build both sets of pages (with a switch to turn off the old set).
Deprecations
The Static app and
Plain app are both deprecated in favor of
the new Basic app. The Basic app has all
the functionality of both the Static and Plain apps.
Using either the Static or Plain apps will give a warning. To fix this
warning, change the app's class
to Statocles::App::Basic
. See
Statocles::Help::Upgrading for
details.
The File store is now just
Statocles::Store. Likely this requires no
changes in your config, unless you've referenced
Statocles::Store::File
directly (just change it to
Statocles::Store
to silence the deprecation warnings).
The Store write_document method
used to return the full path to the document written. This was
confusing, as one generally does not expect a write method to return
anything (unless it's a true/false value for success/failure). As of
right now, you can get the document path by calling the child()
method of the Store's path attribute.
New Features
There is a new Basic app. This application
supports Markdown files and collateral images and files. It is the
basic functionality of all Statocles apps.
The default themes now support Disqus. Disqus
allows adding comments even to otherwise static websites. Until the
Dynamocles project allows
for a dynamic partner to Statocles sites, Disqus is an easy way to
provide some user engagement.
If you want extra frontmatter document metadata, you can now create
your own Statocles::Document sub-classes,
and refer to them in your frontmatter using class: 'My::Document'
.
This enables you to add custom attributes and other such to your
documents. It could also allow for non-Markdown documents, and other
interesting things in the future.
The site creator command (statocles create
) now creates a
fully-ready site with skeleton content. The configuration file it
creates now comes with comments to make it easier to edit.
Plugins can now be added to individual
applications, because every app now comes with a build
event. If you only want to check links on
a single application, or if you want to modify the application's pages
without writing an entire app subclass, this is a good way to do it.
When writing pre-dated entries, to be posted sometime in the future,
there is now a way to test how the site will look in the future when
that post is deployed.
Using the --date
option to statocles build
, statocles daemon
,
and statocles deploy
will render the site as though it was the given
date. See the statocles help
command for more information.
Full changelog below...
Continue reading Release v0.055...
Some important v1.0 changes here.
- All pages now have a title, which means that we can have the page
title in the
<title>
tag for better bookmarks
- Documents can add stylesheets and scripts, for those times when the
content needs special design or interactivity. See the Document
object documentation for more
information.
- Template includes are now cached, which should dramatically improve
the site build times. There is still a lot to do about performance,
but this was a quick change.
- Templates can now be arbitrarily nested. Previously, the API only
allowed for a single level of depth, called the "category". Now,
templates are simply given a full path, and organization is up to the
app developer and theme author.
Full changelog below...
Continue reading Release v0.054...
A bunch of documentation fixes this week, including some additions to
the content guide to help users get
acclimated to managing content.
A couple bugfixes as well: Full URLs in blog posts are no longer broken
on the main page, and some tests that could have prevented installation
have been fixed (thanks to Joel
Berger for both of these).
Full changelog below...
Continue reading Release v0.053...
In the run up to v1.000, we've added a deprecation policy.
Our first deprecation: The site's "index" property should now be a full path to
a page, and not the name of an app. This lets you choose any page at all to be
the site index, and removes some of the magic around choosing an index page
that caused quite a few bugs. See the upgrading
guide for tips on how to fix the
deprecation warnings.
A couple bugfixes this release as well:
- The Bootstrap theme now correctly loads jQuery before the Bootstrap javascript
- A site can be built and tested without being able to deploy (if your deploy system
is different from your development system).
Full changelog below...
Continue reading Release v0.052...