janeczku / calibre-web

:books: Web app for browsing, reading and downloading eBooks stored in a Calibre database
GNU General Public License v3.0
12.57k stars 1.32k forks source link

Upload format error on FreeBSD #1354

Closed hancockks closed 4 years ago

hancockks commented 4 years ago

Describe the bug/problem A clear and concise description of what the bug is. If you are asking for support, please check our Wiki if your question is already answered there.

To Reproduce Steps to reproduce the behavior:

  1. Go to 'Edit Metadata'
  2. Click on 'Upload Format'
  3. Select new format (mobi imported, uploading epub)
  4. See error

Logfile Calibre-Web Internal Server Error 500 Internal Server Error: The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application. Traceback (most recent call last): File "/root/calibre-web/vendor/flask/app.py", line 2447, in wsgi_app response = self.full_dispatch_request() File "/root/calibre-web/vendor/flask/app.py", line 1952, in full_dispatch_request rv = self.handle_user_exception(e) File "/root/calibre-web/vendor/flask/app.py", line 1821, in handle_user_exception reraise(exc_type, exc_value, tb) File "/root/calibre-web/vendor/flask/_compat.py", line 39, in reraise raise value File "/root/calibre-web/vendor/flask/app.py", line 1950, in full_dispatch_request rv = self.dispatch_request() File "/root/calibre-web/vendor/flask/app.py", line 1936, in dispatch_request return self.view_functionsrule.endpoint File "/root/calibre-web/cps/web.py", line 185, in decorated_view return login_required(func)(*args, kwargs) File "/root/calibre-web/vendor/flask_login/utils.py", line 272, in decorated_view return func(*args, *kwargs) File "/root/calibre-web/cps/web.py", line 267, in inner return f(args, kwargs) File "/root/calibre-web/cps/editbooks.py", line 492, in edit_book meta = upload_single_file(request, book, book_id) File "/root/calibre-web/cps/editbooks.py", line 456, in upload_single_file saved_filename, *os.path.splitext(requested_file.filename)) TypeError: process() missing 1 required positional argument: 'rarExcecutable'

Expected behavior format is uploaded, however no cover is added

Screenshots If applicable, add screenshots to help explain your problem.

Environment (please complete the following information): Program Library--Installed Version Platform--FreeBSD 11.3-RELEASE-p7 FreeBSD 11.3-RELEASE-p7 #0 r325575+ca0f1a6ba25(HEAD): Mon Apr 6 20:57:38 UTC 2020 root@tnbuild02.tn.ixsystems.com:/freenas-releng/freenas/_BE/objs/freenas-releng/freenas/_BE/os/sys/FreeNAS.amd64 amd64 amd64 Python--3.7.7 (default, Apr 23 2020, 01:19:33) [Clang 8.0.0 (tags/RELEASE_800/final 356365)] Calibre_Web--0.6.7 Beta - $Format:%H$ - $Format:%cI$ WebServer--Tornado 6.0.4 Flask--1.1.2 Flask_Login--0.5.0 Flask_Principal--0.4.0 Werkzeug--1.0.1 Babel--2.8.0 Jinja2--2.11.2 Requests--2.23.0 SqlAlchemy--1.3.16 pySqlite--2.6.0 SQLite--3.30.1 iso639--0.4.5 pytz--2020.1 Unidecode--installed Image Magick--not installed PyPdf--v1.26.0 lxml--v4.5.0.0 Wand--not installed Pillow--v7.0.0 Comic_API--not installed ebook converter--ebook-convert (calibre 4.13.0)

Additional context Add any other context about the problem here. [e.g. access via reverse proxy]

OzzieIsaacs commented 4 years ago

I added a fix and also created a new release