feat: db insertions for edits
feat: get asset edits endpoint
feat: wip apply edits
feat: finish asset files changes
feat: wip
feat: wip
fix: openapi
fix: tests
the failing tests were so scuffed. Simply solved by adding [] to the param list
feat: more wip
feat: more wip
feat: some more tests and fixes
chore: fix default for getting thumbnail and add todo for tests
feat: LRTB validation
chore: code cleanup
chore: more test checks for cleanup
feat: show edit pane
fix: state issues
chore: restructure web editor
feat: restructure edit manager
feat: refactor cropManager
chore: combine all editing
chore: web editing improvements
fix: handling when no crops
fix: openapi enum
chore: more edit refactoring
fix: make image decoding more efficient
chore: more refactoring
fix: getCrop LRTB algorithm
fix: missing await
chore: use relative coordinates for edit
chore: update sql
fix: use resize observer instead of svelte:doc resize hook
chore: simplify quad box generation
fix: light mode styling
chore: refactor to not be a recursive job call
this simplifies the logic and the job only completes once thumbhash and others are properly updated
chore: more refactoring
feat: use affine transforms for most operations
feat: bounding box edit transformation
feat: tests
chore: sql and openapi sync
fix: medium tests
fix: rotated OCR
chore: cleanup transform test
fix: remove rebase issue
fix(server): block edits for live photos, gifs, panoramic photos
fix: openapi enum validation
chore: rename edit endpoint
chore: remove public modifiers
feat: delete endpoint
chore: use === and !== explicitly
fix: require 1 edit for the editAsset endpoint
fix: remove thumbnail edit notification and use on_upload_success instead
fix: primary key on asset edit table
chore: refactor to isPanorama
chore: rename editRepository to assetEditRepository
fix: missing toLowerCase
fix: db migrations
chore: update sql files
Description
-----------
The documentation lies about comments in `docker/docker-compose.dev.yml`.
Reason: in 689c6aa276 these docs were added
but the comments in this file are removed in
b9e2590752 and the docs weren't updated.
How Has This Been Tested?
-------------------------
```
$ git log -S rootless
commit b9e2590752
Author: Jason Rasmussen <jason@rasm.me>
Date: Tue Sep 16 12:48:44 2025 -0400
chore: simplify (#22082)
commit 689c6aa276
Author: Rudolf Horváth <R-Rudolf@users.noreply.github.com>
Date: Thu Nov 21 13:25:45 2024 +0100
docs: add developer notes about rootless docker setup (#13250)
```
Checklist:
----------
- [x] I have performed a self-review of my own code
- [x] I have made corresponding changes to the documentation if applicable
- [x] I have no unrelated changes in the PR.
- [ ] I have confirmed that any new dependencies are strictly necessary.
- [ ] I have written tests for new code (if applicable)
- [ ] I have followed naming conventions/patterns in the surrounding code
- [ ] All code in `src/services/` uses repositories implementations for database calls, filesystem operations, etc.
- [ ] All code in `src/repositories/` is pretty basic/simple and does not have any immich specific logic (that belongs in `src/services/`)
* fixed the timezone issue in the Immich mobile app's metadata sheet to match the web app's behavior
* format dart
* now uses the shared applyTimezoneOffset() utility function from mobile/lib/utils/timezone.dart
* add tests
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
* fix(mobile): persist album sorting in settings
* fix(mobile): persist album layout
* fix: fixed store model id
* fix: corrupted AppSettingsEnum
* chore: refactor to remove RemoteAlbumSortMode
* refactor: use t instead of tr
* fix(web): open onboarding documentation link in new tab
* Update web/src/lib/components/onboarding-page/onboarding-storage-template.svelte
---------
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
* feat: toggle in options modal
* feat(i18n): add labels to display who uploaded each asset and show asset owners
* feat: migrate asset owner settings to TimelineManager and update AlbumOptionsModal
* Revert "feat(i18n): add labels to display who uploaded each asset and show asset owners"
This reverts commit cf8f4eb135.
* fix: simplify AlbumOptionsModal invocation and update aria-label for asset owners
* feat(i18n): add label for viewing asset owners in the interface
* feat: add tests for showAssetOwners functionality in TimelineManager
* chore: move asset owner visibility toggle to kebabu menu
* refactor(web): reimplement operation-support as part of timeline-manager
Improve clarity of methods.
Add inline method documentation.
Make return type of AssetOperation optional.
* Review comments - self document code. remove optional return from callback
* fix(mobile): normalize scrolling behavior in networking settings
Remove ClampingScrollPhysics from networking settings page to match
the scrolling behavior of other settings pages. This restores the
standard iOS bounce/elastic scrolling effect.
* fix(mobile): use consistent native transitions for Library pages
Change Trash, Shared Links, and Folders routes from CustomRoute to AutoRoute to enable native iOS transitions with swipe-back gesture support.
* fix(mobile): remove SafeArea wrapper and ClampingScrollPhysics from Settings
Remove SafeArea wrapper (Scaffold handles safe areas automatically) and ClampingScrollPhysics to enable native iOS bounce scrolling.
* fix(mobile): remove bottom white space in Sync Status page
Replace Padding wrapper with ListView padding to match other Settings pages and eliminate bottom white space.
* chore: fix Dart formatting
Run dart format to fix formatting issues in settings.page.dart and sync_status_and_actions.dart
* Format Dart files
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: kao-byte <benjaminliu@MacBook-Air.local>
* - pass available album users along to the thumbnail through the asset-date-group
- show a small user-avatar in bottom right of thumbnail
* - change owner to their name in white text instead of the avatar
* cleanup
* - cleanup albumUsers creation
- use font-light for the user's name
* fix lint
* format
* - add toggle to show/hide asset owner names
* update new Timeline with albumUsers
* add @idubnori suggestion for the name font
* Don't show 'view owners' button if the album doesn't have editors
* add missing import
* format
* fix(web): #21171 (#24298)
fix: Bind timelineManager to Timeline component
---------
Co-authored-by: idubnori <i.dub.nori@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>