From 43778d8eddaa407fa0e9a62f069ebb9791ff4cfe Mon Sep 17 00:00:00 2001 From: JackDandy Date: Fri, 18 Sep 2015 01:06:34 +0100 Subject: [PATCH] Change providers, add some, remove one, fix a snatch issue, rework ignore/require words, refactor code. Add BitMeTV torrent provider. Add TVChaosUK torrent provider. Add HD-Space torrent provider. Add Shazbat torrent provider. Remove Animenzb provider. Change use tvdbid for searching usenet providers. Change consolidate global and per show ignore and require words functions. Change "Require word" title and notes on Config Search page to properly describe its functional logic. Add "Reject Blu-ray M2TS releases" to BTN provider. Add regular expression capability to ignore and require words by starting wordlist with "regex:". Add list shows with custom ignore and require words under the global counterparts on the Search Settings page. Fix failure to search for more than one selected wanted episode. --- CHANGES.md | 26 +- SickBeard.py | 6 +- gui/slick/images/providers/animenzb.png | Bin 726 -> 0 bytes gui/slick/images/providers/bitmetv.png | Bin 0 -> 1360 bytes gui/slick/images/providers/freshontv.png | Bin 0 -> 3618 bytes gui/slick/images/providers/hdspace.png | Bin 0 -> 752 bytes gui/slick/images/providers/shazbat.png | Bin 0 -> 557 bytes gui/slick/images/providers/strike.png | Bin 0 -> 417 bytes gui/slick/images/providers/tvchaosuk.png | Bin 0 -> 1002 bytes .../interfaces/default/config_providers.tmpl | 36 +- .../interfaces/default/config_search.tmpl | 32 +- gui/slick/interfaces/default/editShow.tmpl | 14 +- .../default/manage_subtitleMissed.tmpl | 10 +- lib/jsonrpclib/SimpleJSONRPCServer.py | 229 ------ lib/jsonrpclib/__init__.py | 6 - lib/jsonrpclib/config.py | 38 - lib/jsonrpclib/history.py | 40 -- lib/jsonrpclib/jsonclass.py | 152 ---- lib/jsonrpclib/jsonrpc.py | 561 --------------- readme.md | 3 +- sickbeard/__init__.py | 55 +- ...ostProcesser.py => auto_post_processer.py} | 2 +- sickbeard/bs4_parser.py | 6 + sickbeard/clients/rtorrent.py | 11 +- sickbeard/common.py | 16 +- sickbeard/config.py | 3 +- sickbeard/helpers.py | 25 +- sickbeard/properFinder.py | 292 ++++---- sickbeard/providers/__init__.py | 78 +- sickbeard/providers/alpharatio.py | 75 +- sickbeard/providers/animenzb.py | 115 --- sickbeard/providers/beyondhd.py | 56 +- sickbeard/providers/bitmetv.py | 131 ++++ sickbeard/providers/bitsoup.py | 71 +- sickbeard/providers/btn.py | 274 ++++--- sickbeard/providers/freshontv.py | 137 ++++ sickbeard/providers/funfile.py | 75 +- sickbeard/providers/generic.py | 428 ++++++----- sickbeard/providers/gftracker.py | 82 +-- sickbeard/providers/grabtheinfo.py | 75 +- sickbeard/providers/hdbits.py | 164 +++-- sickbeard/providers/hdspace.py | 139 ++++ sickbeard/providers/iptorrents.py | 62 +- sickbeard/providers/kat.py | 103 ++- sickbeard/providers/morethan.py | 70 +- sickbeard/providers/newznab.py | 315 ++++---- sickbeard/providers/nyaatorrents.py | 16 +- sickbeard/providers/omgwtfnzbs.py | 51 +- sickbeard/providers/pisexy.py | 74 +- sickbeard/providers/pretome.py | 39 +- sickbeard/providers/rarbg.py | 103 ++- sickbeard/providers/rsstorrent.py | 18 +- sickbeard/providers/scc.py | 66 +- sickbeard/providers/scenetime.py | 90 ++- sickbeard/providers/shazbat.py | 162 +++++ sickbeard/providers/speedcd.py | 81 +-- sickbeard/providers/strike.py | 84 +++ sickbeard/providers/thepiratebay.py | 71 +- sickbeard/providers/tokyotoshokan.py | 12 +- sickbeard/providers/torrentbytes.py | 83 +-- sickbeard/providers/torrentday.py | 82 +-- sickbeard/providers/torrenting.py | 83 +-- sickbeard/providers/torrentleech.py | 72 +- sickbeard/providers/torrentshack.py | 77 +- sickbeard/providers/transmithe_net.py | 133 ++-- sickbeard/providers/tvchaosuk.py | 189 +++++ sickbeard/providers/womble.py | 7 +- sickbeard/search.py | 676 +++++++++--------- .../{searchBacklog.py => search_backlog.py} | 8 +- .../{searchProper.py => search_propers.py} | 5 +- sickbeard/search_queue.py | 143 ++-- .../{searchRecent.py => search_recent.py} | 3 +- sickbeard/show_name_helpers.py | 119 ++- sickbeard/show_queue.py | 6 +- sickbeard/{showUpdater.py => show_updater.py} | 0 sickbeard/tv.py | 8 +- sickbeard/tvcache.py | 22 +- .../{versionChecker.py => version_checker.py} | 10 +- sickbeard/webserve.py | 17 +- tests/all_tests.py | 2 +- tests/ignore_and_require_words_tests.py | 111 +++ tests/scene_helpers_tests.py | 16 +- tests/snatch_tests.py | 2 +- 83 files changed, 3197 insertions(+), 3557 deletions(-) delete mode 100644 gui/slick/images/providers/animenzb.png create mode 100644 gui/slick/images/providers/bitmetv.png create mode 100644 gui/slick/images/providers/freshontv.png create mode 100644 gui/slick/images/providers/hdspace.png create mode 100644 gui/slick/images/providers/shazbat.png create mode 100644 gui/slick/images/providers/strike.png create mode 100644 gui/slick/images/providers/tvchaosuk.png delete mode 100644 lib/jsonrpclib/SimpleJSONRPCServer.py delete mode 100644 lib/jsonrpclib/__init__.py delete mode 100644 lib/jsonrpclib/config.py delete mode 100644 lib/jsonrpclib/history.py delete mode 100644 lib/jsonrpclib/jsonclass.py delete mode 100644 lib/jsonrpclib/jsonrpc.py rename sickbeard/{autoPostProcesser.py => auto_post_processer.py} (98%) delete mode 100644 sickbeard/providers/animenzb.py create mode 100644 sickbeard/providers/bitmetv.py create mode 100644 sickbeard/providers/freshontv.py create mode 100644 sickbeard/providers/hdspace.py create mode 100644 sickbeard/providers/shazbat.py create mode 100644 sickbeard/providers/strike.py create mode 100644 sickbeard/providers/tvchaosuk.py rename sickbeard/{searchBacklog.py => search_backlog.py} (95%) rename sickbeard/{searchProper.py => search_propers.py} (95%) rename sickbeard/{searchRecent.py => search_recent.py} (97%) rename sickbeard/{showUpdater.py => show_updater.py} (100%) rename sickbeard/{versionChecker.py => version_checker.py} (97%) create mode 100644 tests/ignore_and_require_words_tests.py diff --git a/CHANGES.md b/CHANGES.md index 08e22ccc..9882a4fa 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -42,8 +42,12 @@ * Change default de-referrer url to blank * Change javascript urls in templates to allow proper caching * Change downloads to prevent cache misfiring with "Result is not a valid torrent file" +* Add BitMeTV torrent provider * Add Torrenting provider * Add FunFile torrent provider +* Add TVChaosUK torrent provider +* Add HD-Space torrent provider +* Add Shazbat torrent provider * Remove unnecessary call to indexers during nameparsing * Change disable ToTV due to non-deletable yet reported hacker BTC inbox scam and also little to no new content listings * Fix Episode View KeyError: 'state-title' failure for shows without a runtime @@ -53,8 +57,7 @@ * Fix add existing shows from folders that contain a plus char * Fix post process issue where items in history were processed out of turn * Change increase frequency of updating show data -* Remove FreshOnTV (TvT) torrent provider -* Remove Strike torrent provider +* Remove Animenzb provider * Change increase the scope and number of non release group text that is identified and removed * Add a general config setting to allow adding incomplete show data * Change to throttle connection rate on thread initiation for adba library @@ -74,12 +77,21 @@ * Add IMDb Popular to Add Show page * Add version to anime renaming pattern * Add Code Climate configuration files -* Change to move init-scripts to single folder +* Change move init-scripts to single folder * Change sickbeard variables to sickgear variables in init-scripts * Change improve the use of multiple plex servers -* Change to move JS code out of home template and into dedicated file -* Change to remove branch from window title -* Change to move JS code out of inc_top template and into dedicated file +* Change move JS code out of home template and into dedicated file +* Change remove branch from window title +* Change move JS code out of inc_top template and into dedicated file +* Change cleanup torrent providers +* Change utilise tvdbid for searching usenet providers +* Add setting to provider BTN to Reject Blu-ray M2TS releases +* Remove jsonrpclib library +* Change consolidate global and per show ignore and require words functions +* Change "Require word" title and notes on Config Search page to properly describe its functional logic +* Add regular expression capability to ignore and require words by starting wordlist with "regex:" +* Add list shows with custom ignore and require words under the global counterparts on the Search Settings page +* Fix failure to search for more than one selected wanted episode * Add notice for users with Python 2.7.8 or below to update to latest Python [develop changelog] @@ -87,6 +99,8 @@ * Add ability to parse command line output from unix unrar version 4 and below * Fix show search box on non-poster show list views * Fix removal of non-release groups such that anime qualities are not trimmed from name +* Change readd Strike torrent provider +* Change readd FreshOnTV (TvT) torrent provider ### 0.10.0 (2015-08-06 11:05:00 UTC) diff --git a/SickBeard.py b/SickBeard.py index 932886fa..451d64b7 100755 --- a/SickBeard.py +++ b/SickBeard.py @@ -340,7 +340,7 @@ class SickGear(object): logger.ERROR) if sickbeard.LAUNCH_BROWSER and not self.runAsDaemon: logger.log(u'Launching browser and exiting', logger.ERROR) - sickbeard.launchBrowser(self.startPort) + sickbeard.launch_browser(self.startPort) os._exit(1) # Check if we need to perform a restore first @@ -377,7 +377,7 @@ class SickGear(object): # Launch browser if sickbeard.LAUNCH_BROWSER and not (self.noLaunch or self.runAsDaemon): - sickbeard.launchBrowser(self.startPort) + sickbeard.launch_browser(self.startPort) # main loop while True: @@ -488,7 +488,7 @@ class SickGear(object): sickbeard.halt() # save all shows to DB - sickbeard.saveAll() + sickbeard.save_all() # shutdown web server if self.webserver: diff --git a/gui/slick/images/providers/animenzb.png b/gui/slick/images/providers/animenzb.png deleted file mode 100644 index 4fd6707b130c83fb891b9bdf16351f077c9542e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 726 zcmV;{0xA88P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf0&7V`K~y+TrIA}m z(@`A9hxFo`)e3?ILJx)rAz3}7RsRSwkc7qX47SOMf6ktH?2MNlAo8~;hgXJa5!HPTVzvkOPwanF{56Xn*Mt3 zsM48Vn5VU`1+(QFUD|eZ6IucaPSC6C5psfHWo3n3MNZ8AoW-L=!rSpd@;kF}PjJON zWyUp0Oqafc;vOY| zZZP3R!T2fLOk{N^E~z4-%Fa{Oq{cJZjqM5B z@JTs@+cgQJ`Vkfv7uT;MT3cJggp;ng)*k6Eewwj;h%U)IB4!|qWfJZ(OEKlUS`kFnuwRs>mYffShwj6Myedkajtj$m0pj z&CS`Yc>!z$jrpu|n5YtCcfe zR|!0Fk^VPB_OuNLL34d8Q|9l)M&2MIb!$F{Z zuV-O?LHH<>=_{K0=d`tSV4bm2kXK4m{madEHgFL94_g$#FLAa`;K>jp6#xJL07*qo IM6N<$f;U4)tN;K2 diff --git a/gui/slick/images/providers/bitmetv.png b/gui/slick/images/providers/bitmetv.png new file mode 100644 index 0000000000000000000000000000000000000000..ce5b91cea9eb75ee050dc544f9a38e56eeabb68d GIT binary patch literal 1360 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl4m>B|mLR^8||NsAA@pDzzcH)}R+`SR<}oo!l2y{u)$`@smpAX;JbCuy%C$RZcI{cSZO<8?UCWlFq~+8! zwbazroVj%6$gv}Lwr$x1bkC+OOBStZ>6+5h)$`}q9~LH-FW>%r`SsK zr)wkw10zF8kY6w;CyZpkHT{bXFmC^Qx;TbNOqD(M*Zz=$48w!>$9obvr5`TYIKk5C zmfPJ}*DXrrXY#V*!hZk%&!&IgpI_!&-A-qJ$IPhryhiIer{<+rv|lI}YBzB^B_b8P ze%c}xF3z1Pc0~t$qrO?!J`DdeRrnB7g!uokmI?`ujqeXXI=i!A+NtA*ZrTa?S+<3S znf3&KN|d;2eE7!Ffc)4ORkMp@<8NR1D$C}%C1FY2&3ge;C+<&Di%_h&%x$b5B=4mvv4FO#onA BH3t9y literal 0 HcmV?d00001 diff --git a/gui/slick/images/providers/freshontv.png b/gui/slick/images/providers/freshontv.png new file mode 100644 index 0000000000000000000000000000000000000000..089d3479baac284e422f703cafdd3492746d6586 GIT binary patch literal 3618 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 literal 0 HcmV?d00001 diff --git a/gui/slick/images/providers/hdspace.png b/gui/slick/images/providers/hdspace.png new file mode 100644 index 0000000000000000000000000000000000000000..6049460384f3bf9f56e3ac0889f6925173d5f5b3 GIT binary patch literal 752 zcmVt3-_a5h3oCr#3TG!&* z7OfOUDTN@2Y-JQr1?zRi_~12KE0oe(ZrIXaWWAIzTEnlCJDr5*=aRYxf+t_h>Gpb* zs}+w$K?ngKJOqf74v{gKIF13(+Mu;2GKSG8V=(BW2pk+9kR&nQJ6!7!5!%fLQHnT< zFvdiPfHA*ZHHIw9h~kJ|ugh=m-!oqu2YaGpHR5m5~H_Nl6hhdgI69AX}eg1fsr7K=G$xk8CTl;Y;*hHRYC zwk@mGif`ZkV>&&>TFd?YJ#}3(K6s7!^6x)5=Qun(L_|0`I$}1PvDs|+_~%E?&(Hb$ z^JgwEFR_i~^74PmvgG)9LciZf-Oumo^?K}&GSW0TDN^9`Sj_puq>7Y@0p&SGThz8TFdiug*FjhU=-}wnGKv_S_QdGVG0000Nkl z%}OLO6otPe^^@COg)|Df^Huz5u@QYsK^G!+KbecRqNyZz7E;yY%x0Jamyi&+ALksi z-|tmKczk?hwOVn1e@`ie=jUhozUSfLfngXh#vmd*Jw35nt%xxaLZDJrN-3P5pR-&p zNhtwvc6Nq{V2q(@8e)v(oH;!`rSE&jaU{k_<($J>%lrE~r4;JACWOGn#RbkeUS3}4 zx{l3eLkNM(%S%+1Nmb67QVM%JFG1RozCSZi_4AtJoKzH)MMGAFRvY*1C+-rn%ub9Z+~O6fqbSS)4&fWGe$ z5df^UO#hCLk7?VMaUA*l{5%j0!+>*cPT}U}=7-xcM!fe7!$8g%=N!(tp9J3fA1N4P zP}TX&Ib*Gzr>^S*K?s4Ws^%1oG4lX(66^IE=N#MZ_S?jXzIwtuA%V+5dWTU3={ z81UY+TrR(hG!cA#ebF=x)>=e_?RHDob*$HGRF&Oshlp@{drJs`tE;Q;B25I7N-3!7 vOf)sndyn`2uSOdE-Rl34{d4ob-Y5M6`;`iy$H?tZY`oAuMa@rWBDNa)pJ}A=Z*2 zq!3AAyGO9FkRUwd6H?Y20krl9zA~ zy%5ve5YweY0sGVqF?|m)4Qt7tYRU8HV-RBMwu>k2cm~g~7-G7QyI3>M=fC=+Lb`$t z<2+trF2wX21N^8ZZ%taEt)H014Lro<20A#(!6{tC2Ry;9ab~l4(fl0>=;ItVjdNMS zFLZ0k!@Z(5U>A#cQ%mlJm@YJvI(Sq|e&3$b2HeJZ?1Y$>jqhLu4{FJOCfWQa#9Hz< zT*Z20zf((IJ*auVgWn;h1uSD5w`$3s4{DkO=;00?*OJ$#Y24FaDr;}x-)Gz-00000 LNkvXXu0mjf;U>63 literal 0 HcmV?d00001 diff --git a/gui/slick/images/providers/tvchaosuk.png b/gui/slick/images/providers/tvchaosuk.png new file mode 100644 index 0000000000000000000000000000000000000000..d6e968a74235769a0eed64a01f171088da00a500 GIT binary patch literal 1002 zcmV0#<-gqVvI4m z7!8a zS*?y~olYG_6bK?xK|n?b5h$fV86qeTrNW0F^mMu0tL0}-TShA6d!zAmb;I=^r;@)9 z-*4H-qoh8^xT|MQ{eO6-QWWN0Fg|Z0$Ob=I-S0a`=j>u{(*;Ixlz($ zP|7bhRGVCSy=t<)sn({Kh(4~{di0KJ?(Xx8zO}tjF!;CvV@%Y3_Dgo6rtq)q9EC5L zNa!-sRHx$GeuXiOahB&Q=;6_^j9GOB)#C0MlWR1S!{q*M`!aAzaC z(ND`M?x(pBYAPN~nAdv_pc^)L!u7N*O4HK6xL*}1jQGF;R*2-luYAT8h(A3RgrYOBCB9;#|+oYJ+vYPSyF>r>{L!i7hQ>XeVhYl0q6EWyPg5eiGTpQ&NqC~U}! zYP+dPDGAu;H{Lw=`qYx+AAuku%-CEYlF7=G6VpA4pKg>4*=Bfm^$Wikvvh6gzPUwj z(NlAmet6g}l^6P7Zhq;;g-^J59dkxjQd$fY5kX&G0E#Q$*ClWDSKp3P7&9C_zqO;h zHR)PAZ7Dmv*nG13{BI-f%6r3};zS}|Us58~B$K`k002q|0Sy2Q%{g=bM!GyAlFmMn zZ<+{rG%e#ZHzF>7;w^KJK)yLb97PENax>MXLh>t~N?VvNB)kpvORK9S$header -#else +#else

