Move explicit resource management into the driver's main export from the`lib/beta` export

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • Not Needed
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Use Case

      As a driver user using explicit resource management,
      I want to easily access this feature,
      So that I can use explicit resource management easily.

      As a driver engineer developing on Node 20+,
      I want to support explicit resource management in the driver without a special export,
      So that explicit resource management is easier to use and easier to support.

      User Experience

      • Users will be able to use explicit resource management without any special imports.

      Dependencies

      • Our minimum supported Node version must define `Symbol.asyncDispose` natively (this is present in Node20+).

      Risks/Unknowns

      • n/a

      Acceptance Criteria

      Implementation Requirements

      • Remove resource_management.ts
        • Remove the TS interfaces - these are now included in Node types
        • Remove the `configureExplicitResourceManagement` function - instead, define `asyncDispose` methods directly on each class.
        • Ensure that the asyncDispose methods are experimental.
      • Remove API extractor configuration that generates the beta namespace.
      • Remove `beta.ts`
      • Remove the explicit resource management tests that test Node versions without `Symbol.dispose` defined.

      Testing Requirements

      • Ensure all tests continue to pass.

      Documentation Requirements

      • n/a

      Follow Up Requirements

      • n/a

            Assignee:
            Unassigned
            Reporter:
            Bailey Pearson
            None
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: