Skip to content

Commit c63b569

Browse files
authored
chore(release): v1.0.1 (#851)
Patch release over 1.0.0: - Gate the browse web UI on private (auth-enabled) deployments — closes an inventory-disclosure gap where /ui, /api/ui and /api-docs were served unauthenticated with anonymous_read off (#850) - Native Google Cloud Storage backend (storage.mode = "gcs") (#842) - Streaming raw uploads and downloads — bounded memory at any size (#845) - rpm/deb repository reconcile (POST /{rpm,deb}/{repo}/-/reindex) (#847)
1 parent 3517d2b commit c63b569

4 files changed

Lines changed: 5 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Changelog
22
## [Unreleased]
33

4+
## [1.0.1] - 2026-07-13
5+
46
### Security
57
- **The browse web UI is now gated on a private deployment.** With auth enabled and `anonymous_read` off, the UI, its JSON API (`/ui`, `/api/ui`), and the API docs (`/api-docs`) were served without authentication — enumerating every repository and package a private registry exists to hide. They now require credentials unless `anonymous_read` (which already exposes the same names through the registry read APIs) or the new `auth.public_web_ui` (`NORA_AUTH_PUBLIC_WEB_UI`, default false) opens them; an unauthenticated request gets a Basic challenge so browsers prompt. Health/readiness probes stay unconditionally public. `/metrics` gets its own `auth.public_metrics` (`NORA_AUTH_PUBLIC_METRICS`, default **true** — scrapers rarely carry credentials and labels name registry formats, not repositories); set it false to gate metrics too. **Behavior change:** operators who relied on an anonymous web UI while keeping the registry APIs authenticated must set `public_web_ui = true` (or enable `anonymous_read`).
68

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ members = [
66
]
77

88
[workspace.package]
9-
version = "1.0.0"
9+
version = "1.0.1"
1010
edition = "2021"
1111
rust-version = "1.88"
1212
license = "MIT"

nora-registry/src/openapi.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use crate::AppState;
2121
#[openapi(
2222
info(
2323
title = "Nora",
24-
version = "1.0.0",
24+
version = "1.0.1",
2525
description = "Multi-protocol package registry supporting Docker, Maven, npm, Cargo, PyPI, Go, Raw, RubyGems, Terraform, Ansible, NuGet, pub.dev, Conan, RPM, and Debian",
2626
license(name = "MIT"),
2727
contact(name = "The NORA Authors", url = "https://getnora.dev")

0 commit comments

Comments
 (0)