Mert
e9722710ac
feat(server): transcode bitrate and thread settings ( #2488 )
...
* support for two-pass transcoding
* added max bitrate and thread to transcode api
* admin page setting desc+bitrate and thread options
* Update web/src/lib/components/admin-page/settings/setting-input-field.svelte
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
* Update web/src/lib/components/admin-page/settings/setting-input-field.svelte
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
* two-pass slider, `crf` and `threads` as numbers
* updated and added transcode tests
* refactored `getFfmpegOptions`
* default `threads`, `maxBitrate` now 0, more tests
* vp9 constant quality mode
* fixed nullable `crf` and `threads`
* fixed two-pass slider, added apiproperty
* optional `desc` for `SettingSelect`
* disable two-pass if settings are incompatible
* fixed test
* transcode interface
---------
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
2023-05-22 13:07:43 -05:00
Michel Heusschen
f1384fea58
feat(server): pagination for asset queries in jobs ( #2516 )
...
* feat(server): pagination for asset queries in jobs
* default mock value for getAll
* remove live photo name correction
* order paginated results by createdAt
* change log level
* move usePagination to domain
2023-05-22 13:05:06 -05:00
Jason Rasmussen
eefe5266a8
chore(server): remove unused filename ( #2517 )
2023-05-22 10:26:56 -05:00
Jason Rasmussen
74353193f8
feat(web,server): user storage label ( #2418 )
...
* feat: user storage label
* chore: open api
* fix: checks
* fix: api update validation and tests
* feat: default admin storage label
* fix: linting
* fix: user create/update dto
* fix: delete library with custom label
2023-05-21 23:18:10 -04:00
Michel Heusschen
a7b9adc692
feat(web+server): map improvements ( #2498 )
...
* feat(web+server): map improvements
* add number format double to fix mobile
2023-05-21 01:26:06 -05:00
Jason Rasmussen
e028cf9002
fix(server): reverse geocoding crash loop ( #2489 )
2023-05-20 21:39:12 -05:00
Alex
790e43dd6e
chore(server): Enhancement for query to get assets for each recognized person ( #2475 )
2023-05-18 22:59:57 -05:00
martin
70a0f4ae48
chore: update to node 18 and alpine 3.17 ( #2430 )
...
* chore: update to node 18 and alpine 3.17
Signed-off-by: martin <martin.labat92@gmail.com>
* chore: fix sharp version
Signed-off-by: martin <martin.labat92@gmail.com>
* chore(server): use vips-dev
Signed-off-by: martin <martin.labat92@gmail.com>
* update checkDiskUsage
Signed-off-by: martin <martin.labat92@gmail.com>
* fix: use vips-heif instead of libheif
Signed-off-by: martin <martin.labat92@gmail.com>
* fix: use vips instead of vips-cpp
Signed-off-by: martin <martin.labat92@gmail.com>
* fix: ensure vips installation
Signed-off-by: martin <martin.labat92@gmail.com>
---------
Signed-off-by: martin <martin.labat92@gmail.com>
2023-05-18 10:56:33 -05:00
Jason Rasmussen
93863b0629
feat: facial recognition ( #2180 )
2023-05-17 12:07:17 -05:00
Sergey Kondrikov
7f2fa23179
feat (server, web): Share with partner ( #2388 )
...
* feat(server, web): implement share with partner
* chore: regenerate api
* chore: regenerate api
* Pass userId to getAssetCountByTimeBucket and getAssetByTimeBucket
* chore: regenerate api
* Use AssetGrid to view partner's assets
* Remove disableNavBarActions flag
* Check access to buckets
* Apply suggestions from code review
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* Remove exception rethrowing
* Simplify partner access check
* Create new PartnerController
* chore api:generate
* Use partnerApi
* Remove id from PartnerResponseDto
* Refactor PartnerEntity
* Rename args
* Remove duplicate code in getAll
* Create composite primary keys for partners table
* Move asset access check into PartnerCore
* Remove redundant getUserAssets call
* Remove unused getUserAssets method
* chore: regenerate api
* Simplify getAll
* Replace ?? with ||
* Simplify PartnerRepository.create
* Introduce PartnerIds interface
* Replace two database migrations with one
* Simplify getAll
* Change PartnerResponseDto to include UserResponseDto
* Move partner sharing endpoints to PartnerController
* Rename ShareController to SharedLinkController
* chore: regenerate api after rebase
* refactor: shared link remove return type
* refactor: return user response dto
* chore: regenerate open api
* refactor: partner getAll
* refactor: partner settings event typing
* chore: remove unused code
* refactor: add partners modal trigger
* refactor: update url for viewing partner photos
* feat: update partner sharing title
* refactor: rename service method names
* refactor: http exception logic to service, PartnerIds interface
* chore: regenerate open api
* test: coverage for domain code
* fix: addPartner => createPartner
* fix: missed rename
* refactor: more code cleanup
* chore: alphabetize settings order
* feat: stop sharing confirmation modal
* Enhance contrast of the email in dark mode
* Replace button with CircleIconButton
* Fix linter warning
* Fix date types for PartnerEntity
* Fix PartnerEntity creation
* Reset assetStore state
* Change layout of the partner's assets page
* Add bulk download action for partner's assets
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-05-15 12:30:53 -05:00
Jason Rasmussen
e22cdea485
chore(server,mobile): remove device info entity ( #1527 )
...
* chore(server): remove unused device info code
* chore: generate open api
* remove any DeviceTypeEnum usage from mobile
* chore: coverage
* fix: drop device info table
---------
Co-authored-by: Fynn Petersen-Frey <zody22@gmail.com>
2023-04-28 15:01:03 -05:00
Jason Rasmussen
b8313abfa8
feat(web,server): manage authorized devices ( #2329 )
...
* feat: manage authorized devices
* chore: open api
* get header from mobile app
* write header from mobile app
* styling
* fix unit test
* feat: use relative time
* feat: update access time
* fix: tests
* chore: confirm wording
* chore: bump test coverage thresholds
* feat: add some icons
* chore: icon tweaks
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-25 21:19:23 -05:00
Jason Rasmussen
aa91b946fa
fix(server): use current schema for search/explore ( #2331 )
2023-04-25 12:21:07 -05:00
Sergey Kondrikov
d314805caf
feat (server, web): Implement Archive ( #2225 )
...
* feat (server, web): add archive
* chore: generate api
* feat (web): add empty placeholder for archive page
* chore: remove title on favorites page
Duplicates sidebar selection. Two pages (Archive and Favorites)
are consistent now
* refactor (web): create EmptyPlaceholder component for empty pages
* fixed menu close button not close:
* fix (web): remove not necessary store call
* test (web): simplify asset tests code
* test (web): simplify asset tests code
* chore (server): remove isArchived while uploading
* chore (server): remove isArchived from typesense schema
* chore: generate api
* fix (web): delete asset from archive page
* chore: change archive asset count endpoint
old endpoint: /asset/archived-count-by-user-id
new endpoint: /asset/stat/archive
* chore: generate api
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-12 10:37:52 -05:00
Alex
a1a62b00a0
feat(server): add originalFileName to asset table ( #2231 )
2023-04-11 05:23:39 -05:00
Alex
db628cec11
fix(server): cannot delete an asset if presented in album ( #2223 )
...
* fix(server): cannot delete an asset if presented in album
* added migration
* preserve correct migration
2023-04-09 21:48:01 -05:00
Skyler Mäntysaari
a68fbcc520
chore(server): redis error handling ( #2212 )
...
* chore(server): bull error handler
* chore(server): redis error handling
* Let's not touch bull
2023-04-08 20:35:08 -05:00
Zack Pollard
a5a6bebf0b
feat(all): transcoding improvements ( #2171 )
...
* test: rename some fixtures and add text for vertical video conversion
* feat: transcode video asset when audio or container don't match target
* chore: add niceness to the ffmpeg command to allow other processes to be prioritised
* chore: change video conversion queue to one concurrency
* feat: add transcode disabled preset to completely turn off transcoding
* linter
* Change log level and remove unused await
* opps forgot to save
* better logging
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-05 22:32:59 -05:00
Michel Heusschen
7b9248c10a
chore(server): update typeorm ( #2173 )
2023-04-05 13:23:03 +01:00
Jason Rasmussen
4cb74f0fe4
refactor(server): reverse geocoding ( #2167 )
...
* refactor(server): reverse geocoding
* fix: nullable results
2023-04-04 17:23:07 -05:00
Jason Rasmussen
48393c215b
refactor(server): video transcode processor ( #2163 )
...
* refactor(server): video transcode processor
* refactor: rename shouldRotate to isVideoVertical, remove unnecessary await
* refactor: rename getOptions to getFfmpegOptions to be clearer in that context
* fix: optimal preset converting vertical videos already smaller than target resolution
---------
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2023-04-04 10:48:02 -04:00
Jason Rasmussen
ec6a7ae97c
fix(server): do not link live photos across users ( #2162 )
2023-04-03 23:48:05 -05:00
Zack Pollard
808d6423be
feat(all): ffmpeg quality options improvements ( #2161 )
...
* feat: change target scaling to resolution in ffmpeg config
* feat(microservices): scale vertical video correctly, only scale if video is larger than target
2023-04-03 20:42:53 -05:00
Sergey Kondrikov
7e526f87b4
feat(server): enhanced thumbnails generation code ( #2147 )
...
* Add size parameter to extractVideoThumbnail
* Ensure minimum dimension of webp thumbnail
2023-04-03 20:18:27 -05:00
Skyler Mäntysaari
fc585bffcc
feat(server): Support TypeSense High-Availibility configuration ( #2146 )
...
* feat(server): Support TypeSense High-Availibility configuration.
* Lint fixes
* Address comments.
2023-04-03 20:16:45 -05:00
AndreAle94
94b2ea9b5f
Add timezone to exif entity ( #1894 )
...
* Add timezone to exif entity
* Refactor logging
---------
Co-authored-by: Andrea Alemani <andrea.alemani94@gmail.com>
2023-04-02 14:11:24 -05:00
Michel Heusschen
b06ddec2d5
feat(server/web): jobs clear button + queue status ( #2144 )
...
* feat(server/web): jobs clear button + queue status
* adjust design and colors
* Adjust some styling
* show status next to buttons instead of on top
* Update rounded corner for badge
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-01 15:46:07 -05:00
Skyler Mäntysaari
23e4449f27
feat(server): redis sentinel support ( #2141 )
...
* feat(server): redis sentinel initial support
* feat(server): Lint fixes
* Include example for Redis Sentinel.
* Address PR comments
2023-03-31 15:33:21 -05:00
Jason Rasmussen
49f66be8af
chore(server): use ioredis ( #2116 )
2023-03-31 09:36:08 -05:00
Jason Rasmussen
34d300d1da
refactor(server): flatten infra folders ( #2120 )
...
* refactor: flatten infra folders
* fix: database migrations
* fix: test related import
* fix: github actions workflow
* chore: rename schemas to typesense-schemas
2023-03-30 14:38:55 -05:00
Michel Heusschen
eda9e580c9
fix(server): add paused property to JobCountsDto ( #2112 )
2023-03-29 10:33:03 -05:00
Jason Rasmussen
b0d5c7035b
feat(server): apply storage migration after exif completes ( #2093 )
...
* feat(server): apply storage migraiton after exif completes
* feat: same for videos
* fix: migration for live photos
2023-03-28 15:04:11 -05:00
Sergey Kondrikov
2c67090e3c
feat(server): add transcode presets ( #2084 )
...
* feat: add transcode presets
* Add migration
* chore: generate api
* refactor: use enum type instead of string for transcode option
* chore: generate api
* refactor: enhance readability of runVideoEncode method
* refactor: reuse SettingSelect for transcoding presets
* refactor: simplify return statement
* chore: regenerate api
* fix: correct label attribute
* Update import
* fix test
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-03-28 14:03:43 -05:00
Jason Rasmussen
9adbbd42be
feat(server): resume queues ( #2104 )
...
* feat(server): resume queues
* chore: regenerate open-api
2023-03-28 13:25:22 -05:00
Jason Rasmussen
da5a6d2272
fix(cli): missing dep in immich cli ( #2094 )
...
* fix: missing dep in immich cli
* fix: imports
2023-03-28 11:29:20 -05:00
Michel Heusschen
f0e272d0f2
feat(server): change clipembedding entity type ( #2091 )
2023-03-28 09:53:35 -05:00
Jason Rasmussen
e0b80f49b6
fix(server): increase typesense start-up settings ( #2095 )
2023-03-27 14:00:32 -05:00
Alex
cd59f7aad6
fix(server) get all query does not respect asset type ( #2089 )
...
* chore: fix api
* fix(server) get all query does not respect asset type
2023-03-26 10:41:55 -05:00
Michel Heusschen
c74fba483d
feat(server): improve and refactor get all albums ( #2048 )
...
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-03-25 21:46:48 -05:00
Jason Rasmussen
1efc74dabc
refactor(server): common ( #2066 )
2023-03-23 23:55:15 -05:00
Jason Rasmussen
b9bc621e2a
refactor: server-info ( #2038 )
2023-03-21 21:49:19 -05:00
Jason Rasmussen
25a10784eb
fix(server): search and explore part 2 ( #2031 )
...
* explore logging
* chore: regenerate open api
* fix: explore page
2023-03-20 22:07:22 -05:00
Jason Rasmussen
73a2063d96
fix(server): search and explore issues ( #2029 )
...
* fix: send assets to typesense in batches
* fix: run classs transformer on search endpoint
* chore: log typesense filters
2023-03-20 15:16:32 -05:00
Jason Rasmussen
386eef046d
refactor(server): jobs ( #2023 )
...
* refactor: job to domain
* chore: regenerate open api
* chore: tests
* fix: missing breaks
* fix: get asset with missing exif data
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-03-20 10:55:28 -05:00
Alex
f56eaae019
feat(server): CLIP search integration ( #1939 )
2023-03-18 08:44:42 -05:00
Jason Rasmussen
2ca560ebf8
feat(web,server): explore ( #1926 )
...
* feat: explore
* chore: generate open api
* styling explore page
* styling no result page
* style overlay
* style: bluring text on thumbnail card for readability
* explore page tweaks
* fix(web): search urls
* feat(web): use objects for things
* feat(server): filter by motion, sort by createdAt
* More styling
* better navigation
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
2023-03-05 14:44:31 -06:00
Michel Heusschen
bdf35b6688
feat(server): improve thumbnail relation and updating ( #1897 )
...
* feat(server): improve thumbnail relation and updating
* improve query + update tests and migration
* make sure uuids are valid in migration
* fix unit test
2023-03-04 08:16:48 -06:00
Jason Rasmussen
0aaeab124d
feat(server)!: search via typesense ( #1778 )
...
* build: add typesense to docker
* feat(server): typesense search
* feat(web): search
* fix(web): show api error response message
* chore: search tests
* chore: regenerate open api
* fix: disable typesense on e2e
* fix: number properties for open api (dart)
* fix: e2e test
* fix: change lat/lng from floats to typesense geopoint
* dev: Add smartInfo relation to findAssetById to be able to query against it
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-03-02 20:47:08 -06:00
Alex
25cff6a748
fix(server) long album load time on Album and Sharing page ( #1890 )
...
* chore: update package-lock.json version
* rfix(server) long album load time
* remove all eagerness
* generate index
* remove console.log
* remove deadcode
* fix: shared link album owner
2023-02-27 18:28:45 -06:00
Michel Heusschen
368142e79b
feat(web): improved server stats ( #1870 )
...
* feat(web): improved server stats
* fix(web): don't log unauthorized errors
* Revert "fix(web): don't log unauthorized errors"
This reverts commit 7fc2987a77
.
2023-02-26 13:57:34 -06:00