Commit Graph

60 Commits

Author SHA1 Message Date
Nathan Holland 571c52a0f2 Feature/netcore preparation (#2072)
* Use platform detection that works on mono 4.6+

* Move to use package reference for restoring nuget packages.

* DateTimeRoutines does not have Nuget packages that support .NET Standard (and therefore .NET Core). We will have to include them for now until we can get rid of this dependency.

* Start spliting some interfaces into their own files - this will help by allowing us to split them out in the future into a seperate project so the actual implementations can stay within their respective architectures when required

* Move out common libraries

* Few more tidy up tasks to get things working with .NET Standard

* Restructure the solution layout

* Encoding work to reduce rework later on platforms without Windows codepages (or require compliance with RFC1345)

* Move folder structure around to have more natural layout of the solutions

* DI server configuration to get rid of "temporary" hack and dependency circle for serverservice

* Make all encoding consistent to match the expected encoding casing for earlier versions of mono.
2017-11-05 20:42:03 +11:00
Nathan Holland 8a6b9d4de7 Feature/netcore preparation (#2035)
* Move to use package reference for restoring nuget packages.

* Return a task result for this async method.

* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.

* Set the solution to target VS2017

* Update test solution csproj file to support being built through MSBuild 15

* Move to use package reference for restoring nuget packages.

* Return a task result for this async method.

* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.

* Set the solution to target VS2017

* Update test solution csproj file to support being built through MSBuild 15

* DateTimeRoutines does not have Nuget packages that support .NET Standard (and therefore .NET Core). We will have to include them for now until we can get rid of this dependency.

* Move the interfaces into their own files. This will be useful when we share them between the .NET Core and .NET Framework WebAPI

* Stage services that need to point to the new interface namespace.

* Update CurlSharp to fix memory leak issue and support better runtime compatibility with OSX and Linux

* Start spliting some interfaces into their own files - this will help by allowing us to split them out in the future into a seperate project so the actual implementations can stay within their respective architectures when required
2017-10-29 21:19:09 +11:00
flightlevel e93d8f0f7c
Code Tidy: Indexers A to N (#2032)
* Code Tidy: Indexers A-B

* Code Tidy: Indexers C to H

* Code Tidy: Indexers I-N
2017-10-29 17:21:18 +11:00
kaso17 3011f22101 MoreThanTV: add season filtering 2017-10-17 19:10:53 +02:00
kaso17 d2d3dfbe77 MoreThanTV: improve search results 2017-10-03 13:03:25 +02:00
flightlevel f6272032a6 MoreThanTv: Improve Number parsing (#1618)
Fixes #1616
2017-08-05 11:20:50 +10:00
chibidev 9e3076dde6 I have a feeling I'm breaking the world and bringing the apocalypse
It's quite hard to encapsulate something this large. This refactor
contains multiple attacks on the current architecture and is changing
things that were probably created quite a while back then. Luckily this
was done in increments so it mustn't be that impossible to recall what
has been done. I just need to relax my memory a little bit.

So the basic idea was quite simple. Let's distingush metas and normal
indexers a little bit more. Both of them were originating from
BaseIndexer, however very little of the functionality was actually
shared between them. Actually quite a few things made it even harder to
implement a different kind of indexer, especially for a newcomer for
both Jackett and C#.

Then in order to further reduce whatever was encapsulated in
any kind of, a couple things had to be changed. Like CardigannIndexer,
which probably had quite a mindshift change. IndexerManager and the
configuration management were also encapsulated and refactored, and now
I have a feeling that although the code could be improved, at least the
responsibilities of services and what they actually do is now clearer.

Anyhow, it would be safe to assume that I will not be able to go
step-by-step and define everything that has been changed. I'm sorry.
2017-07-11 21:53:46 +02:00
kaso17 9ef9302808 MoreThanTV: fix complete season searching 2017-07-08 15:23:36 +02:00
chibidev 4a0d2dcc57 Feature/metaindexer torrent download improvement (#1517)
* Line endings...

* Improve download handling of torrents in metas

Until now, downloads were handled by metas, however they had to "guess"
which indexer the result was originating from and resolve to that
indexer. While this has been working without an issue, it really
shouldn't be considered stable.

Therefore indexers now link themselves to the results they provide. In
order to keep my sanity and automate this as much as possible, I had to
slightly modify the interface (sorry, everyone).
2017-07-03 07:15:47 +02:00
chibidev 345602926e Feature/cleaning up aggregate indexer fallback (#1507)
* Line endings...

* Refactoring how MetaIndexers handle fallbacks

Originally this modification was part of a much larger refactoring,
however for the sake of reviewability I split it into smaller chunks.
Sadly it is still quite large.
I wanted to split it even more, however after a certain point there was
really no value in creating smaller chunks. The biggest part of this
modification would be still huge.

So all in all, there're 3 aspects of this modification
- It modifies BaseIndexer so that it now implements IIndexer (will be
very useful later on)
- Resolving most of the warnings currently in Jackett (the only ones
remaining are related to Autofac, however if I could I would just burn
Autofac altogether rather than fix the warnings. Will open discussion on
this.)
- Biggest part: refactoring how MetaIndexers handle fallbacks and how
they provide the final result set

MetaIndexers now accept any kind of fallback and filtering mechanism
that implements the necessary interface, so that in the future IMDB
fallback and filtering won't be the only one. I know there are not a lot
of unit tests around Jackett at the moment, however this renders the
class much more unittestable as well.

* Autofac started complaining... I don't understand...
2017-06-28 07:31:38 +02:00
kaso17 a96b7cfca9 MoreThanTV: improve search of multiple episodes of a season 2017-04-30 09:38:10 +02:00
flightlevel 14f530a32c MoreThanTv: Add Other category (#1292) 2017-04-17 14:22:00 +10:00
flightlevel f2def1f615 Normalise Line endings (#1284)
* Add .gitattributes

* Normalise line endings
2017-04-15 18:45:10 +10:00
kaso17 2561415847 MoreThanTV: add auto re-login 2017-03-03 18:52:19 +01:00
kaso17 87d3fd9443 Add initial support for multiple categories and 1:1 category mapping 2017-02-21 13:07:54 +01:00
kaso17 50c3a5fb3a Add support for tracker type (private/public/semi-private) 2017-01-27 16:57:32 +01:00
majorearnest 750f857fb7 Fix TV search for MoreThanTV (#970) 2017-01-21 16:39:12 +11:00
kaso17 f99e104755 Make site link configurable for all indexers 2017-01-02 21:39:28 +01:00
kaso17 384c76e27d Add missing languages/encodings 2016-12-09 18:20:58 +01:00
kaso17 0dd2dcf497 MTV: Fix size 2016-12-08 07:31:31 +01:00
kaso17 d499c291b9 WebRequest: make encoding configurable (#816) 2016-12-06 14:56:47 +01:00
flightlevel d2f0e5ada7 MoreThanTv: Fix Times (#719)
Times are UTC, convert to local time
2016-11-21 19:46:53 +11:00
kaso17 f0a302f7f4 Fix group_torrent files parsding (#614) 2016-11-01 08:55:49 +01:00
kaso17 3dfe2faa6b Add new attributes to various trackers (#583)
* Use AvistazTracker base

* Revert "Use AvistazTracker base"

This reverts commit 9eba02c758.

* Add new attributes to various trackers

* more DL factors for HDSpace

* new attributes for Fuzer

* add new attributes for ImmortalSeed

* set UploadVolumeFactor for myAmity

* add new attributes to bitmetv
2016-10-27 18:35:31 +11:00
Mike aa1e31a110 Rewrote MoreThanTV indexer (#477)
* MTV: Rewrote searching for torrents. Modified title output so sonarr can actually download seasons.

* MTV: Add individual torrent parsing and cleanup.

* MTV: Remove TODO as it's already done.
2016-09-03 12:04:08 +10:00
flightlevel 89460f1c73 MoreThanTV: Fix season search
MoreThanTV: Fix season search
2015-11-18 22:55:00 +11:00
flightlevel 3a0d814903 MoreThanTV Decode Response
MoreThanTV Decode Response to fix issue
https://github.com/zone117x/Jackett/issues/235
2015-10-30 20:10:15 +11:00
KZ bb7fb1ec37 Fix morethan 2015-10-12 19:58:40 +01:00
unknown 748d85f32f Implemented indexer configuration result status to prevent double query test on some indexers 2015-08-22 14:57:13 -06:00
KZ 98446222c9 Metasearch , fix for empty queries being converted to a single space, parent categories are now autoexpanded. 2015-08-14 22:20:51 +01:00
KZ c6cb71639b Morethan category mapping 2015-08-13 23:41:21 +01:00
KZ e007d321f6 Prefilter couchpoato results 2015-08-11 19:48:25 +01:00
KZ 6d0aa05761 Saved password security 2015-08-07 20:09:13 +01:00
unknown 0a8d9d3447 Abstracted & unified indexer config logic (logins are now saved), implemented indexer config migrations, fixed nCore implementation 2015-08-03 15:38:45 -06:00
unknown 478c41fed6 Fixed BitMeTV login, fixed failed login callback failing if async 2015-08-02 11:28:59 -06:00
KZ 37cf3e569c Fix AnimeBytes caps, Change to 4.5 #117, change all trackers to retry failed requests 2015-07-29 18:47:51 +01:00
KZ ea069810a5 Add indexer: Immortalseed. Add category mapping framework. 2015-07-29 00:10:04 +01:00
KZ 51042e91fc Indexer refactor complete. This is going to need lots of testing! 2015-07-28 00:06:49 +01:00
unknown 738f6732a7 Fixed extra slashes in URLs 2015-07-24 18:41:24 -06:00
KZ f31f89037c Various bugfixes. 2015-07-24 22:38:31 +01:00
KZ 960720b3e4 Added UI for allowing external access, stop server listening on the old port when changing ports. Config migration bug fixes. 2015-07-24 20:15:08 +01:00
KZ 1622f40942 Passwords inputs are now the correct type. Fix configure_indexer not returning errors. Fix build warning. Change AB, HDT, MTTV, PHD, ST to use generic web client. 2015-07-23 21:36:23 +01:00
unknown a9f1daac73 Implemented torznab capabilities feature 2015-07-19 17:05:30 -06:00
KZ 75f0cce064 Change indexers to use new api 2015-07-19 18:18:54 +01:00
KZ e1c70b1e30 Reinstate changes from merge 2015-07-19 15:22:26 +01:00
KZ f2be137836 Undo Organizational improvements and build warnings fixed 2015-07-19 14:56:48 +01:00
KZ 1359ad16f0 Refactor done 2015-07-19 14:22:50 +01:00
unknown 03843c8833 Organizational improvements and build warnings fixed 2015-07-18 19:03:24 -06:00
KZ 33a97b148f Refactor 2015-07-19 01:27:41 +01:00
unknown 7f2aa4ccad Refactored to use the RageID lookup disabled, removed Sonarr API setup 2015-07-18 14:35:02 -06:00