Uploaded image for project: 'Go Driver'
  1. Go Driver
  2. GODRIVER-2708

Merge the "bsoncodec" package into the "bson" package

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 2.0.0
    • Affects Version/s: None
    • Component/s: BSON
    • None
    • Major Change
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      The separation between the BSON packages mostly exists to prevent import cycles, but otherwise doesn't make a lot of sense to users. Additionally, the separation between BSON packages requires that much more code is exported that otherwise doesn't need to be exported. For example, most functions on the the DefaultValueEncoders and DefaultValueDecoders types only need to be exported because they are used by code in the bson package. Otherwise, there is no known use case (there is only a use case for overriding the defaults, not for exposing the defaults).

      Definition of done:

      • Move all exported symbols from the bsoncodec package into the bson package.
        • Maintain only bson.NewRegistry, which builds a default registry. Do not move bsoncodec.NewRegistryBuilder, which builds an empty registry.
      • Update all dependent code in the Go driver to reference bson instead of bsoncodec.
      • Update all documentation in the Go driver to reference bson instead of bsoncodec.

            Assignee:
            qingyang.hu@mongodb.com Qingyang Hu
            Reporter:
            matt.dale@mongodb.com Matt Dale
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: