Releases: mongodb/mongo-go-driver
MongoDB Go Driver Alpha 18
The MongoDB Go driver team is pleased to release the eighteenth alpha of the official Go driver.
This alpha release contains major updates to the mongo package and BSON library. Additionally, there are small API updates and bug fixes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
BSON Library Changes
The Document
, Element
, Value
, and Array
types have been redesign and rewritten. They have been moved from the bson
package to the x/bsonx
package and renamed Doc
, Elem
, Val
, and Arr
respectively. These types are still under development and are likely to change.
The BSON primitive types have been moved from the bson
package to a new package called primitive
. For example the bson.Regex
type is now the primitive.Regex
type.
Mongo API Changes
Options for the mongo
package have been redesigned. Instead of individual packages for groups of option types, there is a single options
package that contains all options. Please refer to the GoDoc page for more details.
Release Notes
Bug
- [GODRIVER-468] - adding _id to a *bson.Document mutates the document.
- [GODRIVER-505] - Client Options should be last one wins
- [GODRIVER-561] - Database.RunCommand should use the provided read preference for server selection
- [GODRIVER-563] - The writeSelector property in the mongo.Database struct should include the LatencySelector
- [GODRIVER-575] - Database.ListCollections should return mongo.Cursor, not command.Cursor
- [GODRIVER-578] - Panic in cursor Close deadlocks
- [GODRIVER-599] - ValueEncoders should check if pointer is nil
New Feature
- [GODRIVER-413] - Implement Improved BSON Design
- [GODRIVER-586] - Implement Improved Go Driver CRUD API
Improvement
- [GODRIVER-151] - Change handling of network errors or timeouts during connection handshake
- [GODRIVER-349] - Separate cursor options from other options in commands
- [GODRIVER-378] - Unconnected Client should return a mongo level error, not topology level error
- [GODRIVER-429] - Move readconcern, readpref, and writeconcern packages to mongo package
- [GODRIVER-541] - Ensure all files have proper licenses
- [GODRIVER-576] - ListCollections filter should be interface{}
- [GODRIVER-610] - Scope & Design Improved BSON Support
MongoDB Go Driver Alpha 17
The MongoDB Go driver team is pleased to release the seventeenth alpha of the official Go driver.
This alpha release reverses the dependency between the bson
and bsoncodec
packages, which is elaborated below. Additionally, there are small API updates and bug fixes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
BSON Package Dependency Reversal
This release reverses the dependency between the `bson` and `bsoncodec` packages. This allows the bson package to contain the `Marshal` and `Unmarshal` family of functions and the `Encoder` and `Decoder` types. This allows future types in the bson package to handle the empty interface. Users should be able to rely on the `bson` package for most functionality.Release Notes
Bug
- [GODRIVER-473] - toExtJSON does not escape double quotes in strings
- [GODRIVER-529] - Value.Interface() returns the .String() result for EmbeddedDocument and Array
New Feature
- [GODRIVER-280] - Remove maxScan query option
- [GODRIVER-281] - Remove snapshot option
Improvement
- [GODRIVER-300] - Support constructing *Value from time.Time instances
- [GODRIVER-536] - Upgrade to Go 1.11
- [GODRIVER-548] - Value.Interface() should return the underlying type for a Document
- [GODRIVER-592] - Reverse Dependencies of bson and bsoncodec
MongoDB Go Driver Alpha 16
The MongoDB Go driver team is pleased to release the sixteenth alpha of the official Go driver.
This alpha release contains a new extended JSON implementation, an improved Sessions API, and an implementation of the BulkWrite API. Additionally, there are small API updates. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-562] - JSON decoding of an objectid returns error
- [GODRIVER-564] - bson.EC.Time does not treat the zero time.Time value the same as the encoder
- [GODRIVER-596] - Check value validity in isZero function
New Feature
- [GODRIVER-123] - Implement BulkWrite API
Improvement
- [GODRIVER-514] - Implement ExtJSON Reader using custom JSON parser & Implement extJSONValueReader and extJSONValueWriter
- [GODRIVER-587] - Implement Improved Go Driver Sessions API
- [GODRIVER-590] - objectid.ObjectID should support regular JSON hex bytes
MongoDB Go Driver Alpha 15
The MongoDB Go driver team is pleased to release the fifteenth alpha of the official Go driver.
This release contains splits the bson
package into two packages, bson
and bsoncodec
. The new marshaling and unmarshaling logic is contained within the bsoncodec
package. Version 1 of the marshaling and unmarshaling logic has been removed. This release also contains a change to how cursors behave, fixes MaxAwaitTime, and adds a Database
method to mongo.Collection
. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-266] - Properly implement maxAwaitTimeMS
- [GODRIVER-558] - SSL option processing sets SSLCaFileSet when SSLCaFile is empty string
- [GODRIVER-566] - Fix Equal method for bson.Value and update bson.Element.Equal to properly compare keys
- [GODRIVER-567] - Decoding date into time.Time does not work
Epic
- [GODRIVER-494] - BSON Codec Redesign
New Feature
- [GODRIVER-568] - Add Database() method on mongo.Collection
Improvement
- [GODRIVER-527] - Add BytesValueReader and BytesValueWriter interfaces
- [GODRIVER-537] - Split bson package into bson and bsoncodec packages
- [GODRIVER-551] - Use BSON Codecs in mongo package
MongoDB Go Driver Alpha 14
The MongoDB Go driver team is pleased to release the fourteenth alpha of the official Go driver.
This release contains a preview of the new BSON Encoder and Decoder types. This release also contains minor API changes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-373] - DocumentResult does not close cursor
- [GODRIVER-452] - bson package unable to Decode Enum values
New Feature
- [GODRIVER-372] - Add a Ping method to the Client type
Task
- [GODRIVER-523] - Support new readConcern level "available"
Improvement
- [GODRIVER-460] - Attempt to grow connection readBuf before allocating new buffer.
- [GODRIVER-490] - Cursor.Next should call getMore in a loop until a document is available
- [GODRIVER-495] - Implement BSON Registry
- [GODRIVER-496] - Implement default struct tag handler
- [GODRIVER-497] - Implement valueWriter and documentValueWriter
- [GODRIVER-498] - Implement valueReader and documentValueReader
- [GODRIVER-499] - Implement bson.Encoder/bson.Marshal*
- [GODRIVER-500] - Implement bson.Decoder/bson.Unmarshal*
- [GODRIVER-501] - Implement basic codecs
- [GODRIVER-516] - Add default codecs for most reflect.Kind types
- [GODRIVER-539] - Add BinaryOK function to the bson.Value type
- [GODRIVER-546] - Deprecate eval helpers
- [GODRIVER-547] - Resync read write concern tests to add new read concern levels
Sub-task
- [GODRIVER-553] - Skip one-txt-record-multiple-strings spec test on Go 1.11
MongoDB Go Driver Alpha 13
The MongoDB Go driver team is pleased to release the thirteenth alpha of the official Go driver.
This release contains support for GridFS. This release also contains minor API changes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-513] - Value.DateTime should return an int64
- [GODRIVER-538] - The readpref.WithTags function is broken
New Feature
- [GODRIVER-24] - Implement GridFS Specification
Improvement
- [GODRIVER-515] - Add Context to CommandMonitor Events
MongoDB Go Driver Alpha 12
The MongoDB Go driver team is pleased to release the twelfth alpha of the official Go driver.
This release contains support for retryable writes, transactions, and SCRAM-SHA-256. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
New Feature
- [GODRIVER-53] - Retryable writes
- [GODRIVER-216] - SCRAM-SHA-256 Support
- [GODRIVER-286] - Implement Transactions spec
- [GODRIVER-511] - Test only the initial command in a transaction includes readConcern
Improvement
- [GODRIVER-519] - Convert SCRAM-SHA-1 to use external scram library
MongoDB Go Driver Alpha 11
The MongoDB Go driver team is pleased to release the eleventh alpha of the official Go driver.
This release contains support for causal consistency and the new count API. Additionally, this release has bug fixes and small API changes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-491] - Failure to establish connection when using only local certificate
- [GODRIVER-510] - Documents larger than the MaxDocumentSize/MaxBSONObjectSize should cause error on InsertOne/InsertMany
New Feature
- [GODRIVER-56] - Causally Consistent Reads support
- [GODRIVER-453] - Implement new count API
- [GODRIVER-509] - Implement ObjectID spec
MongoDB Go Driver Alpha 10
The MongoDB Go driver team is pleased to release the tenth alpha of the official Go driver.
This release contains support for sessions and application performance monitoring. Additionally, this release has bug fixes and small API changes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-493] - Protect against nil options in bundles
- [GODRIVER-508] - topology.Server.update leaks time.Tickers
Epic
- [GODRIVER-22] - Implement driver API specs
New Feature
- [GODRIVER-19] - Implement Command Monitoring Specification
- [GODRIVER-52] - Implement Drivers Sessions API
MongoDB Go Driver Alpha 9
The MongoDB Go driver team is pleased to release the ninth alpha of the official Go driver.
This release contains a major update for option handling within the Driver API and adds support for OP_MSG. Additionally, this release has several bug fixes and small API changes. This is alpha software, so it is not recommended for production use.
Following semver, the v0 version of the public API should not be considered stable and could change.
Documentation can be found on GoDoc. Questions and inquiries can be asked on the mongo-go-driver Google Group. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.
Release Notes
Bug
- [GODRIVER-302] - Optioner Interfaces are difficult to construct programatically
- [GODRIVER-479] - Typo - Error information lost / not returned in func Projection()
- [GODRIVER-485] - Authentication degrade after 0.0.6
Epic
- [GODRIVER-415] - Options Management
New Feature
- [GODRIVER-54] - OP_MSG type 0 support
- [GODRIVER-157] - Add read preference option to db.RunCommand
- [GODRIVER-335] - Split options.OptProjection into OptFields and OptProjection
- [GODRIVER-356] - Add ability to create Database and Collection instances with a read preference
Improvement
- [GODRIVER-272] - Implement redesigned options for the Collection methods
- [GODRIVER-350] - Change OptWriteConcern to directly wrap a writeconcern.WriteConcern
- [GODRIVER-352] - Incorrect copyright statement on bson/decimal/decimal.go
- [GODRIVER-450] - Combine options that are singular entities
- [GODRIVER-481] - Remove bson/internal libraries
- [GODRIVER-482] - Separate command.Command into command.Read and command.Write
- [GODRIVER-486] - Connection String AuthSource should default to using connection string database name before defaulting to admin