- Fixes and improvements to route and manager modules #513
- Ajax methods configuable #523
- Fix for orphaned model instances #527
- Minor updates for CoffeeScript 1.7
- Change Model.find() to not throw error and accept fallback function
- Model.exists() will now return simply true or false
- Optional customizable UUID for model records #451
- Improvements to some triggers #508
- Improve ajax route and scope customizability #510
- Expiremental bindings module #491
- Add Model.slice() and improve .last() and .first()
- Fix a few bugs
- Add a license header
- Much improved fromForm method
- Fix controller.replace()
- Trigger can pass options
- Code cleanup for listen methods
- Improve manager module handling of activate deactivate events
- Accept url override for methods that would delegate to ajax-
Asset.save {url:'/some/other/url'}
(#467) - Simpler mechanism for maintaining model order
- Unmatched route redirect options
- Better handle race conditions in the ajaxQueue
- Test suite improvements including core now being tested against Zepto.js
- Persistent ordering of model instances in Chrome
- Numerous improvements to relations module
- ListenTo and stopListening methods to help keep Spine's pub/sub implementation tidy
- Improve unbind method on model instances
- Better enable nesting and extending controllers
- Ajax module supports options for scoping the url
- Tested against newer jQuery versions
- On and off aliases for bind and unbind
- Routes can accept option to use history.replaceState()
- More descriptive 'unknown record' errors
- Better cloning so records don't diverge
- Throw errors if naming conflicts in stack manager
- Fix some edge case bugs with routing
A bug-fix release.
- ???
- ???
- ???
A bug-fix release.
- Fix named globs in routes
- deprecate Model.prototype.init()
- Make cids simplier
- Controller event callbacks always return true, so you don't accidentally cancel the event
release
is now just a method you can override, not an event- Fixed
findAllByAttribute
inrelations.coffee
- Try/catch round
Ajax.disable
do Ajax is always enabled again - Model Ajax requests can be cancelled with
save(ajax: false)
##Features
Main two new features are:
Ajax options on save, for example:
user.save(success: -> alert('saved!'))
user.save(ajax: false) # Disable Ajax
user.save(ajax: ajaxOptions)
And cids:
project = Project.create()
@navigate '/projects', project.cid
Project.find(project.cid) #=> Project
##Abstract
- Fixed double Ajax disabling issue
- Can now pass request options to Ajax on save
- url() now takes multiple arguments
- Fix association id comparison issue
- Now have internal CIDs for use in comparison and in URLs
- Add 'attributes' option to controllers
And much more...
###Abstract
Mostly a bunch of fixes, with some new features:
- Fix issues with routing order
- Allow regexes in routes
- Include spine.app as a dependency
- Add Stacks
- Add fromForm to models (see API)
- Fix cross-domain ajax
- create()/save() now return clones
###Abstract:
Version 1.0.3 was mostly about Ajax, and integrating Spine with Rails.
###New features:
- Model's refresh event now includes the new resources
- Pass an 'id' option to fetch, in order to fetch a single record via ajax
- Bind to an event once, with the 'one()' function
- Allow namespaced events in the controller
- Model#attributes() & Model#load() now works for functions. In other words, you can use a functions instead of basic datatypes for attributes on models.
###Refactors:
- Ajax refactor, including easier integration with Ajax callbacks
- Refactor the way instance events get triggered on records
- Removed deprecated Spine.App - which also enables Node.js compatibility