Permalink
Commits on Oct 22, 2012
  1. Correctly define _id as bson ordered hash.

    jnunemaker committed Oct 22, 2012
    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.
  2. Save typecast/uncast values and use those where possible, rather than…

    cheald committed Oct 21, 2012
    … 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
Commits on Oct 19, 2012
  1. Don't iterate the whole cursor twice when using IdentityMap with #all…

    cheald committed Oct 19, 2012
    …. Improve performance by avoiding explicit block bindings, extraneous method calls, and extraneous array creation.
Commits on Oct 3, 2012
  1. Merge pull request #462 from jnunemaker/association-each-not-yielding

    jnunemaker committed Oct 3, 2012
    Provide a fix for many associations not yielding to each in callbacks.
Commits on Oct 2, 2012
  1. Provide a fix for many associations not yielding to each in callbacks.

    gaffneyc committed Oct 2, 2012
    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.
  2. Merge pull request #459 from jnunemaker/support-string-ids-in-modifiers

    jnunemaker committed Oct 2, 2012
    Support non-ObjectID ids being given to modifiers.
Commits on Oct 1, 2012
  1. Support non-ObjectID ids being given to modifiers.

    gaffneyc committed Oct 1, 2012
    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.
Commits on Sep 28, 2012
Commits on Sep 21, 2012
  1. A few modifier test tweaks.

    jnunemaker committed Sep 21, 2012
  2. Merge pull request #453 from leifcr/test_generator_fix

    jnunemaker committed Sep 21, 2012
    Fixes tests for generators
  3. Fixes tests for generators

    leifcr committed Sep 21, 2012
  4. Moving generator tests around.

    jnunemaker committed Sep 21, 2012
    Trying to get travis to pass.
  5. Optimization: use key?

    jnunemaker committed Sep 21, 2012
    keys.keys creates an uneeded array.
  6. Merge branch 'safe_accepts_hash' of https://github.com/balexand/mongo…

    jnunemaker committed Sep 21, 2012
    …mapper into balexand-safe_accepts_hash
  7. Merge branch 'generator-parent-option' of https://github.com/bearded/…

    jnunemaker committed Sep 21, 2012
    …mongomapper into bearded-generator-parent-option
  8. Fixes for ruby 1.8.

    jnunemaker committed Sep 21, 2012
  9. Merge branch 'bug/issue-421' of https://github.com/andrewtimberlake/m…

    jnunemaker committed Sep 21, 2012
    …ongomapper into andrewtimberlake-bug/issue-421
  10. Inherit connection and database name.

    jnunemaker committed Sep 21, 2012
    Subclasses were not getting these before. Only collection name was
    inherited.
    
    Fixes #420 and #424
  11. Rewrite part of the default key stuff

    jnunemaker committed Sep 21, 2012
    * has_default changed to default?
    * default_attributes removed in favor of a select/each with defaulted
    keys
  12. Merge branch 'feature/initialize_defaults' of https://github.com/wpet…

    jnunemaker committed Sep 21, 2012
    …erson/mongomapper into wpeterson-feature/initialize_defaults
  13. Only pass ssl key if present

    jnunemaker committed Sep 21, 2012
  14. Minor: formatting

    jnunemaker committed Sep 21, 2012
  15. Merge pull request #451 from wpeterson/bug/travis_build

    jnunemaker committed Sep 21, 2012
    Fix Travis MongoMapper build
Commits on Sep 20, 2012
  1. Declare TravisCI mongo service dependency.

    Winfield Peterson committed Sep 19, 2012
    Attempt to fix Travis build by enabling the mongo service.
    
    This service was disabled by default and now requires an explicit service config.