Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-5786

CI: Use the lowest supported patch-pin of each Node.js version we test

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: CI
    • Not Needed

      Use Case

      As a... user of the Node driver
      I want... the driver to be tested against the lowest supported version of each major
      So that... I can be certain that the driver actually supports my version of the runtime and does not rely on behavior that is only available in later minor or patch versions of my major.

      User Impact

      • Users may need to pin to a specific runtime version for any number of reasons. By allowing the minor and patch of the runtime version in our CI to be pulled in automatically, we risk developing features that are relying on fixes or features that might not be available in our official lowest supported Node.js versions and that would consequently result in bugs for users who are not regularly updating their runtime version.

      Dependencies

      • N/A

      Unknowns

      • Will any of our tests fail when we pin our major versions to the lowest supported patch?
      • Are we already relying on features that are not available in earlier versions of a given major that we support?

      Acceptance Criteria

      Implementation Requirements

      • Our supported node major versions should be pinned in CI as follows:
        • 16 => 16.20.1
        • 18 => 18.0.0
        • 20 => 20.0.0
        • latest - do not update, allow actual latest to be pulled in
      • The repos and branches where we want to update the evergreen config and/or github actions are as follows:
        • node-mongodb-native (main, 5.x, 4.x)
        • js-bson (main, 5.x, 4.x)
        • libmongocrypt - node bindings (master)
        • kerberos (main)
        • zstd (main)
        • nodejs-mongodb-legacy (main)

      Testing Requirements

      • All existing tests should pass
      • If any tests fail, investigate the cause
        • Test only fixes are in scope for this ticket
        • Source code fixes are not in scope for this ticket - skip the test on the affected config and file a follow-up ticket

      Documentation Requirements

      • None

      Follow Up Requirements

      • File tickets for any real bugs that are uncovered, if any

            Assignee:
            Unassigned Unassigned
            Reporter:
            daria.pardue@mongodb.com Daria Pardue
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: