A newer version of this documentation is available.

View Latest

Couchbase Scala SDK Release Notes and Archives

    +
    {description}

    Version 1.2.2 (6 October 2021)

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.2.2

    • com.couchbase.client:core-io:2.2.2

    • io.projectreactor:reactor-core:3.4.9

    • org.reactivestreams:reactive-streams:1.0.3

    Improvements

    • SCBC-265: Added an eventing management API.

    • SCBC-332: Fixes to JsonObject and JsonArray: improvements to the API for Safe transformations, fromSeq, fixed some conversion issues.

    • JVMCBC-1015: Improved client side error message when TLS is enforced on the server side.

    • JVMCBC-1016: Gracefully handle more invalid connection string cases.

    • JVMCBC-1022: Batch-Log messages in DefaultEventBus. Now events which are overflowing are not directly logged to stderr but rather batched up and logged at interval. Note that this implies some "loss of precision", as not all dropped events are logged - one event per type is preserved.

    Interface Affecting

    • SCBC-331: Promoted Manager interfaces to committed.

    Bugs

    • SCBC-330: Ensured that JsonObjectSafe is recursive.

    • JVMCBC-1017: Fixed issue with Threshold Logging Tracing not working due to RequestContext not being set.

    • JVMCBC-1020: Added target property to QueryRequest and ensured it is honored for prepare and execute, so they are both run on the same node. This fix removes need for TargetedQueryRequest.

    Version 1.2.1 (1 September 2021)

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.2.1

    • com.couchbase.client:core-io:2.2.1

    • io.projectreactor:reactor-core:3.4.9

    • org.reactivestreams:reactive-streams:1.0.3

    Improvements

    • SCBC-328: Update collections compat dependency.

    • SCBC-325: Add serialization support for Apache Spark.

    • SCBC-329: Expose all builder methods on SecurityConfig.

    • JVMCBC-1010: Maintenance dependency bump.

    • JVMCBC-990: WaitUntilReady timing out with 6.0.x and unhealthy seed nodes.

    • JVMCBC-999: Properly map server query timeout while streaming.

    • JVMCBC-1004: Configure and apply default log level for ConsoleLogger.

    • JVMCBC-1005: Allow to export Context as Map.

    • JVMCBC-1006: ErrorContext must be included in message.

    Bug fixes

    • JVMCBC-1002: Default log level reverted to INFO.

    • JVMCBC-1007: LoggingMeter incorrectly marked as Volatile in SDK 3.2.

    Version 1.2.0 (20 July 2021)

    Version 1.2.0 is the first GA release of the 1.2 series, promoting to GA support for the scopes and collections provided by Couchbase Server 7.0, and also OpenTelemetry. In addition, a supported release for Scala 2.13 is now provided.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.2.0

    • com.couchbase.client:core-io:2.2.0

    • io.projectreactor:reactor-core:3.4.6

    • org.reactivestreams:reactive-streams:1.0.3

    Improvement

    • SCBC-217: Provide a published and officially supported Scala 2.13 build.

    • SCBC-231: Update analytics management API to support compound dataverse names.

    • SCBC-232: Manage remote analytics links.

    • SCBC-240: Add analytics support for collections.

    • SCBC-309: Map Query Error 13014 to AuthenticationException.

    • SCBC-205: Provide a Scala version of the Travel Sample Application backend.

    • JVMCBC-980: Add exception wrappers to Tracers and Meters.

    • JVMCBC-987: Allow supplying an SDK2-compatible memcached hashing strategy.

    • JVMCBC-988: Map Query Error 13014 to AuthenticationException.

    • JVMCBC-989: Add timeout_ms to threshold logging tracer output.

    • JVMCBC-991: Optimize metric dispatching.

    • JVMCBC-992: Cache NodeIdentifier in NodeInfo.

    • JVMCBC-993: Optimize early discard of events which are not going to be logged.

    • JVMCBC-996: Throw FeatureNotAvailableException if scope level queries are not available.

    • JVMCBC-997: Duplicate attributes from dispatch_to_server to improve tracing.

    • JVMCBC-998: Performance: Do not set tracing spans if not needed.

    • JVMCBC-981: Support CoreHttpClient requests to manager service.

    • JVMCBC-984: Dependency bump: Netty 4.1.63 to 4.1.65, micrometer 1.6.6 to 1.7.0.

    • JCBC-1242, JCBC-1837: Add OSGi bundle.

    • JCBC-1787: Validate expiry instants.

    • JCBC-1838: Add support for SDK2-compatible LegacyTranscoder.

    • JCBC-1841: Update OpenTelemetry to 1.3.0.

    Interface Changes

    All interface changes are to interfaces that are currently in beta and marked @Stability.Volatile or @Stability.Uncommitted.

    • JVMCBC-978: Rename AggregatingMeter to LoggingMeter.

    • JVMCBC-934: Threshold and Orphan output is now in new format.

    • JVMCBC-979: Rename ThresholdRequestTracer to ThresholdLoggingTracer

    • SCBC-297: Promote collection APIs from Volatile to Committed.

    Bug Fixes

    • SCBC-270: Add redundant error handling for collection manager errors.

    • SCBC-296: JsonArraySafe should create an object wrapping a JsonObject.

    • JVMCBC-949: Opening a non-default collection on an memcached bucket now fails fast.

    • JVMCBC-983: Ignore slow subscribers on certain Flux intervals.

    Version 1.1.6 (4 June 2021)

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.6

    • com.couchbase.client:core-io:2.1.6

    • io.projectreactor:reactor-core:3.4.6

    • org.reactivestreams:reactive-streams:1.0.3

    Bug Fixes

    • JVMCBC-972: Only open one GCCCP connection per node.

    Improvements

    • SCBC-237: Added ThresholdRequestTracerConfig and support for it in ClusterEnvironment.

    • SCBC-286: Added AggregatingMeterConfig, and allow the core meter property to be customized via ClusterEnvironment.

    • JVMCBC-939: Improve no collection access handling.

    • JVMCBC-974: Restructure AggregatingMeter output format.

    • JVMCBC-975: Further improve wait until ready diagnostics.

    • JVMCBC-977: Improve bucket configuration handling (revEpoch).

    Version 1.1.5 (6 May 2021)

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.5

    • com.couchbase.client:core-io:2.1.5

    • io.projectreactor:reactor-core:3.4.5

    • org.reactivestreams:reactive-streams:1.0.3

    Improvements

    • SCBC-266: Add FTS support for collections.

    • SCBC-281: Add Support to Preserve TTL.

    Version 1.1.4 (7 April 2021)

    While there are no changes specific to the Scala SDK in this release, it does inherit fixes from the underlying core-io release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.4

    • com.couchbase.client:core-io:2.1.4

    • io.projectreactor:reactor-core:3.4.4

    • org.reactivestreams:reactive-streams:1.0.3

    Bug Fixes

    • JCBC-1798: Fixes ViewResult.metaData() throwing Exception when debug=true.

    Improvements

    • JCBC-1786: Transcoders now allow contentAs(Object.class). Java Map and List collections are used to represent JSON objects and arrays.

    • JCBC-1795: Allow MutateInSpec.remove(""), which removes the entire document.

    Version 1.1.3 (2 March 2021)

    Version 1.1.3 is the fourth release of the 1.1 series, bringing stabilizations and enhancements over 1.1.2.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.3

    • com.couchbase.client:core-io:2.1.3

    • io.projectreactor:reactor-core:3.4.3

    • org.reactivestreams:reactive-streams:1.0.3

    Improvements

    • SCBC-285: Expose property loading on environment.

    • JVMCBC-924, JVMCBC-925: Updated dependencies: Netty to 4.1.59, netty-tcnative-boringssl-static to 2.0.36, Reactor to 2.4.3, Jackson to 2.12.1.

    • JVMCBC-919: Support for Project Reactor BlockHound integration.

    • JVMCBC-926: Performance: Replace new byte[] full copies with ByteBufUtil.getBytes.

    • JVMCBC-927: Performance: Improve performance of metrics hot code path.

    Bugs

    • JVMCBC-930: Threshold and Orphan Reporting now report the correct time units.

    • JVMCBC-932: Fixed a memory leak when OrphanReporter is disabled.

    • JVMCBC-933: ThresholdRequestTracer and OrphanReporter now use bounded queues.

    Internal Improvements

    • JVMCBC-912: Refactor property loading.

    • JVMCBC-918: Move ProjectionsApplier into core.

    • JVMCBC-920: Move MutationState logic to core.

    • JVMCBC-921: Add OpenTelemetry attributes for spans.

    • JVMCBC-929: Retain stability annotations at runtime.

    • SCBC-284: Expose package-level APIs for Spark interop.

    Version 1.1.2 (2 February 2020)

    Version 1.1.2 is the third release of the 1.1 series, bringing stabilizations and enhancements over 1.1.1.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.2

    • com.couchbase.client:core-io:2.1.2

    • io.projectreactor:reactor-core:3.4.1

    • org.reactivestreams:reactive-streams:1.0.3

    Bugs

    • SCBC-282: Collection map is no longer refreshed when using the default scope and default collection.

    API Affecting

    • SCBC-288: CollectionManager::getScope is now deprecated, in favour of using getAllScopes.

    Enhancements

    • JVMCBC-915: As a performance optimization, loading a collection now only fetches the information required for that collection, rather than the full collection manifest.

    • JVMCBC-916: Any send HTTP request will send a hostname if hostnames are used, rather than IP, leading to consistent hostname use across the system.

    Version 1.1.1 (12 January 2020)

    Version 1.1.1 is the second release of the 1.1 series, bringing stabilizations and enhancements over 1.1.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.1

    • com.couchbase.client:core-io:2.1.1

    • io.projectreactor:reactor-core:3.4.1

    • org.reactivestreams:reactive-streams:1.0.3

    Bugs

    • JVMCBC-909: Retry opening the bucket until timeout when it is not found, to allow for it not yet being created.

    • JVMCBC-910: WaitUntilReady will now wait if bucket not present yet, before it starts to time out.

    • SCBC-274: Prepared non-adhoc queries on scopes were failing, as query_context was not being passed to the individual prepare and/or execute statements. This has now been fixed, and scope-level queries are working as expected.

    Enhancements

    • SCBC-273: Exposed partition information from the query management API on QueryIndex class.

    • SCBC-275: Escape the scope for scope-level queries now enabled, as a fix in the server means that this works.

    Version 1.1.0 (2 December 2020)

    Version 1.1.0 is the first GA release of the 1.1 series, bringing stabilizations and enhancements over 1.0.10 and the 1.0 SDK, and adding features to support Couchbase Server 6.6 and 7.0β.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.1.0

    • com.couchbase.client:core-io:2.1.0

    • io.projectreactor:reactor-core:3.4.0

    • org.reactivestreams:reactive-streams:1.0.3

    Enhancements

    • SCBC-241: Refactored Document Expiry Duration.

    • SCBC-253: Added disableScoring parameter for Search.

    • SCBC-229: The minimum durability level can now be configured on the BucketManager.

    Version 1.0.10 (3 November 2020)

    Version 1.0.10 is a maintenance release, bringing enhancements over the last stable release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.10

    • com.couchbase.client:core-io:2.0.11

    • io.projectreactor:reactor-core:3.3.9.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Enhancements

    • JVMCBC-898: Added fallback for lastDispatchedTo in context, to improve debuggability.

    • JVMCBC-899: Updated OpenTelemetry to 0.9.1.

    • SCBC-252: Enhanced user management for collections/RBAC, to support future 7.0 release.

    Version 1.0.9 (7 October 2020)

    Version 1.0.9 is a maintenance release, bringing enhancements and bugfixes over the last stable release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.9

    • com.couchbase.client:core-io:2.0.10

    • io.projectreactor:reactor-core:3.3.9.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Bug Fixes

    • SCBC-254: Fixed a decode error (allocstall) on BucketSettings with certain long values sent from particular server versions by swapping out upickle for JsonObject decoding.

    • SCBC-257: Fixed FTS serialization issues.

    • JVMCBC-885: Allow overriding of BestEffortRetryStrategy.

    • JVMCBC-889: Make sure WaitUntilReady always times out.

    • JVMCBC-890: Enforce only negotiate PLAIN when using TLS with PasswordAuthenticator.

    • JVMCBC-892: Service pool idle time check now happen more often.

    • JVMCBC-894: BatchHelper: handle success case with no body gracefully.

    • JVMCBC-872: Subdoc 'no access' error code is now reported correctly. This helps users to identify and fix permissions errors for system XATTRs.

    Enhancements

    • SCBC-233: Geopolygon search support.

    • SCBC-234: Added support for FTS hints (flex index).

    • SCBC-236: Added ephemeral bucket management support.

    • SCBC-238: Added N1QL support for collections, via new Scope.query method.

    • SCBC-249: Added GetResult.expiryTime(), which returns an Instant vs GetResult.expiry()'s Duration.

    • JVMCBC-888, JVMCBC-893: Dependency bumps: Netty to 4.1.52.Final, OpenTelemetry to 0.8.

    • JVMCBC-886: Improved LDAP auth failure handling.

    • JVMCBC-896: Fast dispatch pooled requests.

    Version 1.0.8 (1 September 2020)

    Version 1.0.8 is the ninth release of the Scala SDK, bringing enhancements and bugfixes over the last stable release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.8

    • com.couchbase.client:core-io:2.0.9

    • io.projectreactor:reactor-core:3.3.9.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Bug Fixes

    • JVMCBC-805: The client now handles bootstrapping against nodes much better which do not have the data service enabled (in an MDS setup).

    • JVMCBC-882: A bug has been fixed where when bootstrapping against a node with no data service enabled, the endpoint would not be cleaned up and would keep trying to reconnect.

    • JVMCBC-872: The client now more explicitly handles an error response code (NO_ACCESS) when a subdocument request is performed against a system xattr.

    • JVMCBC-873: Durability information is now properly unwrapped from an optional when exported and dumped (for example as part of an exception).

    • JVMCBC-880: The client now trackes multiple parallel bucket open attempts (against different buckets) in a better way, making sure that an internal state is only switched when all those bucket open attempts have completed (and not just the first one).

    • JVMCBC-878: EndpointDiagnostics had the local and remote hostnames mixed up, they now show up in the correct order.

    Enhancements

    • JVMCBC-883: The client is now a little less verbose when performing a DNS SRV request and the underlying JDK operation times out.

    • JVMCBC-879: Updated internal and external dependencies to their latest maintenance releases.

    • JVMCBC-874: When dealing with unknown collections, the SDK now returns a more user friendly retry reason when it can (outdated manifest vs. collection not found).

    • JVMCBC-875: On the request timeout exception, the retry reasons are now accessible directly.

    Version 1.0.7 (4 August 2020)

    Version 1.0.7 is the eighth release of the Scala SDK, bringing enhancements, and bugfixes over the last stable release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.7

    • com.couchbase.client:core-io:2.0.8

    • io.projectreactor:reactor-core:3.3.8.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Bug Fixes

    • SCBC-247: Removed cas from IncrementOptions and DecrementOptions. CAS is not supported by the underlying protocol and should not have been exposed in these options.

    • JVMCBC-870: A bug in the chunk response parser prohibited responses meant that View reduce responses were never completed, and as a result timed out on the user side. The completion of view results with reduce enabled has now been fixed.

    Enhancements

    • JVMCBC-867: Performance improvement: do not grab ByteBuf slice when extracting server response time.

    • JVMCBC-869: Maintenance dependency bump: Netty → 4.1.51, Jackson → 2.11.1, Reactor → 3.3.7, OpenTelemetry → 0.6.0, Reactor Scala Extensions → 0.7.1.

    Version 1.0.6 (14 July 2020)

    Version 1.0.6 is the seventh release of the Scala SDK.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.6

    • com.couchbase.client:core-io:2.0.7

    • io.projectreactor:reactor-core:3.3.5.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Enhancements

    • JVMCBC-865: Change the default idle timeout to 4.5s for http connections, to support performance improvements in query service.

    Bug Fixes

    • SCBC-244: ViewQuery with keys does not work.

    • JVMCBC-849: Redundant global loading exceptions no longer propagated — now logged at debug level.

    • JVMCBC-856: A just-opened connection in pool no longer gets cleaned up prematurely .

    • JVMCBC-858: Channel writeAndFlush failures are no longer ignored.

    • JVMCBC-862: Race condition with node identifier change on bootstrap identified. New logic and some changes to the config provider code ensures that retry and resubscribe picks up fresh seed nodes.

    • JVMCBC-863: Bucket-Level ping report no longer includes other view and KV services buckets.

    • JVMCBC-866: Trailing : no longer added to IPv6 addresses without []. 'invalid IPv6 address' warnings now no longer produced when trying to connect to a valid Ipv6 address thus specified.

    Version 1.0.5 (2 June 2020)

    Version 1.0.5 is the sixth release of the Scala SDK. It brings no new changes to the Scala client itself, but inherits enhancements and bugfixes over the last stable release from the core-io dependency.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.5

    • com.couchbase.client:core-io:2.0.6

    • io.projectreactor:reactor-core:3.3.5.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Enhancements

    • JVMCBC-852: Bumped Reactor to 3.3.5, Netty to 4.1.50.Final, and Jackson to 2.11.0.

    • JVMCBC-693: For performance, the KV bootstrap sequence is now partially pipelined.

    Bug Fixes

    • JVMCBC-849: Duplicate global loading exceptions are now swallowed to remove redundant warnings from logging (this was a cosmetic-only issue).

    Version 1.0.4 (7 May 2020)

    Version 1.0.4 is the fifth release of the Scala SDK. It brings no new changes to the Scala client itself, but inherits enhancements and bugfixes over the last stable release from the core-io dependency.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.4

    • com.couchbase.client:core-io:2.0.5

    • io.projectreactor:reactor-core:3.3.4.RELEASE

    • org.reactivestreams:reactive-streams:1.0.3

    Enhancements

    • JVMCBC-841: Bumped Netty dependency to 2.0.30, and reactor to 3.3.4.

    Bug Fixes

    • JVMCBC-845: If a rebalance is stopped in the middle, an edge case occasionally causes KV ops to time out as the fast forward map is chosen over the retry. The behavior has now been changed so that the client will try the old and new servers to make sure the operation eventually gets dispatched to the right node.

    Version 1.0.3 (7 April 2020)

    Version 1.0.3 is the fourth release of the Scala SDK. It brings no new changes to the Scala client itself, but inherits enhancements and bugfixes over the last stable release from the core-io dependency.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.3

    • com.couchbase.client:core-io:2.0.4

    • io.projectreactor:reactor-core:3.3.1.RELEASE

    • org.reactivestreams:reactive-streams:1.0.2

    Enhancements

    • JVMCBC-830: Added more convenient overloads for SecurityConfig and CertAuth. These overloads initialize both the SecurityConfig and the CertificateAuthenticator directly from a KeyStore or TrustStore.

    • JVMCBC-831: Improves timeout for waitUntilReady — the waitUntilReady helper should now throw a proper timeout exception.

    • JVMCBC-832: Added support for multiple ports per hostname in the connection string — without having to use the explicit SeedNode set overload.

    • JVMCBC-835: Using "localhost:8091" as a connection string would set the kv bootstrap port to 8091, which is not desired behavior. To prevent this from happening again, the code now checks for this condition, fails fast, and also provides guidance on what the connection string should look like instead.

    • JVMCBC-836: Enabled Unordered Execution by Default.

    • JVMCBC-837: Updates OpenTelemetry to 0.3 (beta).

    • JVMCBC-839: Bootstrap will now correctly use the mapped port if alternate addr is present.

    Bug Fixes

    • JVMCBC-834: 'CollectionNotFoundException' now triggers a retry, and if no collection refresh is currently in progress it will proactively trigger a new one. Now Docs created under custom collection should no longer raise an exception when a collection has been created in the meantime, but the collection is not found as no refresh is in progress.

    • JVMCBC-826: A NullPointerException was occuring when LDAP is enabled. The code now explicitly fails the connection with a descriptive error message instructing the user what to do next (either use TLS which is preferred) or enable PLAIN on the password authenticator (insecure).

    • JVMCBC-827: Search query results row_hit typo resulted in 0 being returned for total rows. This has now been fixed.

    • JVMCBC-828: Omit internal config request in orphan reporting.

    Version 1.0.2 (3 March 2020)

    Version 1.0.2 is the third release of the Scala SDK, bringing enhancements and bugfixes over the last stable release.

    The supported and tested dependencies for this release are:

    • com.couchbase.client:scala-client:1.0.2

    • com.couchbase.client:core-io:2.0.3

    • io.projectreactor:reactor-core:3.3.1.RELEASE

    • org.reactivestreams:reactive-streams:1.0.2

    Enhancements

    • JVMCBC-813: Improved error message for bucket is missing.

    • JVMCBC-815: Check if key exceeds size limits.

    • JVMCBC-818: Trimmed netty stack in connect failures for more readable output.

    • JVMCBC-819: Distinguished bucket not found in select bucket failures.

    • JVMCBC-823: Added a global component to the core id.

    • JVMCBC-825: Support added for new VATTR HELLO flag.

    • SCBC-43: With huge thanks to our community, who submitted the patch, it is now possible to build versions of the SDK for 2.11 and 2.13. Couchbase only officially provides, tests and supports a Scala 2.12 build currently, but users are welcome to build their own jars for 2.11 or 2.13 following the README instructions.

    Bug Fixes

    • SCBC-200: Dependencies now correctly shaded.

    • SCBC-207: Exists no longer returns wrong value if executed right after remove.

    • SCBC-216: Properly clear cache when repreparing/retrying query.

    • JVMCBC-824: Native Netty transports not included, resulting in fallback to default implementation. This was a regression in the 2.0.2 core-io release.

    • JCBC-1600: Using expiry together with document flags on a Sub-Document mutateIn no longer causes an incorrect flags field to be sent.

    Version 1.0.1 (5th February 2020)

    Version 1.0.1 is the second release of the 1.0 series, bringing new features, enhancements, and bugfixes over the last stable release.

    Stability Enhancements & Bug Fixes

    • SCBC-192: All scaladoc warnings fixed.

    • SCBC-193: When creating buckets, numReplicas can now be specified.

    New Features & Enhancements

    • SCBC-190: Exposed enableDnsSrv parameter on IoConfig(), allowing DNS SRV to be used.

    • SCBC-204: Added support for new server flag createAsDeleted — for internal use only.

    • SCBC-201: Exposed Java core environment through Scala ClusterEnvironment, allowing the event-bus to be accessed.

    • SCBC-198: Exposed environment getter through cluster. This allows a constructed environment to be shutdown without having to maintain a reference to it.

    Version 1.0.0 (17th January 2020)

    This is the first General Availability (GA) release of the new Couchbase Scala SDK. It brings a large number of improvements, bug-fixes and API changes from the previous beta release.

    Stability Enhancements & Bug Fixes

    • SCBC-147: QueryIndexManager should return only GSI indexes

    • SCBC-151: Make sure all reactive ops are deferred; this ensures that collection.reactive.remove(…​) won’t perform a remove until the SMono is subscribed to

    • SCBC-154: Make UserManager handle pre-LDAP clusters

    • SCBC-157: Handle projections of objects inside arrays correctly

    • SCBC-158: Handle 'too many set inserts' internal error while converting JSON to case classes

    • SCBC-163: ViewQuery does not send request

    • SCBC-167: Fix FTS consistentWith

    • SCBC-174: ReactiveCollection KV operations now do ClientVerified Observe check

    • SCBC-182: QueryOptions missing setters

    New Features & Enhancements

    • SCBC-190: Expose enableDnsSrv parameter on IoConfig(), allowing DNS SRV to be used

    • SCBC-192: All scaladoc warnings fixed

    • SCBC-204: Add support for new server flag createAsDeleted, for internal use only

    API Changes

    • SCBC-159: Fix semantics of datastructures so they behave more like Scala collections

    • SCBC-162: All ReactiveBinaryCollection methods should return SMono

    • SCBC-164: Align with latest view RFC

    • SCBC-136: Track all Java environment changes

    • SCBC-138: Replace management API Scala exceptions with core ones

    • SCBC-139: GetSelecter is using incorrect exceptions

    • SCBC-155: Rename *master to *active throughout

    • SCBC-187: Remove scopeExists and collectionExists from CollectionManager

    • SCBC-188: Align UserAndMetadata with latest RFC

    Pre-releases

    Numerous Alpha and Beta releases were made in the run-up to the 1.0 release, and although unsupported, the release notes and download links are retained for archive purposes here.