Commit Graph

8942 Commits

Author SHA1 Message Date
renovate[bot]
1fd8fb159f fix(deps): update typescript-projects 2026-01-12 11:06:28 +00:00
Jason Rasmussen
d4ad523eb3 refactor(web): user app settings (#25177) 2026-01-10 07:58:50 -05:00
Brandon Wees
e8c80d88a5 feat: image editing (#24155) 2026-01-09 17:59:52 -05:00
Jason Rasmussen
76241a7b2b refactor: user settings (#25166) 2026-01-09 17:11:07 -05:00
Jason Rasmussen
1e4af9731d refactor: modals (#25163) 2026-01-09 15:05:20 -05:00
Noel S
88327fb872 fix(mobile): remove weird zooming behaviour on videos and play/pause button delay (#24006)
disable scale gestures
2026-01-09 13:14:07 -06:00
Jason Rasmussen
702499b97d refactor: modals (#25162) 2026-01-09 13:03:57 -05:00
shenlong
da248414af refactor(mobile): form & form field (#25042)
* refactor: form & form field

* chore: remove unused components

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2026-01-09 09:26:36 -06:00
renovate[bot]
af2c232c87 chore(deps): update github-actions (major) (#25160)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-09 14:55:39 +00:00
Yaros
cca037b03c fix(web): person asset count doesn't update when navigating (#24438) 2026-01-09 15:55:23 +01:00
renovate[bot]
1d71bb5a79 chore(deps): update ghcr.io/jdx/mise docker tag to v2026 (#25159)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-09 14:52:24 +00:00
renovate[bot]
ee4f2c735d chore(deps): update immich-app/devtools action to v1.1.1 (#25066)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-09 15:42:49 +01:00
Min Idzelis
4d559a63ec fix: properly fix asset-viewer delete action, add tests (#25149)
Update timeline manager before nav, add e2e regression tests
2026-01-09 09:20:42 -05:00
Robert Schäfer
573e9b0d52 refactor(dev): dockerify auth-server (#24377)
Description
-----------

A while ago I asked on Discord if you people would be interested in removing incompatibilities with rootless docker. See: https://discord.com/channels/979116623879368755/1071165397228855327/1442974448776122592

The e2e tests in `e2e/src/api/specs/oauth.e2e-spec.ts` depend on a docker feature [host-gateway](https://docs.docker.com/reference/cli/dockerd/#configure-host-gateway-ip) that seemingly does not work on rootless docker.

So the suggested change is to dockerify the `auth-server` and not run it on the docker host.

I would love to receive feedback on this PR and feel free to request further improvements. Things that come to my mind:

* Compile typescript instead of using `tsx`
* Add hot-reloading of source files in `auth-server/` for development
* Add `eslint` configuration for the new folder

How Has This Been Tested?
------------------------

I'm running both default and rootless docker on my machine with [docker contexts](https://docs.docker.com/engine/manage-resources/contexts/):
```
docker context ls
NAME         DESCRIPTION                               DOCKER ENDPOINT                     ERROR
default                                                unix:///var/run/docker.sock
rootless *                                             unix:///run/user/1000/docker.sock
```

If I follow the steps from the [documentation](https://docs.immich.app/developer/testing) then `oauth.e2e-spec.ts` will fail because the `auth-server` on my host can't be reached.

The tests pass after these steps:
1. `git switch refactor-auth-server-as-service`
2. `make e2e`
3. In another terminal `cd e2e`
4. `pnpm run test src/api/specs/oauth.e2e-spec.ts` passes

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/`)
2026-01-09 08:59:11 -05:00
bo0tzz
a2502109ab fix: use my.immich.app as url placeholder in docs (#25153) 2026-01-09 11:46:55 +00:00
Timon
3cdece4945 fix(server): Document HTTP 200 response for duplicate uploads in OpenAPI (#25148)
* fix(server): Document HTTP 200 response for duplicate uploads in OpenAPI

* fix 201

* rename
2026-01-08 23:52:31 -05:00
Daniel Dietzler
520b825511 refactor: album page (#25140) 2026-01-08 22:27:20 +00:00
Jason Rasmussen
191401f2f1 fix: add asset upload medium test (#25144) 2026-01-08 22:01:25 +00:00
Jason Rasmussen
8136d7fd54 refactor(web): tag service (#25142) 2026-01-08 16:37:58 -05:00
Timon
5d1e486478 fix(server): avoid upserting empty metadata array (#25143) 2026-01-08 22:33:35 +01:00
Brandon Wees
85b0b97ef2 fix(web): apply changes to cursor.current instead of asset (#25136) 2026-01-08 22:31:41 +01:00
Jason Rasmussen
471fab0591 refactor: delete confirm modal (#25135) 2026-01-08 15:59:26 -05:00
Jason Rasmussen
6997ed83c4 refactor(web): set birthdate (#25139) 2026-01-08 15:41:20 -05:00
Jason Rasmussen
a2ba36c16d feat: bulk asset metadata endpoints (#25133) 2026-01-08 14:52:16 -05:00
Alex
109c79125d fix: description does not rerender when navigating between assets (#25137) 2026-01-08 13:32:43 -06:00
Jason Rasmussen
fbd49e0b79 refactor: memory lane (#25134) 2026-01-08 12:40:17 -05:00
Alex
1f20b6471c feat: use fastlane sigh to manage signing profiles (#25089)
* feat: use fastlane sigh to manage signing profiles

* remove unused secrects

* remove unused fallback
2026-01-08 03:02:21 +00:00
Alex
1d6a9f6e80 feat: free up space (#24999)
* feat(server): Support camera `make`, `model`, and `lensModel` in Storage Template (#24650)

* add support for make, model, lensModel in storage template

* no pkg lock

* Apply suggestion from @danieldietzler

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

* query and formatting

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

* wip: copy-writing

* feat: cutoff date preset options and filter options

* fix: don't include iCloud Shared Album

* chore: message about excluding shared album assets

* feat: show preview in a separate page

* feat: show clean up hint modal after success deletion

* pr feedback

* pr feedback

* pr feedback

---------

Co-authored-by: Rahul Kumar Saini <rahul-kumar-saini@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2026-01-07 20:55:28 -06:00
Min Idzelis
0a9f1a3cbf feat: cache asset info for prev/next navigation (#24482)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2026-01-07 19:10:29 -05:00
Jason Rasmussen
4f803832ad refactor: download action (#25124) 2026-01-07 22:01:20 +00:00
Mees Frensel
ef4aec7398 chore: refactor ErrorLayout (#25094)
* chore: refactor ErrorLayout

* Align links to top
2026-01-07 15:49:04 -06:00
Jason Rasmussen
5bb3492616 refactor: favorite action (#25121) 2026-01-07 21:21:19 +00:00
Min Idzelis
78229baeab feat: improve asset-viewer next/prev perf and standardize preloading behavior (#24422)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2026-01-07 21:17:12 +01:00
Timon
81f269e2a9 fix(docs): Use full git clone in CI to enable accurate last update times (#25120) 2026-01-07 17:19:43 +00:00
Timon
225b0f9377 chore: use setup-uv action to install python (#25109)
chore: update GitHub Actions workflow to use setup-uv action to install python
2026-01-07 10:46:04 -05:00
Alex
30b90f9baa fix: propagate iCloud Shared Album flag (#25060)
* fix: propagate iCloud Shared Album flag

* chore: add migration
2026-01-06 19:46:25 -06:00
Jason Rasmussen
1293e473ca refactor: cast button (#25101) 2026-01-06 18:51:19 -05:00
Jason Rasmussen
1a24a2d35e refactor: asset viewer navbar actions (#25091) 2026-01-06 17:35:37 -05:00
Jason Rasmussen
f0f1687c79 refactor: asset view navbar onclose (#25087) 2026-01-06 15:41:53 +00:00
lif
ded980bfc3 fix(web): improve text contrast in minimized upload panel (#25075)
The minimized upload status buttons in dark mode had poor text
contrast because they used `text-gray-200` on colored backgrounds.
Changed to `text-light` which provides better contrast for both
light and dark modes on `bg-primary` and `bg-danger` backgrounds.

Fixes #24683

Signed-off-by: majiayu000 <1835304752@qq.com>
2026-01-06 15:23:28 +00:00
fabb
4cb56edebf fix: enter now submits the date modals (#25053)
* fix: enter now submits the date modals

* use FormModal

* apply prettier

* fix unit test
2026-01-06 09:08:54 -06:00
Daniel Dietzler
c411151560 chore: docs for contributing (#25082) 2026-01-06 09:07:44 -06:00
Brandon Wees
f52bd9f38a feat: use prettier for i18n translations (#24623) 2026-01-06 15:02:10 +00:00
Mees Frensel
006d02cfaf fix(web): server stats layout (#25085)
fix: server stats layout
2026-01-06 09:10:38 -05:00
lif
263f96da87 fix(server): search statistics with personIds returns 500 (#25074)
The searchAssetBuilder was incorrectly adding withFacesAndPeople
select when personIds was provided. This caused a SQL error because
the subquery referenced asset.id which wasn't selected in statistics
queries (only count(*) was selected).

The fix removes personIds from the condition that triggers adding
faces data to the select. The hasPeople filter (for personIds) is
still applied correctly for filtering.

Fixes #25003

Signed-off-by: majiayu000 <1835304752@qq.com>
2026-01-06 08:54:12 -05:00
Calvin Bochulak
f22affd836 feat(web): star rating keyboard shortcut (#24620)
Co-authored-by: idubnori <i.dub.nori@gmail.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-01-06 12:56:29 +00:00
Yaros
f5667cefd4 fix(web): broken asset urls if shared link has photos in name (#24451) 2026-01-06 13:49:08 +01:00
Hemendra Singh Shekhawat
7efce389b2 fix(web): long text taking more width than expected in duplicate manager (#24547) 2026-01-06 12:47:41 +00:00
lif
f59cff4f5d fix(web): use asset date for change date popup when single asset selected (#25076) 2026-01-06 13:37:51 +01:00
Jason Rasmussen
984f06ac40 refactor: asset viewer (#25059) 2026-01-05 21:02:01 +00:00