Daniel Dietzler
0975b1599c
fix: remove stray migration ( #28565 )
2026-05-22 15:20:47 +00:00
renovate[bot]
92b6778d2d
fix(deps): update typescript-projects ( #28371 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-05-20 16:56:27 +02:00
Jason Rasmussen
3d075f2bf8
feat: workflows & plugins ( #26727 )
...
feat: plugins
chore: better types
feat: plugins
2026-05-18 11:09:33 -04:00
Timon
7de73dc176
fix(server): hide isFavorite from partner asset sync stream ( #28035 )
...
* fix(server): hide isFavorite from partner asset sync stream
* use new column entry instead
* sync sql
* add migration
* use sql.val
* sync sql
2026-05-07 12:00:54 -04:00
Daniel Dietzler
b9e0e65bdb
fix: migration order ( #28191 )
2026-05-01 20:57:30 +00:00
Mert
f1d8ab8aae
feat(server): track video metadata ( #28023 )
...
* track video metadata
* earlier duration check
* revert colorspace change
* duplicate constant
* formatting
* linting
* add comments
* redundant variable
* simplify tests
* use totalDuration instead of format.duration
* medium tests
* install ffmpeg
* install noble
* update test-assets commit
* make timeBase non-nullable
* linting
* use proper smallint
* add ffmpeg to mise
* simplify duration
* regenerate migration
2026-05-01 17:03:49 +00:00
Mert
b554664791
chore!: duration in milliseconds ( #28003 )
...
* server changes
* openapi
* web changes
* mobile changes
* assume 3.0 client
* deprecate
* review feedback
* update medium tests
* linting
2026-04-30 09:44:27 -04:00
Mert
97c62136b7
chore(server)!: drop pgvecto.rs support ( #28159 )
...
drop pgvecto.rs
2026-04-30 09:40:38 -04:00
Mert
bf32864644
feat(server): video streaming table definitions ( #28147 )
...
* video streaming table definitions
Co-authored-by: Copilot <copilot@github.com >
* update sql
* tetris
* use enum
Co-authored-by: Copilot <copilot@github.com >
* fix column name
---------
Co-authored-by: Copilot <copilot@github.com >
2026-04-29 15:48:15 +00:00
Daniel Dietzler
4bfb8b36c2
chore!: migrate album owner to album_user ( #27467 )
...
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-22 16:52:23 +02:00
Daniel Dietzler
bb0872afef
chore: upgrade sql-tools ( #27885 )
2026-04-21 17:42:27 +00:00
santanoce
dbf30b77bf
feat(server): added backchannel logout api endpoint ( #26235 )
...
* feat(server): added backchannel logout api endpoint
* test(server): fixed e2e tests
* fix(server): fixed suggested changes by reviewer
* feat(server): created function invalidateOAuth
* fix(server): fixed session.repository.sql
* test(server): added unit tests for backchannelLogout function
* test(server): added e2e tests for oidc backchnnel logout
* docs(server): added documentation on backchannel logout url
* docs(server): fixed typo
* feat(server): minor improvements of the oidc backchannel logout
* test(server): fixed tests after merge with main
* fix(server): fixed e2e test file
* refactor(server): tiny refactor of validateLogoutToken
* chore: cleanup
* fix: tests
* fix: make jwks extractable
---------
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-04-17 18:45:33 +00:00
bo0tzz
3356e81c85
fix!: do not allow insecure oauth requests by default ( #27844 )
...
* fix!: do not allow insecure oauth requests by default
* fix: format
* fix: make open-api
* fix: tests
* nit: casing
* chore: migration to allow insecure if current oauth uses http
2026-04-16 10:11:58 -04:00
Daniel Dietzler
8ee5d3039a
chore!: remove deviceId and deviceAssetId ( #27818 )
...
chore: remove deviceId and deviceAssetId
2026-04-15 15:00:33 -04:00
Jason Rasmussen
d410131312
chore!: remove old timeline sync endpoints ( #27804 )
2026-04-15 13:58:48 -04:00
Timon
7d8f843be6
refactor!: migrate class-validator to zod ( #26597 )
2026-04-14 23:39:03 +02:00
Jason Rasmussen
adb6b39eec
fix: migrations ( #27477 )
2026-04-02 17:49:26 -04:00
okxint
d1e2e8ab4e
fix(server): use substring matching for person name search ( #26903 )
2026-04-01 13:31:54 +00:00
Jonathan Jogenfors
22bf7c2005
feat(server): add checksum algorithm field ( #26573 )
...
* feat: add checksum algorithm field
* fix comments
* chore: rename migration
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2026-03-26 18:20:25 +00:00
Brandon Wees
d8b39906f9
fix: incorrect asset face sync ( #27243 )
...
* fix: incorrect asset face sync
* chore: sync sql
2026-03-26 09:39:02 -05:00
Jason Rasmussen
813d684aaa
fix: shared link add to album ( #27063 )
2026-03-20 13:14:07 -05:00
Jason Rasmussen
044257531e
fix(server): fallback to email when name is empty ( #27016 )
2026-03-19 12:41:20 -04:00
Brandon Wees
f3b7cd6198
refactor: move encoded video to asset files table ( #26863 )
...
* refactor: move encoded video to asset files table
* chore: update
2026-03-12 16:15:21 -04:00
Sergey Katsubo
4a384bca86
fix(server): opus handling as accepted audio codec in transcode policy ( #26736 )
...
* Fix opus handling as accepted audio codec in transcode policy
Fix the issue when opus is among accepted audio codecs in transcode policy
(which is default) but it still triggers transcoding because the codec name
from ffprobe (opus) does not match `libopus` literal in Immich.
Make a distinction between a codec name and encoder:
- codec name: switch to `opus` as the audio codec name. This matches what ffprobe
returns for a media file with opus audio.
- encoder: continue using the `libopus` encoder in ffmpeg.
* Add unit tests for accepted audio codecs and for libopus encoder
* Add db migration for ffmpeg.targetAudioCodec opus
* backward compatibility
* tweak
* noisy logs
* full mapping
* make check happy
* mark deprecated
* update api
* indexOf
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2026-03-07 13:08:42 -05:00
Daniel Dietzler
9f9569c152
fix: schema check ( #26543 )
2026-02-26 13:27:50 -05:00
Michel Heusschen
771816f601
feat(web): map timeline sidepanel ( #26532 )
...
* feat(web): map timeline panel
* update openapi
* remove #key
* add index on lat/lng
2026-02-26 12:03:23 -05:00
Mees Frensel
e454c3566b
refactor: star rating ( #26357 )
...
* refactor: star rating
* transform rating 0 to null in controller dto
* migrate rating 0 to null
* deprecate rating -1
* rating type annotation
* update Rating type
2026-02-26 14:54:20 +01:00
Brandon Wees
3c9fb651d0
feat(server): SyncAssetEditV1 ( #26446 )
...
* feat: SyncAssetEditV1
* fix: audit table import
* fix: sql tools table fetch
* fix: medium tests (wip)
* fix: circ dependency
* chore: finalize tests
* chore: codegen/lint
* fix: code review
2026-02-25 18:12:41 +00:00
Jason Rasmussen
f07e2b58f0
refactor: prefer buffer ( #26469 )
...
* refactor: prefer buffer
* Update server/src/schema/tables/session.table.ts
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
---------
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
2026-02-24 13:26:36 +00:00
Min Idzelis
d14d0a9b9b
feat: add isTransparent to db ( #26413 )
2026-02-23 21:33:52 +00:00
Brandon Wees
e5722c525b
feat: getAssetEdits respond with edit IDs ( #26445 )
...
* feat: getAssetEdits respond with edit IDs
* chore: cleanup typings for edit API
* chore: cleanup types with jason
* fix: openapi sync
* fix: factory
2026-02-23 20:57:57 +00:00
Daniel Dietzler
a07d7b0c82
chore: migrate to sql-tools library ( #26400 )
...
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2026-02-23 09:50:16 -05:00
David Baxter
5c7c07a09f
perf: add indexes to improve People API response times ( #26337 )
...
Add SQL indexes for people search endpoints
2026-02-19 16:09:05 -05:00
Jason Rasmussen
8ef4e4d452
feat: schema-check ( #25904 )
2026-02-12 17:59:00 -05:00
Jason Rasmussen
141be5cbc9
fix: memory generation ( #25650 )
2026-01-28 15:51:24 -06:00
Mert
9506398153
refactor(server): add isProgressive column ( #25537 )
...
* add isProgressive column
* don't select isProgressive by default
* linting
* exclude sidecars
2026-01-26 17:05:25 -05:00
Brandon Wees
4bd01b70ff
fix: asset edit sequence ( #25457 )
2026-01-22 12:41:01 -06:00
Daniel Dietzler
184f1a6d32
fix: tag update race condition ( #25371 )
2026-01-21 16:30:45 +01:00
Daniel Dietzler
1649d87360
refactor: extract isEdited into its own column in asset_file ( #25358 )
2026-01-21 16:08:21 +01:00
Brandon Wees
1b56bb84f9
fix: mobile edit handling ( #25315 )
...
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2026-01-19 12:22:53 -06:00
Daniel Dietzler
07675a2de4
feat: download original asset ( #25302 )
...
Co-authored-by: bwees <brandonwees@gmail.com >
2026-01-16 19:05:13 +00:00
Jason Rasmussen
f194a7ea3e
fix: migration order ( #25249 )
2026-01-13 14:47:58 -06:00
Brandon Wees
e8c80d88a5
feat: image editing ( #24155 )
2026-01-09 17:59:52 -05:00
Jason Rasmussen
a2ba36c16d
feat: bulk asset metadata endpoints ( #25133 )
2026-01-08 14:52:16 -05:00
Daniel Dietzler
c15998e805
fix: asset update race condition ( #24384 )
...
* fix: asset update race condition
* fix: asset update race condition
* single statement
* update sql
* missed one
* fix `none` handling
* fix: tests
* chore: simplify update all assets
* fix: updating lockable properties
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2025-12-17 09:23:13 -06:00
Alex
f5df5fa98d
chore: change workflow column name ( #24349 )
...
chore-change-workflow-column-name
2025-12-02 14:40:17 -06:00
Jonathan Jogenfors
1bcf28c062
chore(server): sidecars in asset_files ( #21199 )
...
* fix: sidecar check job
* feat: move sidecars to asset_files
* feat: combine with handleSidecarCheck
* fix(server): improved method signatures for stack and sidecar copying
* fix(server): improved method signatures for stack and sidecar copying
* chore: clean up
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2025-12-02 13:31:43 -05:00
Jason Rasmussen
116012f6f8
feat: less asset-metadata validation ( #24342 )
2025-12-02 10:56:31 -05:00
Mert
7c19b0591f
fix(server): cjk migration ( #24320 )
...
* join string
* use pagination instead
2025-12-01 15:41:19 -06:00
Mert
95c29a8aea
fix(server): use bigrams for cjk ( #24285 )
...
* use bigrams for cjk
* update sql
* linting
* actually migrate ocr
* fix backwards test
* use array
* tweaks
2025-12-01 17:24:37 +00:00