Przełomowe wydanie dla Wspólnych przestrzeni: albumy żyją teraz wewnątrz przestrzeni. To kamień milowy, do którego zmierzał cały rozdział Wspólnych przestrzeni — wspólna oś czasu nie jest już jednym nieskończonym strumieniem, lecz prawdziwą, uporządkowaną biblioteką, którą cała grupa buduje wspólnie, w wersji webowej i mobilnej. Wokół tego głównego motywu strona People ładuje się kilkukrotnie szybciej, scalanie osób podąża jedną spójną polityką na każdej ścieżce, a seria poprawek dopracowuje Memories, wersję mobilną oraz szlify po stronie administratora.
19 lipca 2026v5.1.1 do v5.2.011 wybranych najważniejszych zmian
1Najważniejsze funkcje
7Ważne poprawki
v5.1.1Poprzednie wydanie
v5.2.0Aktualne wydanie
Co się zmieniło
To wydanie w pigułce
Kamień milowy dla Wspólnych przestrzeni: albumy żyją teraz wewnątrz przestrzeni. Twórz je, wypełniaj i zarządzaj nimi w wersji webowej i mobilnej, aby rodzinna wyprawa, wesele czy projekt stały się prawdziwą, uporządkowaną biblioteką zamiast jednego nieskończonego strumienia — z twarzami, okładkami i licznikami zachowującymi spójność dla wkładów wielu właścicieli.
Strona People ładuje się kilkukrotnie szybciej — wyłączenie JIT PostgreSQL dla ciężkich agregacji między przestrzeniami skraca jej czas z ~2,7 s do ~0,7 s, a aplikacja webowa pomija nieużywane zapytanie statystyczne i hydratuje mniejszą pierwszą stronę.
Scalanie osób podąża jedną polityką na każdej ścieżce: błędnie sklasyfikowany pupil może zostać scalony z właściwą osobą również z poziomu wspólnej przestrzeni, a zawężone scalanie na globalnej stronie People przechodzi przez ten sam planer propagacji co scalanie wewnątrz przestrzeni.
Osoby ze wspólnych przestrzeni pojawiają się teraz poprawnie w mobilnym selektorze osób w filtrze zdjęć dla widzów przestrzeni — z awatarami zależnymi od przynależności zamiast szarych zastępników.
Seria poprawek niezawodności: przeglądarka Memories pozostaje wewnątrz bieżącego wspomnienia, ustawienia typów Memories administratora zapisują się niezawodnie, synchronizacja biblioteki nie ujawnia już flagi ulubionych, szybkie ponowne przycięcia wideo są wolne od wyścigów, a liczniki integralności są czytelne w trybie jasnym.
Wspólne przestrzenie zyskują prawdziwe albumy. Twórz albumy i zarządzaj nimi bezpośrednio wewnątrz przestrzeni — w wersji webowej i mobilnej — aby rosnącą oś czasu grupy można było uporządkować w nazwane kolekcje zamiast jednego nieskończonego strumienia. Wkłady wielu właścicieli zachowują spójność wszędzie, gdzie się pojawiają: zachowywanie twarzy, kwalifikowalność na okładkę, liczniki i uzgadnianie traktują dodane zdjęcie tak samo, jak robi to już oś czasu.
Strona People przeszła od ociężałej do żwawej. Agregacje między przestrzeniami, które za nią stoją, uruchamiały JIT PostgreSQL, którego jednorazowa kompilacja dominowała w każdym zapytaniu; wyłączenie JIT dla tej roli skraca stronę People z ~2,7 s do ~0,7 s, a jej zapytanie statystyczne z ~1,1 s do ~0,35 s, przy osiach czasu przestrzeni szybszych kilkukrotnie. Aplikacja webowa pomija też zapytanie statystyczne, którego nie używała, i hydratuje mniejszą pierwszą stronę.
Scalanie tej samej osoby zachowywało się kiedyś różnie w zależności od tego, skąd zaczynałeś. Teraz każda ścieżka podąża klasycznym scalaniem: błędnie sklasyfikowany pupil może zostać scalony z właściwą osobą — i z powrotem — również z poziomu wspólnej przestrzeni, a zawężone scalanie na globalnej stronie People przechodzi przez ten sam planer propagacji co scalania osobiste i wewnątrz przestrzeni, dzięki czemu scalanie, które wcześniej było blokowane, gdy obie osoby miały profil w tej samej przestrzeni, teraz kończy się bez zarzutu.
W wersji mobilnej selektor osób w filtrze zdjęć gubił zakres przestrzeni dla osób ze wspólnych przestrzeni, więc ich awatary wyświetlały się na szaro, a wybranie jednej z nich filtrowało do pustki. Selektor przenosi teraz stokenizowany identyfikator filtra oraz przestrzeń, pokazując awatary zależne od przynależności w wierszach selektora, pasku ostatnich i etykietach aktywnego filtra — dzięki czemu widzowie mogą filtrować przestrzeń według jej osób.
Zdjęcie pojawiające się w więcej niż jednym wspomnieniu — powiedzmy we wspomnieniu urodzinowym i we wspomnieniu z tego dnia — mogło przeskakiwać przeglądarkę Memories z powrotem do wcześniejszego wspomnienia i zapętlać się w nieskończoność. Przeglądarka przenosi teraz identyfikator wspomnienia przez swoją nawigację i rozwiązuje każdą pozycję w obrębie tego wspomnienia, dzięki czemu przewijanie wspomnienia pozostaje na miejscu.
Konfigurowalne typy Memories dodane w wersji v5.1.0 przechowywały swoją wartość domyślną jako pusty obiekt, którego warstwa konfiguracji nie rozpoznawała jako znanego klucza — więc serwer ostrzegał o nim przy każdym ładowaniu i po cichu odrzucał wszelkie nadpisania administratora przy zapisie. Wartości domyślne będące pustym obiektem są teraz rozpoznawane, dzięki czemu ustawienia typów Memories są zachowywane.
Grono poprawek z audytu ciągłego rebase: synchronizacja biblioteki nie ujawnia już flagi ulubionych innym członkom współdzielonej biblioteki, szybkie ponowne przycięcia tego samego wideo są teraz wolne od wyścigów (serializowane per zasób, z atomowym wynikiem), kolejne cztery ciągi tekstowe Immich mają branding Noodle, a wzorce glob pokrycia własności zabezpieczają nawiasy grup tras (route-group), dzięki czemu znów pasują.
Liczniki integralności konserwacji na panelu administratora renderowały swoje cyfry zastępcze w odcieniu szarości pasującym do tła karty w trybie jasnym, przez co były niewidoczne. Używają teraz ciemniejszej szarości, która pozostaje czytelna w obu motywach.
Czysta kompilacja wydania na Androida kończyła się niepowodzeniem, ponieważ wtyczka widżetu przypinała starszy cel JVM, do którego nowszy wplatany kod bajtowy się nie mieścił. Każdy podprojekt wtyczki na Androida kompiluje teraz Javę i Kotlin w JVM 17, aby dopasować się do aplikacji, dzięki czemu kompilacje wydania przechodzą.
Obraz uczenia maszynowego buduje teraz i publikuje wariant ROCm na samodzielnie hostowanym runnerze, z myślą o osobach samohostujących z GPU AMD, które uruchamiają własną Gallery.
Witryna dokumentacji przesyła teraz nową kompilację przed usunięciem starych plików, dzięki czemu docs.opennoodle.de nigdy nie pustoszeje w trakcie wdrożenia.