Thomas
da7a81b752
chore(server): split album update notifications into multiple jobs ( #17879 )
...
We would like to move away from the concept of finding and removing pending
jobs. The only place this is used is for album update notifications, and this
is done so that users who initially uploaded assets to an album will also
receive a notification if someone else then adds assets to the same album. This
can also be achieved with a job for each recipient. Multiple jobs also has the
advantage that it will scale better for albums with many users, it's possible
to send notifications concurrently, retries are possible without sending
duplicate notifications, and it's clear what recipient a job failed for.
2025-04-30 17:45:35 -04:00
Jason Rasmussen
1b5fc9c665
feat: notifications ( #17701 )
...
* feat: notifications
* UI works
* chore: pr feedback
* initial fetch and clear notification upon logging out
* fix: merge
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-04-28 10:36:14 -04:00
Jason Rasmussen
56a4aa9ffe
refactor: email repository ( #17746 )
2025-04-21 12:53:37 -04:00
Daniel Dietzler
1bbfacfc09
refactor: more job query stuff ( #17658 )
2025-04-16 22:10:20 +02:00
Daniel Dietzler
85c2d36d99
refactor: dedicated get album thumbnail files query ( #17657 )
2025-04-16 21:10:27 +02:00
Jason Rasmussen
eaa0e07329
refactor: asset files entity ( #17527 )
2025-04-10 13:26:27 -04:00
Jason Rasmussen
8aea07b750
refactor: album user entity ( #17524 )
2025-04-10 11:53:21 -04:00
Jason Rasmussen
206545356d
refactor: metadata entity ( #17492 )
2025-04-09 11:45:30 -04:00
bo0tzz
e4f83680d9
feat: use my.immich.app for externalDomain fallback ( #17209 )
...
* feat: use my.immich.app for externalDomain fallback
This is probably more useful than localhost.
* chore: remove port param
* fix: update expected value in tests
* fix: update expected value in e2e
2025-03-31 12:08:41 +01:00
Jason Rasmussen
1382b27349
refactor: repository mocks ( #16785 )
2025-03-10 16:52:44 -04:00
Jason Rasmussen
fa5aeaf539
refactor: last repository ( #16042 )
2025-02-11 22:15:56 +00:00
Jason Rasmussen
735f8d661e
refactor: test mocks ( #16008 )
2025-02-11 00:47:42 +01:00
Jason Rasmussen
03948a69e2
refactor: system metadata repository ( #15954 )
2025-02-07 17:26:49 -05:00
Jason Rasmussen
1869b1b41a
refactor: repositories ( #15561 )
...
* refactor: version history repository
* refactor: oauth repository
* refactor: trash repository
* refactor: telemetry repository
* refactor: metadata repository
* refactor: cron repository
* refactor: map repository
* refactor: server-info repository
* refactor: album user repository
* refactor: notification repository
2025-01-23 18:10:17 -05:00
Zack Pollard
d456d35510
refactor: config init event for first config load ( #13930 )
2024-11-05 16:30:56 +00:00
Hayden
4a2a7b7735
feat(server): wait five minutes before sending email on new album item ( #12223 )
...
Album update jobs will now wait five minutes to send. If a new image is added while that job is pending, the old job will be cancelled, and a new one will be enqueued for a minute.
This is to prevent a flood of notifications by dragging in images directly to the album, which adds them to the album one at a time.
Album updates now include a list of users to email, which is generally everybody except the updater. If somebody else updates the album within that minute, both people will get an album update email in a minute, as they both added images and the other should be notified.
2024-10-18 14:51:34 -05:00
Daniel Dietzler
9d0f03808c
chore: finishing unit tests for a couple of services ( #13292 )
2024-10-08 17:08:49 -04:00
Jason Rasmussen
4ea281f854
refactor: service dependencies ( #13108 )
...
refactor(server): simplify service dependency management
2024-10-02 10:54:35 -04:00
Jason Rasmussen
63437529e1
refactor(server): config file env ( #13100 )
2024-10-01 16:03:55 -04:00
Jason Rasmussen
dfc2d5002b
refactor(server): client events ( #13062 )
2024-09-30 15:50:34 -04:00
Jason Rasmussen
a2d457b01d
refactor(server): events ( #13003 )
...
* refactor(server): events
* chore: better type
---------
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2024-09-30 10:35:11 -04:00
Mert
2bcd27e166
feat(server): generate all thumbnails for an asset in one job ( #13012 )
...
* wip
cleanup
add success logs, rename method
do thumbhash too
fixes
fix tests
handle `notify`
wip refactor
refactor
* update tests
* update sql
* pr feedback
* remove unused code
* formatting
2024-09-28 17:47:24 +00:00
Jason Rasmussen
005528ab5e
fix(server): http error parsing on endpoints without a default response ( #12927 )
2024-09-25 12:05:03 -04:00
Jason Rasmussen
ba57646f9f
refactor(server): client emit events ( #12606 )
...
* refactor(server): client emit events
* chore: test coverage
2024-09-12 14:12:39 -04:00
Jason Rasmussen
2554cc96b0
feat(web): logout of all tabs ( #12407 )
2024-09-07 13:21:05 -04:00
Michel Heusschen
74f18a4523
fix(server): skip smtp validation if unchanged ( #12111 )
...
* fix(server): skip smtp validation if unchanged
* update comparison + convert config to plain object
2024-08-29 14:10:09 -04:00
Jason Rasmussen
7af6733665
refactor(server): move files to separate table ( #11861 )
2024-08-19 20:03:33 -04:00
Jason Rasmussen
433c7ab01d
refactor: server emit events ( #11780 )
2024-08-15 20:12:41 +00:00
Jason Rasmussen
b288241a5c
refactor(server): enums ( #11809 )
2024-08-15 06:57:01 -04:00
Daniel Dietzler
7ecdcb3bc0
fix(server): static mail attachment extension ( #11254 )
...
* fix: static file extension
* chore: unit tests
2024-07-20 19:00:46 -04:00
Michel Heusschen
cf77487c00
fix(server): skip smtp validation when there are no changes ( #10991 )
...
* fix(server): skip smtp validation when there are no changes
* rename test
2024-07-10 08:37:50 -04:00