[DRIVERS-2378] Document ClientEncryption methods in more detail Created: 30/Jun/22  Updated: 26/Jul/22

Status: Backlog
Project: Drivers
Component/s: Client Side Encryption
Fix Version/s: None

Type: Spec Change Priority: Unknown
Reporter: Jeremy Mikola Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Driver Changes: Not Needed

 Description   

Summary

ClientEncryption currently shows function signatures and short doc blocks for its public API. There are additional headings for some structs (e.g. DataKeyOpts), but the methods themselves are not discussed in much detail.

This was previously OK for the original API that mainly called out to libmongocrypt, but the recent Key Management API requires more logic within the driver (e.g. RewrapManyDataKey. Drivers currently need to infer implementation details from libmongocrypt's headers and expected commands in spec tests. Ideally, each API method should have a heading and any related opts or result objects should be nested under the respective method heading.

Motivation

Who is the affected end user?

Driver developers.

How does this affect the end user?

Improved documentation would provide more clarify to implementations.

Is this issue urgent?

No, but preferably before more methods are added to ClientEncryption.

Is this ticket required by a downstream team?

No, although this may be relevant to the shell.

Is this ticket only for tests?

No.


Generated at Thu Feb 08 08:25:26 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.