Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
146 lines (136 sloc) 7.67 KB
== 0.3.0
* HasManyAssociation::Set now has a nil? method, so we can do stuff like cage.animal.nil?
== 0.2.5
* has_one bugfixes
* Added syntax for setting CHECK-constraints directly in your properties (Postgres)
* You can now set indexes with :index => true and :index => :unique
* Support for composite indexes (thanks to Jeffrey Gelens)
* Add composite scope to validates_uniqueness
* Added private/protected properties
* Remove HasOneAssociation, Make HasManyAssociation impersonate has_one relationships
* Added #get method
* Persistence module added, inheriting from DataMapper::Base no longer necessary
== 0.2.4
* Bug fixes
* Added paranoia
== 0.2.3
* Added String#t for translation and overrides for default validation messages
* Give credit where it's due: zapnap, not pimpmaster, submitted the String#blank? patch. My bad. :-(
* MAJOR: Resolve issue with non-unique-hash values and #dirty?; now frozen original values are stored instead
* Added Base#update_attributes
* MAJOR: Queries are now passed to the database drivers in a parameterized fashion
* Updated PostgreSQL driver and adapter to current
== 0.2.2
* Removed C extension bundles and log files from package
== 0.2.1
* Added :float column support
* Added association proxies: ie: Zoo.first.exhibits.animals
* Columns stored in SortedSet
* Swig files are no longer RDOCed
* Added :date column support
* BUG: Fixed UTC issues with datetimes
* Added #to_yaml method
* Added #to_xml method
* Added #to_json method
* BUG: Fixed HasManyAssociation::Set#inspect
* BUG: Fixed #reload!
* BUG: Column copy for STI moved into Table#initialize to better handle STI with multiple mapped databases
* BUG: before_create callbacks moved in the execution flow since they weren't guaranteed to fire before
* Threading enhancements: Removed single_threaded_mode, #database block form adjusted for thread-safety
* BUG: Fixed String#blank? when a multi-line string contained a blank line (thanks zapnap!)
* Performance enhancements: (thanks wycats!)
== 0.2.0
* AdvancedHasManyAssociation now functional for fetches
* AdvancedHasManyAssociation renamed to HasNAssociation
* HasManyAssociation refactored to use HasNAssociation superclass
* Slight spec tweaks to accomodate the updates
* HasOneAssociation refactored to use HasNAssociation superclass
* Added HasAndBelongsToManyAssociation, using HasNAssociation as a basis; Need to add corresponding SQL generation code in AdvancedLoadCommand
* Added spec for habtm query generation
* HasNAssociation#foreign_key returns a DataMapper::Adapters::Sql::Mappings::Column instance instead of a raw String now
* Added table, association, association_table and to_sql methods to HasNAssociation
* Added associations_spec.rb
* Added a forced table-recreation to spec_helper.rb so the tests could run with a clean version of the database, including any new columns added to the models
* Added HasAndBelongsToManyAssociation#to_sql (all current specs pass now!)
* Minor tweaks to Callbacks
* Added CallbacksHelper to declare class-method ::callbacks on DataMapper::Base
* Implemented before_validate and after_validate hooks in ValidationHelper
* Minor documentation additions in callbacks.rb
* Added callbacks_spec
* Moved class-method declarations for built-in callbacks to the callbacks helper instead of DataMapper::Base
* Renamed :before/after_validate callback to :before/after_validation to match ActiveRecord
* Callbacks#add now accepts a Symbol which maps a callback to a method call on the targetted instance, also added a spec to verify this behavior
* Documented callbacks.rb
* Added DataMapper::Associations::Reference class
* Documented DataMapper::Associations::Reference class
* Upgraded BelongsToAssociation to new style
* Added AssociationsSet to handle simple "last-in" for association bindings
* Fixed extra spec loading
* Added *Association#columns
* Some refactoring in AdvancedLoadCommand regarding :include options
* Added support for class-less Mappings::Table instances, with just a string name
* HasAndBelongsToManyAssociation#join_table #left_foreign_key and #right_foreign_key reference actual Table or Column objects now
* Added :shallow_include option for HABTM joins in AdvancedLoadCommand and corresponding spec
* Added Commands::AdvancedConditions
* Added ORDER, LIMIT, OFFSET and WHERE support to AdvancedLoadCommand
* Renamed spec/has_many.rb to spec/has_many_spec.rb
* Tweaked the loading of has_many relationships; big performance boost; got rid of an extra query
* Added EmbeddedValue support, and accompanying spec
* Fleshed out AdvancedConditions a bit; added conditions_spec.rb
* Added more AdvancedConditions specs
* Added Loader to handle multi-instanced rows
* AdvancedLoadCommand replaced LoadCommand; down to 3 failing specs
* All specs pass
* Added :intercept_load finder option and accompanying spec
* Modified :intercept_load block signature to |instance,columns,row|
* HasAndBelongsToMany works, all specs pass
* Fixed a couple bugs with keys; Added DataMapper::Base#key= method
* Made DataMapper::Base#lazy_load! a little more flexible
* Removed LoadCommand overwrites from MysqlAdapter
* Default Database#single_threaded mode is true now
* Removed MysqlAdapter#initialize, which only served to setup the connections, moved to SqlAdapter
* Added SqlAdapter#create_connection and SqlAdapter#close_connection abstract methods
* Added MysqlAdapter#create_connection and MysqlAdapter#close_connection concrete methods
* Made SqlAdapter#connection a concrete method (instead of abstract), with support for single_threaded operation
* Database#setup now takes a Hash of options instead of a block-initializer
* Validation chaining should work for all association types
* Save chaining should work for has_many associations
* Added benchmarks for in-session performance to performance.rb
* Removed block conditions; They're slower and don't offer any real advantages
* Removed DeleteCommand
* Removed SaveCommand
* Removed TableExistsCommand
* Session renamed to Context
* Most command implementations moved to methods in SqlAdapter
* Removed UnitOfWork module, instead moving a slightly refactored implementation into Base
== 0.1.1
* Removed /lib/data_mapper/extensions
* Moved ActiveRecordImpersonation into DataMapper::Support module
* Moved CallbackHelper methods into DataMapper::Base class
* Moved ValidationHelper into DataMapper::Validations module
* Removed LoadedSet since it's not necessary for it to reference the Database, so it's nothing more than an array now; Replaced with Array
* Modified data_mapper.rb to load DataMapper::Support::Enumerable
* Modified example.rb and performance.rb to require 'lib/data_mapper' instead of modifying $LOADPATH
* Created SqlAdapter base-class
* Refactored MysqlAdapter to use SqlAdapter superclass
* Refactored Sqlite3Adapter to use SqlAdapter superclass
* Moved /lib/data_mapper/queries to /lib/data_mapper/adapters/sql/queries
* Moved Connection, Result and Reader classes along with Coersion and Quoting modules to DataMapper::Adapters::Sql module
* Moved DataMapper::Adapters::Sql::Queries to ::Commands
* Moved Mappings to SqlAdapter
* Added monolithic DeleteCommand
* Added monolithic SaveCommand
* Added TableExistsCommand
* Moved save/delete logic out of Session
* Added create-table functionality to SaveCommand
* Cleaned up Session; #find no longer supported, use #all or #first
* Moved object materialization into LoadCommand
* Migrated Sqlite3Adapter::Commands
* Added Session#query support back in
* Removed Connection/Reader/Result classes
* Set DataMapper::Base#key on load to avoid double-hit against Schema
* Added DataMapper::Support::Struct for increased Session#query performance
* Added AdvancedHasManyAssociation (preview status)
* Added benchmarks comparing ActiveRecord::Base::find_by_sql with Session#query
== 0.1.0
* Initial Public Release
Something went wrong with that request. Please try again.