{"id":13412365,"url":"https://github.com/globalsign/mgo","last_synced_at":"2025-03-14T18:31:18.536Z","repository":{"id":45722626,"uuid":"88156832","full_name":"globalsign/mgo","owner":"globalsign","description":"The MongoDB driver for Go","archived":false,"fork":true,"pushed_at":"2021-10-29T16:04:56.000Z","size":7339,"stargazers_count":1973,"open_issues_count":66,"forks_count":230,"subscribers_count":59,"default_branch":"master","last_synced_at":"2024-10-29T20:33:25.483Z","etag":null,"topics":["golang","mongodb"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"domodwyer/mgo","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/globalsign.png","metadata":{"files":{"readme":"README.md","changelog":"changestreams.go","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-04-13T11:14:04.000Z","updated_at":"2024-10-22T05:50:09.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/globalsign/mgo","commit_stats":null,"previous_names":[],"tags_count":72,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/globalsign%2Fmgo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/globalsign%2Fmgo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/globalsign%2Fmgo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/globalsign%2Fmgo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/globalsign","download_url":"https://codeload.github.com/globalsign/mgo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243625103,"owners_count":20321230,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["golang","mongodb"],"created_at":"2024-07-30T20:01:23.895Z","updated_at":"2025-03-14T18:31:18.024Z","avatar_url":"https://github.com/globalsign.png","language":"Go","funding_links":[],"categories":["开源类库","Go","Database Drivers","Open source library","数据库驱动程序","Libraries","数据库驱动`连接和操作数据库工具`","Data Integration Frameworks","Libraries and Drivers","数据库驱动","NoSQL Databases","Generators"],"sub_categories":["数据库","Advanced Console UIs","Database","NoSQL Database Drivers","NoSQL数据库驱动程序","Go","SQL 查询语句构建库"],"readme":"[![Build Status](https://travis-ci.org/globalsign/mgo.svg?branch=master)](https://travis-ci.org/globalsign/mgo) [![GoDoc](https://godoc.org/github.com/globalsign/mgo?status.svg)](https://godoc.org/github.com/globalsign/mgo)\n\nThe MongoDB driver for Go\n-------------------------\n\nThis fork has had a few improvements by ourselves as well as several PR's merged from the original mgo repo that are currently awaiting review.\nChanges are mostly geared towards performance improvements and bug fixes, though a few new features have been added.\n\nFurther PR's (with tests) are welcome, but please maintain backwards compatibility.\n\nDetailed documentation of the API is available at\n[GoDoc](https://godoc.org/github.com/globalsign/mgo).\n\nA [sub-package](https://godoc.org/github.com/globalsign/mgo/bson) that implements the [BSON](http://bsonspec.org) specification is also included, and may be used independently of the driver.\n\n## Supported Versions\n\n`mgo` is known to work well on (and has integration tests against) MongoDB v3.0, 3.2, 3.4 and 3.6. \n\nMongoDB 4.0 is currently experimental - we would happily accept PRs to help improve support!\n\n## Changes\n* Fixes attempting to authenticate before every query ([details](https://github.com/go-mgo/mgo/issues/254))\n* Removes bulk update / delete batch size limitations ([details](https://github.com/go-mgo/mgo/issues/288))\n* Adds native support for `time.Duration` marshalling ([details](https://github.com/go-mgo/mgo/pull/373))\n* Reduce memory footprint / garbage collection pressure by reusing buffers ([details](https://github.com/go-mgo/mgo/pull/229), [more](https://github.com/globalsign/mgo/pull/56))\n* Support majority read concerns ([details](https://github.com/globalsign/mgo/pull/2))\n* Improved connection handling ([details](https://github.com/globalsign/mgo/pull/5))\n* Hides SASL warnings ([details](https://github.com/globalsign/mgo/pull/7))\n* Support for partial indexes ([details](https://github.com/domodwyer/mgo/commit/5efe8eccb028238d93c222828cae4806aeae9f51))\n* Fixes timezone handling ([details](https://github.com/go-mgo/mgo/pull/464))\n* Integration tests run against MongoDB 3.2 \u0026 3.4 releases ([details](https://github.com/globalsign/mgo/pull/4), [more](https://github.com/globalsign/mgo/pull/24), [more](https://github.com/globalsign/mgo/pull/35))\n* Improved multi-document transaction performance ([details](https://github.com/globalsign/mgo/pull/10), [more](https://github.com/globalsign/mgo/pull/11), [more](https://github.com/globalsign/mgo/pull/16))\n* Fixes cursor timeouts ([details](https://jira.mongodb.org/browse/SERVER-24899))\n* Support index hints and timeouts for count queries ([details](https://github.com/globalsign/mgo/pull/17))\n* Don't panic when handling indexed `int64` fields ([details](https://github.com/go-mgo/mgo/issues/475))\n* Supports dropping all indexes on a collection ([details](https://github.com/globalsign/mgo/pull/25))\n* Annotates log entries/profiler output with optional appName on 3.4+ ([details](https://github.com/globalsign/mgo/pull/28))\n* Support for read-only [views](https://docs.mongodb.com/manual/core/views/) in 3.4+ ([details](https://github.com/globalsign/mgo/pull/33))\n* Support for [collations](https://docs.mongodb.com/manual/reference/collation/) in 3.4+ ([details](https://github.com/globalsign/mgo/pull/37), [more](https://github.com/globalsign/mgo/pull/166))\n* Provide BSON constants for convenience/sanity ([details](https://github.com/globalsign/mgo/pull/41))\n* Consistently unmarshal time.Time values as UTC ([details](https://github.com/globalsign/mgo/pull/42))\n* Enforces best practise coding guidelines ([details](https://github.com/globalsign/mgo/pull/44))\n* GetBSON correctly handles structs with both fields and pointers ([details](https://github.com/globalsign/mgo/pull/40))\n* Improved bson.Raw unmarshalling performance ([details](https://github.com/globalsign/mgo/pull/49))\n* Minimise socket connection timeouts due to excessive locking ([details](https://github.com/globalsign/mgo/pull/52))\n* Natively support X509 client authentication ([details](https://github.com/globalsign/mgo/pull/55))\n* Gracefully recover from a temporarily unreachable server ([details](https://github.com/globalsign/mgo/pull/69))\n* Use JSON tags when no explicit BSON are tags set ([details](https://github.com/globalsign/mgo/pull/91))\n* Support [$changeStream](https://docs.mongodb.com/manual/changeStreams/) tailing on 3.6+ ([details](https://github.com/globalsign/mgo/pull/97))\n* Fix deadlock in cluster synchronisation ([details](https://github.com/globalsign/mgo/issues/120))\n* Implement `maxIdleTimeout` for pooled connections ([details](https://github.com/globalsign/mgo/pull/116))\n* Connection pool waiting improvements ([details](https://github.com/globalsign/mgo/pull/115))\n* Fixes BSON encoding for `$in` and friends ([details](https://github.com/globalsign/mgo/pull/128))\n* Add BSON stream encoders ([details](https://github.com/globalsign/mgo/pull/127))\n* Add integer map key support in the BSON encoder ([details](https://github.com/globalsign/mgo/pull/140)) \n* Support aggregation [collations](https://docs.mongodb.com/manual/reference/collation/) ([details](https://github.com/globalsign/mgo/pull/144))\n* Support encoding of inline struct references ([details](https://github.com/globalsign/mgo/pull/146))\n* Improved windows test harness ([details](https://github.com/globalsign/mgo/pull/158))\n* Improved type and nil handling in the BSON codec ([details](https://github.com/globalsign/mgo/pull/147/files), [more](https://github.com/globalsign/mgo/pull/181))\n* Separated network read/write timeouts ([details](https://github.com/globalsign/mgo/pull/161))\n* Expanded dial string configuration options ([details](https://github.com/globalsign/mgo/pull/162))\n* Implement MongoTimestamp ([details](https://github.com/globalsign/mgo/pull/171))\n* Support setting `writeConcern` for `findAndModify` operations ([details](https://github.com/globalsign/mgo/pull/185))\n* Add `ssl` to the dial string options ([details](https://github.com/globalsign/mgo/pull/184))\n\n\n---\n\n### Thanks to\n* @aksentyev\n* @bachue\n* @bozaro\n* @BenLubar\n* @carldunham\n* @carter2000\n* @cedric-cordenier\n* @cezarsa\n* @DaytonG\n* @ddspog\n* @drichelson\n* @dvic\n* @eaglerayp\n* @feliixx\n* @fmpwizard\n* @gazoon\n* @gedge\n* @gnawux\n* @idy\n* @jameinel\n* @jefferickson\n* @johnlawsharrison\n* @KJTsanaktsidis\n* @larrycinnabar\n* @mapete94\n* @maxnoel\n* @mcspring\n* @Mei-Zhao\n* @peterdeka\n* @Reenjii\n* @roobre\n* @smoya\n* @steve-gray\n* @tbruyelle\n* @wgallagher\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglobalsign%2Fmgo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fglobalsign%2Fmgo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglobalsign%2Fmgo/lists"}