MongoDB Ruby Driver History
- Some minor improvements. See commit history.
- Since nothing major was reported for the RC, we're releasing.
Lots of cleanp and minor bug fixes.
- Issues resolved: http://jira.mongodb.org/browse/RUBY/fixforversion/10222
- Updated Java BSON to Java driver 2.4.
- Platform gem for JRuby bson.
- ReplSetConnection class. This must be used for replica set connections from now on. You can still use Connection.multi, but that method has been deprecated.
- Automated replica set tests. rake test:rs
- Check that request and response ids match.
- Several bug fixes. See the commit history for details.
- Important connection failure fix.
- ObjectId#to_s optimization (David Cuadrado).
- Distributed reads for replica set secondaries. See /docs/examples/replica_set.rb and http://api.mongodb.org/ruby/current/file.REPLICA_SETS.html for details.
- Note: when connecting to a replica set, you must use Connection#multi.
- Cursor#count takes optional skip and limit
- Collection#ensure_index for caching index creation calls
- Collection#update and Collection#remove now return error object when using safe mode
- Important fix for int/long serialization on bug introduced in 1.0.9
- Numerous tweaks and bug fixes.
- Two critical fixes to automated failover and replica sets.
- Bug passing :timeout to Cursor.
- Permit safe mode specification on Connection, Collection, and DB levels.
- Specify replica set name on connect to verify connection to the right set.
- Misc. reorganization of project and docs.
- Several critical JRuby bug fixes
- Fixes for JRuby in 1.9 mode
- Check keys and move id only when necessary for JRuby encoder
- Official JRuby support via Java extensons for BSON (beta)
- Connection#lock! and Connection#unlock! for easy fsync lock
- Note: BSON::Code is no longer a subclass of String.
- Significant performance improvements (with a lot of help from Hongli Lai)
- Cursor#rewind! and more consistent Cursor Enumberable behavior
- Deprecated ObjectID for ObjectId
- Numerous minor bug fixes.
- A few minor test/doc fixes.
- Better tests for replica sets and replication acknowledgment.
- Deprecated DB#error and DB#last_status
- Replica set support.
- Collection#map_reduce bug fix.
- Fix for bug introduced in 1.0.4.
- Removed deprecated
- Cursor admin option
- DB#create_index (use Collection#create_index)
- DB#command only takes hash options now
- j2bson executable (neomantra)
- Fixed bson_ext compilation on Solaris (slyphon)
- System JS helpers (neovintage)
- Use one mutex per thread on pooled connections (cremes)
- Check for CursorNotFound response flag
- MapReduce can return raw command output using :raw
- BSON::OrderedHash equality with other Ruby hashes (Ryan Angilly)
- Fix for broken Socket.send with large payloads (Frédéric De Jaeger)
- Lots of minor improvements. See commmits.
- Optimiztion for BSON::OrderedHash
- Some important fixes.
This is a minor release for fixing an incompatibility with MongoDB v1.5.2
- Fix for boolean response on commands for core server v1.5.2
- BSON.read_bson_document and b2json executable (neomantra)
- BSON::ObjectID() shortcut for BSON::ObjectID.from_string (tmm1)
- Various bug fixes.
- set Encoding.default_internal
- Added Grid#exist? and GridFileSystem#exist?
- Support for replication acknowledgment
- Support for $slice
- Namespaced OrderedHash under BSON (sleverbor)
2010-4-29 Note: if upgrading from versions prior to 0.20, be sure to upgrade to 0.20 before upgrading to 1.0.
Inspected ObjectID is represented in MongoDB extended json format.
Support for tailable cursors.
Configurable query response batch size (thx. to Aman Gupta)
bson_ext installs on early release of Ruby 1.8.5 (dfitzgibbon)
Deprecated DB#create_index. Use Collection#create_index index.
Removed deprecated Grid#put syntax; no longer requires a filename.
- Added bson gem dependency.
If upgrading from a previous version of the Ruby driver, please read these notes carefully, along with the 0.20_UPGRADE doc.
Support for new commands:
Query :fields options allows for values of 0 to exclude fields (houdini, railsjedi).
- Option to delete old versions of GridFileSystem entries.
- Filename is now optional for Grid#put.
- Option to write arbitrary attributes to a file: @grid.put(@data, :favorite_phrase => "blimey!")
- Indexes created on the chunks collection are now unique. If you have an existing chunks collection, you may want to remove
Removed the following deprecated items:
- GridStore class
- RegexpOfHolding class
- Paired connections must now be initialized with Connection.paired
BSON-related code extracted into two separate gems: bson and bson_ext (thx to Chuck Remes).
- mongo_ext no longer exists.
- BSON::Binary constructor can now take a string, which will be packed into an array.
- Exception class adjustments:
- Mongo::InvalidObjectID moved to BSON::InvalidObjectID
- Mongo::InvalidDocument moved to BSON::InvalidDocument
- Mongo::InvalidStringEncoding moved to BSON::InvalidStringEncoding
- Mongo::InvalidName replaced by Mongo::InvalidNSName and BSON::InvalidKeyName
- BSON types are now namespaced under the BSON module. These types include:
- MinKey and MaxKey
- Extensions compile on Rubinius (Chuck Remes).
Prior to 0.20
See git revisions.