flexget 3.22.0__tar.gz → 3.22.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (754) hide show
  1. {flexget-3.22.0 → flexget-3.22.1}/PKG-INFO +2 -2
  2. {flexget-3.22.0 → flexget-3.22.1}/flexget/_version.py +1 -1
  3. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archive/db.py +27 -23
  4. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/backlog/db.py +7 -6
  5. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/failed/db.py +9 -9
  6. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/history/db.py +8 -11
  7. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/db.py +70 -56
  8. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/entry_list/db.py +16 -13
  9. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/imdb_list.py +13 -9
  10. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/movie_list/db.py +24 -18
  11. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/pending_list/db.py +17 -14
  12. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/regexp_list/db.py +15 -12
  13. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/subtitle_list.py +24 -20
  14. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/telegram.py +6 -6
  15. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/pending_approval/db.py +9 -8
  16. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/rejected/db.py +18 -13
  17. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/db.py +18 -19
  18. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/db.py +67 -67
  19. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/alpharatio.py +7 -7
  20. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/morethantv.py +7 -7
  21. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/rutracker.py +6 -5
  22. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/status/db.py +21 -20
  23. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/thetvdb/api_tvdb.py +68 -61
  24. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tmdb/api_tmdb.py +60 -53
  25. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/db.py +139 -129
  26. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tvmaze/api_tvmaze.py +69 -71
  27. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/variables/variables.py +4 -5
  28. {flexget-3.22.0 → flexget-3.22.1}/flexget/db_schema.py +6 -7
  29. {flexget-3.22.0 → flexget-3.22.1}/flexget/manager.py +11 -5
  30. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/delay.py +7 -6
  31. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/proper_movies.py +8 -11
  32. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/timeframe.py +7 -7
  33. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/upgrade.py +7 -7
  34. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/discover.py +15 -16
  35. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/gazelle.py +7 -7
  36. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/tail.py +5 -5
  37. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/internal/api_bluray.py +28 -21
  38. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/internal/api_rottentomatoes.py +80 -59
  39. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/digest.py +6 -5
  40. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/version_checker.py +2 -2
  41. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/memusage.py +4 -5
  42. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/rss.py +14 -14
  43. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/services/myepisodes.py +5 -6
  44. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/services/pogcal_acquired.py +3 -3
  45. {flexget-3.22.0 → flexget-3.22.1}/flexget/task.py +4 -4
  46. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/cached_input.py +13 -16
  47. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/log.py +7 -8
  48. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/simple_persistence.py +8 -7
  49. {flexget-3.22.0 → flexget-3.22.1}/flexget/webserver.py +8 -7
  50. {flexget-3.22.0 → flexget-3.22.1}/.gitignore +0 -0
  51. {flexget-3.22.0 → flexget-3.22.1}/LICENSE +0 -0
  52. {flexget-3.22.0 → flexget-3.22.1}/README.rst +0 -0
  53. {flexget-3.22.0 → flexget-3.22.1}/flexget/__init__.py +0 -0
  54. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/__init__.py +0 -0
  55. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/app.py +0 -0
  56. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/__init__.py +0 -0
  57. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/authentication.py +0 -0
  58. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/cached.py +0 -0
  59. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/database.py +0 -0
  60. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/format_checker.py +0 -0
  61. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/plugins.py +0 -0
  62. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/schema.py +0 -0
  63. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/server.py +0 -0
  64. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/tasks.py +0 -0
  65. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/core/user.py +0 -0
  66. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/templates/api_response.html +0 -0
  67. {flexget-3.22.0 → flexget-3.22.1}/flexget/api/templates/swagger-ui.html +0 -0
  68. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/README.md +0 -0
  69. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/__init__.py +0 -0
  70. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archive/__init__.py +0 -0
  71. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archive/archive.py +0 -0
  72. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archive/cli.py +0 -0
  73. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archives/__init__.py +0 -0
  74. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archives/archives.py +0 -0
  75. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archives/decompress.py +0 -0
  76. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/archives/utils.py +0 -0
  77. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/backlog/__init__.py +0 -0
  78. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/backlog/backlog.py +0 -0
  79. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/backlog/cli.py +0 -0
  80. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/__init__.py +0 -0
  81. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/convert_magnet.py +0 -0
  82. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/magnet_info_hash.py +0 -0
  83. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/private_torrents.py +0 -0
  84. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent.py +0 -0
  85. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent_alive.py +0 -0
  86. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent_files.py +0 -0
  87. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent_match.py +0 -0
  88. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent_scrub.py +0 -0
  89. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/torrent_size.py +0 -0
  90. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/bittorrent/trackers.py +0 -0
  91. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/__init__.py +0 -0
  92. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/api_emby.py +0 -0
  93. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/emby_list.py +0 -0
  94. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/emby_lookup.py +0 -0
  95. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/emby_refresh.py +0 -0
  96. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/emby_util.py +0 -0
  97. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/emby/from_emby.py +0 -0
  98. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/__init__.py +0 -0
  99. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/estimate_release.py +0 -0
  100. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/estimators/__init__.py +0 -0
  101. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/estimators/est_movies_bluray.py +0 -0
  102. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/estimators/est_released_movies.py +0 -0
  103. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/estimate_release/estimators/est_series_tvmaze.py +0 -0
  104. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/failed/__init__.py +0 -0
  105. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/failed/api.py +0 -0
  106. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/failed/cli.py +0 -0
  107. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/failed/retry_failed.py +0 -0
  108. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/ftp/__init__.py +0 -0
  109. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/ftp/ftp_download.py +0 -0
  110. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/ftp/ftp_list.py +0 -0
  111. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/ftp/sftp.py +0 -0
  112. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/ftp/sftp_client.py +0 -0
  113. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/history/__init__.py +0 -0
  114. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/history/api.py +0 -0
  115. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/history/cli.py +0 -0
  116. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/history/history.py +0 -0
  117. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/__init__.py +0 -0
  118. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/api.py +0 -0
  119. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/from_imdb.py +0 -0
  120. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/imdb.py +0 -0
  121. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/imdb_lookup.py +0 -0
  122. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/imdb_url.py +0 -0
  123. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/imdb_watchlist.py +0 -0
  124. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/utils.py +0 -0
  125. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/imdb/waf.py +0 -0
  126. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/irc/__init__.py +0 -0
  127. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/irc/api.py +0 -0
  128. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/irc/cli.py +0 -0
  129. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/irc/irc.py +0 -0
  130. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/__init__.py +0 -0
  131. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/list_add.py +0 -0
  132. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/list_clear.py +0 -0
  133. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/list_match.py +0 -0
  134. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/list_remove.py +0 -0
  135. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/__init__.py +0 -0
  136. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/couchpotato_list.py +0 -0
  137. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/entry_list/__init__.py +0 -0
  138. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/entry_list/api.py +0 -0
  139. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/entry_list/cli.py +0 -0
  140. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/entry_list/entry_list.py +0 -0
  141. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/movie_list/__init__.py +0 -0
  142. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/movie_list/api.py +0 -0
  143. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/movie_list/cli.py +0 -0
  144. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/movie_list/movie_list.py +0 -0
  145. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/ombi_list.py +0 -0
  146. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/pending_list/__init__.py +0 -0
  147. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/pending_list/api.py +0 -0
  148. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/pending_list/cli.py +0 -0
  149. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/pending_list/pending_list.py +0 -0
  150. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/plex_watchlist.py +0 -0
  151. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/radarr_list.py +0 -0
  152. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/regexp_list/__init__.py +0 -0
  153. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/regexp_list/cli.py +0 -0
  154. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/regexp_list/regexp_list.py +0 -0
  155. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/scrob_list.py +0 -0
  156. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/sonarr_list.py +0 -0
  157. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/thetvdb_list.py +0 -0
  158. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/managed_lists/lists/yaml_list.py +0 -0
  159. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/__init__.py +0 -0
  160. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notification_framework.py +0 -0
  161. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/__init__.py +0 -0
  162. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/bark.py +0 -0
  163. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/cronitor.py +0 -0
  164. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/discord.py +0 -0
  165. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/email.py +0 -0
  166. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/gotify.py +0 -0
  167. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/ifttt.py +0 -0
  168. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/join.py +0 -0
  169. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/matrix.py +0 -0
  170. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/microsoftteams.py +0 -0
  171. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/mqtt.py +0 -0
  172. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/notifymyandroid.py +0 -0
  173. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/ntfysh.py +0 -0
  174. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/prowl.py +0 -0
  175. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/pushalot.py +0 -0
  176. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/pushbullet.py +0 -0
  177. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/pushover.py +0 -0
  178. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/pushsafer.py +0 -0
  179. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/rapidpush.py +0 -0
  180. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/slack.py +0 -0
  181. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/sms_ru.py +0 -0
  182. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/toast.py +0 -0
  183. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notifiers/xmpp.py +0 -0
  184. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/notify/notify.py +0 -0
  185. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/__init__.py +0 -0
  186. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/parsers/__init__.py +0 -0
  187. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/parsers/parser_common.py +0 -0
  188. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/parsers/parser_guessit.py +0 -0
  189. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/parsers/parser_internal.py +0 -0
  190. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/parsing/plugin_parsing.py +0 -0
  191. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/pending_approval/__init__.py +0 -0
  192. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/pending_approval/api.py +0 -0
  193. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/pending_approval/cli.py +0 -0
  194. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/pending_approval/pending_approval.py +0 -0
  195. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/rejected/__init__.py +0 -0
  196. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/rejected/api.py +0 -0
  197. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/rejected/cli.py +0 -0
  198. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/rejected/remember_rejected.py +0 -0
  199. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/scheduler/__init__.py +0 -0
  200. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/scheduler/api.py +0 -0
  201. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/scheduler/scheduler.py +0 -0
  202. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/__init__.py +0 -0
  203. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/api.py +0 -0
  204. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/cli.py +0 -0
  205. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/seen.py +0 -0
  206. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/seen_info_hash.py +0 -0
  207. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/seen/seen_movies.py +0 -0
  208. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/__init__.py +0 -0
  209. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/all_series.py +0 -0
  210. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/api.py +0 -0
  211. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/cli.py +0 -0
  212. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/configure_series.py +0 -0
  213. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/gen_series.py +0 -0
  214. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/internal_estimator.py +0 -0
  215. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/metainfo_series.py +0 -0
  216. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/next_series_episodes.py +0 -0
  217. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/next_series_seasons.py +0 -0
  218. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/series.py +0 -0
  219. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/series_begin.py +0 -0
  220. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/series_premiere.py +0 -0
  221. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/series_remove.py +0 -0
  222. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/series/utils.py +0 -0
  223. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/__init__.py +0 -0
  224. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/__init__.py +0 -0
  225. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/allyoulike.py +0 -0
  226. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/anirena.py +0 -0
  227. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/argenteam.py +0 -0
  228. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/awesomehd.py +0 -0
  229. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/bakabt.py +0 -0
  230. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/btn.py +0 -0
  231. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/cinemageddon.py +0 -0
  232. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/cpasbien.py +0 -0
  233. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/ettv.py +0 -0
  234. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/eztv.py +0 -0
  235. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/filelist_api.py +0 -0
  236. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/google_cse.py +0 -0
  237. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/hebits.py +0 -0
  238. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/horriblesubs.py +0 -0
  239. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/iptorrents.py +0 -0
  240. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/koreus.py +0 -0
  241. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/limetorrents.py +0 -0
  242. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/lostfilm.py +0 -0
  243. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/ncore.py +0 -0
  244. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/newznab.py +0 -0
  245. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/nyaa.py +0 -0
  246. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/passthepopcorn.py +0 -0
  247. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/piratebay.py +0 -0
  248. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/redirect.py +0 -0
  249. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/rlsbb.py +0 -0
  250. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/rss.py +0 -0
  251. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/serienjunkies.py +0 -0
  252. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/shortened.py +0 -0
  253. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/site_1337x.py +0 -0
  254. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/site_rutracker.py +0 -0
  255. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/solidtorrents.py +0 -0
  256. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/torrent_cache.py +0 -0
  257. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/torrentday.py +0 -0
  258. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/torrentleech.py +0 -0
  259. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/torrentz.py +0 -0
  260. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/uindex.py +0 -0
  261. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/wordpress.py +0 -0
  262. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/sites/yts.py +0 -0
  263. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/urlrewrite.py +0 -0
  264. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/urlrewrite_search.py +0 -0
  265. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/urlrewriting.py +0 -0
  266. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/sites/utils.py +0 -0
  267. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/status/__init__.py +0 -0
  268. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/status/api.py +0 -0
  269. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/status/cli.py +0 -0
  270. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/status/status.py +0 -0
  271. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/thetvdb/__init__.py +0 -0
  272. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/thetvdb/api.py +0 -0
  273. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/thetvdb/thetvdb_lookup.py +0 -0
  274. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tmdb/__init__.py +0 -0
  275. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tmdb/api.py +0 -0
  276. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tmdb/tmdb_lookup.py +0 -0
  277. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/__init__.py +0 -0
  278. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/api.py +0 -0
  279. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/api_trakt.py +0 -0
  280. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/cli.py +0 -0
  281. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/next_trakt_episodes.py +0 -0
  282. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/trakt_calendar.py +0 -0
  283. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/trakt_list.py +0 -0
  284. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/trakt/trakt_lookup.py +0 -0
  285. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tvmaze/__init__.py +0 -0
  286. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tvmaze/api.py +0 -0
  287. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/tvmaze/tvmaze_lookup.py +0 -0
  288. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/variables/__init__.py +0 -0
  289. {flexget-3.22.0 → flexget-3.22.1}/flexget/components/variables/api.py +0 -0
  290. {flexget-3.22.0 → flexget-3.22.1}/flexget/config_schema.py +0 -0
  291. {flexget-3.22.0 → flexget-3.22.1}/flexget/entry.py +0 -0
  292. {flexget-3.22.0 → flexget-3.22.1}/flexget/event.py +0 -0
  293. {flexget-3.22.0 → flexget-3.22.1}/flexget/ipc.py +0 -0
  294. {flexget-3.22.0 → flexget-3.22.1}/flexget/log.py +0 -0
  295. {flexget-3.22.0 → flexget-3.22.1}/flexget/options.py +0 -0
  296. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugin.py +0 -0
  297. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/README.md +0 -0
  298. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/__init__.py +0 -0
  299. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/__init__.py +0 -0
  300. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/check.py +0 -0
  301. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/cli_config.py +0 -0
  302. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/database.py +0 -0
  303. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/debug_info.py +0 -0
  304. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/doc.py +0 -0
  305. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/explain_sql.py +0 -0
  306. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/filters.py +0 -0
  307. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/inject.py +0 -0
  308. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/perf_tests.py +0 -0
  309. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/performance.py +0 -0
  310. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/plugins.py +0 -0
  311. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/templates.py +0 -0
  312. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/try_regexp.py +0 -0
  313. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/web.py +0 -0
  314. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/wiki_qualities.py +0 -0
  315. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/cli/win32_service.py +0 -0
  316. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/__init__.py +0 -0
  317. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/aria2.py +0 -0
  318. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/deluge.py +0 -0
  319. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/nzbget.py +0 -0
  320. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/pyload.py +0 -0
  321. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/qbittorrent.py +0 -0
  322. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/rtorrent.py +0 -0
  323. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/clients/transmission.py +0 -0
  324. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/daemon/__init__.py +0 -0
  325. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/daemon/web_server.py +0 -0
  326. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/__init__.py +0 -0
  327. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/abort_if_exists.py +0 -0
  328. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/accept_all.py +0 -0
  329. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/age.py +0 -0
  330. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/best_quality.py +0 -0
  331. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/content_filter.py +0 -0
  332. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/content_size.py +0 -0
  333. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/crossmatch.py +0 -0
  334. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/duplicates.py +0 -0
  335. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/exists.py +0 -0
  336. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/exists_movie.py +0 -0
  337. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/exists_series.py +0 -0
  338. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/if_condition.py +0 -0
  339. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/limit_new.py +0 -0
  340. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/magnets.py +0 -0
  341. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/only_new.py +0 -0
  342. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/quality.py +0 -0
  343. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/regexp.py +0 -0
  344. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/require_field.py +0 -0
  345. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/rottentomatoes.py +0 -0
  346. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/thetvdb.py +0 -0
  347. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/filter/unique.py +0 -0
  348. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/__init__.py +0 -0
  349. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/cron_env.py +0 -0
  350. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/db_analyze.py +0 -0
  351. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/db_vacuum.py +0 -0
  352. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/log_start.py +0 -0
  353. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/urlfix.py +0 -0
  354. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/generic/welcome.py +0 -0
  355. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/__init__.py +0 -0
  356. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/anidb_list.py +0 -0
  357. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/anilist.py +0 -0
  358. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/apple_trailers.py +0 -0
  359. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/betaseries_list.py +0 -0
  360. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/filesystem.py +0 -0
  361. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/filmweb_watchlist.py +0 -0
  362. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/from_piratebay.py +0 -0
  363. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/from_task.py +0 -0
  364. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/from_telegram.py +0 -0
  365. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/generate.py +0 -0
  366. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/html.py +0 -0
  367. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/input_csv.py +0 -0
  368. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/inputs.py +0 -0
  369. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/json.py +0 -0
  370. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/kitsu.py +0 -0
  371. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/letterboxd.py +0 -0
  372. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/limit.py +0 -0
  373. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/medusa.py +0 -0
  374. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/mock.py +0 -0
  375. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/my_anime_list.py +0 -0
  376. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/myepisodes_list.py +0 -0
  377. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/next_sonarr_episodes.py +0 -0
  378. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/npo_watchlist.py +0 -0
  379. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/parameterize.py +0 -0
  380. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/plex.py +0 -0
  381. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/pogcal.py +0 -0
  382. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/regexp_parse.py +0 -0
  383. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/rlslog.py +0 -0
  384. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/rottentomatoes_list.py +0 -0
  385. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/rss.py +0 -0
  386. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/sceper.py +0 -0
  387. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/sickbeard.py +0 -0
  388. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/text.py +0 -0
  389. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/torznab.py +0 -0
  390. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/input/twitterfeed.py +0 -0
  391. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/internal/__init__.py +0 -0
  392. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/internal/change_warn.py +0 -0
  393. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/__init__.py +0 -0
  394. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/assume_quality.py +0 -0
  395. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/bluray_lookup.py +0 -0
  396. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/check_subtitles.py +0 -0
  397. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/content_size.py +0 -0
  398. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/media_id.py +0 -0
  399. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/metainfo_movie.py +0 -0
  400. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/nfo_lookup.py +0 -0
  401. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/nzb_size.py +0 -0
  402. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/quality.py +0 -0
  403. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/rottentomatoes_lookup.py +0 -0
  404. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/metainfo/task.py +0 -0
  405. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/__init__.py +0 -0
  406. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/extension.py +0 -0
  407. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/headers.py +0 -0
  408. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/manipulate.py +0 -0
  409. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/path_by_ext.py +0 -0
  410. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/path_by_space.py +0 -0
  411. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/plugin_priority.py +0 -0
  412. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/regex_extract.py +0 -0
  413. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/reorder_quality.py +0 -0
  414. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/set_field.py +0 -0
  415. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/sort_by.py +0 -0
  416. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/modify/sort_by_weight.py +0 -0
  417. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/__init__.py +0 -0
  418. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/abort.py +0 -0
  419. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/cookies.py +0 -0
  420. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/debug_db_sessions.py +0 -0
  421. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/debug_warnings.py +0 -0
  422. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/disable.py +0 -0
  423. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/disable_phases.py +0 -0
  424. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/domain_delay.py +0 -0
  425. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/entry_trace.py +0 -0
  426. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/formlogin.py +0 -0
  427. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/free_space.py +0 -0
  428. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/include.py +0 -0
  429. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/interval.py +0 -0
  430. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/log_filter.py +0 -0
  431. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/manual.py +0 -0
  432. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/max_reruns.py +0 -0
  433. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/pathscrub.py +0 -0
  434. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/priority.py +0 -0
  435. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/proxy.py +0 -0
  436. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/rerun.py +0 -0
  437. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/run_task.py +0 -0
  438. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/sequence.py +0 -0
  439. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/sleep.py +0 -0
  440. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/spy_headers.py +0 -0
  441. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/template.py +0 -0
  442. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/verbose.py +0 -0
  443. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/verbose_details.py +0 -0
  444. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/operate/verify_ssl_certificates.py +0 -0
  445. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/__init__.py +0 -0
  446. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/download.py +0 -0
  447. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/download_auth.py +0 -0
  448. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/dump.py +0 -0
  449. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/dump_config.py +0 -0
  450. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/exec.py +0 -0
  451. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/file_operations.py +0 -0
  452. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/html.py +0 -0
  453. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/mock_output.py +0 -0
  454. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/rtorrent_magnet.py +0 -0
  455. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/sabnzbd.py +0 -0
  456. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/sns.py +0 -0
  457. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/subtitles.py +0 -0
  458. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/subtitles_periscope.py +0 -0
  459. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/subtitles_subliminal.py +0 -0
  460. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/symlink.py +0 -0
  461. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/output/utorrent.py +0 -0
  462. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/services/__init__.py +0 -0
  463. {flexget-3.22.0 → flexget-3.22.1}/flexget/plugins/services/kodi_library.py +0 -0
  464. {flexget-3.22.0 → flexget-3.22.1}/flexget/resources/flexget.png +0 -0
  465. {flexget-3.22.0 → flexget-3.22.1}/flexget/task_queue.py +0 -0
  466. {flexget-3.22.0 → flexget-3.22.1}/flexget/templates/entry/default.template +0 -0
  467. {flexget-3.22.0 → flexget-3.22.1}/flexget/templates/task/default.template +0 -0
  468. {flexget-3.22.0 → flexget-3.22.1}/flexget/templates/task/html.template +0 -0
  469. {flexget-3.22.0 → flexget-3.22.1}/flexget/templates/task/rss.template +0 -0
  470. {flexget-3.22.0 → flexget-3.22.1}/flexget/terminal.py +0 -0
  471. {flexget-3.22.0 → flexget-3.22.1}/flexget/tray_icon.py +0 -0
  472. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/__init__.py +0 -0
  473. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/.eslintignore +0 -0
  474. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/.eslintrc +0 -0
  475. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/README.rst +0 -0
  476. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/__init__.py +0 -0
  477. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/bower.json +0 -0
  478. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/build.js +0 -0
  479. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/inject.js +0 -0
  480. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/lint.js +0 -0
  481. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/proxy.js +0 -0
  482. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/scripts.js +0 -0
  483. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/server.js +0 -0
  484. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/styles.js +0 -0
  485. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/test.js +0 -0
  486. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulp/watch.js +0 -0
  487. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/gulpfile.js +0 -0
  488. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/karma.conf.js +0 -0
  489. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/load.failure.html +0 -0
  490. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/package.json +0 -0
  491. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/specs.html +0 -0
  492. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/app.html +0 -0
  493. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/app.loading.js +0 -0
  494. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/app.module.js +0 -0
  495. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/app.scss +0 -0
  496. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/app.utils.js +0 -0
  497. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/assets/icons/ic_movie_black_24px.svg +0 -0
  498. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/assets/images/header.png +0 -0
  499. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/_error-dialog.scss +0 -0
  500. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error-dialog.component.js +0 -0
  501. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error-dialog.component.spec.js +0 -0
  502. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error-dialog.tmpl.html +0 -0
  503. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error.module.js +0 -0
  504. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error.service.js +0 -0
  505. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/error/error.service.spec.js +0 -0
  506. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/exception/exception.module.js +0 -0
  507. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/exception/exception.service.js +0 -0
  508. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/exception/exception.service.spec.js +0 -0
  509. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/pagination/_pagination.scss +0 -0
  510. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/pagination/pagination.component.js +0 -0
  511. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/pagination/pagination.filter.js +0 -0
  512. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/pagination/pagination.module.js +0 -0
  513. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/pagination/pagination.tmpl.html +0 -0
  514. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/router/router-helper.module.js +0 -0
  515. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/router/router-helper.provider.js +0 -0
  516. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/router/router-helper.provider.spec.js +0 -0
  517. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/url-interceptor/url-interceptor.config.js +0 -0
  518. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/url-interceptor/url-interceptor.module.js +0 -0
  519. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/url-interceptor/url-interceptor.service.js +0 -0
  520. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/blocks/url-interceptor/url-interceptor.service.spec.js +0 -0
  521. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.component.js +0 -0
  522. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.component.spec.js +0 -0
  523. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.module.js +0 -0
  524. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.route.js +0 -0
  525. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.route.spec.js +0 -0
  526. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/404/404.tmpl.html +0 -0
  527. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/_login.scss +0 -0
  528. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/auth.config.js +0 -0
  529. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/auth.config.spec.js +0 -0
  530. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/auth.module.js +0 -0
  531. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/auth.service.js +0 -0
  532. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/auth.service.spec.js +0 -0
  533. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/login.component.js +0 -0
  534. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/login.component.spec.js +0 -0
  535. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/login.route.js +0 -0
  536. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/login.route.spec.js +0 -0
  537. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/auth/login.tmpl.html +0 -0
  538. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/components.module.js +0 -0
  539. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/core/core.config.js +0 -0
  540. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/core/core.module.js +0 -0
  541. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/core/core.provider.js +0 -0
  542. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/core/core.route.js +0 -0
  543. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/core/core.route.spec.js +0 -0
  544. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/_database.scss +0 -0
  545. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/database.component.js +0 -0
  546. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/database.config.js +0 -0
  547. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/database.module.js +0 -0
  548. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/database.service.js +0 -0
  549. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/database/database.tmpl.html +0 -0
  550. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.component.js +0 -0
  551. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.component.spec.js +0 -0
  552. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.module.js +0 -0
  553. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.route.js +0 -0
  554. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.route.spec.js +0 -0
  555. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/home/home.tmpl.html +0 -0
  556. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/_sidenav.scss +0 -0
  557. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.component.js +0 -0
  558. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.component.spec.js +0 -0
  559. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.module.js +0 -0
  560. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.semver.js +0 -0
  561. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.service.js +0 -0
  562. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.service.spec.js +0 -0
  563. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/sidenav/sidenav.tmpl.html +0 -0
  564. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.component.js +0 -0
  565. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.component.spec.js +0 -0
  566. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.config.js +0 -0
  567. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.module.js +0 -0
  568. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.provider.js +0 -0
  569. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/toolbar/toolbar.tmpl.html +0 -0
  570. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/components/user/user.module.js +0 -0
  571. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/construction.tmpl.html +0 -0
  572. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/directives/directives.module.js +0 -0
  573. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/directives/palette-background/palette-background.directive.js +0 -0
  574. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/favicon.ico +0 -0
  575. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/layout.tmpl.html +0 -0
  576. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.component.js +0 -0
  577. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.component.spec.js +0 -0
  578. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.module.js +0 -0
  579. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.route.js +0 -0
  580. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.route.spec.js +0 -0
  581. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.service.js +0 -0
  582. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/config/config.tmpl.html +0 -0
  583. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-input/execute-input.component.js +0 -0
  584. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-input/execute-input.component.spec.js +0 -0
  585. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-input/execute-input.tmpl.html +0 -0
  586. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-stream/execute-stream.component.js +0 -0
  587. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-stream/execute-stream.component.spec.js +0 -0
  588. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/components/execute-stream/execute-stream.tmpl.html +0 -0
  589. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.component.js +0 -0
  590. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.component.spec.js +0 -0
  591. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.filter.js +0 -0
  592. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.filter.spec.js +0 -0
  593. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.module.js +0 -0
  594. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.route.js +0 -0
  595. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.route.spec.js +0 -0
  596. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.service.js +0 -0
  597. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.service.spec.js +0 -0
  598. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.tmpl.html +0 -0
  599. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/execute/execute.tmpl.scss +0 -0
  600. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.component.js +0 -0
  601. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.component.spec.js +0 -0
  602. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.module.js +0 -0
  603. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.route.js +0 -0
  604. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.route.spec.js +0 -0
  605. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.service.js +0 -0
  606. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.service.spec.js +0 -0
  607. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/history/history.tmpl.html +0 -0
  608. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.component.js +0 -0
  609. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.component.spec.js +0 -0
  610. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.module.js +0 -0
  611. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.route.js +0 -0
  612. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.route.spec.js +0 -0
  613. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.service.js +0 -0
  614. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.tmpl.html +0 -0
  615. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/log/log.tmpl.scss +0 -0
  616. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie-input.directive.js +0 -0
  617. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie-item.component.js +0 -0
  618. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie-item.tmpl.html +0 -0
  619. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie.controller.js +0 -0
  620. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie.service.js +0 -0
  621. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/add-movie/add-movie.tmpl.html +0 -0
  622. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-entry/movie-entry.component.js +0 -0
  623. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-entry/movie-entry.component.spec.js +0 -0
  624. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-entry/movie-entry.scss +0 -0
  625. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-entry/movie-entry.tmpl.html +0 -0
  626. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-list/movie-list.component.js +0 -0
  627. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-list/movie-list.component.spec.js +0 -0
  628. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/movie-list/movie-list.tmpl.html +0 -0
  629. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/new-list/new-list.component.js +0 -0
  630. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/new-list/new-list.component.spec.js +0 -0
  631. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/components/new-list/new-list.tmpl.html +0 -0
  632. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.component.js +0 -0
  633. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.component.spec.js +0 -0
  634. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.module.js +0 -0
  635. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.route.js +0 -0
  636. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.route.spec.js +0 -0
  637. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.service.js +0 -0
  638. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.service.spec.js +0 -0
  639. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.tmpl.html +0 -0
  640. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/movies/movies.tmpl.scss +0 -0
  641. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.component.js +0 -0
  642. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.module.js +0 -0
  643. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.route.js +0 -0
  644. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.scss +0 -0
  645. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.service.js +0 -0
  646. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/pending/pending.tmpl.html +0 -0
  647. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/plugins.module.js +0 -0
  648. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.component.js +0 -0
  649. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.component.spec.js +0 -0
  650. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.module.js +0 -0
  651. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.route.js +0 -0
  652. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.route.spec.js +0 -0
  653. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.service.js +0 -0
  654. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.service.spec.js +0 -0
  655. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/schedule/schedule.tmpl.html +0 -0
  656. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/components/seen-entry/seen-entry.component.js +0 -0
  657. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/components/seen-entry/seen-entry.component.spec.js +0 -0
  658. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/components/seen-entry/seen-entry.tmpl.html +0 -0
  659. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/components/seen-field/seen-field.component.js +0 -0
  660. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/components/seen-field/seen-field.tmpl.html +0 -0
  661. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.component.js +0 -0
  662. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.component.spec.js +0 -0
  663. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.module.js +0 -0
  664. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.route.js +0 -0
  665. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.route.spec.js +0 -0
  666. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.service.js +0 -0
  667. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.service.spec.js +0 -0
  668. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/seen/seen.tmpl.html +0 -0
  669. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-release/episode-release.component.js +0 -0
  670. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-release/episode-release.component.spec.js +0 -0
  671. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-release/episode-release.scss +0 -0
  672. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-release/episode-release.tmpl.html +0 -0
  673. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-releases/episode-releases.component.js +0 -0
  674. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-releases/episode-releases.component.spec.js +0 -0
  675. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/episode-releases/episode-releases.tmpl.html +0 -0
  676. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-begin-dialog/series-begin-dialog.component.js +0 -0
  677. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-begin-dialog/series-begin-dialog.tmpl.html +0 -0
  678. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-entry/series-entry.component.js +0 -0
  679. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-entry/series-entry.component.spec.js +0 -0
  680. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-entry/series-entry.scss +0 -0
  681. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-entry/series-entry.tmpl.html +0 -0
  682. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episode/series-episode.component.js +0 -0
  683. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episode/series-episode.component.spec.js +0 -0
  684. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episode/series-episode.scss +0 -0
  685. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episode/series-episode.tmpl.html +0 -0
  686. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episodes/series-episodes.component.js +0 -0
  687. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episodes/series-episodes.component.spec.js +0 -0
  688. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episodes/series-episodes.scss +0 -0
  689. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/components/series-episodes/series-episodes.tmpl.html +0 -0
  690. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.component.js +0 -0
  691. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.component.spec.js +0 -0
  692. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.module.js +0 -0
  693. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.route.js +0 -0
  694. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.route.spec.js +0 -0
  695. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.service.js +0 -0
  696. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.service.spec.js +0 -0
  697. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/series/series.tmpl.html +0 -0
  698. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/server/loading-dialog.component.js +0 -0
  699. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/server/loading-dialog.tmpl.html +0 -0
  700. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/server/server.config.js +0 -0
  701. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/server/server.module.js +0 -0
  702. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/server/server.service.js +0 -0
  703. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.component.js +0 -0
  704. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.module.js +0 -0
  705. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.route.js +0 -0
  706. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.service.js +0 -0
  707. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.tmpl.html +0 -0
  708. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/plugins/status/status.tmpl.scss +0 -0
  709. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/scss/_header.scss +0 -0
  710. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/scss/_loading-bar.scss +0 -0
  711. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/scss/_variables.scss +0 -0
  712. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/scss/flexget.scss +0 -0
  713. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/src/services/schema.service.js +0 -0
  714. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/config.js +0 -0
  715. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/execute.js +0 -0
  716. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/history.js +0 -0
  717. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/movie_list.js +0 -0
  718. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/registerPlugin.js +0 -0
  719. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/schedules.js +0 -0
  720. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/seen.js +0 -0
  721. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/series.js +0 -0
  722. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v1/tests-mock-data/states.js +0 -0
  723. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v2/README.rst +0 -0
  724. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v2/__init__.py +0 -0
  725. {flexget-3.22.0 → flexget-3.22.1}/flexget/ui/v2/index.html +0 -0
  726. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/__init__.py +0 -0
  727. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/bittorrent.py +0 -0
  728. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/cache.py +0 -0
  729. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/database.py +0 -0
  730. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/json.py +0 -0
  731. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/lazy_dict.py +0 -0
  732. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/parsers/__init__.py +0 -0
  733. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/parsers/generic.py +0 -0
  734. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/parsers/movie.py +0 -0
  735. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/parsers/parser.py +0 -0
  736. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/parsers/series.py +0 -0
  737. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/pathscrub.py +0 -0
  738. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/qualities.py +0 -0
  739. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/requests.py +0 -0
  740. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/serialization.py +0 -0
  741. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/soup.py +0 -0
  742. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/sqlalchemy_utils.py +0 -0
  743. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/template.py +0 -0
  744. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/tools.py +0 -0
  745. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/README.md +0 -0
  746. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/__init__.py +0 -0
  747. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/aws.py +0 -0
  748. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/crypto.py +0 -0
  749. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/fingerprint.py +0 -0
  750. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/verify.py +0 -0
  751. {flexget-3.22.0 → flexget-3.22.1}/flexget/utils/waf/webgl.json +0 -0
  752. {flexget-3.22.0 → flexget-3.22.1}/pyproject.toml +0 -0
  753. {flexget-3.22.0 → flexget-3.22.1}/scripts/build_locked_extras.py +0 -0
  754. {flexget-3.22.0 → flexget-3.22.1}/scripts/bundle_webui.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: flexget
