On This Page

Version 2.3.0 - 2.5.2

Couchbase .NET SDK Release Notes and Archives

Installation

Quick Installation Using NuGet

For every release, we package the binaries and store the latest version in NuGet. If you are not familiar with NuGet, it’s the official and most widely supported package manager for Microsoft Visual Studio and .NET in general. NuGet is a centralized repository for package authors and consumers, and it also defines a suite of tools for authoring and consuming packages.

NuGet from Visual Studio

Using Visual Studio 2013 or later, follow these steps to get started with the Couchbase .NET SDK:

  1. From the IDE, right-click the project you want to add the dependency to.
  2. In the context menu, click Manage NuGet Packages. The NuGet package manager modal dialog opens.
  3. From the Tree View menu on the left, select Online > nuget.org.
  4. In the search box at the top right-hand side of the dialog, type CouchbaseNetClient and then press enter on your keyboard.
  5. In the search results, select the CouchbaseNetClient package and then click Install.

NuGet from the Package Manager Console

From the Package Manager Console within your project:

  1. From the Visual Studio menu bar, click Tools.
  2. Select NuGet Package Manager > Package Manager Console.
  3. In the console, enter the package installation command:
    • To install the latest version:
      Install-Package CouchbaseNetClient
    • To install a specific version, include the version parameter. For example:
      Install-Package CouchbaseNetClient -Version 2.4.0

Downloading and referencing the binaries

If you do not want to use NuGet to include the Couchbase .NET SDK in your project, you can download and reference the binaries directly. If you chose this route, you’ll also be responsible for including and resolving dependencies used internally by the SDK.

To download and reference the binaries directly:

  1. Download the version of the SDK you want to install.
  2. In Visual Studio, right-click the project you want to include the SDK in and then click Add.
  3. Click Reference to open the Reference Manager.
  4. On the left side, click Browse and select the binaries you downloaded.
  5. Click OK.

After you have referenced the Couchbase .NET SDK binaries, you need to locate and reference the dependencies it uses in a similar fashion. At the time of this writing, the dependencies are:

Other versions might not be compatible with the current SDK version.

Building from source

If none of the other installation options suffice or if you want to debug the source or perhaps contribute, building directly from the source is the best option for you. All source is located on GitHub.

Note:The software provided via NuGet and S3 are the official releases that have been through a rigorous testing process. Code on GitHub that is not tagged as an official release is still in development.

To build the .NET SDK from source:

  1. (Optional) Fork the GitHub repository: https://github.com/couchbase/couchbase-net-client/fork
  2. Using a Git console, enter the command to clone the repository: 
    git clone https://github.com/couchbase/couchbase-net-client.git
  3. Enter the command to retrieve the latest code from GitHub:
    git pull origin master
  4. Navigate to the directory that the source was cloned to and open the solution.
  5. Build the solution.

After you have successfully built the source, it’s then just a matter of referencing the binaries (.DLL files) from your consuming project. Note that you can checkout a specific tag for each release as well.

Version 2.5.2 (19 October 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1502] - Fatal error: unexpected end of JSON input

New Features and Behavioural Changes

This release contains the following enhancements:

  • [NCBC-1540] - Deprecate HeartBeatConfigInterval and rename to ConfigPollInterval
  • [NCBC-1542] - Removed lock for Insert and RemoveAt
  • [NCBC-1556] - Improve error message when bootstrapping fails for Memcached buckets

Fixed Issues

This release fixes the following issues:

  • [NCBC-1502] - Fatal error: unexpected end of JSON input
  • [NCBC-1524] - Add missing license information
  • [NCBC-1538] - MemchacheBucket Upsert method doesn't consider the expiration Timespan
  • [NCBC-1541] - Fix xml documentation typos
  • [NCBC-1543] - Release the acquired connection back to the connection pool
  • [NCBC-1547] - Ensure N1QL queries are retried after evicting invalid prepared statement
  • [NCBC-1551] - Multi Upsert using dictionary incorrectly sets the TTL
  • [NCBC-1554] - Failure status results in ArgumentOutOfRangeException
  • [NCBC-1557] - Cannot open Memcached buckets with Server 5.0
  • [NCBC-1559] - Invalid default timeout is set for Memcached Upsert
  • [NCBC-1560] - Auth error (401) raised in config thread of Memached buckets for CB 5.0

Version 2.5.1 (6 October 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1502] - Fatal error: unexpected end of JSON input

New Features and Behavioural Changes

