Skip to content

Latest commit

 

History

History
182 lines (112 loc) · 6.72 KB

CHANGES.textile

File metadata and controls

182 lines (112 loc) · 6.72 KB

3.8.6

  • cell/base can now be required without trouble.
  • Generated test files now respect namespaced cells.

3.8.5

  • Added Cell::Rails::HelperAPI module to provide the entire Rails view “API” (quotes on purpose!) in cells running completely outside of Rails. This makes it possible to use gems like simple_form in any Ruby environment, especially interesting for people using Sinatra, webmachine, etc.
  • Moved Caching.expire_cache_key to Rails. Use Caching.expire_cache_key_for(key, cache_store, ..) if you want to expire caches outside of Rails.

3.8.4

  • Added Cell::Rack for request-dependent Cells. This is also the new base class for Cells::Rails.
  • Removed deprecation warning from TestCase#cell as it’s signature is not deprecated.
  • Added the base_cell_class config option to generator for specifying an alternative base class.

3.8.3

  • Added Engines.existent_directories_for to prevent Rails 3.0 from crashing when it detects engines.

3.8.2

  • Engines should work in Rails 3.0 now, too.

3.8.1

  • Make it work with Rails 3.2 by removing deprecated stuff.

3.8.0

  • Cell::Base got rid of the controller dependency. If you want the ActionController instance around in your cell, use Cell::Rails – this should be the default in a standard Rails setup. However, if you plan on using a Cell in a Rack middleware or don’t need the controller, use Cell::Base.
  • New API (note that controller isn’t the first argument anymore):
    • Rails.create_cell_for(name, controller)
    • Rails.render_cell_for(name, state, controller, *args)
  • Moved builder methods to Cell::Builder module.
  • DEFAULT_VIEW_PATHS is now in Cell::Base.
  • Removed the monkey-patch that made state-args work in Rails <= 3.0.3. Upgrade to +3.0.4.

3.7.1

  • Works with Rails 3.2, too. Hopefully.

3.7.0

Changes

  • Cache settings using Base.cache are now inherited.
  • Removed @opts.
  • Removed #options in favor of state-args. If you still want the old behaviour, include the Deprecations module in your cell.
  • The build process is now instantly delegated to Base.build_for on the concrete cell class.

3.6.8

Changes

  • Removed @opts.
  • Deprecated #options in favour of state-args.

3.6.7

Changes

  • Added view_assigns to TestCase.

3.6.6

Changes

  • Added the :format option for #render which should be used with caution. Sorry for that.
  • Removed the useless layouts/ view path from Cell::Base.

3.6.5

Bugfixes

  • `Cell::TestCase#invoke` now properly accepts state-args.

Changes

  • Added the `:if` option to `Base.cache` which allows adding a conditional proc or instance method to the cache definition. If it doesn’t return true, caching for that state is skipped.

3.6.4

Bugfixes

  • Fixes ArgumentError: wrong number of arguments (1 for 0) in #render_cell for Ruby 1.8.

3.6.3

Bugfixes

  • [Rails 3.0] Helpers are now properly included (only once). Thanks to [paneq] for a fix.
  • `#url_options` in the Metal module is now delegated to `parent_controller` which propagates global URL setting like relative URLs to your cells.

Changes

  • `cells/test_case` is no longer required as it should be loaded automatically.

3.6.2

Bugfixes

  • Fixed cells.gemspec to allow Rails 3.×.

3.6.1

Changes

  • Added the :format option allowing #render to set different template types, e.g. render :format => :json.

3.6.0

Changes

  • Cells runs with Rails 3.0 and 3.1.

3.5.6

Changes

  • Added a generator for slim. Use it with `-e slim` when generating.

3.5.5

Bugfixes

  • The generator now places views of namespaced cells into the correct directory. E.g. `rails g Blog::Post display` puts views to `app/cells/blog/post/display.html.erb`.

Changes

  • Gem dependencies changed, we now require actionpack and railties >= 3.0.0 instead of rails.

3.5.4

Bugfixes

  • state-args work even if your state method receives optional arguments or default values, like def show(user, age=18).

Changes

  • Cell::Base.view_paths is now setup in an initializer. If you do scary stuff with view_paths this might lead to scary problems.
  • Cells::DEFAULT_VIEW_PATHS is now Cell::Base::DEFAULT_VIEW_PATHS. Note that Cells will set its view_paths to DEFAULT_VIEW_PATHS at initialization time. If you want to alter the view_paths, use Base.append_view_path and friends in a separate initializer.

3.5.2

Bugfixes

  • Controller#render_cell now accepts multiple args as options.

Changes

  • Caching versioners now can accept state-args or options from the #render_cell call. This way, you don’t have to access #options at all anymore.

3.5.1

  • No longer pass an explicit Proc but a versioner block to Cell.Base.cache. Example: cache :show do "v1" end
  • Caching.cache_key_for now uses ActiveSupport::Cache.expand_cache_key. Consequently, a key which used to be like "cells/director/count/a=1/b=2" now is cells/director/count/a=1&b=2 and so on. Be warned that this might break your home-made cache expiry.
  • Controller#expire_cell_state now expects the cell class as first arg. Example: expire_cell_state(DirectorCell, :count)

Bugfixes

  • Passing options to render :state in views finally works: render({:state => :list_item}, item, i)

3.5.0

Changes

  • Deprecated @opts, use #options now.
  • Added state-args. State methods can now receive the options as method arguments. This should be the prefered way of parameter exchange with the outer world.
  • #params, #request, and #config is now delegated to @parent_controller.
  • The generator now is invoked as rails g cell ...
  • The `—haml` option is no longer available.
  • The `-t` option now is compatible with the rest of rails generators, now it is used as alias for `—test-framework`. Use the `-e` option as an alias of `—template-engine`
    Thanks to Jorge Calás Lozano <[email protected]> for patching this in the most reasonable manner i could imagine.
  • Privatized #find_family_view_for_state, #render_view_for, and all *ize methods in Cell::Rails.
  • New signature: #render_view_for(state, *args)

3.4.4

Changes

  • Cells.setup now yields Cell::Base, so you can really call append_view_path and friends here.
  • added Cell::Base.build for streamlining the process of deciders around #render_cell, see here
  • added TestCase#in_view to test helpers in a real cell view.

3.4.3

Changes

  • #render_cell now accepts a block which yields the cell instance before rendering.

Bugfixes

  • We no longer use TestTaskWithoutDescription in our rake tasks.