Pre-release

@SBoudrias SBoudrias released this Mar 7, 2014 · 551 commits to master since this release

Assets 2

This is a prerelease, install as npm install yeoman-generator --tag pre.

Base Generator

  • Base#template() now accept a forth parameter being the _.templateSettings
  • Base#template() now accept template variables declarations in the destination file name. (e.g. this.template('<%=foo%>-template.js');)
  • Base#appname now use bower.json name property by default, then fallback to package.json then to the folder name.
  • Base.template() now keep the source file mode.
  • Base#run() is now based on grouped-queue to allow easier generator composition.
  • Updates to File-utils 0.2
  • Removes support for Node.js 0.8 (it's been more than one year since Node 0.10 release, time to update!).

Composability

  • Generators are now runned as part of a Run loop. The rationnale is explained here: #433
  • Added the Generator#composeWith() method. Rationnale here #484

We also worked on new documentation. Here's the temporary section about Composability and the run queue.

Environment

  • The x:app alias is now defined by default at runtime. No need for consumer to define it themselve anymore.
  • Namespaces with npm linked package are now based on the NPM path rather than the real path. (You won't need to name your base folder generator-X anymore - although it remains a best practice to do so)

Tests helpers

  • mockPrompt() now uses the prompts defaults values as values by default. This mean you don't need to defined them manually each time - only options you wish to changes.
  • Added RunContext API to allow easier testing for Generator's author. See documentation