oneapi-src / oneapi-src/unified-runtime
Document experimental feature enum policy
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 57
- Forks
- 120
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 1
Description
We have a kind of informal system in place where experimental features extending enums explicitly define new enum values in such a way as to not collide with the core values or ones added by other experimental features. For example:
https://github.com/oneapi-src/unified-runtime/pull/1400/files#diff-88d57250473caecebcb2f3e86fe24a0b37df274b69446e5e85335a5cdd649a9cR22
https://github.com/oneapi-src/unified-runtime/blob/main/scripts/core/exp-bindless-images.yml#L87
https://github.com/oneapi-src/unified-runtime/blob/main/scripts/core/exp-command-buffer.yml#L22
To make sure this is consistently followed we should document how we want this to work in here.
We should also evaluate whether we can do without explicitly defining new values like this. Right now the spec and experimental features live in the same place and are delivered as one, there isn't a way for the two to get out of sync, so is there a compelling reason to go out of our way to make sure these enum values remain static?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with core/CONTRIB.html#experimental-features and compare the linked exp-bindless-images.yml and exp-command-buffer.yml examples with the referenced pull request. Document the enum-value policy there and record the conclusion and rationale about whether explicitly fixed experimental values are still necessary.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100