Releases: mongodb/mongo-go-driver
MongoDB Go Driver Alpha 7
The MongoDB Go driver team is pleased to release the seventh alpha of the official Go driver.
This release mainly contains bug fixes and documentation updates. Additionally, there are improvements to the index management functionality in the driver. 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-436] - Documentation does not indicate users should call client.Connect or use mongo.Connect
- [GODRIVER-441] - Connection Handshake should not call buildInfo
- [GODRIVER-442] - Authentication error should drain a topology.Server's connection pool
- [GODRIVER-456] - Creating an index with nil Keys panics
- [GODRIVER-457] - expireAfter index option incorrectly uses expireAfter instead of expireAfterSeconds
New Feature
- [GODRIVER-31] - Implement Enumerate Collections Specification
- [GODRIVER-47] - Support passing index hint to aggregations
- [GODRIVER-294] - Add builder for index management options
Improvement
- [GODRIVER-142] - Implement auth connection string tests
- [GODRIVER-293] - Add Iterator for Array
MongoDB Go Driver Alpha 6
The MongoDB Go driver team is pleased to release the sixth alpha of the official Go driver.
This release mainly contains bug fixes and documentation updates. There are a few large changes of note in the BSON library, where the behavior of the bson.Prepend
and bson.Delete
methods was corrected, the extjson
package was merged into the bson
package, and the semantics of the bson.Document.Lookup
method were changed. 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-403] - command.Encode doesn't set slaveOk flag
- [GODRIVER-426] - Change "too precise" float32 behavior
- [GODRIVER-427] - fix pointers' decoding
- [GODRIVER-430] - bson.Document.Delete and bson.Document.Prepend are subtly broken
- [GODRIVER-432] - topology.SelectServer leaks timers
- [GODRIVER-434] - Fix encoding of *time.Time
- [GODRIVER-435] - README does not have reference to GoDoc
- [GODRIVER-440] - fix swapped T, I values for Timestamp
New Feature
- [GODRIVER-50] - Support maxTimeMS for createIndexes and dropIndexes commands
- [GODRIVER-124] - Support bulk inserting documents over 16 MB in total size with InsertMany
- [GODRIVER-360] - Correct semantics of bson.Document.Lookup method
Improvement
- [GODRIVER-419] - Set the Kind when returning a topology.SelectedServer
MongoDB Go Driver Alpha 5
The MongoDB Go driver team is pleased to release the fifth alpha of the official Go driver.
This release mainly contains user experience improvements and a refactor of internal driver structure. 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-395] - Err check phase fails
- [GODRIVER-396] - Read Preference from connection string should be used
- [GODRIVER-407] - implicit readPreference not allowed
New Feature
- [GODRIVER-354] - Add Optioners for Index Commands
Improvement
- [GODRIVER-329] - Make bson.Decoder an interface
- [GODRIVER-410] - IsZero and structs
MongoDB Go Driver Alpha 4
The MongoDB Go driver team is pleased to release the fourth alpha of the official Go driver.
This release mainly contains user experience improvements and a refactor of internal driver structure. 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-298] - Passing a nil context.Next to Cursor#Next panics
- [GODRIVER-307] - Insert methods do not seem propogate duplicate key errors
- [GODRIVER-369] - Function mongo.newClient should not call topology.Connect
- [GODRIVER-370] - The ConnectTimeout ClientOption should be used when using the default Dialer
- [GODRIVER-371] - SocketTimeout should be set as Read and Write Timeouts on a Connection
- [GODRIVER-374] - examples_test.go : Topology is closed on Mac
- [GODRIVER-383] - Use Server Selection Timeout from connection string
- [GODRIVER-388] - Creating a new connection may leak a semaphore permit
- [GODRIVER-389] - Race condition when disconnecting a connection pool
- [GODRIVER-390] - Getting a connection from a pool can be starved indefinitely
- [GODRIVER-397] - Connections are leaked by the driver
New Feature
- [GODRIVER-301] - Add method to retrieve name from collection
- [GODRIVER-308] - provide method to drop database
- [GODRIVER-312] - Ensure WriteErrors are returned to the user
Improvement
- [GODRIVER-337] - Allow option.Optioner to return an error
- [GODRIVER-343] - Add Encoder support for the decimal.decimal128 type
- [GODRIVER-359] - Add bson.Zeroer types for comparing structs
- [GODRIVER-363] - BSON encode and decoder do not support time.Time, url.URL, or json.Number
MongoDB Go Driver Alpha 3
The MongoDB Go driver team is pleased to release the third alpha of the official Go driver.
This release mainly contains user experience improvements and a refactor of internal driver structure. 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.
Bug
- [GODRIVER-282] - bson.Decoder cannot decode into bson types inside of a struct
- [GODRIVER-287] - SSL client certificate should support PEM files with passwords
- [GODRIVER-288] - Fix decoding BSON arrays into empty interface
- [GODRIVER-309] - Fix excessive escaping when printing BSON objects
- [GODRIVER-313] - Examples don't reset the document before decode
- [GODRIVER-320] - Document Should Be Reset In Examples
- [GODRIVER-321] - convertValueToElem should copy the attached *bson.Document
- [GODRIVER-323] - Struct with bson tag _id inserts a byte array instead of objectId
- [GODRIVER-339] - Document Set does not always replace the correct field.
New Feature
- [GODRIVER-2] - Implement X-509
- [GODRIVER-32] - Implement Enumerate Indexes Specification
- [GODRIVER-34] - Implement Index Management Specification
- [GODRIVER-38] - add NameOnly to ops.ListDatabasesOptions
- [GODRIVER-78] - Implement Database Enumeration spec
- [GODRIVER-195] - Custom Dialer option for Client
- [GODRIVER-285] - Client should have a Close method
Task
- [GODRIVER-153] - Add client constructor that takes client options
- [GODRIVER-254] - Redesign the private package
Improvement
- [GODRIVER-256] - Ensure Cursor implementations return Close error on Close
- [GODRIVER-315] - Mongo shipped BSON marshaller to support nested structs using embedding
- [GODRIVER-317] - Handle nil properties of a struct in the BSON encoder
- [GODRIVER-324] - Handle objectid.ObjectID in the bson.Encoder
- [GODRIVER-327] - Migrate to new library structure
- [GODRIVER-330] - Create Collection using Database's read and write selectors
- [GODRIVER-331] - Use description.WriteSelector instead of a ReadPrefSelector
- [GODRIVER-332] - Use db.writeSelector in Database.RunCommand
- [GODRIVER-333] - ReadPref selector should use feature.MaxStaleness
- [GODRIVER-334] - Remove topology server selectors and use description server selectors
- [GODRIVER-336] - Move TLS configuration out of connection.New
- [GODRIVER-346] - Refactor Client Options
- [GODRIVER-353] - Add license notice for core library
MongoDB Go Driver Alpha 2
The MongoDB Go driver team is pleased to release the second alpha of the official Go driver.
This release mainly contains improvements to the user experience 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.
Changes since the prior release:
Bug
- [GODRIVER-238] - Lookup should properly traverse Arrays
- [GODRIVER-241] - Clarify the documentation for the bson package wrt the builder.Builder type
- [GODRIVER-245] - Ensure methods of *Document handle the case where *Document is nil
- [GODRIVER-246] - Update bson.ErrTooSmall
- [GODRIVER-253] - bson.Reader.Lookup should return ErrElementNotFound if no element is found
New Feature
- [GODRIVER-203] - Create examples for sample shell commands
- [GODRIVER-236] - Add Marshal, Unmarshal, and UnmarshalDocument functions to BSON library
- [GODRIVER-265] - Implement Stringer for objectid.ObjectID
Improvement
- [GODRIVER-135] - Test new BSON library against BSON corpus
- [GODRIVER-143] - Split ReplaceOptions from UpdateOptions
- [GODRIVER-158] - Resync CRUD tests to update insertMany test format to a map
- [GODRIVER-229] - Add namespace type for options in mongo package.
- [GODRIVER-231] - Add DecodeBytes method to the Cursor
- [GODRIVER-232] - Add a method to bson.Value to get the offset into the underlying []byte
- [GODRIVER-237] - Make mongo.Cursor its own interface
- [GODRIVER-239] - Improve Document.ElementAt usability
- [GODRIVER-248] - Rename bson.ArrayConstructor to bson.ValueConstructor
- [GODRIVER-252] - Add FromHex function to the objectid package
MongoDB Go Driver Alpha 1
The MongoDB Go driver team is pleased to release the first alpha of the official Go driver.
We will be making several alpha releases of the driver. This version, Alpha 1, supports MongoDB versions 3.2.x, 3.4.x, and 3.6.x. Note that the new features of MongoDB 3.6 (e.g. ChangeStreams, Sessions, Retryable Writes, etc...) are not yet supported. 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.
If you would like to contribute to development, please read the CONTRIBUTING.md guide.
The following is a non-exhaustive list of supported driver specifications:
- BSON (with Decimal data type)
- Authentication (SCRAM-SHA-1, MONGODB CR, PLAIN, GSSAPI)
- TLS/SSL
- Server Discovery and Monitoring
- Server Selection
- Read and Write Concern
- MongoDB Handshake
- Collation
- TCP Keepalive
- Initial DNS Seedlist Discovery
- Connection String
- CRUD (except for Bulk Write)
- Find, getMore and killCursors commands
- Out aggregation pipeline operator
- Server write commands