This release contains the following enhancements:

  • [NCBC-1336] - Update AppVeyor integration creds to automated user
  • [NCBC-1509] - Discover and bootstrap analytics service from cluster config
  • [NCBC-1510] - Create and push nuget symbols package during deployments
  • [NCBC-1512] - Add logging that shows the server features that are enabled by client
  • [NCBC-1513] - Fix version issue with System.ComponentModel.TypeConverter 4.0.1 in test projects
  • [NCBC-1520] - Update integration tests execution configuration
  • [NCBC-1521] - Remove obsolete IDataMapper and HttpClient from http services
  • [NCBC-1535] - Reuse QueryClient's Async versions of methods in sync code paths

Fixed Issues

This release fixes the following issues:

  • [NCBC-1436] - QueryClient hides base properties HttpClient and DataMapper
  • [NCBC-1461] - Do not log failed N1QL prepare queries
  • [NCBC-1511] - Use POST when requesting a View
  • [NCBC-1514] - [RBAC] data writer can read
  • [NCBC-1515] - Update AppVeyor AWS credentials
  • [NCBC-1516] - Data reader can upsert
  • [NCBC-1517] - Enable KV Error map by default
  • [NCBC-1522] - Cluster class: when requesting a Query and bucket is not authenticate -> wrong exception
  • [NCBC-1523] - Full Text Search exception: "Unexpected character encountered while parsing value"
  • [NCBC-1525] - When SELECT RAW is used and streaming is enabled results should enumerate
  • [NCBC-1528] - Fix PrettyPrint tests based on cluster version
  • [NCBC-1529] - Ignore compiler warning for missing XML comments
  • [NCBC-1545] - Adding nodes to a 5.0.0 cluster can return "None" as error, never recovering
  • [NCBC-1548] - Get username from connection string before validating authenticator

Version 2.5.0 (7 September 2017)

Note: This release has been de-listed from www.nuget.org because of the issue NCBC-1545. Please use 2.5.1 instead.

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1502] - Fatal error: unexpected end of JSON input
  • [NCBC-1545] - Adding nodes to a 5.0.0 cluster can return "None" as error, never recovering

New Features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1206] - Allow per-operation timeouts
  • [NCBC-1388] - Make HeartbeatConfigInterval default to 2.5s for Fast Failover
  • [NCBC-1443] - Support Getting Cluster Version via SDK, handling authentication for 5.0 RBAC
  • [NCBC-1449] - Add a means of doing RBAC auth via configuration
  • [NCBC-1487] - Support .NET Core 2.0
  • [NCBC-1497] - Make multi-methods that depend on Parallel.ForEach obsolete
  • [NCBC-1405] - SDK Enhanced Error Messages
  • [NCBC-1463] - Add domain switch (local / external) for User Management API
  • [NCBC-1464] - Update integration test suite to be Spock compatible
  • [NCBC-1479] - Update test projects so that we can toggle between RBAC and older auth modes
  • [NCBC-1481] - Expose more N1QL Query Options
  • [NCBC-1503] - Update README with steps to run integration tests against Spock

Fixed Issues

This release fixes the following issues:

  • [NCBC-1444] - Invalid error message when RBAC authentication fails
  • [NCBC-1475] - Clone does not copy Expiry for some commands
  • [NCBC-1478] - SetAuthenticator method is internal - cannot auth with RBAC using ClusterHelper
  • [NCBC-1480] - Upsert against SPOCK server throws MissingKeyException
  • [NCBC-1484] - MultiplexingIOService and SharedPooledIOService do not set SupportsEnhancedAuthentication
  • [NCBC-1485] - GetAndLock no longer returns TemporaryLockFailureException when the key is locked on CB 5.0
  • [NCBC-1486] - HttpStreamingProvider doesn't set connection pool bucket name
  • [NCBC-1489] - Use JSON data mapper for processing N1QL prepare result
  • [NCBC-1491] - Don't dispose bucket during memcached integration tests
  • [NCBC-1492] - Cluster level query doesn't work with Authenticator
  • [NCBC-1493] - BucketManagerTests & MemcachedBucketManagerTests integration tests fail
  • [NCBC-1494] - Subdoc create document integration tests fails
  • [NCBC-1495] - N1QL integration tests fail
  • [NCBC-1496] - Memcached bucket integration tests fail
  • [NCBC-1498] - MultiplexIOService doesn't work with RBAC
  • [NCBC-1505] - Format exception with Common.Logging and QueryClient

Version 2.4.8 (3 Aug 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.

New Features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1323] - Update Core projects to Visual Studio 2017 XML based projects
  • [NCBC-1319] - Add examples of how to use 2.4.0 using VSCode, VS for Mac and CIL tools
  • [NCBC-1466] - Update appveyor.yml to use current in-progress build version
  • [NCBC-1469] - Update .NET Core app logging setup guide
  • [NCBC-1471] - Add GetCount sub document operation

