Skip to content

Commit

Permalink
OpenXR SDK 1.1.36 (2024-04-15)
Browse files Browse the repository at this point in the history
This is a substantial update to the OpenXR specification. The OpenXR
loader in this release supports both OpenXR 1.0 and 1.1, and sample
applications such as hello_xr continue to only require OpenXR 1.0. The
schema associated with the xr.xml description of OpenXR has received a
small but breaking change, so software that parses it may need an update
accordingly. Additionally, the protocol for the OpenXR loader on Android
to communicate with system or installable runtime brokers has been
extended for improvfed backward- and forward-compatibility; see the
changes to the loader design document for more information.

-   Registry
    -   New ratified Khronos extension: XR_KHR_locate_spaces (internal
        MR 2272, internal issue 1706)
    -   New ratified Khronos extension: XR_KHR_maintenance1 (internal MR
        3053)
    -   New ratified OpenXR version: XR_VERSION_1_1 - OpenXR 1.1.
        (internal MR 3053)
    -   New multi-vendor extension: XR_EXT_future (internal MR 2610)
    -   New vendor extension: XR_META_environment_depth (internal MR
        2771, internal MR 3271)
    -   Mark XR_OCULUS_android_session_state_enable as deprecated.
        (internal MR 3255)
    -   Update the XML schema to change how dependencies are described
        (replacing requiresCore and requires attributes of extension,
        and feature and extension attributes of require, with a new
        depends attribute.). This is a breaking change of the XML
        schema, though in an infrequently processed attribute. This
        corresponds to the change made in Vulkan 1.3.241. (internal MR
        3260)
-   SDK
    -   API dump layer: Handle opaque futures defined by XR_EXT_future.
        (internal MR 2610)
    -   API dump layer: Zero initialize out-param in calls to
        xrResultToString and xrStructureTypeToString. (internal MR 3284)
    -   Android loader: Build using NDK 23.2. (internal MR 2992)
    -   Android loader: Allow the loader to check multiple records from
        the broker, for backward- and forward-compatibility (internal MR
        3269, internal issue 2226)
    -   Loader: Improve error logging in the case that the Windows
        registry ActiveRuntime path cannot be parsed or found. (internal
        MR 3015, internal issue 2125)
    -   Loader: Remove path separator parsing from Windows registry
        ActiveRuntime path to fix bug. (internal MR 3015)
    -   Loader: Fix build issue for ARMv6 architectures, and note
        architecture naming quirk of Raspberry Pi OS in the architecture
        table in the loader documentation. (OpenXR-SDK-Source PR 464,
        OpenXR-SDK-Source issue 463)
    -   Reduce duplication of environment variable getters and setters.
        (internal MR 3039)
    -   Updates to scripts and software to handle aliases and promoted
        functionality in XR_KHR_maintenance1 and XR_VERSION_1_1
        (internal MR 3053)
    -   hello_xr: Fix Windows mirror window acquire, wait, present loop.
        (internal MR 3289)
    -   hello_xr and other samples: Update Android compile SDK version
        (to 33), NDK version (to 23.2), and build tools version (to
        34.0.0). (internal MR 2992)
    -   hello_xr and runtime list: Request an OpenXR 1.0 instance by
        default. (internal MR 3320)
    -   loader_test: Build fixes to allow loader_test to compile / run
        on Android. (internal MR 3153)

GitOrigin-RevId: 5f8d07b310234c348624ff10252df784aa7908ad
  • Loading branch information
rpavlik committed Apr 15, 2024
1 parent 40f1542 commit 9e9d023
Show file tree
Hide file tree
Showing 190 changed files with 17,460 additions and 2,086 deletions.
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0

version: 1.0.34.{build}
version: 1.1.36.{build}
image: Visual Studio 2017


Expand Down
10 changes: 4 additions & 6 deletions .azure-pipelines/openxr-sdk-source.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,22 +21,20 @@ stages:
- job: loader_docs
pool:
vmImage: "ubuntu-latest"
container: khronosgroup/docker-images:openxr.20230323
# container: khronosgroup/docker-images@sha256:091f1d988744f0b5149126d1f4bdba342b72c01dc90c2d06d4a61738bec5521c
container: khronosgroup/docker-images:openxr.20231010.1@sha256:64798e382f61ef988e30e281e0efef0b46c1aee7c9666587067207b7e270a63f
steps:
- script: make loader
workingDirectory: specification
displayName: Build loader document
- publish: $(System.DefaultWorkingDirectory)/specification/generated/out/1.0/loader.html
- publish: $(System.DefaultWorkingDirectory)/specification/generated/out/1.1/loader.html
artifact: LoaderDoc

