Commit Graph

6586 Commits (v1.131.1)
 

Author SHA1 Message Date
github-actions 7729fe80fa chore: version v1.131.1 2025-03-31 20:36:48 +07:00
martin 68e24ad168
fix: posix compliant command (#17264) 2025-03-31 16:35:02 +07:00
Jason Rasmussen 186c573565
fix: missing migration folder broke non-root setups (#17266) 2025-03-31 20:18:13 +07:00
github-actions 5b63b9fc8b chore: version v1.131.0 2025-03-31 18:41:13 +07:00
Eli Gao 5c80e8734b
feat: original-sized previews for non-web-friendly images (#14446)
* feat(server): extract full-size previews from RAW images

* feat(web): load fullsize preview for RAW images when zoomed in

* refactor: tweaks for code review

* refactor: rename "converted" preview/assets to "fullsize"

* feat(web/server): fullsize preview for non-web-friendly images

* feat: tweaks for code review

* feat(server): require ASSET_DOWNLOAD premission for fullsize previews

* test: fix types and interfaces

* chore: gen open-api

* feat(server): keep only essential exif in fullsize preview

* chore: regen openapi

* test: revert unnecessary timeout

* feat: move full-size preview config to standalone entry

* feat(i18n): update en texts

* fix: don't return fullsizePath when disabled

* test: full-size previews

* test(web): full-size previews

* chore: make open-api

* feat(server): redirect to preview/original URL when fullsize thumbnail not available

* fix(server): delete fullsize preview image on thumbnail regen after fullsize preview turned off

* refactor(server): AssetRepository.deleteFiles with Kysely

* fix(server): type of MediaRepository.writeExif

* minor simplification

* minor styling changes and condensed wording

* simplify

* chore: reuild open-api

* test(server): fix media.service tests

* test(web): fix photo-viewer test

* fix(server):  use fullsize image when requested

* fix file path extension

* formatting

* use fullsize when zooming back out or when "display original photos" is enabled

* simplify condition

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2025-03-31 13:24:28 +07:00
bo0tzz a5093a9434
docs: separate upgrading page (#17257)
* docs: separate upgrading page

* chore: move "setup optional features" into postinstall

* docs: stronger backup warning in postinstall

* chore: link to upgrading page

* docs: reiterate breaking changes in upgrade doc

* chore: fix formatting

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-31 11:43:14 +07:00
Mert 637ad1fdcb
docs: minor typo (#17258)
three -> two
2025-03-31 18:34:29 +07:00
Mert 6789c2ac19
feat(ml): better multilingual search with nllb models (#13567) 2025-03-31 11:06:57 +07:00
PathToLife 838a8dd9a6
feat(web): increase album collapse click area (#17213) 2025-03-31 09:45:30 +07:00
Brandon Wees d71c5602c3
fix(server): Postgres error pretty printing (#17204)
* add patch-package to dev dependencies

this allows us to patch upstream packages without waiting for PRs to be merged (or not!). Patch-package does a pretty good job of notifying if upstream does a change to invalidate the patch (its a git patch under the hood).

* Patch implementation of https://github.com/porsager/postgres/pull/944

This PR has not been merged by upstream and helps produce verbose error messages when postgres fails to connect (usually incorrect credentials). This is in contrast to error messages such as

`TypeError: Cannot read properties of undefined (reading 'replace'), stack: TypeError: Cannot read properties of undefined (reading 'replace')`

* have postinstall only run when not installing a global package (such as immich-cli in the Docker build)
2025-03-31 09:34:43 +07:00
Mert 8c50e3e80e
feat(server): consider `JpgFromRaw2` tag for embedded previews (#17123)
* add jpgfromraw2

* unused catch
2025-03-31 09:17:57 +07:00
Jonathan Jogenfors efcb1129ce
fix(server): don't sync null date assets (#17247) 2025-03-31 09:16:53 +07:00
Jonathan Jogenfors faabda4446
fix(server): multiple exclusion patterns (#17221) 2025-03-31 09:16:30 +07:00
Alex b8b2898c87
fix(server): double extension when filename has uppercase extension (#17226)
* fix(server): double extension when filename has uppercase extension

* Proper tests
2025-03-31 09:16:04 +07:00
Ben McCann b25914c2a5
chore: use writable derived in more places (#17248)
chore(web): use writable derived in more places
2025-03-31 09:15:52 +07:00
Zack Pollard d613f15606
test: fix flaky user handle delete check medium test (#17253)
we can't run specifically the handleUserDeleteCheck tests concurrently due to one of the tests modifying the config in the shared database
if run concurrently you can get race conditions where the other tests pick up the change, even with resetting the config in the beforeEach
therefore the test that checks a delete actually happens, fails
there are many ways to solve this, disabling concurrency for the suite, forcing sequential tests for just handleUserDeleteCheck, increasing the delete test deletedAt to more than the custom duration tests deleteDelay
I applied all three of these. You could also force all the user tests to run in their own databases, but that feels overkill
2025-03-31 13:19:57 +07:00
hwang a831876fdc
fix: MAX_PARAMETERS_EXCEEDED error during person cleanup job (#17222)
* add batch size in sql delete,fix person cleanup error: ERROR [Microservices:{}] Unable to run job handler (backgroundTask/person-cleanup): Error: MAX_PARAMETERS_EXCEEDED: Max number of parameters (65534) exceeded

* add chunked decorator to delete

* chore: prettier formatting fixes

---------

Co-authored-by: hwang3419 <“hwang.iit@gmail.com”>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-31 11:30:56 +07:00
PathToLife 09f4476f97
feat: improve performance for GET /api/album & /api/album/:id (#17124)
* fix(server) optimize number of sql calls for GET /api/albums

remove unnecessary join for getMetadataForIds
remove separate call to getLastUpdatedAssetForAlbumId

* fix(server) remove unnecessary getLastUpdatedAssetForAlbumId call for GET /api/album/:id

also remove getLastUpdatedAssetForAlbumId query as it is no longer referenced

* fix(server): correct lastModifiedAssetTimestamp return type + formatting and typing

* chore(server): address type issue with tests found via npm:check

tests & lint still pass before this commit.
2025-03-31 11:28:41 +07:00
Daniel Dietzler 238c151ac3
chore: finish migrating eslint config files; bump unicorn (#17200) 2025-03-31 12:18:25 +07:00
bo0tzz e4f83680d9
feat: use my.immich.app for externalDomain fallback (#17209)
* feat: use my.immich.app for externalDomain fallback

This is probably more useful than localhost.

* chore: remove port param

* fix: update expected value in tests

* fix: update expected value in e2e
2025-03-31 12:08:41 +07:00
Daniel Dietzler 74f7fd4b53
chore: add language requests from weblate (#17236) 2025-03-31 10:48:41 +07:00
Weblate (bot) f4dbfd856e
chore(web): update translations (#17115)
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ar/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/hi/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/hu/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ja/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ko/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/te/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/
Translation: Immich/immich

Co-authored-by: Abhijeet Viswam <abhijeetviswam@gmail.com>
Co-authored-by: Bezruchenko Simon <worcposj44@gmail.com>
Co-authored-by: C D <chinnidiwakar5@gmail.com>
Co-authored-by: Henrik Sommerfeld <henrik@sommerfeld.nu>
Co-authored-by: Karsten Dambekalns <karsten@dambekalns.de>
Co-authored-by: Miro Rýzek <miroslav.ryzek@gmail.com>
Co-authored-by: Mohd Nader <mohd.nader@gmail.com>
Co-authored-by: Mārtiņš Bruņenieks <martinsb@gmail.com>
Co-authored-by: Nergis <me@nergis.dev>
Co-authored-by: Utkarsh Prajapati <utkarshprap@gmail.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Co-authored-by: grgergo <gergo_g@proton.me>
2025-03-31 09:47:08 +07:00
Jason Rasmussen 55a3c30664
feat: kysely migrations (#17198) 2025-03-29 09:26:24 +07:00
renovate[bot] 6fa0cb534a
fix(deps): update dependency @opentelemetry/context-async-hooks to v2 (#17031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-28 20:51:01 +07:00
Ben McCann 9f0dbfc150
chore(web): update to newer persisted store package name (#17094) 2025-03-28 20:40:57 +07:00
Saschl 6419ac74af
fix: update renderlist after asset deleted (#16786) 2025-03-28 18:34:19 +07:00
Yaros d2bcf5d716
fix(mobile): pause background video play (#17032)
* fix(mobile): prevent background video playback

* fix: logic for tracking app state

* chore: move lifecycle handler in separate file

* chore: replace useState with useRef

* chore: useOnAppLifecycleStateChange

* fix: removed print statement
2025-03-28 10:32:25 +07:00
shenlong c8331f111f
fix(mobile): prefer remote orientation (#17177)
* fix(mobile): prefer remote orientation

* pr feedback

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-28 10:24:31 +07:00
Jason Rasmussen 4b4bcd23f4
feat: schema diff sql tools (#17116) 2025-03-28 10:40:09 +07:00
Ben McCann 3fde5a8328
feat: map globe view, style hot reloading and load lag fixed (#17079)
* chore: upgrade svelte-maplibre and enforce runes

* feat: maplibre-gl 5, globe view, style hot reloading, fast map markers

* fix: remove location-pin class that wasn't being used

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-28 14:08:54 +07:00
Joren Guillaume cc3ea32cd2
docs: update folder support for app in README.md (#17191)
Update folder support for app in README.md
2025-03-28 09:35:36 +07:00
Ben McCann 431cf281da
chore(web): update typescript-eslint (#17093) 2025-03-28 00:04:31 +07:00
Alex 8f786fd7dd
fix(web): form reactivity (#17183) 2025-03-27 19:58:49 +07:00
Alex 3e73765375
fix(web): don't show newly uploaded asset in inapplicable views (#17184) 2025-03-27 19:45:50 +07:00
Alex 411521b21d
chore: post release tasks (#17179) 2025-03-27 19:41:22 +07:00
renovate[bot] e163808348
fix(deps): update typescript-projects (#17080)
* fix(deps): update typescript-projects

* fix: otel

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-03-27 22:33:58 +07:00
Ben McCann 411772123f
chore(web): remove unused props (#17141) 2025-03-27 23:12:14 +07:00
Mert 84c35e35d6
chore(ml): installable package (#17153)
* app -> immich_ml

* fix test ci

* omit file name

* add new line

* add new line
2025-03-27 19:49:09 +07:00
Mert f7d730eb05
chore(ml): remove exporter (#17182)
* remove exporter code

* update gha
2025-03-27 14:48:02 +07:00
Mert 16e0166d22
docs: evaluate models on xtd-10 and flickr30k (#17159)
update docs
2025-03-27 11:30:51 +07:00
github-actions 43f8f473e9 chore: version v1.130.3 2025-03-27 15:54:30 +07:00
shenlong cc393b2b7b
fix(mobile): oauth-mobile-first-login (#17173)
invalidate ref

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-27 15:49:55 +07:00
Alex 6341962de4
fix(web): better touch device detection (#17144)
* fix(web): better touch device detection

* variable name
2025-03-27 10:43:56 +07:00
Min Idzelis c26b28f6a4
fix: bug with svelte gestures (#17154)
* fix: bug with svelte gestures

* lint
2025-03-27 08:51:52 +07:00
shenlong c72c82c401
fix(mobile): faster device album refresh after initial sync (#17170)
fix(mobile): faster device album refresh after fresh sync

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-27 08:47:05 +07:00
Alex fecf3809a6
fix(server): album count does not account for assets without exif (#17150)
* fix(server): album count doesn't accounted for assets without exif

* sql
2025-03-26 21:24:22 +07:00
Mert 619bd72de9
docs: mention rknn among image options (#17156)
mention rknn
2025-03-26 19:05:48 +07:00
Jason Rasmussen fd4a5f71b5
fix: broken album page (#17149) 2025-03-26 18:59:23 +07:00
github-actions 2f8725c66f chore: version v1.130.2 2025-03-26 15:34:54 +07:00
Jonathan Jogenfors 9fbd6369b9
fix(server): check asset against multiple import paths (#17128)
* fix sql logic

* refactor: map import paths into not or sql statements

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-26 10:10:53 +07:00