Fixed Issues

This release fixes the following issues:

  • [NCBC-1423] - Document.Expiry description says it's in Milliseconds, should be seconds
  • [NCBC-1445] - Authentication fails when using App.Config with IAuthenticator
  • [NCBC-1453] - NotMyVBucket tries to use custom serializer to read updated bucket config
  • [NCBC-1465] - View and N1QL queries fail on single-node cluster

Version 2.4.7 (11 July 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1465] - View and N1QL queries fail on single-node cluster. See issue for workaround.

New Features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1340] - Extend KV Error map [part 2]
  • [NCBC-1378] - Add couchbasemock testing support in support of kverror map
  • [NCBC-1382] - Add basic KV error map testing with mock
  • [NCBC-1264] - Support Ephemeral Bucket Changes
  • [NCBC-1402] - Make RBAC error message consistent with RFC
  • [NCBC-1440] - CallbackFactory uses obsolete overload of IOperation.ReadAsync
  • [NCBC-1446] - Add GetDocumentFromReplica implementations
  • [NCBC-1448] - Update with newest user management RFC changes

Fixed Issues

This release fixes the following issues:

  • [NCBC-1433] - Investigate prepared statement client cache racyness
  • [NCBC-1435] - Logging of N1QL should include the N1QL text
  • [NCBC-1439] - Fix race condition with opaque mismatch
  • [NCBC-1450] - Fix Connection Pool unit test
  • [NCBC-1451] - Regression: NCBC-1442 causes config request to fail with UnknownError
  • [NCBC-1455] - Remove weird string from KV Error Tests
  • [NCBC-1456] - RBAC full name should be optional
  • [NCBC-1457] - Add test to verify bucket config with missing hostname
  • [NCBC-1458] - KeyNotFoundException when UseEnhancedDurability is true
  • [NCBC-1459] - AuthenticationException when BucketConfiguration.MinSize is 0
  • [NCBC-1462] - OperationTimeout when bootstrapping and using Memcached bucket

Version 2.4.6 (6 June 2017)

Note: This release has been de-listed from www.nuget.org because of the known issues below that can cause the SDK to fail operations against authenticated buckets. Please use 2.4.5 instead and fixes for these issues will be available in the next release.

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1318] - .Net Core SDK fails connect to nodes after restart all nodes in async mode on CentOS7.  Other platforms do not exhibit this behavior.
  • [NCBC-1417] - Error when creating bucket "The port number must be greater than 1023..." (Affects all 2.X clients)
  • [NCBC-1462] - OperationTimeout when bootstrapping and using Memcached bucket
  • [NCBC-1459] - AuthenticationException when BucketConfiguration.MinSize is 0
  • [NCBC-1458] - KeyNotFoundException when UseEnhancedDurability is true

New Features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1319] - Add examples of how to use 2.4.0 using VSCode, VS for Mac and CIL tools
  • [NCBC-1407] - Change XATTR option name to `xattr`
  • [NCBC-1430] - Enable autodeployment of nuget package on tag
  • [NCBC-1371] - Add pooling for MUX connections
  • [NCBC-1400] - Log document key > host mapping to help identify server issue
  • [NCBC-1403] - Don't return failed operation body as response message
  • [NCBC-1412] - Add Binary Transcoder
  • [NCBC-1413] - Add Term to TermRangeQuery
  • [NCBC-1414] - Add cluster authenticate overload to take username & password
  • [NCBC-1419] - Update repository README to be more current
  • [NCBC-1421] - Ignore failing Ephemeral bucket integration test
  • [NCBC-1424] - Add support for Authenticator in ClusterHelper
  • [NCBC-1425] - Add IO timings when Trace is enabled

Fixed Issues

This release fixes the following issues:

  • [NCBC-1278] - Fix dependency on connection pooling in Server class
  • [NCBC-1423] - Document.Expiry description says it's in Milliseconds, should be seconds
  • [NCBC-1426] - Fix missing Type.Initializer compiler issue
  • [NCBC-1427] - Fix tests after SASL authentication refactor
  • [NCBC-1428] - Don't run Enhanced Auth tests during CI builds
  • [NCBC-1429] - NotSupportedException thrown when SSL enabled under high concurrency
  • [NCBC-1432] - Support Facets in FTS query responses
  • [NCBC-1434] - Don't use IOService to authenticate PlainTextMechanism

