KhronosGroup / KhronosGroup/OpenXR-Docs

API layer version is inconsistently specified

Open
#172 1 comment 0 reactions 0 assignees View on GitHub
synced to gitlab
Dominant language
Python
Stars
181
Forks
74
PR merge metrics
No merged PRs in 30d

Description

- per https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrApiLayerProperties.html "It is an integer [uint32_t], increasing with backward compatible changes."
- per https://registry.khronos.org/OpenXR/specs/1.0/loader.html, "implementation_version" is a string field in the JSON, and "If the API layer itself has any major changes, this number should change."

Concrete issues:

- The JSON is not documented a requiring a uint32_t or even an integer, but it should presumably match
- I'm assuming that "backwards compatible" is a typo, and "backwards incompatible" is meant ?
either way, it has a different meaning to "any major changes"
- There'd also be some debugging value to being able to represent the actual human-readable version number, rather than just a "major changes" version. In practice, I think most layers just use "1".
This would require either that an arbitrary string is allowed, or a much larger type than uint32_t (especially for layers that increment the version number in every CI build). Currently, the description field could be (ab?)used for this

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing the API layer properties page with the OpenXR loader page linked in the issue, focusing on the type and meaning of the version fields. Resolve whether the JSON value must match the uint32_t property, define compatible version semantics, and document the chosen representation consistently in both references.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.