-
-
Notifications
You must be signed in to change notification settings - Fork 791
Open
Labels
documentationAn improvement required in the project's documentation.An improvement required in the project's documentation.enhancementNew features, or improvements to existing features.New features, or improvements to existing features.
Description
What is the problem or limitation you are having?
As noted in #3022, there is very little documentation or formal interface for someone seeking to implement a new backend, or implement a missing piece of an existing backend.
Describe the solution you'd like
Add an implementation guide to the docs. This could cover details such as:
- An overview of the overall structure
- A guide to "first light" for a new backend (what to implement, etc)
- A list of the pieces that need to be implemented (what is required, what is optional but recommended, what is fully optional)
- The formal interface for each piece of the code that needs to be implemented
- Any known quirks, or behavioural edge cases that implementers should look out for
Describe alternatives you've considered
A formal ABC or Protocol specification. This was the original form proposed in #3022. The downside is that introducing this as formal code has a non-zero impact on runtime, won't capture all the underlying details (such as behavioural and semantic details), and is only of interest to a relatively small audience.
Additional context
No response
Metadata
Metadata
Assignees
Labels
documentationAn improvement required in the project's documentation.An improvement required in the project's documentation.enhancementNew features, or improvements to existing features.New features, or improvements to existing features.