yggvault ratatoskr-space connected via regular web
Color theme
also available via yggdrasil mesh http://[203:b338:2a84:a18f:986:47ae:1a4:d8d3]/pkg/ruview/v1585
vault / ruview / v1585

ruview @ v1585

integrity

size
61.1 MiB
downloaded
last checked
source https://github.com/ruvnet/RuView · available · github

release notes

Automated release from CI pipeline

Changes: fix(auth): match the Bearer scheme case-insensitively (RFC 6750) (#929)

require_bearer parsed the Authorization header with strip_prefix("Bearer "), which is case-sensitive. Per RFC 6750 §2.1 / RFC 7235 §2.1 the auth-scheme is case-insensitive, so a correct token sent as Authorization: bearer <token> (or BEARER, or with extra whitespace) was rejected with a confusing "invalid bearer token" 401 — needless friction when setting up RUVIEW_API_TOKEN (the active #864/#924 theme).

Now the scheme is matched with eq_ignore_ascii_case and leading token whitespace trimmed. The token comparison itself is unchanged — still exact and constant-time (ct_eq) — so this does not weaken auth: a wrong token or a non-Bearer scheme (Basic …) still returns 401.

New test accepts_case_insensitive_bearer_scheme covers bearer/BEARER/ extra-space (accept) and wrong-token/Basic (still reject). bearer_auth suite: 9 passed.

Docker Image: ghcr.io/ruvnet/RuView:be48143f774770ad1b89f2491473306f55004847

download

unix · zip
curl -fL -o v1585.zip https://ratatoskr.space/pkg/ruview/v1585.zip
                    printf '%s  %s\n' '1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10' 'v1585.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/ruview/v1585.zip"
$out = "v1585.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1585.tar.gz https://ratatoskr.space/pkg/ruview/v1585.tar.gz
                    printf '%s  %s\n' 'b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6' 'v1585.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/ruview/v1585.tar.gz"
$out = "v1585.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v1585.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.zip
                    printf '%s  %s\n' '1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10' 'v1585.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.zip"
$out = "v1585.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1585.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz
                    printf '%s  %s\n' 'b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6' 'v1585.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz"
$out = "v1585.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6") { throw "sha256 mismatch" }
artifact format size hashes
v1585.zip zip 61.1 MiB
blake3-24 4b09e4fd12a4ef0b017595a49ab422b15b03989c2b5686da
sha256 1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10
sha1 2972f0fafd7628dfc303b918f35de87365a558bc
v1585.tar.gz tar.gz 59.3 MiB
blake3-24 ea224790814ca8e583eabe9277b0263eb8dd56fdb163481f
sha256 b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6
sha1 24f80b43087dfbee472bf3ee8ba0e2c3ebbeaa6c

install

bazel
http_archive(
    name = "ruview",
    urls = ["https://ratatoskr.space/pkg/ruview/v1585.tar.gz"],
    integrity = "sha256-twJzNAtlR0uCiDz32TbYR8M/w2A5S41zDGOT5ePFYbY=",
    strip_prefix = "ruview-v1585",
)
zig
.url = "https://ratatoskr.space/pkg/ruview/v1585.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
    name = "ruview",
    urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz"],
    integrity = "sha256-twJzNAtlR0uCiDz32TbYR8M/w2A5S41zDGOT5ePFYbY=",
    strip_prefix = "ruview-v1585",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz",
← v1588v1583 →