A newer version of this documentation is available.

View Latest

Couchbase Ruby Release Notes and Archives

      +
      Release notes, installation instructions, and download archive for the Couchbase Ruby Client.

      This page covers installation of the 3.2 versions of the Couchbase Ruby SDK, and release notes for all 3.x versions.

      SDK Installation

      Ruby SDK supports MRI Ruby versions 2.5, 2.6, 2.7, and 3.0. The source package is available through https://rubygems.org/gems/couchbase and can be installed with

      gem install couchbase

      Note that --pre is necessary when the SDK in Beta/Preview phase — gem install --pre couchbase — otherwise the latest stable release will be installed.

      In addition to rubygems.org, we also maintain official gem repositories, where we publish not only source version of the package, but also precompiled binaries for Linux and MacOS.

      Ruby ABI version

      Source URL

      3.0

      https://packages.couchbase.com/clients/ruby/3.0.0/

      2.7

      https://packages.couchbase.com/clients/ruby/2.7.0/

      2.6

      https://packages.couchbase.com/clients/ruby/2.6.0/

      To use official repository, it have to be registered in the .gemrc file:

      The example above selects repository with the packages for Ruby 2.7.x. For other version, please refer the table.

      The repository could be also specified in Gemfile for bundler. And in this case the source would be applied only for Couchbase SDK library:

      gem "couchbase", "3.2.0", :source => "https://packages.couchbase.com/clients/ruby/2.7.0/"

      Or run in terminal:

      gem install couchbase --clear-sources --source https://packages.couchbase.com/clients/ruby/2.7.0/

      And finally, it is possible to download the package and install from the file. In the notes below, we specify tables with links to every release package along with precompiled binaries.

      wget https://packages.couchbase.com/clients/ruby/sdk-3.2.0/couchbase-3.2.0-x86_64-linux-2.7.0.gem
      gem install couchbase-3.2.0-x86_64-linux-2.7.0.gem

      Version 3.2.0 (4 August 2021)

      This is the first GA release of the 3.2 series.

      • RCBC-301: Implemented metrics. This feature is enabled by default; it can be disabled in the connection string with enable_metrics=false, or programmatically:

        options = Cluster::ClusterOptions.new
        options.enable_metrics = false

        Extra options:

        options = Cluster::ClusterOptions.new
        options.metrics_emit_interval = 60_000 # in milliseconds, default 10 minutes
      • RCBC-234: Implemented tracing. This feature is enabled by default; it can be disabled in the connection string with enable_tracing=false, or programmatically:

        options = Cluster::ClusterOptions.new
        options.enable_tracing = false

        Extra options:

        options = Cluster::ClusterOptions.new
        options.orphaned_emit_interval = 600_000 # in milliseconds
        options.orphaned_sample_size = 64
        
        options.threshold_emit_interval = 600_00 # in milliseconds
        options.threshold_sample_size = 64
        options.key_value_threshold = 500 # in milliseconds
        options.query_threshold = 1_000 # in milliseconds
        options.view_threshold = 1_000 # in milliseconds
        options.search_threshold = 1_000 # in milliseconds
        options.analytics_threshold = 1_000 # in milliseconds
        options.management_threshold = 1_000 # in milliseconds
      • RCBC-318: Parse and use revEpoch field in configuration for improved bucket configuration handling.

      • RCBC-324: Query error code 13014 is now mapped to an AuthenticationFailure exception.

      • RCBC-227: Remote links for analytics can now be managed from the SDK, enabling connection to an external dataset such as an AWS S3 bucket.

      • RCBC-283: Added Collections support for Search queries.

      • RCBC-311: Fixed scope qualifer encoding for analtyics to work with latest decoding.

      • Dropped support of Ruby 2.5.

      • Many smaller fixes and improvements.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.2.0.sha256sum

      Source Archive

      couchbase-3.2.0.gem

      Linux x86_64

      3.0.0

      couchbase-3.2.0-x86_64-linux-3.0.0.gem

      Linux x86_64

      2.7.0

      couchbase-3.2.0-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.2.0-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.2.0-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      3.0.0

      couchbase-3.2.0-x86_64-darwin-19-3.0.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.2.0-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.2.0-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.2.0-x86_64-darwin-19-2.5.0.gem

      macOS 11 x84_64

      3.0.0

      couchbase-3.2.0-x86_64-darwin-20-3.0.0.gem

      macOS 11 x84_64

      2.7.0

      couchbase-3.2.0-x86_64-darwin-20-2.7.0.gem

      macOS 11 x84_64

      2.6.0

      couchbase-3.2.0-x86_64-darwin-20-2.6.0.gem

      macOS 11 x84_64

      2.5.0

      couchbase-3.2.0-x86_64-darwin-20-2.5.0.gem

      macOS 11 Universal

      2.6.0

      couchbase-3.2.0-universal-darwin-20.gem

      Version 3.1.1 (8 April 2021)

      This is the second GA release of 3.1 series.

      • RCBC-309: Allow subdocument remove operation with empty path.

      • RCBC-316: Fix exceptions for collections manager.

      • RCBC-315: Raise CasMismatch exception only when query returns code 12009 with "CAS mismatch" in message.

      • RCBC-298: Support preserving expiration for mutations. Collection#replace, Collection#upsert, and Collection#mutate_in methods now accept new boolean option preserve_expiry which determines whether the server will update expiration for existing documents (false by default).

        In the following example, the server will not reset expiration if the document already exists, and only use 100 seconds if the document has to be created.

        collection.upsert(doc_id, {answer: 43},
            Options::Upsert(expiry: 100, preserve_expiry: true))
      • RCBC-317: Allow to disable snappy compression with enable_compression=false in connection string.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.1.1.sha256sum

      Source Archive

      couchbase-3.1.1.gem

      Linux x86_64

      3.0.0

      couchbase-3.1.1-x86_64-linux-3.0.0.gem

      Linux x86_64

      2.7.0

      couchbase-3.1.1-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.1.1-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.1.1-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      3.0.0

      couchbase-3.1.1-x86_64-darwin-19-3.0.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.1.1-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.1.1-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.1.1-x86_64-darwin-19-2.5.0.gem

      macOS 11 x84_64

      3.0.0

      couchbase-3.1.1-x86_64-darwin-20-3.0.0.gem

      macOS 11 x84_64

      2.7.0

      couchbase-3.1.1-x86_64-darwin-20-2.7.0.gem

      macOS 11 x84_64

      2.6.0

      couchbase-3.1.1-x86_64-darwin-20-2.6.0.gem

      macOS 11 x84_64

      2.5.0

      couchbase-3.1.1-x86_64-darwin-20-2.5.0.gem

      macOS 11 Universal

      2.6.0

      couchbase-3.1.1-x86_64-darwin-20.gem

      Version 3.1.0 (24 March 2021)

      This is the first GA release of 3.1 series.

      • RCBC-314: Fixed class resolution for Analytics at scope level.

      • RCBC-276: Marked create_as_deleted of subdocument API as private.

      • RCBC-287: Updated URLs of endpoints for Collections management API.

      • RCBC-303: Deprecated CollectionManager#get_scope; instead the application should use CollectionManager#get_scopes and iterate/filter the results.

      • RCBC-313: Send collection name as value on network level for 0xbb (GET_COLLECTION_ID) command.

      • RCBC-302: Allow to disable configuration push from server (using enable_clustermap_notification=false in the connection string).

      • RCBC-307: Allow to disable unordered execution of commands (using enable_unordered_execution=false in the connection string).

      • The library does not keep GVL lock durng IO anymore. It releases lock when scheduling a command, and acquires it back once the command is completed. This change allows runtime to use fibers or threads, and do something useful while the operation is in progress.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.1.0.sha256sum

      Source Archive

      couchbase-3.1.0.gem

      Linux x86_64

      3.0.0

      couchbase-3.1.0-x86_64-linux-3.0.0.gem

      Linux x86_64

      2.7.0

      couchbase-3.1.0-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.1.0-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.1.0-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      3.0.0

      couchbase-3.1.0-x86_64-darwin-19-3.0.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.1.0-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.1.0-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.1.0-x86_64-darwin-19-2.5.0.gem

      macOS 11 x84_64

      3.0.0

      couchbase-3.1.0-x86_64-darwin-20-3.0.0.gem

      macOS 11 x84_64

      2.7.0

      couchbase-3.1.0-x86_64-darwin-20-2.7.0.gem

      macOS 11 x84_64

      2.6.0

      couchbase-3.1.0-x86_64-darwin-20-2.6.0.gem

      macOS 11 x84_64

      2.5.0

      couchbase-3.1.0-x86_64-darwin-20-2.5.0.gem

      Version 3.0.3 (3 February 2021)

      This is the fourth GA release of 3.0 series.

      • RCBC-226: Add minimal durability setting in bucket manager.

      • RCBC-238: Refactored expiration (TTL) options:

        • It accepts Time instance in addition to Duration (#in_seconds);

        • When Integer is passed, it implicitly converts to epoch time to resolve disambiguation.

      • RCBC-291: Implementation of ActiveSupport::Cache::Store interface. To enable it, put the following lines into application configuration section:

      config.cache_store = :couchbase_store, {
        connection_string: "couchbase://localhost",
        username: "app_cache_user",
        password: "s3cret",
        bucket: "app_cache"
      }
      • RCBC-292: Swap bytes in CAS for compatiblity. Now the value of CAS matches the representation in other services (e.g. Query).

      • RCBC-300: Allow the enforcement of PLAIN SASL mechanism. This is necessary when LDAP authentication is enabled, but the SDK does not use client certification to authenticate.

      • RCBC-237: Added collections support for analytics. Scope#analytics_query automatically sets scope qualifier. Also, it is now possible to provide custom qualifier in the options.

      • Status of single operation now accessible on result object of get_multi, upsert_multi, and remove_multi operations.

      • Error context objects now accessible on exceptions (via #context method).

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.0.3.sha256sum

      Source Archive

      couchbase-3.0.3.gem

      Linux x86_64

      3.0.0

      couchbase-3.0.3-x86_64-linux-3.0.0.gem

      Linux x86_64

      2.7.0

      couchbase-3.0.3-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.0.3-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.0.3-x86_64-linux-2.5.0.gem

      macOS 11 Universal

      2.6.0

      couchbase-3.0.3-universal-darwin-20-2.6.0.gem

      macOS 10.15 x84_64

      3.0.0

      couchbase-3.0.3-x86_64-darwin-19-3.0.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.0.3-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.0.3-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.0.3-x86_64-darwin-19-2.5.0.gem

      macOS 10.13 x84_64

      3.0.0

      couchbase-3.0.3-x86_64-darwin-17-3.0.0.gem

      macOS 10.13 x84_64

      2.7.0

      couchbase-3.0.3-x86_64-darwin-17-2.7.0.gem

      macOS 10.13 x84_64

      2.6.0

      couchbase-3.0.3-x86_64-darwin-17-2.6.0.gem

      macOS 10.13 x84_64

      2.5.0

      couchbase-3.0.3-x86_64-darwin-17-2.5.0.gem

      Version 3.0.2 (3 November 2020)

      This is the third GA release of 3.0 series.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.0.2.sha256sum

      Source Archive

      couchbase-3.0.2.gem

      Linux x86_64

      2.7.0

      couchbase-3.0.2-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.0.2-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.0.2-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.0.2-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.0.2-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.0.2-x86_64-darwin-19-2.5.0.gem

      macOS 10.13 x84_64

      2.7.0

      couchbase-3.0.2-x86_64-darwin-17-2.7.0.gem

      macOS 10.13 x84_64

      2.6.0

      couchbase-3.0.2-x86_64-darwin-17-2.6.0.gem

      macOS 10.13 x84_64

      2.5.0

      couchbase-3.0.2-x86_64-darwin-17-2.5.0.gem

      Version 3.0.1 (5 October 2020)

      This is the second GA release.

      • RCBC-219, RCBC-252: Implemented diagnostics API.

      • RCBC-272: Allow disabling of scoring in Full-Text Search results.

      • RCBC-229: Geopolygon Search support.

      • RCBC-271: Enhanced user management for collections.

      • RCBC-230: Added query option for flex index.

      • RCBC-233: Updated eviction policy types (now it covers ephemeral buckets).

      • RCBC-274: Skip non-kv nodes when switching networks (fixes warnings in Cloud environment).

      • RCBC-266: Deprecated GetResult.expiry.

      • Fixed Query prepared statements cache for older servers.

      • Build and test system improvements.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.0.1.sha256sum

      Source Archive

      couchbase-3.0.1.gem

      Linux x86_64

      2.7.0

      couchbase-3.0.1-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.0.1-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.0.1-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.0.1-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.0.1-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.0.1-x86_64-darwin-19-2.5.0.gem

      macOS 10.13 x84_64

      2.7.0

      couchbase-3.0.1-x86_64-darwin-17-2.7.0.gem

      macOS 10.13 x84_64

      2.6.0

      couchbase-3.0.1-x86_64-darwin-17-2.6.0.gem

      macOS 10.13 x84_64

      2.5.0

      couchbase-3.0.1-x86_64-darwin-17-2.5.0.gem

      Version 3.0.0 (8 September 2020)

      This is the first GA release.

      Platform

      Ruby ABI

      File

      Checksums

      couchbase-3.0.0.sha256sum

      Source Archive

      couchbase-3.0.0.gem

      Linux x86_64

      2.7.0

      couchbase-3.0.0-x86_64-linux-2.7.0.gem

      Linux x86_64

      2.6.0

      couchbase-3.0.0-x86_64-linux-2.6.0.gem

      Linux x86_64

      2.5.0

      couchbase-3.0.0-x86_64-linux-2.5.0.gem

      macOS 10.15 x84_64

      2.7.0

      couchbase-3.0.0-x86_64-darwin-19-2.7.0.gem

      macOS 10.15 x84_64

      2.6.0

      couchbase-3.0.0-x86_64-darwin-19-2.6.0.gem

      macOS 10.15 x84_64

      2.5.0

      couchbase-3.0.0-x86_64-darwin-19-2.5.0.gem

      macOS 10.13 x84_64

      2.7.0

      couchbase-3.0.0-x86_64-darwin-17-2.7.0.gem

      macOS 10.13 x84_64

      2.6.0

      couchbase-3.0.0-x86_64-darwin-17-2.6.0.gem

      macOS 10.13 x84_64

      2.5.0

      couchbase-3.0.0-x86_64-darwin-17-2.5.0.gem

      Version 3.0.0.beta.1 (7 August 2020)

      Older Releases

      Although no longer supported, documentation for older releases continues to be available in our docs archive.