-
Type: Sub-task
-
Resolution: Fixed
-
Priority: Unknown
-
Affects Version/s: None
-
Component/s: None
Use Case
As a driver engineer,
I want to remove the JS bindings from libmongocrypt,
So that so that our logic can live together in the driver.
User Impact
(see parent ticket)
Dependencies
- done concurrently with
NODE-5419
Unknowns
- How can we generate documentation for `mongodb-client-encryption`?
- We don't document this library.
- What testing do we want to remain in mongodb-client-encryption? What can we test?
Acceptance Criteria
Implementation Requirements
- remove all code and tests from libmongocrypt/bindings/node/lib except for the index.js file
- add Typescript as a dependency and convert the index.js file to Typescript
- add typings for `MongoCrypt` (C++ bindings class) and export both the typings and the MongoCrypt object from the index.ts.
- remove the index.d.ts file
- remove unnecessary dependencies
- @aws/credential-providers
- gcp-metadata
- mongodb
- socks
- clean up unnecessary CI tasks
- remove all build-and-test-node with and without optional dependencies tasks from CI.
- ensure that the build scripts and the release scripts continue to work
Testing Requirements
- _Testing will be addressed in https://jira.mongodb.org/browse/NODE-5432._
Documentation Requirements
- n/a
Follow Up Requirements
- release a pre-release of mongodb-client-encryption@6.0.0 for consumption in the driver