Picking an initial OpenXR version
I'd love to have a way to more intelligently pick an OpenXR version, or version range! Currently, the only way to discover an OpenXR version is to provide a very specific version to xrCreateInstance, and check for XR_ERROR_API_VERSION_UNSUPPORTED.
This results in code that explicitly must check against every supported version using xrCreateInstance, which is not too burdensome yet, but becomes confusing when considering 'patch' versions, and burdensome when considering OpenXR 5-10 years in the future.
I'd also add that I've seen the documentation recommends calling xrCreateInstance with XR_CURRENT_API_VERSION. This seems fairly reasonable, but when using the latest version of the OpenXR Loader (1.1.36) this crashes with XR_ERROR_API_VERSION_UNSUPPORTED, since (as of the moment of writing) no OpenXR Runtime supports 1.1 yet. This seems like a related element that has some room for improvement.
An issue (number 2257) has been filed to correspond to this issue in the internal Khronos GitLab (Khronos members only: KHR:openxr/openxr#2257 ), to facilitate working group processes.
This GitHub issue will continue to be the main site of discussion.
This is partially helped in 1.1.37: we added two new defines to use instead of XR_CURRENT_API_VERSION. Working on establishing the preferred process for picking the right version.