3
- Version: 3.22.0
3
+ Version: 3.22.1
4
4
  Summary: FlexGet is a program aimed to automate downloading or processing content (torrents, podcasts, etc.) from different sources like RSS-feeds, html-pages, various sites and more.
5
5
  Project-URL: Issue Tracker, https://github.com/Flexget/Flexget/issues
6
6
  Project-URL: Forum, https://github.com/Flexget/Flexget/discussions
@@ -238,7 +238,7 @@ Requires-Dist: tzlocal==5.4.4; extra == 'locked'
238
238
  Requires-Dist: urllib3==2.8.0; extra == 'locked'
239
239
  Requires-Dist: vcrpy==8.3.0; extra == 'locked'
240
240
  Requires-Dist: webencodings==0.6.1; extra == 'locked'
241
- Requires-Dist: werkzeug==3.1.8; extra == 'locked'
241
+ Requires-Dist: werkzeug==3.1.9; extra == 'locked'
242
242
  Requires-Dist: win32-setctime==1.2.0; (sys_platform == 'win32') and extra == 'locked'
243
243
  Requires-Dist: wrapt==2.4.1; extra == 'locked'
244
244
  Requires-Dist: zc-lockfile==4.0; extra == 'locked'
@@ -10,4 +10,4 @@ and update the version again for continued development.
10
10
  NOTE: Should always have all three parts of the version, even on major and minor bumps. i.e. 4.0.0.dev, not 4.0.dev
