Release Notes

Noodle Gallery v5.2.0

A landmark release for Shared Spaces: albums now live inside a space. It’s the milestone the Spaces chapter has been building toward — a shared timeline is no longer one endless stream but a real, organized library your whole group builds together, on web and mobile. Around that headline, the People page loads several times faster, person merging follows one consistent policy across every path, and a round of fixes tightens Memories, mobile, and admin polish.

July 19, 2026v5.1.1 to v5.2.011 selected highlights
1Feature highlights
7Important fixes
v5.1.1Previous release
v5.2.0Current release
What changed

The release at a glance

1 highlights

Feature Launches

feature#752

In-Space Album Management

Shared Spaces gain real albums. Create and manage albums directly inside a space — on web and mobile — so a group’s growing timeline can be organized into named collections instead of one endless stream. Cross-owner contributions stay consistent everywhere they appear: face retention, cover eligibility, counts, and reconciliation all treat a contributed photo the same way the timeline already does.

dcd2924aea
3 highlights

Performance & People

fix#798

A Much Faster People Page

The People page went from sluggish to snappy. The cross-space aggregates behind it tripped PostgreSQL’s JIT, whose one-time compilation dominated each query; disabling JIT for the role cuts the People page from ~2.7s to ~0.7s and its statistics query from ~1.1s to ~0.35s, with space timelines several times faster. The web app also skips a statistics query it wasn’t using and hydrates a smaller first page.

42cf0d4d4e
fix#777

One Merge Policy for Every Path

Merging the same person used to behave differently depending on where you started. Now every path follows the classic merge: a mis-classified pet can be merged into the right person — and back — from a shared space too, and the global People page’s scoped merge routes through the same propagation planner as the personal and in-space merges, so a merge that was previously blocked when both people held a profile in the same space now completes cleanly.

e60a6616a0
fix#788

Shared-Space People in the Mobile Filter

On mobile, the photos-filter people picker dropped the space scope for shared-space people, so their avatars came up gray and selecting one filtered to nothing. The picker now carries the tokenized filter id and space, showing membership-gated avatars in the picker rows, recent strip, and active-filter chips — so viewers can filter a space by its people.

65f9a6dd7f
4 highlights

Memories, Config & Polish

fix#791

Memory Viewer Stays in the Right Memory

A photo that appears in more than one memory — say a birthday memory and an on-this-day memory — could snap the memory viewer back to an earlier memory and loop forever. The viewer now carries the memory id through its navigation and resolves each position within that memory, so paging through a memory stays put.

0c603f1c44
fix#783

Memory-Type Settings Save Reliably

The configurable memory types added in v5.1.0 stored their default as an empty object, which the config layer didn’t recognize as a known key — so the server warned about it on every load and silently discarded any admin overrides on save. Empty-object defaults are now recognized, so memory-type settings persist.

a1eed69c04
fix#794

Reliability Follow-Ups

A cluster of fixes from the rolling-rebase audit: library sync no longer leaks the favorite flag to other members of a shared library, rapid re-trims of the same video are now race-free (serialized per asset, with atomic output), four more Immich strings are Noodle-branded, and ownership-coverage globs escape route-group parentheses so they match again.

8873747ffc
fix#786

Readable Integrity Counts in Light Mode

The maintenance integrity counters on the admin dashboard rendered their placeholder digits in a gray that matched the card background in light mode, making them invisible. They now use a darker gray that stays legible in both themes.

93ac079197
3 highlights

Behind the Scenes

Android Release Build Unblocked

A clean Android release build failed because a widget plugin pinned an older JVM target that newer inlined bytecode couldn’t fit into. Every Android plugin subproject now compiles Java and Kotlin at JVM 17 to match the app, so release builds go through.

97a3cec731

ROCm Machine-Learning Image

The machine-learning image now builds and publishes a ROCm variant on a self-hosted runner, for AMD-GPU self-hosters running their own Gallery.

7963cb39af

Zero-Downtime Docs Deploys

The documentation site now uploads the new build before pruning the old files, so docs.opennoodle.de never goes blank in the middle of a deploy.

babb155d04
Previous releaseOpen the Noodle Gallery v5.1.0 release notes.Featured launchOpen the Shared Spaces feature page.Featured launchOpen the Global People feature page.