RethinkDb.Driver 2.3.1-beta-3

A RethinkDB database driver in C# striving for 100% ReQL API coverage. Architecturally, this driver is a port of the official Java driver.

This is a prerelease version of RethinkDb.Driver.
There is a newer version of this package available.
See the version list below for details.
Install-Package RethinkDb.Driver -Version 2.3.1-beta-3
dotnet add package RethinkDb.Driver --version 2.3.1-beta-3
<PackageReference Include="RethinkDb.Driver" Version="2.3.1-beta-3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RethinkDb.Driver --version 2.3.1-beta-3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

## v2.3.1-beta-3
* Experimental LINQ to ReQL provider support.

## v2.3.1-beta-2
* BREAKING: Issue 39 - Pseudo types are now converted by default in JToken types (JObject, JArray).
*   You&apos;ll need to specify .Run*(conn, new { time_format: `raw` }) to keep raw types
*   from being converted. Other raw types: binary_format and group_format.
* BREAKING: Issue 49 - Handle DateTime and DateTimeOffset with ReqlDateTimeConverter
*   instead of Iso8601 AST term.

## v2.3.1-beta-1
* Compatibility with RethinkDB 2.3 and new user/pass authentication system.
* New `Grant` AST term added.
* New permission exception types.
* Issue 41 - Synchronous Run Helpers now throw expected exceptions (unwrapped AggregateException).

## v2.2.10
* Roll-up Release for Full .NET Framework since last non-beta release.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.10-beta-1
* Fixed Issue 36: Inconsistency between AND and OR method signatures.
* Added Fold Term (Note: Not usable until RethinkDB Server 2.3 is released).
* Added support for Union interleave OptArg.
* Added Proxy field to Server:conn.Server().
* BREAKING: .optArg now named .OptArg to follow .NET conventions (My apologies, I missed this one).

## v2.2.9
* Roll-up Release for Full .NET Framework since v2.2.8.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.9-beta-2
* Improved JObject and POCO serialization.

## v2.2.9-beta-1
* Added helper overloads for GetAll, HasFields, WithFields, Pluck, Without, IndexStatus, IndexWait.

