Casvt / Kapowarr

Kapowarr is a software to build and manage a comic book library, fitting in the *arr suite of software.
https://casvt.github.io/Kapowarr/
GNU General Public License v3.0
348 stars 12 forks source link

Unable to add root folder due to hard-coded (plex-related) path in root_folders.py #156

Closed gibxxi closed 2 months ago

gibxxi commented 2 months ago

Description of the bug

Since the most recent commit for the file root_folders.py, it is now impossible to add root folders in the UI due to a hard-coded (non-existent) path, which seems to reference Plex media centre / player, from within root_folders.py (lines 34-43 in the code).

To Reproduce

  1. Go to 'settings'...
  2. Click on 'add root folder'
  3. type any (existing) local path on the host system.
  4. click on the 'add' button to the right of the UI.
  5. UI will reset, and 'added' folder does not appear in the UI due to a python error, logged in the 'Kapowarr.screen.log' as follows:

[1;31:40m[02:48:42][ERROR] Exception on /api/rootfolder [POST] Traceback (most recent call last): File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/venv/lib/python3.11/site-packages/flask/app.py", line 1473, in wsgi_app response = self.full_dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/venv/lib/python3.11/site-packages/flask/app.py", line 882, in full_dispatch_request rv = self.handle_user_exception(e) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/venv/lib/python3.11/site-packages/flask/app.py", line 880, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/venv/lib/python3.11/site-packages/flask/app.py", line 865, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/frontend/api.py", line 69, in wrapper return method(*args, *kwargs) ^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/frontend/api.py", line 222, in wrapper result = method(args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/frontend/api.py", line 425, in api_rootfolder root_folder = root_folders.add(folder) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/backend/root_folders.py", line 92, in add for current_rf in self.get_all(): ^^^^^^^^^^^^^^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/backend/root_folders.py", line 34, in get_all self.cache = { ^ File "/share/CACHEDEV1_DATA/.qpkg/Kapowarr/repo-cache/backend/root_folders.py", line 39, in disk_usage('/home/cas/plex-media') File "/opt/lib/python3.11/shutil.py", line 1344, in disk_usage FileNotFoundError: [Errno 2] No such file or directory: '/home/cas/plex-media'[0m

Expected behaviour

Add a root (library) folder and have it appear within the UI as such, and be usable.

Version info

Kapowarr version: v1.0.0-beta-4 Python version: 3.11.7.final.0 Database version: 19

QNAP TS453mini NAS (QPKG) via 'Sherpa' CLI package manager (Not running as a Docker install). Website / forum thread (for 'Sherpa package manager): https://forum.qnap.com/viewtopic.php?t=132373

Dan / Gib.

Casvt commented 2 months ago

Wow that's pretty dumb of me to leave there. I'll fix it tomorrow. It's advised you download the latest release instead of cloning the dev branch. You'd have to start over though, so that's something to consider.

gibxxi commented 2 months ago

Thanks for the advice, i'll be sure and pass that on to the package manager who incorporates this app. I'm not able to choose which branch he chooses to follow on the fly.

:)

Dan / Gib.