Separate the Go BSON library into its own module

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Won't Do
    • Priority: Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • 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?
    • None
    • None
    • None
    • None
    • None
    • None

      Create a new module and repository for the go.mongodb.org/mongo-driver/bson package. For example, create the "go.mongodb.org/bson" package that points to the "https://github.com/mongodb/go-bson" repository.

      The motivations for this are:

      1. More quickly improve the usability of the BSON library by separating its release schedule from the Go Driver release schedule (i.e. it enables more frequent BSON major version releases).
      2. Make the BSON library more usable by Go devs who don't use MongoDB or the Go Driver.

      Concerning the existing go.mongodb.org/mongo-driver/bson package, there are some options for what to do with it:

      1. Remove it with the next Go Driver major release (currently 2.0) and direct users to update all references to the new package path.
      2. Create a Git submodule that references a version of the proposed "https://github.com/mongodb/go-bson" repo.
      3. Manually maintain the code in the bson/ directory in the Go Driver by copying updates from the proposed "https://github.com/mongodb/go-bson" repo.

      In any case, our goal should be to eventually remove the "bson" package from the Go Driver while easing the transition to the separate module as much as possible.

            Assignee:
            Unassigned
            Reporter:
            Matt Dale
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: