* Tweak BB indexer
Remove explicit tracker URL
Add tracker-specific season query
* Query for "S##" and "Season #" simultaneously on bB
* Fix tabs/spaces
* Rewrite title from "Season #" to "S##"
* Fix bug
Fix bug where searching for whole shows would rewrite Season # to S00, since no season was specified.
* Add new categories mappings
So that e.g. headphones can correctly query bB for music
* Introducing API v2
There were multiple inconsistencies in the old API and I have been
toying with the idea to replace it. This will suck for everyone who was
building on top of the Jackett API, however as it was probably too
painful to do so I'd say no one really tried.
Now API v2.0 should be much more constistent as it uses DTObjects, and
instead of manually constructing a json response it is handled by the
ASP.NET web api. It is much more RESTful than it was, proper GET
endpoints are introduced, and updating resources are now done via POST -
it might be improved by introducing other type of REST methods.
I know this sucks as completely breaks backward compatibility, however
it'll probably make it easier to maintain and build on top of in the
long run.
* Use DELETE method to unconfigure an indexer
* Remove debugging format from NLog
* Fixing an null exception
* Properly implementing IExceptionFilter interface
* Enable adding public indexers without configuration
* Fix missing manual search results
* Basic modularization of the JS API
* Introduce API versioning
* Fix redirects to the dashboard
* Cleaning up a little bit
* Revamping Torznab and Potato as well
* Move preconditions to FilterAttributes and simplify logic
* Remove legacy filtering... will move to IResultFilter
* Minor adjustment on results interface
* Use Interpolated strings in ResultsController
* DTO-ify
* Remove fallback logic from potato results
* DTO everywhere!!!
* DTO-ify everything!
* I hope this is my last piece of modification to this PR
* Remove test variables...
* Left out a couple conflicts... It's late
AnimeTosho failed to populate the Origin field of the results when
searching thereby creating an issue upon creating the proxy link. This
was mainly because an IEnumerable can contain a deferred LINQ query as
well (e.g. in the case of AnimeTosho a Select) that will re-execute
every single time. So when iterating over IEnumerables we cannot really
pose any assumption on what we are dealing with, so either explicitly
force an execution (e.g. via ToList), or use LINQ queries as well. Since
the second is probably more performant, let's stick with that.
To get a larger number of results, users should increase the number on the website, similar to how it's implemented for TorrentLeech. Since TorrentBytes can be slow at times, making one large request will not be that much slower from one small request, but will nearly half the time taken compared to two smaller requests.
You can now pass a parameter to the dashboard which will immediately pop
the search box and start searching for the results.
This should be what #1345 and #1577 wants, or at least a basic version
of it.
* Update KAT definition for real login test
* Add error handling to KAT definition's login
* Even better error handling...
Sorry for the inelegant successive commits
* Add better test behaviour for KAT
Added some logic so tests return results. Previously did a search with an empty string which would return no results. NB : it does test with "torrents.php?search=%22%22" but that's not an issue, the parameter is ignored on that page.
* New definition for indexer "B2S-Share"
I made a new definition for this indexer.
B2S-Share is a general Brazilian tracker.
This tracker does not support multiple category search, so i left it searching in all categories.
* Update README.md
Added B2S-Share to the private tracker list.
* New definition for indexer "Manicomio Share"
I made a new definition for this indexer.
Manicomio Share is a general Brazilian tracker.
A few known issues:
1 - The tracker does not show the "release date" unless i click on another button with a "onclick="expand(584941,event)"". So i left it without date.
2 - I wasn't able to configure the "login: post" method, since there's no dedicated login page. I used Cookies instead.
* Add Manicomio Share to Private Tracker list
Add Manicomio Share to Private Tracker list
* Updated manicomioshare.yml
Updated line 229 in manicomioshare.yml so it's more flexible in case the URL changes. (Thanks kaso17)
* Tracker doesn't support multiple categories search
Tracker doesn't support multiple categories search, removed the "range .Categories" line
* Line endings...
* Remove Autofac and all its shenanigans from IndexerManager
I'm starting my warpath against Autofac. For the next couple PRs I want
to focus on refactoring things rather than creating new things. This
includes introducing LINQ extensions wherever possible as well as
removing Autofac/Automapper dependencies in classes (or any other
dependency, there's a great chance that most of the classes that use
Jackett.Services wouldn't need so many of them). All this is order to
boost performance and eventually reach testability. Can't stop, won't
stop.
* Remove unnecessary extension
* Modify test project
* As per @kaso17, iterating through iterator types rather than allocating them manually
* Cleaning up a little
* Adjusting interface in tests
* Line endings...
* Encoding Encoding in a reasonable way
Sadly Encoding contains a self-reference somewhere, which makes it
really hard for the json serializer to automatically encode it...
Probably there's no value in sending it over especially since no one is
using it, however just for the sake of the argument, let's just
serialize it in a reasonable way. Maybe someday there will be someone
expecting this. Or we clearly separate DTOs and models...
- FixesJackett/Jackett#1532
- FixesJackett/Jackett#1539
* Seriously... Please port this to dotnet Core so that I can use something other than @drunkvs on my MacBook
* Fix autofac registration after merge
* "Implement" new function of interface in test project
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.