Unit3Dup 0.12.0__tar.gz → 0.12.2__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 (108) hide show
  1. {unit3dup-0.12.0 → unit3dup-0.12.2}/PKG-INFO +15 -15
  2. {unit3dup-0.12.0 → unit3dup-0.12.2}/Unit3Dup.egg-info/PKG-INFO +15 -15
  3. unit3dup-0.12.2/Unit3Dup.egg-info/requires.txt +19 -0
  4. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/settings.py +1 -1
  5. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/tags.py +1 -0
  6. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/torrent_clients.py +6 -2
  7. {unit3dup-0.12.0 → unit3dup-0.12.2}/pyproject.toml +1 -1
  8. unit3dup-0.12.2/requirements.txt +19 -0
  9. unit3dup-0.12.0/Unit3Dup.egg-info/requires.txt +0 -19
  10. unit3dup-0.12.0/requirements.txt +0 -22
  11. {unit3dup-0.12.0 → unit3dup-0.12.2}/LICENSE +0 -0
  12. {unit3dup-0.12.0 → unit3dup-0.12.2}/README.rst +0 -0
  13. {unit3dup-0.12.0 → unit3dup-0.12.2}/Unit3Dup.egg-info/SOURCES.txt +0 -0
  14. {unit3dup-0.12.0 → unit3dup-0.12.2}/Unit3Dup.egg-info/dependency_links.txt +0 -0
  15. {unit3dup-0.12.0 → unit3dup-0.12.2}/Unit3Dup.egg-info/entry_points.txt +0 -0
  16. {unit3dup-0.12.0 → unit3dup-0.12.2}/Unit3Dup.egg-info/top_level.txt +0 -0
  17. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/__init__.py +0 -0
  18. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/bdinfo_string.py +0 -0
  19. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/bittorrent.py +0 -0
  20. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/command.py +0 -0
  21. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/constants.py +0 -0
  22. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/database.py +0 -0
  23. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/__init__.py +0 -0
  24. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/__init__.py +0 -0
  25. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/client.py +0 -0
  26. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/__init__.py +0 -0
  27. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/ftpx_service.py +0 -0
  28. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/ftpx_session.py +0 -0
  29. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/menu.py +0 -0
  30. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/models/__init__.py +0 -0
  31. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/ftpx/core/models/list.py +0 -0
  32. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/__init__.py +0 -0
  33. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/client.py +0 -0
  34. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/__init__.py +0 -0
  35. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/api.py +0 -0
  36. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/models/__init__.py +0 -0
  37. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/models/search.py +0 -0
  38. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/platformid.py +0 -0
  39. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/igdb/core/tags.py +0 -0
  40. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/imageHost.py +0 -0
  41. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/mediaresult.py +0 -0
  42. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/sessions/__init__.py +0 -0
  43. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/sessions/agents.py +0 -0
  44. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/sessions/exceptions.py +0 -0
  45. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/sessions/session.py +0 -0
  46. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/__init__.py +0 -0
  47. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/__init__.py +0 -0
  48. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/api.py +0 -0
  49. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/keywords.py +0 -0
  50. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
  51. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
  52. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/alternative_titles.py +0 -0
  53. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
  54. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
  55. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
  56. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
  57. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
  58. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
  59. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
  60. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
  61. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
  62. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
  63. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/theMovieDB/core/videos.py +0 -0
  64. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/trailers/__init__.py +0 -0
  65. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/trailers/api.py +0 -0
  66. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/trailers/response.py +0 -0
  67. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/external_services/tvdb.py +0 -0
  68. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/extractor.py +0 -0
  69. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/frames.py +0 -0
  70. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/mediainfo.py +0 -0
  71. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/mediainfo_string.py +0 -0
  72. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/title.py +0 -0
  73. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/__init__.py +0 -0
  74. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/ast.py +0 -0
  75. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/ban_list.py +0 -0
  76. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/data.py +0 -0
  77. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/itt.py +0 -0
  78. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/ptt.py +0 -0
  79. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/signs_list.py +0 -0
  80. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/sis.py +0 -0
  81. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/tags_list.py +0 -0
  82. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/trackers/trackers.py +0 -0
  83. {unit3dup-0.12.0 → unit3dup-0.12.2}/common/utility.py +0 -0
  84. {unit3dup-0.12.0 → unit3dup-0.12.2}/setup.cfg +0 -0
  85. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/__init__.py +0 -0
  86. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/__main__.py +0 -0
  87. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/automode.py +0 -0
  88. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/bot.py +0 -0
  89. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/duplicate.py +0 -0
  90. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/exceptions.py +0 -0
  91. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media.py +0 -0
  92. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/ContentManager.py +0 -0
  93. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/DocuManager.py +0 -0
  94. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/GameManager.py +0 -0
  95. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/MediaInfoManager.py +0 -0
  96. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/SeedManager.py +0 -0
  97. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/TorrentManager.py +0 -0
  98. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/VideoManager.py +0 -0
  99. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/__init__.py +0 -0
  100. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/media_manager/common.py +0 -0
  101. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/pvtDocu.py +0 -0
  102. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/pvtTorrent.py +0 -0
  103. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/pvtTracker.py +0 -0
  104. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/pvtVideo.py +0 -0
  105. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/torrent.py +0 -0
  106. {unit3dup-0.12.0 → unit3dup-0.12.2}/unit3dup/upload.py +0 -0
  107. {unit3dup-0.12.0 → unit3dup-0.12.2}/view/__init__.py +0 -0
  108. {unit3dup-0.12.0 → unit3dup-0.12.2}/view/custom_console.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.12.0
3
+ Version: 0.12.2
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -9,24 +9,24 @@ Requires-Python: >=3.10
9
9
  Description-Content-Type: text/x-rst
10
10
  License-File: LICENSE
11
11
  Requires-Dist: guessit==3.8.0
12
- Requires-Dist: pymediainfo==6.1.0
12
+ Requires-Dist: pymediainfo==7.0.1
13
13
  Requires-Dist: qbittorrent-api==2026.6.0
14
- Requires-Dist: pydantic==2.10.6
15
- Requires-Dist: requests==2.32.3
16
- Requires-Dist: rich==13.7.1
17
- Requires-Dist: torf==4.2.7
18
- Requires-Dist: tqdm==4.66.5
14
+ Requires-Dist: pydantic==2.13.4
15
+ Requires-Dist: requests==2.34.2
16
+ Requires-Dist: rich==15.0.0
17
+ Requires-Dist: torf==4.3.1
18
+ Requires-Dist: tqdm==4.68.2
19
19
  Requires-Dist: thefuzz==0.22.1
20
- Requires-Dist: unidecode==1.3.8
21
- Requires-Dist: pillow==10.4.0
22
- Requires-Dist: patool==2.4.0
20
+ Requires-Dist: Unidecode==1.4.0
21
+ Requires-Dist: pillow==12.2.0
22
+ Requires-Dist: patool==4.0.5
23
23
  Requires-Dist: diskcache==5.6.3
24
- Requires-Dist: httpx==0.27.2
24
+ Requires-Dist: httpx==0.28.1
25
25
  Requires-Dist: transmission-rpc==7.0.11
26
- Requires-Dist: pathvalidate==3.2.3
27
- Requires-Dist: bencode2==0.3.24
28
- Requires-Dist: rtorrent-rpc==0.9.4
29
- Requires-Dist: tvdb_v4_official==1.1.0
26
+ Requires-Dist: pathvalidate==3.3.1
27
+ Requires-Dist: bencode2==0.3.30
28
+ Requires-Dist: rtorrent-rpc==0.9.7
29
+ Requires-Dist: tvdb-v4-official==1.1.0
30
30
  Dynamic: license-file
31
31
 
32
32
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.12.0
3
+ Version: 0.12.2
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -9,24 +9,24 @@ Requires-Python: >=3.10
9
9
  Description-Content-Type: text/x-rst
10
10
  License-File: LICENSE
11
11
  Requires-Dist: guessit==3.8.0
12
- Requires-Dist: pymediainfo==6.1.0
12
+ Requires-Dist: pymediainfo==7.0.1
13
13
  Requires-Dist: qbittorrent-api==2026.6.0
14
- Requires-Dist: pydantic==2.10.6
15
- Requires-Dist: requests==2.32.3
16
- Requires-Dist: rich==13.7.1
17
- Requires-Dist: torf==4.2.7
18
- Requires-Dist: tqdm==4.66.5
14
+ Requires-Dist: pydantic==2.13.4
15
+ Requires-Dist: requests==2.34.2
16
+ Requires-Dist: rich==15.0.0
17
+ Requires-Dist: torf==4.3.1
18
+ Requires-Dist: tqdm==4.68.2
19
19
  Requires-Dist: thefuzz==0.22.1
20
- Requires-Dist: unidecode==1.3.8
21
- Requires-Dist: pillow==10.4.0
22
- Requires-Dist: patool==2.4.0
20
+ Requires-Dist: Unidecode==1.4.0
21
+ Requires-Dist: pillow==12.2.0
22
+ Requires-Dist: patool==4.0.5
23
23
  Requires-Dist: diskcache==5.6.3
24
- Requires-Dist: httpx==0.27.2
24
+ Requires-Dist: httpx==0.28.1
25
25
  Requires-Dist: transmission-rpc==7.0.11
26
- Requires-Dist: pathvalidate==3.2.3
27
- Requires-Dist: bencode2==0.3.24
28
- Requires-Dist: rtorrent-rpc==0.9.4
29
- Requires-Dist: tvdb_v4_official==1.1.0
26
+ Requires-Dist: pathvalidate==3.3.1
27
+ Requires-Dist: bencode2==0.3.30
28
+ Requires-Dist: rtorrent-rpc==0.9.7
29
+ Requires-Dist: tvdb-v4-official==1.1.0
30
30
  Dynamic: license-file
31
31
 
32
32
 
@@ -0,0 +1,19 @@
1
+ guessit==3.8.0
2
+ pymediainfo==7.0.1
3
+ qbittorrent-api==2026.6.0
4
+ pydantic==2.13.4
5
+ requests==2.34.2
6
+ rich==15.0.0
7
+ torf==4.3.1
8
+ tqdm==4.68.2
9
+ thefuzz==0.22.1
10
+ Unidecode==1.4.0
11
+ pillow==12.2.0
12
+ patool==4.0.5
13
+ diskcache==5.6.3
14
+ httpx==0.28.1
15
+ transmission-rpc==7.0.11
16
+ pathvalidate==3.3.1
17
+ bencode2==0.3.30
18
+ rtorrent-rpc==0.9.7
19
+ tvdb-v4-official==1.1.0
@@ -24,7 +24,7 @@ user_tags_file = "tags_list.json"
24
24
  user_sign_file = "sign_list.json"
25
25
  bane_file = "ban_list.json"
26
26
 
27
- version = "0.12.0"
27
+ version = "0.12.2"
28
28
 
29
29
  if os.name == "nt":