- stage: Generate
jobs:
- job: archive
pool:
vmImage: "ubuntu-latest"
container: khronosgroup/docker-images:openxr.20230323
# container: khronosgroup/docker-images@sha256:091f1d988744f0b5149126d1f4bdba342b72c01dc90c2d06d4a61738bec5521c
container: khronosgroup/docker-images:openxr.20231010.1@sha256:64798e382f61ef988e30e281e0efef0b46c1aee7c9666587067207b7e270a63f
steps:
- script: make loader
workingDirectory: specification
Expand Down Expand Up @@ -64,7 +62,7 @@ stages:
presentationBackend: wayland
pool:
vmImage: "ubuntu-latest"
container: khronosgroup/docker-images:openxr-pregenerated-sdk.20230323
container: khronosgroup/docker-images:openxr-pregenerated-sdk.20240412@sha256:0006d0994219477d460953f0eda1fa6053f770c68da23b190be7c0d067f078b5
# container: sha256:845e19e59f22c29fedc33dcaa4f3c5f8aa44e367283ef955c7549239cf9a46d2
steps:
- task: DownloadPipelineArtifact@2
Expand Down
3 changes: 1 addition & 2 deletions .azure-pipelines/shared/build_jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,7 @@ jobs:
presentationBackend: wayland
pool:
vmImage: "ubuntu-latest"
# 20230614
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
container: khronosgroup/docker-images:openxr-sdk.20240412@sha256:e477137f8558565ac9173de8713a3e44d6d564ba042db9a20ff560eb4bfdeccc

steps:
# First build as debug
Expand Down
3 changes: 1 addition & 2 deletions .azure-pipelines/shared/check_clang_format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ jobs:
displayName: "clang-format"
pool:
vmImage: "ubuntu-latest"
# 20230614
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
container: khronosgroup/docker-images:openxr-sdk.20240412@sha256:e477137f8558565ac9173de8713a3e44d6d564ba042db9a20ff560eb4bfdeccc

steps:
- checkout: self
Expand Down
3 changes: 1 addition & 2 deletions .azure-pipelines/shared/check_file_format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@ jobs:
displayName: "Check file formatting"
pool:
vmImage: "ubuntu-latest"
# 20230614
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
container: khronosgroup/docker-images:openxr-sdk.20240412@sha256:e477137f8558565ac9173de8713a3e44d6d564ba042db9a20ff560eb4bfdeccc

steps:
- script: ./file_format.sh
Expand Down
3 changes: 1 addition & 2 deletions .azure-pipelines/shared/codespell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ jobs:
displayName: "codespell"
pool:
vmImage: "ubuntu-latest"
# 20230614
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
container: khronosgroup/docker-images:openxr-sdk.20240412@sha256:e477137f8558565ac9173de8713a3e44d6d564ba042db9a20ff560eb4bfdeccc

steps:
- checkout: self
Expand Down
1 change: 1 addition & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
# git config blame.ignoreRevsFile .git-blame-ignore-revs

## Old changes
0c93c42891ad6b95aee81709398ded7416c9f397
767537d9523253de1615b01450a8b22c8e2cc6a2

## 1.0.17 - Fix XML indentation
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/check_clang_format_and_codespell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@ jobs:
clang-format:
runs-on: ubuntu-latest
container:
# 20230614
image: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
image: khronosgroup/docker-images:openxr-sdk.20240412@sha256:e477137f8558565ac9173de8713a3e44d6d564ba042db9a20ff560eb4bfdeccc

steps:
- uses: actions/checkout@v4
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/gradle-wrapper-validation.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Copyright 2022-2023, Collabora, Ltd.
# Copyright 2022-2024, Collabora, Ltd.
#
# SPDX-License-Identifier: CC0-1.0

