Commit Graph

3715 Commits

Author SHA1 Message Date
ta264 b4fc4e88a5 Fixed: UseRealHttp following addition of MetadataRequestBuilder 2019-07-10 06:21:00 +01:00
ta264 12b73830d3 New: Moq to 4.12 2019-07-10 06:21:00 +01:00
Qstick 6dd8df43ca Fixed: Incorrect parsing of APE and OPUS in some cases
Fixes #847
2019-07-06 18:22:12 -04:00
ta264 447bf63a4d Fixed: Correctly delete trackfiles on AlbumDeletedEvent
GetFilesByAlbum performs a join on the album releases under the hood,
which won't be populated once the album is deleted.  Fix by providing
a special delete method which omits the join and just looks at albumId.
2019-06-27 12:39:56 +01:00
Qstick 3ebbf6ff83 Fixed: Multiple SignalR Improvements
Support for serverSentEvents, connection optimizations

Co-Authored-By: taloth <taloth@users.noreply.github.com>
2019-06-19 23:03:08 -04:00
Qstick 184ab745ae Fixed: Only fix cleanName when fix is needed
Avoid hitting DB for every artist on clean name housekeeper

Co-Authored-By: taloth <taloth@users.noreply.github.com>
2019-06-19 22:52:20 -04:00
ta264 ace83498cd Fixed: Don't show cmd.exe window when fpcalc runs 2019-06-19 08:26:51 +01:00
Qstick d7f63abe01 New: Option to use HTTPS with Emby 2019-06-11 22:44:49 -04:00
Qstick 6f588d23fd New: Detect mergerfs mounts 2019-06-11 22:40:35 -04:00
Qstick 12cc2ef95a Fixed: Manual import of unknown aritst items in Activity: Queue 2019-06-11 22:38:33 -04:00
Qstick d7e465d2d7 Fixed: Improve exception logging when unable to connect to Plex 2019-06-11 22:35:39 -04:00
Qstick 5d13ae5ae6 Fixed: Use Download Client name for grabbed history events 2019-06-11 22:33:06 -04:00
Qstick 8a8799176f New: Setting monitor None when adding arist will unmonitor artist 2019-06-11 22:28:57 -04:00
ta264 8cd9ab4a9f
Add: option to skip automatic redownload when removing from queue (#734)
* Add: option to skip automatic redownload when removing from queue

* Add tests for RedownloadFailedDownloadService

* Fix formatting

* Make re-download dialog conditional
2019-06-10 19:56:44 +01:00
ta264 0f6a3bca0c New: Sentry to 1.2.0 2019-06-10 11:38:34 -04:00
Qstick 5efbcaa967 Fixed: Test Due to 4.6.2 Error Change 2019-06-10 11:38:34 -04:00
Qstick 673412c446 Fixed: Remove Unused Variables to Clear Compiler Warnings 2019-06-10 11:38:34 -04:00
Qstick 4eb815aa0e New: Migrate to PackageReference Format 2019-06-10 11:38:34 -04:00
Qstick 43a18de846 New: ImageResizer to 4.2.5 2019-06-10 11:38:34 -04:00
Qstick 5ae1ab14f7 New: AutoMoq to 2.0.0 2019-06-10 11:38:34 -04:00
Qstick 32307ac5e7 New: Update Unity to 4.0.1 2019-06-10 11:38:34 -04:00
Qstick b5d502bd5d Fixed: Long Path Support on Mono and .Net 2019-06-10 11:38:34 -04:00
Qstick 70155cae18 New: Target .net 4.6.2 2019-06-10 11:38:34 -04:00
Qstick c40cda3101 New: Bump SignalR to 2.4.1 2019-06-10 11:38:34 -04:00
Qstick c1e1741957 Fixed: MediaFileTableCleanup Test Failing 2019-06-09 18:11:50 -04:00
ta264 166fc90454 New: Only scan files that are new or updated (#760)
* New: Only scan files that are new or updated

Pass through filter correctly

Add more tests

Add tests for migration 30

* Fix windows disk provider

* Don't publish deleted event for unmapped file

* Fix test on windows
2019-06-08 15:13:58 -04:00
Qstick b2d87cccb2 Fixed: _coverMapper is null for other album entities 2019-05-09 18:51:56 -04:00
ta264 adfaec3864
Fixed: Fingerprinting service swallows UnexpectedHtmlContentException (#808) 2019-05-08 16:37:38 +01:00
ta264 d381bab9d9
New: Fetch all albums from metadata and filter client-side (#803)
* Retrieve all albums from metadata and filter client-side

Should significantly increase the proportion of artist requests hitting
cloudflare cache

* Add tests for album filtering
2019-05-08 15:06:29 +01:00
ta264 801ece337c
Fixed: Map dsm shared folder to full path in status (#797)
* Fixed: Map dsm shared folder to full path in status

* Add tests
2019-05-08 06:06:05 +01:00
Qstick add32ff9f3
Fixed: Lidarr Lists use correct metadata server (#800) 2019-05-07 19:11:34 -04:00
Qstick 35c19dac5f
Fixed: Cache Album covers local (#780)
* Fixed: Cache Album covers local

* Fixed: Maxsize is handled by the backend mapping

* Fixed: Store Album covers seperate from ArtistId
2019-05-07 19:10:09 -04:00
stephanrenggli bcdef2723f New: Added support for Gotify notifications (#730)
* Added support for Gotify notifications

* Removed non-supported features and adjusted priorities

* Use string interpolation to build url

* Rename a few variables and improve Url validation

* Improve building of the Url, move validation to Gotify.cs (adapting changes by markus101 over at Sonarr)

* Move validation from GotifyProxy.cs to here (adapting changes by markus101 over at Sonarr)
2019-05-05 00:08:32 -04:00
Qstick e9dfdab907 New: Use NZBget's FinalDir if set by post-processing script 2019-05-04 23:10:13 -04:00
Qstick 970d46512e Fixed: Don't treat NZBs rejected by SABnzbd as successful 2019-05-04 23:09:24 -04:00
Qstick 499ec06664 Fixed: Throw Startup Exception on Same Port for SSL 2019-05-04 20:28:48 -04:00
ta264 4093a4f846
Swap to lidarr taglib fork (#786) 2019-05-04 03:50:23 +01:00
ta264 541841d7b7
Don't try to match a null codec name (#784)
* Don't try to match a null codec name

* Add test
2019-05-01 06:42:01 +01:00
Qstick a3e955443d New: Output Path column in Queue 2019-04-28 00:32:38 -04:00
Qstick 4aeaf04b62 Fixed: Don't allow HTTPS to be set to same port via API/UI 2019-04-28 00:19:38 -04:00
ta264 5d1a5ee946 Remove rogue . from transmission output directory 2019-04-27 16:53:48 +01:00
Qstick 6da224bfc4 Changed: RIP Nzbs.org 2019-04-25 21:30:33 -04:00
Qstick 872d65ad1a Fixed: Roxsbox ArtistImages using AlbumImages Setting, Returing null
Fixes LIDARR-1S3
2019-04-22 21:06:16 -04:00
Qstick ea3534b204 Fixed: Queue fails when sorting by Album columns with null Albums
Fixes #771
2019-04-22 20:08:09 -04:00
Qstick a4a3bc5127 New: Don't overwrite Images/Overviews if new is blank 2019-04-22 16:29:15 -04:00
Qstick e998f9c029 New: Send Bits and SampleRate to UI for TrackFiles 2019-04-22 16:28:25 -04:00
Qstick 6057127ec0 Fixed: Return empty intead of 0bits if AudioBits is 0 2019-04-22 16:28:25 -04:00
Qstick d71f7e5d35 Fixed: SampleRate Format doesn't include decimal 2019-04-22 16:28:25 -04:00
Qstick b0faaef777 New: Unit Tests for MediaInfo Tokens 2019-04-22 16:28:25 -04:00
Qstick 0c6cc4acdb New: AudioBitRate Naming Token 2019-04-22 16:28:25 -04:00
ta264 045a3ce404 Fixed: Skip albums and releases with no valid tracks (#754)
* Fixed: Artist only marked as refreshed if Albums/Tracks refreshed also

* Fixed: Skip album releases with no valid tracks

* Fixed: Don't add albums with no valid releases

* Fixed: Remove Albums with no valid releases
2019-04-15 20:52:43 -04:00
ta264 af88b3f807 Fixed: Ensure Tracks is always present in ManualImportItem
Fixes error in manual import page when Tracks is missing.

Fixes Sentry LIDARR-UI-1GC
2019-04-15 21:12:32 +01:00
Qstick 1212578c45
Fixed: Migration 23 doesn't set Track.ArtistMetadataId (#756) 2019-04-15 12:31:19 -04:00
ta264 59cc5584c6 Fixed: Slower startup loop on DB initialization failure
Wrap any exception thrown in a LidarrStartupException to trigger the
existing bootloop code.

We have to catch the generic Exception class since FluentMigrator
rethrows all exceptions as a generic Exception.
2019-04-14 16:28:04 +01:00
Qstick 909140988f New: Release title column in queue table 2019-04-13 22:58:11 -04:00
Qstick 77293cf8ae Fixed: Don't worry about qBit parameters if category is blank 2019-04-13 22:55:30 -04:00
Qstick cfcc5b13e4 Fixed: Include all items if no category is specified in rtorrent 2019-04-13 22:54:25 -04:00
Qstick f3573d4deb Changed: More descriptive message if indexer test yielded no results 2019-04-13 22:41:35 -04:00
Qstick 600a5b194f Fixed: API Exception Error format 2019-04-11 21:58:02 -04:00
Qstick 3e3c644cbb Fixed: ReleasePush Validation should use Protocol 2019-04-11 21:48:08 -04:00
Qstick d17e7cb13b Fixed: Nullref due to InfoHash on AlreadyImportedSpec 2019-04-11 21:15:43 -04:00
ta264 7b288bfcd3 Fixed: Album API query by foreignId only returns requested album
Setting the new 'includeAllArtistAlbums' will give the existing
behaviour of returning all albums for that artist
2019-04-11 16:37:40 +01:00
ta264 11c0f1dad2 Fixed: Reinstate foreignArtistId for album lookup API 2019-04-11 16:37:40 +01:00
ta264 6a414cff14 Fixed: Artist/Album lookup endpoints display error on failure 2019-04-11 16:37:40 +01:00
ta264 b1aff8fe58
Fixed: RemotePathMappingCheck ignores all download client exceptions (#735) 2019-04-08 18:24:13 +01:00
Qstick 5643923299
Fixed: Reverted in-memory signalr keypair in favor of a .config directory (#722) 2019-04-06 22:22:19 -04:00
Qstick c390fff361
New: Associate same AnonToken with Sentry UI instance (#724) 2019-04-06 22:22:05 -04:00
Qstick 9d27fff825 Fixed: Don't Error to New Page on Failed Login 2019-04-06 22:18:45 -04:00
Qstick d81b063388
Fixed: Don't throw error on Docker Update Attempt (#725) 2019-04-06 17:06:23 -04:00
Qstick 7bd96ae75c Fixed: Re-Clean Release Endpoints, we have ReadResourceFromRequest! 2019-04-06 00:36:26 -04:00
ta264 4be01a5a95
Disable update for docker containers (#715)
Also add docker info to about page and sentry context
2019-04-05 16:47:26 +01:00
ta264 6afece237c Fixed: Don't process tracked download if RemoteAlbum is null (#716)
Fixes LIDARR-1V4
2019-04-04 20:37:48 -04:00
Qstick 57df287547
Fixed: ReleasePush Validation and Error on Parse (#711)
* Fixed: ReleasePush Validation and Error on Parse

* Fixed: Validation on Release module, Catch Errors in format
2019-04-04 20:08:47 -04:00
ta264 d8a361dd91
Fix health check errors (#717)
* Fixed: RemotePathMappingCheck deals with case where path invalid

The `Ensure` built into `FileExists` and `FolderExists` was throwing
an exception previously.

* Fixed: RemotePathMappingCheck doesn't fail if client unavailable
2019-04-04 21:26:08 +01:00
ta264 e27369686b
A remote path mapping health check (#617) 2019-04-04 16:15:43 +01:00
ta264 0762805572
Fixed: Lidarr failing to start on linux if `which` missing (#714)
Fix startup failure when `which` missing
2019-04-04 15:32:58 +01:00
ta264 188e0e1040
New: Manual import improvements (#683)
* New: Manual import improvements

 - Detect and merge import with files already in library.
 - Allow selection of album release from Manual Import modal.
 - Loading indicator while fetching updated decisions

* Disable release switching if user manually overrode release
2019-04-04 09:20:47 +01:00
Qstick 61cea37f05 Fixed: Test for get_file_by_album Failing 2019-04-03 20:55:26 -04:00
ta264 390c79793e Fixed: Unparsable original year in tag 2019-04-01 08:30:43 +01:00
ta264 b23e7ec513 Fixed: If MusicBrainz release date is missing, also remove from tags 2019-04-01 08:30:43 +01:00
ta264 ef3005f2bb Fixed: GetFilesByAlbum should only return files for monitored releases
Since switching releases doesn't clear out trackfiles for unmonitored
releases, we need to ensure we only return files for monitored
releases otherwise we will return duplicates
2019-04-01 08:30:43 +01:00
ta264 225af556d9 Fixed: Don't set missing release dates to 0001-01-01 2019-04-01 08:30:43 +01:00
Qstick 77e4c99713
Fixed: 0.6 Analytics Bump 2019-03-31 11:57:44 -04:00
ta264 c314a94241 Fixed: Slack AlbumImportFailed notification (#710)
message.Album is null at the moment
2019-03-30 10:42:44 -04:00
Qstick 6b40a8d87f
Fixed: qBittorrent Fixes for Seed Limits and Magnet links (#702)
* Fixed: Qbittorrent Fixes for Seed Limits and Magnet links

* Fixed: We do Music, not TV
2019-03-28 19:52:09 -04:00
ta264 d5c69d0375
Set sentry environment to be develop/nightly based on config file (#703)
* Set sentry environment to be develop/nightly based on config file

Also add details on sqlite version and database migration.  The
separate ReconfigureSentry class is required because
ReconfigureLogging happens before the database has been resolved, so
you can't access IMainDatabase there

* Set environment to develop/nightly in frontend too
2019-03-28 09:26:39 +00:00
ta264 054d1600a2
Fix container and free space tests on mono (#704)
* Fix disk provider tests

* Fix container test on linux
2019-03-27 19:51:56 +00:00
ta264 038deb0e8d
Fixed: Tag writing when release country is missing (#700) 2019-03-27 07:49:32 +00:00
Qstick 7fd0089884 Fixed: Can't login with a username and a blank password
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2019-03-26 22:12:44 -04:00
Qstick a4d2ed6f31 Fixed: Queue count badge showing warning/error incorrectly 2019-03-26 21:52:13 -04:00
ta264 dbb08c15d2
Fixed: Album lookup API endpoint updated for new DB schema (#693) 2019-03-23 19:01:34 +00:00
ta264 6e4b1ba1fe
Fixed: MediaFileRepository was ignoring AlbumRelease monitored flag (#689) 2019-03-23 08:37:34 +00:00
ta264 b557f620d9
Fixed: Ensure Quality is always initialised in AudioTag.Read (#694)
* Fixed: Ensure Quality is always initialised in AudioTag.Read

* Fixed: Log quality message on fallback quality detection
2019-03-23 08:36:49 +00:00
Qstick 1bcee3ba97 Fixed: ArtistRepo Cleanup 2019-03-22 21:31:27 -04:00
Qstick 772bd88efa Fixed: OnImportFailure using OnDownloadFailure enabled notifications 2019-03-22 20:46:09 -04:00
ta264 c229d73ddc Fixed: NullReferenceException in NotificationService (#695) 2019-03-22 20:43:09 -04:00
ta264 580641a600
Fixed: Don't attempt to insert duplicate ids or monitor multiple releases (#684) 2019-03-22 09:33:48 +00:00
Qstick d4d9146599
New: Health Check Failure Notifications (#609)
* New: Health Check Failure Notifications

Fixes #295

* New: OnDownloadFailure and OnImportFailure Notification

* New: On Retag notifications

* Fixed: XBMC notification test

* New: Discord Notifications

Closes #1511

* On Download to On Import on card

* Remove OnDownload, Rename OnAlbumDownload -> OnReleaseImported

* Fixed: Webhook OnReleaseImport notification

* Respect OnUpgrade and fix missing schema items for frontend

* New: Simplify Notification Modal UI

* Fixed: PlexHomeTheater OnReleaseImport notification
2019-03-21 20:47:54 -04:00
Qstick 4d8bcd12e3
Fixed: Cutoff Specification not Respecting Profile Order (#660)
* Fixed: Cutoff Specification not Repsecting Profile Order

* Fixed: Incorrect wording in UpgradeAllowed logging

* Fixed: Change Logic to update if upgrade for any, downgrade for none.

* Fixed: Removed Double Preferred Word Logic

* New: Add Test Cases to Disk Upgrade Spec

* Fixed: Cleanup UpgradableSpecification

* Add ConcatToString extension and fix logging

* Fixed: Enum Naming, Commas
2019-03-21 18:02:16 -04:00
ta264 0ebaa90f54
Fixed: Actually filter TinyIoC errors from sentry and add tests (#685) 2019-03-21 16:45:37 +00:00
Qstick 2992ea60d8 New: Add Medium FileNameBuilder Unit Tests 2019-03-20 23:21:51 -04:00
Qstick 61cf1ccb7c
New: Already Imported Decision Specification (#661) 2019-03-20 22:14:27 -04:00
ta264 d552770da9
Fixed: Some bugs in new metadata writing (#677)
* Fixed: Don't fail reading m4a files when no 'day' tag set

* Fixed: Make sure Quality and MediaInfo are set if tag reading failed

* Add more tests for AudioTagService
2019-03-19 13:38:42 +00:00
ta264 bf32512fa2
Fixed: Make artist stats update when album (un)monitored (#673) 2019-03-15 21:48:50 +00:00
ta264 072f772dc8
New: Write metadata to tags, with UI for previewing changes (#633) 2019-03-15 12:10:45 +00:00
ta264 6548f4b1b7 Fixed: Filter TinyIoC.TinyIoCResolutionException from Sentry 2019-03-15 09:38:14 +00:00
Tom Andrews 36f34a4113 Fixed: Don't find album when multiple albums have the same name 2019-03-14 13:14:06 +00:00
Tom Andrews c500f7b943 Fixed: InvalidOperationException when two artists have same name 2019-03-14 13:14:06 +00:00
Tom Andrews 15425a45a3 Fixed: Null reference exception in CompletedDownloadService
Fixes Sentry LIDARR-1GW
2019-03-14 13:14:06 +00:00
ta264 1c7ded859b Fixed: More improvements to sentry logging (#669)
* Only add the exception message for some types

* Cleanse exception messages also

* Don't put exception message into log

It breaks the sentry grouping

* Combine the two calculations of fingerprint
2019-03-13 19:10:58 -04:00
ta264 d6b4c4a9ed
Partially recover databases for users for bad 023 migration (#670) 2019-03-13 12:15:55 +00:00
Qstick 60284f9ed8 Fixed: DriveInfo sees snap apps, handle at higher level 2019-03-11 21:41:44 -04:00
Qstick 13a2485972 Fixed: Microsoft.AspNet.SignalR.Client to same version as SignalR 2019-03-11 21:11:55 -04:00
Tom Andrews 26d1d78204 Fixed: Group sentry NRE events across platforms 2019-03-10 22:55:13 +00:00
Tom Andrews 1c63b04eb3 Fixed: Make fpcalc version check strict again now lsio updated 2019-03-10 22:55:13 +00:00
Tom Andrews 68b8ccc826 Fixed: NullReferenceException in GetAlbums 2019-03-10 22:20:24 +00:00
Tom Andrews 8109dfb0b7 Fixed: Remove unused GetAlbum following importer rewrite 2019-03-10 22:20:24 +00:00
ta264 902f0c115b
Fixed: Sentry version mismatch (#666)
* Downgrade to 1.0.3

* Fix ShortenPath when cross-compiled
2019-03-11 16:19:12 +00:00
ta264 c7a772363f
Pre-filter some events before sending to sentry (#654)
* Filter some errors from Sentry and add exception message to fingerprint

* Move to new Sentry SDK
2019-03-11 12:21:27 +00:00
Qstick 7d4d923903 Fixed: Some TV scrubbing 2019-03-09 21:34:25 -05:00
Qstick 0926862609 Fixed: Parse endpoint not correctly parsing releases 2019-03-09 21:19:10 -05:00
Qstick 8befd77f0f Fixed: Queue Details endpoint using wrong parameters 2019-03-09 21:00:06 -05:00
Qstick acfe2ceef4 Fixed: Change HttpClientFixture links to HTTPS 2019-03-08 22:15:18 -05:00
Qstick 6568eb5e99 Fixed: All preferred words being added to filename 2019-03-08 22:05:56 -05:00
Qstick 0a6f552d5b
New: Cleanup UI tooling, Update to Webpack 4, Gulp 4 (#655)
* New: Webpack 4

* New: Gulp 4

* New: Transpile UI for old browsers

Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2019-03-08 21:10:23 -05:00
ta264 fe3761fc2e Cache fingerprints and relax health check (#658) 2019-03-08 21:08:05 -05:00
Qstick 3292fba66c
New: Artist Disambiguation Naming Token (#652) 2019-03-06 21:07:21 -05:00
ta264 1f483c3a3c Add options to expand album types by default (#644)
* Add options to expand album types by default

* Remove isAfter and simplify slightly

* Fix display of settings on large screens
2019-03-04 20:16:56 -05:00
Qstick 1e48ea58b0
New: Add qBittorrent API V2 support, Indexer seed limit Support (#653)
* Fixed: qBittorrent api v2 support (qbit v4.1+)

Co-Authored-By: taloth <taloth@users.noreply.github.com>
Co-Authored-By: Mark Bebbington <mark@thebebs.uk>

* Fixed: Magnet Link progress visualisation and adding magnet links if dht is disabled in qBittorrent

* New: Indexer Seed Limit settings applied to new downloads for qBit

Co-Authored-By: taloth <taloth@users.noreply.github.com>

* Handle Deluge v2 beta breaking change in their api.

closes #2412

* Fixed: Codacy Format Issues
2019-03-03 21:53:46 -05:00
Qstick ee7addd624 Fixed: Queue returning nullref when RemoteAlbum null 2019-03-01 21:52:05 -05:00
Qstick 42c16c227e
New: Import List Exclusions (#608)
* New: Import List Exclusions

* Fixed: ImportExclusion ForeignId Checks, Unique. RefreshArtist Duplicate

* Fixed: Copy/Paste typos
2019-03-01 17:26:36 -05:00
ta264 b9cc94aa46 Fix: Don't use scene name for tracks when track naming disabled (#646) 2019-03-01 09:33:54 -05:00
Qstick 02218841d2 fixup! Fixed: SignalR requiring a home directory to function properly. 2019-02-27 22:09:34 -05:00
Qstick 1cc12446b6 Fixed: Include matching value of preferred word regex, not actual regex
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2019-02-27 22:09:08 -05:00
Taloth Saldono 7a66214c6e Fixed: SignalR requiring a home directory to function properly. 2019-02-27 21:49:59 -05:00
Qstick 3f064c94b9
New: Release Profiles, Frontend updates (#580)
* New: Release Profiles - UI Updates

* New: Release Profiles - API Changes

* New: Release Profiles - Test Updates

* New: Release Profiles - Backend Updates

* New: Interactive Artist Search

* New: Change Montiored on Album Details Page

* New: Show Duration on Album Details Page

* Fixed: Manual Import not working if no albums are Missing

* Fixed: Sort search input by sortTitle

* Fixed: Queue columnLabel throwing JS error
2019-02-23 17:39:11 -05:00
Qstick 46cb325406 Fixed: Groups must contain multiple qualities 2019-02-20 21:39:12 -05:00
Qstick 923fcd8b95 Fixed: Remove Series/Episode Reverse Title Checks 2019-02-20 21:11:27 -05:00
ta264 6cfc591364 Fixed: Extra tests and fixes for new track parser (#632)
* Extra tests and fixes for new track parser

* Address review comments, add extra test, fix logging
2019-02-19 20:16:09 -05:00
Taloth Saldono af65e251d8 Fixed error in unicode cleanup code removing most non-latin characters instead of just invalid ones. 2019-02-17 00:25:34 -05:00
ta264 bb02d73c42 Whole album matching and fingerprinting (#592)
* Cache result of GetAllArtists

* Fixed: Manual import not respecting album import notifications

* Fixed: partial album imports stay in queue, prompting manual import

* Fixed: Allow release if tracks are missing

* Fixed: Be tolerant of missing/extra "The" at start of artist name

* Improve manual import UI

* Omit video tracks from DB entirely

* Revert "faster test packaging in build.sh"

This reverts commit 2723e2a7b8.

-u and -T are not supported on macOS

* Fix tests on linux and macOS

* Actually lint on linux

On linux yarn runs scripts with sh not bash so ** doesn't recursively glob

* Match whole albums

* Option to disable fingerprinting

* Rip out MediaInfo

* Don't split up things that have the same album selected in manual import

* Try to speed up IndentificationService

* More speedups

* Some fixes and increase power of recording id

* Fix NRE when no tags

* Fix NRE when some (but not all) files in a directory have missing tags

* Bump taglib, tidy up tag parsing

* Add a health check

* Remove media info setting

* Tags -> audioTags

* Add some tests where tags are null

* Rename history events

* Add missing method to interface

* Reinstate MediaInfo tags and update info with artist scan

Also adds migration to remove old format media info

* This file no longer exists

* Don't penalise year if missing from tags

* Formatting improvements

* Use correct system newline

* Switch to the netstandard2.0 library to support net 461

* TagLib.File is IDisposable so should be in a using

* Improve filename matching and add tests

* Neater logging of parsed tags

* Fix disk scan tests for new media info update

* Fix quality detection source

* Fix Inexact Artist/Album match

* Add button to clear track mapping

* Fix warning

* Pacify eslint

* Use \ not /

* Fix UI updates

* Fix media covers

Prevent localizing URL propaging back to the metadata object

* Reduce database overhead broadcasting UI updates

* Relax timings a bit to make test pass

* Remove irrelevant tests

* Test framework for identification service

* Fix PreferMissingToBadMatch test case

* Make fingerprinting more robust

* More logging

* Penalize unknown media format and country

* Prefer USA to UK

* Allow Data CD

* Fix exception if fingerprinting fails for all files

* Fix tests

* Fix NRE

* Allow apostrophes and remove accents in filename aggregation

* Address codacy issues

* Cope with old versions of fpcalc and suggest upgrade

* fpcalc health check passes if fingerprinting disabled

* Get the Artist meta with the artist

* Fix the mapper so that lazy loaded lists will be populated on Join

And therefore we can join TrackFiles on Tracks by default and avoid an
extra query

* Rename subtitle -> lyric

* Tidy up MediaInfoFormatter
2019-02-16 09:49:24 -05:00
Qstick 37166f5399
Fixed: Re-evaluate Client/Indexer Checks on Provider Add (#605) 2019-01-26 20:58:46 -05:00
Qstick f827ba418c Fixed: MoveArtist logging a failure and a success message 2019-01-23 21:00:59 -05:00
Qstick 0e124af6ce
Fixed: Missing album types, typos in type/status (#593)
* Fixed: Missing album types, typos in type/status

* Update SecondaryAlbumType.cs
2019-01-18 23:35:49 -05:00
Qstick e4e677eea2 New: Limit provider backoff during the first 15 min of startup
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2019-01-12 16:00:22 -05:00
Taloth Saldono 232cfcb42f Fixed: Mono bug causing memory leakage when http connections use gzip
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2019-01-12 15:17:46 -05:00
Qstick d9034981c0 Updated: Sentry secret no longer needed 2019-01-12 15:08:30 -05:00
ta264 9185223f53 Fix more issues with migration 23 (#577)
* Tests for migration 23

* Make the migration more robust

For duplicate foreign Ids, create dummy id so correlated subquery
doesn't fail.

If we can't parse the release from the database, put in a dummy release.

* Be more careful with metadata refreshes

Make sure we deal with items that are not linked to the correct parent
2019-01-12 11:56:13 -05:00
ta264 1eea545c0a Remove typographic apostrophe (#586)
This is the preferred apostrophe on musicbrainz
https://beta.musicbrainz.org/doc/Style/Miscellaneous
2019-01-12 11:55:33 -05:00
gismo2004 42252bf9c2 Fixed: Search Monitored to work with accent (#583)
* Fixed: Search Monitored to work with accent

Replace accent in Album/Artist when parsing results from indexer
Fix regex to match for multiple albums

* add test cases
2019-01-09 21:04:40 -05:00
Taloth Saldono cb19fd3ea6 DataMapper LazyLoaded needlessly keeping the parent mapper alive. 2018-12-31 18:35:20 -05:00
Taloth Saldono 38507e6eb0 Fixed: Excessive memory usage due to sqlite cache configuration.
ref #2296
2018-12-31 18:34:40 -05:00
ta264 7a38f2853c Add release Id to custom script (#574) 2018-12-26 21:48:03 -05:00
Qstick ef9072fc3b
Fixed: Support new feed url format IPTorrents (#573) 2018-12-16 21:46:09 -05:00
ta264 6723f32abb WIP: Fix migration to DB version 23 (#571)
* Watch out for malformed AlbumReleases in Albums

Don't try to insert if Title is empty and catch and SQLite exceptions.

* Better fix for migration

Filter out null titles and duplicate release ids

Revert "Watch out for malformed AlbumReleases in Albums"

This reverts commit b9f707dc2f.

* Purge tracks linked to bad albumrelease

* fixup! migration missing titles, releases not in remote, artist cleaning
2018-12-16 01:00:17 -05:00
ta264 c392569a63 New: Update DB to store all releases for an album (#517)
* New: Store all releases for an album and track artists

* Add Overview, links and release date by release

* Tidy up

* Fix metadata refresh errors following musicbrainz edits
2018-12-14 19:02:43 -05:00
Qstick 91aaf8abe6
Update NzbDroneLogger.cs 2018-12-07 00:05:01 -05:00
Qstick 8465c2d227 Fixed: Replace one stupid hack with another. 2018-12-06 22:20:13 -05:00
Qstick 0596215358
New: Prevent Boot Loop if Config file Unauthorized access. (#554)
* New: Prevent Boot Loop if Config file Unauthorized access.

* Update NzbDroneLogger.cs
2018-11-30 21:30:28 -05:00
Qstick e914ca86dc New: Update SignalR to 2.4.0 2018-11-29 22:17:26 -05:00
Qstick 3cc1e7bb0f New: Added warning for Download Station that 2FA is not supported 2018-11-18 22:30:32 -05:00
Qstick 2f6b0c77ea Fixed: Updated error message if services respond with html
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2018-11-18 22:27:16 -05:00
Qstick 6da9868716 New: Added priority levels to Join Notifications 2018-11-18 22:21:12 -05:00
ta264 32c75cfcbc New: Manual import refreshes decisions when artist/album updated (#540) 2018-11-18 22:16:55 -05:00
ta264 d62b4e49f9 Fixed: Better release parsing (#541) 2018-11-18 21:59:54 -05:00
ta264 e260a29b57 Improve the fuzzy matching (#522)
* Fixed: improve track matching

* Deal with tracks sequentially numbered across discs
2018-11-16 12:46:46 -05:00
Qstick 8320508688 Fixed: TrackedDownloadFixture Un-parsable title 2018-11-11 02:19:50 -05:00
Qstick caac321ef9 Fixed: Add HistoryService Mock to Queue Fixture 2018-11-11 01:52:21 -05:00
Qstick 0099d9f430
Updated: NUnit and TestAdapter to 3.11.0 (#538) 2018-11-11 01:26:45 -05:00
ta264 c98b86b413 Fixed: Allow downloading any search result (#525)
* Allow downloading any search result

Ones that couldn't be parsed get a red icon

* Not required - initialized to false

* Add a warning the the queue page for manual downloads
2018-11-11 00:38:38 -05:00
Qstick 78a0b5f8b7 New: Setting to disable disk scan after artist refresh
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-11-10 23:50:21 -05:00
Qstick a7a2709517 Fixed: Missing bracket in PlexTv Service query
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-11-10 23:10:12 -05:00
ta264 6855a7848e Ignore .partial~ files (#535) 2018-11-10 09:50:37 -05:00
Max Harley deff1e31cb Update Apollo with Orpheus (#530) 2018-11-10 07:29:29 -05:00
Qstick 1eeb1bbf63 Fixed: Handling of poorly formed items when parsing results from indexer
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-11-05 20:41:29 -05:00
Qstick b7fe4193f3 Changed: Added "Remastered" to album cleaning regex 2018-10-24 20:34:21 -04:00
ta264 eadd6996ef Fuzzy matching (#508)
* Fixed: correctly match albums whose title is all special characters

* New: fuzzy matching on album and track names
2018-10-20 18:09:12 -04:00
Qstick 6103afcc09 Fixed: Exclude /snap/* locations from disk space
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-10-19 21:39:41 -04:00
Qstick 4347e92bef New: Add Test all functionality to API (Clients/Indexers/Lists)
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-10-16 22:05:40 -04:00
Qstick 1d1aca8fb7 Fixed: Naming of remoteAccessAdapter in OwinHostController
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-10-16 21:50:31 -04:00
Qstick 27736649c2
New: Import List Tags (#505)
* New: Import List Tags

* New: Show ImportLists where Tag is Used in Tag manager

* Fixed: SignalR Errors due to handleTag missing

* Fixed: Clarify Lidarr Tags, not to be confused with LastFmTags
2018-10-08 20:56:05 -04:00
Qstick b17cccd736 Fixed: Removed duplicate test cases 2018-10-07 18:25:46 -04:00
Qstick c95d3e0ecb Fixed: Language Parser Cases 2018-10-07 17:12:53 -04:00
Qstick a7108c079d Fixed: Backup API tweaks
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-10-02 22:15:53 -04:00
Qstick 5a57c0cf17 Fixed: Parsing for `Artist-Album-Year` release 2018-10-02 22:15:21 -04:00
Qstick dc1eb63099 Fixed: Album percentOfTracks named incorrectly 2018-10-02 21:03:52 -04:00
Qstick de224bcce5 Fixed: Avoid NullRef from ArtistStats when linking albumStats 2018-10-01 21:33:45 -04:00
Qstick 029e057c06 Fixed: Added Formatter cases for Wavpack and APE 2018-10-01 21:17:51 -04:00
Qstick 64a8d02f77
New: Server Side UI Filtering, Error Boundaries (#501)
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-22 23:10:50 -04:00
gismo2004 a95191dc3b Fixes: Headphones album search (#502) 2018-09-22 03:14:26 -04:00
Qstick e08f39ebe0
New: Setting to prevent download of early releases (#485)
* New: Setting to prevent download of early releases

* Fixup! Test and Wording
2018-09-20 22:21:26 -04:00
gismo2004 9b0a7c60ed Fixed: Improve TrackMatching when title is slightly longer/shorter than DB (#491)
* improve TrackMatching

* Add unit test for TrackMatching

* rename NormalizeEpisodeTitle to NormalizeTrackTitle

* correct typo
2018-09-18 21:29:45 -04:00
Qstick 56e1f53834
Fixed: Allow text in front of cleaned Album/Track tag (#498)
* Fixed: Allow text in front of cleaned tag

* fixup! Add another test case that shouldnt be matched.
2018-09-16 22:10:25 -04:00
gismo2004 29c52e47bb Use Album Disambiguation/Type when searching and picking releases (#490)
* Use Album Disambiguation/Type when searching and picking releases

* Add Disambiguations to AlbumQuery

* use string interpolation for AlbumQuery

* cosmetic change in log text
2018-09-16 11:32:42 -04:00
Qstick e0108352c8 New: Filter .DS_Store files from parsing
Fixes #489
2018-09-14 23:12:32 -04:00
Qstick 328795cb1f Fixed: Don't read response stream if it equals Stream.Null
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-14 22:44:56 -04:00
Qstick b5ecc4d209 Fixed: Episode reference in Parser.cs 2018-09-14 22:40:34 -04:00
Qstick 9c9fec70d8 Fixed: Validation for IndexerId on Release API Endpoint
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-13 22:29:28 -04:00
Qstick d61ba76574 New: Choose extension for magnet links in Torrent Blackhole
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-13 22:28:17 -04:00
Qstick 622e2de07d Fix: Last.Fm UserId message 2018-09-13 21:43:51 -04:00
Qstick a069ce40ad Fix: NMA Migration issue
For those that have not migrated yet.
2018-09-13 21:42:00 -04:00
Qstick c0c9d4363c
New: Last.fm User and Tag Import Lists (#478)
* New: Last.fm User and Tag Import Lists

* fixup! defaults and variable name
2018-09-11 23:00:45 -04:00
gismo2004 e155217165 Fixed: Newznab Artist search (#482)
* Fixed: Newznab Artist search

space is still not allowed
make code more readable

* add back the curly braces
2018-09-09 13:11:56 -04:00
gismo2004 91767c1462 Fixed: Newznab "400.BadRequest" (#481)
"space" is not allowed in request url
2018-09-08 13:15:53 -04:00
Qstick 812af82fae
Fixed: Search fails for many artist and albums with specials (#466)
* Fixed: Search fails for many artist/albums with specials

* fixup! Replace & with space

* fixup! Add two more test cases

* fixup! Add last test case

* fixup: Newznab test case
2018-09-04 22:55:08 -04:00
Qstick 23bc5b11cf Added: Device load support for Pushbullet
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-04 22:41:22 -04:00
Qstick e41f884153 Fixed: Updates to commandExecutingSelector 2018-09-04 22:40:26 -04:00
Qstick 68aaa49e9f Fixed: Filter mapped drives when running from service 2018-09-04 22:38:48 -04:00
Qstick 72dfae1cc9 Fixed: Container tests failing due to Lidarr.Api dep. 2018-09-02 01:08:04 -04:00
Qstick 6b45758fde New: Improved Plex Media Server authentication (Manually update settings)
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-09-02 00:42:03 -04:00
Qstick aab70b512d Fixed: Fix some api integration tests 2018-09-02 00:39:21 -04:00
Qstick 2a992f6c2b Fixed: Remove MediaBrowser metadata and pushalot 2018-09-01 23:37:55 -04:00
Qstick 9d2fbddc7d New: Cancel tasks in command queue 2018-09-01 23:11:19 -04:00
Qstick 61387b3d44 New: Album Release Date on queue screen 2018-09-01 23:10:23 -04:00
Qstick 60bb0ac063 New: Queued Task/Command List View
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-30 23:07:50 -04:00
Qstick 9a1660da51 New: Add stopped option for rTorrent
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-30 23:04:40 -04:00
Qstick ba96dad8c7 Fixed: UI and Command manager updates
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-28 23:01:02 -04:00
Qstick d9a51a1d02 Changed: Refactor ReleaseGroup Parser cases 2018-08-26 22:25:19 -04:00
Qstick c3d2769d3f Added: Parser case for Artist - Album - Year [Other] 2018-08-26 21:48:49 -04:00
Qstick 499af45566
Added: Monkey Audio and WavPack support (#455)
* Added: Monkey Audio and WavPack support

* fixup! Add test case, fix typo
2018-08-26 21:11:07 -04:00
Qstick 894385747e Fixed: Mbid lookup doesnt return existing properties if in db.
Fixes #459
2018-08-26 21:03:46 -04:00
Qstick b506fd3ab7 Fixed: UI fixes from Sonarr
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-26 00:39:04 -04:00
Qstick 6eafffeb2c Fixed: Return artist properties for existing albums during album search
Fixes #457
2018-08-25 23:01:39 -04:00
Qstick a56e2edb74 Fixed: Concurrent manual imports silently failing
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-18 21:48:32 -04:00
Qstick ef7d54a412
Fixed: Handle Gazelle NullRef (#447) 2018-08-13 19:48:26 -04:00
Qstick 36b2942cef Added: Allow folders without trailing slashes in file browser
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-08-10 20:46:34 -04:00
Qstick ed94d47cdd Fixed: Too big eta in qbit api still occurring on official builds
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2018-08-07 21:24:26 -04:00
Qstick 6581b3a2c5
New: UI Updates, Tag manager, More custom filters (#437)
* New: UI Updates, Tag manager, More custom filters

* fixup! Fix ScanFixture Unit Tests

* Fixed: Sentry Errors from UI don't have release, branch, environment

* Changed: Bump Mobile Detect for New Device Detection

* Fixed: Build on changes to package.json

* fixup! Add MetadataProfile filter option

* fixup! Tag Note, Blacklist, Manual Import

* fixup: Remove connectSection

* fixup: root folder comment
2018-08-07 20:57:15 -04:00
Qstick e6a43b2dc0
New: Added album disambiguation to UI and Naming [ex. Weezer (Blue Album)] (#431) 2018-07-20 18:33:56 -04:00
Qstick 9aa40f546f
New: Added optional UrlBase to Nzbget, Sabnzbd, and Subsonic settings (#428)
* New: Added optional UrlBase to Nzbget, Sabnzbd, and Subsonic settings

Fixes #386

* fixup! Remove commented code
2018-07-18 19:05:01 -04:00
Qstick 219f7c0f31 Fixed: Ignore /etc in System disk overview
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2018-07-17 22:36:45 -04:00
Qstick 674e1196b3 Added: Try Tag Parse with and without "Promo"
Fixes: #408
2018-07-17 22:14:05 -04:00
Qstick a9d66133a6 Fixed: Dowload client category validation messages not showing 2018-07-17 21:16:39 -04:00
Qstick 274df2f1ed Fixed: Skip torrents in Deluge api that don't have hashes 2018-07-17 21:04:10 -04:00
Qstick 5ce214aa8a New: Update SignalR to 2.3.0 2018-07-14 03:28:59 -04:00
Qstick ff479ad170 Fixed: RootFolderSelect never uses provided initial value.
Fixes #412
2018-07-07 22:58:06 -04:00
Qstick cee1b33c60 Fixed: Forced seeding in QBittorrent status treated as complete
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-07-07 21:55:07 -04:00
Qstick 6cc05fcca3 Added: Log indexer response to Trace if an exception occurs
Co-Authored-By: taloth <taloth@users.noreply.github.com>
2018-06-19 21:44:11 -04:00
Qstick 7db8226099 Fixed: Initially pausing torrents in QBittorrent
Co-Authored-By: Mark McDowall <markus101@users.noreply.github.com>
2018-06-19 21:36:52 -04:00
Qstick 14fcef8ec0
New: Updated NewtonsoftJson to 11.0.2 (#387) 2018-06-01 22:56:15 -04:00
Qstick 089d213816
New: Nested Settings and Seed Ratio Setting (#379)
* New: Nested Settings and Seed Ratio Setting

* Fixed: Sonarr related variable naming
2018-06-01 21:59:54 -04:00
Daniel Underwood d7d4f62737 Changed: Force album refresh when artist refresh manually triggered (#374)
* Force album refresh when artist refresh manually triggered

* Refresh albums on single artist refresh
2018-05-28 03:49:34 -04:00
Qstick d15d5ae6ba
Fixed: Sonarr references in RemoteAccessAdapter.cs 2018-05-27 23:22:37 -04:00
Qstick 030deaf6ef
New: Expand OnAlbumDownload, Add Synology handling (#372)
* New: Expand OnAlbumDownload, Add Synology handling

Fixes #324

* fixup: small naming correction

* fixup: Tests for Synology
2018-05-27 00:55:43 -04:00
Qstick 26d9c4ca3e New: Allow 'mbid:' in search
Fixes #369
2018-05-26 23:41:17 -04:00
Qstick ff77eab156
Chagned: Remove NMA Notifications (#371) 2018-05-26 23:31:58 -04:00
Qstick 3344810653
New: Add Subsonic library update and notify (#368)
* New: Add Subsonic library update and notify

* New: Subsonic setting for to allow connection via SSL
2018-05-26 19:40:18 -04:00
Qstick 598e3eb23b New: Added iTunes new albums, AppleMusic Top and New Lists 2018-05-25 21:54:38 -04:00
Qstick 73157534e0
Fixed: Don't download artist images if match existing (#362)
* Fixed: Don't download artist images if existing exists

* fixup: Wrap FileSetWriteTime in try

* fixup! Tests and Rework
2018-05-24 21:08:35 -04:00
Qstick 2969decf95 Fixed: Tests for refresh intervals 2018-05-22 23:03:31 -04:00