#5414·OctoPrint

[Request] Allow ignoring failing plugin installs due to network hiccups during restore

Author: markusddCreated Jun 8, 2026Updated Jun 9, 2026
Labelsrequest

The problem

The timeout for downloading the plugins during restore is too short apparently and it always fails at some random plugin in this process, so I cannot proceed.

Can this be lengthened from the cli somehow so it tries to pull through? I cannot get my printer setup back like this.

Also, it fails in a way that requires being able to read Python stacktraces, not providing a concise error message. I can do that no problem, but it might be an issue for less proficient users.

System Info bundle cannot be downloaded as Octoprint is not set up yet. I zipped the logs folder and attached it.

System is a RasPi 3B+, SD is a SanDisk 16GB (has been running like this for years, needed to upgrade though as Python was unsupported and OS was still on Buster)

Did the issue persist even in safe mode?

I cannot test this issue in safe mode (state why below)

If you could not test in safe mode, please state why ("currently printing" is NOT an excuse!)

This is about restore during system setup

Version of OctoPrint

OctoPrint version : 1.11.7 OctoPi version : 1.1.0

Operating system running OctoPrint

Linux octopi 6.6.51+rpt-rpi-v7 #1 SMP Raspbian 1:6.6.51-1+rpt3 (2024-10-08) armv7l

Browser and version of browser, operating system running browser

Firefox, Brave, no difference

Printer model & used firmware incl. version

Elegoo neptune 3 pro (probably irrelevant for this)

Systeminfo Bundle

logs.zip

Checklist of files to include below

  • Contents of the JavaScript browser console (always include in cases of issues with the user interface)
  • Screenshots and/or videos showing the problem (always include in case of issues with the user interface)
  • GCODE file with which to reproduce (always include in case of issues with GCODE analysis or printing behaviour)

Additional information & file uploads

Example log, here it failed right at the first plugin but as said it's not always the case.

Uploading backup, this can take a while. Please wait...
 
Restoring from backup...
 
Unpacking backup to /tmp/tmp25l9u29i...
Unpacked
Known and installable plugins: cancelobject, SpoolManager, UltimakerFormatPackage, excluderegion, dashboard, z_probe_offset, prettygcode, prusaslicerthumbnails, PrintJobHistory, backupscheduler, DisplayLayerProgress, tasmota, PrintTimeGenius, costestimation, preheat, filemanager
 
Installing plugin "cancelobject"...
Removing temporary unpacked folder
Error while running restore
Traceback (most recent call last):
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connectionpool.py", line 534, in _make_request
    response = conn.getresponse()
               ^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connection.py", line 516, in getresponse
    httplib_response = super().getresponse()
                       ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/http/client.py", line 1374, in getresponse
    response.begin()
  File "/usr/lib/python3.11/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/http/client.py", line 279, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/socket.py", line 706, in readinto
    return self._sock.recv_into(b)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/ssl.py", line 1311, in recv_into
    return self.read(nbytes, buffer)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/ssl.py", line 1167, in read
    return self._sslobj.read(len, buffer)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TimeoutError: The read operation timed out

The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/util/retry.py", line 474, in increment
    raise reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/util/util.py", line 39, in reraise
    raise value
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connectionpool.py", line 536, in _make_request
    self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
  File "/opt/octopi/oprint/lib/python3.11/site-packages/urllib3/connectionpool.py", line 367, in _raise_timeout
    raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='github.com', port=443): Read timed out. (read timeout=7)

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/opt/octopi/oprint/lib/python3.11/site-packages/octoprint/plugins/backup/__init__.py", line 1332, in _restore_backup
    on_install_plugins(known_plugins)
  File "/opt/octopi/oprint/lib/python3.11/site-packages/octoprint/plugins/backup/__init__.py", line 282, in on_install_plugins
    self.__class__._install_plugin(
  File "/opt/octopi/oprint/lib/python3.11/site-packages/octoprint/plugins/backup/__init__.py", line 897, in _install_plugin
    with prepare_install(plugin["archive"], log=log) as prep:
  File "/usr/lib/python3.11/contextlib.py", line 137, in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/octoprint/util/plugins.py", line 132, in prepare_install
    install_arg = download_file(install_arg, folder.name)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/octoprint/util/net.py", line 300, in download_file
    with requests.get(url, stream=True, timeout=(connect_timeout, read_timeout)) as r:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/octopi/oprint/lib/python3.11/site-packages/requests/adapters.py", line 713, in send
    raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='github.com', port=443): Read timed out. (read timeout=7)
 
Restore failed! Check the above output and octoprint.log for reasons as to why.
Removing temporary zip