When SD card support is disabled on the server, remove any client side
filtering to just SD files since there aren't any and there won't be UI
turn remove the filter either. Should address #1300
There could be some odd circumstances in development environments
leading to an older Click version being installed during an update restart,
so since it doesn't hurt as much to stay backwards compatible here, just
be it.
On win32 systems, Click 6.x uses win32 library functions to retrieve
the command line arguments in order to not have their encoding
destroyed. That clashes with rewriting of sys.argv like e.g. the PyCharm
debugger is doing it, causing the debugger parameters to be passed
on to the click parser.
Added a workaround that detects if sys.argv and the os specific
argument list don't have the same length and truncates the os specific
list if that is the case, in order to not pass on arguments from the os
that where already cut off from sys.argv by something else.
* was still only reading one line per 500ms, now reads
all available lines from stdout and stderr
* patch was written with too many newlines
* git reset was missing --hard parameter for forced versions
* proper unicode handling
* added git clean for code base reset
* make sure path to python executable doesn't have left-over
quotes on windows
We don't want to wait indefinitely for our send and command queues to empty, so
we don't use .join but instead a busy timeout wait routine.
Also fixed a couple of small issues found while preparing comm unit tests.
Added parameter "wait" to "close" method, defaults to True. Will have the
close method wait for all lines to be sent that are currently in the send queue.
In case of an error, no waiting will be done.
Made it necessary to correctly track task completion in the send queue, also
made that change to the command queue while at it.
Backported from devel, commit 7f2476e513
"Error:" lines can also be produced by OctoPrint itself in case of serial exceptions or
connection failures, so "the firmware reported" was misleading.
That way no M105 cascades can be triggered by the M105 polling timer (or the M27
polling timer).
Adjusted logging output to make clear which queue rejected typed entry.
Made timeout handler send M105 with type "temperature" as well to make sure
we don't suddenly have two M105 directly after each other in the send_queue,
one from the polling timer, one from the timeout handler.
Fixes#1275
put and get are now overwritten to create t-tuple out of provided item
and item_type on put, and to only return item on get.
_put and _get extract item_type and use that for managing the
lookup set.