30
30
  WATCHER_DESTINATION_PATH: Path = Path(
@@ -59,6 +59,7 @@ video_encoder_translate = {
59
59
 
60
60
  TAG_NORMALIZE = {
61
61
  "BLURAY": "BluRay",
62
+ "BLU-RAY": "BluRay",
62
63
  "WEB": "WEB-DL",
63
64
  "WEBDL": "WEB-DL",
64
65
  "WEBMUX": "WEBMux",
@@ -168,9 +168,13 @@ class QbittorrentClient(TorrClient):
168
168
  category = config_settings.torrent_client_config.CATEGORY_MOVIE
169
169
  if category=='tv':
170
170
  category = config_settings.torrent_client_config.CATEGORY_MOVIE
171
- self.client.torrents_add_tags(tags=config_settings.torrent_client_config.TAG, torrent_hashes=info_hash)
172
- self.client.torrents_set_category(category=category, torrent_hashes=info_hash)
173
171
 
172
+ try:
173
+ self.client.torrents_set_category(category=category, torrent_hashes=info_hash)
174
+ except qbittorrentapi.APIError:
175
+ custom_console.bot_warning_log(f"<> qbittorrent Category '{category}' does not exist")
176
+
177
+ self.client.torrents_add_tags(tags=config_settings.torrent_client_config.TAG, torrent_hashes=info_hash)
174
178
 
175
179
  def send_to_client(self, tracker_data_response: str, torrent: Mytorrent, content: Media,archive_path: str):
176
180
 
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  dynamic = ["dependencies"]
7
7
  name = "Unit3Dup"
8
- version = "0.12.0"
8
+ version = "0.12.2"
9
9
  description = "An uploader for the Unit3D torrent tracker"
10
10
  readme = "README.rst"
11
11
  requires-python = ">=3.10"
@@ -0,0 +1,19 @@
1
+ guessit==3.8.0
2
+ pymediainfo==7.0.1 # era 6.1.0
3
+ qbittorrent-api==2026.6.0
4
+ pydantic==2.13.4 # era 2.10.6
5
+ requests==2.34.2 # era 2.32.3
6
+ rich==15.0.0 # era 13.7.1
7
+ torf==4.3.1 # era 4.2.7
8
+ tqdm==4.68.2 # era 4.66.5
9
+ thefuzz==0.22.1
10
+ Unidecode==1.4.0 # era 1.3.8
11
+ pillow==12.2.0 # era 10.4.0
12
+ patool==4.0.5 # era 2.4.0
13
+ diskcache==5.6.3
14
+ httpx==0.28.1 # era 0.27.2
15
+ transmission-rpc==7.0.11
16
+ pathvalidate==3.3.1 # era 3.2.3
17
+ bencode2==0.3.30 # era 0.3.24
18
+ rtorrent-rpc==0.9.7 # era 0.9.4
19
+ tvdb-v4-official==1.1.0
@@ -1,19 +0,0 @@
1
- guessit==3.8.0
2
- pymediainfo==6.1.0
3
- qbittorrent-api==2026.6.0
4
- pydantic==2.10.6
5
- requests==2.32.3
6
- rich==13.7.1
7
- torf==4.2.7
8
- tqdm==4.66.5
9
- thefuzz==0.22.1
10
- unidecode==1.3.8
11
- pillow==10.4.0
12
- patool==2.4.0
13
- diskcache==5.6.3
14
- httpx==0.27.2
15
- transmission-rpc==7.0.11
16
- pathvalidate==3.2.3
17
- bencode2==0.3.24
18
- rtorrent-rpc==0.9.4
19
- tvdb_v4_official==1.1.0
@@ -1,22 +0,0 @@
1
- guessit==3.8.0
2
- pymediainfo==6.1.0
3
- qbittorrent-api==2026.6.0
4
- pydantic==2.10.6
5
- requests==2.32.3
6
- rich==13.7.1
7
- torf==4.2.7
8
- tqdm==4.66.5
9
- thefuzz==0.22.1
10
- unidecode==1.3.8
11
- pillow==10.4.0
12
- patool==2.4.0
13
- diskcache==5.6.3
14
- httpx==0.27.2
15
- transmission-rpc==7.0.11
16
- pathvalidate==3.2.3
17
- bencode2==0.3.24
18
- rtorrent-rpc==0.9.4
19
- tvdb_v4_official==1.1.0
20
-
21
-
22
-
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes