1
0
mirror of https://github.com/immich-app/immich.git synced 2025-07-16 07:24:40 +02:00
Commit Graph

2687 Commits

Author SHA1 Message Date
b83b28cd73 fix(deps): update typescript-projects (#18390)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-05-20 22:40:30 +00:00
bdf19ce331 fix: TimelineAsset visibility (#18395)
* fix: TimelineAsset visibility

* fix enum values
2025-05-20 15:53:34 +00:00
d1e6682df0 chore(deps): update dependency @types/node to ^22.15.18 (#18387)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-20 15:15:10 +01:00
965498d19b chore(deps): update node.js to v22.15.1 (#18388)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-20 15:14:59 +01:00
a6a4dfcfd3 fix(server): queueing for duplicate detection (#18380)
* fix queueing

* update tests
2025-05-20 08:44:39 -05:00
0d773af6c3 feat: vectorchord (#18042)
* wip

auto-detect available extensions

auto-recovery, fix reindexing check

use original image for ml

* set probes

* update image for sql checker

update images for gha

* cascade

* fix new instance

* accurate dummy vector

* simplify dummy

* preexisiting pg docs

* handle different db name

* maybe fix sql generation

* revert refreshfaces sql change

* redundant switch

* outdated message

* update docker compose files

* Update docs/docs/administration/postgres-standalone.md

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

* tighten range

* avoid always printing "vector reindexing complete"

* remove nesting

* use new images

* add vchord to unit tests

* debug e2e image

* mention 1.107.2 in startup error

* support new vchord versions

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-05-20 08:36:43 -05:00
e7edbcdf04 feat(server): lighter buckets (#17831)
* feat(web): lighter timeline buckets

* GalleryViewer

* weird ssr

* Remove generics from AssetInteraction

* ensure keys on getAssetInfo, alt-text

* empty - trigger ci

* re-add alt-text

* test fix

* update tests

* tests

* missing import

* feat(server): lighter buckets

* fix: flappy e2e test

* lint

* revert settings

* unneeded cast

* fix after merge

* Adapt web client to consume new server response format

* test

* missing import

* lint

* Use nulls, make-sql

* openapi battle

* date->string

* tests

* tests

* lint/tests

* lint

* test

* push aggregation to query

* openapi

* stack as tuple

* openapi

* update references to description

* update alt text tests

* update sql

* update sql

* update timeline tests

* linting, fix expected response

* string tuple

* fix spec

* fix

* silly generator

* rename patch

* minimize sorting

* review

* lint

* lint

* sql

* test

* avoid abbreviations

* review comment - type safety in test

* merge conflicts

* lint

* lint/abbreviations

* remove unncessary code

* review comments

* sql

* re-add package-lock

* use booleans, fix visibility in openapi spec, less cursed controller

* update sql

* no need to use sql template

* array access actually doesn't seem to matter

* remove redundant code

* re-add sql decorator

* unused type

* remove null assertions

* bad merge

* Fix test

* shave

* extra clean shave

* use decorator for content type

* redundant types

* redundant comment

* update comment

* unnecessary res

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-19 16:40:48 -05:00
dc8962f2bc fix(server): select main stream according to bitrate (#18375)
* fix main stream

* update unit tests

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2025-05-19 17:33:28 -04:00
00a77c2d6a feat(server): sort images in duplicate groups by date (#18347)
This restores behaviour introduced in
562fec6e2b and lost in
2e12c46980.
2025-05-19 17:27:30 -04:00
230c286b97 chore: cleanup extraneous memories job item definition (#18372) 2025-05-19 14:02:44 +00:00
b63d6cdcd6 feat: bulk change description (#18288)
Co-authored-by: Tamas Koos <ext_tamas.koos@btrl.ro>
2025-05-17 12:17:00 +02:00
48d746d9d5 refactor(server): "on this day" memory creation (#18333)
* refactor memory creation

* always update system metadata

* maybe fix medium tests
2025-05-16 13:16:27 -04:00
28d8357cc5 feat(web): clear person birthdate (#18330) 2025-05-16 11:56:25 -04:00
c1150fe7e3 feat: lock auth session (#18322) 2025-05-15 18:08:31 -04:00
6117329057 feat: add session creation endpoint (#18295) 2025-05-15 13:34:33 -05:00
b7b0b9b6d8 feat: locked/private view (#18268)
* feat: locked/private view

* feat: locked/private view

* pr feedback

* fix: redirect loop

* pr feedback
2025-05-15 15:35:21 +00:00
709a7b70aa chore: no sql generation for queries with side effects (#18301)
no sql generation for queries with side effects
2025-05-15 03:34:22 +00:00
6a4d21205f fix(server): do not filter out assets without preview path for person thumbnail generation (#18300)
* allow assets without preview path

* update sql

* Update person.repository.ts

Co-authored-by: Jason Rasmussen <jason@rasm.me>

* update sql, e2e

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-05-15 03:23:34 +00:00
3a0ddfb92d fix(server): vacuum after deleting people (#18299)
* vacuum after deleting people

* update sql
2025-05-14 23:13:13 -04:00
ca06d0aa83 chore(deps): update base-image (major) (#18256)
chore(deps): update base-image

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 13:54:49 -04:00
dccbe0b3ed fix(web): user details (#18253)
fix(server, web): user details
2025-05-13 07:55:58 -04:00
c0ad12f279 fix(deps): update typescript-projects (#18251)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-05-13 13:31:33 +02:00
9c484b23a9 chore(deps): update dependency @types/picomatch to v4 (#18257)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 12:33:15 +02:00
eed014482d chore(deps): update dependency @types/node to ^22.15.16 (#18249)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 12:32:48 +02:00
d271e6a3ae chore(deps): update node.js to v22.15.0 (#18250)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 12:09:41 +02:00
3066c8198c feat(web): user detail page (#18230)
feat: user detail page
2025-05-12 16:50:26 -04:00
a89f3ad97c fix(deps): update typescript-projects (#18133)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-10 13:07:20 +02:00
3f719bd8d7 feat: user pin-code (#18138)
* feat: user pincode

* pr feedback

* chore: cleanup

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-05-09 17:00:58 -04:00
cb6c541ae1 fix: constraint migration to handle any existing pkey name (#18178) 2025-05-09 13:45:44 +00:00
b1e1362246 fix: various typos (grouped in to separate commits) (#18177) 2025-05-09 13:10:34 +00:00
a6e5e4f625 fix: schema ci checks (#18146) 2025-05-07 21:14:20 +00:00
SGT
ec6379b0b2 chore: remove usage of deprecated Kysely method (#18127)
* minor update. fix usage of deprecated method'

* restore original formatting
2025-05-06 17:01:02 -04:00
2a80251dc3 fix(server): more robust person thumbnail generation (#17974)
* more robust person thumbnail generation

* clamp bounding boxes

* update sql

* no need to process invalid images after decoding

* cursed knowledge

* new line
2025-05-06 14:18:22 -04:00
d33ce13561 feat(server): visibility column (#17939)
* feat: private view

* pr feedback

* sql generation

* feat: visibility column

* fix: set visibility value as the same as the still part after unlinked live photos

* fix: test

* pr feedback
2025-05-06 12:12:48 -05:00
8ff25a4f7a fix(deps): update dependency @react-email/components to ^0.0.37 (#18126)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-06 18:23:45 +02:00
7072e48cbe feat: Add DB_SSL_MODE environment variable for Postgres sslmode (#18025)
* feat: Add DB_SSL_MODE environment variable for Postgres sslmode

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-05-06 09:25:37 -04:00
30822fcd10 fix(deps): update typescript-projects (#18124)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-06 14:50:22 +02:00
118a3fc9db fix: update assets when duplicateId is provided as null (#18071)
Update assets when duplicateId is provided as null
2025-05-06 08:47:19 -04:00
f34f83e164 refactor: controller tests (#18100) 2025-05-05 18:57:32 -04:00
12610e4a9f fix(server): handle orientation of imported face regions (#18021)
* Transform imported face RegionInfo according to Exif Orientation

* Add unit tests for re-orienting metadata face regions

* Make code DRY using ImmichTagsWithFaces instead of NonNullable

* Add e2e test for importing metadata face regions when orientation is RotateCW90

* Disable new e2e test until its asset is added to the test-assets project

* Simplify unit tests by using the same face tag definition

* Combine similar e2e tests

* Disable new e2e test until portrait-orientation-6.jpg is added to test-assets

* Fix lint error: Expected property shorthand

* Update test-assets ref to latest

* Enable new e2e test after updating test-assets
2025-05-05 11:11:21 -04:00
ea9f11bf39 refactor: controller tests (#18035)
* feat: controller unit tests

* refactor: controller tests
2025-05-03 09:39:44 -04:00
5d21ba3166 chore: logging clean up (#18031) 2025-05-02 12:34:35 -05:00
da7a81b752 chore(server): split album update notifications into multiple jobs (#17879)
We would like to move away from the concept of finding and removing pending
jobs. The only place this is used is for album update notifications, and this
is done so that users who initially uploaded assets to an album will also
receive a notification if someone else then adds assets to the same album. This
can also be achieved with a job for each recipient. Multiple jobs also has the
advantage that it will scale better for albums with many users, it's possible
to send notifications concurrently, retries are possible without sending
duplicate notifications, and it's clear what recipient a job failed for.
2025-04-30 17:45:35 -04:00
becdc3dcf5 refactor: job on-done (#18004) 2025-04-30 17:02:53 -04:00
84b51e3cbb fix(server): double rotation on HEIF files (#18002)
* fix(server): double rotation on HEIF/HEIC files

* Update server/src/services/media.service.ts

* formatting

---------

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
2025-04-30 20:33:18 +00:00
b845184c80 chore: remove old memory lane implementation (#18000) 2025-04-30 14:23:32 -04:00
1fde02ee1e chore: remove unused types and code (#17999) 2025-04-30 13:41:23 -04:00
526c02297c refactor: stream queue migration (#17997) 2025-04-30 16:23:13 +00:00
732b06eec8 refactor: stream for sidecar (#17995)
* refactor: stream for sidecar

* chore: make sql

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-04-30 10:53:51 -05:00
be5cc2cdf5 refactor: stream detect faces (#17996) 2025-04-30 11:25:30 -04:00