Skip to content
This repository has been archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

 

History

History
341 lines (311 loc) · 15.7 KB

CHANGELOG.md

File metadata and controls

341 lines (311 loc) · 15.7 KB

Brunch 1.6.2 (1 April 2013)

  • Fixed watching of config files.

Brunch 1.6.1 (25 March 2013)

  • Fixed brunch new.

Brunch 1.6.0 (24 March 2013)

  • Removed brunch generate and brunch destroy. scaffolt is its simpler successor.
  • Removed brunch test. Mocha-phantomjs is its simpler successor.

Brunch 1.5.4 (19 March 2013)

  • Fixed brunch generate, switched to standalone modules for some features.
  • Added node 0.10 support.

Brunch 1.5.3 (2 February 2013)

  • When using brunch generate, generator will no longer overwrite existing files.
  • Preserved context of include method of plugins.

Brunch 1.5.2 (13 January 2013)

  • Improved installation process.

Brunch 1.5.1 (11 January 2013)

  • Tester no longer runs watcher by default.
  • Changed brunch test -f REGEX option to -g / --grep for consistency with Mocha.

Brunch 1.5.0 (2 January 2013)

  • Added ability to wrap files in sourceURLs which simplifies debugging a lot. Disabled by default in non-production mode, but can be disabled with config.modules.addSourceURLs = false.
  • Added -f REGEX, --filter REGEX option to brunch test.
  • --minify (-m) command line option was changed to --optimize (-o). The previous version is deprecated and will be removed in the future. This is made for plugins that will do optimizations of you application that are not minifications.
  • config.modules.wrapper now accepts full file path as first argument, instead of sanitized.
  • Debugging mode syntax was changed to standardized DEBUG=brunch:* brunch <command>.
  • Fixed bug when process didn’t returned code "1" on compilation errors.
  • Brunch will now work only with brunch plugins that have brunch in their name.
  • Improved error handling of running brunch in non-brunch app dirs.

Brunch 1.4.5 (14 December 2012)

  • Updated base brunch with chaplin skeleton to the latest libs.

Brunch 1.4.4 (1 October 2012)

  • All errors are now deferred to the compilation end. Also, if you have added one error on previous compilation and one error on current, brunch will show both of them until they will be fixed.
  • Fixed terminal-notifier.app integration.
  • Fixed test passing.
  • Fixed config.notifications on ubuntu.

Brunch 1.4.3 (2 September 2012)

  • Added support of binary files to generators.
  • Improved error logging.
  • Updated built-in webserver to express.js 3.0.

Brunch 1.4.2 (18 August 2012)

  • Fixed incorrect scaffolding on windows.
  • .git directories are now discarded when using brunch new with git URL.

Brunch 1.4.1 (8 August 2012)

  • brunch new now allowed to take current working directory (.) or any existing directory as first argument.
  • Assets are now affected by conventions.ignored too.
  • Fixed linting bug.

Brunch 1.4.0 (4 August 2012)

  • Added new phenomenally simplified scaffolder:
    1. Create generators/ directory in your brunch application (directory name is customizable by config.paths.generators).
    2. Create generator directory there with generator.json and files that will be generated.
  • Added conventions:
    • Conventions are configurable via config.conventions[name]. Convention can be a RegExp or Function.
    • assets convention: all files in directories that named as assets (default value) will be copied to public path directly.
    • vendor All files in directories that named as vendor (default value) won't be wrapped in modules.
    • tests convention: all files that end with _test.<extension> (default value) are considered as test files and will be loaded automatically with brunch test.
    • ignored convention: all files that start with _ (default value) are considered as partial files and won't be compiled. Useful for Stylus / Sass languages. This replaces functionality of config.paths.ignored.
  • Added AMD support by allowing more flexibility with file wrapping:
    • config.modules can be an object of:
      • config.modules.wrapper - string, boolean or function, defines how to wrap files in app directory in modules.
      • config.modules.definition - string, boolean or function, defines what to add on top of every file.
  • Added linting support. Linting is a static analysis of code. Example tools for this are JSHint, CSSLint etc. The lint API is plugin.lint(data, path, callback). One file can use more than one linter.
  • Added config option that disables growl / libnotify notifications. Usage: config.notifications = false.
  • Added support for Mac OS X Mountain Lion notification center. You'll need to place terminal-notifier.app to /Applications/ to get it work.
  • Removed support for:
    • config.files[lang].defaultExtension. Brunch will automatically detect extension from your generator file name.
    • config.framework, config.generators. It's not needed because all generators are local to your application and because brunch now has generators/ directory.
    • Array type of paths.vendor / paths.assets. They're replaced by conventions.
  • If any error happened in brunch build, it will exit with error code 1 instead of 0.
  • Fixed commonjs require_definition in <IE9.