Version 2.4.5 (16 May 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1318] - .Net Core SDK fails connect to nodes after restart all nodes in async mode on CentOS7.  Other platforms do not exhibit this behavior.
  • [NCBC-1417] - Error when creating bucket "The port number must be greater than 1023..." (Affects all 2.X clients)
  • [NCBC-1429] - NotSupportedException thrown when SSL enabled under high concurrency

New Features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1366] - .NET fast failover support
  • [NCBC-1376] - Add support for FTS Geo & TermRange Queries
  • [NCBC-1378] - Add couchbasemock testing support in support of kverror map
  • [NCBC-1380] - Request, parse, and load KV Error map
  • [NCBC-1382] - Add basic KV error map testing with mock
  • [NCBC-1345] - Add ephemeral bucket management functions to SDK
  • [NCBC-1377] - Fix nuget deployment url in Appveyor config
  • [NCBC-1392] - Support changes in user management rest endpoints due to rename of builtin to local
  • [NCBC-1385] - Replace Info logging with Debug logging in ConnectionPool
  • [NCBC-1387] - Add support for FTS advanced sorting
  • [NCBC-1389] - Ability to check for ClusterHelper initialization status
  • [NCBC-1397] - Add Jenkins build badge
  • [NCBC-1399] - Replace all ConfigureAwait(false) calls with ContinueOnAnyContext for consistency

Fixed Issues

This release fixes the following issues:

  • [NCBC-1352] - While swapping a node, log4net:ERROR Exception while rendering object of type is printed on SDKD console
  • [NCBC-1361] - subdoc request does not timeout at default 2500ms
  • [NCBC-1364] - Fix failing test - GetAndLock_Sets_Lock_And_Is_Released_After_Expiration
  • [NCBC-1374] - Uri format exception when hostname is empty in nodesExt
  • [NCBC-1375] - ClusterManger.CreateBucket defaults result in high IO priority bucket
  • [NCBC-1379] - Fix tagged build versioning when AppVeyor packages client
  • [NCBC-1381] - When using App.Config UseConnectionPooling is ignored.
  • [NCBC-1383] - Connection fails to auth when using async K/V methods
  • [NCBC-1384] - Ensure proper IIOService is instantiated when UseConnectionPooling is true
  • [NCBC-1390] - Client configuration is null when specifying bucket configs in ClientConfiguration
  • [NCBC-1391] - Use Task.Delay in async calls
  • [NCBC-1393] - async upsert hangs after removing entry point node
  • [NCBC-1394] - OperationTimeout and high memory consumption when swapping in a node
  • [NCBC-1396] - Opening Memcached buckets has significant delay
  • [NCBC-1398] - Reference to ClientConfiguration is null in PoolConfiguration
  • [NCBC-1404] - IClusterManager.CreateBucket is missing a proxyPort parameter
  • [NCBC-1409] - Fix ObjectDisposedException in ConfigMonitor.cs
  • [NCBC-1417] - Error when creating bucket "The port number must be greater than 1023..."
  • [NCBC-1418] - NullReferenceException when AsyncState cleans up
  • [NCBC-1420] - Sample app RBAC update for 5.0

Version 2.4.4 (10 April 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1318] - .Net Core SDK fails connect to nodes after restart all nodes in async mode on CentOS7.  Other platforms do not exhibit this behavior.
  • [NCBC-1417] - Error when creating bucket "The port number must be greater than 1023..." (Affects all 2.X clients)
  • [NCBC-1429] - NotSupportedException thrown when SSL enabled under high concurrency

New features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1341] - Add support for username/password auth in support of RBAC.
  • [NCBC-1362] - Add User Management features
  • [NCBC-1280] - Fix SDKQE build and upgrade nuget to v3.5
  • [NCBC-1300] - review travel sample app
  • [NCBC-1304] - [TravelSample] Javascript error on starting up
  • [NCBC-1351] - Provide easy extension methods to generate exceptions from responses
  • [NCBC-1344] - Review Cluster Level Authentication against RFC
  • [NCBC-1353] - Deploy nuget package on repository tag
  • [NCBC-1354] - Don't attach binaries zip on github release
  • [NCBC-1355] - Bump AppVeyor build number
  • [NCBC-1356] - Set user-agent header for all service requests (n1ql, fts, etc)

Fixed Issues

This release fixes the following issues:

  • [NCBC-1263] - Intermittent integration tests hang
  • [NCBC-1347] - Fix failing 'Test_PrepareQueryAsync_CanCancel' integration test
  • [NCBC-1349] - Single Subdoc Mutation Operations Don't Return Mutation Token
  • [NCBC-1350] - DefaultValueHandling.IgnoreAndPopulate Causes NRE With Bad Query Syntax
  • [NCBC-1357] - FakeConnection is missing property in Couchbase.UnitTests
  • [NCBC-1360] - AppVeyor fails to create GitHib release on tag
  • [NCBC-1368] - Regression in CouchbaseNetClient with respect to FQDN use with SSL
  • [NCBC-1369] - PoolConfiguration.MaxSize must come before PoolConfiguration.MinSize
  • [NCBC-1370] - MapGet throws NullReferenceException if key does not exist
  • [NCBC-1373] - Views return null values for each row when UseStreaming is enabled.