## v2.2.8
* Roll-up Release for Full .NET Framework since v2.2.7.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.8-beta-4
* Improved [] operator overloading in AST. Term[`bracket`]. Sometimes wouldn`t get called.

## v2.2.8-beta-3
* Promoted anonymous types to expressions. R.Expr(new {keya=&quot;vala&quot;}).Keys()
* Fixed null reference exception in ReGrid.OpenDownloadStreamAsync()

## v2.2.8-beta-2
* Issue 32: Adding back `dnx451`, `dnxcore50`.

## v2.2.8-beta-1
* Issue 32: Switch to new `dotnet` target framework monikers for CoreCLR.

## v2.2.7
* Roll-up Release for Full .NET Framework since v2.2.5.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.7-beta-1
* All public API are squeaky clean.
* Added more more convenience CancellationToken Run*().
* Fixed Cursor.IsFeed bug always false.
* Added more XML docs.
* Inverted the AST generation for faster query composition.
* Fixed some async bugs.

## v2.2.5
* Roll-up Release for Full .NET Framework since v2.2.4.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.
* BREAKING CHANGES:
* -- **ReGrid** specification update: chunks using: file_id and num fields.
* -- **ReQL AST** now using .NET naming conventions. AST is now PascalCase.

## v2.2.5-beta-5
* Completely reimplemented Cursor from the ground up. *Better*, *faster*, *stronger*, *simpler*.
* Async APIs now accept CancellationTokens.

## v2.2.5-beta-4
* Issue 31: Handle null byte[] properly.

## v2.2.5-beta-3
* BREAKING CHANGES:
* -- **ReGrid** specification update: chunks using: file_id and num fields.
* -- **ReQL AST** now using .NET naming conventions. AST is now PascalCase.
* -- RethinkDBConstants using .NET naming conventions.
* Fixed **ReGrid** bug with large uploads.

## v2.2.5-beta-2
* Fixed possible memory leak in Cursor.close()
* Some minor Cursor changes to make MoveNextAsync work better
* Connection and ConnectionPool are now IDisposable.

## v2.2.5-beta-1
* Introducing ReGrid: The RethinkDB Large Object File Store. See docs for more info.
* Added Connection.ConnectionError event. Better for connection pooling.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.4
* Roll-up Release for Full .NET Framework since v2.2.3.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.4-beta-1
* Issue 24 - Aggregate / NullReference after .connect() and immediate .run().

## v2.2.3
* Roll-up Release for Full .NET Framework since v2.2.2.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.3-beta-2
* runResult() now takes IConnection instead of strongly typed Connection.
* Added runResult[T] for SUCCESS_ATOM or SUCCESS_SEQUENCE responses.
* Fixed nullable DateTime? and DateTimeOffset? not converting to reql_type:TIME pesudo type.
* Make ConnectionPool more reliable. Unstable ConnectionPool arised when driver threw errors due to syntax.
* Fixed bug in ReqlBinaryConverter preventing ser/deserialization of 0xFF

## v2.2.2
* Roll-up Release for .NET Framework since v2.2.1.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.2-beta-2
* Issue #21: Fixed nested array types in JObject serialization.
* Notice: ReqlDateTimeConverter serialization implementation changed (non-breaking).
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.2-beta-1
* Issue #21: Allow driver usage of JObject in API. Example: r.table().insert(JObject).run().
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.1
* Roll-up Release for .NET Framework since v2.2.0.
* CoreCLR users please continue using latest beta release until CoreCLR is RTM.

## v2.2.1-beta-2
* Newtonsoft v8.0.2 compatibility.

## v2.2.1-beta-1
* Added remaining top-level aggregation terms.

## v2.2.0
* Release for .NET 4.5 Framework (CoreCLR users please continue using latest beta release until CoreCLR is RTM.).

## v2.2.0-beta-2
* ConnectAsync
* ReconnectAsync
* Connection Pooling: RoundRobin and EpsilonGreedy connection pools.

## v2.2.0-beta-1
* conn.server() and conn.serverAsync(): SERVER_INFO implemented.
* TopLevel AST adjustments for Table: rebalance, reconfigure, and wait_
* Slight adjustment to System.Dynamic.Runtime dependency so no fallback source is needed.

## v0.0.7-alpha7
* async/await run() implementations.
* Database connection thread-safety.
* EnsureSuccess() renamed to AssertNoErrors()
* Assert: Deleted(), Inserted(), skipped(), replaced, etc.. helpers.
* Better Reactive Extension (Rx) semantic compatibility.
* Added Cursor.MoveNext(Timeout) for manual cursor movement.
* Added new helper: runGrouping&lt;TKey,TItem&gt;()
* Added new helper: runAtom&lt;T&gt;()
* See project documentation wiki

## v0.0.7-alpha6
* Added run helpers: runResult(), runChanges&lt;T&gt;()
* Added EnsureSuccess() to help ensure query execution has no errors. Example: insert().runResult().EnsureSuccess(); throws if errors.
* Change[T] class helper to help with change feeds.
* Reactive Extensions .ToObservable() compatibility with .NET 4.5 framework and change feeds.

## v0.0.7-alpha5
* Issue 13: Fixed POCO:byte[] not serializing correctly

## v0.0.7-alpha4
* Better DNX compatibility with dnx451 and dnxcore50.
* Requires DNX RC1.

## v0.0.7-alpha2
* Allow logging in CoreCLR - In startup: loggerFactory.EnableRethinkDbLogging();

## v0.0.5-alpha9
* .map() projections with anonymous types. IE: r.filter().map( g =&gt; new {points = g[&quot;points&quot;]} )
* Converter.Serializer main configuration point for Newtonsoft.

## v0.0.5-alpha7
* Fixed POCO serialization issues
* ReqlExpr[] uses r.bracket() instead of r.getField();

## v0.0.5-alpha6
* More work on Result helper.
* Feature: .getField() overload helper. Example: .get(&quot;id&quot;)[&quot;Name&quot;] returns field Name.
* Feature: +,-,*,/,&amp;gt;,&amp;lt; etc.. expression operator overloading.
* Feature: Implicit operator overrides. Example: (r.expr(1) + 1).run().
* ChangeFeeds unit tests passing.
* MetaDbs unit tests passing.
* Better support for POCO byte[] binary.
* Fixed bug in Cursor[T].BufferedItems. Respects native reql_type.
* Better support for group()-ed results.
* Moved reql_type converters to Newtonsoft&apos;s JsonConverter engine.

## v0.0.5-alpha5
* Fixed #8: NullReference exception when querying non-existent DB.

## v0.0.5-alpha4
* AST: added uuid(expr)
* Feature: Anonymous typed args. Example: getAll(...)[new {index = &quot;foo&quot;}].run()
* Fixed bugs in r.binary() when building AST.
* Fixed bugs in geometry deserialization.
* Fixed Cursor bug in cursor continuation.
* Binary unit tests passing.
* Times Constructors unit tests passing.
* DatumNumber unit tests passing.
* Default unit tests passing.
* DatumObject unit tests passing.
* Json unit tests passing.
* Geo constructors unit tests passing.
* GeoGeo json unit tests passing.
* GeoOperations unit tests passing.
* GeoPrimitives unit tests passing.
* Match unit tests passing.

## v0.0.5-alpha3
* Cursor support for sequence / partial results (example getAll).
* Make .run dynamic.
* Added faster .runCursor for queries expecting a cursor.

## v0.0.5-alpha2
* Implemented driver prefetching.
* Support for inserting POCO objects in tables.
* Support for retrieving POCO objects from tables.
* More accurate DateTime conversions.

## v0.0.5-alpha1
* Support for .NET Core / DNX Runtime.
* Support for Mono / Linux Runtime.
* Convert Func0 in AST.

## v0.0.4-alpha9
* Fixed bug in Reql Function lambda FUNCALL AST ordering.
* Best practice - avoid using C# &quot;is&quot; operator in Util.ToReqlAst.

## v0.0.4-alpha8
* AST Update
* More signatures for table.indexCreate.
* Allow JavaScript in places for ReqlFunction1.
* r.desc and r.desc can accept functions

## v0.0.4-alpha7
* Ensure latest Common.Logging is used.

## v0.0.4-alpha6
* Removed unnecessary dependency on extension methods utility.

## v0.0.4-alpha5
* Added a toplevel r.array and r.hashMap utility
* AST now using proper C# lambdas.
* More refined AST signatures.

## v0.0.4-alpha4
* PR#2: Fix null reference exception: JObject.FromObject before objects to JArray list. -cadabloom

## v0.0.4-alpha3
* Fixed recursion in MakeObject
* optArg now explicitly included where needed.

## v0.0.4-alpha2
* Added IntelliSense XML documentation.

## v0.0.4-alpha1
* Refined serialization.
* DB methods fixed.
* Create/Delete database working.
* RethinkDB PesudoType conversion working.

## v0.0.0.3
* Connection to RethinkDB working.

## v0.0.0.0:
* Initial port from Josh&apos;s Java Driver.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
2.3.150 5,386 9/17/2019
2.3.101 451 8/9/2019
2.3.100 4,790 2/24/2019
2.3.24 261 2/16/2019
2.3.23 6,118 4/25/2018
2.3.22 2,385 3/14/2018
2.3.20 7,087 8/25/2017
2.3.19 5,483 5/5/2017
2.3.18-beta-1 338 4/26/2017
2.3.17 701 4/18/2017
2.3.16-beta-1 355 4/13/2017
2.3.15 4,746 8/26/2016
2.3.14 398 8/22/2016
2.3.12 433 8/18/2016
2.3.11 615 8/11/2016
2.3.10 506 8/4/2016
2.3.9 821 7/10/2016
2.3.8 402 7/7/2016
2.3.7 426 7/6/2016
2.3.6 450 6/28/2016
2.3.6-beta-1 358 6/22/2016
2.3.5 543 6/9/2016
2.3.5-beta-1 339 6/9/2016
2.3.4 429 6/4/2016
2.3.4-beta-5 353 6/4/2016
2.3.4-beta-4 344 6/1/2016
2.3.4-beta-2 386 5/27/2016
2.3.4-beta-1 373 5/23/2016
2.3.3 495 5/21/2016
2.3.3-beta-1 353 5/21/2016
2.3.2 395 5/20/2016
2.3.2-beta-2 334 5/20/2016
2.3.2-beta-1 330 5/20/2016
2.3.1-beta-3 371 5/13/2016
2.3.1-beta-2 309 5/11/2016
2.3.1-beta-1 331 4/28/2016
2.2.10 1,241 3/31/2016
2.2.10-beta-1 325 3/31/2016
2.2.9 560 2/24/2016
2.2.9-beta-2 336 2/24/2016
2.2.9-beta-1 338 2/21/2016
2.2.8 373 2/20/2016
2.2.8-beta-4 330 2/18/2016
2.2.8-beta-3 329 2/18/2016
2.2.8-beta-2 315 2/17/2016
2.2.8-beta-1 357 2/16/2016
2.2.7 381 2/15/2016
2.2.7-beta-1 369 2/15/2016
2.2.5 399 2/14/2016
2.2.5-beta-5 321 2/14/2016
2.2.5-beta-4 320 2/13/2016
2.2.5-beta-3 308 2/13/2016
2.2.5-beta-2 371 2/12/2016
2.2.5-beta-1 365 2/5/2016
2.2.4 578 1/31/2016
2.2.4-beta-1 362 1/31/2016
2.2.3 362 1/30/2016
2.2.3-beta-2 357 1/30/2016
2.2.2 410 1/23/2016
2.2.2-beta-2 320 1/22/2016
2.2.2-beta-1 316 1/20/2016
2.2.1 369 1/20/2016
2.2.1-beta-2 317 1/20/2016
2.2.1-beta-1 379 12/24/2015
2.2.0 406 12/24/2015
2.2.0-beta-2 446 12/15/2015
2.2.0-beta-1 453 12/4/2015
Show less