chore(deps): update immich
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
ghcr.io/immich-app/immich-machine-learning | Kustomization | minor |
v1.101.0 -> v1.102.0
|
ghcr.io/immich-app/immich-machine-learning | digest |
b0a22ca -> bd8300e
|
|
ghcr.io/immich-app/immich-server | Kustomization | minor |
v1.101.0 -> v1.102.0
|
ghcr.io/immich-app/immich-server | digest |
0097562 -> b8b8fd7
|
Release Notes
immich-app/immich (ghcr.io/immich-app/immich-machine-learning)
v1.102.0
: - 30,000 Stars Release 🌟
v1.102.0
⚠ ️ Breaking Changes (OPT-IN ONLY)
[!Caution] For people always pulling the latest compose file, this is a breaking change! Disregarding the notes will result in (temporary) data loss!
Background
In the past, we've seen many cases where people accidentally deleted their Postgres data by (unintentionally) deleting the docker volume (e.g., docker compose down -V
).
This is unfortunate as there is no way to recover that data (if you don't have a backup, MAKE BACKUPS!).
We have been thinking about mounting the Postgres data to a local folder for a while but always hesitated, as this would break existing instances due to people not reading the change logs carefully. However, there have been too many issues, and we ultimately decided to make that change.
What do I have to do?
Nothing. You should only copy the compose file with every new release if we tell you to do so in the release notes. Generally, we don't recommend making changes to existing instances. If you have never had issues, attempting to migrate the data will put it at (an unnecessary) risk.
I want to migrate my docker volume to a local folder
Unfortunately there isn't a "proper" way to export a docker volume. The recommended method is to mount the volume and the directory (you want to copy your data to) to an arbitrary container, get a shell inside that container and copy the folder manually.
[!Caution] Take backups before attempting this. Especially make sure you have a current database dump (
pg_dump
)
[!Warning] Do not use a directory under
/mnt
for the postgres location if you are using WSL. Generally (on all operating systems) we recommend against using a network share for your database location. This is bound to break and cause all sorts of weird issues.
If you would like to opt-in to this change, there is an additional environment variable in the .env
file as well as a modification in your existing docker-compose.yml
file.
docker-compose.yml
file
database:
container_name: immich_postgres
image: registry.hub.docker.com/tensorchord/pgvecto-rs:pg14-v0.2.0@​sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- - pgdata:/var/lib/postgresql/data
+ - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
restart: always
volumes:
- pgdata:
model-cache:
.env
file
[...]
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
+DB_DATA_LOCATION=./postgres
Highlights
Welcome to release version v1.102.0
of Immich. We reached 30,000 stars!!! Thank you so much for your continuous support. We are proud to bring you this release with a focus on QoL improvements and bug fixes across the web, mobile, and server. We hope you enjoy it. Some of the highlighted changes can be found below.
- In-app language settings
- Haptic feedback control
- Enhanced UI/UX on the album list page
- AV1 transcoding
- Choose between WebP and JPEG for thumbnails and previews
- Option to use embedded preview in RAW images
- Option to fill the screen with slideshows view
In-app language settings
You can now keep your phone interface in a different language and have Immich's app in a different language with the new in-app language setting. It can be found in Settings > Languages
. After making the change, the new language will propagate across the app.
Haptic feedback control
We added an option in the mobile app to disable haptic feedback. It can be found under Settings > Preferences > Haptic Feedback
Web album page's UI/UX enhancement
Album Grouping
With this new feature, albums can now be grouped by year or owner (or not grouped at all). This can be very useful to not get lost when having a lot of albums, that even are sometimes similar.
- This works both on "Covers" and "List" views.
- Albums are first grouped, then sorted inside of those groups.
- Group sorting can be either ascending or descending.
-
Group by
drop-down is located next to theSort by
one. The two buttons on the right areExpand all
andCollapse all
. They are not displayed whenNo grouping
is selected.
- Groups can be collapsed (saved in the local storage).
https://github.com/immich-app/immich/assets/9944639/a137fafd-805d-4e27-a3cc-dd982db29df5
Other UI Changes
- Album cards now display the month and year of the photos.
- Same month and year:
Jan 2024
- Different months, same year:
Jan - Mar 2024
- Different year:
Sep 2023 - Feb 2024
- Same month and year:
- Album cards now display the title over up to 2 lines. If the title is longer, it is cropped with an ellipsis (no change).
- "Edit Album" modal design has been slightly changed.
Quality of Life
Album List
- The context menu now has 4 options:
Download
,Edit
,Share
andDelete
.
- The context menu can now be displayed by right-clicking on an album card.
- The context menu is now available on the list view (both
Edit
andRemove
buttons have been removed). - The context menu is now available on the "Sharing" page, with only 1 option:
Download
. - The search feature now ignores accents.
Album View
- When one and only one photo is selected, the context menu now displays the option
Set as album cover
.
AV1 transcoding
This release adds support for the next-gen AV1 format using the SVT-AV1 encoder. AV1 promises smaller files at the same quality as the other codecs we support, especially for high resolution videos. Note that client support for AV1 is more limited, so we recommend trying it on one (server-only) video and confirming it plays before transcoding your full library with it.
New image settings
Before this release, all preview images were JPEG, and all thumbnails were WebP. This is now customizable, so you can set them as you like. This also paves the way for adding other formats with minimal change.
There's also a new option to use the embedded preview in RAW images instead of converting the RAW image itself. This is particularly useful if the converted images from a camera don't look quite right or if you have custom-developed previews you'd like to use instead.
Option to fill the screen with slideshows view
We added a new option in the slideshow settings to fill the screen with the slideshow view, this will give you a more immersive viewing experience.
And as always, bugs are fixed, and many other improvements also come with this release.
Please consider supporting the project.
Support
If you find the project helpful, you can support Immich via the following channels.
- Monthly donation via GitHub Sponsors
- One-time donation via GitHub Sponsors
- Librepay
- buymeacoffee
- Bitcoin: 3QVAb9dCHutquVejeNXitPqZX26Yg5kxb7
It is a great way to let me know that you want me to continue developing and working on this project for years to come.
What's Changed
⚠ ️ Breaking Changes
- mount postgres folder to local directory by default by @danieldietzler in https://github.com/immich-app/immich/pull/8443
🗄 ️ Server
- fix(server): image config not being updated by @mertalev in https://github.com/immich-app/immich/pull/8579
- chore(server): better typing for system config key by @mertalev in https://github.com/immich-app/immich/pull/8580
- fix(server): x264/x265 params not being set correctly by @mertalev in https://github.com/immich-app/immich/pull/8587
- fix(server): hevc tag being set when copying a non-hevc stream by @mertalev in https://github.com/immich-app/immich/pull/8582
- feat(server,web): configure image format by @mertalev in https://github.com/immich-app/immich/pull/8581
- fix:
npm i
on Windows … by @jellemdekker in https://github.com/immich-app/immich/pull/8619 - fix(server): delete thumbnail for readonly asset by @Ynng in https://github.com/immich-app/immich/pull/8593
- fix(server): remove isWatched from DTO by @danieldietzler in https://github.com/immich-app/immich/pull/8598
- chore(server): remove unused method by @jrasm91 in https://github.com/immich-app/immich/pull/8639
- fix(server): require asset permission when creating an album with them by @danieldietzler in https://github.com/immich-app/immich/pull/8686
- Add AV1 transcoding support by @n00mkrad in https://github.com/immich-app/immich/pull/8491
- fix(server): prevent cross-library motion photo linking, made getByChecksum library specific by @Ynng in https://github.com/immich-app/immich/pull/8719
- fix(server): link motion photo with existing video asset by @Ynng in https://github.com/immich-app/immich/pull/8724
- fix(server): external library motion photo video asset handling by @Ynng in https://github.com/immich-app/immich/pull/8721
- (server) Allow setting the host address for the server & microservices by @yparitcher in https://github.com/immich-app/immich/pull/8800
- feat(server): correlation id via injected logger by @jrasm91 in https://github.com/immich-app/immich/pull/8823
- chore: cleanup library watching by @jrasm91 in https://github.com/immich-app/immich/pull/8835
- feat(server): efficient full app sync by @fyfrey in https://github.com/immich-app/immich/pull/8755
- chore: migrate to vitest by @jrasm91 in https://github.com/immich-app/immich/pull/7156
- chore(server): delete swap file by @jrasm91 in https://github.com/immich-app/immich/pull/8856
- Migrate ImmichLogger over to injected ILoggerRepository by @iamamansharma in https://github.com/immich-app/immich/pull/8855
- fix(server): correlationId by @jrasm91 in https://github.com/immich-app/immich/pull/8858
- feat(server): logging interceptor by @jrasm91 in https://github.com/immich-app/immich/pull/8859
- fix(server): storage usage calculation for motion photos by @Ynng in https://github.com/immich-app/immich/pull/8722
- refactor(server): immich-admin list-users by @jrasm91 in https://github.com/immich-app/immich/pull/8862
- fix(server): include archived images in face detection by @mertalev in https://github.com/immich-app/immich/pull/8892
- fix(server): skip invisible assets for thumbnail generation and ml by @mertalev in https://github.com/immich-app/immich/pull/8891
- refactor(server): sessions by @jrasm91 in https://github.com/immich-app/immich/pull/8915
- refactor(server): cookies by @jrasm91 in https://github.com/immich-app/immich/pull/8920
- feat(server): use embedded preview from raw images by @mertalev in https://github.com/immich-app/immich/pull/8773
📱 Mobile
- feat(mobile): add missing translations by @michelheusschen in https://github.com/immich-app/immich/pull/8537
- feat(mobile): include partner's photos on map by @BlackBadPinguin in https://github.com/immich-app/immich/pull/8553
- feat(mobile): in app language selector by @alextran1502 in https://github.com/immich-app/immich/pull/8574
- Localizely: Translations update by @alextran1502 in https://github.com/immich-app/immich/pull/8584
- feat(mobile/web): add longer expirity for share link by @akoscomp in https://github.com/immich-app/immich/pull/8617
- chore(mobile): move language setting to another file by @alextran1502 in https://github.com/immich-app/immich/pull/8726
- fix(mobile): show error details in the log when available by @shenlong-tanwen in https://github.com/immich-app/immich/pull/8729
- fix(mobile): random logout by @alextran1502 in https://github.com/immich-app/immich/pull/8739
- feat(mobile): haptic feedback setting by @alextran1502 in https://github.com/immich-app/immich/pull/8723
- chore(mobile): update TODO comment by @benmccann in https://github.com/immich-app/immich/pull/8826
- chore(mobile): full width language change dropdown by @alextran1502 in https://github.com/immich-app/immich/pull/8806
- fix:(mobile): Updates old IMMICH text from the mobile settings modal by @martyfuhry in https://github.com/immich-app/immich/pull/8906
🖥 ️ Web
- feat(web): enhance ux/ui of the album list page by @Ethan13310 in https://github.com/immich-app/immich/pull/8499
- fix(web): bypass the onStackAssets shortcut when only one is selected by @Funk66 in https://github.com/immich-app/immich/pull/8559
- feat(web,a11y): slider accessibility improvements by @ben-basten in https://github.com/immich-app/immich/pull/8479
- fix(web): concurrency link on jobs page by @danieldietzler in https://github.com/immich-app/immich/pull/8572
- fix(web): some settings not disabled when using config file by @mertalev in https://github.com/immich-app/immich/pull/8576
- fix(web): reset to default button always being shown by @mertalev in https://github.com/immich-app/immich/pull/8577
- feat(web): paste photo from clipboard by @TomixUG in https://github.com/immich-app/immich/pull/8475
- feat(web): add search bar shortcuts by @danieldietzler in https://github.com/immich-app/immich/pull/8630
- chore(web): specify that HDR videos will always be transcoded by @patrontheo in https://github.com/immich-app/immich/pull/8634
- feat(web,a11y): standardize the FullScreenModal UI by @ben-basten in https://github.com/immich-app/immich/pull/8566
- chore(web): fixed typo expect instead of except by @patrontheo in https://github.com/immich-app/immich/pull/8638
- feat(web): loop video thumbnails by @lukashass in https://github.com/immich-app/immich/pull/8662
- Allow moving in photo spheres using one touch input instead of two. by @hrdl-github in https://github.com/immich-app/immich/pull/8620
- chore(web): move BaseModal to callback pattern by @ben-basten in https://github.com/immich-app/immich/pull/8696
- fix(web): ui tweaks by @mgabor3141 in https://github.com/immich-app/immich/pull/8757
- fix(web): focus escaping from modals by @ben-basten in https://github.com/immich-app/immich/pull/8730
- fix(web): fix scrollbar not allowing the user to go fully top or bottom by @Ethan13310 in https://github.com/immich-app/immich/pull/8637
- fix(web): remove query parameter when clearing search by @martabal in https://github.com/immich-app/immich/pull/8817
- fix(web): delete trashed item by @martabal in https://github.com/immich-app/immich/pull/8821
- fix(web): album description height by @martabal in https://github.com/immich-app/immich/pull/8818
- feat(web,a11y): consolidate BaseModal into FullScreenModal by @ben-basten in https://github.com/immich-app/immich/pull/8787
- fix(web,a11y): remove autofocus from input fields by @ben-basten in https://github.com/immich-app/immich/pull/8857
- feat(web): un-stack from the photos page ; fix stack count by @Ethan13310 in https://github.com/immich-app/immich/pull/8419
- feat(web): add page up and page down shortcuts by @martabal in https://github.com/immich-app/immich/pull/8910
- fix(web): notification number of people when editing faces by @martabal in https://github.com/immich-app/immich/pull/7352
- feat(web): add an option to fill the screen with the slideshow view by @martabal in https://github.com/immich-app/immich/pull/8909
⚡ CLI
- feat(cli): Implement logic for --skip-hash by @pedrxd in https://github.com/immich-app/immich/pull/8561
📓 Documentation
- Make language gender neutral by @iamwillbar in https://github.com/immich-app/immich/pull/8535
- feat(docs): Add information about breaking changes by @aviv926 in https://github.com/immich-app/immich/pull/8524
- docs: pre-existing postgres by @mmomjian in https://github.com/immich-app/immich/pull/8549
- docs: pg_dumpall refinements by @mmomjian in https://github.com/immich-app/immich/pull/8546
- feat(docs): update Unraid installation guide by @mgabor3141 in https://github.com/immich-app/immich/pull/8540
- Fix typos: immcih -> immich by @vozhyk- in https://github.com/immich-app/immich/pull/8568
- Up-to-date information on the Smart Search feature by @aviv926 in https://github.com/immich-app/immich/pull/8625
- feat(docs):New information for sharing partners by @aviv926 in https://github.com/immich-app/immich/pull/8308
- Fix: Rename docker name in unraid setup docs by @Poolitzer in https://github.com/immich-app/immich/pull/8476
- docs: community projects by @jrasm91 in https://github.com/immich-app/immich/pull/8641
- docs: Pin to Postgres v14 in postgres-backup-local by @mmomjian in https://github.com/immich-app/immich/pull/8665
- docs: add Immich Folder Album Creator by @mmomjian in https://github.com/immich-app/immich/pull/8666
- adding podman quadlets documentation community project by @tbelway in https://github.com/immich-app/immich/pull/8684
- docs: fix earthdistance restore by @mmomjian in https://github.com/immich-app/immich/pull/8692
- docs: fix typo by @benmccann in https://github.com/immich-app/immich/pull/8698
- docs(ml): update hardware acceleration doc by @mertalev in https://github.com/immich-app/immich/pull/8700
- docs: clarify details of connecting to backend for development by @benmccann in https://github.com/immich-app/immich/pull/8727
- Add lightroom plugin to community projects by @midzelis in https://github.com/immich-app/immich/pull/8736
- docs: document type of checksum stored in DB by @mmomjian in https://github.com/immich-app/immich/pull/8737
- docs: DB queries cleanups by @mmomjian in https://github.com/immich-app/immich/pull/8740
- docs: Add community project by @mmomjian in https://github.com/immich-app/immich/pull/8759
- docs: note that uploads are disabled on demo app by @benmccann in https://github.com/immich-app/immich/pull/8786
- docs: files custom locations by @aviv926 in https://github.com/immich-app/immich/pull/8627
- docs: community guides by @aviv926 in https://github.com/immich-app/immich/pull/8812
- Docs: minor changes by @aviv926 in https://github.com/immich-app/immich/pull/8814
- docs: update community Guide/Projects, small PG query updates by @mmomjian in https://github.com/immich-app/immich/pull/8844
- add community project PSImmich by @hanpq in https://github.com/immich-app/immich/pull/8851
- docs: bunch of small changes by @mmomjian in https://github.com/immich-app/immich/pull/8854
- docs: fix vectors grant... again by @mmomjian in https://github.com/immich-app/immich/pull/8860
- Update oauth.md by @alvitali in https://github.com/immich-app/immich/pull/8794
- docs: link to storage label docs from storage template docs by @benmccann in https://github.com/immich-app/immich/pull/8911
🔨 Maintenance
- chore(deps): bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by @dependabot in https://github.com/immich-app/immich/pull/8621
- chore(deps): update dependency eslint-plugin-unicorn to v52 by @renovate in https://github.com/immich-app/immich/pull/8629
- feat(gh-templates): Require non-duplicate confirmation on FR by @bo0tzz in https://github.com/immich-app/immich/pull/8618
- fix(gh-templates): Add required label attribute by @bo0tzz in https://github.com/immich-app/immich/pull/8632
- feat(github): Create CODEOWNERS file by @bo0tzz in https://github.com/immich-app/immich/pull/8636
- chore: add to codeowners by @danieldietzler in https://github.com/immich-app/immich/pull/8640
- feat: Improve error handling for Install Script by @mmomjian in https://github.com/immich-app/immich/pull/8422
- chore(deps): update node.js to
3fb85a6
by @renovate in https://github.com/immich-app/immich/pull/8643 - chore(deps): update node.js to
7e22729
by @renovate in https://github.com/immich-app/immich/pull/8644 - fix(deps): update typescript-projects by @renovate in https://github.com/immich-app/immich/pull/8647
- Revert "fix(deps): update typescript-projects (#8647)" by @alextran1502 in https://github.com/immich-app/immich/pull/8650
- fix(deps): update typescript-projects by @renovate in https://github.com/immich-app/immich/pull/8651
- chore(deps): update dependency @playwright/test to v1.43.0 by @renovate in https://github.com/immich-app/immich/pull/8671
- chore(deps): update prom/prometheus docker digest to
4f6c47e
by @renovate in https://github.com/immich-app/immich/pull/8687 - fix(deps): update machine-learning by @renovate in https://github.com/immich-app/immich/pull/8646
- fix(deps): update dependency pillow to v10.3.0 [security] by @renovate in https://github.com/immich-app/immich/pull/8493
- chore: add code owner by @mertalev in https://github.com/immich-app/immich/pull/8701
- refactor: library e2e by @jrasm91 in https://github.com/immich-app/immich/pull/8693
- chore(deps): update grafana/grafana docker tag to v10.4.2 by @renovate in https://github.com/immich-app/immich/pull/8731
- fix(deps): update dependency reflect-metadata to ^0.2.0 by @renovate in https://github.com/immich-app/immich/pull/8784
- chore(deps): update mambaorg/micromamba:bookworm-slim docker digest to
4de6145
by @renovate in https://github.com/immich-app/immich/pull/8828 - chore(deps): bump stumpylog/image-cleaner-action from 0.5.0 to 0.6.0 by @dependabot in https://github.com/immich-app/immich/pull/8841
- chore(deps): update dependency ruff to v0.3.6 by @renovate in https://github.com/immich-app/immich/pull/8850
- fix(deps): update typescript-projects by @renovate in https://github.com/immich-app/immich/pull/8834
- chore(deps): update base-image to v20240416 (major) by @renovate in https://github.com/immich-app/immich/pull/8660
- chore(deps): update node.js to
d328c7b
by @renovate in https://github.com/immich-app/immich/pull/8829 - chore(deps): update node.js to
ec0c413
by @renovate in https://github.com/immich-app/immich/pull/8833 - fix(deps): update dependency gunicorn to v22 [security] by @renovate in https://github.com/immich-app/immich/pull/8863
- chore(deps): update registry.hub.docker.com/library/redis:6.2-alpine docker digest to
84882e8
by @renovate in https://github.com/immich-app/immich/pull/8913 - chore(deps): update redis:6.2-alpine docker digest to
84882e8
by @renovate in https://github.com/immich-app/immich/pull/8912
Other changes
- chore: added 'logs' field to bug template by @SandiyosDev in https://github.com/immich-app/immich/pull/8771
New Contributors
- @iamwillbar made their first contribution in https://github.com/immich-app/immich/pull/8535
- @BlackBadPinguin made their first contribution in https://github.com/immich-app/immich/pull/8553
- @mgabor3141 made their first contribution in https://github.com/immich-app/immich/pull/8540
- @vozhyk- made their first contribution in https://github.com/immich-app/immich/pull/8568
- @jellemdekker made their first contribution in https://github.com/immich-app/immich/pull/8619
- @pedrxd made their first contribution in https://github.com/immich-app/immich/pull/8561
- @TomixUG made their first contribution in https://github.com/immich-app/immich/pull/8475
- @Ynng made their first contribution in https://github.com/immich-app/immich/pull/8593
- @Poolitzer made their first contribution in https://github.com/immich-app/immich/pull/8476
- @patrontheo made their first contribution in https://github.com/immich-app/immich/pull/8634
- @akoscomp made their first contribution in https://github.com/immich-app/immich/pull/8617
- @tbelway made their first contribution in https://github.com/immich-app/immich/pull/8684
- @n00mkrad made their first contribution in https://github.com/immich-app/immich/pull/8491
- @midzelis made their first contribution in https://github.com/immich-app/immich/pull/8736
- @SandiyosDev made their first contribution in https://github.com/immich-app/immich/pull/8771
- @yparitcher made their first contribution in https://github.com/immich-app/immich/pull/8800
- @hanpq made their first contribution in https://github.com/immich-app/immich/pull/8851
- @iamamansharma made their first contribution in https://github.com/immich-app/immich/pull/8855
- @alvitali made their first contribution in https://github.com/immich-app/immich/pull/8794
Full Changelog: https://github.com/immich-app/immich/compare/v1.101.0...
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot. The local configuration can be found in the SI Renovate Bot repository.