Version 2.4.2 (10 March 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1318] - .Net Core SDK fails connect to nodes after restart all nodes in async mode on CentOS7.  Other platforms do not exhibit this behavior.

New features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-1276] - Add extension method to configure MS Logging
  • [NCBC-1305] - Make bootstrap url default to port 8091
  • [NCBC-1322] - Test that DocumentFragment<T>.Value works as expected for POCO's
  • [NCBC-1325] - Move packing steps to after_build in AppVeyor config
  • [NCBC-1326] - Cache packages and use artifacts section in appveyor
  • [NCBC-1327] - Update nuspec (title, description, copyright, etc)
  • [NCBC-1328] - Update AppVeyor package cache path
  • [NCBC-1330] - Record what framework client is running under when sending Hello
  • [NCBC-1333] - Push nuget packages to MyGet from AppVeyor
  • [NCBC-1334] - Push client zip file to S3 on repo tag
  • [NCBC-1249] - Add Analytics Query Support as Uncommitted
  • [NCBC-1281] - Suppress XML Comment Missing (CS1591) build warnings
  • [NCBC-1294] - Add Couchbase.snk to gitignore
  • [NCBC-1309] - .NET Core Log.Error ignores parameters and logs format string only
  • [NCBC-1316] - update to latest try-cb frontend
  • [NCBC-1320] - Update sample app bootstrap / connection section
  • [NCBC-1337] - When a timeout occurs Muxio returns Success with no body

Fixed Issues

This release fixes the following issues:

  • [NCBC-1250] - Unhandled exception of type 'System.ExecutionEngineException' occurred in System.Private.CoreLib.ni.dll
  • [NCBC-1286] - ObjectDisposedException when object is finalized
  • [NCBC-1291] - FTS queries _may_ continue to fail after a node goes on/offline
  • [NCBC-1298] - .NETCore SDK throws Failed to acquire a pooled client connection on xxx.xxx.xxx.xxx:11210 after 5 tries.
  • [NCBC-1301] - MuxIO NodeUnavailableException during rebalance
  • [NCBC-1311] - GetWithLock and GetAndLock Doc API is incorrect
  • [NCBC-1313] - Ensure document CAS is unlocked after lock expires
  • [NCBC-1314] - GetAndLock operations do not send expiration
  • [NCBC-1315] - .NET client does not set the HELO correctly
  • [NCBC-1321] - SASL unit test fails with null exception
  • [NCBC-1324] - Remove InternalsVisibleTo when build in AppVeyor
  • [NCBC-1329] - Don't report XML missing warnings for netstandard project
  • [NCBC-1335] - Only run XATTRs and Analytics integration tests when that feature is available
  • [NCBC-1339] - Ensure an operation is retried unless the node's state is unavailable
  • [NCBC-1342] - Exception using N1QL with UseStreaming(true) and AdHoc(false)
  • [NCBC-1343] - Query and Search Nodes Don't Reactivate In Client After Failure (unless all fail)
  • [NCBC-1346] - Fix integration tests for LookupInBuilder.Exists
  • [NCBC-1348] - Single Subdoc Operation With Short Results Throw NRE Reading Content

Version 2.4.0 (14 Feb 2017)

Known Issues

This release has the following known issues:

  • [NCBC-1296] - .NETCore SDK N1QL query throws System.PlatformNotSupportedException on some .NET Core platforms.  A workaround is available.
  • [NCBC-1318] - .Net Core SDK fails connect to nodes after restart all nodes in async mode on CentOS7.  Other platforms do not exhibit this behavior.
  • [NCBC-1250] - Unhandled exception of type 'System.ExecutionEngineException' occurred in System.Private.CoreLib.ni.dll on .NET Core on Windows 7.  A possible workaround is available.

New features and Behavioral Changes

