Restore the non-default OpenJPEG boundary (#107)
Some checks failed
API and SemVer surface / api-surface (push) Failing after 1m30s
Native code generation / deterministic (push) Has been cancelled
First release candidate / non-fuzz-release-gate (push) Has been cancelled
Native Rust workspace compile / compile (push) Has been cancelled
Dependency and supply-chain audit / audit (push) Has been cancelled
Native release artifact audit / audit (push) Successful in 1h14m10s
Concurrency and resource soak audit / soak (push) Successful in 12m54s
Documentation / documentation (push) Failing after 45m9s
Imaging and meshing gate / native (push) Failing after 2m48s
JPEG 2000 feature / linux (push) Successful in 2m43s
performance evidence / audit (push) Failing after 7m22s
Release platform and feature matrix / audit (push) Successful in 59s
Skia feature / linux (push) Has been cancelled
Release platform and feature matrix / matrix (false, linux-stable-minimal, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (false, macos-stable-portable, x86_64-apple-darwin, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (false, windows-stable-portable, x86_64-pc-windows-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-msrv-portable, x86_64-unknown-linux-gnu, 1.96.0) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-default, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-features, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled
Release platform and feature matrix / matrix (true, linux-stable-release-surface, x86_64-unknown-linux-gnu, stable) (push) Has been cancelled

This commit is contained in:
2026-08-12 15:03:41 +00:00
parent b399645430
commit e5cb3c6803
4 changed files with 33 additions and 15 deletions

View File

@@ -23,6 +23,22 @@ members = [
"tools/concurrency-audit", "tools/concurrency-audit",
"tools/performance", "tools/performance",
] ]
default-members = [
"crates/libremetaverse-types",
"crates/libremetaverse-structured-data",
"crates/libremetaverse-imaging",
"crates/libremetaverse-imaging-skia",
"crates/libremetaverse-prim-mesher",
"crates/libremetaverse",
"crates/libremetaverse-rendering-simple",
"crates/libremetaverse-rendering-mesh-foundry",
"crates/libremetaverse-lsl-tools",
"crates/libremetaverse-rlv",
"crates/libremetaverse-utilities",
"crates/libremetaverse-voice-vivox",
"crates/libremetaverse-opus",
"crates/libremetaverse-voice-webrtc",
]
[workspace.package] [workspace.package]
version = "0.0.1" version = "0.0.1"

View File

@@ -20,13 +20,12 @@ and [`MeshFoundry` guide](../crates/libremetaverse-rendering-mesh-foundry/README
| BMP/GIF/ICO/JPEG/PNG/WBMP/WebP | disabled | `libremetaverse-imaging-skia/skia` | Skia | | BMP/GIF/ICO/JPEG/PNG/WBMP/WebP | disabled | `libremetaverse-imaging-skia/skia` | Skia |
| Prim and sculpt meshing, OBJ ingestion | enabled | n/a | none | | Prim and sculpt meshing, OBJ ingestion | enabled | n/a | none |
OpenJPEG is excluded from the default workspace and is reachable only through OpenJPEG is a non-default workspace member so release tooling can package the
the optional dependency. Skia is an optional, target-specific dependency; adapter explicitly, and imaging reaches it only through the optional
Linux and Windows use the Vulkan-capable binary configuration while macOS uses dependency. Skia is likewise an optional, target-specific dependency. The
the corresponding non-Vulkan binary configuration. Dedicated workflows build dedicated Gitea workflows exercise both optional features on `ubuntu-latest`;
both optional features on Linux, macOS, and Windows. The default the default `imaging-meshing` workflow proves that no native codec is needed
`imaging-meshing` workflow proves that no native codec is needed for the owned for the owned Rust and translated compatibility tests.
Rust and translated compatibility tests.
## Bounds and rendering contract ## Bounds and rendering contract

View File

@@ -102,8 +102,8 @@
}, },
{ {
"path": "Cargo.toml", "path": "Cargo.toml",
"bytes": 1766, "bytes": 2343,
"sha256": "b1f014e37d153c46b56f971e99963a8a9a51cd9e30816331068f9d08bce02449" "sha256": "10ed9e5e0eabc6ea30a2901c6977b38e603254bf70dbd2cb5f74627f0757e46f"
}, },
{ {
"path": "LICENSE.md", "path": "LICENSE.md",
@@ -1627,8 +1627,8 @@
}, },
{ {
"path": "docs/imaging-meshing.md", "path": "docs/imaging-meshing.md",
"bytes": 3475, "bytes": 3413,
"sha256": "1454507d37016db644b3a7871178372a0531ae406cc316c2ca76872d882938e8" "sha256": "46559b199f5ef7de10a3280724cd1b06b733be7a078f85efefc569a001370ca5"
}, },
{ {
"path": "docs/inventory.md", "path": "docs/inventory.md",
@@ -2452,8 +2452,8 @@
}, },
{ {
"path": "tools/check_milestone_06.py", "path": "tools/check_milestone_06.py",
"bytes": 5336, "bytes": 5531,
"sha256": "d6826c8f43c7a41d5e3c12e28cc4c8a955f149776458a907cfe3d25088f61441" "sha256": "a5cc71300f5b28695830eb8e88bbe3da0facad76a11120d0445bbe3a771a6d2c"
}, },
{ {
"path": "tools/check_milestone_08.py", "path": "tools/check_milestone_08.py",

View File

@@ -62,8 +62,11 @@ def check_features() -> None:
): ):
raise SystemExit("every platform-specific Skia dependency must stay optional") raise SystemExit("every platform-specific Skia dependency must stay optional")
workspace = load_toml(ROOT / "Cargo.toml") workspace = load_toml(ROOT / "Cargo.toml")["workspace"]
if "crates/libremetaverse-openjpeg" not in workspace["workspace"].get("exclude", []): adapter = "crates/libremetaverse-openjpeg"
if adapter not in workspace.get("members", []):
raise SystemExit("the native OpenJPEG adapter must remain explicitly packageable")
if adapter in workspace.get("default-members", workspace.get("members", [])):
raise SystemExit("the native OpenJPEG adapter must stay outside default workspace builds") raise SystemExit("the native OpenJPEG adapter must stay outside default workspace builds")