Commit Graph

771 Commits

Author SHA1 Message Date
Pierre
66e6ce2545 fix: apply tag requests to artist in Lidarr instead of album 2025-12-15 09:36:21 +10:00
Pierre
94dcdabfc7 refactor: unify delete file route logic across Radarr, Sonarr, and Lidarr 2025-12-15 09:36:19 +10:00
Pierre
32d1a80fe3 fix: ensure filtered request array excludes undefined entries to satisfy type safety 2025-12-15 09:36:18 +10:00
Pierre
1db665b37d refactor: combine the AddLidarrServiceIdToOverrideRules migration with AddMusicSupport 2025-12-15 09:36:17 +10:00
Pierre
773f1f3580 fix: update migration file to resolve compatibility issues with main repo develop branch 2025-12-15 09:36:11 +10:00
Pierre
0ebf40285d fix: allow null values for caaUrl to prevent SQLITE_CONSTRAINT: NOT NULL constraint failure in metadata_album.caaUrl 2025-12-15 09:36:10 +10:00
Pierre
d39aef5fd4 fix: recently added albums are now correctly marked as available when using Plex as the media server 2025-12-15 09:35:51 +10:00
Pierre
df99d61e13 fix: ensure proper monitoring and searching of unmonitored existing albums in Lidarr upon request 2025-12-15 09:35:50 +10:00
Pierre
97f9c2d6c9 fix: properly pass qualityProfile and metadataProfile in music requests based on Lidarr configuration selection 2025-12-15 09:35:49 +10:00
Pierre
3e08771c6a refactor: move lidarrServiceId column creation to a separate migration file 2025-12-15 09:35:48 +10:00
Pierre
bf13cdce68 refactor: remove singleton pattern to ensure consistency across all calls and API files 2025-12-15 09:35:47 +10:00
Pierre
b7f8e22db2 refactor: change variable from "month" to "week" for better content update granularity 2025-12-15 09:35:46 +10:00
Pierre
81faf7d8ab fix: remove redundant try/catch since error is already handled with fetchCoverArt.catch() 2025-12-15 09:35:45 +10:00
Pierre
5581865fc3 fix: email notification music button now correctly redirects to the music media page 2025-12-15 09:35:44 +10:00
Pierre
0341c705ef refactor: replace Promise.all with Promise.allSettled to handle external API failures more gracefully 2025-12-15 09:35:43 +10:00
Pierre
a7e34de2dd refactor: remove duplicate properties in LidarrSettings by extending DVRSettings 2025-12-15 09:35:42 +10:00
Pierre
c212858221 refactor: enforce type validation using z.union for tmdbId and mbId 2025-12-15 09:35:41 +10:00
Pierre
38532bd28a fix: lower maxRPS from 25 to 1 to prevent hitting rate limits 2025-12-15 09:35:40 +10:00
Pierre
9a97811e88 fix: added MEDIA_FAILED handling for music content in email notifications 2025-12-15 09:35:39 +10:00
Pierre
f2103388b5 refactor: reorder and organize permission constants to prevent issues with existing setups 2025-12-15 09:35:39 +10:00
Pierre
d9bda583a5 fix: mitigate remote property injection vulnerabilities in CoverArtArchive 2025-12-15 09:35:38 +10:00
Pierre
f535b08f0b fix: removed duplicated "'" character in .replace function 2025-12-15 09:35:35 +10:00
Pierre
0c3ecc718b fix: mitigate SSRF vulnerabilities 2025-12-15 09:35:05 +10:00
Pierre
3b4529f3b1 fix: no more repeated character ''' in the same character class 2025-12-15 09:35:04 +10:00
Pierre
ff873e6d2b refactor(mediarequest): merging changes 2025-12-15 09:35:01 +10:00
Pierre
cdb9d2450a refactor(person details): merging Person Details 2025-12-15 09:34:56 +10:00
Pierre
31ce44c452 fix(mediarequests): changed lidarr notification and request to match new architecture
This was using an older architecture for the notifications and request, this change updates the
system to match how movies and tv are done
2025-12-15 09:26:52 +10:00
Pierre
fe37a1de98 fix: resolved issues with the music slider displaying all menus, and ensured media are properly removed from Lidarr. 2025-12-15 09:26:51 +10:00
Pierre
a190320abd fix: properly fetch music library from Emby servers 2025-12-15 09:26:50 +10:00
Pierre
cb6d271f22 fix: correctly populate ratingKey during music import for Plex and properly display artist name in the slide-over menu 2025-12-15 09:26:49 +10:00
Pierre
f9259cfcdf fix: properly fetch Plex music library with correct release-group mapping 2025-12-15 09:26:48 +10:00
Pierre
a0a8dfc496 fix: titlecard now have a proper behaviour even if the image is empty and applied prettier to migration file 2025-12-15 09:26:47 +10:00
Pierre
c1c3ae99bc fix: mbId is now created in watchlist table upon migration 2025-12-15 09:26:46 +10:00
Pierre
adf56d63bc feat: lidarr/Music support added 2025-12-15 09:26:35 +10:00
RolliePollie18
15356dfe49 fix(jellyfin-scan): reduce jellyfin API calls during recently added scan (#2205)
* fix(jellyfin scanner): reduce jellyfin API calls during recently added scan

Significantly reduce number of API calls, addressing CPU spikes on Jellyfin 10.10+ servers.- Move
getSeasons() call outside the seasons loop (N calls to 1)- Request MediaSources via getEpisodes()
field parameter instead of  individual getItemData() calls per episode (N calls to 1 per season)
Performance improvements (tested on library with 12 TV shows):- Scan duration: 43.7s to 9.1s - Peak
CPU: 277% to 115% - CPU spike duration: 36s to 2s Functionality is unchanged, all availability
statuses identicalbefore and after.

* fix: add getEpisodes overloads to remove unsafe type assertion

* refactor(jellyfin): use generics instead of overloads

---------

Co-authored-by: patrick-acland <patrick.acland@kraken.tech>
2025-12-09 22:20:47 +08:00
fallenbagel
f4fe16608a fix(jellyfin-api): use standard Authorization header (#2211)
Replace X-Emby-Authorization with Authorization header to fix authentication failures when users
have <EnableLegacyAuthorization>false</EnableLegacyAuthorization> in their Jellyfin system.xml.
2025-12-08 15:46:47 +01:00
Gauthier
4e9c94c80f feat: Overseerr to Jellyseerr migration (#2019)
* feat: add Overseerr migration

* refactor: rename to Seerr

* refactor: more rename to Seerr

* feat: update the value of the MediaStatus.DELETED enum

* fix: add more details in migration logs

* fix: replace .update by .save for TypeORM hooks

* fix: add fake migration to skip the duplicated UpdateWebPush migration

* fix: rewrite the AddUserAvatarCacheFields migration for Overseerr merge

* fix: replace jellyseerr migrations with a dedicated one for overseerr

* fix: update overseerr migration

* fix: update overseerr migration

* fix: remove irrelevant changes

* fix: typos

* docs: update jsdoc comment

* docs: update seerr description

* docs: fix the contributing.md link

* fix: remove unwanterd change on postgres dev datasource

* docs: add latest tag to docker image

* fix: migrate old deleted status for 4k media

* fix: update Seerr version check
2025-10-30 19:57:50 +01:00
TacoCake
2e6e9ad657 fix: include video content in the blacklisted tags processing job (#1736)
* fix: include video content in the blacklisted tags processing job

Modified the “blacklisted tags” job to include adult & video content, this correctly blacklists more
adult films that were always missed, even if they had the tag.

* refactor: remove dead code

* refactor: remove redundant explicit arguments
2025-10-28 20:29:04 -06:00
0xsysr3ll
9a92d6ac30 fix(api): respect is4k parameter for all media status changes (#1951)
Signed-off-by: 0xsysr3ll <0xsysr3ll@pm.me>
2025-10-28 17:26:28 +01:00
0xsysr3ll
7dfa30a151 fix(media): handle 4K Radarr removal for multiple instances (#2037)
This PR fixes an issue where removing 4K movies from Radarr failed when multiple Radarr instances were configured. The backend was misparsing boolean query parameters and using string slugs instead of TMDB IDs. The fix ensures that the correct 4K Radarr instance is targeted and that TMDB IDs are used for movie removal.

Signed-off-by: 0xsysr3ll <0xsysr3ll@pm.me>
2025-10-28 17:25:57 +01:00
Ludovic Ortega
b34ca1543a feat: do not enforce TLD on email (#2075)
fix #1846
2025-10-20 17:24:24 +03:00
J. Winters-Brown
f7f00ce361 feat: migrate to validator from email-validator (#2059)
* refactor(adds package): this adds the validator package and removes email-validator from dependencys

* refactor(auth.ts and email.ts): migrates from EmailValidator to validator
2025-10-19 22:37:09 +02:00
Brandon Cohen
a975ab25c3 fix: delete endpoint on push notification disable (#2067)
fix: add endpoint deletion on disable

fix: use definemessages util

refactor: add code comment
2025-10-19 00:03:28 +08:00
fallenbagel
0d6bfa18cc fix(download-tracker): reset both service caches when resetting downloads (#2065) 2025-10-17 21:10:02 +02:00
fallenbagel
d5ff0c11ca fix(subscriber): prevent infinite loop when requesting existing media with scan disabled (#2043) 2025-10-14 22:56:33 +02:00
salty
a8c7e35f56 fix(api): cleanup radarr bits in sonarr api (#2035) 2025-10-12 17:19:51 +02:00
Gauthier
34fcc5d2c7 chore: merge upstream (#2024) 2025-10-08 23:34:31 -04:00
Ryan Cohen
3de457f5bb docs: update docs links to docs.seerr.dev (#1990) [skip ci] 2025-10-07 16:48:51 +00:00
TheCatLady
2e2d2a031b chore: rename Jellyseerr -> Seerr, part 1 (#1984)
* chore: rename Jellyseerr -> Seerr, part 1

* chore: update Jellyfin bot name
2025-10-06 15:22:36 -07:00
Ludovic Ortega
166e2404b2 chore: remove unused files (#1966)
* chore: removed unused files

Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>

* chore: remove cypress deprecated config option

Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>

* chore: remove deprecated log file

Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>

---------

Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>
2025-10-06 14:50:38 -04:00