11
11
  """
12
12
 
13
- __version__ = '3.22.0'
13
+ __version__ = '3.22.1'
@@ -1,10 +1,12 @@
1
+ from __future__ import annotations
2
+
1
3
  import re
2
4
  from datetime import datetime, timedelta
3
5
 
4
6
  from loguru import logger
5
- from sqlalchemy import Column, DateTime, ForeignKey, Index, Integer, Table, Unicode
7
+ from sqlalchemy import Column, ForeignKey, Index, Table
6
8
  from sqlalchemy.exc import NoResultFound
7
- from sqlalchemy.orm import relationship
9
+ from sqlalchemy.orm import Mapped, mapped_column, relationship
8
10
 
9
11
  from flexget import db_schema
10
12
  from flexget.event import event
@@ -19,16 +21,16 @@ Base = db_schema.versioned_base('archive', SCHEMA_VER)
19
21
  archive_tags_table = Table(
20
22
  'archive_entry_tags',
21
23
  Base.metadata,
22
- Column('entry_id', Integer, ForeignKey('archive_entry.id')),
23
- Column('tag_id', Integer, ForeignKey('archive_tag.id')),
24
+ Column('entry_id', ForeignKey('archive_entry.id')),
25
+ Column('tag_id', ForeignKey('archive_tag.id')),
24
26
  Index('ix_archive_tags', 'entry_id', 'tag_id'),
25
27
  )
26
28
 
27
29
  archive_sources_table = Table(
28
30
  'archive_entry_sources',
29
31
  Base.metadata,
30
- Column('entry_id', Integer, ForeignKey('archive_entry.id')),
31
- Column('source_id', Integer, ForeignKey('archive_source.id')),
32
+ Column('entry_id', ForeignKey('archive_entry.id')),
33
+ Column('source_id', ForeignKey('archive_source.id')),
32
34
  Index('ix_archive_sources', 'entry_id', 'source_id'),
33
35
  )
34
36
 
@@ -40,21 +42,20 @@ class ArchiveEntry(Base):
40
42
  __tablename__ = 'archive_entry'
41
43
  __table_args__ = (Index('ix_archive_title_url', 'title', 'url'),)
42
44
 
43
- id = Column(Integer, primary_key=True)
44
- title = Column(Unicode, index=True)
45
- url = Column(Unicode, index=True)
46
- description = Column(Unicode)
47
- task = Column('feed', Unicode) # DEPRECATED, but SQLite does not support drop column
48
- added = Column(DateTime, index=True)
49
-
50
- tags = relationship('ArchiveTag', secondary=archive_tags_table)
51
- sources = relationship(
52
- 'ArchiveSource', secondary=archive_sources_table, backref='archive_entries'
45
+ id: Mapped[int] = mapped_column(primary_key=True)
46
+ title: Mapped[str | None] = mapped_column(index=True)
47
+ url: Mapped[str | None] = mapped_column(index=True)
48
+ description: Mapped[str | None]
49
+ task: Mapped[str | None] = mapped_column(
50
+ 'feed'
51
+ ) # DEPRECATED, but SQLite does not support drop column
52
+ added: Mapped[datetime | None] = mapped_column(index=True, default=datetime.now)
53
+
54
+ tags: Mapped[list[ArchiveTag]] = relationship(secondary=archive_tags_table)
55
+ sources: Mapped[list[ArchiveSource]] = relationship(
56
+ secondary=archive_sources_table, back_populates='archive_entries'
53
57
  )
54
58
 
55
- def __init__(self):
56
- self.added = datetime.now()
57
-
58
59
  def __str__(self):
59
60
  return '<ArchiveEntry(title={},url={},task={},added={})>'.format(
60
61
  self.title,
@@ -67,8 +68,8 @@ class ArchiveEntry(Base):
67
68
  class ArchiveTag(Base):
68
69
  __tablename__ = 'archive_tag'
69
70
 
70
- id = Column(Integer, primary_key=True)
71
- name = Column(Unicode, index=True)
71
+ id: Mapped[int] = mapped_column(primary_key=True)
72
+ name: Mapped[str | None] = mapped_column(index=True)
72
73
 
73
74
  def __init__(self, name):
74
75
  self.name = name
@@ -80,8 +81,11 @@ class ArchiveTag(Base):
80
81
  class ArchiveSource(Base):
81
82
  __tablename__ = 'archive_source'
82
83
 
83
- id = Column(Integer, primary_key=True)
84
- name = Column(Unicode, index=True)
84
+ id: Mapped[int] = mapped_column(primary_key=True)
85
+ name: Mapped[str | None] = mapped_column(index=True)
86
+ archive_entries: Mapped[list[ArchiveEntry]] = relationship(
87
+ secondary=archive_sources_table, back_populates='sources'
88
+ )
85
89
 
86
90
  def __init__(self, name):
87
91
  self.name = name
@@ -2,7 +2,8 @@ import pickle
2
2
  from datetime import datetime
3
3
 
4
4
  from loguru import logger
5
- from sqlalchemy import Column, DateTime, Index, Integer, String, Unicode, column, select
5
+ from sqlalchemy import Index, Unicode, column, select
6
+ from sqlalchemy.orm import Mapped, mapped_column
6
7
 
7
8
  from flexget import db_schema
8
9
  from flexget.entry import Entry
@@ -17,11 +18,11 @@ Base = db_schema.versioned_base('backlog', 3)
17
18
  class BacklogEntry(Base):
18
19
  __tablename__ = 'backlog'
19
20
 
20
- id = Column(Integer, primary_key=True)
21
- task = Column('feed', String)
22
- title = Column(String)
23
- expire = Column(DateTime)
24
- _json = Column('json', Unicode)
21
+ id: Mapped[int] = mapped_column(primary_key=True)
22
+ task: Mapped[str | None] = mapped_column('feed')
23
+ title: Mapped[str | None]
24
+ expire: Mapped[datetime | None]
25
+ _json: Mapped[str | None] = mapped_column('json')
25
26
  entry = entry_synonym('_json')
26
27
 
27
28
  def __repr__(self):
@@ -1,7 +1,8 @@
1
1
  from datetime import datetime, timedelta
2
2
 
3
3
  from loguru import logger
4
- from sqlalchemy import Column, DateTime, Integer, String, Unicode
4
+ from sqlalchemy import DateTime, Unicode
5
+ from sqlalchemy.orm import Mapped, mapped_column
5
6
  from sqlalchemy.schema import Index
6
7
 
7
8
  from flexget import db_schema
@@ -31,19 +32,18 @@ def upgrade(ver, session):
31
32
  class FailedEntry(Base):
32
33
  __tablename__ = 'failed'
33
34
 
34
- id = Column(Integer, primary_key=True)
35
- title = Column(Unicode)
36
- url = Column(String)
37
- tof = Column(DateTime)
38
- reason = Column(Unicode)
39
- count = Column(Integer, default=1)
40
- retry_time = Column(DateTime)
35
+ id: Mapped[int] = mapped_column(primary_key=True)
36
+ title: Mapped[str | None]
37
+ url: Mapped[str | None]
38
+ tof: Mapped[datetime | None] = mapped_column(default=datetime.now)
39
+ reason: Mapped[str | None]
40
+ count: Mapped[int | None] = mapped_column(default=1)
41
+ retry_time: Mapped[datetime | None]
41
42
 
42
43
  def __init__(self, title, url, reason=None):
43
44
  self.title = title
44
45
  self.url = url
45
46
  self.reason = reason
46
- self.tof = datetime.now()
47
47
 
48
48
  def __str__(self):
49
49
  return f'<Failed(title={self.title})>'
@@ -1,7 +1,7 @@
1
1
  from datetime import datetime, timedelta
2
2
 
3
3
  from loguru import logger
4
- from sqlalchemy import Column, DateTime, Integer, String, Unicode
4
+ from sqlalchemy.orm import Mapped, mapped_column
5
5
 
6
6
  from flexget.event import event
7
7
  from flexget.manager import Base
@@ -12,16 +12,13 @@ logger = logger.bind(name='history.db')
12
12
  class History(Base):
13
13
  __tablename__ = 'history'
14
14
 
15
- id = Column(Integer, primary_key=True)
16
- task = Column('feed', String)
17
- filename = Column(String)
18
- url = Column(String)
19
- title = Column(Unicode)
20
- time = Column(DateTime)
21
- details = Column(String)
22
-
23
- def __init__(self):
24
- self.time = datetime.now()
15
+ id: Mapped[int] = mapped_column(primary_key=True)
16
+ task: Mapped[str | None] = mapped_column('feed')
17
+ filename: Mapped[str | None]
18
+ url: Mapped[str | None]
19
+ title: Mapped[str | None]
20
+ time: Mapped[datetime | None] = mapped_column(default=datetime.now)
21
+ details: Mapped[str | None]
25
22
 
26
23
  def __str__(self):
27
24
  return f'<History(filename={self.filename},task={self.task})>'
@@ -1,8 +1,10 @@
1
+ from __future__ import annotations
2
+
1
3
  from datetime import datetime, timedelta
2
4
 
3
5
  from loguru import logger
4
- from sqlalchemy import Boolean, Column, DateTime, Float, Integer, String, Table, Unicode
5
- from sqlalchemy.orm import relationship
6
+ from sqlalchemy import Column, Table
7
+ from sqlalchemy.orm import Mapped, mapped_column, relationship
6
8
  from sqlalchemy.schema import ForeignKey, Index
7
9
 
8
10
  from flexget import db_schema
@@ -19,8 +21,8 @@ Base = db_schema.versioned_base('imdb_lookup', SCHEMA_VER)
19
21
  genres_table = Table(
20
22
  'imdb_movie_genres',
21
23
  Base.metadata,
22
- Column('movie_id', Integer, ForeignKey('imdb_movies.id')),
23
- Column('genre_id', Integer, ForeignKey('imdb_genres.id')),
24
+ Column('movie_id', ForeignKey('imdb_movies.id')),
25
+ Column('genre_id', ForeignKey('imdb_genres.id')),
24
26
  Index('ix_imdb_movie_genres', 'movie_id', 'genre_id'),
25
27
  )
26
28
  Base.register_table(genres_table)
@@ -28,8 +30,8 @@ Base.register_table(genres_table)
28
30
  actors_table = Table(
29
31
  'imdb_movie_actors',
30
32
  Base.metadata,
31
- Column('movie_id', Integer, ForeignKey('imdb_movies.id')),
32
- Column('actor_id', Integer, ForeignKey('imdb_actors.id')),
33
+ Column('movie_id', ForeignKey('imdb_movies.id')),
34
+ Column('actor_id', ForeignKey('imdb_actors.id')),
33
35
  Index('ix_imdb_movie_actors', 'movie_id', 'actor_id'),
34
36
  )
35
37
  Base.register_table(actors_table)
@@ -37,8 +39,8 @@ Base.register_table(actors_table)
37
39
  directors_table = Table(
38
40
  'imdb_movie_directors',
39
41
  Base.metadata,
40
- Column('movie_id', Integer, ForeignKey('imdb_movies.id')),
41
- Column('director_id', Integer, ForeignKey('imdb_directors.id')),
42
+ Column('movie_id', ForeignKey('imdb_movies.id')),
43
+ Column('director_id', ForeignKey('imdb_directors.id')),
42
44
  Index('ix_imdb_movie_directors', 'movie_id', 'director_id'),
43
45
  )
44
46
  Base.register_table(directors_table)
@@ -46,8 +48,8 @@ Base.register_table(directors_table)
46
48
  writers_table = Table(
47
49
  'imdb_movie_writers',
48
50
  Base.metadata,
49
- Column('movie_id', Integer, ForeignKey('imdb_movies.id')),
50
- Column('writer_id', Integer, ForeignKey('imdb_writers.id')),
51
+ Column('movie_id', ForeignKey('imdb_movies.id')),
52
+ Column('writer_id', ForeignKey('imdb_writers.id')),
51
53
  Index('ix_imdb_movie_writers', 'movie_id', 'writer_id'),
52
54
  )
53
55
  Base.register_table(writers_table)
@@ -55,8 +57,8 @@ Base.register_table(writers_table)
55
57
  plot_keywords_table = Table(
56
58
  'imdb_movie_plot_keywords',
57
59
  Base.metadata,
58
- Column('movie_id', Integer, ForeignKey('imdb_movies.id')),
59
- Column('keyword_id', Integer, ForeignKey('imdb_plot_keywords.id')),
60
+ Column('movie_id', ForeignKey('imdb_movies.id')),
61
+ Column('keyword_id', ForeignKey('imdb_plot_keywords.id')),
60
62
  Index('ix_imdb_movie_plot_keywords', 'movie_id', 'keyword_id'),
61
63
  )
62
64
  Base.register_table(plot_keywords_table)
@@ -65,30 +67,34 @@ Base.register_table(plot_keywords_table)
65
67
  class Movie(Base):
66
68
  __tablename__ = 'imdb_movies'
67
69
 
68
- id = Column(Integer, primary_key=True)
69
- title = Column(Unicode)
70
- original_title = Column(Unicode)
71
- url = Column(String, index=True)
70
+ id: Mapped[int] = mapped_column(primary_key=True)
71
+ title: Mapped[str | None]
72
+ original_title: Mapped[str | None]
73
+ url: Mapped[str | None] = mapped_column(index=True)
72
74
 
73
75
  # many-to-many relations
74
- genres = relationship('Genre', secondary=genres_table, backref='movies')
75
- actors = relationship('Actor', secondary=actors_table, backref='movies')
76
- directors = relationship('Director', secondary=directors_table, backref='movies')
77
- writers = relationship('Writer', secondary=writers_table, backref='movies')
78
- plot_keywords = relationship('PlotKeyword', secondary=plot_keywords_table, backref='movies')
79
- languages = relationship('MovieLanguage', order_by='MovieLanguage.prominence')
80
-
81
- score = Column(Float)
82
- votes = Column(Integer)
83
- meta_score = Column(Integer)
84
- year = Column(Integer)
85
- plot_outline = Column(Unicode)
86
- mpaa_rating = Column(String, default='')
87
- photo = Column(String)
76
+ genres: Mapped[list[Genre]] = relationship(secondary=genres_table, back_populates='movies')
77
+ actors: Mapped[list[Actor]] = relationship(secondary=actors_table, back_populates='movies')
78
+ directors: Mapped[list[Director]] = relationship(
79
+ secondary=directors_table, back_populates='movies'
80
+ )
81
+ writers: Mapped[list[Writer]] = relationship(secondary=writers_table, back_populates='movies')
82
+ plot_keywords: Mapped[list[PlotKeyword]] = relationship(
83
+ secondary=plot_keywords_table, back_populates='movies'
84
+ )
85
+ languages: Mapped[list[MovieLanguage]] = relationship(order_by='MovieLanguage.prominence')
86
+
87
+ score: Mapped[float | None]
88
+ votes: Mapped[int | None]
89
+ meta_score: Mapped[int | None]
90
+ year: Mapped[int | None]
91
+ plot_outline: Mapped[str | None]
92
+ mpaa_rating: Mapped[str | None] = mapped_column(default='')
93
+ photo: Mapped[str | None]
88
94
 
89
95
  # updated time, so we can grab new rating counts after 48 hours
90
96
  # set a default, so existing data gets updated with a rating
91
- updated = Column(DateTime)
97
+ updated: Mapped[datetime | None]
92
98
 
93
99
  @property
94
100
  def imdb_id(self):
@@ -115,11 +121,11 @@ class Movie(Base):
115
121
  class MovieLanguage(Base):
116
122
  __tablename__ = 'imdb_movie_languages'
117
123
 
118
- movie_id = Column(Integer, ForeignKey('imdb_movies.id'), primary_key=True)
119
- language_id = Column(Integer, ForeignKey('imdb_languages.id'), primary_key=True)
120
- prominence = Column(Integer)
124
+ movie_id: Mapped[int] = mapped_column(ForeignKey('imdb_movies.id'), primary_key=True)
125
+ language_id: Mapped[int] = mapped_column(ForeignKey('imdb_languages.id'), primary_key=True)
126
+ prominence: Mapped[int | None]
121
127
 
122
- language = relationship('Language')
128
+ language: Mapped[Language] = relationship()
123
129
 
124
130
  def __init__(self, language, prominence=None):
125
131
  self.language = language
@@ -129,8 +135,8 @@ class MovieLanguage(Base):
129
135
  class Language(Base):
130
136
  __tablename__ = 'imdb_languages'
131
137
 
132
- id = Column(Integer, primary_key=True)
133
- name = Column(Unicode)
138
+ id: Mapped[int] = mapped_column(primary_key=True)
139
+ name: Mapped[str | None]
134
140
 
135
141
  def __init__(self, name):
136
142
  self.name = name
@@ -139,8 +145,9 @@ class Language(Base):
139
145
  class Genre(Base):
140
146
  __tablename__ = 'imdb_genres'
141
147
 
142
- id = Column(Integer, primary_key=True)
143
- name = Column(String)
148
+ id: Mapped[int] = mapped_column(primary_key=True)
149
+ name: Mapped[str | None]
150
+ movies: Mapped[list[Movie]] = relationship(secondary=genres_table, back_populates='genres')
144
151
 
145
152
  def __init__(self, name):
146
153
  self.name = name
@@ -149,9 +156,10 @@ class Genre(Base):
149
156
  class Actor(Base):
150
157
  __tablename__ = 'imdb_actors'
151
158
 
152
- id = Column(Integer, primary_key=True)
153
- imdb_id = Column(String)
154
- name = Column(Unicode)
159
+ id: Mapped[int] = mapped_column(primary_key=True)
160
+ imdb_id: Mapped[str | None]
161
+ name: Mapped[str | None]
162
+ movies: Mapped[list[Movie]] = relationship(secondary=actors_table, back_populates='actors')
155
163
 
156
164
  def __init__(self, imdb_id, name=None):
157
165
  self.imdb_id = imdb_id
@@ -161,9 +169,12 @@ class Actor(Base):
161
169
  class Director(Base):
162
170
  __tablename__ = 'imdb_directors'
163
171
 
164
- id = Column(Integer, primary_key=True)
165
- imdb_id = Column(String)
166
- name = Column(Unicode)
172
+ id: Mapped[int] = mapped_column(primary_key=True)
173
+ imdb_id: Mapped[str | None]
174
+ name: Mapped[str | None]
175
+ movies: Mapped[list[Movie]] = relationship(
176
+ secondary=directors_table, back_populates='directors'
177
+ )
167
178
 
168
179
  def __init__(self, imdb_id, name=None):
169
180
  self.imdb_id = imdb_id
@@ -173,9 +184,10 @@ class Director(Base):
173
184
  class Writer(Base):
174
185
  __tablename__ = 'imdb_writers'
175
186
 
176
- id = Column(Integer, primary_key=True)
177
- imdb_id = Column(String)
178
- name = Column(Unicode)
187
+ id: Mapped[int] = mapped_column(primary_key=True)
188
+ imdb_id: Mapped[str | None]
189
+ name: Mapped[str | None]
190
+ movies: Mapped[list[Movie]] = relationship(secondary=writers_table, back_populates='writers')
179
191
 
180
192
  def __init__(self, imdb_id, name=None):
181
193
  self.imdb_id = imdb_id
@@ -185,8 +197,11 @@ class Writer(Base):
185
197
  class PlotKeyword(Base):
186
198
  __tablename__ = 'imdb_plot_keywords'
187
199
 
188
- id = Column(Integer, primary_key=True)
189
- name = Column(String)
200
+ id: Mapped[int] = mapped_column(primary_key=True)
201
+ name: Mapped[str | None]
202
+ movies: Mapped[list[Movie]] = relationship(
203
+ secondary=plot_keywords_table, back_populates='plot_keywords'
204
+ )
190
205
 
191
206
  def __init__(self, name):
192
207
  self.name = name
@@ -195,11 +210,11 @@ class PlotKeyword(Base):
195
210
  class SearchResult(Base):
196
211
  __tablename__ = 'imdb_search'
197
212
 
198
- id = Column(Integer, primary_key=True)
199
- title = Column(Unicode, index=True)
200
- url = Column(String)
201
- fails = Column(Boolean, default=False)
202
- queried = Column(DateTime)
213
+ id: Mapped[int] = mapped_column(primary_key=True)
214
+ title: Mapped[str | None] = mapped_column(index=True)
215
+ url: Mapped[str | None]
216
+ fails: Mapped[bool | None] = mapped_column(default=False)
217
+ queried: Mapped[datetime | None] = mapped_column(default=datetime.now)
203
218
 
204
219
  @property
205
220
  def imdb_id(self):
@@ -208,7 +223,6 @@ class SearchResult(Base):
208
223
  def __init__(self, title, url=None):
209
224
  self.title = title
210
225
  self.url = url
211
- self.queried = datetime.now()
212
226
 
213
227
  def __repr__(self):
214
228
  return f'<SearchResult(title={self.title},url={self.url},fails={self.fails})>'
@@ -1,10 +1,12 @@
1
+ from __future__ import annotations
2
+
1
3
  import pickle
2
4
  from collections.abc import MutableSet
3
5
  from datetime import datetime
4
6
 
5
7
  from loguru import logger
6
- from sqlalchemy import Column, DateTime, ForeignKey, Integer, Unicode, func, or_, select
7
- from sqlalchemy.orm import relationship
8
+ from sqlalchemy import ForeignKey, Unicode, func, or_, select
9
+ from sqlalchemy.orm import DynamicMapped, Mapped, mapped_column, relationship
8
10
  from sqlalchemy.sql.elements import and_
9
11
 
10
12
  from flexget import db_schema
@@ -60,11 +62,11 @@ def upgrade(ver, session):
60
62
 
61
63
  class EntryListList(Base):
62
64
  __tablename__ = 'entry_list_lists'
63
- id = Column(Integer, primary_key=True)
64
- name = Column(Unicode, unique=True)
65
- added = Column(DateTime, default=datetime.now)
66
- entries = relationship(
67
- 'EntryListEntry', backref='list', cascade='all, delete, delete-orphan', lazy='dynamic'
65
+ id: Mapped[int] = mapped_column(primary_key=True)
66
+ name: Mapped[str | None] = mapped_column(unique=True)
67
+ added: Mapped[datetime | None] = mapped_column(default=datetime.now)
68
+ entries: DynamicMapped[EntryListEntry] = relationship(
69
+ back_populates='list_', cascade='all, delete-orphan'
68
70
  )
69
71
 
70
72
  def to_dict(self):
@@ -73,12 +75,13 @@ class EntryListList(Base):
73
75
 
74
76
  class EntryListEntry(Base):
75
77
  __tablename__ = 'entry_list_entries'
76
- id = Column(Integer, primary_key=True)
77
- list_id = Column(Integer, ForeignKey(EntryListList.id), nullable=False)
78
- added = Column(DateTime, default=datetime.now)
79
- title = Column(Unicode)
80
- original_url = Column(Unicode)
81
- _json = Column('json', Unicode)
78
+ id: Mapped[int] = mapped_column(primary_key=True)
79
+ list_id: Mapped[int] = mapped_column(ForeignKey(EntryListList.id))
80
+ added: Mapped[datetime | None] = mapped_column(default=datetime.now)
81
+ title: Mapped[str | None]
82
+ original_url: Mapped[str | None]
83
+ _json: Mapped[str | None] = mapped_column('json')
84
+ list_: Mapped[EntryListList] = relationship(back_populates='entries')
82
85
  entry = entry_synonym('_json')
83
86
 
84
87
  def __init__(self, entry, entry_list_id):
@@ -1,3 +1,5 @@
1
+ from __future__ import annotations
2
+
1
3
  import csv
2
4
  import re
3
5
  from collections.abc import MutableSet
@@ -10,8 +12,7 @@ import pendulum
10
12
  from loguru import logger
11
13
  from requests.exceptions import RequestException
12
14
  from requests.utils import cookiejar_from_dict
13
- from sqlalchemy import Column, String, Unicode
14
- from sqlalchemy.orm import relationship
15
+ from sqlalchemy.orm import Mapped, mapped_column, relationship
15
16
  from sqlalchemy.schema import ForeignKey
16
17
 
17
18
  from flexget import db_schema, plugin
@@ -37,12 +38,14 @@ OTHER_TYPES = ['videogame']
37
38
  class IMDBListUser(Base):
38
39
  __tablename__ = 'imdb_list_user'
39
40
 
40
- user_id = Column(String, primary_key=True)
41
- user_name = Column(Unicode)
42
- _cookies = Column('cookies', Unicode)
41
+ user_id: Mapped[str] = mapped_column(primary_key=True)
42
+ user_name: Mapped[str | None]
43
+ _cookies: Mapped[str | None] = mapped_column('cookies')
43
44
  cookies = json_synonym('_cookies')
44
45
 
45
- lists = relationship('IMDBListList', backref='imdb_user', cascade='all, delete, delete-orphan')
46
+ lists: Mapped[list[IMDBListList]] = relationship(
47
+ back_populates='imdb_user', cascade='all, delete-orphan'
48
+ )
46
49
 
47
50
  def __init__(self, user_name, user_id, cookies):
48
51
  self.user_name = user_name
@@ -53,9 +56,10 @@ class IMDBListUser(Base):
53
56
  class IMDBListList(Base):
54
57
  __tablename__ = 'imdb_list_lists'
55
58
 
56
- list_id = Column(Unicode, primary_key=True)
57
- list_name = Column(Unicode)
58
- user_id = Column(String, ForeignKey('imdb_list_user.user_id'))
59
+ list_id: Mapped[str] = mapped_column(primary_key=True)
60
+ list_name: Mapped[str | None]
61
+ user_id: Mapped[str] = mapped_column(ForeignKey('imdb_list_user.user_id'))
62
+ imdb_user: Mapped[IMDBListUser] = relationship(back_populates='lists')
59
63
 
60
64
  def __init__(self, list_id, list_name, user_id):
61
65
  self.list_id = list_id
@@ -1,8 +1,10 @@
1
+ from __future__ import annotations
2
+
1
3
  from datetime import datetime
2
4
 
3
5
  from loguru import logger
4
- from sqlalchemy import Column, DateTime, ForeignKey, Integer, Unicode, func
5
- from sqlalchemy.orm import relationship
6
+ from sqlalchemy import ForeignKey, func
7
+ from sqlalchemy.orm import DynamicMapped, Mapped, mapped_column, relationship
6
8
  from sqlalchemy.sql.elements import and_
7
9
 
8
10
  from flexget import plugin
@@ -26,11 +28,11 @@ class MovieListBase:
26
28
 
27
29
  class MovieListList(Base):
28
30
  __tablename__ = 'movie_list_lists'
29
- id = Column(Integer, primary_key=True)
30
- name = Column(Unicode, unique=True)
31
- added = Column(DateTime, default=datetime.now)
32
- movies = relationship(
33
- 'MovieListMovie', backref='list', cascade='all, delete, delete-orphan', lazy='dynamic'
31
+ id: Mapped[int] = mapped_column(primary_key=True)
32
+ name: Mapped[str | None] = mapped_column(unique=True)
33
+ added: Mapped[datetime | None] = mapped_column(default=datetime.now)
34
+ movies: DynamicMapped[MovieListMovie] = relationship(
35
+ back_populates='list_', cascade='all, delete-orphan'
34
36
  )
35
37
 
36
38
  def __repr__(self):
@@ -42,12 +44,15 @@ class MovieListList(Base):
42
44
 
43
45
  class MovieListMovie(Base):
44
46
  __tablename__ = 'movie_list_movies'
45
- id = Column(Integer, primary_key=True)
46
- added = Column(DateTime, default=datetime.now)
47
- title = Column(Unicode)
48
- year = Column(Integer)
49
- list_id = Column(Integer, ForeignKey(MovieListList.id), nullable=False)
50
- ids = relationship('MovieListID', backref='movie', cascade='all, delete, delete-orphan')
47
+ id: Mapped[int] = mapped_column(primary_key=True)
48
+ added: Mapped[datetime | None] = mapped_column(default=datetime.now)
49
+ title: Mapped[str | None]
50
+ year: Mapped[int | None]
51
+ list_id: Mapped[int] = mapped_column(ForeignKey(MovieListList.id))
52
+ list_: Mapped[MovieListList] = relationship(back_populates='movies')
53
+ ids: Mapped[list[MovieListID]] = relationship(
54
+ back_populates='movie', cascade='all, delete-orphan'
55
+ )
51
56
 
52
57
  def __repr__(self):
53
58
  return f'<MovieListMovie title={self.title},year={self.year},list_id={self.list_id}>'
@@ -83,11 +88,12 @@ class MovieListMovie(Base):
83
88
 
84
89
  class MovieListID(Base):
85
90
  __tablename__ = 'movie_list_ids'
86
- id = Column(Integer, primary_key=True)
87
- added = Column(DateTime, default=datetime.now)
88
- id_name = Column(Unicode)
89
- id_value = Column(Unicode)
90
- movie_id = Column(Integer, ForeignKey(MovieListMovie.id))
91
+ id: Mapped[int] = mapped_column(primary_key=True)
92
+ added: Mapped[datetime | None] = mapped_column(default=datetime.now)
93
+ id_name: Mapped[str | None]
94
+ id_value: Mapped[str | None]
95
+ movie_id: Mapped[int | None] = mapped_column(ForeignKey(MovieListMovie.id))
96
+ movie: Mapped[MovieListMovie | None] = relationship(back_populates='ids')
91
97
 
92
98
  def __repr__(self):
93
99
  return f'<MovieListID id_name={self.id_name},id_value={self.id_value},movie_id={self.movie_id}>'