Commit Graph

244 Commits

Author SHA1 Message Date
ta264 072f772dc8
New: Write metadata to tags, with UI for previewing changes (#633) 2019-03-15 12:10:45 +00:00
Tom Andrews 68b8ccc826 Fixed: NullReferenceException in GetAlbums 2019-03-10 22:20:24 +00:00
Qstick 7d4d923903 Fixed: Some TV scrubbing 2019-03-09 21:34:25 -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
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
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
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
ta264 d62b4e49f9 Fixed: Better release parsing (#541) 2018-11-18 21:59:54 -05:00
Qstick b7fe4193f3 Changed: Added "Remastered" to album cleaning regex 2018-10-24 20:34:21 -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 5a57c0cf17 Fixed: Parsing for `Artist-Album-Year` release 2018-10-02 22:15:21 -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
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 674e1196b3 Added: Try Tag Parse with and without "Promo"
Fixes: #408
2018-07-17 22:14:05 -04:00
Daniel Underwood 116d3d22bb Fixed: Escape regex in ParseAlbumWithSearchCriteria (#244)
* Add regex escape to fix #231

* Add escape to artist name

* Fix test case

* Use single album parameter and add test cases

* Add artist test cases

* Add qualities to release titles

* Create albums in ParserFixture

* Added missing case in QualityParser. Handle escaping regex better for artists/albums that are just symbols.

* Removed custom code to escape slashes. Enhanced regex to support more test cases.

* Fixed Regex for other test cases.

* Small enhancements to code. Removed log statement.

* Tweaked one of my regex to account for not stripping ? from SimpleTitleRegex.
2018-04-21 09:40:23 -04:00
Joseph Milazzo b661344ba8
Parser Enhancements (#291)
* When matching tracks with metadata, ensure we also check their track number as some albums have two tracks with same title.
2018-04-13 06:30:56 -05:00
Joseph Milazzo 734b1f6101
Added cases to strip feat. from track titles. (#288)
* Added cases to strip feat. from track titles.
2018-04-09 20:37:56 -05:00
Qstick c7ef370060 Added: Add Limited Edition to Album Tag Cleaning
Fixes #282
2018-04-07 22:47:04 -04:00
Qstick e5c5a3f91c Fixed: Some Tests, Ignore failing Unit Tests that are not implemented. 2018-04-07 01:22:14 -04:00
Joseph Milazzo e9097b8dc6 Check for MusicBrainz Release Id during Scan (#227) (#277)
* Implemented functionality to find album from DB if a track has album in the MusicBrainz Release Id tag. If tag doesn't exist or album is not found, handle via normal routes.

* Added a test case

* Fixed a bad merge.

* Fixed a bug where a track with an empty Album IDv3 tag always was ignored, even if it had MusicBrainz Release Id hardcoded.

* fixup: Quick fixes to get this merged tonight due to bug in develop
2018-04-07 00:52:28 -04:00
Joseph Milazzo aaa3b5495f
Feature/common tag parsing (#273)
* Added refresh title on the refresh button.

* Added a quick fix for common parsing issues when albums or tracks contain (special edition), (deluxe edition), [bonus], (version), (single), etc.
2018-04-05 19:31:58 -05:00
Joseph Milazzo 798e85e4db Implemented parsing case for Artist - Year - Album (#264) (#274)
* Implemented parsing case for Artist - Year - Album

* Enhanced test case to ensure year and artist also parse correctly.
Closes #264
2018-04-04 19:02:06 -04:00
Qstick 121eb6db16 Fixed: Quality Parsing for VBR Fails in many cases
Fixes #258

Co-Authored-By: taloth <taloth@users.noreply.github.com>
2018-03-25 23:08:05 -04:00
Qstick 28a508bed7 Fixed: Remove xpost suffix from release groups 2018-02-09 23:23:27 -05:00
Qstick 37d1ed4a48
Fixed: Grab discography during artist search (#208)
Closes #184
2018-02-10 05:03:12 +01:00
Qstick 750ecacb9b Fixed: Remove Pre and postbot suffixes from release groups 2018-02-03 21:59:29 -05:00
Qstick 3e476f2637 New: Add basic ruTracker parser cases 2018-02-03 21:25:17 -05:00
Qstick ec12bede9d Fixed: Cleanup 11 more tests 2017-12-30 01:09:10 -05:00
Qstick fdb7c96ffa Fixed: DownloadedTrackImport Fixture Tests and ParserFixture Tests
#166
2017-12-24 21:45:28 -05:00
Qstick a4dacf2812 Fixed: Language Upgrade Tests 2017-12-24 01:22:48 -05:00
Qstick 8b7b2e6a83 Fixed: QueueSpecificationFixture Tests and Misc Others 2017-12-24 00:34:21 -05:00
Qstick 66d3fd17e9 Fixed: Search Criteria parsing returns bad results (Abba/Black Sabbath) 2017-12-21 23:16:36 -05:00
Qstick 882e8a575e
Re-enable unit tests in appveyor (#159)
* Re-enable unit tests in appveyor

* Delete SingleEpisodeParserFixture.cs

* fixup! Oops

* Fix multiple tests

* Fixed Language Tests

* Couple More Simple Test Fixes

* Last Round of Test Fixes

* More test Cleanup

* Fix 3 Newznab Tests
2017-12-21 23:00:16 -05:00
Qstick 0f17569908 Fix Discography Recognition and Add Parser Test 2017-12-11 21:00:45 -05:00
Qstick 10b8174726
Extend Qualities and Setup Default Groups (#127)
* Extend Qualities and Setup Default Groups

* fixup! Extend Qualities

* fixup! Codacy

* fixup! One more
2017-11-20 19:20:21 -05:00
Qstick 21428cba6f
Medium Support (Multi-disc Albums), Quality Grouping (#121)
* Multi Disc Stage 1 - Backend Work

* Quality Group Functionality

* Fixed: Only show wanted album types on ArtistDetail page

* Add Media Count Column to ArtistDetail Page

* Parser updates for multidisc cases, other usenet release title formats

* Search for Tracks by Medium Number in Addition to Title and TrackNumber

* Medium Renaming Token for Track Naming

* fixup Codacy and Comment Cleanup

* fixup remove comments
2017-11-15 21:24:33 -05:00
Qstick b5a8c342e5 Cleanup Sonarr Regexes from Parser.cs 2017-11-01 21:23:29 -04:00
Qstick a80360f6fd Remove Remaining TV Code 2017-10-18 21:42:57 -04:00
Qstick 42e25055a9 Rework Tests for Music, Start TV Code Cleanup 2017-10-17 22:55:02 -04:00
Qstick f8f988a083 Misc Sonarr Pulls 2017-10-07 23:54:13 -04:00
Qstick 4aa5a35cb4 Added -Scrambled to the ReleaseGroup cleanup list
Sonarr f8d5f1fc9
2017-09-27 22:07:35 -04:00
Qstick ab9a9232cf Sonarr Pulls
'e4c341898
'5613ab05e
'372442af2
'28c45f941
'ea1616586
2017-09-25 22:31:52 -04:00
Qstick 95051cbd63 Initial Commit Rework 2017-09-05 23:00:26 -04:00
Qstick 9fba2458d8 Remove TV search commands (#68)
* Remove TV search commands

Remove TV search commands

* Cleanup Newznab, Fix variable name in IntegrationTests
2017-08-27 16:24:44 -04:00
Qstick 1e4d9480e9 Implement Release Parsing, Decision Engine, and Downloading (#35)
* Implement Parsing, Decision Engine, and Downloading
2017-08-13 22:58:42 -04:00
Joseph Milazzo ef4da4ac9f Track Parsing Code (#10)
* We now have the ability to import local tracks into Lidarr. Switching to IDv3 tag reading over custom parsing for local tracks.

* Stable code for track refresh.

* RefreshArtist and RescanArtist events are working correctly. Need to add potential rejection decisions in future.

* Implemented code comments

* PR comments and fixing some odd db bugs.

* Fix some conflicts after Unit Test PR Merge

Fix some conflicts after Unit Test PR Merge

* Track/Album Add and Update Fixes

Track/Album Add and Update Fixes

* Fixed an issue with trackimport looking up trackId instead of artistId

* Add Handle to TrackService for TrackAddedEvent

Add Handle to TrackService for TrackAddedEvent

* Update Quality Regex, Store BitRateMode in TrackFile

Update Quality Regex, Store BitRateMode in TrackFile
2017-07-03 13:39:06 -05:00
d7ad9b8218 Support music qualities. This is a work in progress, lots of code still references tv series 2017-05-07 19:07:19 -07:00