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
c699df002a
feat: rename schema ( #19891 )
2025-07-14 10:13:06 -04:00
Jason Rasmussen
5cd186d3d4
refactor: duplicate queries ( #19136 )
2025-06-12 14:23:02 -04:00
Jonathan Gilbert
fb4be6e231
feat(server): add /search/statistics resource ( #18885 )
2025-06-06 21:12:53 -04:00
Mert
fa22e865a4
fix(server): tighten asset visibility ( #18699 )
...
* tighten visibility
* update sql
* elevated access util function
* fix potential sync issue
* include in user stats
* include hidden assets in size usage
* filter visibility in search duplicates query
* stack visibility
2025-06-02 09:33:08 -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
Mert
c3d10c5be2
refactor(server): non-nullable file metadata ( #17598 )
2025-04-15 12:03:31 +01:00
Abhinav Valecha
b621281351
feat(server): Avoid face match with people born after file creation #4743 ( #16918 )
...
* feat(server): Avoid face matching with people born after file creation date (#4743 )
* lint
* add medium tests for facial recognition
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-04-02 10:37:26 -05:00
Mert
a708649504
fix(server): skip stacked assets in duplicate detection ( #16380 )
...
* skip stacked assets in duplicate detection
* update sql
* handle stacking after duplicate detection runs
2025-02-27 10:16:13 -06:00
Jonathan Jogenfors
5407a28533
feat(server): Nullable asset dates ( #15669 )
...
* nullable dates
* wip
* don't search for null dates
* Add placeholder type
* cleanup
2025-02-13 15:30:12 -06:00
sudbrack
206412267a
fix(server): /search/random API returns same assets every call ( #15682 )
...
* Fix for server searchRandom function not returning random results
* Fix lint
2025-01-26 14:06:18 +00:00
Mert
ba105d9f19
fix(server): searchRandom response ( #15580 )
...
* fix searchRandom
* add e2e
* set outer limit
2025-01-24 00:41:54 -05:00
renovate[bot]
d1d26c60d6
fix(deps): update typescript-projects ( #14892 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2025-01-22 22:15:38 +00:00
Daniel Dietzler
332a865ce6
refactor: migrate person repository to kysely ( #15242 )
...
* refactor: migrate person repository to kysely
* `asVector` begone
* linting
* fix metadata faces
* update test
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2025-01-21 13:12:28 -05:00
Mert
2e12c46980
refactor(server): use kysely ( #12857 )
2025-01-09 11:15:41 -05:00
Mert
25ca3b1124
refactor(server): use includeNull in query for search suggestions ( #14626 )
...
* use `includeNull`
* push down `includeNull` into query, inner joins
* remove filter
* update sql
* fix tests
* maybe fix e2e
* more e2e tests
* handle no exif row
* whoops
* update sql
2024-12-10 16:22:37 -05:00
Mert
34fae31fd4
fix(server): remove unnecessary guc settings for vector search ( #14237 )
...
remove unnecessary guc settings
2024-11-19 15:37:39 -06:00
Mert
7adb35e59e
fix(server): /search/random failing with certain options ( #13040 )
...
* fix relation handling, remove pagination
* update api, sql
* update mock
2024-09-30 00:29:35 -04:00
Jason Rasmussen
6740c67ed8
fix: empty and restore over 1,000 items ( #12751 )
2024-09-18 09:57:52 -04:00
Jason Rasmussen
4f25cec6df
refactor(server): metadata repository ( #12759 )
2024-09-18 08:44:22 -04:00
BugFest
77e6a6d78b
feat(server): Import face regions from metadata ( #6455 )
...
* feat: faces-from-metadata - Import face regions from metadata
Implements immich-app#1692.
- OpenAPI spec changes to accomodate metadata face import configs. New settings to enable the feature.
- Updates admin UI compoments
- ML faces detection/recognition & Exif/Metadata faces compatibility
Signed-off-by: BugFest <bugfest.dev@pm.me >
* chore(web): remove unused file confirm-enable-import-faces
* chore(web): format metadata-settings
* fix(server): faces-from-metadata tests and format
* fix(server): code refinements, nullable face asset sourceType
* fix(server): Add RegionInfo to ImmichTags interface
* fix(server): deleteAllFaces sourceType param can be undefined
* fix(server): exiftool-vendored 27.0.0 moves readArgs into ExifToolOptions
* fix(server): rename isImportFacesFromMetadataEnabled to isFaceImportEnabled
* fix(server): simplify sourceType conditional
* fix(server): small fixes
* fix(server): handling sourceType
* fix(server): sourceType enum
* fix(server): refactor metadata applyTaggedFaces
* fix(server): create/update signature changes
* fix(server): reduce computational cost of Person.getManyByName
* fix(server): use faceList instead of faceSet
* fix(server): Skip regions without Name defined
* fix(mobile): Update open-api (face assets feature changes)
* fix(server): Face-Person reconciliation with map/index
* fix(server): tags.RegionInfo.AppliedToDimensions must be defined to process face-region
* fix(server): fix shared-link.service.ts format
* fix(mobile): Update open-api after branch update
* simplify
* fix(server): minor fixes
* fix(server): person create/update methods type enforcement
* fix(server): style fixes
* fix(server): remove unused metadata code
* fix(server): metadata faces unit tests
* fix(server): top level config metadata category
* fix(server): rename upsertFaces to replaceFaces
* fix(server): remove sourceType when unnecessary
* fix(server): sourceType as ENUM
* fix(server): format fixes
* fix(server): fix tests after sourceType ENUM change
* fix(server): remove unnecessary JobItem cast
* fix(server): fix asset enum imports
* fix(open-api): add metadata config
* fix(mobile): update open-api after metadata open-api spec changes
* fix(web): update web/api metadata config
* fix(server): remove duplicated sourceType def
* fix(server): update generated sql queries
* fix(e2e): tests for metadata face import feature
* fix(web): Fix check:typescript
* fix(e2e): update subproject ref
* fix(server): revert format changes to pass format checks after ci
* fix(mobile): update open-api
* fix(server,movile,open-api,mobile): sourceType as DB data type
* fix(e2e): upload face asset after enabling metadata face import
* fix(web): simplify metadata admin settings and i18n keys
* Update person.repository.ts
Co-authored-by: Jason Rasmussen <jason@rasm.me >
* fix(server): asset_faces.sourceType column not nullable
* fix(server): simplified syntax
* fix(e2e): use SDK for everything except the endpoint being tested
* fix(e2e): fix test format
* chore: clean up
* chore: clean up
* chore: update e2e/test-assets
---------
Signed-off-by: BugFest <bugfest.dev@pm.me >
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2024-09-04 18:23:58 -04:00
Jason Rasmussen
7af6733665
refactor(server): move files to separate table ( #11861 )
2024-08-19 20:03:33 -04:00
Christoph Suter
f33dbdfe9a
feat(web): add Exif-Rating ( #11580 )
...
* Add Exif-Rating
* Integrate star rating as own component
* Add e2e tests for rating and validation
* Rename component and async handleChangeRating
* Display rating can be enabled in app settings
* Correct i18n reference
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com >
* Star rating: change from slider to buttons
* Star rating for clarity
* Design updates.
* Renaming and code optimization
* chore: clean up
* chore: e2e formatting
* light mode border and default value
---------
Co-authored-by: Christoph Suter <christoph@suter-burri.ch >
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com >
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-08-09 17:45:52 +00:00
Jason Rasmussen
e1f25b44d2
refactor(server): stack owner ( #10900 )
2024-07-05 16:16:53 -04:00
Mert
42f3b50422
fix(server): /places entries sometimes not ordered alphabetically ( #10514 )
2024-06-20 23:48:19 -04:00
Mert
6b1b5054f8
feat(server): separate face search relation ( #10371 )
...
* wip
* various fixes
* new migration
* fix test
* add face search entity, update sql
* update e2e
* set storage to external
2024-06-16 19:25:27 +00:00
Mert
e7c8501930
fix(server): search duplicates of the same asset type ( #9747 )
...
* search by type
* make sql
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2024-05-26 22:04:23 +00:00
Mert
64636c0618
feat(server): near-duplicate detection ( #8228 )
...
* duplicate detection job, entity, config
* queueing
* job panel, update api
* use embedding in db instead of fetching
* disable concurrency
* only queue visible assets
* handle multiple duplicateIds
* update concurrent queue check
* add provider
* add web placeholder, server endpoint, migration, various fixes
* update sql
* select embedding by default
* rename variable
* simplify
* remove separate entity, handle re-running with different threshold, set default back to 0.02
* fix tests
* add tests
* add index to entity
* formatting
* update asset mock
* fix `upsertJobStatus` signature
* update sql
* formatting
* default to 0.03
* optimize clustering
* use asset's `duplicateId` if present
* update sql
* update tests
* expose admin setting
* refactor
* formatting
* skip if ml is disabled
* debug trash e2e
* remove from web
* remove from sidebar
* test if ml is disabled
* update sql
* separate duplicate detection from clip in config, disable by default for now
* fix doc
* lower minimum `maxDistance`
* update api
* Add and Use Duplicate Detection Feature Flag (#9364 )
* Add Duplicate Detection Flag
* Use Duplicate Detection Flag
* Attempt Fixes for Failing Checks
* lower minimum `maxDistance`
* fix tests
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
* chore: fixes and additions after rebase
* chore: update api (remove new Role enum)
* fix: left join smart search so getAll works without machine learning
* test: trash e2e go back to checking length of assets is zero
* chore: regen api after rebase
* test: fix tests after rebase
* redundant join
---------
Co-authored-by: Nicholas Flamy <30300649+NicholasFlamy@users.noreply.github.com >
Co-authored-by: Zack Pollard <zackpollard@ymail.com >
Co-authored-by: Zack Pollard <zack@futo.org >
2024-05-16 18:08:37 +01:00
Jason Rasmussen
5b87abb021
feat(server): read-write external assets ( #9235 )
...
* refactor: remove isReadOnly and isExternal usages
* chore: open api
* fix: linting
* remove mobile isReadOnly dependency
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-05-03 15:34:57 -04:00
Mert
8edc2fb46f
refactor(server): decouple generated images from image formats ( #8246 )
...
* rename
thumbnail config
update target paths, fix tests
rename to image settings
replace legacy enum
better typing
update sql
update api
remove config option
fix
* update docs
* update other thumbnail configs in migration
* keep legacy enum for now
* fix jumbled job names
* fix jumbled job names in tests
* rename thumbhash job
* rename dto
* fix tests
* preserve order
* remove unused import
* keep old fields in dto, marked deprecated
* update sql
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-04-02 04:56:56 +00:00
Mert
5bc9158724
fix(server): penalize null geodata fields when searching places ( #8408 )
2024-03-31 10:59:11 -04:00
Jason Rasmussen
4b39d37cae
fix: sql generation issues ( #8361 )
...
chore: fix sql gen issues
2024-03-30 00:16:06 -04:00
Mert
4a6a0aa142
fix(server): places page not working with partner sharing ( #8257 )
2024-03-25 01:59:11 -04:00
Jason Rasmussen
16d0df796c
refactor: infra folder ( #8138 )
2024-03-20 23:15:09 -04:00