$title

#end if @@ -281,7 +281,7 @@ #set $field_name = curNzbProvider.get_id() + '_api_key' - #if callable(getattr(curNzbProvider, 'ui_string')) + #if callable(getattr(curNzbProvider, 'ui_string', None))

${curNzbProvider.ui_string($field_name)}

#end if
@@ -347,6 +347,17 @@ ## #for $curTorrentProvider in [$curProvider for $curProvider in $sickbeard.providers.sortedProviderList() if $curProvider.providerType == $GenericProvider.TORRENT]:
+ #if callable(getattr(curTorrentProvider, 'ui_string', None)) + #set $field_name = curTorrentProvider.get_id() + '_tip' + #set $tip_text = curTorrentProvider.ui_string($field_name) + #if $tip_text +
+ +

Important! ${curTorrentProvider.name} $tip_text

+
+
+ #end if + #end if #if $hasattr($curTorrentProvider, 'api_key'):
@@ -419,7 +430,7 @@

this ratio is requested of each item sent to $torrent_method_text[$sickbeard.TORRENT_METHOD]

-

(set -1 to seed forever, or leave blank for the $torrent_method_text[$sickbeard.TORRENT_METHOD] setting)

+

(#if 'Transmission' in $torrent_method_text[$sickbeard.TORRENT_METHOD]#set -1 to seed forever, or #end if#leave blank for the $torrent_method_text[$sickbeard.TORRENT_METHOD] setting)

@@ -507,6 +518,17 @@ #end if + #if $hasattr($curTorrentProvider, 'reject_m2ts'): +
+ +
+ #end if #if $hasattr($curTorrentProvider, 'enable_recentsearch') and $curTorrentProvider.supportsBacklog:
diff --git a/gui/slick/interfaces/default/editShow.tmpl b/gui/slick/interfaces/default/editShow.tmpl index 9233fbdb..0564cf7e 100644 --- a/gui/slick/interfaces/default/editShow.tmpl +++ b/gui/slick/interfaces/default/editShow.tmpl @@ -125,8 +125,8 @@ Ignore result with any word -

e.g. [word1,word2, ... ,word_n]

-

ignore search result if its title contains any of these comma seperated words

+

e.g. [[regex:]word1, word2, ..., word_n, regex_n]

+

ignore search result if its title contains any of these comma seperated words or regular expressions

@@ -136,8 +136,8 @@ Require at least one word -

e.g. [word1,word2, ... ,word_n]

-

ignore search result unless its title contains one of these comma seperated words

+

e.g. [[regex:]word1, word2, ..., word_n, regex_n]

+

ignore search result unless its title contains one of these comma seperated words or regular expressions

@@ -276,7 +276,7 @@ var scene_ex = \$('#SceneName').val() var option = \$('