chore(deps): update dependency https://github.com/immich-app/immich.git to v1.90.2
This MR contains the following updates:
Package | Update | Change |
---|---|---|
https://github.com/immich-app/immich.git | minor |
v1.89.0 -> v1.90.2
|
Release Notes
immich-app/immich (https://github.com/immich-app/immich.git)
v1.90.2
v1.90.2
[!IMPORTANT]
Announcement (Breaking changes next release - v1.91.0)
Continuing the effort of reducing Immich's footprint, we would like to announce another planned change. Starting from the next release (not this release), we will be removing the Typesense container and changing the database image. Below are the changes that must be made in your docker-compose.yml file.
immich-server:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
immich-microservices:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
- typesense:
- container_name: immich_typesense
- image: typesense/typesense:0.24.1@​sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd
- environment:
- - TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
- - TYPESENSE_DATA_DIR=/data
- # remove this to get debug messages
- - GLOG_minloglevel=1
- volumes:
- - tsdata:/data
- restart: always
[...]
database:
container_name: immich_postgres
- image: postgres:14-alpine@sha256:6a0e35296341e676fe6bd8d236c72afffe2dfe3d7eb9c2405c0f3fc04500cd07
+ image: tensorchord/pgvecto-rs:pg14-v0.1.11
env_file:
- .env
environment:
volumes:
pgdata:
model-cache:
- tsdata:
[!NOTE] Note: If you are running your database with a non-superuser role for Immich, you must enable the pgvecto.rs extension manually. You can do this by connecting to the
immich
database as a superuser and running:CREATE EXTENSION vectors;
Search Background
It turns out that synchronizing data between Postgres and Typesense is quite complicated. It accounts for at least an additional 1000 lines of code and, while very feature-filled, has become a burden to maintain. Also, there have been some serious memory and performance issues with Typesense, especially with large photo collections. It is lightning fast, but at the expense of large indexes that must be read from disk into memory on each restart. There have been reports of this process taking up to 30 minutes!
We effectively remove an entire class of bugs and issues by removing the need to synchronize data. Furthermore, search queries can more easily be combined with the existing database schema, like libraries, partner sharing, albums, etc. After merging #3605, we hope to be able to make significant progress around the search implementation and feature set.
In short, some of the benefits of this change include the following:
- One less container to run, deploy, and manage
- Better memory/system resource usage
- Decreased memory usage
- Faster Encode CLIP and Recognize Faces jobs
- Faster startup time
- Significantly less code to maintain, test, debug
- Improved developer workflow when adding search-related functionality
- Ability to integrate smart search into end-to-end testing for improved testing coverage and stability
- Ability to integrate CLIP search with other (metadata) criteria in the future
- Ability to add customizable index settings for even lower memory usage and higher performance, such as on-disk indices and quantization
Hot Fixes
There is no mobile release for this version
- Fixed merge face panel only shows 10 people
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: 1FvEp6P6NM8EZEkpGUFAN2LqJ1gxusNxZX
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
- fix(web): don't limit merge face selector to 10 people by @martabal in https://github.com/immich-app/immich/pull/5551
Full Changelog: https://github.com/immich-app/immich/compare/v1.90.1...
v1.90.1
v1.90.1
[!IMPORTANT]
Announcement (Breaking changes next release - v1.91.0)
Continuing the effort of reducing Immich's footprint, we would like to announce another planned change. Starting from the next release (not this release), we will be removing the Typesense container and changing the database image. Below are the changes that must be made in your docker-compose.yml file.
immich-server:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
immich-microservices:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
- typesense:
- container_name: immich_typesense
- image: typesense/typesense:0.24.1@​sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd
- environment:
- - TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
- - TYPESENSE_DATA_DIR=/data
- # remove this to get debug messages
- - GLOG_minloglevel=1
- volumes:
- - tsdata:/data
- restart: always
[...]
database:
container_name: immich_postgres
- image: postgres:14-alpine@sha256:6a0e35296341e676fe6bd8d236c72afffe2dfe3d7eb9c2405c0f3fc04500cd07
+ image: tensorchord/pgvecto-rs:pg14-v0.1.11
env_file:
- .env
environment:
volumes:
pgdata:
model-cache:
- tsdata:
[!NOTE] Note: If you are running your database with a non-superuser role for Immich, you must enable the pgvecto.rs extension manually. You can do this by connecting to the
immich
database as a superuser and running:CREATE EXTENSION vectors;
Search Background
It turns out that synchronizing data between Postgres and Typesense is quite complicated. It accounts for at least an additional 1000 lines of code and, while very feature-filled, has become a burden to maintain. Also, there have been some serious memory and performance issues with Typesense, especially with large photo collections. It is lightning fast, but at the expense of large indexes that must be read from disk into memory on each restart. There have been reports of this process taking up to 30 minutes!
We effectively remove an entire class of bugs and issues by removing the need to synchronize data. Furthermore, search queries can more easily be combined with the existing database schema, like libraries, partner sharing, albums, etc. After merging #3605, we hope to be able to make significant progress around the search implementation and feature set.
In short, some of the benefits of this change include the following:
- One less container to run, deploy, and manage
- Better memory/system resource usage
- Decreased memory usage
- Faster Encode CLIP and Recognize Faces jobs
- Faster startup time
- Significantly less code to maintain, test, debug
- Improved developer workflow when adding search-related functionality
- Ability to integrate smart search into end-to-end testing for improved testing coverage and stability
- Ability to integrate CLIP search with other (metadata) criteria in the future
- Ability to add customizable index settings for even lower memory usage and higher performance, such as on-disk indices and quantization
Hot Fixes
There is no mobile release for this version
- Fixed bulk editing for asset's metadata on the web
- Fixed faces not update after reassign face in a video
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: 1FvEp6P6NM8EZEkpGUFAN2LqJ1gxusNxZX
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
- fix: name truncation on detail panel by @martabal in https://github.com/immich-app/immich/pull/5542
- Some fixes to the Italian README translation by @LucaRed in https://github.com/immich-app/immich/pull/5541
- fix(web): cannot edit bulk metadata by @alextran1502 in https://github.com/immich-app/immich/pull/5543
- fix(web): create face from video by @martabal in https://github.com/immich-app/immich/pull/5544
New Contributors
- @LucaRed made their first contribution in https://github.com/immich-app/immich/pull/5541
Full Changelog: https://github.com/immich-app/immich/compare/v1.90.0...
v1.90.0
v1.90.0
[!IMPORTANT]
Announcement (Breaking changes next release v1.91.0)
Continuing the effort of reducing Immich's footprint, we would like to announce another planned change. Starting from the next release (not this release), we will be removing the Typesense container and changing the database image. Below are the changes that must be made in your docker-compose.yml file.
immich-server:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
immich-microservices:
[...]
depends_on:
- redis
- database
- - typesense
restart: always
- typesense:
- container_name: immich_typesense
- image: typesense/typesense:0.24.1@​sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd
- environment:
- - TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
- - TYPESENSE_DATA_DIR=/data
- # remove this to get debug messages
- - GLOG_minloglevel=1
- volumes:
- - tsdata:/data
- restart: always
[...]
database:
container_name: immich_postgres
- image: postgres:14-alpine@sha256:6a0e35296341e676fe6bd8d236c72afffe2dfe3d7eb9c2405c0f3fc04500cd07
+ image: tensorchord/pgvecto-rs:pg14-v0.1.11
env_file:
- .env
environment:
volumes:
pgdata:
model-cache:
- tsdata:
[!NOTE] Note: If you are running your database with a non-superuser role for Immich, you must enable the pgvecto.rs extension manually. You can do this by connecting to the
immich
database as a superuser and running:CREATE EXTENSION vectors;
Search Background
It turns out that synchronizing data between Postgres and Typesense is quite complicated. It accounts for at least an additional 1000 lines of code and, while very feature-filled, has become a burden to maintain. Also, there have been some serious memory and performance issues with Typesense, especially with large photo collections. It is lightning fast, but at the expense of large indexes that must be read from disk into memory on each restart. There have been reports of this process taking up to 30 minutes!
We effectively remove an entire class of bugs and issues by removing the need to synchronize data. Furthermore, search queries can more easily be combined with the existing database schema, like libraries, partner sharing, albums, etc. After merging #3605, we hope to be able to make significant progress around the search implementation and feature set.
In short, some of the benefits of this change include the following:
- One less container to run, deploy, and manage
- Better memory/system resource usage
- Decreased memory usage
- Faster Encode CLIP and Recognize Faces jobs
- Faster startup time
- Significantly less code to maintain, test, debug
- Improved developer workflow when adding search-related functionality
- Ability to integrate smart search into end-to-end testing for improved testing coverage and stability
- Ability to integrate CLIP search with other (metadata) criteria in the future
- Ability to add customizable index settings for even lower memory usage and higher performance, such as on-disk indices and quantization
Highlights
Welcome to release v1.90.0
of Immich. In this release, we introduce the first implementation of asset metadata editing, which includes date, time, and location. This release also contains many improvements and bug fixes. I hope you enjoy this release. Please read the following highlights below:
- Edit metadata.
- Reassign person faces.
- Better handling of iCloud assets.
Edit metadata
This release introduces the first implementation of editing assets.
Web
https://github.com/immich-app/immich/assets/27055614/28966ea1-36f6-4dd9-8920-a5355978205d
Mobile App
Bottom Sheet | Edit Date Time | Edit Location | Manual Location |
---|---|---|---|
Map Picker | Bottom sheet | Asset without location |
---|---|---|
[!NOTE] Metadata edits only apply to non-external/read-only assets.
You can now edit a photo or video's date, time, hours, timezone, and GPS information. The edited info is written to a companion sidecar file and saved in the exact library location as the original photo or video.
Please note that downloading an asset does not include the sidecar file or edited information yet.
Thanks, @YFrendo, and @jrasm91 for the valuable implementation of this feature. Thanks @shenlong-tanwen for a quick implementation on the mobile app for feature parity
Reassign person's faces
In this continuous enhancement, @martabal has implemented a mechanism to change facial data in a photo from one person to another. There is a bounding box around the person's face in the photo hovered on the face in the detail panel.
Re-assigning faces
https://github.com/immich-app/immich/assets/74269598/84c63fc7-9b6e-44f2-8798-88dd1dcec898
Hovering thumbnails
https://github.com/immich-app/immich/assets/74269598/c2efd9f8-8efc-43e6-afc8-d24ff4acc76c
Better handling of iCloud assets
This is the first attempt to improve the backup process for iCloud’s users. We also added a toggle to ignore backing up assets from iCloud; you can find the option in a new Backup Options page on the mobile app.
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: 1FvEp6P6NM8EZEkpGUFAN2LqJ1gxusNxZX
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.
Changelogs
Mobile
- feat(mobile): edit date time & location by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5461
- feat(mobile): unify asset grid multiselect actions by @fyfrey in https://github.com/immich-app/immich/pull/5407
- feat(mobile): handle backup iCloud asset by @alextran1502 in https://github.com/immich-app/immich/pull/5508
- fix(mobile): clear album provider on logout by @fyfrey in https://github.com/immich-app/immich/pull/5477
- fix(mobile): the new album icon has a different height from the existing album cover by @Skyquek in https://github.com/immich-app/immich/pull/5422
- fix(mobile): use zoomedpagetransition for galleryvieweroute by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5495
- fix(mobile): notify mobile app when live photos are linked by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5504
- fix(mobile): allow editing asset dates in the future by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5522
Web
- feat(web): re-assign person faces (2) by @martabal in https://github.com/immich-app/immich/pull/4949
- feat(web): add clear failed jobs button by @8gb in https://github.com/immich-app/immich/pull/5423
- feat(web): Edit metadata by @YFrendo in https://github.com/immich-app/immich/pull/5066
- feat(web): allow showing hidden people in image asset details view by @brokeh in https://github.com/immich-app/immich/pull/5420
- feat(web): UI/UX improvement for date time edit form by @alextran1502 in https://github.com/immich-app/immich/pull/5505
- fix(web): whitespace in person name by @martabal in https://github.com/immich-app/immich/pull/5401
- fix(web): disable metadata edit if user is not owner by @martabal in https://github.com/immich-app/immich/pull/5415
- fix(web): status box rendering by @danielktaylor in https://github.com/immich-app/immich/pull/5410
- fix(web): new album title fix by @waclaw66 in https://github.com/immich-app/immich/pull/5467
- fix(web): keep url query parameters when swapping people by @martabal in https://github.com/immich-app/immich/pull/5468
- fix(web): stick action bar on search by @martabal in https://github.com/immich-app/immich/pull/5459
- fix(web): runtime issue by @jrasm91 in https://github.com/immich-app/immich/pull/5493
- fix(web): delete modal z-index by @danielktaylor in https://github.com/immich-app/immich/pull/5416
- fix(web): background when re-assigning faces by @martabal in https://github.com/immich-app/immich/pull/5512
- fix(web): align all edit buttons and not correctly rounded buttons on detail-panel by @martabal in https://github.com/immich-app/immich/pull/5524
- chore(web): toggle hide face in context menu by @alextran1502 in https://github.com/immich-app/immich/pull/5440
- chore(deps): update web by @renovate in https://github.com/immich-app/immich/pull/5502
- refactor(web): asset viewer actions by @jrasm91 in https://github.com/immich-app/immich/pull/5488
Server
- fix(server): immich command by @jrasm91 in https://github.com/immich-app/immich/pull/5408
- fix(server): video orientation by @martabal in https://github.com/immich-app/immich/pull/5455
- fix(server): send upload_success notification only for non hidden assets by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5471
- fix(server): Return correct asset count in album by @mPyKen in https://github.com/immich-app/immich/pull/5465
- fix(server): not awaiting
sendFile
by @jameskeane in https://github.com/immich-app/immich/pull/5515 - chore(server): sql versioning by @jrasm91 in https://github.com/immich-app/immich/pull/5346
- chore(server): Check asset permissions in bulk by @adamantike in https://github.com/immich-app/immich/pull/5329
Documentations
- docs: correct wording and grammar in README_de_DE.md by @traktuner in https://github.com/immich-app/immich/pull/5447
- docs: update docs to use docker compose by @danieldietzler in https://github.com/immich-app/immich/pull/5446
Dependencies
- chore(deps): bump actions/setup-java from 3 to 4 by @dependabot in https://github.com/immich-app/immich/pull/5405
- chore(deps): update python:3.11-bookworm docker digest to
c56b0c6
by @renovate in https://github.com/immich-app/immich/pull/5387 - chore(deps): update python:3.11-slim-bookworm docker digest to
23f5220
by @renovate in https://github.com/immich-app/immich/pull/5388 - chore(deps): update dependency @types/node to v20.10.1 by @renovate in https://github.com/immich-app/immich/pull/5427
- chore(deps): update postgres:14-alpine docker digest to
5491670
by @renovate in https://github.com/immich-app/immich/pull/5429 - chore(deps): update redis:6.2-alpine docker digest to
60e49e2
by @renovate in https://github.com/immich-app/immich/pull/5430 - chore(deps): update base-image to v20231130 (major) by @renovate in https://github.com/immich-app/immich/pull/5431
- chore(deps): base image min age by @jrasm91 in https://github.com/immich-app/immich/pull/5433
- chore(deps): update python:3.11-bookworm docker digest to
47c1829
by @renovate in https://github.com/immich-app/immich/pull/5434 - chore(deps): update python:3.11-slim-bookworm docker digest to
8f82989
by @renovate in https://github.com/immich-app/immich/pull/5435 - chore(deps): update python:3.11-bookworm docker digest to
ba7a7ac
by @renovate in https://github.com/immich-app/immich/pull/5438 - chore(deps): update base-image to v20231201 (major) by @renovate in https://github.com/immich-app/immich/pull/5452
- chore(deps): update postgres:14-alpine docker digest to
6a0e352
by @renovate in https://github.com/immich-app/immich/pull/5451 - chore(deps): update python:3.11-slim-bookworm docker digest to
cc75851
by @renovate in https://github.com/immich-app/immich/pull/5462 - chore(deps): update mambaorg/micromamba:bookworm-slim docker digest to
e296d47
by @renovate in https://github.com/immich-app/immich/pull/5487 - chore(deps): update postgres docker digest to
6dfee32
by @renovate in https://github.com/immich-app/immich/pull/5492 - chore(deps): update dependency vite to v4.5.1 [security] by @renovate in https://github.com/immich-app/immich/pull/5513
- chore(deps): ignore openapi pubspec by @shenlong-tanwen in https://github.com/immich-app/immich/pull/5521
- chore(deps): bump actions/setup-python from 4 to 5 by @dependabot in https://github.com/immich-app/immich/pull/5528
- chore: make running local dev instance on Windows work regardless of git config by @brokeh in https://github.com/immich-app/immich/pull/5419
New Contributors
- @brokeh made their first contribution in https://github.com/immich-app/immich/pull/5419
- @danielktaylor made their first contribution in https://github.com/immich-app/immich/pull/5410
- @traktuner made their first contribution in https://github.com/immich-app/immich/pull/5447
- @Skyquek made their first contribution in https://github.com/immich-app/immich/pull/5422
- @8gb made their first contribution in https://github.com/immich-app/immich/pull/5423
- @jameskeane made their first contribution in https://github.com/immich-app/immich/pull/5515
Full Changelog: https://github.com/immich-app/immich/compare/v1.89.0...v1.90.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.