This release contains the following enhancements:

  • [NCBC-864] - Add JSON streaming parser to DataMapper/ViewClient
  • [NCBC-1228] - Codify and document DataStructure concurrency model
  • [NCBC-1243] - Update DataStructure Async methods to follow RFC spec
  • [NCBC-1258] - Support reading properties prior to enumerating StreamingQueryResult
  • [NCBC-1260] - Change IO strategy from pooled to muxio
  • [NCBC-1262] - Improve Query request URI handling
  • [NCBC-1271] - Update documentation on logging
  • [NCBC-1272] - Documentation updates on Muxio
  • [NCBC-1273] - Document that core exists and the package is split depending on your target
  • [NCBC-1274] - ensure packaging work is completed
  • [NCBC-1279] - Support N1QL query cancellation
  • [NCBC-1292] - Migrate memcached tests to integration test project
  • [NCBC-1248] - Add XATTR Support as Uncommitted
  • [NCBC-1234] - Develop build, package, deploy scripts for .NET SDK
  • [NCBC-1238] - Update Core dependencies to NetStandard.Library 1.6.1 et al.
  • [NCBC-1239] - Update all 3rd party Core dependencies to latest
  • [NCBC-1240] - Throw InitializationException if ClusterHelper.Initialize is not called.
  • [NCBC-1241] - Update Newtonsoft from 8.0.3 to 9.0.1
  • [NCBC-1245] - Remove local nuget config and targets files
  • [NCBC-1246] - Allow internals to be shared with SDKD.NetStandard
  • [NCBC-1256] - Update to log4net 2.0.7
  • [NCBC-1265] - Update BinaryToJsonTranscoder.cs to be net45 only
  • [NCBC-1284] - System.IO.FileNotFoundException on linux dotnet
  • [NCBC-1289] - Update Couchbase.nuspec .NET Core dependencies
  • [NCBC-1295] - PlatformNotSupportedException - when setting MaxConnectionsPerServer

Fixed Issues

This release fixes the following issues:

  • [NCBC-1142] - Query does not recover after service restart
  • [NCBC-1230] - Invalid logic of "fields" collection in FTS
  • [NCBC-1235] - When a N1QL request timed out (timeout) wrong exception received
  • [NCBC-1244] - On OSX default connection pool hangs when doing bulk async/await ops
  • [NCBC-1247] - .Net core (2.4.0 dp2) N1QL is not running on Mac (SecureTransport)
  • [NCBC-1254] - Revert IQueryResult<T> refactoring
  • [NCBC-1259] - StreamingQueryClient fails on multiple queries
  • [NCBC-1261] - Ensure (N1QL & View) streams are correctly disposed
  • [NCBC-1267] - SslConnection fails when two or more threads write using MuxIO
  • [NCBC-1268] - CAS-based observe unit tests hangs
  • [NCBC-1269] - ClientConfiguration should have UseConnectionPooling property
  • [NCBC-1270] - Ignore lock files in gitignore
  • [NCBC-1275] - Remove EnsureNuGetPackageBuildImports from csproj
  • [NCBC-1277] - Make ConnectionPoolingFactory create MultiplexingConnection's when UseConnectionPooling is false
  • [NCBC-1285] - Disable HTTP 1.1 pipelining to query service, if enabled
  • [NCBC-1288] - NullReferenceException thrown unless the LogManager is explicitly configured.
  • [NCBC-1290] - N1QL queries continue to fail after a node goes on/offline
  • [NCBC-1297] - .NETCore SDK causes ClientFailure for SubDoc operation on Windows with muxio
  • [NCBC-1302] - SemVer Breaking Change In Method Signature For ClusterHelper.GetBucket
  • [NCBC-1303] - add missing extensions to nuspec
  • [NCBC-1307] - .NetCore SDK fails connect to nodes after restart all nodes

 

Version 2.3.11 (3 Jan 2017)

Fixed Issues

This release fixes the following issues:

  • [NCBC-1254] - Revert IQueryResult<T> refactoring

Version 2.3.10 (7 Dec 2016)

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1204] - CouchbaseClientDefinition should use interface for Buckets property
  • [NCBC-1237] - Add custom "sort" param for FTS
  • [NCBC-1227] - Add QueuePush, QueuePop, and QueueSize to IBucket
  • [NCBC-1036] - Create writeup on how to provision a cluster programmatically with code sample
  • [NCBC-1101] - Implement WatchIndexes for index managment

Fixed Issues

This release fixes the following issues:

  • [NCBC-1104] - When SSL certificate is not setup correctly System.ArgumentException is thrown.
  • [NCBC-1232] - .NET client may not automatically re-prepare when an index is removed
  • [NCBC-1233] - Release 2.3.9 assembly is not strongly named and does not have a publicKeyToken
  • [NCBC-1236] - Remove DotMemory unresolved reference from IntegrationTests

Version 2.3.9 (1 Nov 2016)

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1128] - Refactor FTS ISearchQueryResult so that it has parity with Java SDK
  • [NCBC-1141] - When Id is not present in doc fail-fast
  • [NCBC-1210] - Upgrade NetStandard projects to Common.Logging Core and Portable 3.4-Alpha2
  • [NCBC-1220] - Update SearchClient to use CouchbaseHttpClient
  • [NCBC-854] - N1QL Cross Bucket Joins
  • [NCBC-1060] - Include Datastructure Support
  • [NCBC-1062] - Add Cluster Level Authenticator Interface
  • [NCBC-1223] - Add MediaType constants to be used instead of inline strings
  • [NCBC-1215] - Add nuspec file for generating Net45 and NetStandard1.5 targets
  • [NCBC-1217] - Set AllowUnsafe to false in Couchbase.NetStandard project
  • [NCBC-1221] - Make OpenBucket throws Auth exception when cred not provided
  • [NCBC-1224] - Add IBucket level Data Structure methods

Fixed Issues

This release fixes the following issues:

  • [NCBC-1222] - Fixup unit tests
  • [NCBC-1194] - Bucket.Exists() returns False for a document that DOES exist when using Swedish Characters (at least) in document ID
  • [NCBC-1218] - Fix broken tests impacting CI
  • [NCBC-1219] - Improve or fix unit tests
  • [NCBC-958] - Provide sane checks for max and min pool sizes.
  • [NCBC-1209] - Ensure CAS is passed to Sub-Doc operations
  • [NCBC-1211] - Error Bootstrapping Using .Net Core on Linux Due To Socket Keep Alives
  • [NCBC-1213] - Unable to submit Compound FTS query
  • [NCBC-1214] - BooleanQuery should only require one sub-query, not one of each type
  • [NCBC-1216] - PhraseQuery and DocId Query throw exception during Export
  • [NCBC-1225] - PoolConfigurationTests do not match min and max values

Version 2.3.8 (4 Oct 2016)

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1187] - Refactor SCRAM-SHA hash algo calls to be Core compliant
  • [NCBC-1188] - Refactor DNS calls to be Core compliant
  • [NCBC-1189] - Merge development Core branch with couchbase-net-client/master
  • [NCBC-1199] - Create IList implementation
  • [NCBC-1190] - Couchbase.UnitTests.Management Test Failing
  • [NCBC-1191] - Honor connectionTimeout configuration setting when initializing streaming provider.
  • [NCBC-1192] - Remove NewtonSoft dependency from ViewResult
  • [NCBC-1201] - Make Visual Studio download Nuget.exe

Fixed Issues

This release fixes the following issues:

  • [NCBC-1091] - Session provider causes infinite loop when CB Cluster goes down
  • [NCBC-1186] - KeyObserver and SeqnoKeyObserver mix async and sync paths
  • [NCBC-1193] - Management API Is Broken With KeyNotFoundException
  • [NCBC-1195] - Fix BinaryToJsonTranscoder tests
  • [NCBC-1202] - LookupCommand gets cast to the Type of T causing cast exception
  • [NCBC-1203] - Single lookup calls base ReadExtras
  • [NCBC-1212] - Mono Doesn't Support HttpClientHandler.ServerCertificateCustomValidationCallback

Version 2.3.6/2.3.7 (6 Sept 2016)

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1173] - Make internal IO constructors public for Core version of Activator
  • [NCBC-1169] - Make exception behavior more like Java SDK
  • [NCBC-1171] - .Net client should send HELO command during bootstrap
  • [NCBC-1172] - Remove references to ServicePointManager and replace with core compatible API's
  • [NCBC-1168] - Resolve compiler warnings
  • [NCBC-1176] - Upgrade management API to use NewtonSoft 8.0.3
  • [NCBC-1182] - When ConfigThreadState shuts down log INFO instead of ERROR
  • [NCBC-1183] - Update NUnit package from v3.4.0 to v3.4.1

Fixed Issues

This release fixes the following issues:

  • [NCBC-1178] - Fix NRE due to mock config info object not containing client config
  • [NCBC-1184] - Document objects missing Token for RYOW
  • [NCBC-1174] - Rename file to match class name of IViewQuery
  • [NCBC-1175] - Fix minor issues related to n1ql request tests
  • [NCBC-1177] - Fix minor issues related to n1ql request tests
  • [NCBC-1181] - Fix Failing Unit Tests

Version 2.3.5 (4 Aug 2016)

This is another bug-fix and enhancement GA release of the 2.3 series. You can read read about the details on this blog post.

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1170] - Make Insert and Upsert return the Document - similar to Java SDK
  • [NCBC-1094] - Implement SCRAM-SHA1 Support
  • [NCBC-1160] - Add option to enable N1QL timing logging
  • [NCBC-1111] - Remove exp. backoff for NMV and replace with static 100ms backoff