Brunch 1.3.4 (7 July 2012)

  • Fixed bug with too fast compilations.

Brunch 1.3.3 (29 June 2012)

  • Added node.js 0.8 and 0.9 support.
  • jsdom, required for brunch test can now be installed once for all apps via npm install -g jsdom. You'll need to have its parent dir in NODE_MODULES env variable.
  • Fixed compiled in timer and brunch generate bugs.

Brunch 1.3.2 (27 June 2012)

  • Fixed brunch test on new projects.

Brunch 1.3.1 (22 June 2012)

  • Config can now be in any language you use in app (e.g. livescript).
  • Added --reporter (-r) option to brunch test which allows to choose Mocha reporter.
  • Made require definition much easier for debugging.

Brunch 1.3.0 (19 June 2012)

  • Brunch with Chaplin is now the default application skeleton, that will be created on brunch new <app>. Old one is still available with brunch new <app> -s github://brunch/simple-coffee-skeleton. Chaplin is an awesome set of classes on top of Backbone.js that makes making big webapps very simple.
  • Added testing support (thanks to Andreas Gerstmayr):
    • Mocha is used as test engine. It's a feature-rich, flexible and fun.
    • brunch test (or brunch t) is used to run all tests in CLI env.
    • test directory is now watched. Add 'javascripts/tests.js': /^test/ to config.javascripts.joinTo in config.coffee to compile them.
  • Improved command line API:
    • Added github://user/repo skeleton address schema support to brunch new.
    • Debug mode now has logger namespaces. Usage: BRUNCH_DEBUG=<ns> brunch <command> where <ns> is: watcher, writer, *.
  • Improved file watcher:
    • Vim backup files are now ignored by watcher.
    • Fixed watching of non-compiled files in app.
  • Improved config API:
    • Added support for config.server.base, which determines base URL from which to serve the app. The default value is empty string.
    • config.paths.ignored now doesn't need to check versus if file is config.coffee or package.json, it does it automatically in brunch code.
    • Fixed config.paths.ignored on windows.
    • config.paths.vendor is now an array, but it will be soon deprecated.
  • Changed onCompile plugin API. Now it receives an array of fs_utils.GeneratedFile. This makes it very rich and allows to build smarter reloaders. For example, the ones that reload browser tabs only on stylesheet change.
  • Semicolon is now added after every compiled vendor library because of some libs that break with brunch. Hello, Zepto!
  • Styles in vendor directory are now sorted correctly, before app files.
  • Only generated files that depend on changed in current compilation files are written now. Before, brunch was writing all files each time.

Brunch 1.2.2 (24 May 2012)

  • Brunch now outputs compilation time.
  • Assets are copied one-by-one on change, instead of copying the whole assets directory. This improves watcher performance by about 25%+.
  • Disabled caching in built-in webserver.
  • Improved brunch generate:
    • Added --plural option to brunch generate. Plural version of generator name is used in controllers and collections. By default, brunch does pluralizing instead of you.
    • Added collection generator to brunch generate. It is not included in brunch g scaffold, because it's not needed most of the time.
    • Added collectionView generator to brunch generate for Chaplin users. It doesn't generate corresponding template.
  • If package.json or config.coffee were removed during the watching, brunch process will exit.
  • Maximum time between changes of two files that will be considered as a one compilation changed from 100ms to 65ms.

Brunch 1.2.1 (12 May 2012)

  • Fixed persistence of process with brunch watch (without server).
  • Fixed watching of files on windows.

Brunch 1.2.0 (12 May 2012)

  • Greatly improved brunch generate:
    • User can now define his own generators in config.generators.
    • Default generators are now:
      • controllerTest, modelTest, viewTest, template, style
      • controller (generates controllerTest too)
      • model (generates modelTest too)
      • view (generates template, style & viewTest too)
      • scaffold (generates controller, model, view and their generators)
  • Improved config API:
    • Added paths.ignored param that redefines paths ignored by brunch.
    • paths.assets can now be an array of paths.
  • Improved plugin API:
    • Added support for onCompile method. It allows to create great & simple live browser reloaders.
  • Added pushState support to the built-in webserver.
  • Files that end with two underscores (e.g. a.js__) are now ignored by watcher and compiler because they're created by some IDEs.
  • Files in vendor directory are now sorted correctly, before app files.

Brunch 1.1.2 (20 April 2012)

  • Fixed buildPath is deprecated warning on new configs.
  • Fixed compiling of invalid files (.rb, .png etc).

Brunch 1.1.1 (19 April 2012)

  • Fixed compiling of package.json, config and watching of assets.
  • Fixed incorrect date in brunch logger.
  • Fixed an error when requiring custom server script.

