NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #1157 by repository stars
Last release 9 years ago
no release in 18 months
Release timing varies
gaps range from 9 days to 5 months
Some releases are documented
notes for 25 of 44 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
50 releases · first in 2014
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fixed panic when closing a connection at the same time as using a changefeed.
Added the ability to reference subdocuments when inserting new documents, for more information see the documentation in the readme.
SetTags function which allows RethinkDB-go to override which tags are used when working with structs. For example to support the json add the following call SetTags("gorethink", "json").RunWrite.
IsConflictErr which returns true when RethinkDB returns a duplicate key error.IsTypeErr which returns true when RethinkDB returns an unexpected type error.RawQuery term which can be used to execute a raw JSON query, for more information about this query see the godoc.NextResponse function to Cursor which will return the next raw JSON response in the result set.KeepAlivePeriod field in ConnectOpts.RqlConnectionError when calling Run, Exec or RunWrite.Fixed race condition in cursor which caused issues when closing a cursor that is in the process of fetching data.
Added more documentation and examples for GetAll.
GetAll.RunWrite not deferring its call to Cursor.Close(). This could cause issues if an error occurred when decoding the result.Error() on a RethinkDB-go rqlError.GetAll.RunWrite not defering its call to Cursor.Close(). This could cause issues if an error occurred when decoding the result.Error() on a GoRethink rqlError.Added new error types, the following error types can now be returned: RQLClientError, RQLCompileError, RQLDriverCompileError, RQLServerCompileError, R
RQLClientError, RQLCompileError, RQLDriverCompileError, RQLServerCompileError, RQLAuthError, RQLRuntimeError, RQLQueryLogicError, RQLNonExistenceError, RQLResourceLimitError, RQLUserError, RQLInternalError, RQLTimeoutError, RQLAvailabilityError, RQLOpFailedError, RQLOpIndeterminateError, RQLDriverError, RQLConnectionError. Please note that some other errors can be returned.IsConnected function to Session.Deprecated the option NodeRefreshInterval in ConnectOpts
UUID termValues termIncludeInitial and ChangefeedQueueSize to ChangesOptsUseJSONNumber to ConnectOpts which changes the way the JSON unmarshal works when deserializing JSON with interface{}, it's preferred to use json.Number instead float64 as it preserves the original precision.HostDecayDuration to ConnectOpts to configure how hosts are selected. For more information see the godoc.time.Time are now stored in the database, before all times were stored as UTC. To convert a go time.Time back to UTC you can call t.In(time.UTC).hailocab/go-hostpool to select nodes based on recent responses and timings.fatih/pool instead of a custom connection pool, this has caused some internal API changes and the behaviour of MaxIdle and MaxOpen has slightly changed. This change was made mostly to make driver maintenance easier.
MaxIdle now configures the initial size of the pool, the name of this field will likely change in the future.MaxOpen no longer creates an unbounded connection pool per host but instead creates a pool with a maximum capacity of 2 per host.NodeRefreshInterval in ConnectOptsSetMaxIdleConns and SetMaxOpenConns, these options should now only be set when creating the session.Expr.Added root table terms (r.TableCreate, r.TableList and r.TableDrop)
r.TableCreate, r.TableList and r.TableDrop)ReadMode option from RunOpts and ExecOpts (incorrectly added in v1.1.0)Decode no longer setting pointer to nil on document not foundfetchMore returns an errorFixed pointers not to be properly decoded
Fixed issue when encoding some maps
Fixed issues with time pseudotype conversion that caused issues with milliseconds
Replaced UseOutdated with ReadMode
UseOutdated with ReadModeEmergencyRepair and NonVotingReplicaTags to ReconfigureOptsUnion as a root termBranch as a root termReadTimeout and WriteTimeout to RunOpts and ExecOptsgithub.com/Sirupsen/logrus.Logger as LogTimeout connect argument to only configure the connection timeout.Db with DB in RunOpts and ExecOpts (Db still works for now)Cursor and Session safe for concurrent useErrClusterClosed with ErrConnectionClosedNothing published for this version
1.0.0 is finally here, This is the first stable production ready release of RethinkDB-go!
1.0.0 is finally here, This is the first stable production ready release of RethinkDB-go!
In an attempt to make this library more "idiomatic" some functions have been renamed, for the full list of changes and bug fixes see below.
Shards, Replicas and PrimaryReplicaTag optional arguments in TableCreateOpts.MultiGroup and MultiGroupByIndex which are equivalent to the running group with the multi optional argument set to true.Db to DB.DbCreate to DBCreate.DbDrop to DBDrop.RqlConnectionError to RQLConnectionError.RqlDriverError to RQLDriverError.RqlClientError to RQLClientError.RqlRuntimeError to RQLRuntimeError.RqlCompileError to RQLCompileError.Js to JS.Json to JSON.Http to HTTP.GeoJson to GeoJSON.ToGeoJson to ToGeoJSON.WriteChanges to ChangeResponse, this is now a general type and can be used when dealing with changefeeds.ExprCacheSize and DataCenter optional arguments in TableCreateOpts.CacheSize optional argument from InsertOptsNothing published for this version
Nothing published for this version
Nothing published for this version
Added support for connecting to a server using TLS
Improved logging of connection errors.
This release includes support for RethinkDB 2.0 and connecting to clusters. To connect to a cluster you should use the new Addresses field in ConnectO
This release includes support for RethinkDB 2.0 and connecting to clusters. To connect to a cluster you should use the new Addresses field in ConnectOpts, for example:
session, err := r.Connect(r.ConnectOpts{
Addresses: []string{"localhost:28015", "localhost:28016"},
})
if err != nil {
log.Fatalln(err.Error())
}
Also added was the ability to read from a cursor using a channel, this is especially useful when using changefeeds. For more information see this gist
cursor, err := r.Table("items").Changes()
ch := make(chan map[string]interface{})
cursor.Listen(ch)
For more details checkout the README and godoc. As always if you have any further questions send me a message on Gitter.
DiscoverHosts optional argument to ConnectOpts, when this value is true the driver will listen for new nodes added to the cluster.Addresses optional argument to ConnectOpts, this allows the driver to connect to multiple nodes in a cluster.IncludeStates optional argument to Changes.MinVal and MaxVal which represent the smallest and largest possible values.Listen cursor helper function which publishes database results to a channel.Wait function.Type function to the Cursor, by default this value will be "Cursor" unless using a changefeed.IndexesOf function to OffsetsOf .UnmarshalerAdd IdentifierFormat optarg to TableOpts
IdentifierFormat optarg to TableOpts (#158)Fixed writeQuery being too small when sending large queries
writeQuery being too small when sending large queriesReduce GC by using buffers when reading and writing
time.Time ignoring millisecondsMarshaler/Unmarshaler interfaces being ignoredtime.Time ignoring millsecondsMarshaler/Unmarshaler interfaces being ignoredThere are some major changes to the driver with this release that are not related to the RethinkDB v1.16 release. Please have a read through them:
There are some major changes to the driver with this release that are not related to the RethinkDB v1.16 release. Please have a read through them:
Marshaler/Unmarshaler interfacesfatih/pool package with a connection pool based on the database/sql connection pool.database/sql API. ConnectOpts changes:
MaxActive renamed to MaxOpenIdleTimeout renamed to TimeoutCursors are now only closed automatically when calling either All or OneExec now takes ExecOpts instead of RunOpts. The only difference is that Exec has the NoReply fieldWith that out the way here are the v1.16 changes:
Range which generates all numbers from a given rangeConfig, Rebalance, Reconfigure, Status, Wait)SUCCESS_ATOM_FEEDMinIndex + MaxIndex functionsToJSON functionWriteResponse typeSince this release has a lot of changes and although I have tested these changes sometimes things fall through the gaps. If you discover any bugs please let me know and I will try to fix them as soon as possible.
Nothing published for this version
Added geospatial terms (Circle, Distance, Fill, Geojson, ToGeojson, GetIntersecting, GetNearest, Includes, Intersects, Line, Point, Polygon, PolygonSu
Circle, Distance, Fill, Geojson, ToGeojson, GetIntersecting, GetNearest, Includes, Intersects, Line, Point, Polygon, PolygonSub)UUID term for generating unique IDsAtIndex term, combines Nth and GetFieldGeometry type, see the types packageBatchConf field in RunOpts, now uses the BatchOpts typeFieldMapper interfaceInternal Changes
Next to zero the destination value every time it is called.Fixed issue causing Close to start an infinite loop
Close to start an infinite loopFixed bug causing Pseudotypes to not be decoded properly
Updated the driver to support RethinkDB v1.14
[]byte or bytes.Buffer{} as an argument.BinaryFormat optional argument to RunOptsGroupFormat optional argument to RunOptsArrayLimit optional argument to RunOptsReturnVals optional argument to ReturnChangesUpsert optional argument to ConflictIndexRename commandDistinct to now take the Index optional argument (using DistinctOpts)Internal Changes
Fixed issue causing connections not to be closed correctly
Fixed "Token ## not in stream cache" error
Your coding agent can read these notes before it upgrades. Set up the MCP server →