Fixed Issues

  • [NCBC-1080] - Buckets get opened with a password provided for another in the config .NET SDK
  • [NCBC-1108] - Index Mgmt methods lack ContinueOnAnyContext and may deadlock
  • [NCBC-1157] - Queries fail if DefaultSerializer.ContractResolver is null
  • [NCBC-1158] - Exception for subdoc get during rb2out
  • [NCBC-1159] - Async calls deadlock while running tests under NUnit 3
  • [NCBC-1161] - Sub Document - MutateIn does not support POCO's
  • [NCBC-1162] - Make Observe fail-fast when document mutation is encountered
  • [NCBC-1163] - MUX IO - OperationTimeout when Enhanced Durability is enabled
  • [NCBC-1164] - Document mutation incorrectly indicated while performing CAS-based observe
  • [NCBC-1125] - Switch SslStream to using Async TPL pattern
  • [NCBC-1152] - Net Core Doesn't Support Socket.BeginConnect
  • [NCBC-1167] - ensure the README on github points clearly to current start using

Version 2.3.4 (18 July 2016)

Version 2.3.4 is a bug-fix and enhancement general availability release of the 2.3 series. It adds new features for async bulk query methods, upgrades to dependencies and configuration updates, in addition to bug fixes and improvements. Please note that, 2.3.3 and 2.3.4 are the same releases; 2.3.4 fixes a packaging issue where the Couchbase.NetClient.dll was incorrectly versioned to 0.0.0.0. Also, note that version 2.3.2 was skipped.

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1092] - Upgrade NewtonSoft dependency to 8.x
  • [NCBC-1116] - Add async/await methods for bulk operations
  • [NCBC-1118] - Allow programmatic configuration for IO services
  • [NCBC-1087] - IPv6 Support in Client Configuration

Fixed Issues

This release fixes the following issues:

  • [NCBC-1143] - Subdocument Exists always returns true
  • [NCBC-1146] - replace GetWithLock with GetAndLock
  • [NCBC-1148] - MemcachedBucket.CreateManager throws NotSupportedException
  • [NCBC-1149] - Correct issue in bucket reference counting
  • [NCBC-1151] - Subdocument - Singular Replace always fails
  • [NCBC-1154] - Calling ToString on QueryResult may throw NRE
  • [NCBC-1150] - Subdocument - Lookup fails when getting hierarchical subdocument

Version 2.3.1 (22 June 2016)

Version 2.3.1 is the first patch release and addresses a packaging issue with Common.Logging found in the 2.3.0 release. It also includes two minor fixes.

Fixed Issues

This release fixes the following issues:

  • [NCBC-1147] - MutationToken uses wrong bucket - impacts RYOW
  • [NCBC-1140] - If CarrierPublicationProvider is disposed do not reset timer

Version 2.3.0 (13 June 2016)

Version 2.3.0 is the first general availability release of the 2.3 series. It adds new features for N1QL query, performance enhancements and supports the developer preview full text search available in Couchbase Server 4.5.

New features and behavioral changes

This release contains the following enhancements:

  • [NCBC-1096] - Make Configuration system more abstract to support JSON configs
  • [NCBC-1114] - Refactor System.Timers.Timer to System.Threading.Timer
  • [NCBC-1117] - HttpServerConfig Doesn't Validate Server Certificate
  • [NCBC-1013] - Add certificate validation to SslConnection
  • [NCBC-1051] - Investigate making IO layer pluggable via code configuration
  • [NCBC-1079] - Add streaming JSON parser for N1QL and Views
  • [NCBC-1122] - Add IgnoreRemoteCertificateNameMismatch config flag to ignore TLS hostname validation
  • [NCBC-1105] - Add integration tests for AT_PLUS

Fixed Issues

This release fixes the following issues:

  • [NCBC-1110] - GetFromReplica times out if key does not exist
  • [NCBC-1119] - MutationTokens Do Not Work Because BucketRef Is Always Null
  • [NCBC-1120] - Cannot Set UseEnhancedDurability To True Without Defining A ConnectionPool
  • [NCBC-1121] - RYOW ConsistentWith Doesn't Function For N1QL Queries
  • [NCBC-1131] - Regression causes HttpStreamingProvider to auth invalid password
  • [NCBC-1135] - Use Endpoint instead of Uri for SslStream.Authenticate
  • [NCBC-1136] - Regression - MutationToken are not set when UseEnhancedDurabity is true
  • [NCBC-769] - Ensure support for "Consistency Parameters" is implemented correctly