Brunch 1.1.0 (15 April 2012)

  • Added windows support.
  • Added node.js 0.7 / 0.8 support.
  • Added support for chain compilation. For example, if _user.styl changes and main.styl depends on it, main.styl will be recompiled too.
  • brunch watch now also watches config & package.json.
  • Improved command line API:
    • Added optional --config param to all commands expect brunch new. Usage: brunch build --config ios_config.
    • Brought back --minify param in brunch build and brunch watch.
    • Deprecated --output param in brunch build and brunch watch.
    • Param --template in brunch new has been renamed to --skeleton. --skeleton supports relative / absolute path and git repo URLs. Also, git metadata is automatically removed in cloned / copied projects.
  • Improved config API:
    • buildPath is now deprecated, paths.public is used instead of it.
    • Added paths.app, paths.root, paths.assets, paths.test, paths.vendor.
    • Scripts that are not in the config[lang].order are now compiled in alphabetical order instead of random.
    • Made optional presence of almost all config params.
  • Improved module loader:
    • Real exceptions are now thrown instead of strings when module wasn't found.
    • Fixed an issue when loader cached same modules more than once.
    • Fixed an issue when loader loaded non-existing modules.
  • Greatly improved default coffee skeleton architecture:
    • Moved all collections to models.
    • Replaced routers with lib/router.
    • No more global variable for application bootstrapper, it can be loaded with require 'application'.
    • Switched default templates to Handlebars. Handlebars.js is a nice mustache-compatible template engine that supports helpers (lib/view_helper).
  • Fixed loading of non-coffeescript configs.
  • Made optional existence of app & vendor directories.
  • Node.js API now mirrors command line api.

Brunch 1.0.3 (3 April 2012)

  • Dotfiles from assets dir are prevented to be copied to build dir.

Brunch 1.0.2 (28 March 2012)

  • Removed Cakefile from default template.
  • Changed recommended framework in test/spec to Mocha.

Brunch 1.0.1 (26 March 2012)

  • Updated dependencies.
  • Fixed permissions issue with app/assets folder.

Brunch 1.0.0 (14 March 2012)

  • Simplified config files.
  • Default app now uses two separate files to simplify debugging: app.js and vendor.js.
  • Changed default naming of build directory & its subdirs. Now the style matches expressjs and rails.
    • build directory is now public.
    • scripts has been renamed to javascripts.
    • styles has been renamed to stylesheets.
  • Rewritten API for plugins to be framework-agnostic & much more simple:
    • All brunch-extensions plugins have been split into separate repos.
    • Added support for generator templates.
    • Added support for different extensions in brunch generators.
    • Added support for including files with plugins.
  • Improved command line API:
    • Added --template / -t option to brunch new.
    • Added --path -p option to brunch generate.
    • Added support for custom webservers to brunch watch --server.
  • Files, whose names start with _ and files in app/assets are now ignored by compiler (but not by watcher).
  • Update backbone to 0.9.1, underscore to 1.3.1 and jquery to 1.7.1.
  • Added IcedCoffeeScript plugin.
  • Fixed Jade templates. See jade-brunch for more info.
  • Added support for javascript config files.
  • Added debugging mode. You can enable it by prepending BRUNCH_DEBUG=1 to brunch command.

Brunch 0.9.1 (21 February 2012)

  • Updated brunch-extensions to 0.2.2.

Brunch 0.9.0 (10 January 2012)

  • Added new API for plugins.
  • Added support for Jade, LESS and Roy. All language compilers / plugins are now located in separate repo, brunch-extensions.
  • Added JS & CSS minifier.
  • CoffeeScript (instead of YAML) is now used for application configs.
  • Improved file watcher speed by 5-fold.
  • Implemented new directory structure:
    • The build directory is now generated automatically.
    • All assets (index.html, images etc.) are placed in app/assets/.
    • main.coffee was renamed to initialize.coffee for clarity.
    • src/vendor and src/app moved to vendor and app.
    • All scripts from src/vendor are moved to app/vendor/scripts.
    • Added support for CoffeeScript in vendor/scripts.
    • Added support for Stylus / LESS in vendor/styles.
    • Templates have moved from app/templates to app/views/templates.
  • Updated command line API:
    • brunch build and brunch watch now compile files in current working directory (instead of in ./brunch/ subdir).
    • Added brunch generate command. It's basically a shortcut for creating new model / view / router. Example usage: brunch generate view user.
    • Added brunch watch --server flag that would run http server on build directory. It has an optional --port setting.
  • Added support for node 0.6.
  • Added growl support.
  • Changed reset.styl to normalize.css & helpers.css from html5boilerplate.
  • Improvements for vendor data: support CSS in vendor/styles directory, support CoffeeScript (in addition to js) in vendor/scripts directory.
  • Add firebug support to stylus compiler.
  • Improved time formatting in console logs.