Skip to content
Ruby driver for MongoDB
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.evergreen RUBY-1842 Test 4.2 server in CI (#1395) Jun 14, 2019
bin Don't make pry a gem dependency Jul 14, 2016
docs RUBY-1708 Support postBatchResumeToken in change streams (#1382) Jun 13, 2019
examples Fix for index creating examples Oct 22, 2015
gemfiles minor: test kerberos with jruby (#1064) Oct 9, 2018
lib RUBY-1796 Test writes in transactions do not send writeConcern when c… Jun 17, 2019
spec RUBY-1796 Test writes in transactions do not send writeConcern when c… Jun 17, 2019
.gitignore minor: ignore lockfiles in gemfiles directory Oct 9, 2018
.rspec RUBY-1597 Use a concise instafailing formatter in CI (#1166) Nov 26, 2018
.yardopts Build yard docs to yard-docs and update gitignore Jul 28, 2016
Gemfile ffi 1.11 requires ruby 2.0+, work around for ruby 1.9 support (#1374) Jun 4, 2019
LICENSE minor: update copyright year (#1199) Jan 4, 2019
NOTICE minor: update copyright year (#1199) Jan 4, 2019 RUBY-1821 Stop testing Ruby driver in Travis (#1363) May 28, 2019
Rakefile RUBY-1407 Document how to run tests on all cluster configurations (#1295 Mar 5, 2019
THIRD-PARTY-NOTICES RUBY-1362 Implement SASLprep for Ruby versions below 2.2 (#959) Jun 19, 2018
gem-public_cert.pem Update certificate Jan 22, 2019
mongo.gemspec Bump bson dependency to 4.4.2 to get the RUBY-1677 bug fix Jan 22, 2019

MongoDB Ruby Driver Code Climate Gem Version

The officially supported Ruby driver for MongoDB.


High level documentation and usage examples are located here.

API docs can be found here.

Support & Feedback

For issues, questions or feedback related to the Ruby driver, please look into our support channels. Please do not email any of the Ruby developers directly with issues or questions - you're more likely to get an answer quickly on the mongodb-user list on Google Groups.

Bugs & Feature Requests

Do you have a bug to report or a feature request to make?

  1. Visit our issue tracker and login (or create an account if necessary).
  2. Navigate to the RUBY project.
  3. Click 'Create Issue' and fill out all the applicable form fields.

When reporting an issue, please keep in mind that all information in JIRA for all driver projects (ex. RUBY, CSHARP, JAVA) and the Core Server (ex. SERVER) project is PUBLICLY visible.


  • Provide as much information as possible about the issue.
  • Provide detailed steps for reproducing the issue.
  • Provide any applicable code snippets, stack traces and log data.
  • Specify version information for the driver and MongoDB.


  • Provide any sensitive data or server logs.
  • Report potential security issues publicly (see 'Security Issues').

Security Issues

If you’ve identified a potential security related issue in a driver or any other MongoDB project, please report it by following the instructions here.

Running Tests

The driver uses RSpec as its primary testing tool. Most tests require a running MongoDB server. To test the driver against a single-node (standalone) deployment, first launch a server:

mkdir /tmp/mrb
mongod --dbpath /tmp/mrb --bind_ip --setParameter enableTestCommands=1

... then run the tests:

bundle exec rake

It is possible to run tests in a specific file, as well as use other test invocations supported by RSpec:

bundle exec rspec path/to/spec.rb:42

Note that certain user accounts have to be created for individual tests to succeed, and they are not created when the individual tests are run. The user accounts are created if you run rake as mentioned above, and you can also create them by running:

bundle exec rake spec:prepare

For further information about supported cluster configurations and how to configure the test suite, please see the README in the spec directory.

Release History

Full release notes and release history are available here.


Copyright (C) 2009-2019 MongoDB, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

You can’t perform that action at this time.