Paul Makles
74878628c8
feat: integrity check jobs (missing files, untracked files, checksums) ( #24205 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
Signed-off-by: izzy <me@insrt.uk >
2026-06-10 21:02: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
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
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
8ee5d3039a
chore!: remove deviceId and deviceAssetId ( #27818 )
...
chore: remove deviceId and deviceAssetId
2026-04-15 15:00:33 -04:00
Zack Pollard
6a361dae72
fix(server): use randomized cron for version check scheduling ( #27626 )
...
Also removes unnecessary rate limit
2026-04-08 19:15:38 +01: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
Jason Rasmussen
813d684aaa
fix: shared link add to album ( #27063 )
2026-03-20 13:14:07 -05:00
Min Idzelis
13c4260a1f
fix: resolve medium test asset paths relative to file location ( #26683 )
2026-03-04 08:23:58 -05:00
Min Idzelis
84abad564e
fix(server): deduplicate shared links in getAll query ( #26395 )
2026-03-01 14:41:15 -05: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
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
Brandon Wees
37e5968a7a
fix: face and edit handling ( #25738 )
...
* fix: handle edits when creating face
2026-02-05 19:29:46 +00:00
Jason Rasmussen
141be5cbc9
fix: memory generation ( #25650 )
2026-01-28 15:51:24 -06: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
Brandon Wees
e8c80d88a5
feat: image editing ( #24155 )
2026-01-09 17:59:52 -05:00
Jason Rasmussen
191401f2f1
fix: add asset upload medium test ( #25144 )
2026-01-08 22:01:25 +00: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
4dcc049465
feat: workflow foundation ( #23621 )
...
* feat: plugins
* feat: table definition
* feat: type and migration
* feat: add repositories
* feat: validate manifest with class-validator and load manifest info to database
* feat: workflow/plugin controller/service layer
* feat: implement workflow logic
* feat: make trigger static
* feat: dynamical instantiate plugin instances
* fix: access control and helper script
* feat: it works
* chore: simplify
* refactor: refactor and use queue for workflow execution
* refactor: remove unsused property in plugin-schema
* build wasm in prod
* feat: plugin loader in transaction
* fix: docker build arm64
* generated files
* shell check
* fix tests
* fix: waiting for migration to finish before loading plugin
* remove context reassignment
* feat: use mise to manage extism tools (#23760 )
* pr feedback
* refactor: create workflow now including create filters and actions
* feat: workflow medium tests
* fix: broken medium test
* feat: medium tests
* chore: unify workflow job
* sign user id with jwt
* chore: query plugin with filters and action
* chore: read manifest in repository
* chore: load manifest from server configs
* merge main
* feat: endpoint documentation
* pr feedback
* load plugin from absolute path
* refactor:handle trigger
* throw error and return early
* pr feedback
* unify plugin services
* fix: plugins code
* clean up
* remove triggerConfig
* clean up
* displayName and methodName
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me >
Co-authored-by: bo0tzz <git@bo0tzz.me >
2025-11-14 20:05:05 +00:00
Jason Rasmussen
aa69d89b9f
fix: bad merge ( #23610 )
2025-11-04 16:22:45 -05:00
Jason Rasmussen
29c14a3f58
refactor: database column names ( #23356 )
2025-11-04 16:03:21 -05:00
Jason Rasmussen
0df70365d7
feat: exif medium tests ( #23561 )
2025-11-04 16:03:02 -05:00
Kang
02b29046b3
feat: ocr ( #18836 )
...
* feat: add OCR functionality and related configurations
* chore: update labeler configuration for machine learning files
* feat(i18n): enhance OCR model descriptions and add orientation classification and unwarping features
* chore: update Dockerfile to include ccache for improved build performance
* feat(ocr): enhance OCR model configuration with orientation classification and unwarping options, update PaddleOCR integration, and improve response structure
* refactor(ocr): remove OCR_CLEANUP job from enum and type definitions
* refactor(ocr): remove obsolete OCR entity and migration files, and update asset job status and schema to accommodate new OCR table structure
* refactor(ocr): update OCR schema and response structure to use individual coordinates instead of bounding box, and adjust related service and repository files
* feat: enhance OCR configuration and functionality
- Updated OCR settings to include minimum detection box score, minimum detection score, and minimum recognition score.
- Refactored PaddleOCRecognizer to utilize new scoring parameters.
- Introduced new database tables for asset OCR data and search functionality.
- Modified related services and repositories to support the new OCR features.
- Updated translations for improved clarity in settings UI.
* sql changes
* use rapidocr
* change dto
* update web
* update lock
* update api
* store positions as normalized floats
* match column order in db
* update admin ui settings descriptions
fix max resolution key
set min threshold to 0.1
fix bind
* apply config correctly, adjust defaults
* unnecessary model type
* unnecessary sources
* fix(ocr): switch RapidOCR lang type from LangDet to LangRec
* fix(ocr): expose lang_type (LangRec.CH) and font_path on OcrOptions for RapidOCR
* fix(ocr): make OCR text search case- and accent-insensitive using ILIKE + unaccent
* fix(ocr): add OCR search fields
* fix: Add OCR database migration and update ML prediction logic.
* trigrams are already case insensitive
* add tests
* format
* update migrations
* wrong uuid function
* linting
* maybe fix medium tests
* formatting
* fix weblate check
* openapi
* sql
* minor fixes
* maybe fix medium tests part 2
* passing medium tests
* format web
* readd sql
* format dart
* disabled in e2e
* chore: translation ordering
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2025-10-27 14:09:55 +00:00
aviv926
032de9ff2f
feat: view the user's app version on the user page ( #21345 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2025-10-22 00:36:18 +02:00
Jorge Montejo
a23dfff6cf
fix: remove assets from shared link ( #22935 )
...
* fix remove assets from shared link
* rename var
* test: should remove individually shared asset
* test: should share individually assets
* fix failing tests
2025-10-16 15:03:41 -04:00
Jorge Montejo
9d639607c7
fix: tag clean up query and add tests ( #22633 )
...
* fix delete empty tags query
* rewrite as a single statement
* create tag service medium test
* single tag exists, connected to one asset, and is not deleted
* do not delete parent tag if children have an asset
* hierarchical tag tests
* fix query to match 3 test
* remove transaction and format:fix
* remove transaction and format:fix
* simplify query, handle nested empty tag
* unused helper
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2025-10-15 22:51:57 +00:00
Tushar Harsora
b2d00405f1
feat(server): add immich.users.total metric ( #21780 )
...
* Add immich.users.total metric
* Fix tests & one lint error
* Lint
* Fix SQL Schema checks
* Fix nit
* Use workers argument in OnEvent hook and remove condition from method body
2025-10-08 13:24:11 -04:00
Jason Rasmussen
28179a3a1d
feat: audit cleanup ( #21567 )
2025-09-03 22:50:27 +00:00
Jason Rasmussen
acfd40b77a
fix: album start/end dates on shared links ( #21268 )
2025-08-25 17:10:31 -04: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
Jason Rasmussen
92384c28de
feat: sync auth user ( #20067 )
2025-07-23 09:59:33 -04: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
Jason Rasmussen
e73abe0762
refactor: enum casing ( #19946 )
2025-07-15 14:50:13 -04:00
Jason Rasmussen
c699df002a
feat: rename schema ( #19891 )
2025-07-14 10:13:06 -04:00
Jason Rasmussen
4b3a4725c6
feat: pending sync reset flag ( #19861 )
2025-07-11 09:38:02 -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
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
3105094a3d
refactor: medium tests ( #19537 )
2025-06-26 15:32:06 -04:00
Jason Rasmussen
eca9b56847
feat(server): person delete ( #19511 )
...
feat(api): person delete
2025-06-25 11:12:36 -04: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
Jason Rasmussen
5cd186d3d4
refactor: duplicate queries ( #19136 )
2025-06-12 14:23:02 -04:00
Jason Rasmussen
cd288533a1
feat: sync albums and album users ( #18377 )
2025-05-21 14:35:32 -05:00
Mert
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
Alex
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
Jason Rasmussen
5d21ba3166
chore: logging clean up ( #18031 )
2025-05-02 12:34:35 -05:00