Ben Beckford
953ef5c047
feat: webhook workflow action ( #29258 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-06-26 16:08:45 +02:00
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
Yaros
733373c0ca
feat(mobile): ocr support ( #26523 )
2026-06-05 04:29:03 +05:30
Jason Rasmussen
da8505f61d
feat: more plugin triggers and methods ( #28690 )
2026-05-29 14:02:07 -04:00
Alex
8682be4774
feat: workflow template ( #28553 )
...
* wip: confirm before existing and disable/enable save button condition
* fix: get correct workflow detail
* wip: add back workflow summary
* wip: add back json editor
* wip: step property badge
* wip: redesign card flow
* wip: redesign card flow
* redesign workflow summary
* wworkflow summary styling
* wip
* drag and drop
* list redesign
* refactor
* refactor
* remove deadcode
* refactor
* insert steps
* push down when dropped
* feat: workflow template
* simplify
* move template to manifest
* feat: hash manifest file
* fix: template column
* fix: migration
* fix: workflow lookup
* chore: clean up
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2026-05-26 16:47:05 -04: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
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
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
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
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
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
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
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
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
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
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
29c14a3f58
refactor: database column names ( #23356 )
2025-11-04 16:03:21 -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
Jason Rasmussen
28179a3a1d
feat: audit cleanup ( #21567 )
2025-09-03 22:50:27 +00:00
Jason Rasmussen
88072910da
feat: asset metadata ( #20446 )
2025-08-27 14:31:23 -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
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
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