Unit3Dup 0.8.6__tar.gz → 0.8.8__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.
- {unit3dup-0.8.6 → unit3dup-0.8.8}/PKG-INFO +47 -28
- {unit3dup-0.8.6 → unit3dup-0.8.8}/README.rst +47 -28
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/PKG-INFO +47 -28
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/SOURCES.txt +2 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/top_level.txt +2 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/imageHost.py +20 -1
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/settings.py +52 -7
- {unit3dup-0.8.6 → unit3dup-0.8.8}/pyproject.toml +1 -1
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/TorrentManager.py +12 -3
- unit3dup-0.8.8/unit3dup/web/__init__.py +0 -0
- unit3dup-0.8.8/unit3dup/web/main.py +46 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/LICENSE +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/dependency_links.txt +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/entry_points.txt +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/Unit3Dup.egg-info/requires.txt +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/bdinfo_string.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/bittorrent.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/command.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/constants.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/models/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/models/indexers.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/models/search.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/models/torrent_client_config.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/pw_api.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/pw_manager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/pw_service.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/client.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/ftpx_service.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/ftpx_session.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/menu.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/models/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/ftpx/core/models/list.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/client.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/api.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/models/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/models/search.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/platformid.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/igdb/core/tags.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/imdb.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/mediaresult.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/sessions/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/sessions/agents.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/sessions/exceptions.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/sessions/session.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/api.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/keywords.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/alternative_titles.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/videos.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/trailers/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/trailers/api.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/trailers/response.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/extractor.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/frames.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/mediainfo.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/mediainfo_string.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/title.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/torrent_clients.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/trackers/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/trackers/data.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/trackers/itt.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/trackers/sis.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/trackers/trackers.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/common/utility.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/requirements.txt +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/setup.cfg +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/__main__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/automode.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/bot.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/duplicate.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/exceptions.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/ContentManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/DocuManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/GameManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/MediaInfoManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/SeedManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/VideoManager.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/media_manager/common.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/pvtDocu.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/pvtTorrent.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/pvtTracker.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/pvtVideo.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/torrent.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/unit3dup/upload.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/view/__init__.py +0 -0
- {unit3dup-0.8.6 → unit3dup-0.8.8}/view/custom_console.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Unit3Dup
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.8
|
|
4
4
|
Summary: An uploader for the Unit3D torrent tracker
|
|
5
5
|
Author: Parzival
|
|
6
6
|
License-Expression: MIT
|
|
@@ -63,22 +63,22 @@ It performs the following tasks:
|
|
|
63
63
|
- Add a custom title to your seasons
|
|
64
64
|
- Generate info for a title using MediaInfo
|
|
65
65
|
|
|
66
|
-
.. image:: https://img.shields.io/badge/Upload_PDF-gr
|
|
67
|
-
:alt: Install Upload PDF
|
|
68
|
-
|
|
69
66
|
unit3dup can grab the first page, convert it to an image (using xpdf),
|
|
70
67
|
and then the bot can upload it to an image host, then add the link to the torrent page description.
|
|
71
68
|
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
.. image:: https://img.shields.io/badge/INSTALL-gr
|
|
70
|
+
:alt: install
|
|
71
|
+
|
|
72
|
+
Ubuntu/Debian
|
|
73
|
+
-------------
|
|
74
74
|
pip install unit3dup
|
|
75
75
|
|
|
76
76
|
Upgrade
|
|
77
77
|
-------
|
|
78
|
-
pip install --upgrade
|
|
78
|
+
pip install unit3dup --upgrade
|
|
79
79
|
|
|
80
|
-
Dependencies
|
|
81
|
-
|
|
80
|
+
Ubuntu/Debian Dependencies
|
|
81
|
+
--------------------------
|
|
82
82
|
sudo apt install ffmpeg
|
|
83
83
|
|
|
84
84
|
Only for pdf
|
|
@@ -86,6 +86,18 @@ Only for pdf
|
|
|
86
86
|
sudo apt install poppler-utils
|
|
87
87
|
|
|
88
88
|
|
|
89
|
+
Windows Dependencies
|
|
90
|
+
--------------------
|
|
91
|
+
1. Download and unzip https://www.ffmpeg.org/download.html and add its folder to
|
|
92
|
+
PATH environment user variable
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
96
|
+
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
97
|
+
3. *Close and reopen a new console window*
|
|
98
|
+
4. Test it: Run ``pdftocairo`` in the terminal
|
|
99
|
+
|
|
100
|
+
|
|
89
101
|
Alternative method
|
|
90
102
|
------------------
|
|
91
103
|
|
|
@@ -93,37 +105,34 @@ Alternative method
|
|
|
93
105
|
|
|
94
106
|
2. unzip it
|
|
95
107
|
|
|
96
|
-
3. pip install
|
|
108
|
+
3. pip install .
|
|
109
|
+
|
|
110
|
+
4. unit3dup
|
|
111
|
+
|
|
97
112
|
|
|
98
|
-
|
|
113
|
+
.. image:: https://img.shields.io/badge/Bot_UPDATE-gr
|
|
114
|
+
:alt: Bot Update
|
|
99
115
|
|
|
100
|
-
|
|
116
|
+
1. pip install unit3dup --upgrade
|
|
101
117
|
|
|
102
|
-
1. Run: ``sudo apt install poppler-utils``
|
|
103
|
-
2. sudo apt install ffmpeg
|
|
104
118
|
|
|
105
119
|
|
|
106
|
-
|
|
120
|
+
RUN
|
|
121
|
+
======
|
|
107
122
|
|
|
108
|
-
|
|
109
|
-
PATH environment user variable
|
|
123
|
+
.. code-block:: python
|
|
110
124
|
|
|
125
|
+
unit3dup -u <filepath>
|
|
126
|
+
unit3dup -f <folderpath>
|
|
127
|
+
unit3dup -scan <folderpath>
|
|
111
128
|
|
|
112
|
-
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
113
|
-
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
114
|
-
3. *Close and reopen a new console window*
|
|
115
|
-
4. Test it: Run ``pdftocairo`` in the terminal
|
|
116
129
|
|
|
117
130
|
|
|
131
|
+
DOC
|
|
132
|
+
===
|
|
118
133
|
|
|
119
|
-
|
|
120
|
-
:alt: Bot Update
|
|
134
|
+
Link `Unit3DUP <https://unit3dup.readthedocs.io/en/latest/index.html#>`_
|
|
121
135
|
|
|
122
|
-
1. Delete only the bot folder
|
|
123
|
-
2. Download the release zip
|
|
124
|
-
3. Unzip it
|
|
125
|
-
4. No config needed
|
|
126
|
-
5. Done!
|
|
127
136
|
|
|
128
137
|
|
|
129
138
|
Trackers
|
|
@@ -148,6 +157,7 @@ united by a shared passion for torrents and more
|
|
|
148
157
|
:alt: Discord Server
|
|
149
158
|
|
|
150
159
|
|
|
160
|
+
|
|
151
161
|
🎯 Streaming Community
|
|
152
162
|
======================
|
|
153
163
|
|
|
@@ -155,3 +165,12 @@ united by a shared passion for torrents and more
|
|
|
155
165
|
|
|
156
166
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
157
167
|
built by a community of people with a shared interest in programming.
|
|
168
|
+
|
|
169
|
+
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
170
|
+
:target: https://t.me/+hj294GabGWJlMDI8
|
|
171
|
+
:alt: Unisciti su Telegram
|
|
172
|
+
|
|
173
|
+
.. image:: https://img.shields.io/badge/StreamingCommunity-blue.svg
|
|
174
|
+
:target: https://github.com/Arrowar/StreamingCommunity
|
|
175
|
+
:alt: StreamingCommunity Badge
|
|
176
|
+
|
|
@@ -32,22 +32,22 @@ It performs the following tasks:
|
|
|
32
32
|
- Add a custom title to your seasons
|
|
33
33
|
- Generate info for a title using MediaInfo
|
|
34
34
|
|
|
35
|
-
.. image:: https://img.shields.io/badge/Upload_PDF-gr
|
|
36
|
-
:alt: Install Upload PDF
|
|
37
|
-
|
|
38
35
|
unit3dup can grab the first page, convert it to an image (using xpdf),
|
|
39
36
|
and then the bot can upload it to an image host, then add the link to the torrent page description.
|
|
40
37
|
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
.. image:: https://img.shields.io/badge/INSTALL-gr
|
|
39
|
+
:alt: install
|
|
40
|
+
|
|
41
|
+
Ubuntu/Debian
|
|
42
|
+
-------------
|
|
43
43
|
pip install unit3dup
|
|
44
44
|
|
|
45
45
|
Upgrade
|
|
46
46
|
-------
|
|
47
|
-
pip install --upgrade
|
|
47
|
+
pip install unit3dup --upgrade
|
|
48
48
|
|
|
49
|
-
Dependencies
|
|
50
|
-
|
|
49
|
+
Ubuntu/Debian Dependencies
|
|
50
|
+
--------------------------
|
|
51
51
|
sudo apt install ffmpeg
|
|
52
52
|
|
|
53
53
|
Only for pdf
|
|
@@ -55,6 +55,18 @@ Only for pdf
|
|
|
55
55
|
sudo apt install poppler-utils
|
|
56
56
|
|
|
57
57
|
|
|
58
|
+
Windows Dependencies
|
|
59
|
+
--------------------
|
|
60
|
+
1. Download and unzip https://www.ffmpeg.org/download.html and add its folder to
|
|
61
|
+
PATH environment user variable
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
65
|
+
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
66
|
+
3. *Close and reopen a new console window*
|
|
67
|
+
4. Test it: Run ``pdftocairo`` in the terminal
|
|
68
|
+
|
|
69
|
+
|
|
58
70
|
Alternative method
|
|
59
71
|
------------------
|
|
60
72
|
|
|
@@ -62,37 +74,34 @@ Alternative method
|
|
|
62
74
|
|
|
63
75
|
2. unzip it
|
|
64
76
|
|
|
65
|
-
3. pip install
|
|
77
|
+
3. pip install .
|
|
78
|
+
|
|
79
|
+
4. unit3dup
|
|
80
|
+
|
|
66
81
|
|
|
67
|
-
|
|
82
|
+
.. image:: https://img.shields.io/badge/Bot_UPDATE-gr
|
|
83
|
+
:alt: Bot Update
|
|
68
84
|
|
|
69
|
-
|
|
85
|
+
1. pip install unit3dup --upgrade
|
|
70
86
|
|
|
71
|
-
1. Run: ``sudo apt install poppler-utils``
|
|
72
|
-
2. sudo apt install ffmpeg
|
|
73
87
|
|
|
74
88
|
|
|
75
|
-
|
|
89
|
+
RUN
|
|
90
|
+
======
|
|
76
91
|
|
|
77
|
-
|
|
78
|
-
PATH environment user variable
|
|
92
|
+
.. code-block:: python
|
|
79
93
|
|
|
94
|
+
unit3dup -u <filepath>
|
|
95
|
+
unit3dup -f <folderpath>
|
|
96
|
+
unit3dup -scan <folderpath>
|
|
80
97
|
|
|
81
|
-
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
82
|
-
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
83
|
-
3. *Close and reopen a new console window*
|
|
84
|
-
4. Test it: Run ``pdftocairo`` in the terminal
|
|
85
98
|
|
|
86
99
|
|
|
100
|
+
DOC
|
|
101
|
+
===
|
|
87
102
|
|
|
88
|
-
|
|
89
|
-
:alt: Bot Update
|
|
103
|
+
Link `Unit3DUP <https://unit3dup.readthedocs.io/en/latest/index.html#>`_
|
|
90
104
|
|
|
91
|
-
1. Delete only the bot folder
|
|
92
|
-
2. Download the release zip
|
|
93
|
-
3. Unzip it
|
|
94
|
-
4. No config needed
|
|
95
|
-
5. Done!
|
|
96
105
|
|
|
97
106
|
|
|
98
107
|
Trackers
|
|
@@ -117,10 +126,20 @@ united by a shared passion for torrents and more
|
|
|
117
126
|
:alt: Discord Server
|
|
118
127
|
|
|
119
128
|
|
|
129
|
+
|
|
120
130
|
🎯 Streaming Community
|
|
121
131
|
======================
|
|
122
132
|
|
|
123
133
|
`goto GitHub Project <https://github.com/Arrowar/StreamingCommunity>`_
|
|
124
134
|
|
|
125
135
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
126
|
-
built by a community of people with a shared interest in programming.
|
|
136
|
+
built by a community of people with a shared interest in programming.
|
|
137
|
+
|
|
138
|
+
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
139
|
+
:target: https://t.me/+hj294GabGWJlMDI8
|
|
140
|
+
:alt: Unisciti su Telegram
|
|
141
|
+
|
|
142
|
+
.. image:: https://img.shields.io/badge/StreamingCommunity-blue.svg
|
|
143
|
+
:target: https://github.com/Arrowar/StreamingCommunity
|
|
144
|
+
:alt: StreamingCommunity Badge
|
|
145
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Unit3Dup
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.8
|
|
4
4
|
Summary: An uploader for the Unit3D torrent tracker
|
|
5
5
|
Author: Parzival
|
|
6
6
|
License-Expression: MIT
|
|
@@ -63,22 +63,22 @@ It performs the following tasks:
|
|
|
63
63
|
- Add a custom title to your seasons
|
|
64
64
|
- Generate info for a title using MediaInfo
|
|
65
65
|
|
|
66
|
-
.. image:: https://img.shields.io/badge/Upload_PDF-gr
|
|
67
|
-
:alt: Install Upload PDF
|
|
68
|
-
|
|
69
66
|
unit3dup can grab the first page, convert it to an image (using xpdf),
|
|
70
67
|
and then the bot can upload it to an image host, then add the link to the torrent page description.
|
|
71
68
|
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
.. image:: https://img.shields.io/badge/INSTALL-gr
|
|
70
|
+
:alt: install
|
|
71
|
+
|
|
72
|
+
Ubuntu/Debian
|
|
73
|
+
-------------
|
|
74
74
|
pip install unit3dup
|
|
75
75
|
|
|
76
76
|
Upgrade
|
|
77
77
|
-------
|
|
78
|
-
pip install --upgrade
|
|
78
|
+
pip install unit3dup --upgrade
|
|
79
79
|
|
|
80
|
-
Dependencies
|
|
81
|
-
|
|
80
|
+
Ubuntu/Debian Dependencies
|
|
81
|
+
--------------------------
|
|
82
82
|
sudo apt install ffmpeg
|
|
83
83
|
|
|
84
84
|
Only for pdf
|
|
@@ -86,6 +86,18 @@ Only for pdf
|
|
|
86
86
|
sudo apt install poppler-utils
|
|
87
87
|
|
|
88
88
|
|
|
89
|
+
Windows Dependencies
|
|
90
|
+
--------------------
|
|
91
|
+
1. Download and unzip https://www.ffmpeg.org/download.html and add its folder to
|
|
92
|
+
PATH environment user variable
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
96
|
+
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
97
|
+
3. *Close and reopen a new console window*
|
|
98
|
+
4. Test it: Run ``pdftocairo`` in the terminal
|
|
99
|
+
|
|
100
|
+
|
|
89
101
|
Alternative method
|
|
90
102
|
------------------
|
|
91
103
|
|
|
@@ -93,37 +105,34 @@ Alternative method
|
|
|
93
105
|
|
|
94
106
|
2. unzip it
|
|
95
107
|
|
|
96
|
-
3. pip install
|
|
108
|
+
3. pip install .
|
|
109
|
+
|
|
110
|
+
4. unit3dup
|
|
111
|
+
|
|
97
112
|
|
|
98
|
-
|
|
113
|
+
.. image:: https://img.shields.io/badge/Bot_UPDATE-gr
|
|
114
|
+
:alt: Bot Update
|
|
99
115
|
|
|
100
|
-
|
|
116
|
+
1. pip install unit3dup --upgrade
|
|
101
117
|
|
|
102
|
-
1. Run: ``sudo apt install poppler-utils``
|
|
103
|
-
2. sudo apt install ffmpeg
|
|
104
118
|
|
|
105
119
|
|
|
106
|
-
|
|
120
|
+
RUN
|
|
121
|
+
======
|
|
107
122
|
|
|
108
|
-
|
|
109
|
-
PATH environment user variable
|
|
123
|
+
.. code-block:: python
|
|
110
124
|
|
|
125
|
+
unit3dup -u <filepath>
|
|
126
|
+
unit3dup -f <folderpath>
|
|
127
|
+
unit3dup -scan <folderpath>
|
|
111
128
|
|
|
112
|
-
1. Download and unzip poppler for Windows from https://github.com/oschwartz10612/poppler-windows/releases
|
|
113
|
-
2. Put the folder 'bin' in the system path (e.g. ``C:\poppler-24.08.0\Library\bin``)
|
|
114
|
-
3. *Close and reopen a new console window*
|
|
115
|
-
4. Test it: Run ``pdftocairo`` in the terminal
|
|
116
129
|
|
|
117
130
|
|
|
131
|
+
DOC
|
|
132
|
+
===
|
|
118
133
|
|
|
119
|
-
|
|
120
|
-
:alt: Bot Update
|
|
134
|
+
Link `Unit3DUP <https://unit3dup.readthedocs.io/en/latest/index.html#>`_
|
|
121
135
|
|
|
122
|
-
1. Delete only the bot folder
|
|
123
|
-
2. Download the release zip
|
|
124
|
-
3. Unzip it
|
|
125
|
-
4. No config needed
|
|
126
|
-
5. Done!
|
|
127
136
|
|
|
128
137
|
|
|
129
138
|
Trackers
|
|
@@ -148,6 +157,7 @@ united by a shared passion for torrents and more
|
|
|
148
157
|
:alt: Discord Server
|
|
149
158
|
|
|
150
159
|
|
|
160
|
+
|
|
151
161
|
🎯 Streaming Community
|
|
152
162
|
======================
|
|
153
163
|
|
|
@@ -155,3 +165,12 @@ united by a shared passion for torrents and more
|
|
|
155
165
|
|
|
156
166
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
157
167
|
built by a community of people with a shared interest in programming.
|
|
168
|
+
|
|
169
|
+
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
170
|
+
:target: https://t.me/+hj294GabGWJlMDI8
|
|
171
|
+
:alt: Unisciti su Telegram
|
|
172
|
+
|
|
173
|
+
.. image:: https://img.shields.io/badge/StreamingCommunity-blue.svg
|
|
174
|
+
:target: https://github.com/Arrowar/StreamingCommunity
|
|
175
|
+
:alt: StreamingCommunity Badge
|
|
176
|
+
|
|
@@ -102,5 +102,7 @@ unit3dup/media_manager/TorrentManager.py
|
|
|
102
102
|
unit3dup/media_manager/VideoManager.py
|
|
103
103
|
unit3dup/media_manager/__init__.py
|
|
104
104
|
unit3dup/media_manager/common.py
|
|
105
|
+
unit3dup/web/__init__.py
|
|
106
|
+
unit3dup/web/main.py
|
|
105
107
|
view/__init__.py
|
|
106
108
|
view/custom_console.py
|
|
@@ -5,7 +5,6 @@ import json
|
|
|
5
5
|
import time
|
|
6
6
|
import requests
|
|
7
7
|
|
|
8
|
-
from PIL import Image
|
|
9
8
|
from abc import ABC, abstractmethod
|
|
10
9
|
from common import config_settings
|
|
11
10
|
from view import custom_console
|
|
@@ -163,6 +162,20 @@ class ImgFi(ImageUploader):
|
|
|
163
162
|
def get_field_name(self) -> str:
|
|
164
163
|
return 'source'
|
|
165
164
|
|
|
165
|
+
class PassIMA(ImageUploader):
|
|
166
|
+
|
|
167
|
+
priority= config_settings.user_preferences.PASSIMA_PRIORITY
|
|
168
|
+
def get_endpoint(self) -> str:
|
|
169
|
+
return "https://passtheima.ge/api/1/upload"
|
|
170
|
+
|
|
171
|
+
def get_data(self) -> dict:
|
|
172
|
+
return {
|
|
173
|
+
"key": self.key,
|
|
174
|
+
"title": self.image_name,
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
def get_field_name(self) -> str:
|
|
178
|
+
return 'source'
|
|
166
179
|
|
|
167
180
|
|
|
168
181
|
class ImageUploaderFallback:
|
|
@@ -213,6 +226,10 @@ class ImageUploaderFallback:
|
|
|
213
226
|
|
|
214
227
|
if uploader_host == "ImgFi":
|
|
215
228
|
return response['image']['url']
|
|
229
|
+
|
|
230
|
+
if uploader_host == "PassIMA":
|
|
231
|
+
return response['image']['url']
|
|
232
|
+
|
|
216
233
|
return None
|
|
217
234
|
|
|
218
235
|
class Build:
|
|
@@ -232,6 +249,7 @@ class Build:
|
|
|
232
249
|
self.LENSDUMP_KEY= config_settings.tracker_config.LENSDUMP_KEY
|
|
233
250
|
self.PTSCREENS_KEY= config_settings.tracker_config.PTSCREENS_KEY
|
|
234
251
|
self.IMGFI_KEY = config_settings.tracker_config.IMGFI_KEY
|
|
252
|
+
self.PASSIMA_KEY = config_settings.tracker_config.PASSIMA_KEY
|
|
235
253
|
self.extracted_frames = extracted_frames
|
|
236
254
|
|
|
237
255
|
|
|
@@ -251,6 +269,7 @@ class Build:
|
|
|
251
269
|
PtScreens(img_bytes, self.PTSCREENS_KEY,image_name=image_name),
|
|
252
270
|
LensDump(img_bytes, self.LENSDUMP_KEY,image_name=image_name),
|
|
253
271
|
ImgFi(img_bytes, self.IMGFI_KEY,image_name=image_name),
|
|
272
|
+
PassIMA(img_bytes, self.PASSIMA_KEY, image_name=image_name),
|
|
254
273
|
]
|
|
255
274
|
|
|
256
275
|
# Sorting list based on priority
|
|
@@ -13,7 +13,7 @@ from common.utility import ManageTitles
|
|
|
13
13
|
from common import trackers
|
|
14
14
|
|
|
15
15
|
config_file = "Unit3Dbot.json"
|
|
16
|
-
version = "0.8.
|
|
16
|
+
version = "0.8.8"
|
|
17
17
|
|
|
18
18
|
if os.name == "nt":
|
|
19
19
|
PW_TORRENT_ARCHIVE_PATH: Path = Path(os.getenv("LOCALAPPDATA", ".")) / "Unit3Dup_config" / "pw_torrent_archive"
|
|
@@ -46,6 +46,14 @@ def get_default_path(field: str)-> str:
|
|
|
46
46
|
return str(default_paths[field])
|
|
47
47
|
|
|
48
48
|
|
|
49
|
+
|
|
50
|
+
class Ccolors:
|
|
51
|
+
OKCYAN = '\033[96m'
|
|
52
|
+
OKGREEN = '\033[92m'
|
|
53
|
+
WARNING = '\033[93m'
|
|
54
|
+
FAIL = '\033[91m'
|
|
55
|
+
ENDC = '\033[0m'
|
|
56
|
+
|
|
49
57
|
class TrackerConfig(BaseModel):
|
|
50
58
|
ITT_URL: str
|
|
51
59
|
ITT_APIKEY: str | None = None
|
|
@@ -60,6 +68,7 @@ class TrackerConfig(BaseModel):
|
|
|
60
68
|
LENSDUMP_KEY: str | None = None
|
|
61
69
|
PTSCREENS_KEY: str | None = None
|
|
62
70
|
IMGFI_KEY: str | None = None
|
|
71
|
+
PASSIMA_KEY: str | None = None
|
|
63
72
|
YOUTUBE_KEY: str | None = None
|
|
64
73
|
IGDB_CLIENT_ID: str | None = None
|
|
65
74
|
IGDB_ID_SECRET: str | None = None
|
|
@@ -92,6 +101,7 @@ class UserPreferences(BaseModel):
|
|
|
92
101
|
FREE_IMAGE_PRIORITY: int = 2
|
|
93
102
|
IMGBB_PRIORITY: int = 3
|
|
94
103
|
IMGFI_PRIORITY: int = 4
|
|
104
|
+
PASSIMA_PRIORITY: int = 5
|
|
95
105
|
NUMBER_OF_SCREENSHOTS: int = 4
|
|
96
106
|
YOUTUBE_FAV_CHANNEL_ID: str | None = None
|
|
97
107
|
YOUTUBE_CHANNEL_ENABLE: bool = False
|
|
@@ -113,7 +123,7 @@ class UserPreferences(BaseModel):
|
|
|
113
123
|
CACHE_SCR: bool = False
|
|
114
124
|
CACHE_DBONLINE: bool = False
|
|
115
125
|
PERSONAL_RELEASE: bool = False
|
|
116
|
-
|
|
126
|
+
FAST_LOAD: int = 0
|
|
117
127
|
|
|
118
128
|
|
|
119
129
|
class Options(BaseModel):
|
|
@@ -419,7 +429,7 @@ class Config(BaseModel):
|
|
|
419
429
|
section[field] = Validate.string(value=section[field], field_name=field)
|
|
420
430
|
|
|
421
431
|
if field in ['NUMBER_OF_SCREENSHOTS','COMPRESS_SCSHOT','IMGBB_PRIORITY','FREE_IMAGE_PRIORITY',
|
|
422
|
-
'LENSDUMP_PRIORITY','WATCHER_INTERVAL','SIZE_TH']:
|
|
432
|
+
'LENSDUMP_PRIORITY','PASSIMA_PRIORITY','WATCHER_INTERVAL','SIZE_TH', 'FAST_LOAD']:
|
|
423
433
|
section[field] = Validate.integer(value=section[field], field_name=field)
|
|
424
434
|
|
|
425
435
|
if field == 'PREFERRED_LANG':
|
|
@@ -502,6 +512,7 @@ class Load:
|
|
|
502
512
|
"LENSDUMP_KEY": "no_key",
|
|
503
513
|
"PTSCREENS_KEY": "no_key",
|
|
504
514
|
"IMGFI_KEY": "no_key",
|
|
515
|
+
"PASSIMA_KEY": "no_key",
|
|
505
516
|
"YOUTUBE_KEY": "no_key",
|
|
506
517
|
"IGDB_CLIENT_ID": "no_key",
|
|
507
518
|
"IGDB_ID_SECRET": "no_key",
|
|
@@ -524,6 +535,7 @@ class Load:
|
|
|
524
535
|
"SHARED_RTORR_PATH": "no_path",
|
|
525
536
|
"TORRENT_CLIENT": "qbittorrent",
|
|
526
537
|
"TAG": "ADDED TORRENTS",
|
|
538
|
+
"FAST_LOAD": "0",
|
|
527
539
|
},
|
|
528
540
|
"user_preferences": {
|
|
529
541
|
"PTSCREENS_PRIORITY": 0,
|
|
@@ -531,6 +543,7 @@ class Load:
|
|
|
531
543
|
"FREE_IMAGE_PRIORITY": 2,
|
|
532
544
|
"IMGBB_PRIORITY": 3,
|
|
533
545
|
"IMGFI_PRIORITY": 4,
|
|
546
|
+
"PASSIMA_PRIORITY": 5,
|
|
534
547
|
"NUMBER_OF_SCREENSHOTS": 4,
|
|
535
548
|
"YOUTUBE_FAV_CHANNEL_ID": "UCGCbxpnt25hWPFLSbvwfg_w",
|
|
536
549
|
"YOUTUBE_CHANNEL_ENABLE": "False",
|
|
@@ -740,10 +753,11 @@ class JsonConfig:
|
|
|
740
753
|
return json.loads(json_data)
|
|
741
754
|
|
|
742
755
|
except json.JSONDecodeError as e:
|
|
743
|
-
print(f"
|
|
744
|
-
|
|
745
|
-
print(
|
|
746
|
-
|
|
756
|
+
print(f"* Please fix the error{Ccolors.WARNING} near Line {e.lineno}{Ccolors.ENDC}"
|
|
757
|
+
f" and {Ccolors.WARNING}Column {e.colno}{Ccolors.ENDC} in the config file: *\n")
|
|
758
|
+
print(f"{e.msg}\n")
|
|
759
|
+
# Seek And...
|
|
760
|
+
self.aim(line=e.lineno,col=e.colno)
|
|
747
761
|
exit(1)
|
|
748
762
|
except FileNotFoundError:
|
|
749
763
|
print(f"Configuration '{self.default_json_path}' not found")
|
|
@@ -796,3 +810,34 @@ class JsonConfig:
|
|
|
796
810
|
|
|
797
811
|
print(message)
|
|
798
812
|
|
|
813
|
+
def aim(self, line: int, col: int):
|
|
814
|
+
"""
|
|
815
|
+
Try to identify the exact location of json error
|
|
816
|
+
Args:
|
|
817
|
+
line: Error line from the try block
|
|
818
|
+
col: Error line from the try block
|
|
819
|
+
Returns:
|
|
820
|
+
None
|
|
821
|
+
"""
|
|
822
|
+
|
|
823
|
+
# Open the configuration file
|
|
824
|
+
with open(self.default_json_path, 'r') as file:
|
|
825
|
+
lines = file.readlines()
|
|
826
|
+
|
|
827
|
+
# Test the line value
|
|
828
|
+
if line <= len(lines):
|
|
829
|
+
# Create a "context" around the error....
|
|
830
|
+
line_context1 = lines[line -2].rstrip('\n')
|
|
831
|
+
line_context2 = lines[line + 1].rstrip('\n')
|
|
832
|
+
|
|
833
|
+
# Try to identify the position
|
|
834
|
+
line_text = lines[line - 1].rstrip('\n')
|
|
835
|
+
print(f"{line_context1}")
|
|
836
|
+
print(f"{Ccolors.WARNING}>>> {line_text}{Ccolors.ENDC}")
|
|
837
|
+
|
|
838
|
+
# Put the cursor under the error
|
|
839
|
+
cursor = ' ' * (col-1) + '^'
|
|
840
|
+
print(f"{Ccolors.WARNING} {cursor}{Ccolors.ENDC}")
|
|
841
|
+
print(f"{line_context2}")
|
|
842
|
+
else:
|
|
843
|
+
print("Line number is out of range !")
|
|
@@ -29,6 +29,11 @@ class TorrentManager:
|
|
|
29
29
|
self.games: list[Media] = []
|
|
30
30
|
self.doc: list[Media] = []
|
|
31
31
|
self.cli = cli
|
|
32
|
+
self.fast_load = config_settings.user_preferences.FAST_LOAD
|
|
33
|
+
if self.fast_load < 1 or self.fast_load > 150:
|
|
34
|
+
# full list
|
|
35
|
+
self.fast_load = None
|
|
36
|
+
|
|
32
37
|
|
|
33
38
|
def process(self, contents: list) -> None:
|
|
34
39
|
"""
|
|
@@ -57,6 +62,7 @@ class TorrentManager:
|
|
|
57
62
|
if content.category in {System.category_list.get(System.MOVIE), System.category_list.get(System.TV_SHOW)}
|
|
58
63
|
]
|
|
59
64
|
|
|
65
|
+
|
|
60
66
|
# // Build a Doc list
|
|
61
67
|
self.doc = [
|
|
62
68
|
content for content in contents if content.category == System.category_list.get(System.DOCUMENTARY)
|
|
@@ -78,21 +84,24 @@ class TorrentManager:
|
|
|
78
84
|
for selected_tracker in trackers_name_list:
|
|
79
85
|
# Build the torrent file and upload each GAME to the tracker
|
|
80
86
|
if self.games:
|
|
81
|
-
game_manager = GameManager(contents=self.games
|
|
87
|
+
game_manager = GameManager(contents=self.games[:self.fast_load],
|
|
88
|
+
cli=self.cli)
|
|
82
89
|
game_process_results = game_manager.process(selected_tracker=selected_tracker,
|
|
83
90
|
tracker_name_list=trackers_name_list,
|
|
84
91
|
tracker_archive=self.tracker_archive)
|
|
85
92
|
|
|
86
93
|
# Build the torrent file and upload each VIDEO to the trackers
|
|
87
94
|
if self.videos:
|
|
88
|
-
video_manager = VideoManager(contents=self.videos
|
|
95
|
+
video_manager = VideoManager(contents=self.videos[:self.fast_load],
|
|
96
|
+
cli=self.cli)
|
|
89
97
|
video_process_results = video_manager.process(selected_tracker=selected_tracker,
|
|
90
98
|
tracker_name_list=trackers_name_list,
|
|
91
99
|
tracker_archive=self.tracker_archive)
|
|
92
100
|
|
|
93
101
|
# Build the torrent file and upload each DOC to the tracker
|
|
94
102
|
if self.doc and not self.cli.reseed:
|
|
95
|
-
docu_manager = DocuManager(contents=self.doc
|
|
103
|
+
docu_manager = DocuManager(contents=self.doc[:self.fast_load],
|
|
104
|
+
cli=self.cli)
|
|
96
105
|
docu_process_results = docu_manager.process(selected_tracker=selected_tracker,
|
|
97
106
|
tracker_name_list=trackers_name_list,
|
|
98
107
|
tracker_archive=self.tracker_archive)
|
|
File without changes
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from fastapi import FastAPI, APIRouter
|
|
2
|
+
from random import randint
|
|
3
|
+
from common.torrent_clients import TransmissionClient, QbittorrentClient, RTorrentClient
|
|
4
|
+
from common.command import CommandLine
|
|
5
|
+
from common.settings import Load,DEFAULT_JSON_PATH
|
|
6
|
+
|
|
7
|
+
from unit3dup.torrent import View
|
|
8
|
+
from unit3dup import pvtTracker
|
|
9
|
+
from unit3dup.bot import Bot
|
|
10
|
+
from view import custom_console
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
import uvicorn
|
|
14
|
+
import argparse
|
|
15
|
+
from random import randint
|
|
16
|
+
|
|
17
|
+
app = FastAPI()
|
|
18
|
+
|
|
19
|
+
# Classe che gestisce gli endpoint
|
|
20
|
+
class WebApp:
|
|
21
|
+
def __init__(self, config: Load):
|
|
22
|
+
self.router = APIRouter()
|
|
23
|
+
self.numb = randint(0, 100)
|
|
24
|
+
self._setup_routes()
|
|
25
|
+
|
|
26
|
+
def _setup_routes(self):
|
|
27
|
+
# Add the endpoints
|
|
28
|
+
self.router.add_api_route("/", self.root, methods=["GET"])
|
|
29
|
+
self.router.add_api_route("/upload/{name}", self.upload, methods=["GET"])
|
|
30
|
+
|
|
31
|
+
async def root(self):
|
|
32
|
+
return {"message": f"Hello World {self.numb}"}
|
|
33
|
+
|
|
34
|
+
async def upload(self, name: str):
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
return {"message": f"Hello {name}, numb is {self.numb}"}
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def web():
|
|
42
|
+
web_app = WebApp(config=Load().load_config())
|
|
43
|
+
app.include_router(web_app.router)
|
|
44
|
+
uvicorn.run("unit3dup.web.main:app", host="127.0.0.1", port=8000, reload=True)
|
|
45
|
+
|
|
46
|
+
|
|
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
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/Pw/core/models/torrent_client_config.py
RENAMED
|
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
|
|
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
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/__init__.py
RENAMED
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/details.py
RENAMED
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/movie/movie.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/details.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.8.6 → unit3dup-0.8.8}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py
RENAMED
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|