8000 feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) by renovate[bot] · Pull Request #602 · raypappa/homelab · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) #602

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor
@renovate renovate bot commented May 21, 2025

This PR contains the following updates:

Package Update Change
ghcr.io/immich-app/immich-server minor v1.132.3 -> v1.134.0

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

immich-app/immich (ghcr.io/immich-app/immich-server)

v1.134.0

Compare Source

v1.134.0

Welcome to release v1.134.0 of Immich. This release focuses on bug fixes and enhancements from the previous release. Please find some of the highlights below:

  • Adds a new API endpoint to check the application version status
  • Adds a mechanism to handle startup reindexing after a failed model change
  • Improves pinch-to-zoom action on the mobile app
  • Replaces the administration user edit button with the action button to go straight to the user's detail page
  • Fixes a bug where generated memories include locked assets
  • Fixes a bug where the search filter panel anchors to the top of the page instead of the viewport
  • Fixes a bug where ctrl/cmd + click doesn't open the photo on a new page
  • Fixes various minor issues related to styling and z-index

Support Immich

What's Changed

🌟 Enhancements
🐛 Bug fixes
🌐 Translations

New Contributors

Full Changelog: immich-app/immich@v1.133.1...v1.134.0

v1.133.1

Compare Source

v1.133.1

Highlights

  • Lower disk usage during VectorChord migration
  • Adds move to locked album button to more views on the web
  • Fixes a bug where the missing button for the duplicate detection job is not working
  • Fixes a bug where a hard link does not navigate to the asset location on the timeline
  • Fixes a bug where styling information is missing in some cases
  • Fixes a bug where locked assets show up in local album view if it is presented on the phone
  • Fixes some translation issues

What's Changed

🌟 Enhancements
🐛 Bug fixes
📚 Documentation
🌐 Translations

New Contributors

Full Changelog: https://github.com/immich-app/immich/compare/v1.133.0...

v1.133.0

Compare Source

v1.133.0 - The Hot Summer Release

[!CAUTION]

BREAKING CHANGES

  1. Mobile app version

    Please make sure to have the mobile app and the server on the same version for this release. Older versions of the mobile app will not work correctly with version v1.133.0 of the server. At the time of this release, the updated version of the mobile app should be available on the app stores.

  2. Upgrading the server from a very old release

    As of 1.133.0, Immich only supports upgrading directly from 1.107.2 or later. If you’re trying to upgrade a version of Immich below this, please upgrade to 1.107.2 first and ensure Immich starts up successfully before continuing to the latest release.

  3. New database vector extension

    We are migrating off the deprecated pgvecto.rs database extension to its successor VectorChord, which comes with performance improvements in almost all aspects. This change is a major milestone we want to perform prior to the stable release.

Before making any other changes, please back up your database. While every effort has been made to make this migration as smooth as possible, there’s always a chance that something can go wrong.

After making a backup, please modify your docker-compose.yml file with the following information.

  [...] 

  database:
    container_name: immich_postgres
-   image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@​sha256:739cdd626151ff1f796dc95a6591b55a714f341c737e27f045019ceabf8e8c52
+   image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0-pgvectors0.2.0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
+     # Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
+     # DB_STORAGE_TYPE: 'HDD'
    volumes:

### Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
-   healthcheck:
-     test: >-
-       pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1;
-       Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align
-       --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')";
-       echo "checksum failure count is $$Chksum";
-       [ "$$Chksum" = '0' ] || exit 1
-     interval: 5m
-     start_interval: 30s
-     start_period: 5m
-   command: >-
-     postgres
-     -c shared_preload_libraries=vectors.so
-     -c 'search_path="$$user", public, vectors'
-     -c logging_collector=on
-     -c max_wal_size=2GB
-     -c shared_buffers=512MB
-     -c wal_compression=on
    restart: always

    [...]

If you deviated from the defaults of pg14 or pgvectors0.2.0, you must adjust the pg major version and pgvecto.rs version. If you are still using the default docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0 image, you can just follow the changes above. For example, if the previous image is docker.io/tensorchord/pgvecto-rs:pg16-v0.3.0, the new image should be ghcr.io/immich-app/postgres:16-vectorchord0.3.0-pgvectors0.3.0 instead of the image specified in the diff.

After making these changes, you can start Immich as normal. Immich will make some changes to the DB during startup, which can take seconds to minutes to finish, depending on hardware and library size. In particular, it’s normal for the server logs to be seemingly stuck at Reindexing clip_index and Reindexing face_indexfor some time if you have over 100k assets in Immich and/or Immich is on a relatively weak server. If you see these logs and there are no errors, just give it time.

[!IMPORTANT]
Note: after switching to VectorChord, you should not downgrade Immich below 1.133.0.

Please don’t hesitate to contact us here on GitHub or Discord if you encounter migration issues.

VectorChord FAQ

I have a separate PostgreSQL instance shared with multiple services. How can I switch to VectorChord?

Please see https://immich.app/docs/administration/postgres-standalone#migrating-to-vectorchord for migration instructions. The migration path will be different depending on whether you’re currently using pgvecto.rs or pgvector, as well as whether Immich has superuser DB permissions.

What will happen if I upgrade Immich to 1.133.0 without changing the DB image?

Immich will auto-detect the vector extension available in the DB and continue to work without manual intervention. However, we will drop support for pgvecto.rs in a later release, so please switch at your convenience.

I’m using a different deployment method than Docker Compose. How should I migrate?

If you’re using Immich through turnkey deployment methods such as TrueNAS apps, the respective maintainers will either perform the migration transparently or inform you of what to do if not.

Why are so many lines removed from the docker-compose.yml file? Does this mean the health check is removed?

These lines are now incorporated into the image itself along with some additional tuning.

What does this change mean for my existing DB backups?

The new DB image includes pgvector and pgvecto.rs in addition to VectorChord, so you can use this image to restore from existing backups that used either of these extensions. However, backups made after switching to VectorChord require an image containing VectorChord to restore successfully.

Do I still need pgvecto.rs installed after migrating to VectorChord?

pgvecto.rs only needs to be available during the migration, or if you need to restore from a backup that used pgvecto.rs. For a leaner DB and a smaller image, you can optionally switch to an image variant that doesn’t have pgvecto.rs installed after you’ve performed the migration and started Immich: ghcr.io/immich-app/postgres:14-vectorchord0.3.0, changing the PostgreSQL version as appropriate.

Why does it matter whether my database is on an SSD or an HDD?

These storage mediums have different performance characteristics. As a result, the optimal settings for an SSD are not the same as those for an HDD. Either configuration is compatible with SSD and HDD, but using the right configuration will make Immich snappier. As a general tip, we recommend users store the database on an SSD whenever possible.

Can I use the new database image as a general PostgreSQL image outside of Immich?

It’s a standard PostgreSQL container image that additionally contains the VectorChord, pgvector, and (optionally) pgvecto.rs extensions. If you were using the previous pgvecto.rs image for other purposes, you can similarly do so with this image.

If pgvecto.rs and pgvector still work, why should I switch to VectorChord?

VectorChord is faster, more stable, uses less RAM, and (with the settings Immich uses) offers higher-quality results than pgvector and pgvecto.rs. This translates to better search and facial recognition experiences. In addition, pgvecto.rs support will be dropped in the future, so changing it sooner will avoid disruption.


Highlights

Welcome to the release v1.133.0 of Immich, which is the hottest release yet for this summer, with more than 200 commits since the last version. This version brings you a new database extension, an even more optimized and faster timeline, more unified components on the web, some cool new features that have been requested for a long time, and many bug fixes and improvements. Let’s dive in!

  • VectorChord database extension
  • In-app notification
  • Show map in albums view (web only)
  • Locked folder
  • Google Cast Support (web only)
  • User detail page
  • RTL text support on the web
  • Performance improvement in web timeline
  • Notable fix: thumbnail caching issue on the mobile app
  • Notable fix: For users who use OAuth, you can now configure TOKEN_ENDPOINT_AUTH_METHOD to either client_sect_post or client_secret_basic after entering the CLIENT_SECRET
  • Sneak peek
In-app notification

Introducing an in-app, or internal, notification system. Previously, there was no way to notify you on the client if a database backup failed. Now, the failed backup will show up under a new notification section on the web. This mechanism paves the way for other helpful notifications, such as when a new album is shared with you or when new assets are added to a shared album, directly in the app.

