Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v20.12.0 #2622

Merged
merged 91 commits into from
Jan 15, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
377cc56
wiki updates for flatpak stuff (#2401)
failboat78 Sep 24, 2024
abbdb65
refactor: :rotating_light: Use "crate-type"
zmerp Sep 19, 2024
32ecf42
ci: :arrow_up: Update platform tools to v32
zmerp Sep 26, 2024
4e065d4
refactor(streamer): :recycle: Clarify distinction between bitrate and…
zmerp Sep 27, 2024
882f599
chore: :arrow_up: Update some dependencies
zmerp Sep 26, 2024
b4945dc
fix(client_core): :bug: Fix potential blank render bug
zmerp Sep 27, 2024
e6cf41d
Add Quest 3S support
zmerp Sep 27, 2024
c265a03
refactor(client): :recycle: Use VIEW reference space; tweak client API
zmerp Sep 28, 2024
f3e17bb
feat(client): :sparkles: Add platform vendor shortcuts
zmerp Sep 28, 2024
2cb206d
refactor(client): :recycle: Move decoder out of ClientCoreContext; fi…
zmerp Sep 28, 2024
d12051f
feat(client_core): :sparkles: Add `alvr_initialize_logging()` (#2439)
zmerp Oct 4, 2024
09b94b9
fix(client_openxr): :bug: Fix crash on Focus 3 with 0 timestamp (#2440)
zmerp Oct 4, 2024
879bf8d
feat(server_openvr) NVENC AV1 support (#2438)
shinyquagsire23 Oct 5, 2024
022649c
tracking rewrite(1): client API
zmerp Oct 5, 2024
c3caf56
fix(server): 🐛 Fix IDR resend logic (#2403)
Vixea Oct 5, 2024
585b2cb
build: :sparkles: Support aarch64 Windows host
zmerp Oct 7, 2024
12d42f1
fix(client_core): :bug: Fix wrong controller timestamp
zmerp Oct 8, 2024
574e2df
Revert "chore: :arrow_up: Update some dependencies"
zmerp Oct 9, 2024
1d648b8
fix(server_core): :bug: Fix tilt mode origin; refactoring
zmerp Oct 11, 2024
8e5b9ac
tracking rewrite (2): server API
zmerp Oct 13, 2024
443c1cf
Negotiated encoding settings for OLED-based headsets (#2442)
shinyquagsire23 Oct 15, 2024
dfff45a
fix(server_core): :bug: Do not crash with Custom controllers profile
zmerp Oct 17, 2024
70bee44
fix(client_openxr): :bug: Fix blank flashes
zmerp Oct 17, 2024
b3dc5f4
feat(client): :sparkles: Add Pico 4 Ultra support (#2466)
zmerp Oct 20, 2024
d521c7d
fix(client_openxr): :bug: Fix controllers profile for Pico 4 Ultra (#…
zmerp Oct 22, 2024
68d8b80
feat: :sparkles: Use generic loader for Pico >= 4 (#2471)
zmerp Oct 23, 2024
9cc04c5
Create iptables folder during firewall set up if it doesn't exist. (#…
storfors Oct 23, 2024
2027da9
Publish tracking data through VMC Protocol (#2461)
grillo-delmal Oct 26, 2024
d9eb8fe
refactor(server_openvr): :recycle: Refactor around TrackedDevice
zmerp Oct 14, 2024
521f273
refactor(server_openvr): :recycle: Use TrackedDevice for FakeViveTracker
zmerp Oct 18, 2024
6de5c12
fix(client_core): :bug: Fix Pico 4 detection; add Focus Vision (#2479)
zmerp Oct 28, 2024
227c636
Fix SteamVR restart loops on AVP (#2484)
shinyquagsire23 Oct 31, 2024
5185b52
feat-fix(server_openvr): Add timewarped compositing to Windows OpenVR…
shinyquagsire23 Oct 31, 2024
395a5bd
refactor(client): :recycle: Move platform to alvr_system_info; rename…
zmerp Nov 2, 2024
0810ab4
feat: :sparkles: Reduce session file length (#2480)
zmerp Nov 3, 2024
b176fd4
feat(client): :sparkles: Make lobby use passthrough (#2485)
zmerp Nov 4, 2024
77cef4f
feat(server_openvr): Add Quest Pro controller and headset emulation; …
shinyquagsire23 Nov 5, 2024
35e6ece
feat: integrate adb port forwarding (#2451)
E1int Nov 8, 2024
40eedc6
fix(server_openvr): Fix CPU/GPU deadlocking at 100% usage before the …
shinyquagsire23 Nov 9, 2024
c41b842
fix(server_openvr): :bug: Fix prop parse fail; use key name for log
zmerp Nov 8, 2024
d4d3ece
refactor: :lipstick: Fix dashboard spacing; refactor alvr_adb
zmerp Nov 10, 2024
a7a3aaa
refactor(client_openxr): :recycle: Remove redundant state and fix pot…
zmerp Nov 10, 2024
b478361
docs: :memo: Add Steam store link
zmerp Nov 11, 2024
240071a
feat(xtask): :sparkles: Add Pico store build; fix Pico 4e and G3
zmerp Nov 13, 2024
7b3e813
fix(adb): fix device serial parsing and use TCP (#2507)
E1int Nov 14, 2024
7656b24
feat(server_openvr): :sparkles: Add option to disable hand skeleton p…
zmerp Nov 17, 2024
66f8e10
feat(adb): add client flavors and autolaunch (#2515)
E1int Nov 19, 2024
0943276
fix(sockets): :bug: Ignore error 997 (overlapped IO) (#2522)
zmerp Nov 19, 2024
ffff2c7
refactor(client_core): :recycle: Port FFE to Rust and remove all C++ …
zmerp Nov 21, 2024
18f0451
build(xtask): :green_heart: Pin cargo-about (#2524)
zmerp Nov 21, 2024
57369fd
build(xtask): :green_heart: Really fix cargo about (#2525)
zmerp Nov 22, 2024
606286b
feat(client): :sparkles: Add passthrough alpha support (#2527)
zmerp Nov 23, 2024
569e617
refactor(launcher): refactor client APK installation from launcher (#…
E1int Nov 29, 2024
2c6c009
refactor(client_openxr): :recycle: Do not recreate OpenXR session (#2…
zmerp Nov 29, 2024
ccea486
docs(linux): update wiki (#2512)
Meister1593 Nov 29, 2024
5802640
docs: fix wiki breaking yet again (#2540)
The-personified-devil Nov 29, 2024
eeeb193
docs: temp fix for quest framerate throttling (#2538)
OzzyHelix Dec 1, 2024
a3c74b9
fix(xtask): 🐛 Fix package commands; update release ci (#2545)
zmerp Dec 1, 2024
01c62d5
build(xtask): 🔧 Fix Flatpak script (#2547)
zmerp Dec 1, 2024
77eda0a
chore: recreate logos as SVG (#2548)
issacdowling Dec 1, 2024
9489228
fix: 🐛 Fix package-launcher requiring openvr submodule (#2549)
zmerp Dec 1, 2024
0d144d4
fix(dashboard): :bug: Reject unsupported servers (#2536)
zmerp Dec 3, 2024
4ca928b
feat(client): ✨ Add reprojection support for C API (#2543)
zmerp Dec 3, 2024
410deea
chore(ci): update deprecated actions (#2554)
The-personified-devil Dec 7, 2024
9e7cfee
chore(xtask): Dont run submodule update (#2556)
The-personified-devil Dec 7, 2024
67b225e
chore: Add composited background resource (#2561)
zmerp Dec 7, 2024
251a06c
docs(linux): fix for no steamvr dashboard on hybrid graphics (#2511)
yobson1 Dec 8, 2024
a1bb275
chore(cpp): Fix warnings from openvr headers
The-personified-devil Dec 11, 2024
41e7540
chore(xtask): Fully remove windows installer
The-personified-devil Dec 11, 2024
4c5b6e5
chore: Bump rust msrv to 1.82
The-personified-devil Dec 11, 2024
dd84036
chore: Fix clippy lints
The-personified-devil Dec 11, 2024
3b76eb8
chore(ci): fix cargo msrv and print clippy output
The-personified-devil Dec 12, 2024
4ff7e5f
feat(common): :sparkles: Add `Pose * DeviceMotion` operator (#2574)
zmerp Dec 15, 2024
10cc7fe
refactor(client_openxr): :recycle: Refactor around reference spaces (…
zmerp Dec 16, 2024
6891105
fix(client_openxr): :bug: Fix head angular velocity (#2577)
zmerp Dec 16, 2024
a5c9050
chore: :green_heart: Fix CI build (#2578)
zmerp Dec 17, 2024
b536e54
fix launcher on deck (#2585)
Vixea Dec 22, 2024
ef812d7
Made the dashboard and launcher report respective appids to the syste…
Kirottu Dec 27, 2024
a5f5b5a
fix(server_openvr): :bug: Fix tracked toggle for controllers (#2604)
zmerp Jan 4, 2025
9811396
fix(server_core): :bug: Don't trigger ALVR gestures if holding contro…
zmerp Jan 5, 2025
862a8ea
Full range wgpu partial fix (#2597)
shinyquagsire23 Jan 5, 2025
d27590e
fix(server_core): :bug: Fix controllers disabling with lag (#2609)
zmerp Jan 6, 2025
1d79db5
fix(client): :bug: Fix controller angular velocity for some devices; …
zmerp Jan 8, 2025
0944b95
Add support for Virtual Audio Cable (#2483)
DevanWolf Jan 9, 2025
57cfd8b
docs: :memo: Mark Vive Focus Vision as supported (#2613)
zmerp Jan 13, 2025
c1d135c
fix(client): 🐛 Fix Pico wrong prediction; refactoring (#2612)
zmerp Jan 13, 2025
c6ab7e1
fix(server_core): :bug: Fix server locking the session unnecessarily …
zmerp Jan 15, 2025
8baf1f0
fix(client_openxr): :bug: Fix crash on unsupported eye tracking permi…
zmerp Jan 15, 2025
de291bf
feat: Make on connect script toggle only + disable remote dash by def…
The-personified-devil Jan 15, 2025
64fc349
Bump to v20.12.0
zmerp Jan 15, 2025
08902c8
chore: fix prepare-release ci (#2624)
The-personified-devil Jan 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 0 additions & 3 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
* text=auto eol=lf

alvr/client_core/cpp/VrApi_* linguist-vendored
alvr/client_core/cpp/glm/** linguist-vendored
alvr/client_core/cpp/tinygltf/** linguist-vendored
alvr/server_openvr/cpp/alvr_server/include/** linguist-vendored
alvr/server_openvr/cpp/alvr_server/nvEncodeAPI.h linguist-vendored
alvr/server_openvr/cpp/platform/win32/NvCodecUtils.h linguist-vendored
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/prepare-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ jobs:
- uses: actions/checkout@v2
with:
ref: ${{ needs.prepare_release.outputs.release_ref }}
submodules: true

- uses: actions-rs/toolchain@v1
with:
Expand All @@ -87,9 +88,8 @@ jobs:
env:
RUST_BACKTRACE: 1
run: |
cargo xtask prepare-deps --platform windows --ci
cargo xtask package-streamer --gpl
cargo xtask package-launcher
cargo xtask package-streamer --gpl --ci
cargo xtask package-launcher --ci

- name: Upload streamer
uses: actions/upload-release-asset@v1
Expand Down Expand Up @@ -117,6 +117,7 @@ jobs:
- uses: actions/checkout@v2
with:
ref: ${{ needs.prepare_release.outputs.release_ref }}
submodules: true

- uses: actions-rs/toolchain@v1
with:
Expand All @@ -132,15 +133,14 @@ jobs:
sudo apt-get update
sudo apt-get install libfuse2 build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libx265-dev cmake libasound2-dev libjack-jackd2-dev libxrandr-dev libunwind-dev libffmpeg-nvenc-dev nvidia-cuda-toolkit libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev
cp alvr/xtask/deb/cuda.pc /usr/share/pkgconfig
cargo xtask prepare-deps --platform linux

- name: Build and package ALVR (.tar.gz)
id: build
env:
RUST_BACKTRACE: 1
run: |
cargo xtask package-streamer --gpl
cargo xtask package-launcher
cargo xtask package-streamer --gpl --ci
cargo xtask package-launcher --ci

- name: Upload streamer (tar.gz)
uses: actions/upload-release-asset@v1
Expand Down Expand Up @@ -168,6 +168,7 @@ jobs:
- uses: actions/checkout@v2
with:
ref: ${{ needs.prepare_release.outputs.release_ref }}
submodules: true

- name: Build and install dependencies
env:
Expand Down Expand Up @@ -200,6 +201,7 @@ jobs:
- uses: actions/checkout@v2
with:
ref: ${{ needs.prepare_release.outputs.release_ref }}
submodules: true

- uses: actions-rs/toolchain@v1
with:
Expand All @@ -212,7 +214,7 @@ jobs:
java-version: "17"
- uses: android-actions/setup-android@v3
with:
packages: "platforms;android-29"
packages: "platforms;android-32"
- uses: nttld/setup-ndk@v1
id: setup-ndk
with:
Expand All @@ -223,9 +225,7 @@ jobs:
env:
RUST_BACKTRACE: 1
ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
run: |
cargo xtask prepare-deps --platform android --ci
cargo xtask package-client
run: cargo xtask package-client --ci

- name: Sign APK
uses: ilharp/sign-android-release@v1
Expand Down
191 changes: 79 additions & 112 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,191 +11,158 @@ env:

jobs:
check-windows:
runs-on: windows-2019
runs-on: windows-2022
env:
LIBCLANG_PATH: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\Llvm\x64\bin'
LIBCLANG_PATH: 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin'
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
submodules: true
- uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
override: true
components: clippy
- uses: Swatinem/rust-cache@v1
- uses: Swatinem/rust-cache@v2

- run: cargo xtask prepare-deps --platform windows
- name: Prepare deps
env:
RUST_BACKTRACE: 1
run: cargo xtask prepare-deps --platform windows

- uses: ErichDonGubler/clippy-check@fix-windows-lf-breaking-reports
with:
token: ${{ secrets.GITHUB_TOKEN }}
- run: cargo xtask clippy --ci

check-linux:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
submodules: true
- uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
override: true
components: clippy
- uses: Swatinem/rust-cache@v1
- uses: Swatinem/rust-cache@v2

- name: Build and install dependencies
env:
RUST_BACKTRACE: 1
- name: Install dependencies
run: |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
echo "deb http://ppa.launchpad.net/pipewire-debian/pipewire-upstream/ubuntu $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/pipewire-upstream.list
sudo apt update
sudo apt install build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libx265-dev cmake libasound2-dev libjack-jackd2-dev libxrandr-dev libunwind-dev libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev
cargo xtask prepare-deps --platform linux --no-nvidia
sudo apt install build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libasound2-dev libxrandr-dev libunwind-dev libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev

- uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --features gpl
- name: Prepare deps
env:
RUST_BACKTRACE: 1
run: cargo xtask prepare-deps --platform linux --no-nvidia

- run: cargo xtask clippy --ci

check-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
submodules: true
- uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
override: true
components: clippy
- uses: Swatinem/rust-cache@v1
- uses: Swatinem/rust-cache@v2

- run: cargo xtask prepare-deps --platform macos
# This step currently does nothing on macos, but might in the future
# - run: cargo xtask prepare-deps --platform macos

- uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
- run: cargo clippy

build-android:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
profile: minimal
toolchain: stable
override: true
- uses: actions-rs/toolchain@v1
submodules: true
- uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
target: aarch64-linux-android
override: true
- uses: Swatinem/rust-cache@v1
targets: aarch64-linux-android
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: '17'
- uses: android-actions/setup-android@v3
with:
packages: 'platforms;android-29'
packages: 'platforms;android-32'
- uses: nttld/setup-ndk@v1
id: setup-ndk
with:
ndk-version: r26b

- name: Install deps
uses: actions-rs/cargo@v1
with:
command: install
args: cargo-apk
run: cargo install cargo-apk

# Create folder without content to make the build succeed
- run: |
mkdir -p deps/android_openxr/arm64-v8a
cargo xtask prepare-deps --platform android
- run: mkdir -p deps/android_openxr/arm64-v8a

- name: Build client
env:
ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
working-directory: ./alvr/client_openxr
run:
cargo xtask build-client
run: cargo xtask build-client

tests:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
toolchain: stable
override: true
- uses: Swatinem/rust-cache@v1

- name: Build and install dependencies
env:
RUST_BACKTRACE: 1
run: |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
echo "deb http://ppa.launchpad.net/pipewire-debian/pipewire-upstream/ubuntu $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/pipewire-upstream.list
sudo apt update
sudo apt install build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libx265-dev cmake libasound2-dev libjack-jackd2-dev libxrandr-dev libunwind-dev libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev
cargo xtask prepare-deps --platform linux --no-nvidia
submodules: true
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2

- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test
args: -p alvr_session
run: cargo test -p alvr_session

check-format:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
override: true
components: rustfmt

- run: cargo xtask check-format

check-msrv-windows:
runs-on: windows-2019
runs-on: windows-2022
env:
LIBCLANG_PATH: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\Llvm\x64\bin'
LIBCLANG_PATH: 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin'
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
profile: minimal
toolchain: stable
override: true
- uses: Swatinem/rust-cache@v1
submodules: true
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2

# Fix actions rust install and msrv both being stupid
- run: rustup update

- run: |
cargo xtask prepare-deps --platform windows
cargo xtask check-msrv
- name: Prepare deps
env:
RUST_BACKTRACE: 1
run: cargo xtask prepare-deps --platform windows

- run: cargo xtask check-msrv

check-msrv-linux:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions/checkout@v4
with:
profile: minimal
toolchain: stable
override: true
- uses: Swatinem/rust-cache@v1
submodules: true
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2

- name: Build and install dependencies
env:
RUST_BACKTRACE: 1
- name: Install dependencies
run: |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
echo "deb http://ppa.launchpad.net/pipewire-debian/pipewire-upstream/ubuntu $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/pipewire-upstream.list
sudo apt update
sudo apt install build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libx265-dev cmake libasound2-dev libjack-jackd2-dev libxrandr-dev libunwind-dev libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev
cargo xtask prepare-deps --platform linux --no-nvidia
sudo apt install build-essential pkg-config nasm libva-dev libdrm-dev libvulkan-dev libx264-dev libasound2-dev libxrandr-dev libunwind-dev libgtk-3-dev libpipewire-0.3-dev libspa-0.2-dev

- name: Prepare deps
env:
RUST_BACKTRACE: 1
run: cargo xtask prepare-deps --platform linux --no-nvidia

- run: cargo xtask check-msrv
Loading