-
v5.1.2 April 26, 2012
- Fixed some UTF8 encoded files from being detected as binary
- Fixed documents with no extension being outputted with an undefined extension
-
v5.1.1 April 25, 2012
- Fixed EventEmitter warning
- Binary files can now be placed within the
src/documents
directory - Removed eyes devDependency
- Models now use CoffeeScript's class extend, instead of Backbone's extend
-
v5.0.5 April 14, 2012
- Added
.npmignore
file - Added
document.contentType
anddocument.contentTypeRendered
- Fixed
document.contentRendered
on files that do not have layouts - Added tests for:
- Checking that
ignored: true
documents are properly ignored - That ignored common pattern files/dirs are properly ignored
- That attributes are being applied properly
- Checking that
- Added
-
v5.0.4 April 14, 2012
- Updated balUtil from 1.4 to 1.5
- Fixes some scandir bugs
- Updated watchr from 1.0 to 2.0
- This should make watching re-generation a lot faster
- Added a warning if you have no plugins loaded and are trying to do a generate
- Fixed ignored check on documents
- Updated balUtil from 1.4 to 1.5
-
v5.0.0 April 14, 2012
- Models are now Backbone Models
- Upgraded Query-Engine version from 0.6 to 1.1
- Plugins are now managed by npm and are no longer bundled with DocPad
- You will need to add them to your website's
package.json
and install them vianpm install docpad-plugin-#{pluginName}
- We now scan the
node_modules
andplugins
directories of your website for docpad plugins- These paths can be customised via the
pluginsPaths
variable in the docpad configuration
- These paths can be customised via the
- DocPad detects if something is a plugin by checking for the
docpad-plugin
keyword in thepackage.json
file, or if the file follows the#{pluginName}.plugin.coffee
naming convention
- You will need to add them to your website's
- CoffeeScript dependency is now bundled inside, instead of being an external dependency
- A website's npm dependencies are now installed as part of the initialisation process
- This is a big backwards compatibility break, previous skeletons and plugins need to upgraded
- Refer to the Upgrade Guide for instructions
-
v4.1.1 April 9, 2012
- Fixed DocPad from outputting
undefined
instead the layout's name which it could not find- Thanks to Changwoo Park for the fix, and [https://github.com/msutherl](Mogran Sutherland) for the report
- Fixed DocPad from outputting
-
v4.1.0 April 6, 2012
- Feedr Plugin now exposes
@feedr.feeds
to thetemplateData
instead of@feeds
- Exchange data now moved to the docpad-extras repository
- Fixed broken
balupton.docpad
skeleton repo url
- Feedr Plugin now exposes
-
v4.0.3 April 6, 2012
- Added support for partials, with the new Partials Plugin
- Added support for caching remote assets, with the new Cachr Plugin
- Added support for caching and parsing remote feeds, with the new Feedr Plugin
- Added support for independent plugin unit tests
- Added support for specifying
templateData
for the docpad configuration - Skeletons are no longer cached
- Caching skeletons was causing far too many problems
- Will now always use the local npm installation
- Added
gitPath
andnodePath
to docpad configuration - Split a document's
title
intotitle
andname
- Use
title
for page titles (e.g.<title>page title</title>
) - Use
name
for navigation listings - This was introduced as sometimes you want a different title for your page title, than for your navigation page names
- Use
- Cleaned up the plugin event system
- When an error occurs we will send an error report back to DocPad using AirBrake
- To turn this off, set
reportErrors
in your docpad configuration tofalse
- To turn this off, set
- Files, Documents, Layouts and Partials are now proper "models" and are now found in the
lib/models
directory - Moved out some unstable or not as popular plugins to the docpad-extras repository, plugins moved are:
- Admin
- Authenticate
- AutoUpdate
- Buildr
- HTML2Jade
- Move
- PHP
- REST
- Roy
- Ruby
-
v3.3.2 March 18, 2012
- Fixed missing interpolation on new version notification
- Fixed the scandir error with the skeletons path when doing the first run on windows
- Updated paths to use
path.join
instead of always using forward slashes
-
v3.3.1 March 18, 2012
- Fixed Pygments plugin highlighting the code multiple times for documents with layouts
- Added
isLayout
andisDocument
flags toDocument
andLayout
prototypes
-
v3.3.0 February 29, 2012
- Fixed ruby rendering with ruby v1.8
- Thanks to Sorin Ionescu - patch here
- The
enabledPlugins
config option will now correctly only overwrite the default values if you have set it to be a string- Before it would always incorrectly overwrite the default value if set, which would cause some experimental disabled-by-default plugins to enable
- Added a Pygments Syntax Highlighting plugin
- It is disabled by default as not everyone would want syntax highlighting, to enable it, add the following to your website's
package.json
file:"docpad": { "enabledPlugins": { "pygments": true } }
- Thanks to Doug Neiner for urging it along
- It is disabled by default as not everyone would want syntax highlighting, to enable it, add the following to your website's
- Added a new
renderDocument
plugin event- It is fired after the extensions are rendered, but before the document is rendered inside its layout
- Useful for things that modify the rendered result of a document, e.g. syntax highlighting, paging, etc
- Closes
- Fixed ruby rendering with ruby v1.8
-
v3.2.8 February 26, 2012
- Stopped
docpad render
from outputting the welcome message - Removed
try..catch
s from plugins, you should do this too- The checking is now higher up in the callstack, which provides better error reporting and capturing
- Fixed a problem with the error bubbling that was preventing template errors from being outputted
- Fixed the "too many files open" issue thanks to bal-util's
openFile
andcloseFile
utility functions - Closes
- #143 - No errors on wrong layout
- Stopped
-
v3.2.7 February 15, 2012
- Stabilised the v3.2 branch
-
v3.2 February 15, 2012
- Cleaned architecture
- Added unit tests (uses mocha)
- Better source code documentation
- Moved changelog from
README.md
toHistory.md
as it was starting to get a bit long - Added
File.writeRendered
- Added
File.contentRenderedWithoutLayout
- Watching will no longer watch hidden files
- Added support for
- Added the ability to render files programatically via the command line
- See the readme for usage instructions and more information
- Backwards compatibility breaks
- File property names have been changed
- New plugin structure
- Added offline installation support
- Added skeleton selection
- Added npm scripts for testing, installing and updating
- Closes
- #130 - As a Maintainer, I want unit tests, so that I can automatically ensure everything works
- #127 - As a User, I want support for Move, so I can write my javascript in my preferred language
- #122 - As a User, I want to be able to get the rendered content without the layout, so that I can include it inside other documents
- #98 - As a User, I want offline creation, so I can create new docpad projects offline
- #97 - Watching is unusable when combined with hidden files from IDEs and SVN
- #57 - Offline Setup: Skeletons needs to be cached for future offline installs
- #55 - As a User, I want support for Moustache, so that I can use my preferred markup
-
v3.1 Unreleased
- Added an interactive cli
- Closes
- #125 - As a User, I want an Interactive CLI, so that I can do more with DocPad's CLI
-
v3.0 Unreleased
- Added a new event system
- Closes
- #60 - DocPad needs a better event system
-
v2.6 January 2, 2012
- Transferred DocPad's ownership from Benjamin Lupton to Bevry (Benjamin's company)
- Things that have changed
- It is now easier for us to manage DocPad, its extensions, collaborators and future repositories
- Thanks to Github's excellent organisation functionality - https://github.com/blog/674-introducing-organizations
- DocPad is now supported and backed by a commercial entity, meaning that it won't go away
- It is now easier for us to manage DocPad, its extensions, collaborators and future repositories
- Things that won't change
- DocPad will remain free as in beer, and free as in freedom
- DocPad will remain awesome
- If you are working on a cloned version of docpad, be sure to update your docpad's git repo address
- Things that have changed
- Fixed plugin priorities #115
- Thanks to Changwoo Park
- Updated depdencies
- Growl 1.2.x -> 1.4.x - changelog
- CoffeeScript 1.1.3 -> 1.2.x - changelog
- Transferred DocPad's ownership from Benjamin Lupton to Bevry (Benjamin's company)
-
v2.5 December 15, 2011
- Swapped out Dominic Baggott's Markdown.js for Isaac Z. Schlueter's Github-Flavored-Markdown
- Now adds support for inline html in markdown files
- Closes #107
- Now adds support for inline html in markdown files
- Fixed plugin installation on windows
- Fixed the error:
Object #<Object> has no method 'error'
- Fixes #106
- Can now pass over options to the coffeekup renderer inside the coffee plugin
- E.g. set
docpad: plugins: coffee: coffeekup: format: true
to have it tidy the html output - Thanks to Changwoo Park
- E.g. set
- Disabled the following plugins by default
- Admin
- Authenticate
- Rest
- AutoUpdate
- Buildr
- Html2Jade
- Updated depdencies
- Commander 0.3.x -> 0.5.x - changelog
- Growl 1.1.x -> 1.2.x - changelog
- NPM 1.0.x -> 1.1.x
- Jade 0.17.x -> 0.19.x - changelog
- Stylus 0.19.x -> 0.20.x - changelog
- Nib 0.2.x -> 0.3.x - changelog
- Swapped out Dominic Baggott's Markdown.js for Isaac Z. Schlueter's Github-Flavored-Markdown
-
v2.4 November 26, 2011
- AutoUpdate plugin
- Automatically refreshes the user's current page when the website is regenerated
- Very useful for development, though you probably want to disable it for production
- Enabled by default
- AutoUpdate plugin
-
v2.3 November 18, 2011
- Heroku server support
- Added
extendServer
configuration option- Now, by default, even if the server is provided, we will extend it. If you do not want this, set this configuration option to
false
.
- Now, by default, even if the server is provided, we will extend it. If you do not want this, set this configuration option to
- Made it easier to load docpad as a module
- Instead of crashing when an uncaught error happens, it'll output it and keep running
- The log messages and next handling in
docpad.action
has been cleaned up- Now those log messages are contained within the default next handler, so if you provide a custom default next handler you'll have to do your own success log messages
- NPM is now installed locally
- This is to ensure it's availability on cloud servers
- DocPad will now try and figure out the node executable location to provide greater compatibility on cloud servers
- If the plugin installations are taking a while, you'll get informed of this, rather than just staring at a blank blinking cursor
- Roy plugin
- Adds Roy to JavaScript support
.js.roy
- Adds Roy to JavaScript support
-
v2.2 November 14, 2011
- Windows support!
- Now uses Benjamin Lupton's Watchr as the watcher library
- Provides windows support
- Now uses Tim Caswell's Haml.js as the haml library
- Provides windows support
- Bug fixes
- Works with zero documents
- Works with empty
package.json
- Fixed mime-type problems with documents
-
v2.1 November 10, 2011
- Support for dynamic documents
- These are re-rendered on each request, must use the docpad server
- See the search example in the kitchensink skeleton
- Removed deprecated
@Document
,@Documents
, and@Site
from thetemplateData
(the variables available to the templates). Use their lowercase equivalants instead. This can cause backwards compatibility problems with your templates, the console will notify you if there is a problem. - Fixed
docpad --version
returningnull
instead of the docpad version
- Support for dynamic documents
-
v2.0 November 8, 2011
- Upgrade guide for 1.x users
- Tested and working on Node 0.4, 0.5, and 0.6
- Windows support is still to come - track it's progress here
- Configurable via
package.json
- DocPad is now configurable via its and your website's
package.json
file
- DocPad is now configurable via its and your website's
- New plugin architecture
- Plugins must now be isolated in their own directory
- Plugins can now have their own
package.json
file- Use this for specifying plugin configuration, dependencies, etc
- Plugin events have been renamed to before/after
- New before/after events have been added
docpad
andlogger
are now local variables, rather than passed arguments- Arguments are still kept for backwards compatibility - this may change
- Generation changes
- Rendering is now a 2-pass process
- Contextualize is now a sub-step of parse, instead of it's own main step
- Better simplicity, less complexity
- Documents can now have multiple urls
- These are customisable via the document's
urls
array property
- These are customisable via the document's
- Plugin Changes
- REST plugin supports saving document data via POST (disabled by default)
- Administration plugin adds front-end admin functionality (disabled by default)
- See the client side editing example in the kitchensink skeleton
- SASS plugin
- Adds SASS to CSS support
- Uses TJ Holowaychuk's Sass.js - https://github.com/visionmedia/sass.js
- Adds SASS to CSS support
- Coffee Plugin
- Removed CoffeeCSS support as it had problems
-
v1.4 October 22, 2011
- Template engines now have access to node.js's
require
- Less Plugin
- Added LessCSS to CSS support
- Uses Alexis Sellier's Less.js
- Added LessCSS to CSS support
- Fixed NPM warning about incorrect property name
- Logged errors will now also output their stacktraces for easier debugging
- If an error occurs during rendering of a document, docpad will let us know which document it happened on
- Template engines now have access to node.js's
-
v1.3 October 3, 2011
- Parsing is now split into two parts
parsing
andcontextualizing
- Contextualizing is used to determine the result filename, and title if title was not set
- The code is now more concise
- File class moved to
lib/file.coffee
- Prototypes moved to
lib/prototypes.coffee
- Version checking moved to the
bal-util
module
- File class moved to
- File properties have changed
basename
is extensionlessfilename
now contains the file's extnesionsid
is now therelativeBase
instead of theslug
extensionRendered
is the result extensionfilenameRendered
is the result filename: `"#{basename}.#{extensionRendered}"title
if now set tofilenameRendered
if not set
- Added support for different meta parsers, starting with CoffeeScript and YAML support. YAML is still the default meta parser
- The YAML dependency is specifically set now to v0.2.1 as the newer version has a bug in it
- Fixed multiple renderers for a single document. E.g.
file.html.md.eco
- Now also supports using
###
along with---
for wrapping the meta data - Supports the
public
alias for thefiles
directory
- Parsing is now split into two parts
-
v1.2 September 29, 2011
- Plugins now conform to a
.plugin.coffee
naming standard - Dependencies now allow for minor patches
- Stylus Plugin
- Added Stylus to CSS support
- Uses TJ Holowaychuk's Stylus
- Added Stylus to CSS support
- Jade Plugin
- Added HTML to Jade support
- Uses Don Park's Html2Jade
- Added HTML to Jade support
- Coffee Plugin
- Added CoffeeCSS to CSS support
- Uses James Campos's CCSS
- Added CoffeeCSS to CSS support
- Fixed incorrect date sorting for documents
- Thanks to Olivier Bazoud
- Plugins now conform to a
-
v1.1 September 28, 2011
- Added Buildr Plugin so you can now bundle your scripts and styles together :-)
- The
action
method now supports an optional callback- Thanks to #41 by Aaron Powell
- Added a try..catch around the version detection to ensure it never kills docpad if something goes wrong
- Skeletons have been removed from the repository due to circular references. The chosen skeleton is now pulled during the skeleton action. We also now perform a recursive git submodule init and update, as well as a npm install if necessary.
-
v1.0 September 20, 2011
- Upgrade guide for v0.x users
- The concept of template engines and markup languages have been merged into the concept of renderers
- Coffee Plugin
- Added CoffeeKup to anything and HTML to CoffeeKup support
- Added CoffeeScript to JavaScript and JavaScript to CoffeeScript support
- Added a Commander.js based CLI
- Thanks to ~eldios
- Added support for Growl notificaitons
- Added asynchronous version comparison
-
v0.10 September 14, 2011
- Plugin infrastructure
- Better logging through Caterpillar
- HAML Plugin
- Added HAML to anything support
- Uses TJ Holowaychuk's HAML
- Added HAML to anything support
- Jade Plugin
- Added Jade to anything support
- Uses TJ Holowaychuk's Jade
- Added Jade to anything support
-
v0.9 July 6, 2011
- No longer uses MongoDB/Mongoose! We now use Query-Engine which doesn't need any database server :)
- Watching files now working even better
- Now supports clean urls :)
-
v0.8 May 23, 2011
- Now supports mutliple skeletons
- Structure changes
-
v0.7 May 20, 2011
- Now supports multiple docpad instances
-
v0.6 May 12, 2011
- Moved to CoffeeScript
- Removed highlight.js (should be a plugin or client-side feature)
-
v0.5 May 9, 2011
- Pretty big clean
-
v0.4 May 9, 2011
- The CLI is now working as documented
-
v0.3 May 7, 2011
- Got the generation and server going
-
v0.2 March 24, 2011
- Prototyping with disenchant
-
v0.1 March 16, 2011
- Initial commit with bergie