Skip to content

Latest commit

 

History

History
391 lines (347 loc) · 21.4 KB

History.md

File metadata and controls

391 lines (347 loc) · 21.4 KB

History

  • 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 and document.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
  • 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
  • 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 via npm install docpad-plugin-#{pluginName}
      • We now scan the node_modules and plugins directories of your website for docpad plugins
        • These paths can be customised via the pluginsPaths variable in the docpad configuration
      • DocPad detects if something is a plugin by checking for the docpad-plugin keyword in the package.json file, or if the file follows the #{pluginName}.plugin.coffee naming convention
    • 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
  • v4.1.1 April 9, 2012

  • v4.1.0 April 6, 2012

    • Feedr Plugin now exposes @feedr.feeds to the templateData instead of @feeds
    • Exchange data now moved to the docpad-extras repository
    • Fixed broken balupton.docpad skeleton repo url
  • 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 and nodePath to docpad configuration
    • Split a document's title into title and name
      • 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
    • Cleaned up the plugin event system
      • Got rid of triggerPluginEvent and now we use balUtil's emitSync and emitAsync
      • This for the time being, also remove the use of plugin priorities. We suggest keeping your priorities in there, in the case that we re-introduce the functionality in the future.
    • 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 to false
    • 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 and isDocument flags to Document and Layout prototypes
  • v3.3.0 February 29, 2012

    • Fixed ruby rendering with ruby v1.8
    • 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
    • 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
      • #146 - Require RubyGems on Ruby 1.8
      • #137 - An error occured: Cannot find module 'uglify-js'
      • #34 - As a User, I want server-side syntax highlighting, as pygments rocks
  • v3.2.8 February 26, 2012

    • Stopped docpad render from outputting the welcome message
    • Removed try..catchs 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 and closeFile utility functions
    • Closes
      • #143 - No errors on wrong layout
  • 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 to History.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
        • DocPad is now supported and backed by a commercial entity, meaning that it won't go away
      • 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
    • Fixed plugin priorities #115
    • Updated depdencies
  • 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
    • Fixed plugin installation on windows
      • Had to disable the AutoUpdate and Html2Jade plugins
      • Had to use the global npm instance on windows
      • Closes #111, #110
    • Fixed the error: Object #<Object> has no method 'error'
    • 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
    • Disabled the following plugins by default
      • Admin
      • Authenticate
      • Rest
      • AutoUpdate
      • Buildr
      • Html2Jade
    • Updated depdencies
  • 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
  • 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.
    • 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
  • 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 the templateData (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 returning null instead of the docpad version
  • v2.0 November 8, 2011

    • Upgrade guide for 1.x users
    • Tested and working on Node 0.4, 0.5, and 0.6
    • Configurable via package.json
      • DocPad is now configurable via its and your website's package.json file
    • 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 and logger 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
    • Plugin Changes
      • REST plugin supports saving document data via POST (disabled by default)
      • Administration plugin adds front-end admin functionality (disabled by default)
      • SASS plugin
      • 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
    • 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
  • v1.3 October 3, 2011

    • Parsing is now split into two parts parsing and contextualizing
      • 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 properties have changed
      • basename is extensionless
      • filename now contains the file's extnesions
      • id is now the relativeBase instead of the slug
      • extensionRendered is the result extension
      • filenameRendered is the result filename: `"#{basename}.#{extensionRendered}"
      • title if now set to filenameRendered 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 the files directory
  • v1.2 September 29, 2011

  • 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
    • 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

  • v0.10 September 14, 2011

  • 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

  • v0.1 March 16, 2011