{"shas":[["1f87004b48cb57542f54d3ca709915565789b9ad","87f6d5e4fd3644c3c20800cde7fd3ad1569370b3@gmail.com","Fix typo in russian localization","Sergey Avseyev"],["8f61f5b58c109cda398bf5b2bfc639fb7989a57b","80bbdba12719bddf9b96c9ab5a58a494c90d75b6@gmail.com","Merge pull request #897 from avsej/patch-1.\n\nFix typo in russian localization","Konstantin Shabanov"],["835d3cab417a7a48d652ca89d17dfe0a127bdb5d","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Merge pull request #887 from romanbsd/master\n\nAccess attributes using a method, allows attributes overriding.","Durran Jordan"],["c41f627fefb5db2fae28bb2a24817de85028a5e1","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Document#attributes no longer returns a HashWithIndifferentAccess:\n\n- This is consistent with AR in that all keys in the attributes hash are\n  strings.\n- Document#raw_attributes will still return the same hash.","Durran Jordan"],["f2df92244ca11160e6d6a29c5c547d616f2ee60d","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","As far as attributes are concerned, we consume our own API internally:\n\n- Slap on the wrist to me for not adhering to this basic OO principle\n  earlier. Need to make sure the entire codebase does this.","Durran Jordan"],["a12adaff0644e5ac060f89d16bc673cf917c3462","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Replace all instances of raw_attributes calls with attributes","Durran Jordan"],["065fa7cad6d26a31c58f11fe8d6421767808bbd4","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Adding in Object#vacant to avoid calls to Active Support's blank?","Durran Jordan"],["a21b312778d1a68dfbfd5e23f6788d83289182f1","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Use #_vacant? instead of #blank? when raising document not found errors. Fixes #360.","Durran Jordan"],["17eeb176fc09f7b5d19f1617d42e55529afff81c","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Slight reworking of the way the factory instantiates documents:\n\n- The builders and creators now call the factory directory.\n- The relation builders no longer handle hash input.\n- Instantiating documents from the db without ids does not generate new\n  ones. Fixes #518.","Durran Jordan"],["f5b39a103d3528e278d101d7ceec23a464a3d709","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Splitting out factory into a build and from_db methods","Durran Jordan"],["2f77710e6d56b430308c9d254596f2b1cdfe1965","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Adding rdoc to observer, start refactor of spec","Durran Jordan"],["dbe6542460cb1c9ec91e86b3bab7bd892b686f8d","fa058af18af82151e7ab44c8416473c332a45857@gmail.com","Remove extraneous self from Mongoid::Paranoia","Bernerd Schaefer"],["c0d813815121f2887b5752ad799afaf896486e24","fa058af18af82151e7ab44c8416473c332a45857@gmail.com","Use same time for attribute and update in #remove","Bernerd Schaefer"],["b2eaa45decdd0418150dcb267a4da7a39e7fb94e","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Refactoring the observer spec","Durran Jordan"],["c7c3e49609464b967e343cdfdf611476a5156c0c","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Fixing update_attribute performance when same value provided:\n\n- There is no need to attempt to go through the save chain when the\n  attribute has not changed. The previous change to this had killed\n  performance in that situation, this commit restores it.","Durran Jordan"],["44d79ff5e97ab0dfc1a4d240823c16b98205251d","58d0ab9b51c404152910167b6f877123a5c94faf@redleafsoft.com","Fixes ruby 1.9 compatibility bug where ::instance_methods was only checked with string values and resulted existing methods overwritten with mongoid 'dirty' helper methods","Sergei Serdyuk"],["c1ff7a8f39b06cb4a1813c817847a57974c32cfe","58d0ab9b51c404152910167b6f877123a5c94faf@redleafsoft.com","Minor spec updates","Sergei Serdyuk"],["58f7516bfa8e13ac4150592c1e982d8efd5b67c6","fa058af18af82151e7ab44c8416473c332a45857@gmail.com","Document.field returns the created Field object","Bernerd Schaefer"],["ec38d04197558fc5e2e91ea19bc618d42de1c2b4","fa058af18af82151e7ab44c8416473c332a45857@gmail.com","Add Mongoid::Field.option for custom field options\n\nThis allows users of Mongoid to define custom field options, and execute\nhandlers when that option is provided.\n\nA few use-cases spring to mind:\n\n1. Auto-validations\n\nIt should be (fairly) trivial to implement field-level validations like\nDataMapper and ActiveRecord, with the most trivial example looking\nsomething like this.\n\n    Mongoid::Field.option :required do |model, field, required|\n      model.validates_presence_of field.name if required\n    end\n\nNow the block will be executed whenever a field is defined that includes\nthe key `:required` in its options:\n\n    Person.field :name, required: true\n    Person.field :age, required: false\n\nAll options provided are still stored on the Field, which should also\nallow for a richer level of introspection:\n\n    class Person\n      def required_fields\n        fields.select { |field| field.options[:required] }\n      end\n    end\n\n2. Mass Assignment\n\n    Mongoid::Field.option :accessible do |model, field, accessible|\n      model.attr_accessible field.name if accessible\n    end\n\n3. Re-writing option values, and other uses\n\n    # Turn :alias => :city into :alias => [:city]\n    Mongoid::Field.option :alias do |model, field|\n      field.options[:aliases] = [*field.options.delete(:alias)]\n    end\n\n    Mongoid::Field.option :aliases do |model, field, aliases|\n      aliases.each do |new_name|\n        model.alias_attribute new_name, field.name\n      end\n    end","Bernerd Schaefer"],["776baf6972fc700f5ea6c61861ac74822a5a82ba","91839c8ca080a1dba1f0752927e708c85486fa65@gmail.com","Merge pull request #916 from bernerdschaefer/master\n\nMinor tweaks to Mongoid::Paranoia","Durran Jordan"]],"ref":"refs/heads/master","size":76,"head":"cbb8323935d89338769b1950d06c2e407e22b3f4","push_id":33795185}