Commit Graph

2942 Commits (46afd6a101c19046119ad9137fda29557f042552)

Author SHA1 Message Date
Mert 9487241481
fix(server): refresh faces query (#21380) 2025-08-28 20:23:40 -04:00
Sergey Katsubo 460e1d4715
fix(server): folder sort order (#21383) 2025-08-28 20:22:40 -04:00
github-actions b6223af5ca chore: version v1.140.0 2025-08-28 18:50:45 +00:00
Jason Rasmussen 868d5f56e2
fix: motion video extraction race condition (#21285)
fix: motion video extraction race ccondition
2025-08-27 15:10:55 -04:00
Jason Rasmussen 88072910da
feat: asset metadata (#20446) 2025-08-27 14:31:23 -04:00
Jason Rasmussen 70e59c00d5
fix: invalid storage quota with decimals (#21271) 2025-08-26 14:46:29 -04:00
Jason Rasmussen 8f1b505ba0
fix: prevent an offline asset from being used as a person feature photo (#21278) 2025-08-25 22:40:56 -04:00
Jason Rasmussen acfd40b77a
fix: album start/end dates on shared links (#21268) 2025-08-25 17:10:31 -04:00
Wingy 5fb8d651ec
feat: expose createdAt in getAssetInfo (#21184)
* Expose createdAt in getAssetInfo

* Add missing createdAt fields
2025-08-25 10:27:21 -05:00
github-actions b44d2a241d chore: version v1.139.4 2025-08-25 02:39:18 +00:00
Vietbao Tran 1af10ded74
fix: wait for watched files to finish being written (#17100) (#21180)
This makes the external library watcher wait for files in watched directories to finish being written before queuing jobs for each file.
2025-08-24 21:33:24 -05:00
xCJPECKOVERx 3f1e11afcc
chore(server): Improve add to multiple albums via bulk checks and inserts (#21052)
* - add addAssetIdsToAlbums to album repo
- update albumService to determine all albums and assets with access and coalesce into one set of album_assets to insert

* - remove hasAsset check (unnecessary)

* - lint

* - cleanup

* - remove success counts from addAssetsToAlbums results
- Fix tests

* open-api

* await album update
2025-08-24 21:33:10 -05:00
Min Idzelis 44e1c83c84
fix: isolate docker host/container filesystem for node_modules and build output (#21167) 2025-08-24 13:09:45 -05:00
github-actions f8b41ea8aa chore: version v1.139.3 2025-08-23 16:37:46 +00:00
Jason Rasmussen 03e7922589
fix: local offset hours (#21147) 2025-08-23 11:09:36 -05:00
github-actions 571504aa5e chore: version v1.139.2 2025-08-21 22:35:59 +00:00
Alex 65fafcab37
chore: manually pump 1.139.1 (#21127) 2025-08-21 22:33:51 +00:00
Alex b6a91746d8
chore: Revert version v1.139.1 (#21125)
Revert "chore: version v1.139.1"

This reverts commit 89533a858f.
2025-08-21 17:15:11 -05:00
github-actions 89533a858f chore: version v1.139.1 2025-08-21 22:02:08 +00:00
Alex dc5a0f8c33
chore: pump the pump script (#21122)
* chore: pump the pump script

* pump 1.139.0
2025-08-21 17:00:48 -05:00
Alex 73bb05c5f9
chore: Revert version v1.139.0 (#21121)
Revert "chore: version v1.139.0"

This reverts commit b69470c69e.
2025-08-21 20:41:46 +00:00
github-actions b69470c69e chore: version v1.139.0 2025-08-21 20:26:48 +00:00
Jason Rasmussen 66c657ca8a
chore: remove web/Dockerfile (#21096) 2025-08-21 12:55:23 -04:00
Jason Rasmussen 9ff37b6870
chore: bump multer (#21100) 2025-08-20 14:16:22 -04:00
renovate[bot] 60a809d7b4
fix(deps): update typescript-projects (#20879)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-19 15:28:43 +01:00
renovate[bot] d38ab93484
chore(deps): update base-image to v202508191104 (major) (#21049)
chore(deps): update base-image to v202508191104

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-19 09:11:49 -04:00
Min Idzelis 845b0f2073
chore: use pnpm for builds (#19752)
* Migrate from npm to pnpm across entire project

• Update all GitHub workflow files to use pnpm instead of npm
• Replace npm commands with pnpm equivalents in devcontainer scripts
• Remove package-lock.json files and update to use pnpm-lock.yaml
• Consolidate node version references to use server/.nvmrc

* Refine pnpm migration based on review feedback

• Replace SKIP_SHARP_FILTERING with SHARP_IGNORE_GLOBAL_LIBVIPS environment variable
• Improve Sharp package filtering to include specific Linux architectures for Docker builds
• Optimize Dockerfile dependency caching with improved layer structure
• Clean up workspace configuration and remove redundant settings

* Address additional review feedback for pnpm migration

• Fix node-version-file paths in GitHub workflow configurations
• Refactor .pnpmfile.cjs to use switch statement for better code organization
• Correct cache type typo in fix-format workflow
• Simplify Vite configuration by merging configs inline
• Update package description for consistency

* Use 'server/.nvmrc' for fix-format.yml GHA

* Delete npm locks

* Remove Docker volume isolation for node_modules directories

• Remove volume mounts for node_modules and related directories
• Allow shared access between host and container filesystem
• Update init container to handle file ownership with conditional existence check

* Remove unused Docker volumes and volume mounts

• Remove node_modules volume mounts from devcontainer configuration
• Remove unused named volumes for pnpm-store, node_modules, and cache directories
• Clean up Docker Compose configuration after removing volume isolation

* Fix typescript-sdk package issues

• Remove unknown "build" dependency that was incorrectly added to package.json
• Update pnpm-lock.yaml to reflect dependency removal

* Add pnpm setup to mobile workflow for translation formatting

• Add pnpm action setup step to mobile unit tests workflow
• Required for translation file formatting and sorting operations

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-08-19 08:55:24 -04:00
renovate[bot] e2dcebfe6c
chore(deps): update dependency @types/node to ^22.17.1 (#21047)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-19 13:13:49 +02:00
xCJPECKOVERx 9ff664ed36
feat(web): Add to Multiple Albums (#20072)
* Multi add to album picker:
- update modal for multi select
- Update add-to-album and add-to-album-action to work with new array return from AlbumPickerModal
- Add asset-utils.addAssetsToAlbums (incomplete)

* initial addToAlbums endpoint

* - fix endpoint
- add test

* - update return type
- make open-api

* - simplify return dto
- handle notification

* - fix returns
- clean up

* - update i18n
- format & check

* - checks

* - correct successId count
- fix assets_cannot_be_added language call

* tests

* foromat

* refactor

* - update successful add message to included total attempted

* - fix web test
- format i18n

* - fix open-api

* - fix imports to resolve checks

* - PR suggestions

* open-api

* refactor addAssetsToAlbums

* refactor it again

* - fix error returns and tests

* - swap icon for IconButton
- don't nest the buttons

* open-api

* - Cleanup multi-select button to match Thumbnail

* merge and openapi

* - remove onclick from icon element

* - fix double onClose call with keyboard shortcuts

* - spelling and formatting
- apply new api permission

* - open-api

* chore: styling

* translation

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-08-19 00:42:47 +00:00
Jason Rasmussen e00556a34a
feat: get metadata about the current api key (#21027) 2025-08-18 18:15:03 -05:00
github-actions 3d515f5072 chore: version v1.138.1 2025-08-18 15:23:35 +00:00
github-actions bede19a3ca chore: version v1.138.0 2025-08-13 17:08:29 +00:00
Mert e29cc66361
docs: vectorchord migration instructions, deprecation log on startup (#20867)
* deprecation log, migration docs

* update tests

* fix info boxes
2025-08-11 16:50:48 -04:00
Min Idzelis f317cbe221
fix: devcontainer broken by debian Trixie going stable (#20843) 2025-08-10 21:24:00 -05:00
Jason Rasmussen 13563fc507
chore: update response codes (#20770)
* chore: update response codes

* chore: skip problematic test
2025-08-08 15:56:37 -04:00
Jason Rasmussen 2ce4f8dd3b
fix(sql-tools): null default (#20796) 2025-08-08 15:44:39 -04:00
Jason Rasmussen 538d5c81ea
feat: reset oauth ids (#20798) 2025-08-08 15:42:38 -04:00
mkuehne707 011a667314
feat: batch change date and time relatively (#17717)
Co-authored-by: marcel.kuehne <>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-07 13:42:33 +00:00
Arpit Singh 01a9f735c8
fix: avoid unnecessary writes to system metadata repository (#20538)
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-07 12:43:23 +00:00
patrickgoering 1ca46fbd98
fix: video thumbnail generation for short videos (#20629)
fix video thumbnail generation for short videos

ffmpeg gives conversion failed with error 234 for short mp4 files (less
than 10s) that where converted from m2ts. Longer videos work fine.

It looks like ffmpeg has no frames left to use for generating a
thumbnail.

This change fixes this issue and seems to not change the behaviour for
other mp4 files (same thumbnail before and after change)

This might also fix all mts file thumbnail generation.
2025-08-06 13:10:49 +00:00
Zack Pollard fa26d0de33
refactor: new helper methods that work for all sync queries (#20690)
refactor: new helper methods that work for all sync queries
2025-08-06 08:34:12 -04:00
Jason Rasmussen a5760129f0
fix: custom-url ssr (#20704) 2025-08-05 23:29:01 +02:00
Zack Pollard 0a9cbf01d2
feat: ack sync reset (#20703) 2025-08-05 20:30:19 +00:00
renovate[bot] 58dd6f094c
chore(deps): update dependency @types/bcrypt to v6 (#20669)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-05 19:58:08 +02:00
Zack Pollard 02381343ff
fix: album asset sync must sync new assets in a shared album (#20655) 2025-08-05 17:53:51 +01:00
renovate[bot] ce2ea98926
fix(deps): update typescript-projects (#20396)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-05 12:45:47 +00:00
renovate[bot] 5c76cc34e1
chore(deps): update node.js to v22.18.0 (#20662)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-05 11:01:15 +00:00
renovate[bot] eb2f4c866e
chore(deps): update dependency eslint-plugin-unicorn to v60 (#20677)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-05 10:58:13 +00:00
renovate[bot] 2a370087e8
chore(deps): update dependency @types/node to ^22.17.0 (#20657)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-05 11:56:53 +01:00
renovate[bot] 08fe549ed8
chore(deps): update base-image to v202507291116 (major) (#20668)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-05 11:54:37 +01:00
Michael a91bb399f0
feat: add server.versionCheck permission (#20555)
* add server.versionCheck permission

* getVersionCheck is no admin-route
2025-08-04 17:39:05 -05:00
cford256 10141504a2
fix: exif rating rounding (#20457)
* fix_Exlif_Metadata_Rating_Rounding_to_Interger

Rounding Exlif Rating Interger
Images support having numbers other than integers for the rating metadata in EXLIF. The database expects it to be an integer though. Trying to upload an image that has a rating other than an integer results in it failing to parse the image and defaulting to showing a corrupted file icon. 

Rather than changing the database type, I would like to round the rating to the nearest integer so that Immich works with images that have a rating like this in their metadata.

* Changing Metadata validateRange to always round.

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

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

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-08-04 14:29:51 -05:00
github-actions 007ba1d9ef chore: version v1.137.3 2025-08-01 14:52:24 +00:00
Daniel Dietzler 4d5cd1a6b5
fix: migration if media location is set (#20532) 2025-08-01 14:49:51 +00:00
github-actions 9242afb4b0 chore: version v1.137.2 2025-08-01 02:45:16 +00:00
github-actions a07531be3b chore: version v1.137.1 2025-07-31 23:05:34 +00:00
Daniel Dietzler 3cdc6844a1
fix: automatic media location migration without internal assets (#20489) 2025-07-31 22:58:35 +00:00
github-actions c3263e50fc chore: version v1.137.0 2025-07-31 20:19:26 +00:00
shenlong 641a3baadd
fix(mobile): add partial index based on library ID to remote assets (#20214)
* feat: add libraryId to SyncAssetV1

* add partial index

# Conflicts:
#	mobile/drift_schemas/main/drift_schema_v5.json
#	mobile/lib/infrastructure/repositories/db.repository.dart
#	mobile/lib/infrastructure/repositories/db.repository.steps.dart
#	mobile/test/drift/main/generated/schema_v5.dart

* chore: make build

* rebase

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-30 23:59:00 +05:30
Jason Rasmussen 749f999f2a
feat: better endpoint descriptions (#20439) 2025-07-30 13:29:36 -03:00
Brandon Wees 097e132fba
fix: user profile images not working in beta timeline (#20203)
* fix user icons in album view

* revert updateUsersV1 change

* fix: UserDto merge issues

* fix: update user entity

* revert what I thought were merge issues

turns out drift cant figure out when it needs to gen a file...

* fix removed line

* handle defaults for older servers

* feat: checkpoint migrations

* fix: use parenthesis instead of brackets

* Update 1753800911775-ProfileImageCheckpointRemoval.ts

* fix: sync stream updateUsersV1
2025-07-30 11:09:28 -05:00
Jason Rasmussen 9b65cd4d7b
feat!: remove typeorm (#20366)
feat: remove typeorm
2025-07-29 17:28:02 -04:00
Jason Rasmussen 58521c9efb
feat: change default media location to /data (#20367)
* feat!: change default media location to /data

* feat: dynamically detect media location
2025-07-29 16:58:50 -04:00
Andrew Marshall 4cae15f28d
feat: support config via systemd credentials (#20406)
feat: Support config via Systemd Credentials

See https://systemd.io/CREDENTIALS/. This is used as a fallback, so will
only be used if the `$*_FILE` var is empty. This could also be used to
implicitly use Docker Secrets by settings
`CREDENTIALS_DIRECTORY=/run/secrets` rather than setting individual
`$_*FILE` environment variables.
2025-07-29 16:43:11 -04:00
Zack Pollard a0fa7318ed
fix: handle cleanup of new backups alongside old backups (#20402) 2025-07-29 13:28:10 +01:00
Zack Pollard 2a005629a0
chore: bump minimum eslint-config-prettier version due to MAL-2025-6022 (#20400) 2025-07-29 11:23:52 +00:00
renovate[bot] 056b262cba
chore(deps): update dependency @types/node to ^22.16.5 (#20385)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-29 11:48:26 +02:00
renovate[bot] cfae134ecf
fix(deps): update typescript-projects (#20388)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-07-29 09:47:30 +00:00
Alwin Lohrie ae1d60e259
feat: find large files utility (#18040)
feat: large asset utility

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-07-28 18:48:39 -04:00
Jason Rasmussen 7d759edfcc
chore: add permission metadata to open-api document (#20373) 2025-07-28 18:40:34 -04:00
Jed-Giblin 9b3718120b
feat: shared links custom URL (#19999)
* feat: custom url for shared links

* feat: use a separate route and query param

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-07-28 14:16:55 -04:00
Jason Rasmussen 16b14b390f
fix: file samples (#20364) 2025-07-28 13:30:49 -04:00
Sergey Katsubo d34670bae6
feat(server): include reason in null reverse geocoding logs (#20347)
* Clarify in log why reverse geocoding may return nothing

* Decrease log level for empty reverse geocoding response from warn to log

* Use a named constant for 25km

* Mention fallback to countries in the message

* Improve natural earth log message

* Decrease log level for empty reverse geocoding response from natural earth countries
2025-07-28 08:51:00 -05:00
shenlong d0576697c3
chore: upgrade flutter to 3.32.8 (#20287)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-26 08:58:48 -05:00
Jason Rasmussen c6b25ef111
feat: automatically detect media location changes (#20256) 2025-07-25 15:25:36 -04:00
Jason Rasmussen 0fdeac0417
feat!: more permissions (#20250)
feat: more api key permissions
2025-07-25 15:25:23 -04:00
Zack Pollard 7f2e4f85f8
fix: lookup the primary key constraint name before dropping it (#20221) 2025-07-25 16:51:22 +01:00
Daimolean 25e2d37490
fix(server): use UserMetadataKey enum instead of string (#20209)
* fix(server): use UserMetadataKey enum instead of string

* fix: mobile
2025-07-25 11:04:28 -04:00
Zack Pollard 977c9b96ba
fix: geodata_places pkey migration failing for certain upgrade paths (#20177) 2025-07-24 22:50:36 +01:00
github-actions 089085fcdb chore: version v1.136.0 2025-07-24 14:24:38 +00:00
Jason Rasmussen fc68cf4f32
chore: remove migration (#20129) 2025-07-24 14:11:53 +00:00
Jason Rasmussen bc8cb9b671
fix: default route permission (#20113) 2025-07-23 16:56:38 -04:00
Jason Rasmussen a675922172
fix: unset prewarn param (#20109) 2025-07-23 16:52:59 -04:00
Jason Rasmussen 92384c28de
feat: sync auth user (#20067) 2025-07-23 09:59:33 -04:00
Jason Rasmussen ab597155fa
fix: immich-dev live reload (#20104) 2025-07-23 09:59:21 -04:00
renovate[bot] c91382625c
fix(deps): update typescript-projects (#20103)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-07-23 13:26:28 +01:00
xCJPECKOVERx 1a70896113
feat(web): Remove from Stack (#19703)
* - add component
- update server's StackCreateDto for merge parameter
- Update stackRepo to only merge stacks when merge=true (default)
- update web action handlers to show stack changes

* - make open-api

* lint & format

* - Add proper icon to 'remove from stack'
- change web unstack icon to image-off-outline

* - cleanup

* - format & lint

* - make open-api: StackCreateDto merge optional

* initial addition of new endpoint

* remove stack endpoint

* - fix up remove stack endpoint
- open-api

* - Undo stackCreate merge parameter

* - open-api typescript

* open-api dart

* Tests:
- add tests
- update assetStub.imageFrom2015 to have required stack attributes to include it with tests

* update event name

* Fix event name in test

* remove asset_update check

* - merge stack.removeAsset params into one object
- refactor asset existence check (no need for asset fetch)
- fix tests

* Don't return updated stack

* Create specialized stack id & primary asset fetch for asset removal checks

* Correct new permission names

* make sql

* - fix open-api

* - cleanup
2025-07-22 22:17:06 -04:00
renovate[bot] 250548dea6
fix(deps): update typescript-projects (#19939)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-07-22 17:42:07 +00:00
renovate[bot] 5548033cae
chore(deps): update dependency @types/multer to v2 (#20069)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-22 11:00:28 +01:00
renovate[bot] 637eba6e08
chore(deps): update node.js to v22.17.1 (#20066)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-22 09:59:16 +00:00
Daimolean 496b0c7076
fix(server): missing integer type (#20075) 2025-07-22 09:29:14 +00:00
renovate[bot] 166452640d
chore(deps): update dependency @types/node to ^22.16.4 (#20068)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-22 10:28:15 +01:00
Zack Pollard df318ac641
feat: asset face sync (#20048)
* chore: remove thumbnailPath from person sync dto

* feat: asset face sync
2025-07-21 21:31:45 -04:00
Min Idzelis 9e94f52b05
chore: dockerfile layout changes (#19673)
Dockerfile layout changes

Fix up web path

feat: update server env vars for layout
2025-07-18 17:56:26 -04:00
megumin dcfe8d5ade
fix: send filename when viewing the original file (#20005)
* feat: add fileName to downloadOriginal response

* test: add fileName to ImmichFileResponse for downloadOriginal

* lint: use single quotes for fileName string in test
2025-07-18 11:55:24 -05:00
Min Idzelis f33e1ad94c
feat: relocate scripts, PATH update (#20002)
Relocate scripts, and PATH updates
2025-07-18 11:19:06 -04:00
Min Idzelis 576f681b5c
feat: remove dep on cwd for workers (#20012) 2025-07-18 10:57:49 -04:00
Jason Rasmussen 493d85b021
feat!: absolute file paths (#19995)
feat: absolute file paths
2025-07-18 10:57:29 -04:00
renovate[bot] 53acf08263
fix(deps): update dependency multer to v2.0.2 [security] (#20003)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-18 12:08:57 +02:00
renovate[bot] eae2471ab5
chore(deps): update base-image to v202507162011 (major) (#19983)
chore(deps): update base-image to v202507162011

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-16 16:22:33 -05:00
Jason Rasmussen bcb968e3d1
refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
Jason Rasmussen e73abe0762
refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
Jason Rasmussen 920d7de349
refactor: event names (#19945) 2025-07-15 13:41:19 -04:00
Jason Rasmussen 351701c4d6
refactor: validate enum (#19943) 2025-07-15 17:14:57 +00:00
Min Idzelis 68f249bc03
feat: improve geodata import speed (#19906)
chore(deps): update dependency vite to v7 (#19657)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-07-15 16:23:41 +00:00
renovate[bot] 82c3165247
fix(deps): update typescript-projects (#19808)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-07-14 22:30:39 +00:00
Jason Rasmussen 805ec3e351
chore: asset sync FKs (#19927) 2025-07-14 10:57:25 -05:00
Jason Rasmussen c699df002a
feat: rename schema (#19891) 2025-07-14 10:13:06 -04:00
Jason Rasmussen 47c0dc0d7e
feat: nightly tasks (#19879) 2025-07-11 17:32:10 -04:00
Daniel Dietzler df581cc0d5
feat: UserMetadata sync (#19882)
* feat: UserMetadata sync

* refactor: sync table filters (#19887)
2025-07-11 18:19:53 +00:00
Jason Rasmussen 9e48ae3052
feat: naming strategy (#19848)
* feat: naming strategy

* feat: detect renames
2025-07-11 11:35:10 -04:00
shenlong 1d19d308e2
chore: update flutter to 3.32.6 (#19878)
* chore: update flutter to 3.32.6

* fix lint

* fix asset viewer scroll physics

* test: change init order for map test

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-11 10:34:49 -05:00
Jason Rasmussen 617a2f146d
fix: startup log level (#19885) 2025-07-11 11:22:38 -04:00
Jason Rasmussen 1cc5ca14ca
feat: allow unordered migrations in dev (#19881) 2025-07-11 10:58:34 -04:00
Jason Rasmussen 4b3a4725c6
feat: pending sync reset flag (#19861) 2025-07-11 09:38:02 -04:00
shenlong 34f0f6c813
chore: rename new migration to execute last (#19872)
chore: rename new migration to change execution order

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-11 08:41:06 -04:00
SGT 55fe67dd20
fix(server): clear activity when asset is removed from album (#19019) 2025-07-10 19:37:56 +02:00
Jason Rasmussen ed4c7817e7
feat: AssetUploadReadyV1 event (#19858) 2025-07-10 13:30:10 -04:00
Zack Pollard 39c95f1280
refactor: rename geodata pk constraint to match runtime constraint name (#19856) 2025-07-10 17:18:51 +00:00
Zack Pollard b19884d01e
feat(server): people sync (#19854)
* chore: fix missing usage of deleteType for syncMemoriesV1

* chore: add src path for proper absolute imports in jetbrains

* feat: people sync
2025-07-10 11:32:42 -04:00
Léopold Koprivnik f778adea92
feat: adds option to search only for untagged assets (#19730)
Co-authored-by: SkwalExe <skwal@skwal.net>
2025-07-10 16:28:20 +02:00
Min Idzelis 818bdde317
chore: update base images (#19741)
Update base images
2025-07-09 19:22:01 -04:00
renovate[bot] a201665b7e
chore(deps): update base-image to v202507091427 (major) (#19840)
chore(deps): update base-image to v202507091427

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-09 12:52:11 -05:00
Jason Rasmussen 51ab7498e9
feat: create table with constraints (#19828) 2025-07-09 09:13:14 -04:00
Jason Rasmussen df4a27e8a7
feat: sql-tools overrides (#19796) 2025-07-08 08:17:40 -04:00
renovate[bot] a87c2e82cd
fix(deps): update typescript-projects (#19666)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-07-07 20:29:58 +00:00
Daniel Dietzler 4ce9bce414
feat: oauth role claim (#19758) 2025-07-06 18:45:32 -04:00
Jason Rasmussen 6044663e26
refactor: sql-tools (#19717) 2025-07-03 10:59:17 -04:00
aviv926 484529e61e
feat(server): add immich and postgres version to the database backup name (#19603) 2025-07-03 10:35:24 +01:00
Min Idzelis ca78bc91b6
feat: fully qualified path in error msg (#19674)
* feat: fully qualified path in error msg

* import style
2025-07-02 09:31:20 -04:00
Jason Rasmussen c435bdb5d3
refactor: sql-tools readers (#19672) 2025-07-01 22:57:17 -04:00
Min Idzelis 15da0d5a71
fix: email button (#19675) 2025-07-01 22:48:41 -04:00
Daimolean 83afd49f5c
feat(mobile): edit location action (#19645)
* change dto from integer to double

* feat(mobile): edit location action

* patch openapi

* refactor in provider

* fix lint

* chore: not showing success prompt if dimissed

* i18n

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-01 16:52:11 +00:00
Daniel Dietzler 53f80393bf
chore: upgrade to cron v4 (#19664) 2025-07-01 12:47:04 +02:00
renovate[bot] 38d73f2bc6
chore(deps): update dependency @types/node to ^22.15.33 (#19653)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-01 11:32:11 +01:00
renovate[bot] 96e3b96d57
fix(deps): update dependency nestjs-otel to v7 (#19662)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-01 11:02:46 +01:00
renovate[bot] 36b018e355
fix(deps): update typescript-projects (#18898)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-07-01 10:00:35 +00:00
renovate[bot] 214ca50406
chore(deps): update node.js to v22.17.0 (#19656)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-01 10:59:31 +01:00
renovate[bot] 29b3981609
fix(deps): update dependency nestjs-kysely to v3 (#19660)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-01 10:27:20 +01:00
Mert a068a41c06
fix(server): prevent duplicate geodata temp table (#18580)
drop tmp table, create gist index first
2025-06-30 23:28:30 -04:00
bo0tzz 3c6e9e1191
feat: use request host as default SSR domain (#19485)
fix: hostname and domain confusion

chore: e2e test
2025-06-30 23:24:44 -04:00
Min Idzelis db0415bbcc
chore: undeclared versions/updates (#19649) 2025-06-30 23:23:41 -04:00
Jason Rasmussen 93f9e118ad
refactor: timeline tests (#19641) 2025-06-30 17:43:45 -04:00
Jason Rasmussen 58ca1402ed
feat: sync partner stacks (#19635) 2025-06-30 16:41:06 -04:00
Jason Rasmussen 181a7e115f
feat: sync stacks (#19629) 2025-06-30 14:26:41 -05:00
Jason Rasmussen e60bc3c304
refactor: database types (#19624) 2025-06-30 13:19:16 -04:00
Jason Rasmussen 09cbc5d3f4
refactor: change password repository lookup (#19584) 2025-06-27 16:52:04 -04:00
Jason Rasmussen a2a9797fab
refactor: auth medium tests (#19583) 2025-06-27 15:35:19 -04:00
Jason Rasmussen df76735f4a
refactor: sync repository (#19581) 2025-06-27 13:47:06 -04:00
Jason Rasmussen 6feca56da8
feat: sync memories (#19579) 2025-06-27 12:20:13 -04:00
Jason Rasmussen 6c6a32c63e
refactor: memory medium tests (#19568) 2025-06-26 19:52:10 -04:00
Jason Rasmussen 6fed223405
fix: array-max-length (#19562) 2025-06-26 19:41:48 +00:00
Jason Rasmussen 3105094a3d
refactor: medium tests (#19537) 2025-06-26 15:32:06 -04:00
Jason Rasmussen b96c95beda
refactor(server): sync service (#19559) 2025-06-26 17:24:57 +00:00
Daimolean 926ff075a3
fix(web): absolute path match in external library (#19551) 2025-06-26 10:46:34 -05:00
Min Idzelis 934649c8df
feat(server): check additional exif date tags (#19216)
* feat(server): check additional exif date tags

- Add support for UTC date tags (GPSDateTime, DateTimeUTC, GPSDateStamp, SonyDateTime2)
- This matches tags that exiftool-vendored uses for tzSource in extractTzOffsetFromUTCOffset()

* Review comments

* nit

* review comments

* lots of tests for exif datetime

* missed

* format

* format again

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-26 10:18:40 -05:00
shenlong ea3a14ed25
feat(mobile): add album asset sync (#19522)
* feat(mobile): add album asset sync

* add SyncAlbumToAssetDeleteV1 to openapi-spec

* update delete queries to use where in statements

* clear remote album when clear remote data

* fix: bad merge

* fix: bad merge

* fix: _SyncAckV1 return type

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: wuzihao051119 <wuzihao051119@outlook.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-06-26 08:50:39 -05:00
shenlong fda22c83b9
fix: sync stream album assets type order (#19540)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-25 20:42:56 -05:00
Jason Rasmussen 881a96cdf9
feat: add album asset sync (#19503)
wip: fix album asset exif and some other refactorings

feat: add album assets sync

feat: album to assets relation sync

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-06-25 16:10:31 +00:00
Jason Rasmussen eca9b56847
feat(server): person delete (#19511)
feat(api): person delete
2025-06-25 11:12:36 -04:00
Jason Rasmussen 88b8afb8d6
fix: return 404 for invalid shared link pages (#19493) 2025-06-24 10:37:14 -05:00
Jason Rasmussen c759233d8c
fix(server): include hidden assets in missing metadata extraction query (#19471) 2025-06-24 08:42:38 -04:00
renovate[bot] 4e59a55c1d
chore(deps): update dependency @types/node to ^22.15.32 (#19483)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-24 11:18:47 +01:00
Min Idzelis c1b82bed9b
chore: speedup devcontainer start (#19406) 2025-06-24 10:59:52 +01:00
Mert 03966146fe
fix(server): filter parameters by database and role (#19392) 2025-06-23 12:10:00 +01:00
Ben McCann a18c6fa910
chore: fix undeclared dependencies (#19440)
* chore: fix undeclared dependencies

* Add express/multer

---------

Co-authored-by: Min Idzelis <min123@gmail.com>
2025-06-22 19:01:30 -04:00
Daimolean 798debfde3
fix(server): duplicate column storage (#19385) 2025-06-20 15:52:25 -04:00
github-actions 6563fa608a chore: version v1.135.3 2025-06-20 19:48:18 +00:00
Jason Rasmussen 1a90fc8e58
feat: test for non-standard database name (#19386) 2025-06-20 19:31:16 +00:00
dotlambda 6fda863c08
fix(server): don't hardcode database name in migration (#19376) 2025-06-20 21:33:34 +03:00
Zack Pollard 0b44d4b6f2
fix: partner and album backfill acks (#19371)
fix: partner sync being entirely broken
2025-06-20 16:14:36 +00:00
github-actions a04c6ed80d chore: version v1.135.2 2025-06-20 14:52:47 +00:00
Jason Rasmussen 33c9f88ba4
fix: time bucket grouping (#19329) 2025-06-20 09:46:30 -04:00
Mert 11c469907f
fix(server): migration failing on pg15+ (#19363)
* reset params

* unused parameter
2025-06-20 08:36:07 -05:00
Mert 7c43e6c3c8
fix: bump vchord default to 0.4.3 (#19365)
bump default to 0.4.3
2025-06-20 08:35:32 -05:00
Zack Pollard 00aa385972
fix: people ordering by asset count (#19366) 2025-06-20 07:34:04 -05:00
Min Idzelis a5ed453929
chore: unused deps (#19256)
remove joi
2025-06-20 00:30:23 -04:00
github-actions 3434544864 chore: version v1.135.1 2025-06-19 17:37:39 +00:00
Zack Pollard fe91b44ab9
fix: people ordering incorrect (#19298) 2025-06-19 16:05:03 +00:00
Jason Rasmussen 910661e75c
chore: remove unused mocks (#19299) 2025-06-19 10:35:09 -05:00
Mert f99c6feac5
fix(server): unset prewarm dim parameter (#19271)
unset prewarm dim
2025-06-19 09:04:52 -05:00
Mert 49ed212af8
fix(server): drop vector indices before updating extension (#19283)
drop indices before updating
2025-06-19 09:03:40 -05:00
SGT 0a9a520ed2
feat(server): sql-tools support for class level composite fk (#19242)
* feat: support for class level composite fk

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-06-18 14:30:39 -04:00
Jason Rasmussen e0144b4ece
feat: backfill album users (#19234) 2025-06-18 10:48:11 -04:00
github-actions 65e8d75e82 chore: version v1.135.0 2025-06-18 13:45:07 +00:00
Jason Rasmussen 35280b94cc
refactor: sync service (#19225) 2025-06-17 16:06:40 +00:00
Zack Pollard 749f63e4a0
fix: partner asset and exif sync backfill (#19224)
* fix: partner asset sync backfill

* fix: add partner asset exif backfill

* ci: output content of files that have changed
2025-06-17 09:56:54 -04:00
shenlong db68d1af9b
feat(server): add duration to SyncAssetV1 (#19196)
add duration to SyncAssetV1

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-17 08:09:50 -04:00
renovate[bot] 0d3efe229d
chore(deps): update dependency @types/node to ^22.15.31 (#19220)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-17 11:57:29 +02:00
Mert 7347f64958
feat(server): lru cache for query embeddings (#19181) 2025-06-16 11:03:49 -04:00
SGT 77a362f0c0
chore(server): replace usage of deprecated orderBy and remove unnecessary instruction (#19072)
* replace usage of deprecated orderBy instruction
remove unnecesarry extra order instruction
update e2e test

* rename symbols
2025-06-13 15:18:44 -04:00
Daimolean 004c2f2496
fix(web): OAuth quota size (#18526)
fix(server): oauth quota size
2025-06-13 10:57:29 -04:00
Michael Anderson de756d9497
fix: skip locked photos during duplicate scan. (#19105)
Skip locked photos during duplicate scan.
2025-06-13 10:50:56 -04:00
Min Idzelis 103b83d2d6
feat: devcontainers (#18007)
* feat: devcontainers

* Update link

* Update docs

* Extend existing dockerfiles/composes

* Add jre for make open-api

* Add jre for make open-api

* shellcheck

* git doesn't like bind mount within git repo

* group tasks

* Missing sudo

* Review comments

* tweak for codespaces

* typo

* Lots of docs

* close <br>

* Specify ENV vars for database

* doc errors

* fix broken doc link

* Simplify devcontainers scripts/startup

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-06-13 14:49:21 +00:00
Jason Rasmussen c9bcae813b
feat: duplicate delete groups api (#19142) 2025-06-12 17:48:43 -04:00
Alex 176656b5f4
feat: pass filename in body on asset upload (#19138)
* chore: get upload filename from request body

* use info from request body
2025-06-12 17:31:00 -04:00
Jason Rasmussen 5cd186d3d4
refactor: duplicate queries (#19136) 2025-06-12 14:23:02 -04:00
Elliot fdc7a154c0
fix(server): add basic auth support (#16740)
* "add basic auth support"

* "fix format"

* fix: lint

---------

Co-authored-by: Elliot <elliot@elliotbrandwein.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-06-12 02:14:03 +00:00
nosajthenitram e5219f1f31
feat(web): Added admin user config to user settings (#15380)
* feat(web): Added admin user config to user settings

* feat (web) - cleaned up the files and added tests

* feat (web) - added missing files

* feat (web) - updated per review comments

* feat (web) - e2e admin command test failures
2025-06-12 02:11:13 +00:00
Zack Pollard 08e2b22db8
fix: album comment count including trashed assets (#19117) 2025-06-11 11:50:26 -04:00