-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
The ClientOptions type is unique as it is one of our largest and most complicated options types. We should make sure each option is well-documented and easily discoverable. For ApplyURI, we should document SRV polling for mongos discovery and IPv6 support.
In scope of this ticket, we should also add a top level doc.go file to the mongo/options package that should explain that all options types are builder-style and that we recommend using the builders over manually setting fields in structs as the New* functions may set defaults. We should also document that functions that take variadic options slices will merge them in a last-one wins fashion using the corresponding Merge*Options function.