Uploaded image for project: 'C Driver'
  1. C Driver
  2. CDRIVER-2416

Merge libbson repository into mongo-c-driver

    • Type: Icon: Epic Epic
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 1.10.0
    • Affects Version/s: None
    • Component/s: Build
    • Labels:

      Currently libbson is in a separate repository from libmongoc; libmongoc includes it as a Git submodule. This causes various problems. It's difficult to build libmongoc with a bundled checkout of libbson using CMake (CDRIVER-1948). It's confusing to develop new libbson features that libmongoc depends on. Common logic in the test suite and build systems must be duplicated across the two repositories, and inevitably the common logic diverges.

      Replace the git submodule in libmongoc with the contents of the libbson repository and retire the libbson repository. Do this as a fake author to avoid biasing the GitHub contributor stats.

      Merge the two test suites into one: no more test-libbson executable, test-libmongoc should now run all the tests for both libraries.

      Factor the common build logic. If we haven't yet deleted the Autotools scripts (CDRIVER-1349) don't bother factoring the duplicated Autotools logic, only do so for CMake scripts.

      Continue to ship libbson and libmongoc as distinct libraries; only the repositories are merged.

            Assignee:
            roberto.sanchez@mongodb.com Roberto Sanchez
            Reporter:
            jesse@mongodb.com A. Jesse Jiryu Davis
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: