Add a mechanism to share either the server-generated JPEG preview or the
full original file. When the selection contains at least one asset that can
provide a preview (a remote image), a bottom sheet lets the user pick the
quality; otherwise sharing falls back to the original as before.
The share-source resolution is extracted into pure, unit-tested business
logic that handles all three asset states (local, remote, merged):
- preview requires a remote image; videos and local-only assets fall back
to the original
- original prefers the on-device file, but edited assets are downloaded
since edits only exist on the server
- preview filenames are normalized to a .jpg extension
Add unit tests covering the resolution, gating and filename helpers.
* fix(ml): pass model_root_dir to OcrOptions for RapidOCR compatibility
Fix a TypeError (Path(None)) when the OCR model is invoked, caused by an upstream change in RapidOCR v3.8.1 (RapidAI/RapidOCR@8ea9626).
RapidOCR now internally calls `Path(cfg.get("model_root_dir"))`. Since `model_root_dir` was missing from `OcrOptions`, it evaluated to `None` and triggered a `TypeError: argument should be a str or an os.PathLike`.
This fix adds the missing `model_root_dir` argument to prevent the error.
Ref: #28331
* fix(ml-test): update OCR tests for RapidOCR schema change
* chore(ml-test): remove unused `cache_dir` parameter from `TextRecognizer`
* Revert "chore(ml-test): remove unused `cache_dir` parameter from `TextRecognizer`"
This reverts commit 007ad7b3f2.
* fix(ml): use self.cache_dir for model_root_dir in OcrOptions
* feat(mobile): better downloading while sharing
* chore: separate download group
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Update FAQ with profile picture change instructions
Based on this discussion (https://github.com/immich-app/immich/discussions/27168) it seems I am not the only one confused by how Immich lets you change your profile picture. An addition to the FAQ will help. I also added another horizontal separator to be consistent with the rest of the document.
* fix: stabilize ROCm MIGraphX inference
Serialize MIGraphX session runs so lazy compiles cannot overlap within a worker.
Use a fixed face-recognition batch size for MIGraphX to avoid compiling a new program for each detected face count.
* fix(ml): increase ROCm worker timeout
* fix(ml): narrow MIGraphX compile locking
* docs: format environment variables table
* docs: apply prettier to environment variables table
* fix(mobile): preserve zoom level when new images load in asset viewer
* fix(mobile): use actual child size for live photo
* revert fixes
* fix(mobile): keep zoom consistent when scale boundaries change
* fix(mobile): simplify scale handling in photo_view_core.dart
* chore(ml): allow insightface 1.x
The new insightface 1.0 release appears to have no breaking code changes nor relevant license changes ([before](2a78baec42/README.md), [after](70f3269ea6/README.md), c.f. fd7ddfef54/machine-learning/README.md), and it works on my machine.
* Update uv.lock
* please excuse my incompetence