Skip to content
This repository
  • 720 commits
  • 230 files changed
  • 30 comments
  • 40 contributors
This comparison is big! We're only showing the most recent 250 commits
Feb 10, 2012
Brian Hempel Delegate :distinct, :size, :reverse, :offset, :order, :empty?, :filte…
…r, :find_one, :per_page, :ignore, :only to the query.

A few user problems are fixed by this. To honor unpersisted documents, the methods without arguments (:size and :empty?) need to hit the loaded association array in the ManyDocumentsProxy instead of going to the database...tests updated to reflect this.
24651ca
Brian Hempel Also delegate :to_a to plucky 9633972
Feb 12, 2012
kkamil Fix and test for displaying embedded documents 9aba10d
kkamil fix issue #373 74a76e5
kkamil another fix in inspect 6ca8580
Feb 13, 2012
Kevin Shekleton Fix issue #308 - ensure milliseconds are preserved with time values b43549f
Feb 14, 2012
David Graham Allow MongoMapper.setup to accept a symbol for the environment name s…
…o Sinatra's settings.environment value can be used.
1f9c3a6
John Nunemaker Merge pull request #391 from dgraham/fix_setup_with_symbols
Make MongoMapper.setup work with symbol environment parameter.
c2614d7
Mar 02, 2012
Brian Ryckbost Add ActiveRecord-style touch 6043249
Brian Ryckbost Add touch option to associations 2f8f8bb
Brian Ryckbost Touch the proxy if it can. 1c5aec9
Brian Ryckbost Begin defining touch callbacks 3ce0706
Ryan G Refactor belongs_to touch as callbacks after save, touch, and delete 367a300
Ryan G Ability to pass symbol to touch option of belongs_to association to u…
…pdate specific key
142ff27
Brian Ryckbost Raise an ArgumentError with a better message 852feab
Haris Amin Added support for options for atomic modifiers plugin. This enables p…
…assing :upsert and :safe options to the modifier operation.
f4ef5fb
Mar 04, 2012
Haris Amin now passing a proper separate options argument for modifier operation…
…s instead of forcing it in the keys argument hash
62d23e9
Mar 13, 2012
Steve Richert Ensure that belongs_to associations provide an ObjectId key for the f…
…oreign key, so that IDs are properly cast.
2cdfe37
Ryan G Add touch support to embedded documents b92bbd3
Ryan G Fix Embedded Document touch c99ae0f
Haris Amin spaced options according to existing code style f9cbe76
Mar 14, 2012
Haris Amin Now properly inspecting for criteria, updates, and options hashes. If…
… any more options get added to the ruby driver, we won't have to do any additional logic to pass those options through
39321c8
Haris Amin there's no need to test for args length in criteria_and_keys_from_args cf82ec6
Mar 30, 2012
Brandon Keepers Merge pull request #395 from hamin/atomic_modifier_options
Added support for options for atomic modifiers plugin. This enables pass...
0d1de63
Brandon Keepers Merge pull request #390 from kpshek/master
Preserve millisecond values on times [Fixes #308]
029dd45
Brandon Keepers Merge pull request #387 from brianhempel/delegate_more_to_plucky
Delegate more methods to plucky [Fixes #379, #266]
2d807c0
Brandon Keepers Merge pull request #384 from RobertLowe/master
Fix: Uninitialized Class Variable @@database_name
4b96535
Brandon Keepers Release 0.11.1 bb81048
Brandon Keepers Add compare link to change log 41cd0b1
Apr 06, 2012
Eric Anderson More intuitive support for making Boolean's required.
validates_presence_of :field doesn't work for a Boolean field because false
is considered blank. Instead you have to use
validates_inclusions_of :field, :in => [true, false]. This is a known annoyance
of AR. We can make this better in MongoMapper by having the :required shortcut
do the right thing. So if you do:

    key :field, String, :required => true

Then it does a validates_presence_of :field. But if you do:

    key :flag, Boolean, :required => true

It does a validates_inclusion_of :field, :in => [true, false]
4c96d02
Apr 07, 2012
Brandon Keepers Merge pull request #403 from eric1234/master
More intuitivate :required => true for Boolean types.
60f1e5b
Brandon Keepers Update ChangeLog 2d777f2
Apr 16, 2012
John Nunemaker Prep gemfile to for travis ci 4c6d4bd
John Nunemaker Added initial travis config. 1d68a48
John Nunemaker Make sure same bson gem is used.
Just in case.
1a4cb8d
John Nunemaker Implementation of making embedded callbacks optional.
Something to get the discussion started...
fefec91
John Nunemaker Merge branch 'patch-1' of https://github.com/untoldone/mongomapper in…
…to untoldone-patch-1
4822f86
John Nunemaker Tests for document on document not valid exception f1e55dc
Apr 21, 2012
John Nunemaker Tweak readme. 6863c0e
John Nunemaker Lock to older version of multi json to avoid deprecation warning. 0f0062f
Apr 26, 2012
Brian Hempel Bump plucky dependency to ~> 0.5.1 2f746fb
Brian Hempel Use Plucky::Methods to determine what methods to delegate to query [F…
…ixes #266]
b965105
May 07, 2012
Mike Dillon Declare type key on polymorphic belongs_to
When a belongs_to association is marked as :polymorphic => true, a model
key of type String for the "type_key_name" field in addition to the key
of type ObjectId for "foreign_key"
a71eda6
May 08, 2012
Mike Dillon Fix type of type_key_name field to be String c8105c6
May 22, 2012
Brian Hempel Allow passing update options for set and unset modifiers as documente…
…d in #416
e582032
May 23, 2012
Brian Hempel Merge pull request #414 from md5/declare-belongs_to-type-key
Declare type key on polymorphic belongs_to
28d005e
Jun 01, 2012
Steve Richert Stop clobbering ActiveModel's accessible_attributes method
This works around an incompatibility with Rails 3.2.4+ in which accessible attributes are role-specific (see the ParamsWrapper metal) and need to accept a role argument.

This fix doesn't go all the way down the road of respecting role-specific accessible attributes but silently ignores the passed-in role.
4d35c67
Jun 02, 2012
Andrew Timberlake Bug fix: Fixed issue where instance level modifiers don't work on a m…
…odel with a compound (hash) id key
f205122
Jul 06, 2012
Alexey Chebotar Added tests for ConfigGenerator. Method app_name reworked to not brea…
…k tests
86a838b
Alexey Chebotar Added tests for ModelGenerator 3ad238e
Alexey Chebotar Fixed undefined method 'module_namespacing' for rails 3.0.x 9a06cfd
Alexey Chebotar Added --parent option into ModelGenerator fa93041
Alexey Chebotar Added TestGeneratorsHelper and test of parent option for ModelGenerator 10e75c4
Jul 09, 2012
John Nunemaker Kill .project file. 3273552
John Nunemaker Minor: formatting c6394c8
John Nunemaker Slim down gemfile bbfb86a
John Nunemaker Added rails 3.0-3.2 gemfiles for travis. ee1c4b2
John Nunemaker Change main gemfile to use rails 3.2 ca118be
John Nunemaker Bomb hard when no initializer found. 16eaf2d
John Nunemaker Added a few details to SCI.
Allows getting the sci parent and root. Needed for scoped identity map
that is shared for sci models.
26cdfe0
John Nunemaker Rewrite identity map.
More rails and toystore style.
65744ce
John Nunemaker No longer need model clearing as it is removed. d41c360
John Nunemaker Always include IdentityMap, but disabled by default. 9f9a0a9
John Nunemaker Update identity map middleware.
Works with newer rack api of each and close.

Also, enables identity map for request and then disables, rather than
just always having it on.
aaadd84
John Nunemaker Middleware is now optional as it turns IM on. fad2ccc
Jul 14, 2012
Brian Alexander allow options hash to be passed to safe method d629a86
Jul 21, 2012
John Nunemaker Release 0.11.2.
Noteable: plucky upgrade and rails 3.2 support
142aa68
John Nunemaker Update homepage in gemspec 89a9da0
Jul 26, 2012
Elijah Miller Support for the new mongo hosts option format. 505caec
Sep 01, 2012
John Nunemaker Merge branch 'identity-map' 9cd9d3f
John Nunemaker Remove 1.9.2 from travis. 2fed18d
Sep 07, 2012
Darragh Curran test/fix for records with partial set of fields being added to identi…
…ty map when using .each on Plucky::Query
1bead1a
John Nunemaker Merge pull request #447 from darragh/fix_identity_map_with_fields_and…
…_each

partial records incorrectly added to IdentityMap when using Plucky::Query#each
3723150
Sep 12, 2012
John Nunemaker Add a note about identity map usage. 8cf29ce
John Nunemaker Remove growl crap 6909939
John Nunemaker Force 0.5.2 of plucky.
Fixes count query loading all documents when using the identity map.
12d1f89
John Nunemaker Release 0.12.0 fb517ee
Sep 14, 2012
Winfield Only set defaults values on initialize()
Use write_key to bypass attr_accessible protection for default values.

Add support for default _id values to id accessor.
6ef7fd1
Sep 17, 2012
Winfield Initialize default values for all cases
Ensure we setup default attribute values for initialize() and initialize_from_database().

This fixes issues with id generation and other default values being set for embedded docs/associations.
29bf264
Winfield Add automatic id generation when not set.
There are several cases (like clone()) where we want to generate a new id for a Document without initializing all other default values.

Allow the get() accessor for _id key to automatically generate the id if one is not defined.
182fb9f
Sep 19, 2012
Winfield Declare TravisCI mongo service dependency.
Attempt to fix Travis build by enabling the mongo service.

This service was disabled by default and now requires an explicit service config.
20838ca
Sep 20, 2012
Winfield Declare TravisCI mongo service dependency.
Attempt to fix Travis build by enabling the mongo service.

This service was disabled by default and now requires an explicit service config.
ad20a8c
John Nunemaker Merge pull request #451 from wpeterson/bug/travis_build
Fix Travis MongoMapper build
0506756
Sep 21, 2012
Daniel Becker Added SSL connection support b06b72b
Alessandro Dal Grande fixed tests broken by the SSL change a3e0c22
Alessandro Dal Grande test case for active SSL config 60483b9
John Nunemaker Minor: formatting 65b04fd
John Nunemaker Only pass ssl key if present bd6d20f
John Nunemaker Merge branch 'feature/initialize_defaults' of https://github.com/wpet…
…erson/mongomapper into wpeterson-feature/initialize_defaults
684faf6
John Nunemaker Rewrite part of the default key stuff
* has_default changed to default?
* default_attributes removed in favor of a select/each with defaulted
keys
5106f80
John Nunemaker Inherit connection and database name.
Subclasses were not getting these before. Only collection name was
inherited.

Fixes #420 and #424
6c1cb7c
John Nunemaker Merge branch 'bug/issue-421' of https://github.com/andrewtimberlake/m…
…ongomapper into andrewtimberlake-bug/issue-421
31c5b9a
John Nunemaker Fixes for ruby 1.8. 67b84ac
John Nunemaker Merge branch 'generator-parent-option' of https://github.com/bearded/…
…mongomapper into bearded-generator-parent-option
3d302fa
John Nunemaker Merge branch 'embedded-callbacks-optional' 3f28a93
John Nunemaker Merge branch 'safe_accepts_hash' of https://github.com/balexand/mongo…
…mapper into balexand-safe_accepts_hash
08ef976
John Nunemaker Optimization: use key?
keys.keys creates an uneeded array.
6bc16b5
John Nunemaker Optimization: _id just does this behind the scenes. 4c7419a
John Nunemaker Move test helpers to support folder. 289c844
John Nunemaker Moving generator tests around.
Trying to get travis to pass.
9b75659
Leif Ringstad Fixes tests for generators b192a8e
John Nunemaker Merge pull request #453 from leifcr/test_generator_fix
Fixes tests for generators
62f8183
John Nunemaker Use a bson ordered hash to fix 1.8.7/ree. b12af57
John Nunemaker A few modifier test tweaks. 17badd6
John Nunemaker Change assert keys removed to just take document 6fb1b01
John Nunemaker Added document found assertion 80ed6de
Sep 27, 2012
Chris Heald Various performance fixes mostly related to avoid extraneous method i…
…nvocation
c4657ad
Sep 28, 2012
Chris Heald OoO fix and a method call savings for Time#from_mongo 94e9825
Oct 01, 2012
Chris Gaffney Support non-ObjectID ids being given to modifiers.
The partially broken by cf82ec6 where it allowed a single ID to be
passed and it would work as expected. This also adds support for
multiple IDs to be provided.
73f30d9
Oct 02, 2012
John Nunemaker Merge pull request #459 from jnunemaker/support-string-ids-in-modifiers
Support non-ObjectID ids being given to modifiers.
e3521dc
Chris Gaffney Provide a fix for many associations not yielding to each in callbacks.
Ran into an issue when iterating over a many association in a
before_save callback on a document. For an association named foos,
`foos.inspect` would show the items but `foos.each` would never yield to
the given block since it appears to be empty.

The original issue I was tracking down was that instead of not yielding
it was yielding instances of Mongo::Cursor instead of the association
object. I haven't been able to recreate that case.
9844b2a
John Nunemaker Merge pull request #462 from jnunemaker/association-each-not-yielding
Provide a fix for many associations not yielding to each in callbacks.
d1eb6bc
Oct 19, 2012
Chris Heald Don't iterate the whole cursor twice when using IdentityMap with #all…
…. Improve performance by avoiding explicit block bindings, extraneous method calls, and extraneous array creation.
ab77215
Chris Heald Eliminate a couple more extraneous block bindings 400f4b3
Oct 21, 2012
Chris Heald Save typecast/uncast values and use those where possible, rather than…
… recomputing them every time they're accessed.

Use #key? rather than #keys.include? for better performance

Significantly reduce calls to #read_keys by avoiding #attributes calls from ActiveModel::Dirty. Improve the speed of #read_keys by avoiding string interns and ivar lookups where possible. Eliminate extraneous array creations in Keys#attributes and Associations#embedded_associations. Improve the speed of Dirty#write_key by using ivars directly rather than going through instance methods.

Revert to the slower-but-more-semantic key reads for #attributes now that the Dirty attributes thrashing is fixed.

attr_accessor -> attr_reader for semantic correctness
942003c
Oct 22, 2012
John Nunemaker Correctly define _id as bson ordered hash.
The reason the modifier tests were failing is because in #attributes, _id was being converted to a hash with indifferent access instead of staying a bson ordered hash.
197c2f6
Oct 26, 2012
Brian Alexander if scope method is found and called in model, then don't raise NoMeth…
…odError
3a78f04
Brian Alexander move delete and destroy methods to Querying::Decorator 8ae7ce0
Nov 02, 2012
Chris Heald Fix Ruby 2.0 breakage caused by behavior changes to #respond_to? - fi…
…xes #473
eb232a9
Nov 24, 2012
Chris Heald Skip dirty checks and assignments while loading from the DB; improves…
… load times
808cd4e
Chris Heald Minor optimizations; memoize enum-build values and reduce iterations …
…where possible
12c131a
Dec 07, 2012
Blaž Hrastnik Fix legacy mongo class names, that are in deprecation as of 1.8.0.
mongodb/mongo-ruby-driver@d356355
Mongo::Connection -> Mongo::MongoClient
Mongo::ReplSetConnection -> Mongo::MongoReplicaSetClient
8d1f3fd
Chris Heald Merge archSeer's mongo 1.8 changes, bump dependencies. 875e9a3
Chris Heald Upgrade straggler connection references.
Upgrade safe semantics to be consistent with the new MongoClient safe semantics - legacy usage (:safe => true) is transparently upgraded to the new system.
BIG CHANGE: In keeping with the driver defaults, safety is now ON by default (:w => 1) rather than off by default. Use `safe false` to turn off safety in a model.
Fixed tests.
68373a5
Chris Heald Instead of forcing safety on by default, let the connection settings …
…specify it. Add w, pool_size, and ssl option defaults to the config.
7a653a8
Chris Heald Fix options in the template cb66ae4
Dec 24, 2012
Nicolas Viennot Some source files were executable
cleaned up with:

    find lib test -type f | xargs chmod 644
b3f469d
Dec 25, 2012
Nicolas Viennot reverse_merge! -> reverse_merge
Tampering with the caller's argument might not be a good idea.
Have our own copy.
016fa6e
Dec 27, 2012
John Nunemaker Ignore bin and vendor, but not bin/mmconsole. 2e854cb
John Nunemaker Merge pull request #485 from nviennot/reverse_merge
reverse_merge! -> reverse_merge
9a86e4f
John Nunemaker Merge branch 'query_methods_match_correct_docs' of https://github.com…
…/balexand/mongomapper into balexand-query_methods_match_correct_docs
5711274
John Nunemaker Ensure sort order of documents when verifying in query test. f8d078c
John Nunemaker Merge branch 'master' of https://github.com/nviennot/mongomapper into…
… nviennot-master
c6a4c60
John Nunemaker Change mode of executable files to 0644. 30e062c
Dec 28, 2012
John Nunemaker Restrict the mongo requirement a bit. f95c58e
John Nunemaker Update plucky version. 9ce41eb
Dec 31, 2012
John Nunemaker Upgrade plucky to latest.
New version of plucky includes a few performance tweaks.
ea6408d
John Nunemaker Bump up the plucky requirement for some bug fixes. f21862e
Jan 23, 2013
Added record_timestamps class var to the timestamps plugin 7b72393
John Nunemaker Removed unnecessary then from pull request. 1e40d7e
Mar 06, 2013
José Valim Update bundler and fix mocha dependency 65d6e2d
Mar 14, 2013
John Nunemaker Merge pull request #502 from josevalim/bundler
Update bundler and fix mocha dependency
f309ed3
John Nunemaker Update to latest plucky. b927077
John Nunemaker Tweak the test helper requires. 6750c70
John Nunemaker Get all gemfiles on the same page. 11fd334
John Nunemaker Fix test name conflict. 829c919
John Nunemaker Prefer && to and. f330747
John Nunemaker Prefer parenthesis when using assignment and || over or. c0a4dca
John Nunemaker Minor: extra whitespace removed. f5f6952
May 31, 2013
Pablo Torres Use ||= idiom fc3aea5
Jun 17, 2013
Chris Heald Relax mongo driver requirement to permit 1.9 5986d29
Jun 18, 2013
James changed deleted cursor.next_object method to cursor.next 989f683
John Nunemaker Merge pull request #518 from jamesbowles/master
changed deleted cursor.next_object method to cursor.next
2cce239
Jun 21, 2013
Chris Heald Merge branch 'master' of git://github.com/jnunemaker/mongomapper 55b5930
Jul 02, 2013
Chris Heald Minor improvements to type cast speeds. Important since they're calle…
…d so often.

Remove instance #extends. They torch the ruby method cache! This is Very Very Bad. Don't do identity map stuff when the identity map is disabled.

Big changes to load behavior to improve load speeds substantially.

The big change here is that when loading from the database, we use
an #internal_write_key method that isn't eligible for plugins to
overwrite. Previously, things like #dirty_key's write_key would
be invoked when loading from the DB, which in turn invoked read_key
and a whole other chain of things. This massively slowed down read
speeds.

Other changes have been made to improve internal_write_key. First off,
uncast values are now stored in write (by the app, not the DB), and
only then from the Rails plugin, as that's the functionality that is
concerned with uncast values. It's now a simple hash lookup rather
than being a whole mess of ivars.

Keys#keys now copies the class.keys to an ivar when it's used. This
method is used very frequently, and avoiding the extra function
call has substantial benefit when you start adding it up.

is_a? was replaced with instance_of? in a number of places; this is
faster when you want to compare types directly, rather than the
inheritance hierarchiy.

We're testing !foo rather than foo.nil? in a number of places for
similar reasons.

Several tests which were too brittle have been fixed.

These changes have resulted in something approaching a 1000% speed
increase when reading from the database.

Dirty doesn't need initialize_from_database anymore

Since MM depends on activesupport already, just go ahead and include the Time.zone patch so we can remove #try

Performance improvements to boolean#from_mongo

Eliminate a bunch of uninitialized ivar warnings. Slightly improve the runtime of Key#get by avoiding a few method calls.

Remove spec that shouldn't have made it into this branch
a60b04c
Chris Heald Add test suite converted to rspec
Update gemfiles for travis builds. Minor spec fixes for 1.8.7 - not passing on 1.8.7 yet

Add common gemfile
0fa179f
Chris Heald Turn embedded callbacks off until a callback is actually defined.
Conflicts:
	spec/functional/callbacks_spec.rb
4da7bff
Chris Heald Fix syntax for Ruby 1.8.7 8b637c2
Jul 03, 2013
Chris Heald Merge branch 'load_speed_fixes' 61aa557
Chris Heald Merge branch 'rspec_suite' 4699250
Chris Heald Merge branch 'embedded_callbacks_fix' 8e6cd50
Chris Heald Get MM building on Rails 4.0. Add Ruby 2.0 and Rails 4 to the Travis …
…test matrix.
a37dca9
Chris Heald Add specs for embedded callback deferral 4b4f7df
Chris Heald Remove old test suite and update watchr scripts to point to rspec ins…
…tead
986875c
Chris Heald Bump plucky version and fix the build list to reflect the spec suite …
…change
ea6ccda
Chris Heald Add build status image to README 0e7f12a
Chris Heald Limit subclass scopes to subclasses. Closes #512.
Prior to this change, scopes added to subclasses would be visible on the
superclass
88f1eff
Chris Heald Fix run-all watchr task a8073ab
Chris Heald Fix spec; shoulda syntax isn't valid here be119ff
Chris Heald Fix link to Travis build [ci skip] 0a8c18b
Chris Heald Merge branch 'use_assignment_idiom' of git://github.com/ptn/mongomapper
Closes #514
adfc75e
Jul 05, 2013
Chris Heald Compact before setting embedded docs on a many association. Closes #288 e8723aa
Chris Heald Add specs to cover #402, #403, #320 4f829f0
Chris Heald Add Dumpable plugin for specific control over marshalling. Add specs …
…to cover #330.
520cc65
Chris Heald Fix problems with @errors not being dumpable on 1.8 47b9a52
Chris Heald Normalize IDs passed to #find!, so that it may accept an unsplatted a…
…rray of IDs, just like #find. Closes #468. Closes #469.
ce89315
Chris Heald Don't remove @_id if it's not already set; this is possible since @_i…
…d is lazy-assigned on access. Closes #498.
e4c7943
Chris Heald Accept blocks passed to new/build/create/create! on documents and ass…
…ociations. Closes #352.
98f264f
Chris Heald Fix super call semantics which break on 1.8 061efc7
Jul 06, 2013
Chris Heald Add #scoped for AR 3.x parity 5cfaa5a
Chris Heald Don't attempt to create a connection when inheriting classes if one d…
…oes not already exist. Closes #460.
1456861
Chris Heald mock is deprecated, use double instead c5582c9
Jul 07, 2013
Chris Heald Add coveralls and simplecov support ae86a71
Chris Heald Improve coverage via new specs and tagging non-coverable areas with :…
…nocov:
7873066
Chris Heald Update README with doc links and coverage badge ff2332a
Chris Heald Fix for unsorted hashes causing spec failures on 1.8 f205649
Chris Heald Add JRuby to travis. Minor spec fixes for JRuby compatibility. ec08319
Chris Heald Add testing information to README 6927d75
Chris Heald Make the created_at/updated_at tests work on seconds rather than gett…
…ing hung up on microseconds
c44a29a
Chris Heald If we find a klass or array of klass via ManyDocumentsProxy#method_mi…
…ssing, return it. Allows for ::many plugins. Closes #404.
ffd22e1
Chris Heald Validate key names. Explicitly disallow keys named `id` since they ar…
…en't reachable via plucky due to key normalization. Validate key names via regex. Closes #399.
951f44c
Chris Heald Disable SCI when an inherited model explicitly changes its collection…
…. Closes #396.
b6f75e0
Li Wangi mongo driver requires that read preference to be type of symbol acdd86f
Chris Heald Add specs to cover read option conversion 08b4acd
Chris Heald Fix issues with set_collection_name nullifying SCI on 1.8 0cc9903
Chris Heald Add critera_hash when single collection inherited. Closes #454 c7856e4
Chris Heald Add spec to cover SCI with polymorphic interfaces. Closes #322. 980be10
Chris Heald Permit the use of #insert and #update in addition to #save, so that w…
…e can catch and raise errors in safe mode. Closes #398.
ee1c7ba
Jul 08, 2013
Chris Heald When performing Time#to_mongo, round times off to milliseconds and di…
…scard microseconds. Closes #455.
9b3bd27
Chris Heald Add key aliasing
Add spec for key names which don't map to Ruby names easily.

Add :field_name as alternate for :abbr/:alias

Closes #353
f001de0
Jul 09, 2013
Chris Heald Add handling for default keys that permits for bad names. Disallow ke…
…ys starting with capital letters, as they'll run afoul of Ruby's naming expectations.
550b88f
Chris Heald Add #dynamic_keys and #defined_keys to let developers distinguish def…
…ined schema from derived schema. Use a less clever idiom for 1.8-compatible hash filtering.
2dca0dc
Chris Heald Guard against failures when the keys are read or written during a hij…
…acked #initialize before we've gotten to run our own #initialize. Closes #531. Closes pluginaweek/state_machine#268.
911db46
Jul 10, 2013
Chris Heald Only use @_dynamic_attributes for actual dynamic attributes. Prevents…
… desync between instance variable attributes and dynamic attributes.

Unalias keys before writing
07d6da0
Chris Heald Generate ivars for all keys that have valid ruby names to preserve ba…
…ckwards compatibility with 0.12.0. This commit should be reverted for 1.0.0.
d696d6e
Chris Heald Test #ivar rather than #valid_ruby_name? for speed and clarity ebb2532
Jul 12, 2013
Chris Heald Add Integer#from_mongo. Closes #533 815e46c
Jul 24, 2013
Chris Heald Clear @object_id_keys memoization cache when a new key is defined. Cl…
…oses #534.
4792e96
Jul 26, 2013
Chris Heald Bump to 0.13.0-beta1 f08b348
Jul 28, 2013
Chris Heald Bump plucky requirement to 0.6.5 e008280
Aug 01, 2013
Chris Heald Lock timecop to 0.6.1 for Ruby 1.8.7 support 969217b
Chris Heald Revert 1.9 hash syntax for hashrockets. e0d7db1
Aug 05, 2013
Chris Heald Permit suppression of accessor methods via the :accessors option to #…
…key. Closes #535.
71e25ce
Aug 06, 2013
Chris Heald Cast data with loaded from an embedded proxy, as embedded proxies may…
… receive their values from uncast sources. Closes #536
e5deacd
Chris Heald Bump version for 0.13.0.beta2 9b87dee
Aug 10, 2013
Nigel Ramsay Use ruby 1.8 syntax for hashes 3803c17
Aug 12, 2013
Luciano Sousa Update README.rdoc
fix travis-ci image url
9329f27
Chris Heald Merge pull request #540 from lucianosousa/patch-2
Update README.rdoc
0118b38
Chris Heald Merge pull request #538 from AbleTech/feature/fix_ruby_1.8.7_failures
Use ruby 1.8 syntax for hashes
97ebe75
Aug 20, 2013
Leif Ringstad Add railtie rescue_responses (Issue #492) 41e688e
Leif Ringstad Need action_dispatch railtie for rescue_responses b26e677
Leif Ringstad Fix rescue responses for rails 3.0 and 3.1 cf44aaa
Chris Heald Merge pull request #542 from leifcr/active_record_rescue_responses
Add active record rescue responses
9b330e7
Kohei Hasegawa More accurate match, "system.*" is a reserved collection namespace d3c659b
Chris Heald Merge pull request #543 from banyan/more-accurate-reserved-name
More accurate match, "system.*" is a reserved collection namespace
da452fe
Sep 18, 2013
Kristine Jennings Clarify that Rails 4 support is only in the beta, add example Gemfile…
… entry for beta
fdd750a
Sep 19, 2013
Joseph Caudle Merge pull request #545 from KristineHines/patch-1
Clarify that Rails 4 support is only in the beta, add example Gemfile en...
a0825a5
Oct 07, 2013
Chris Heald Add rubysl for rubinius support 5f3db3e
Chris Heald Add rbx to travis 14a8edb
Oct 09, 2013
Chris Heald Add transparent alias conversion during query/modifier usage 6167523
Chris Heald Remove RBX 48c31ca
Chris Heald Dealias :fields options as well 1eec9d2
Oct 10, 2013
Chris Heald Add de-aliasing for ensure_index et al 1aec36e
Chris Heald Spec typo fix a84e4a9
Nov 21, 2013
Tad Hosford Be more clear when specifying which version of JRuby mongo_mapper is …
…tested against

There is no version 1.9; this change should avoid confusion.
355eac1
Chris Heald Merge pull request #552 from rthbound/patch-1
There is no JRuby version 1.9; this change should avoid confusion
bbe8fb5
Dec 04, 2013
Tad Hosford Removes trailing whitespace and hard tabs dbd1c4e
Chris Heald Merge pull request #555 from rthbound/removes_trailing_whitespace_and…
…_hard_tabs

Removes trailing whitespace and hard tabs
b80ad17
Dec 11, 2013
Tim Perkins Setting a key using send should return the new value
There seems to be an unnecessary line at the end of `internal_write_key`
that results in `send("#{key_name}=", value)` returning nil. This breaks
compatibility with 0.12.

The `@attributes` variable that is set to nil in the last line of
`internal_write_key` does not appear to be
referenced elsewhere.
ee7f1d4
Dec 12, 2013
Chris Heald Test no longer breaks on JRuby 14dae37
Chris Heald Merge branch 'fix-send-writer' of git://github.com/tjwp-yesware/mongo…
…mapper into tjwp-yesware-fix-send-writer

Fixes #557
04d7a1c
Chris Heald Rather than removing the @attributes nilling, which is needed for Act…
…iveModel compat, just return value
651d0d8
Jan 07, 2014
Joel Junström Failing tests showing mutation of model state 73aa6a7
Joel Junström Do not mutate model values using key with typecast
When setting an array key with the typecast option, the array members is currently
typecasted using `Array#map!`. Since `Key#set` can be called with a models ivar as
argument this will mutate the outer state on the model.

For example if we store an array with timestamps with another time zone
than utc we will get discrepancies when accessing the models data before
and after persisting it.
b13c927
Chris Heald Merge pull request #563 from Oktavilla/key-serialization-mutates-docu…
…ment-state

Key serialization mutates model state when using key Array with option typecast
d3cc527
Feb 05, 2014
Chris Heald Only add the _type key to inherited classes when they have the same c…
…ollection as their parent. Classes with a different collection name don't need the SCI keys. Ref: https://groups.google.com/forum/?hl=en%3Fhl%3Den#!topic/mongomapper/2ZilWUrlGdw
ca70c43
Chris Heald Merge branch 'master' of github.com:jnunemaker/mongomapper f7138fc
Chris Heald More complete fix for the previous issue; remove the _type key when S…
…CI is turned off with set_collection_name. Add specs to cover it.
d8e7d18
Apr 16, 2014
Frederick Cheung validatior#setup is deprecated in activemodel 4.1
instead class is passed to initialize
4d5bb9e
Chris Heald Merge pull request #569 from fcheung/validator_setup_deprecated
validatior#setup is deprecated in activemodel 4.1
25b04e3