You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[!CAUTION]
This version contains a fix for today's CA compromise (https://emudhra.we-have-a-problem.com/) as well as some nodejs security patches. While we don't believe this compromise brings an immediate danger to Immich instances, we still recommend that you update as soon as possible.
Well, you know how it goes... Misclick once and a release is sacrificed 😅 The second patch release v3.3.3 has some more bug fixes, notably a major performance improvement for the explore page.
What's Changed
🐛 Bug fixes
fix(mobile): show the memories date in every app language by @santoshakil in #32259
This patch addresses various bugs around people sharing, as well as a scroll issue on mobile. Further, there is now an indicator showing which people are shared.
This release includes people sharing, birthday memories, auto-stacked mobile edits, and a variety of other enhancements and bug fixes. Keep reading below for the full list of highlights.
Highlights
Shared people management
Birthday memories
Auto-stacked mobile edits
Sync OAuth claims on every login
Higher quality thumbnails and previews
Machine learning performance and accuracy improvements (opt-in)
New OCR models
Notable fix: correct storage size on MacOS
Shared people management
We are very pleased to release the next big milestone towards better sharing: people can now be shared!
As a user you can share people with another user in your cluster group:
[!NOTE]
The “Manage access” modal can be opened from both the “People” (/people) and “Sharing settings” (/user-settings) pages in the web application. The modal is not available on mobile, yet.
When sharing a person with another user, the shared person:
Shows up in both users’ list of people (on mobile and web)
Shows up in the asset viewer / asset detail view on both owned and shared assets
Can be edited by both users (only the name & birth date fields)
[!NOTE]
Person sharing is directional. This means that each user needs to share each person back for edits to automatically work in both directions.
By default, changes to the name & date of birth are reflected for both users. On the web, the “Edit person” modal has an option to change the name/date of birth for “Only me” instead of the whole group.
Also, there is a preference for this behavior in the “Sharing settings”, which can be changed to make this the default behavior when editing a person. The setting can be changed here: https://my.immich.app/user-settings?isOpen=feature+people.
The setting has two options:
“Everyone with shared access” — means an update will apply for everyone, covering the typical family use case where one or two users are supposed to be responsible for the entire family's people.
“Only me” — means the names and dates of births will remain unchanged for other users
Lastly, by allowing cross-user merging, you can now merge a face from your own assets with people shared with you from other users. This is especially helpful if you didn't want to re-run facial recognition after joining a cluster group before. Now, after setting up bi-directional sharing, users can manually link people together.
Birthday memories
In an effort of making Immich more joyful to use, we are introducing memories for people's birthdays.
If it's the birthday of a person in your library, Immich will now celebrate that with a special memory featuring previous birthdays.
Auto-stacked mobile edits
When using something other than Immich for editing images on your phone, Immich will now stack those edits on top of the original. This allows for Immich to show all edits in one place, without cluttering the timeline.
This should provide a more organized timeline, especially when you heavily rely on editing assets on your phone.
Sync OAuth claims on every login
Immich supports OAuth claims for storage quota, the user role, and the preferred username. Up until now, those were only synced on registration.
Now, they can be synced on every login, allowing you to do active user management through your IDP, updating quotas and roles as you go and as necessary, and Immich will adopt those changes.
Higher quality thumbnails and previews
Immich now uses a more accurate image resampling method, improving detail preservation and brightness, especially for high contrast details. All image formats benefit from this change.
Before
After
Thumbnails already generated before this release won’t be affected by this change. To make it apply to existing thumbnails, you can run thumbnail generation on all assets in the job panel.
Machine learning performance and accuracy improvements (opt-in)
[!NOTE]
We have re-exported and published the same machine learning models in an optimized format. This means they can be used as-is and do not require re-running any jobs. Opt-in to the revised machine learning models by adding the following environment variable to the machine learning container: MACHINE_LEARNING_MODEL_REVISION=v2.
After a long list of optimizations, ML is both significantly faster and uses less memory. This affects every backend, including CPU inference. However, the level of improvement varies by model and backend. Cases where certain backends (such as OpenVINO) produced wrong outputs at times should be resolved.
RKNPU, used by Rockchip boards, now supports every model in the catalog including OCR for the first time, bringing it to parity with other backends. Additionally, TensorRT RTX is now used for Ampere (30xx) and newer NVIDIA GPUs, improving performance significantly.
To fully benefit, set MACHINE_LEARNING_MODEL_REVISION=v2to allow more optimized models to be downloaded and used. Many of the improvements rely on these optimized models and will not take effect when using the old ones. The outputs of the new and old models are numerically equivalent, so switching doesn’t require re-running any tasks. This setting will be the default in a later release.
As always, keep in mind that the very first time you load a model requires more preparation work, so don’t be surprised if it takes some time at first. This preparation is cached and reused, so loading the model will be much faster after the first time.
New OCR models
The PP-OCRv6 family is now supported. These models are significantly more accurate than the previous PP-OCRv5 generation while all being multilingual. PP-OCRv6_tiny is efficient and suitable for modest hardware, PP-OCRv6_small is a notable jump in accuracy compared to PP-OCRv5_mobile, and PP-OCRv6_medium improves on PP-OCRv5_server as the highest quality and most demanding option.
Notable fix: correct storage size on MacOS
The block size used to calculate the storage capacity and usage has some nuances to it. In some situations (*cough* Docker on MacOS *cough*), we didn’t have enough information to correctly compute accurate values. With this release, the reported storage usage and capacity should now be correct.
Technical details
Recent NodeJS releases now expose the frsize property, which is sometimes different from bsize (“block size”). In those cases the calculate storage sizes could often be off by a factor of4096 (or more). In fact, #4318 has been our fourth oldest open issue (including the renovate dashboard), opened just over three years ago. Now, with accurate block sizes our storage calculation should be correct, even in Docker on MacOS.
We are very happy to finally see this issue resolved, even though it only meant a dependency bump and a tiny code change for us.
As always, please consider supporting the project.
Updates pnpm, Immich SDK, and TypeScript linting dependencies.
No findings
Confidence 5/5 · medium risk: The risk rests on the pnpm minor bump (12.8.2 to 12.14.0), which changes the package manager that mise and CI use, and on the minor @immich/sdk bump. The lockfile, package.json and mise pins are consistent, and the lockfile resolves the SDK to 3.3.4, as the description says. The remaining updates are dev-only lint and format patches.
Approved
Summary
This updates pnpm to 12.14.0 and refreshes the scripts workspace’s SDK, linting, and formatting dependencies. The SDK changes leave the demo seeder’s API calls unchanged, while the lockfile consistently updates the related linting peer dependencies.
✅ Smoke test for sticky-comment action passed — run 39679091113.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
3.2.4→3.3.58.71.0→8.71.28.71.0→8.71.210.11.0→10.13.05.5.6→5.5.712.8.2→12.14.012.8.2→12.14.03.9.9→3.9.108.71.0→8.71.2Release Notes
immich-app/immich (@immich/sdk)
v3.3.5Compare Source
https://xkcd.com/221/
What's Changed
🔒 Security
Full Changelog: immich-app/immich@v3.3.4...v3.3.5
v3.3.4Compare Source
Turns out the last people performance fix wasn't quite there for some people. We have now finally resolved that issue.
What's Changed
🐛 Bug fixes
Full Changelog: immich-app/immich@v3.3.3...v3.3.4
v3.3.3Compare Source
Well, you know how it goes... Misclick once and a release is sacrificed 😅 The second patch release
v3.3.3has some more bug fixes, notably a major performance improvement for the explore page.What's Changed
🐛 Bug fixes
Full Changelog: immich-app/immich@v3.3.1...v3.3.3
v3.3.1Compare Source
This patch addresses various bugs around people sharing, as well as a scroll issue on mobile. Further, there is now an indicator showing which people are shared.
What's Changed
🌟 Enhancements
🐛 Bug fixes
📚 Documentation
🌐 Translations
New Contributors
Full Changelog: immich-app/immich@v3.3.0...v3.3.1
v3.3.0Compare Source
v3.3.0
Welcome to Immich
v3.3.0!This release includes people sharing, birthday memories, auto-stacked mobile edits, and a variety of other enhancements and bug fixes. Keep reading below for the full list of highlights.
Highlights
Shared people management
We are very pleased to release the next big milestone towards better sharing: people can now be shared!
As a user you can share people with another user in your cluster group:
When sharing a person with another user, the shared person:
By default, changes to the name & date of birth are reflected for both users. On the web, the “Edit person” modal has an option to change the name/date of birth for “Only me” instead of the whole group.
Also, there is a preference for this behavior in the “Sharing settings”, which can be changed to make this the default behavior when editing a person. The setting can be changed here: https://my.immich.app/user-settings?isOpen=feature+people.
The setting has two options:
Lastly, by allowing cross-user merging, you can now merge a face from your own assets with people shared with you from other users. This is especially helpful if you didn't want to re-run facial recognition after joining a cluster group before. Now, after setting up bi-directional sharing, users can manually link people together.
Birthday memories
In an effort of making Immich more joyful to use, we are introducing memories for people's birthdays.
If it's the birthday of a person in your library, Immich will now celebrate that with a special memory featuring previous birthdays.
Auto-stacked mobile edits
When using something other than Immich for editing images on your phone, Immich will now stack those edits on top of the original. This allows for Immich to show all edits in one place, without cluttering the timeline.
This should provide a more organized timeline, especially when you heavily rely on editing assets on your phone.
Sync OAuth claims on every login
Immich supports OAuth claims for storage quota, the user role, and the preferred username. Up until now, those were only synced on registration.
Now, they can be synced on every login, allowing you to do active user management through your IDP, updating quotas and roles as you go and as necessary, and Immich will adopt those changes.
Higher quality thumbnails and previews
Immich now uses a more accurate image resampling method, improving detail preservation and brightness, especially for high contrast details. All image formats benefit from this change.
Before
After
Thumbnails already generated before this release won’t be affected by this change. To make it apply to existing thumbnails, you can run thumbnail generation on all assets in the job panel.
Machine learning performance and accuracy improvements (opt-in)
After a long list of optimizations, ML is both significantly faster and uses less memory. This affects every backend, including CPU inference. However, the level of improvement varies by model and backend. Cases where certain backends (such as OpenVINO) produced wrong outputs at times should be resolved.
RKNPU, used by Rockchip boards, now supports every model in the catalog including OCR for the first time, bringing it to parity with other backends. Additionally, TensorRT RTX is now used for Ampere (30xx) and newer NVIDIA GPUs, improving performance significantly.
To fully benefit, set
MACHINE_LEARNING_MODEL_REVISION=v2to allow more optimized models to be downloaded and used. Many of the improvements rely on these optimized models and will not take effect when using the old ones. The outputs of the new and old models are numerically equivalent, so switching doesn’t require re-running any tasks. This setting will be the default in a later release.As always, keep in mind that the very first time you load a model requires more preparation work, so don’t be surprised if it takes some time at first. This preparation is cached and reused, so loading the model will be much faster after the first time.
New OCR models
The PP-OCRv6 family is now supported. These models are significantly more accurate than the previous PP-OCRv5 generation while all being multilingual. PP-OCRv6_tiny is efficient and suitable for modest hardware, PP-OCRv6_small is a notable jump in accuracy compared to PP-OCRv5_mobile, and PP-OCRv6_medium improves on PP-OCRv5_server as the highest quality and most demanding option.
Notable fix: correct storage size on MacOS
The block size used to calculate the storage capacity and usage has some nuances to it. In some situations (*cough* Docker on MacOS *cough*), we didn’t have enough information to correctly compute accurate values. With this release, the reported storage usage and capacity should now be correct.
Technical details
Recent NodeJS releases now expose the
frsizeproperty, which is sometimes different frombsize(“block size”). In those cases the calculate storage sizes could often be off by a factor of4096(or more). In fact, #4318 has been our fourth oldest open issue (including the renovate dashboard), opened just over three years ago. Now, with accurate block sizes our storage calculation should be correct, even in Docker on MacOS.We are very happy to finally see this issue resolved, even though it only meant a dependency bump and a tiny code change for us.
As always, please consider supporting the project.
🎉 Cheers! 🎉
Support Immich
If you find the project helpful, you can support Immich by purchasing a product key at https://buy.immich.app or our merchandise at https://immich.store
What's Changed
🚀 Features
🌟 Enhancements
🐛 Bug fixes
📚 Documentation
🌐 Translations
New Contributors
Full Changelog: immich-app/immich@v3.2.4...v3.3.0
typescript-eslint/typescript-eslint (@typescript-eslint/eslint-plugin)
v8.71.2Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.71.1Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
typescript-eslint/typescript-eslint (@typescript-eslint/parser)
v8.71.2Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.71.1Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
eslint/eslint (eslint)
v10.13.0Compare Source
Features
48d5cc4feat: report references inside IIFEs inno-use-before-define(#21238) (Irfan fandi)a39d9fbfeat: addglobalThistono-obj-calls(#21382) (synthex-byte)66ac583feat: checkyield*expressions inno-unsafe-optional-chaining(#21399) (xbinaryx)Bug Fixes
87bd2cefix: avoid redeclaredletwhenno-varandone-varfix together (#21389) (Daniel Pinto)Documentation
4783a68docs: Update README (GitHub Actions Bot)43f0ac9docs: clarify parameter description ingetText(#21287) (lumir)Chores
b59d889chore: update github/codeql-action action to v4.38.3 (#21412) (renovate[bot])95e51a0ci: re-enable@typescript-eslint/typescript-eslintin ecosystem tests (#21410) (Francesco Trotta)317fcb3chore: update ecosystem plugins (#21409) (ESLint Bot)b92decfperf: skip no-redeclare scan for single-declaration variables (#21365) (James Ross)47b7063chore: update dependency @eslint/json to ^2.1.1 (#21398) (renovate[bot])e5aea41chore: update ecosystem plugins (#21390) (ESLint Bot)v10.12.0Compare Source
Features
4618052feat: handle astral letters innew-cap(#21357) (sary)4ec5168feat: allowSourceCode#getText()to accept tokens and comments (#21340) (electrohyun)Bug Fixes
bc51eeefix:prefer-arrow-callbackfalse positive in conditional test (#21373) (Daniel Pinto)bbff86cfix: skip lines with multiple comments inmax-lines-per-function(#21332) (xbinaryx)efc4d6bfix: astral letters inconsistent-return,no-eval,no-invalid-this(#21360) (lumir)93de066fix: prefer-exponentiation-operator autofix for async function base (#21322) (Vladimir Babin)02e34fffix: add missing space afterelseincurlyautofix (#21355) (Pixel)b14b8bcfix: correctid-lengthmessage for long private names (#21348) (Pixel)69aac01fix: supportTSFunctionTypeingetFunctionHeadLoc(#21335) (xbinaryx)686630efix:no-loss-of-precisionfalse positive with0.e5(#21337) (sethamus)Documentation
67eb586docs: Update README (GitHub Actions Bot)5370d7edocs: clarifyone-varseparateRequiresmatches anyrequire()call (#21192) (sethamus)8816c1ddocs: Update README (GitHub Actions Bot)3d2e7cedocs: fix typo in no-unused-expressions documentation (#21346) (bytedoe)Chores
152067fchore: update ecosystem plugins (#21362) (ESLint Bot)b56d58echore: update github/codeql-action action to v4.38.2 (#21376) (renovate[bot])bfaea12perf: cache normalized config globals per languageOptions (#21364) (James Ross)322209eci: avoid Nx cache in ecosystem tests and disable failing test (#21369) (Francesco Trotta)d166567](https://redirect.github.com/eslint/eslint/commit/d1665679Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled because a matching PR was automerged previously.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.