name: Validate Gradle Wrapper
Expand All @@ -18,4 +19,4 @@ jobs:
- uses: actions/checkout@v4
with:
lfs: true
- uses: gradle/wrapper-validation-action@v3
- uses: gradle/actions/wrapper-validation@v3
9 changes: 9 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,20 @@ Blake Taylor <rotaylor@magicleap.com>
Bryce Hutchings <bryceh@microsoft.com>
Bryce Hutchings <bryceh@microsoft.com> <5100250+brycehutchings@users.noreply.github.com>
Bryce Hutchings <bryceh@microsoft.com> <me@bryce.ws>
Daniel Willmott <39023874+danwillm@users.noreply.github.com>
Ivan Chupakhin <ivan.chupakhin@almalence.com>
Ivan Chupakhin <ivan.chupakhin@almalence.com> <Gurinchi@gmail.com>
Kevin Qin <zheng.qin@microsoft.com>
Kevin Qin <zheng.qin@microsoft.com> <zheqi@microsoft.com>
Khronos Group Web Services <webservices@khronos.org>
Khronos Group Web Services <webservices@khronos.org> <webmaster@khronos.org>
Liu Knox <dengkail@qti.qualcomm.com> <dengkail@qti.qualcom.com>
OC Lin <oc.lin@acer.com>
Rachel Huang <rachel.huang@huawei.com>
Rylie Pavlik <rylie.pavlik@collabora.com>
Rylie Pavlik <rylie.pavlik@collabora.com> <ryan.pavlik@collabora.com>
Rylie Pavlik <rylie.pavlik@collabora.com> <ryan.pavlik@gmail.com>
Yin Li <yl@microsoft.com>
samuel degrande <samuel.degrande@univ-lille.fr>
utzcoz <utzcoz@outlook.com>
utzcoz <utzcoz@outlook.com> <43091780+utzcoz@users.noreply.github.com>
4 changes: 4 additions & 0 deletions .proclamation.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@
"news_filename": "CHANGELOG.Docs.md",
"template": "changes/template.md",
"sections": {
"Major Update": {
"directory": "changes/major",
"sort_by_prefix": true
},
"Registry": {
"directory": "changes/registry",
"sort_by_prefix": true
Expand Down
6 changes: 6 additions & 0 deletions .reuse/dep5
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ Upstream-Contact: Rylie Pavlik <openxr-speceditor AT khronos DOT org>
Source: https://registry.khronos.org/OpenXR/

Files: changes/conformance/*
changes/major/*
changes/registry/*
changes/sdk/*
changes/specification/*
Expand Down Expand Up @@ -79,6 +80,11 @@ Files: external/python/markupsafe/*
Copyright: 2010 Pallets
License: BSD-3-Clause

Files: external/python/pyparsing/*
external/python/pyparsing-3.1.2.dist-info/*
Copyright: 2003-2022, Paul T. McGuire <ptmcg.gm+pyparsing@gmail.com>
License: BSD-3-Clause

Files: specification/sources/chapters/extensions/epic/epic_view_configuration_fov.adoc
Copyright: 2020, Epic Games, Inc.
License: CC-BY-4.0
Expand Down
71 changes: 71 additions & 0 deletions CHANGELOG.SDK.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,77 @@ along with any public pull requests that have been accepted.
In this repository in particular, since it is primarily software,
pull requests may be integrated as they are accepted even between periodic updates.

## OpenXR SDK 1.1.36 (2024-04-15)

This is a substantial update to the OpenXR specification. The OpenXR loader in
this release supports both OpenXR 1.0 and 1.1, and sample applications such as
hello_xr continue to only require OpenXR 1.0. The schema associated with the
`xr.xml` description of OpenXR has received a small but breaking change, so
software that parses it may need an update accordingly. Additionally, the
protocol for the OpenXR loader on Android to communicate with system or
installable runtime brokers has been extended for improvfed backward- and
forward-compatibility; see the changes to the loader design document for more
information.

- Registry
- New ratified Khronos extension: `XR_KHR_locate_spaces`
([internal MR 2272](https://gitlab.khronos.org/openxr/openxr/merge_requests/2272),
[internal issue 1706](https://gitlab.khronos.org/openxr/openxr/issues/1706))
- New ratified Khronos extension: `XR_KHR_maintenance1`
([internal MR 3053](https://gitlab.khronos.org/openxr/openxr/merge_requests/3053))
- New ratified OpenXR version: `XR_VERSION_1_1` - OpenXR 1.1.
([internal MR 3053](https://gitlab.khronos.org/openxr/openxr/merge_requests/3053))
- New multi-vendor extension: `XR_EXT_future`
([internal MR 2610](https://gitlab.khronos.org/openxr/openxr/merge_requests/2610))
- New vendor extension: `XR_META_environment_depth`
([internal MR 2771](https://gitlab.khronos.org/openxr/openxr/merge_requests/2771),
[internal MR 3271](https://gitlab.khronos.org/openxr/openxr/merge_requests/3271))
- Mark `XR_OCULUS_android_session_state_enable` as deprecated.
([internal MR 3255](https://gitlab.khronos.org/openxr/openxr/merge_requests/3255))
- Update the XML schema to change how dependencies are described (replacing
`requiresCore` and `requires` attributes of `extension`, and `feature` and
`extension` attributes of `require`, with a new `depends` attribute.). This is
a **breaking change** of the XML schema, though in an infrequently processed
attribute. This corresponds to the change made in Vulkan 1.3.241.
([internal MR 3260](https://gitlab.khronos.org/openxr/openxr/merge_requests/3260))
- SDK
- API dump layer: Handle opaque futures defined by `XR_EXT_future`.
([internal MR 2610](https://gitlab.khronos.org/openxr/openxr/merge_requests/2610))
- API dump layer: Zero initialize out-param in calls to `xrResultToString` and
`xrStructureTypeToString`.
([internal MR 3284](https://gitlab.khronos.org/openxr/openxr/merge_requests/3284))
- Android loader: Build using NDK 23.2.
([internal MR 2992](https://gitlab.khronos.org/openxr/openxr/merge_requests/2992))
- Android loader: Allow the loader to check multiple records from the broker, for
backward- and forward-compatibility
([internal MR 3269](https://gitlab.khronos.org/openxr/openxr/merge_requests/3269),
[internal issue 2226](https://gitlab.khronos.org/openxr/openxr/issues/2226))
- Loader: Improve error logging in the case that the Windows registry
`ActiveRuntime` path cannot be parsed or found.
([internal MR 3015](https://gitlab.khronos.org/openxr/openxr/merge_requests/3015),
[internal issue 2125](https://gitlab.khronos.org/openxr/openxr/issues/2125))
- Loader: Remove path separator parsing from Windows registry `ActiveRuntime`
path to fix bug.
([internal MR 3015](https://gitlab.khronos.org/openxr/openxr/merge_requests/3015))
- Loader: Fix build issue for ARMv6 architectures, and note architecture naming
quirk of Raspberry Pi OS in the architecture table in the loader documentation.
([OpenXR-SDK-Source PR 464](https://github.com/KhronosGroup/OpenXR-SDK-Source/pull/464),
[OpenXR-SDK-Source issue 463](https://github.com/KhronosGroup/OpenXR-SDK-Source/issues/463))
- Reduce duplication of environment variable getters and setters.
([internal MR 3039](https://gitlab.khronos.org/openxr/openxr/merge_requests/3039))
- Updates to scripts and software to handle aliases and promoted functionality in
`XR_KHR_maintenance1` and `XR_VERSION_1_1`
([internal MR 3053](https://gitlab.khronos.org/openxr/openxr/merge_requests/3053))
- hello_xr: Fix Windows mirror window acquire, wait, present loop.
([internal MR 3289](https://gitlab.khronos.org/openxr/openxr/merge_requests/3289))
- hello_xr and other samples: Update Android compile SDK version (to 33), NDK
version (to 23.2), and build tools version (to 34.0.0).
([internal MR 2992](https://gitlab.khronos.org/openxr/openxr/merge_requests/2992))
- hello_xr and runtime list: Request an OpenXR 1.0 instance by default.
([internal MR 3320](https://gitlab.khronos.org/openxr/openxr/merge_requests/3320))
- loader_test: Build fixes to allow loader_test to compile / run on Android.
([internal MR 3153](https://gitlab.khronos.org/openxr/openxr/merge_requests/3153))

## OpenXR SDK 1.0.34 (2024-02-16)

This release features a number of new multi-vendor and vendor extensions,
Expand Down
2 changes: 1 addition & 1 deletion changes/registry/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,6 @@ For reserving one or more extensions:
> Extension reservation: Reserve an extension for VendorName.
- Pluralize "an extension" if reserving multiple extensions
- May pre-pend "Register author ID and" if applicable (after the colon).
- May prepend "Register author ID and" if applicable (after the colon).
- You may optionally provide information about your plans for those extensions,
but this is not required, just permitted.
4 changes: 0 additions & 4 deletions changes/sdk/pr.464.gh.OpenXR-SDK-Source.md

This file was deleted.

2 changes: 1 addition & 1 deletion checkCodespell
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ CODESPELL_IGNORE=${CODESPELL_IGNORE:-${DEFAULT_CODESPELL_IGNORE}}
# ba is from a regex
# unknwn is a header file name
# Wee, Ser, Nuber, Blok are names
IGNORE_WORDS="lod,nd,ba,unknwn,wee,ser,nuber,blok"
IGNORE_WORDS="lod,nd,ba,unknwn,wee,ser,nuber,blok,rouge,implementor,implementors"

# Add to this to exclude individual files or directories (comma-delimited)
# - Skipping external code.
Expand Down
18 changes: 18 additions & 0 deletions external/python/pyparsing-3.1.2.dist-info/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Loading

0 comments on commit 9e9d023

Please sign in to comment.