In simple words, when you make a request in Jackett, the results are saved in memory (cache). The next request will return results form the cache improving response time and making fewer requests to the sites.
* We assume all indexers/sites are stateless, the same request return the same response. If you change the search term, categories or something in the query Jackett has to make a live request to the indexer.
* There are some situations when we don't want to use the cache:
** When we are testing the indexers => if query.IsTest results are not cached
** When the user updates the configuration of one indexer => We call CleanIndexerCache to remove cached results before testing the configuration
** When there is some error/exception in the indexer => The results are not cached so we can retry in the next request
* We want to limit the memory usage, so we try to remove elements from cache ASAP:
** Each indexer can have a maximum number of results in memory. If the limit is exceeded we remove old results
** Cached results expire after some time
* Users can configure the cache or even disable it
core: allow renaming & merging of trackers with config (part 1 #8355) (#8608)
* rename site field to id in yaml indexers
* add id field in c# indexers
* use id field instead of class name in c#
This indexer was not able to distinguish whether a film is 3D or 4K, which made it totally unusable.
After a lot of fighting with Visual Studio to do tests compiling Jackett, I got the indexer to differentiate 3D and 4K movies.
Example screenshot:
https://imgur.com/cVp2Klc
* feat(newpct): rename title to make them more standarized
* fix: add site link configurable
* feat: add tests if news are not available
Sometimes the web has no news, and even if the tv show searcher is
working it throws an error. This way it will check news, and, if not
available, will check some series to check aliveness.
* fix: remove apostrophes from search
closes#3315
* fix: initialize search term if it's null
* fix: add multiepisode parsing and minor improvements
Now a quality it's ensured
Now quality it's cleaned from brackets
Add dash as multiepisode separator
* refactor: move tv search to function and change site link
Sitelink is now a property class
* refactor: extract function to get series uris
* refactor: extract function to get releases from one uri
* feat: add fallback to shows starting with "the"
Whenever a shows doesn't return results and doesn't start with "the"
search one more time prepending "the".
The motivation of this is because of Sonarr sanitizes queries before
sending them to Jackett. This indexer needs the article but Sonarr
removes it before.
* fix(newpct): add missing guid based on link
That was causing missing files on applications consuming the newpct
indexer.
* feat(mejortorrent): add movie search
closes: #3310
* feat(mejortorrent): add parse and filter by year
* feat(mejortorrent): change movie search algorithm
Now movie search is based on longest word, then results are filtered
ignoring special characters.
* fix(mejortorrent): restore query so jackett log it correctly
* fix: add small year correction
Some movies are tagged with the year before or after, I think it's safe to
fix years with exactly the same name and only a year of difference.
* feat(newpct): rename title to make them more standarized
* fix: add site link configurable
* feat: add tests if news are not available
Sometimes the web has no news, and even if the tv show searcher is
working it throws an error. This way it will check news, and, if not
available, will check some series to check aliveness.
* fix: remove apostrophes from search
closes#3315
* fix: initialize search term if it's null
* feat: start mejortorrent indexer, create basic configuration
* feat: add basic tv show scraper for series search
* fix: add guid so more than one episode is returned
* feat: add date to episodes
* feat: add support for multi-episodes
* feat: add proper filtering
* fix: change filter when there is no season or no episode
* feat: implement tv show rss scraper with no links by the moment
* feat: finish tv-shows rss
* fix: prevent sdtv to be marked as hdtv
* docs: add mejortorrent indexer to readme
* add url encode
* fix encoding
Content seems to be UTF8
* add missing include
* fix my fixes
* fix encoding