Show map in albums view

On the web, you can now click this button to see the map view that shows the location of all the photos and videos in an album.

Locked folder

Have you ever taken embarrassing selfies that you don’t want anyone to see, and worry that you could accidentally reveal them while showcasing your superb Immich library? Locked folder view got you covered, with a personal PIN code, and an option to use biometric verification on the mobile app. You can access the page from the sidebar on the web or in the Library page on the app

locked-web-demo-cut.mp4

)

You can select any assets and add them to the locked folder. They will only be shown in the locked folder view.

Google Cast Support

We now have casting support! Immich now supports casting to Google Cast enabled devices like the Google Chromecast. This feature is currently only available on the web, with mobile app support coming in the near future. You can use images, videos and slideshows with casting.

image image

[!NOTE]

Your Immich instance must be accessed through a public HTTPS endpoint in order for the casting device to successfully load media. Accessing the instance and casting from a private HTTPS endpoint (or an HTTP endpoint) will result in the cast receiver failing to load any media.

User detail page

From the user management page of the admin view, you can now get a more in-depth view of individual users for their information, usage statistics, and which features they have enabled, etc, by clicking on the email from the user’s table

image image

RTL text support on the web

The web styling has been changed to accommodate RTL languages

image
Performance improvement in web timeline

Last time, we discussed thinking that the timeline performance has reached its prime and that adding more gains would be difficult. In this release, we managed to squeeze that gain like a ripe orange.

The timeline will automatically cancel the requests to the server when you scroll very fast, displaying the thumbnails instantaneously when the scrolling stops. Previously, the web needed to finish the requests for the thumbnails being scrolled by, even if they are not displayed on the viewport. This change significantly reduces the load time.

An additional optimization has been made to reduce the data packet for each thumbnail to about 30% of its original size. This optimization contributes to a greater loading speed on the timeline.

We hope you enjoy these impressive improvements.

Sneak Peak

Besides the cool features and enhancements that made their way into the application, along with many bug fixes, our highest priority at the moment is moving toward the stable release. A big chunk of time and dedication from the team is now spent on improving the mobile app synchronization system, basically rewriting the flow and designing the data model from the ground up. At the same time, we’re working to properly allocate CPU-intensive tasks to background threads to avoid app stuttering and jerkiness when the data sync between the server and the mobile app happens.

Below is the chart result comparing the local album sync between the current version and the reworked version.

Current version
image

Improved version
image

We are working hard to get it into the application in the coming months and are very excited about this new improvement.

Cheers!

The Immich Team

Support Immich

If you find the project helpful, you can support Immich by purchasing a product key at https://buy.immich.app or purchase our merchandise at https://immich.store

What's Changed

🚨 Breaking Changes
🚀 Features
🌟 Enhancements
🐛 Bug fixes
📚 Documentation
🌐 Translations

New Contributors

Full Changelog: https://github.com/immich-app/immich/compare/v1.132.3...


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link
coderabbitai bot commented May 21, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Note

Free review on us!

CodeRabbit is offering free reviews until Wed May 28 2025 to showcase some of the refinements we've made.

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

8000
@renovate renovate bot force-pushed the renovate/immich-app branch from 5f5b120 to 9cbc2e7 Compare May 23, 2025 19:55
@renovate renovate bot changed the title feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.133.0 ) feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.133.1 ) May 23, 2025
@renovate renovate bot force-pushed the renovate/immich-app branch from 9cbc2e7 to 4bc5b03 Compare May 27, 2025 17:59
@renovate renovate bot changed the title feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.133.1 ) feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) May 27, 2025
@renovate renovate bot changed the title feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) - autoclosed Jun 1, 2025
@renovate renovate bot closed this Jun 1, 2025
@renovate renovate bot deleted the renovate/immich-app branch June 1, 2025 17:48
@renovate renovate bot changed the title feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) - autoclosed feat(container): update image ghcr.io/immich-app/immich-server ( v1.132.3 → v1.134.0 ) Jun 1, 2025
@renovate renovate bot reopened this Jun 1, 2025
@renovate renovate bot force-pushed the renovate/immich-app branch from e0bbb9c to 4bc5b03 Compare June 1, 2025 21:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants
0