Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
316 lines (225 sloc) 12.8 KB
= 0.10.0 / (Unreleased)
* Added 'Link text' metadata. When working out how to link to your
pages from the automatically generated menus and breadcrumbs, Nesta
uses the page's heading. It still does, but if you want to use
different words in the menu you can override it by defining the
"Link text" metadata. (Micah Chalmer)
NOTE: Some existing sites may have pages that don't define a heading.
Those sites will not work with Nesta 0.10.0 until they've been
upgraded; either add an h1 level heading at the top of your pages
(preferred) or define the 'Link text' metadata. If you don't want
h1 headings to appear at the top of your web pages, hide them with
CSS (this is the best approach for accessibility), or define the
"Link text" metadata.
* Sinatra 1.3 changed their public API for configuration/settings, but
the file based caching library that Nesta ships with wasn't updated
to support it. (Rob Westgeest)
* The nesta script's theme:create command now copies default templates
into a new theme. (Jake Rayson)
* Page titles no longer include the heading from the parent page.
Behaviour was a little inconsistent, and it's arguably not a great
feature in the first place. Since the Title metadata appeared you can
ovverride the page title to something more useful if you need to too.
* Breadcrumbs include Microdata for use by search engines. See:
(Sean Schofield)
* The menu and breadcrumb helper methods can now generate HTML that
identifies the current page. When viewing a page that appears in the
menu, its menu item will have the class "current". To change the name
of the class, override the Nesta::Navigation::current_menu_item_class
The current page doesn't have a class applied by default. If you want
to add a class to style it, override the ::current_breadcrumb_class
method (also in the Nesta::Navigation module), returning a string.
(Pete Gadomski)
* The 'Read more' link text is now configurable. The config key is
called `read_more`. (Pete Gadomski)
See the config.yml template (on GitHub) for more details.
= 0.9.13 / (3 March 2012)
* The nesta script has a new command; edit. You can pass it the path
to a file within your content/pages folder and it will open the file
in your default editor (as set by the EDITOR environment variable).
* The nesta script has a new option; --bash-completion. Run nesta with
this option and it will print some Bash that will configure command
line completion for the nesta command.
You can type `nesta edit <TAB>` and Bash will complete the names of
the files in your content/pages directory. :-)
Installation instructions at the top of the Bash script.
* Nesta can now be mounted cleanly at a path, rather than at a site's
root, and assets and links will be served correctly.
(Max Sadrieh, Graham Ashton)
* The default file that is generated when you create a new
project now enables Etag HTTP headers. (Max Sadrieh)
* Two helper methods have been removed; url_for and base_url. Use
Sinatra's url helper instead. They would have been deprecated rather
than removed, but if you try and load Nesta's helpers in a Rails app
url_for breaks Rails's rendering. (Max Sadrieh, Graham Ashton)
* The Page class has a new method; body_markup. Ir can be overridden by
a plugin, and is used by the foldable plugin. (Micah Chalmer)
* The `current_item?` helper has been created in `Nesta::Navigation`.
You can override it to implement your own logic for determining
whether or not a menu item rendered by the menu helpers are
considered to be "current". (Chad Ostrowski)
* The FileModel class has a new method; parse_metadata. It can be
overriden by plugins that implement an alternate metadata syntax.
Used by the yaml-metadata plugin.
* Erb templates in your ./views folder, or in a theme's folder, will
now be found when you call Sinatra's erb helper method.
* config.yml can now contain Erb (and therefore inline Ruby), which
will be interpreted when loaded. (Glenn Gillen)
* Extended the `nesta` command to support new commands that could (for
example) be added by a plugin. The class to be instantiated within
the Nesta::Commands module is determined from the command line
argument (e.g. `nesta plugin:create` will instantiate the class
called Nesta::Commands::Plugin::Create).
* Bug fix: Don't crash if a page's metadata only contains the key, with
no corresponding value. You could argue this wasn't a bug, but the
error message was difficult to trace. See #77.
* Bug fix: Summaries on Haml pages were not marked up as paragraphs.
See #75.
= 0.9.12 / (Released then pulled, due to rubygems [still] being a total mess)
= 0.9.11 / (22 September 2011)
* Use Tilt to render the Markdown, Textile and Haml in content/pages.
RDiscount is now the default Markdown processor. To continue using
Maruku add it to Gemfile and call `Tilt.prefer Tilt::MarukuTemplate`
in your app.rb file.
* Remove trailing slashes from all URLs, redirecting to the URL without
the slash. See ticket #60 on GitHub.
* Added the 'Articles heading' metadata key. When articles are listed
on a category page, Nesta adds a heading above the articles based on
the category's title (e.g. "Articles on Thing"). If you set the
'Articles heading' metadata Nesta will allow you to override the
entire heading for a given page.
* Bug fix: require nesta/plugin automatically on load. The
Nesta::Plugin.register method is called by plugins as soon as they
are loaded, so we need to make it available. In 0.9.10 this method
wasn't available until too late.
* Bug fix: Minor updates to the files generated by `nesta plugin:create`.
* Bug fix: Don't allow retrieval of the contents of any file
within the content folder by crafting a relative path containing
the string '../' (Louis Nyffenegger).
= 0.9.10 / (9 September 2011)
* Load Nesta plugins from gems. Any gem whose name begins with
nesta-plugin- can be used in a project by adding it to the project's
Gemfile beneath the `gem "nesta"` line. New plugins can be created
with the `nesta plugin:create` command.
* Mark pages as draft by setting a flag. Draft pages won't be shown in
production, but will be visible on your local copy of your site (as
it's running in production).
* Upgraded Sinatra to version 1.2.6. Upgraded other dependencies to
latest compatible versions.
* Bug fix: The `stylesheet` helper method assumes that you're using
the Sass rendering engine by default, which allows it to find .sass
files within the gem if no matching files are found locally.
= 0.9.9 / (24 August 2011)
* Bug fix: What a debacle this is turning into. The new Nesta::Env
class must be required before the code in 'nesta/app' is loaded.
The previous release only loaded Nesta::Env when your started Nesta
via Running Nesta any other way lead to an immediate
= 0.9.8 / (22 August 2011)
* Bug fix: The Sinatra app's root directory wasn't set which meant
that Nesta couldn't always find the ./public directory (such as when
running on Heroku).
The modifications made in 0.9.6 to make Nesta easier to mount inside
another Rack application moved Nesta::App.root to the (new)
Nesta::Env class. In 0.9.6 I forgot to actually set Nesta::App.root
as well, which was a big mistake. Whoops.
= 0.9.7 / (19 August 2011)
* No code changes from 0.9.6; version number increased to allow new gem
to be deployed to
= 0.9.6 / (18 August 2011) [never released due to packaging bug]
* Nesta no longer cares whether you write your Sass stylesheets in the
original indented Sass format or the default SCSS syntax (which is a
superset of CSS). To use this functionality within your own site or
theme change change any calls to the existing `sass` or `scss`
helpers to `stylesheet`. (Isaac Cambron, Graham Ashton)
* Add an HTML class ("current") to the menu items whose path matches
the current page.
* Bug fix: Strip trailing # characters from Markdown headings at the
top of a page.
* Bug fix: Don't render the return value of local_stylesheet_link_tag
directly into the page (haml_tag now writes direct to the output
* Bug fix: Removed trailing whitespace inside <a> tags generated by
the display_breadcrumbs() helper.
* Bug fix: Nesta::App.root couldn't be set until after nesta/app was
required. Odd that, as the only reason to want to change
Nesta::App.root would be before requiring nesta/app. Fixed by
creating Nesta::Env and moving root to there instead.
= 0.9.5 / (1 May 2011)
* Added --version option to nesta command (Christopher Lindblom).
* Upgraded Haml and Sass to version 3.1 (Andrew Nesbitt).
* Updated the URL from which the Disqus JavaScript is loaded
(Sidharta Surya Kusnanto).
* Bug fix: Don't use parent's heading in page title if parent's heading
is blank (Christopher Lindblom).
* Bug fix: Removed trailing whitespace inside <a> tags generated by
the display_menu() helper.
* Bug fix: Made article_summaries render summaries for the pages
passed into it (Robert Syme).
* Bug fix: Empty files in the content directory would cause the site to
crash - they are now served properly.
* Bug fix: When pages written in Haml were included on a category page
the default theme didn't provide access to Sinatra's helper methods
within Haml templates. See
(Carl Furrow).
= 0.9.4 / 18 February 2011
* Updated the link colours in the default theme.
* Set the default encoding to UTF-8. Without it Heroku would sometimes
fail to render pages (issue 14).
= 0.9.3 / 18 January 2011
* The route and view for serving the home page (/) has been removed,
and the home page must now be created as an index page in
You will have to create `content/pages/index.haml` manually when
upgrading. Running `nesta new` will create a
`content/pages/index.haml` file that is suitable for a blog.
* The URL /my-page can be served from `pages/my-page/index.mdown` as
well as pages/my-page.mdown (index pages can also be created with
Textile or Haml, just like any other page).
* The description and keywords settings have been removed from
config.yml as they can now be set on `content/pages/index.haml`.
* Added the Title metadata key to override a page's default title tag.
* Specify the sort order of pages that are listed on a category page.
Optionally append a colon and a number to a path in the 'Categories'
metadata to control the sort order of pages listed on the category
See these files for the syntax:
* Support arbitrarily deep hierarchies when generating the breadcrumb
(see the new helper method added to Nesta::Navigation).
* Dropped the --heroku switch (Heroku runs fine without it and there is
less chance that committing config.yml to your repository will be an
issue now that Nesta sites live in their own repositories).
* Re-implemented /articles.xml and /sitemap.xml in Haml, dropping the
dependency on builder. This side steps a bug in Ruby 1.9.1, so Nesta
can now run on 1.9.1 again. Also fixed a validity error in the Atom
* Bug fix: Don't output empty <li> tags for nested submenus that are
beneath the requested number of levels.
= 0.9.2 / 10 January 2011
* Made the FileModel.metadata method public, to allow for custom
metadata at the top of each page. (Wynn Netherland)
* Relaxed the stringent dependency specifications, using pessimistic
version constraints (see
* Added templates required by `nesta theme:create`.
= 0.9.1 / 31 December 2010
* Re-implemented the default theme, using semantic HTML5 and
Andy Clarke's Universal Internet Explorer 6 CSS. Named the previous
default theme "slate" and moved it into a separate GitHub project.
* Added `--git` switch to `nesta new`, that will create a new git
repository and make an initial commit.
* Moved the navigation helpers into the Nesta::Navigation::Renderers
= 0.9.0 / 20 December 2010
* Packaged Nesta as a gem for the first time, instead of as a template
site that can be cloned, edited and deployed. Added the `nesta`
command for generating new sites and managing themes.
= Previous versions / from 26 November 2008
* Prior to 0.9.0 Nesta was distributed as a git repository that could
be forked, edited and deployed. The only change log for these
versions is the Git commit history.