Commit Graph

547 Commits

Author SHA1 Message Date
Taloth Saldono 26c8768931 New: Removed libcurl http fallback since mono 5.16+ doesn't need it. Also bumped minimum mono version check to 5.16 (5.20 is the best choice atm) 2019-08-31 17:18:18 +01:00
Qstick 070e50d39e Fixed: Fix a few compiler warnings 2019-08-25 14:37:08 -04:00
ta264 f1fc45fa99 New: Migrate to new csproj format 2019-08-24 17:31:58 -04:00
ta264 e095fe00af Fixed: Delete unreferenced files 2019-08-24 17:31:58 -04:00
ta264 ee7d47d044 Fixed: All the tests 2019-08-24 15:45:55 -04:00
Taloth Saldono aa794a7155 Fixed: Workaround for mono 5.16+ bug preventing the closure of sockets on timeouts (Jackett connections)
ref #2802
2019-08-15 22:18:39 -04:00
Qstick 6932046c5f New: Set up CI with Azure Pipelines (#897)
* Set up CI with Azure Pipelines

[skip ci]

* Remove Travis, Build Multiple Environments

* Change Task Type to Bash

* Checkout submodules

* Remove Appveyor Tests, Add Azure Tests

* Oops Forget Steps

* bad name

* test script fixes

* add tests to build job

* fixup tests

* name test runs

* fpcalc and artifacts

* Try to fix installer

* Publish separately

* Try publish

* Another go at artifacts

* Tidy up

* Add sentry, assembly info patching and bump version

* Only patch one AssemblyInfo; set node version 10

* Try pipeline artifacts again

* Tidy up - pipeline artifact seems to be way forward

* Fix installer publish

* first go at test job seperation

* job names and depends/consitions for tests

* pusblish single file test artifact

* pipeline artifact for test

* blitz the pattern filter

* windows test jobs

* mac tests, checkout on test jobs

* try to download build artifact to test job

* download and extract artifact

* Set LD_LIBRARY_PATH and print some sqlite debug info on mac tests

* fixup! tests

* integration test fixes

* fixup! integration test fixes

* fixup! integration test fixes

* more fixup

* use bash cp

* test fixups

* mkdir before copy

* linux works! add osx integration tests

* im tooo tired

* coverage attempt

* coverage seperate stage

* windows paths for integration test

* switch coverage to windows where opencover actually works

* fix test script

* one last go

* Simplify installer, try to fix name

* Try to parallelize backend and frontend build

* Try adding a matrix

* Try matrix jobs not stages

* Try to fix package step

* Remove opencover install

* Try to fix tests

* coverage fixes

* revert build.sh changes

* triggers so we don't double build

* Publish coverage package so we can debug

* try coverage no build, output artifact

* use the full pipeline workspace from build job

* fix automation tests for new ui

* Assorted fix attempts

* Another go

* MacOS debug

* Tidy up, try to fix mac

* Fix mac fpcalc, add mac integration tests

* Add cross platform automation tests

* Fix packages

* Try to fix Automation tests

* Don't wait on the installer to create standard packages

* Fixes

* delete logentries reference

* run automation tests in headless mode

* try install firefox mac

* Revert "try install firefox mac"

This reverts commit 4684bb19018747cb00407e1d8df64391f44f5183.

* test sonarcloud prepare outputs

* basic analyze and upload

* don't limit fetch depth on analyze

* manual scanner do front and backend?

* full analyize with tests, coverage

* should depend on tests, coverage

* no need for condition on coverage

* Fix up build numbering

* Try to fix sonar

* Separate coverage calculation and publication

* Try to fix coverage upload
2019-08-13 13:15:59 -04:00
ta264 3c1b3434c7 Fixed: Build on mono 6
Removed LogEntries which is unused
2019-08-03 14:40:34 +01:00
ta264 fb26ff286d New: Bump Newtonsoft.Json to 12.0.2 2019-07-29 18:37:38 +01:00
Qstick 802f7f96c0 Fixed: Follow Temp Redirects 2019-07-27 10:57:13 -04:00
Mark McDowall 2ce0fadb65 Clean up FirstCharacterToLower extension + tests 2019-07-25 13:39:35 +01:00
Mark McDowall b9d240924f New: Command line arguments for Custom Scripts are no longer supported 2019-07-25 13:39:35 +01:00
Mark McDowall b8b8f064c7 FirstCharToLower 2019-07-25 13:39:35 +01:00
ta264 5ac46270ed New: Set KeepAlive for metadata requests 2019-07-24 19:34:27 +01:00
ta264 0f6a3bca0c New: Sentry to 1.2.0 2019-06-10 11:38:34 -04:00
Qstick 4eb815aa0e New: Migrate to PackageReference Format 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
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 499ec06664 Fixed: Throw Startup Exception on Same Port for SSL 2019-05-04 20:28:48 -04:00
Qstick 5643923299 Fixed: Reverted in-memory signalr keypair in favor of a .config directory (#722) 2019-04-06 22:22:19 -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 e27369686b A remote path mapping health check (#617) 2019-04-04 16:15:43 +01:00
Qstick 77e4c99713 Fixed: 0.6 Analytics Bump 2019-03-31 11:57:44 -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
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
ta264 6548f4b1b7 Fixed: Filter TinyIoC.TinyIoCResolutionException from Sentry 2019-03-15 09:38:14 +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
Qstick 60284f9ed8 Fixed: DriveInfo sees snap apps, handle at higher level 2019-03-11 21:41:44 -04:00
Tom Andrews 26d1d78204 Fixed: Group sentry NRE events across platforms 2019-03-10 22:55:13 +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 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 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
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
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 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 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
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
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 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
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 68aaa49e9f Fixed: Filter mapped drives when running from service 2018-09-04 22:38:48 -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 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