• Type: Icon: Epic Epic
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • bson-5.0.0
    • Affects Version/s: None
    • Component/s: None
    • Done
    • BSON V5
    • 5
    • 6
    • 6
    • 100
    • Hide

      2023-02-02: Complete!


      Engineer: Neal Beeken

      2023-01-20:

      • Status update:
        • Added versioning to bson type classes and assert version in serialize and stringify
        • Working on wrapping up remaining tickets for the release.
      • Rationale for delays:
        • No delays.
      • Risks:
        • No risks.

      2023-01-06:

      • Status update:
        • Released the alpha version of Bson V5
        • Working on wrapping up remaining tickets for the release.
      • Rationale for delays:
        • Extending end day and increasing the cost for remaining tickets and the migration guide to BSON V5.
      • Risks:
        • No risks.

      2022-12-23:

      • Status update:
      1. Remaining tickets in review.
      2. Migration guide up next.
      • Rationale for delays:
      1. No delays.
      • Risks:
      1. No risks

      2022-12-09:

      • Status update:
        • Completed the removal of deprecated items and switch to Object.keys to enumerate keys on a JS object passed to BSON.
        • Working on errors for non-object inputs when encoding BSON and BSON default export.
      • Rationale for delays:
        • No delays.
      • Risks:
        • No risks.

      2022-11-23:

      • Status update:
        • Working on removal of deprecated items and switch to Object.keys to enumerate keys on a JS object passed to BSON.
      • Rationale for delays:
        • No delays.
      • Risks:
        • No risks.

      2022-11-11:

      • Status update:
        • Working on refactoring BSON to work with only cross platform JS APIs. 
        • Not incrementing cost due to PTO.
      • Rationale for delays:
        • No delays.
      • Risks:
        • No risks.

      2022-10-28:

      • Status update:
        • Working on refactoring BSON to work with only cross platform JS APIs. 
      • Rationale for delays:
        • No delays.
      • Risks:
        • No risks.
      Show
      2023-02-02: Complete! Engineer: Neal Beeken 2023-01-20: Status update: Added versioning to bson type classes and assert version in serialize and stringify Working on wrapping up remaining tickets for the release. Rationale for delays: No delays. Risks: No risks. 2023-01-06: Status update: Released the alpha version of Bson V5 Working on wrapping up remaining tickets for the release. Rationale for delays: Extending end day and increasing the cost for remaining tickets and the migration guide to BSON V5. Risks: No risks. 2022-12-23: Status update: Remaining tickets in review. Migration guide up next. Rationale for delays: No delays. Risks: No risks 2022-12-09: Status update: Completed the removal of deprecated items and switch to Object.keys to enumerate keys on a JS object passed to BSON. Working on errors for non-object inputs when encoding BSON and BSON default export. Rationale for delays: No delays. Risks: No risks. 2022-11-23: Status update: Working on removal of deprecated items and switch to Object.keys to enumerate keys on a JS object passed to BSON. Rationale for delays: No delays. Risks: No risks. 2022-11-11: Status update: Working on refactoring BSON to work with only cross platform JS APIs.  Not incrementing cost due to PTO. Rationale for delays: No delays. Risks: No risks. 2022-10-28: Status update: Working on refactoring BSON to work with only cross platform JS APIs.  Rationale for delays: No delays. Risks: No risks.

      Summary

      The attached ticket represent the deprecations to be made in the current (v4) major version of the BSON library
      as well as the removals these deprecations represent for (v5). Additionally, there are breaking changes that fix certain long outstanding issues
      that we do not want to ship within a major release.

      Motivation

      Who is the affected end user?

      Driver engineers will have an improved maintenance and feature work experience by dropping old code and platforms.
      Driver users will benefit from code being transpired to a later version of JS.
      BSON front end users will benefit from a BSON library that is written to target Javascript platforms more generally by avoiding node specific APIs that now have common equivalents.

      How does this affect the end user?

      There will be a migration guide that may require some code changes.
      The majority of the changes will impact a small subset of users.
      Support will be dropped for Node versions below 14, and Internet Explorer.

      How likely is it that this problem or use case will occur?

      This is mostly feature work, but a number of the bundling versions / legacy support setups are blockers to helping fix future issues.
      (ex. Mocha, our test runner, cannot be upgraded from a version that was released 5 years ago)

      If the problem does occur, what are the consequences and how severe are they?

      N/A

      Is this issue urgent?

      No.

      Is this ticket required by a downstream team?

      Some tickets in this EPIC are relevant to devtools, none are blockers / required.

      Is this ticket only for tests?

      No.

            Assignee:
            neal.beeken@mongodb.com Neal Beeken
            Reporter:
            martin.bajana@mongodb.com Martin Bajana
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              17 weeks, 3 days