nanoc news
3.1.9 (2011-06-30)
- Really fixed dependency generation between Sass partials this time
- Updated Less filter to 2.0
- Made colorize_syntax filter throw an error if pygmentize is not available
3.1.8 (2011-06-25)
- Made link validator accept https: URLs
- Fixed erroneous handling of layouts with names ending in index
- Fixed dependency generation between Sass partials
- Fixed errors related to thread requires
- Fixed crash while handling load errors
- Improved encoding handling while reading files
3.1.7 (2011-05-03)
- Restored compatibility with Sass 3.1
3.1.6 (2010-11-21)
- Fixed issues with incompatible encodings
3.1.5 (2010-08-24)
- Improved
#renderdocumentation - Improved metadata section check so that e.g. raw diffs are handled properly
- Deprecated using
Nanoc3::Site#initializewith a non-"."argument - Added Ruby engine to version string
- Allowed the
created_atandupdated_atattributes used in theBlogginghelper to beDateinstances
3.1.4 (2010-07-25)
- Made INT and TERM signals always quit the CLI
- Allowed relative imports in LESS
- Made sure modification times are unchanged for identical recompiled items
- Improved link validator error handling
- Made pygmentize not output extra divs and pres
- Allowed colorizers to be specified using symbols instead of strings
- Added scss to the default list of text extensions
3.1.3 (2010-04-25)
- Removed annoying win32console warning [Eric Sunshine]
- Removed color codes when not writing to a terminal, or when writing to Windows’ console when win32console is not installed [Eric Sunshine]
- Added .xhtml and .xml to list of text extensions
- Improved support for relative Sass @imports [Chris Eppstein]
3.1.2 (2010-04-07)
- Fixed bug which could cause incorrect output when compilation of an item is delayed due to an unmet dependency
3.1.1 (2010-04-05)
- Sass
@imports now work for files not managed by nanoc - Rake tasks now have their Unicode description decomposed if necessary
3.1 (2010-04-03)
New:
- An
Item#rep_named(name)function for quickly getting a certain rep - An
Item#compiled_contentfunction for quickly getting compiled content - An
Item#pathfunction for quickly getting the path of an item rep - A new “+” wildcard in rule patterns that matches one or more characters
- A
viewcommand that starts a web server in the output directory - A
debugcommand that shows information about the items, reps and layouts - A
kramdownfilter (kramdown site) - A diff between the previously compiled content and the last compiled content
is now written to
output.diffif theenable_output_diffsite configuration attribute is true - Assigns, such as
@items,@layouts,@item, … are accessible without@ - Support for binary items
Changed:
- New sites now come with a stylesheet item instead of a
style.cssfile in the output directory - The
deploy:rsynctask now use sensible default options - The
deploy:rsynctask now accepts a config environment variable - The
deploy:rsynctask now uses a lowercasedry_runenvironment variable - The
marukufilter now accepts parameters - The
rainpressfilter now accepts parameters - The
filesystemdata source is now known asfilesystem_verbose - Meta files and content files are now optional
- The
filesystem_compactandfilesystem_combineddata sources have been merged into a newfilesystem_unifieddata source - The metadata section in
filesystem_unifiedis now optional [Christopher Eppstein] - The
--serverautocompile option is now known as--handler - Assigns in filters are now available as instance variables and methods
- The
#breadcrumbs_trailfunction now allows missing parents - The
sassfilter now properly handles@importdependencies
Deprecated:
Nanoc3::FileProxy; use one of the filename attributes insteadItemRep#content_at_snapshot; use#compiled_contentinstead- The
last_fm,deliciousandtwitterdata sources; fetch online content into a cache by a rake task and load data from this cache instead
3.0.9 (2010-02-24)
- Fixed 1.8.x parsing bug due to lack of parens which could cause “undefined
method
to_iso8601_timefor #String:0x…” errors
3.0.8 (2010-02-24)
#atom_tag_fornow works with base_urls that contain a path [Eric Sunshine]- Generated root URLs in
#atom_feednow end with a slash [Eric Sunshine] - Autocompiler now recognises requests to index files
Blogginghelper now allows created_at to be a Time instance
3.0.7 (2010-01-29)
- Fixed bug which could cause layout rules not be matched in order
3.0.6 (2010-01-17)
- Error checking in
filesystem_combinedhas been improved [Brian Candler] - Generated HTML files now have a default encoding of UTF-8
- Periods in identifiers for layouts now behave correctly
- The
relativize_pathsfilter now correctly handles “/” [Eric Sunshine]
3.0.5 (2010-01-12)
- Restored pre-3.0.3 behaviour of periods in identifiers. By default, a file
can have multiple extensions (e.g.
content/foo.html.erbwill have the identifier/foo/), but ifallow_periods_in_identifiersin the site configuration is true, a file can have only one extension (e.g.content/blog/stuff.entry.htmlwill have the identifier/blog/stuff.entry/).
3.0.4 (2010-01-07)
- Fixed a bug which would cause the
filesystem_compactdata source to incorrectly determine the content filename, leading to weird “Expected 1 content file but found 3” errors [Eric Sunshine]
3.0.3 (2010-01-06)
- The
Blogginghelper now properly handles item reps without paths - The
relativize_pathsfilter now only operates inside tags - The autocompiler now handles escaped paths
- The
LinkToandTagginghelpers now output escaped HTML - Fixed
played_atattribute assignment in theLastFMdata source for tracks playing now, and added anow_playingattribute [Nicky Peeters] - The
filesystem_*data sources can now handle dots in identifiers - Required enumerator to make sure
#enum_with_indexalways works Array#stringify_keysnow properly recurses
3.0.2 (2009-11-07)
- Children-only identifier patterns no longer erroneously also match parent
(e.g.
/foo/*/no longer matches/foo/) - The
create_sitecommand no longer uses those ugly HTML entities - Install message now mentions the IRC channel
3.0.1 (2009-10-05)
- The proper exception is now raised when no matching compilation rules can be found
- The autocompile command no longer has a duplicate
--portoption - The
#url_forand#feed_urlmethods now check the presence of thebase_urlsite configuration attribute - Several outdated URLs are now up-to-date
- Error handling has been improved in general
3.0 (2009-08-14)
New:
- Multiple data sources
- Dependency tracking between items
- Filters can now optionally take arguments
#create_pageand#create_layoutmethods in data sources- A new way to specify compilation/routing rules using a Rules file
- A
coderayfilter (CodeRay site) - A
filesystem_compactdata source which uses less directories
Changed:
- Pages and textual assets are now known as “items”
Removed:
- Support for drafts
- Support for binary assets
- Support for templates
- Everything that was deprecated in nanoc 2.x
save_*,move_*anddelete_*methods in data sources- Processing instructions in metadata
2.2.2 (2009-05-18)
- Removed
relativize_pathsfilter; userelativize_paths_in_htmlorrelativize_paths_in_cssinstead - Fixed bug which could cause nanoc to eat massive amounts of memory when an exception occurs
- Fixed bug which would cause nanoc to complain about the open file limit being reached when using a large amount of assets
2.2.1 (2009-04-08)
- Fixed bug which prevented
relative_path_tofrom working - Split
relativize_pathsfilter into two filter:relativize_paths_in_htmlandrelativize_paths_in_css - Removed bundled mime-types library
2.2 (2009-04-06)
New:
--pagesand--assetscompiler options--no-colorcommandline optionFilteringhelper#relative_path_tofunction inLinkTohelperrainpressfilter (Rainpress site)relativize_pathsfilter- The current layout is now accessible through the
@layoutvariable - Much more informative stack traces when something goes wrong
Changed:
- The commandline option parser is now a lot more reliable
#atom_feednow takes optional:content_proc,:excerpt_procand:articlesparameters- The compile command show non-written items (those with
skip_output: true) - The compile command compiles everything by default
- Added
--only-outdatedoption to compile only outdated pages
Removed:
- deprecated extension-based code
2.1.6 (2009-02-28)
- The
filesystem_combineddata source now supports empty metadata sections - The
rdocfilter now works for both RDoc 1.x and 2.x - The autocompiler now serves a 500 when an exception occurs outside compilation
- The autocompiler no longer serves index files when the request path does not end with a slash
- The autocompiler now always serves asset content correctly
2.1.5 (2009-02-01)
- Added Ruby 1.9 compatibility
- The
filesystemandfilesystem_combineddata sources now preserve custom extensions
2.1.4 (2008-11-15)
- Fixed an issue where the autocompiler in Windows would serve broken assets
2.1.3 (2008-09-27)
- The
hamlandsassfilters now correctly take their options from assets - The autocompiler now serves index files instead of 404s
- Layouts named “index” are now handled correctly
- The
filesystem_combineddata source now properly handles assets
2.1.2 (2008-09-08)
- The utocompiler now compiles assets as well
- The
sassfilter now takes options (just like thehamlfilter) - Haml/Sass options are now taken from the page rep instead of the page
2.1.1 (2008-08-18)
- Fixed issue which would cause files not to be required in the right order
2.1 (2008-08-17)
This is only a short summary of all changes in 2.1. For details, see the nanoc web site. Especially the blog and the updated manual will be useful.
New:
- New
rdiscountfilter (RDiscount site) - New
marukufilter (Maruku site) - New
erubisfilter (Erubis site) - A better commandline frontend
- A new filesystem data source named
filesystem_combined - Routers, which decide where compiled pages should be written to
- Page/layout mtimes can now be retrieved through
page.mtime/layout.mtime
Changed:
- Already compiled pages will no longer be re-compiled unless outdated
- Layout processors and filters have been merged
- Layouts no longer rely on file extensions to determine the layout processor
- Greatly improved source code documentation
- Greatly improved unit test suite
Removed:
- Several filters have been removed and replaced by newer filters:
eruby: useerborerubisinsteadmarkdown: usebluecloth,rdiscountormarukuinsteadtextile: useredclothinstead
2.0.4 (2008-05-04)
- Fixed
default.rb’s#html_escape - Updated Haml filter and layout processor so that @page, @pages and @config are now available as instance variables instead of local variables
2.0.3 (2008-03-25)
- The autocompiler now honors custom paths
- The autocompiler now attempts to serve pages with the most appropriate MIME
type, instead of always serving everything as
text/html
2.0.2 (2008-01-26)
- nanoc now requires Ruby 1.8.5 instead of 1.8.6
2.0.1 (2008-01-21)
- Fixed a “too many open files” error that could appear during (auto)compiling
2.0 (2007-12-25)
New:
- Support for custom layout processors
- Support for custom data sources
- Database data source
- An auto-compiler
- Pages have
parentandchildren
Changed:
- The source has been restructured and cleaned up a great deal
- Filters are defined in a different way now
- The
erubyfilter now uses ERB instead of Erubis
Removed:
- The
filtersproperty; usefilters_preinstead - Support for Liquid
1.6.2 (2007-10-23)
- Fixed an issue which prevented the content capturing plugin from working
1.6.1 (2007-10-14)
- Removed a stray debug message
1.6 (2007-10-13)
- Added support for post-layout filters
- Added support for getting a File object for the page, so you can now e.g.
easily get the modification time for a given page (
@page.file.mtime) - Cleaned up the source code a lot
- Removed deprecated asset-copying functionality
1.5 (2007-09-10)
- Added support for custom filters
- Improved Liquid support -- Liquid is now a first-class nanoc citizen
- Deprecated assets -- use something like rsync instead
- Added
eruby_engineoption, which can beerborerubis
1.4 (2007-07-06)
- nanoc now supports ERB (as well as Erubis); Erubis no longer is a dependency
meta.yamlcan now havehaml_optionsproperty, which is passed to Haml- Pages can now have a
filenameproperty, which defaults toindex[Dennis Sutch] - Pages now know in what order they should be compiled, eliminating the need for custom page ordering [Dennis Sutch]
1.3.1 (2007-06-30)
- The contents of the
assetsdirectory are now copied into the output directory specified inconfig.yaml
1.3 (2007-06-24)
- The
@pagesarray now also contains uncompiled pages - Pages with
skip_outputset to true will not be outputted - Added new filters
- Textile/RedCloth
- Sass
- nanoc now warns before overwriting in
create_site,create_pageandcreate_template(but not in compile)
1.2 (2007-06-05)
- Sites now have an
assetsdirectory, whose contents are copied to theoutputdirectory when compiling [Soryu] - Added support for non-eRuby layouts (Markaby, Haml, Liquid, …)
- Added more filters (Markaby, Haml, Liquid, RDoc [Dmitry Bilunov])
- Improved error reporting
- Accessing page attributes using instance variables, and not through
@page, is no longer possible - Page attributes can now be accessed using dot notation, i.e.
@page.titleas well as@page[:title]
1.1.3 (2007-05-18)
- Fixed bug which would cause layoutless pages to be outputted incorrectly
1.1.2 (2007-05-17)
- Backup files (files ending with a “~”) are now ignored
- Fixed bug which would cause subpages not to be generated correctly
1.1 (2007-05-08)
- Added support for nested layouts
- Added coloured logging
@pagenow hold the page that is currently being processed- Index files are now called “content” files and are now named after the directory they are in [Colin Barrett]
- It is now possible to access
@pagein the page’s content file
1.0.1 (2007-05-05)
- Fixed a bug which would cause a “no such template” error to be displayed when the template existed but compiling it would raise an exception
- Fixed bug which would cause pages not to be sorted by order before compiling
1.0 (2007-05-03)
- Initial release