I’ve just pushed out version 2.3.0.
There are a number of interesting features with this release.
- A small update to allow html5 tags to be used alongside Markdown. Thanks to sparanoid for committing this fix.
- Major cleanups to stacey’s JSON support. These include, automatic stripping of any trailing commas from within the template and minification of the final rendered output.
- Your content files can now have a named prefix. This means you can name your files anything.template-name.txt, where the anything. will be ignored. This means you can avoid having to pick through 20 text files named project.txt to find the one you’re looking for. Thanks to Lech Deregowski for sharing the idea.
- You can now selectively disable caching on a per-page basis thanks to michaelsmanley. if your page’s content file contains bypass_cache: true then that page will not be run through the caching system.
- foreach loops can now be selectively limited using the sytax foreach $collection[start:end] do. See the foreach documentation for more details.
- This release also fixes a bug which seemed to primarily affect MediaTemple sites, which would throw an Invalid argument supplied for foreach() error.
- It also fixes another bug where stacey would scan every folder on the same level as its index.php file. Now it only scans the folders that it requires. This will speed up sites that this bug affected pretty dramatically, especially mediatemple sites (who store their whole database within the main folder structure).
To upgrade, just delete your current /app folder and replace it with the new /app folder from the 2.3.0 zip file.
I’ve just released stacey version 2.2.2.
It is primarily a bugfix release this time around, resolving two issues.
- It turns out JSON doesn’t support any comment syntax at all. Jason Long stepped up and committed a fix which strips out stacey’s comments when the JSON format is being used.
- Tongxiao Liu uncovered an issue where it was possible for a spambot to fill up your cache folder. This is a pretty nasty bug, so it is worth checking out your own /app/_cache folder, if there are more cache files than pages in your site, then you should probably upgrade to version 2.2.2.
As always, the upgrade process involves deleting your current /app folder and replacing it with the new one from the latest zip file.
December 1, 2010
at 8:39am
1 note
Afonso Duarte is running a stacey workshop at the RCA this week. It is being run as a part of the second year communication art and design work in progress show at the RCA in London.
It will be held at the Lower Gulbenkian Gallery,
Thursday, December 2nd,
from 3–4pm.
More details here:
http://www.department21.net/
It’s a free workshop and open to the public, so if you’re in the area, it would definitely be worth checking out.
Version 2.2.1 is out.
If you’re using v2.2.0 and serving RSS, then this is a recommended update.
It fixes the following bugs from 2.2.0:
- Trailing dashes in content files were causing certain variables to disappear.
- Markdown wasn’t being parsed correctly for .rss, .atom & .rdf files.
It didn’t break RSS/Atom support, but the content was coming through unformatted in certain cases.
I’ve also reworked the way page data is loaded, which reduces stacey’s memory usage and gives a nice speed increase when loading pages from cache.
You can upgrade to the latest version by downloading the new files and replacing your current /app folder with the new one.
I’ve just pushed out version 2.2.0 for download. You can update by replacing your /app folder with the new version from the zip file.
It has been a while between updates as I’ve had a few other projects on the go. Hopefully more news on that soon.
In this release:
Bugfixes
- Fixed an issue with certain Base64’d cache files.
Thanks to herrquark for helping find this nasty little hidden bug.
- Partials can now appear at the very start of a template.
- Fixes to the way content is handled for RSS/Atom/JSON/XML output.
Big thanks to Marcos Ojeda for his help with these.
- Fixes for some
eval errors and problems with partials in nested folders which occurred on certain PHP5 installations.
Additions:
- I’ve done some work on the content file parser, which means it can now handle larger content files without choking.
- I’ve made some improvements to help cache file system requests, which has helped speed up page loads fairly dramatically. Larger sites will see the most benefits, but it should shave some milliseconds off smaller sites as well.
- Nacholabs added automatic inline php parsing in .html or .php files in your content folders. One thing to note if using this functionality, the caching system and dynamic php variables such as
$_REQUEST don’t play very well together. Stacey caches requests as aggressively as possible, so you’ll want to keep an eye out for that.
- Exposed the @children_count variable.
- Stacey-generated 404 pages now have preference over the static /public/404.html file.
Version 2.1.0 of stacey has just been pushed out.
There has been a lot of community involvement with this release, so many thanks to everyone who submitted changes and additions.
The major change in functionality is that the .htaccess file is now optional for each stacey install. If no .htaccess file is found, then stacey will fall back to using query-based urls. Clean urls can be switched back on by adding the .htaccess file.
Additionally, thanks to Matthias Huebner & Norbert Weinhold, stacey will now recognise IPTC metadata attached to your images.
Thanks also to David Desandro for his simple fix for getting image dimensions pulled through to the templates.
Pascal also made an addition to the codebase to allow the current file path to be accessed from within your .txt files using the @path variable.
You can grab the latest version from the download page.
Stacey version 2 is finally here.
It is a complete rewrite, involving some major new feature additions and cleanups to the codebase. Most of the work has been behind the scenes, to make the app is easier to work with for developers, but stacey sites are still created in the same way.
I have learnt a lot since v0.9 was released, about writing a php application, but also about how to abstract key areas to increase the flexibility of the system. The new version is the result of all the feedback and assistance of the users, so many thanks to everyone who got in touch or contributed their time to the project.
Notable new features:
- Added a simple, but efficient templating language
- Default rss feed
- Allowance for infinite depths of hierarchy
- More detailed documentation
- Improved/extended handling of assets
- Markdown parser for content files
- Restructured php
Also, importantly, the new system is no longer limited to serving html. Your output could be xml, rss, atom, rdf or json.
I also have to thank two developers for making version 2 possible.
Firstly, Ben Schwarz for his help with the rewriting of the codebase (he started a rewrite of the project which eventually became Bonsai), and secondly, Ian Yamey for his invaluable help with the writing of the template parser and with the restructuring of the app.
The staceyapp website itself is also now running on stacey and you can view its source files at http://github.com/kolber/stacey-site.
The outcome of all this is stacey version 2. I hope you find it useful.
Download Version 2 →
or, Read more about it →
For the last few weeks I have been working on a complete rewrite of stacey. The focus has been to extend the basic ideals of the project (simplicity & ease-of-customisation) into a system that will work with larger-scale websites as well as portfolios.
This has meant the addition of a proper templating system, enabling the system the recognise unlimited depths of folders, recognise any file type and a general cleanup/refactoring of all the main classes and logic within the app.
If you want to try out the new functionality, you can check out the V2 branch on github.
I’m currently in the process of writing up the documentation for all the new features, so everything should be ready for an official launch sometime before Christmas.
November 23, 2009
at 10:43pm
0 notes
This is a minor update which fixes an issue with the caching system that was introduced in v1.1.
- If you were having problems with Stacey not recognising updates to your .txt files, v1.2 will fix this.
- Additionally, I have made some modifications to the rewrite rules to stop stacey consuming urls that it doesn’t need to. This means stacey will ignore any requests for folders which sit on the same level as /app, /content, etc. So you can now have a full wordpress installation running from /blog without stacey interfering.
Updating involves replacing your
/app/stacey.inc.php and
/.htaccess files with the versions from v1.2.
November 10, 2009
at 12:29pm
4 notes
Updates
- With this version support has been added for .mov, .mp4, .html & .swf files. This means you can now use Quicktime movies, Flash and Youtube/Vimeo videos within your site.
The new asset variables are:
@Video – Any .mov or .mp4 files attached to the page.
@Html – Any .html files attached to the page. This is used to embed Youtube/Vimeo videos.
@Swfs – Any .swf files attached to the page.
@Media – Any .mov, .mp4, .swf, .html or image files attached to the page.
The default templates have all been updated with examples using the new asset types.
- The @Images partial now has access to a new variable @name, which is taken from the filename of the image and can be useful for setting short captions or alt text.
- The @Category_Lists variable now has access to any variables inside the the category it is currently referencing within the loop. The partials within the third template have been updated to take advantage of this addition.
Video sizes
As .swf and .mov/.mp4 files require a fixed width and height, your files need to be named to a specific format (widthxheight.mov).
ie. ‘300x150.mov’ – where 300 is the width of the video and 150 is the height.
Including Youtube/Vimeo movies
Within your page’s folder, create a file named youtube-include.html (it can be named whatever you like as long as it ends in .html). Within that file cut and paste the embed code from Youtube.
ie.
<object width="425" height="344">
<param name="movie" value="http://www.youtube.com/v/8NzMsktBcmI&hl=en&fs=1&"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/8NzMsktBcmI&hl=en&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed>
</object>
Then in your page’s template, replace @Images with @Media.
Thanks
With this release the code behind the app has been cleaned up immensely. For this I have to thank stacey’s main Github contributors:
Justin Ridgewell – http://github.com/somedumbme91/
Ian Yamey – http://github.com/ianyamey/
BigEthan – http://github.com/bigethan/
1.