Commit graph

1799 commits

Author SHA1 Message Date
Gina Häußge
542ccb5421 Slight simplification of setProgressData calls in standard printer 2016-03-11 16:29:59 +01:00
Gina Häußge
6d8eb682c1 Use concatenation instead of format strings in comm layer 2016-03-11 12:45:30 +01:00
Gina Häußge
d701c261c3 Less processing overhead when uploading to SD
Better structured "don't handle phases" checks and adjusted
job wrapper that doesn't try to apply tool tracking or temperature
offsets.
2016-03-11 12:35:53 +01:00
Gina Häußge
7b16f38ba3 Fetch timeouts for communication only once from settings 2016-03-11 11:16:27 +01:00
Gina Häußge
337329eda0 Added test stub for quick performance tests of the comm layer
Running comm.py with parameters port, baudrate, local file, remote file will
upload local file to remote file on the printer's sd using the provided connection
parameters.

Example:

    python -m octoprint.util.comm /dev/ttyUSB0 115200 /path/to/some.gcode test.gco

No plugin support! Only regular serial connection supported.
2016-03-11 10:43:02 +01:00
Gina Häußge
47b7552f91 Decouple comm progress reporting from processing 2016-03-11 08:48:18 +01:00
Gina Häußge
6736224962 Removed logging from CountedEvent 2016-03-11 08:28:39 +01:00
Gina Häußge
c9009496f6 Don't trigger an M105 on timeout during a resend
Had to reorder message processing a bit in order to be able to
properly handle further resends in timeout situations.

Has the added benefit that "ok" now gets processed very early
and now extra state based processing is needed anymore.
2016-03-10 19:05:16 +01:00
Gina Häußge
d393a6730c Don't have M28 response generate extra "ok"
Fixes #1272
2016-03-10 16:03:52 +01:00
Gina Häußge
069bfdd9f8 New flag to have M29 response inject "ok"
Adjusted virtual printer to allow marking of M29 as broken re sending
of ok.

Fixes #1273
2016-03-10 15:58:59 +01:00
Gina Häußge
23d2cdec76 Use 0 as default bed temperature in slicer
Should prevent slicing result to contain bed temperature settings even if
printer has a heated bed configured unless slicing profile also contains a
temperature.

Fixes #1268
2016-03-10 11:55:17 +01:00
Gina Häußge
1a308a1bc7 Reset line numbers for sd streaming as well 2016-03-09 15:44:23 +01:00
Gina Häußge
13098dde00 Removed unused "{start|end}SdFileTransfer" 2016-03-09 15:37:33 +01:00
Gina Häußge
27d1a6ca37 Virtual printer: request correct line in dummy resend 2016-03-09 15:33:17 +01:00
Gina Häußge
1616fb4de8 Better error reporting in comm layer
Option to log last terminal lines before a resend (defaults to off for now),
more exception logging in octoprint.log in various error cases, also log
unsolvable resend requests with requested and current line number.
2016-03-09 15:24:40 +01:00
Gina Häußge
07d8d4b88d Made virtual printer a bit faster 2016-03-09 12:09:44 +01:00
Gina Häußge
2a3d9c291d Fixed a merge error 2016-03-09 11:54:05 +01:00
Gina Häußge
b36290a1f2 Added new serial config options to UI
Also pushed more advanced config option into an initially hidden
"Advanced Options" section, similar to other places.
(cherry picked from commit 84b343a)
2016-03-09 11:41:49 +01:00
Gina Häußge
48d74ef2fd Improved handshake procedure on comm layer
"Hello" command sent to printer to trigger initial handshake can now be
configured. Commands that _always_ necessitate to be sent with checksum/
line number (e.g. M110 on Marlin) can be configured as such too.

Also fixed an issue causing the "Hello" command to not be actually enqueued
first thing on opening a connection. Seems to not have caused harm in the
wild, but was unintentional.
(cherry picked from commit 5c2ae37)
2016-03-09 11:23:50 +01:00
Paul de Vries
b1711f33d2 Change for attribute with correct id 2016-03-09 09:54:34 +01:00
Alexander Leisentritt
54ef93005a fixed indentation 2016-03-07 18:10:26 +01:00
Andrew Malota
a00faf2a33 allow download/management of mp4 timelapse too 2016-03-07 07:44:11 -06:00
Ben Stern
5af78de226 Add output in Fahrenheit as well as Celsius. 2016-03-05 14:25:16 -05:00
Gina Häußge
35e20162ec Revert "Improved connecting phase"
Improved connecting for some printers, destroyed it
completely for others, so this needs some more work/
thought before it's ready for prime time.

This reverts commit c82ec3d3af.
2016-02-22 13:33:34 +01:00
Gina Häußge
c82ec3d3af Improved connecting phase
M110 is now sent every second until either a connection is established or the connection
attempt times out. That should prevent connection handshakes from failing due to
some initial garbage on the line that swallows an ok.
2016-02-17 11:33:49 +01:00
Gina Häußge
5c06bd5036 Kill background tasks of virtual printer on disconnect
Otherwise there might be errors with wait-for-heatup or sd printing
situations where self.outgoing is gone suddenly.
2016-02-16 15:09:22 +01:00
Gina Häußge
21034b381c Cancelling a print that is not ongoing doesn't make sense 2016-02-16 10:04:06 +01:00
Gina Häußge
beb5850361 Only try to record recovery data if a print was ongoing 2016-02-16 10:03:02 +01:00
Gina Häußge
1ea0cf9213 Always reset the job data on disconnect
If former state was "Printing", so far the full disconnect state handling
wasn't done properly.
2016-02-16 09:52:56 +01:00
Gina Häußge
4081a25f48 Merge branch 'fix/errorOnSdCardFail' into maintenance 2016-02-16 09:28:43 +01:00
Gina Häußge
49f4a0c5b0 line == "ok" => line.startswith("ok")
Fixes an issue introduced with M109 fix that causes
"SD card ok" not to be parsed correctly anymore.
2016-02-16 09:23:25 +01:00
Gina Häußge
d267a752cd Capture NoSuchStorage error on SD card fails
We currently do not have a storage configured for SD card since
that hasn't yet been ported to the storage interface. So on an
SD card fail we need to capture that error when attempting to log
the print recovery data, or there will be issues processing
the cancel properly. A bit more of error handling is a good
idea here in any case too.

Fixes #1226
2016-02-16 09:13:22 +01:00
Gina Häußge
eb48a50139 Fixed wrong tracking of current tool for M109 Tn heat-ups 2016-02-15 19:44:21 +01:00
Gina Häußge
cb687f01f7 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/static/js/app/viewmodels/files.js
	src/octoprint/util/pip.py
2016-02-15 10:01:02 +01:00
Gina Häußge
0a3dc4b354 Fixed a bug that prevented the "Upload to SD" button from working
Introduced with the bug fix for #1196

Closes #1224
2016-02-15 09:58:04 +01:00
Gina Häußge
eacd9f7b66 Always read all available lines from stdout and stderr
Should produce faster output.
2016-02-11 10:37:56 +01:00
Gina Häußge
b5f40cfd69 Always read all available lines from stdout and stderr
Should produce faster output.
2016-02-11 10:36:19 +01:00
Gina Häußge
f07e3d9f2d Fixed output processing for pip processes 2016-02-11 09:55:44 +01:00
Gina Häußge
b2391322d4 Removed sudo stuff from plugin manager, don't display full pip command 2016-02-11 09:38:35 +01:00
Gina Häußge
98b512b32e Correctly handle pip 1.1 2016-02-11 09:38:09 +01:00
Gina Häußge
e28ca60f21 Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
2016-02-10 16:46:56 +01:00
Gina Häußge
3fb9248d2a More timelapse unit tests 2016-02-10 16:44:46 +01:00
Gina Häußge
742818c2ca Delete unrendered legacy timelapses when encountering them 2016-02-10 14:34:33 +01:00
Gina Häußge
d4072a3afd Updated translation files & german translation 2016-02-10 12:43:13 +01:00
geoporalis
ed82488c5b typo fixed
(cherry picked from commit 4e91284)
2016-02-10 10:15:41 +01:00
Gina Häußge
963f22db36 Merge pull request #1215 from geoporalis/typo
Typo in git_commit.py
2016-02-10 10:13:12 +01:00
Gina Häußge
5955d3d32e Added estimates total time from gcode viewer to gcode viewer tab
Implements request in #1204
2016-02-10 09:58:40 +01:00
Gina Häußge
14da24413b selef => self, setProgressBar => _setProgressBar
The one in which @foosel finally understands why the progress bar didn't
seem to work on devel anymore.
2016-02-10 08:45:57 +01:00
Gina Häußge
90353c6e7d Merge branch 'improve/uploadFileFilter' into devel
Conflicts:
	src/octoprint/server/views.py
2016-02-09 18:05:27 +01:00
Gina Häußge
682c3dd8e3 Limit file upload dialogs to supported file extensions
See #1196
2016-02-09 18:03:04 +01:00
Gina Häußge
71941f337d Include cursor control characters in CSI ANSI regex pattern 2016-02-09 14:48:30 +01:00
Gina Häußge
910d965ede Merge branch 'fix/stripAnsiFromPipOutput' into devel
Conflicts:
	src/octoprint/util/pip.py
2016-02-09 14:39:34 +01:00
Gina Häußge
b347e96748 Pip 8 outputs ANSI codes which we don't want in our output 2016-02-09 12:54:59 +01:00
Gina Häußge
b51274c145 Merge branch 'fix/m28hiccup' into devel 2016-02-09 11:33:20 +01:00
Gina Häußge
8069d08d3b Do not hiccup on manually sent M28 commands
In case of trying to switch to state printing with no selected file that
scenario is now caught by setting an internal manualStreaming flag.
That will stop the M105 polling until M29 is sent (through whatever
means).

Note that printing is not disabled... this is merely for testing stuff and
not encouraged to be used for actually streaming files to the printer,
use the built-in functionality for that!
2016-02-09 11:32:56 +01:00
geoporalis
4e9128454a typo fixed 2016-02-09 09:47:49 +00:00
Gina Häußge
ae23f09edf Merge branch 'maintenance' into devel 2016-02-09 10:46:14 +01:00
Gina Häußge
4b7552e56e Fixed file manager unit tests, added tests for print recovery functionality 2016-02-09 10:45:54 +01:00
Gina Häußge
d54dcd1d8d Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/util/comm.py
2016-02-09 09:41:49 +01:00
Gina Häußge
c4a1ed2590 Merge branch 'maintenance' into fix/persistPrintRecoveryData 2016-02-08 19:28:40 +01:00
Gina Häußge
e443c7df2f Use path in storage instead of full path for print recovery 2016-02-08 16:44:37 +01:00
Gina Häußge
b9372d7300 Fixed wrongly positioned parenthesis
Caused an internal server error if / was requested with a different default language than
english that was not available in the i18n bundles.
2016-02-08 13:04:02 +01:00
Gina Häußge
9e8b5312d5 Persist print recovery data on print failures 2016-02-08 12:47:13 +01:00
Gina Häußge
892ebf3979 Fixed something missed by refactoring due to different branch... 2016-02-08 11:30:48 +01:00
Gina Häußge
fd90326fba Use [sys.executable, "-m", "pip"] for the CLI pip stuff too 2016-02-04 13:55:42 +01:00
Gina Häußge
7a7b0e7c68 Have the plugin manager use the LocalPipCaller
We don't need user-definable pip command paths here,
that will only lead to tears when the pip command belongs
to a wrong Python environment and nothing installs as
expected.
2016-02-04 13:55:10 +01:00
Gina Häußge
e68ec435ea Made PipCaller compatible to pip 8.0.0
pip 8 doesn't output ANY of the generated stdout output from
setup.py anymore. So instead of transfering the info we need about
a pip environment on stdout, we now need a temporary folder.

Yay.
2016-02-04 13:54:03 +01:00
Gina Häußge
c3776106ec Merge branch 'maintenance' into devel 2016-02-03 12:53:12 +01:00
Gina Häußge
f79d496c7c Revert "Only trigger drag overlay for files, not texts"
This reverts commit 1e429606e1.

Commit used functionality that currently is only available in
Chrome and maybe Opera. No alternative solution could be found
that works reliably across browsers.
2016-02-03 11:43:55 +01:00
Gina Häußge
6f0bfb38d7 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/static/css/octoprint.css
2016-02-03 09:16:20 +01:00
Gina Häußge
fac4aad05f Merge branch 'master' of https://github.com/2ndalpha/OctoPrint into pr/2ndalpha/master 2016-02-03 08:58:59 +01:00
Gina Häußge
c53c263805 Merge branch 'fix/includeReleasenotesInUpdateNotifications' into maintenance
Conflicts:
	src/octoprint/plugins/softwareupdate/__init__.py
	src/octoprint/static/css/octoprint.css
2016-02-02 20:23:02 +01:00
Gina Häußge
0223a11923 Merge branch 'fix/betterTimelapseRendering' into devel
Conflicts:
	src/octoprint/server/api/timelapse.py
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/viewmodels/timelapse.js
2016-02-02 18:37:35 +01:00
Gina Häußge
4e31ccf4c5 Big overhaul of timelapse handling
* persistent notification on ongoing timelapse render job (#485)
  * non-colliding timelapse snapshot name generation to not delete
     existing snapshots when new print starts and timelapse has not
     yet been rendered, also only delete snapshots if timelapse rendered (#318)
  * list of unrendered timelapses, with option to delete files
    or to render timelapse
2016-02-02 18:03:56 +01:00
Siim Raud
c4e2a8982f Fixed formating 2016-02-02 00:40:52 +02:00
Siim Raud
42dafd7565 Fixed parsing of "retraction_combing" 2016-02-02 00:35:52 +02:00
Gina Häußge
5bab9f5bf9 Removed a doubled setting 2016-02-01 19:52:19 +01:00
Gina Häußge
adb77654f6 Merge branch 'fix/optionToIgnoreFirmwareErrors' into devel
Conflicts:
	src/octoprint/server/api/settings.py
	src/octoprint/settings.py
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/viewmodels/settings.js
	src/octoprint/templates/dialogs/settings/serialconnection.jinja2
2016-02-01 18:07:13 +01:00
Gina Häußge
6ce82ceb00 Merge branch 'fix/optionToIgnoreFirmwareErrors' into maintenance 2016-02-01 18:02:29 +01:00
Gina Häußge
6583691e85 Added setting to only cancel ongoing print on firmware error
Also added error popup in such a case so the error will be known even
if the terminal tab scrolled past it.
2016-02-01 18:02:21 +01:00
Gina Häußge
2f44f10eb0 Merge branch 'fix/knockout3.4' into maintenance 2016-02-01 16:56:13 +01:00
Gina Häußge
0e817d43cc Added option to ignore any errors reported by the firmware
Use this carefully. An error reported by your firmware usually hints
at something being off about your printer (e.g. thermistor troubles)
or the firmware not being fully compatible to OctoPrint since
it doesn't recognize a lot of commands.

If you print with this option enabled, it will still fail if you firmware goes
into lockdown, but now it will keep trying to send data to your printer.

That might cause issues. So best not use that option, only if you absolutely
have no other way to get some misbehaving printer to work with
OctoPrint.
2016-02-01 16:55:13 +01:00
Gina Häußge
9066c54d8d Fixed a typo, fixed a wrongly fixed typo 2016-01-29 09:09:04 +01:00
Gina Häußge
780794c466 Merge branch 'development' of https://github.com/bwgan/OctoPrint into pr/bwgan/development
Conflicts:
	src/octoprint/daemon.py
2016-01-29 09:04:58 +01:00
bwgan
f8c0df4e78 Typo and spelling fixes
Fixes various spelling issues and typos.
2016-01-28 18:59:38 +00:00
Gina Häußge
1e5cc9b086 Merge branch 'fix/knockout3.4' into devel
Conflicts:
	src/octoprint/plugins/pluginmanager/static/js/pluginmanager.js
	src/octoprint/static/js/app/viewmodels/files.js
	src/octoprint/static/js/app/viewmodels/firstrun.js
	src/octoprint/static/js/app/viewmodels/loginstate.js
2016-01-27 17:37:31 +01:00
Gina Häußge
7f1394a8d6 Migrated ko.computed to ko.pureComputed where it made sense 2016-01-27 17:33:03 +01:00
Gina Häußge
caaf1d229c Updated Knockout dependency to version 3.4.0
Closes #939
2016-01-27 17:32:40 +01:00
Gina Häußge
45e159742e Merge branch 'fix/terminalLoad' into devel
Conflicts:
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/main.js
2016-01-27 12:37:03 +01:00
Gina Häußge
36ae6dd6b9 Added adaptive rate limiting to client
The client now tries to detect if it's fast enough to process the
state updates usually send every 500ms, and if not notifies the
server to throttle the rate (e.g. to 1/1s, 1/1.5s etc).

Additionally, since the terminal tab of the client turned out to
be quite CPU intense when line number calculation, filtering etc
is enabled, the terminal tab now also falls back into a bit less
fancy mode if it detects its being processed too slow and optionally
even disables logging completely during printing (where a lot
of log messages need to be processed in a minimum amount of
time).

That way the UI should stay responsive even on very low powered
clients (e.g. chromium on a Pi), while printing.
2016-01-27 12:04:17 +01:00
Gina Häußge
6945394fc2 Merge branch 'fix/disablePrintButtonWithoutFile' into devel 2016-01-25 16:29:29 +01:00
Gina Häußge
bcd7bb4d20 Don't enable Print button if no job is selected
Fixes #1007
2016-01-25 16:28:52 +01:00
Gina Häußge
b63e372e7e Merge remote-tracking branch 'origin/devel' into devel 2016-01-25 15:08:30 +01:00
Gina Häußge
9d924be5f9 Merge branch 'fix/uploadWhileOffline' into devel
Conflicts:
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/viewmodels/files.js
2016-01-25 15:05:50 +01:00
Gina Häußge
8151e617cc Merge branch 'maintenance' of github.com:foosel/OctoPrint into maintenance 2016-01-25 14:41:52 +01:00
Gina Häußge
1e429606e1 Only trigger drag overlay for files, not texts 2016-01-25 14:39:48 +01:00
Gina Häußge
7fbfaadc21 Do not read no return value as "False" return value for onServerDisconnect 2016-01-25 13:51:46 +01:00
Gina Häußge
814355e281 Do not show drag-n-drop overlay if server is offline
Fixes #1196
2016-01-25 13:51:10 +01:00
Gina Häußge
3d34411025 Merge branch 'fix/disableSettingsSaveWhileBusy' into devel
Conflicts:
	src/octoprint/static/js/app/viewmodels/settings.js
2016-01-19 11:52:25 +01:00
Gina Häußge
660de61997 Merge remote-tracking branch 'origin/maintenance' into maintenance 2016-01-19 11:51:15 +01:00
Gina Häußge
f4b3206d49 Disable the settings dialog's save button while sending or receiving 2016-01-19 11:19:51 +01:00
Gina Häußge
3b35d921d1 Merge branch 'fix/resetSettingsScrollPosition' into devel 2016-01-12 13:30:34 +01:00
Gina Häußge
2a059cf0cb Reset scroll position and selected tab in settings dialog
Also added means to open settings dialog navigating directly to a specific tab
2016-01-12 13:30:10 +01:00
Gina Häußge
4e84d62741 Reset scroll position and selected tab in about dialog 2016-01-12 11:00:35 +01:00
Gina Häußge
04bb262187 Fixed an issue with resolving various files as templates in source installs
Missing _data prefix
2016-01-12 10:59:48 +01:00
Gina Häußge
e4828450c9 Merge branch 'fix/slugifyFilenames' into devel
Conflicts:
	setup.py
2016-01-11 16:43:38 +01:00
Gina Häußge
7743372ee4 Slugify file names on local storage
Just stripping anything non-ASCII leads to errors with UTF-8 only
filenames.

Closes #1181
2016-01-11 16:42:05 +01:00
Gina Häußge
682dd902e6 Merge branch 'fix/refreshFilesButton' into devel 2016-01-11 15:42:06 +01:00
Gina Häußge
59027d349f Added button to refresh file list
Also added tooltips for all three file list buttons
2016-01-11 15:41:38 +01:00
Gina Häußge
62a25767a3 Merge branch 'maintenance' into devel 2016-01-05 11:43:20 +01:00
Gina Häußge
c020c7afe0 Merge branch 'master' of https://github.com/richjoyce/OctoPrint into pr/richjoyce/settings_remove_fix 2016-01-05 11:40:18 +01:00
Gina Häußge
5cdf45d218 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/static/js/app/viewmodels/loginstate.js
2016-01-05 11:38:05 +01:00
Gina Häußge
384e150448 Fixed some whitespace 2016-01-05 11:32:55 +01:00
Gina Häußge
d4260468be Merge branch 'devel_knockout_bindings' of https://github.com/BillyBlaze/OctoPrint into pr/BillyBlaze/devel_knockout_bindings 2016-01-05 11:17:04 +01:00
Gina Häußge
a11774484e Merge branch 'files_sidebar' of https://github.com/BillyBlaze/OctoPrint into pr/BillyBlaze/files_sidebar 2016-01-05 11:04:24 +01:00
Gina Häußge
d3129a800f We also don't need the empty file anymore then 2016-01-05 10:56:13 +01:00
Richard Joyce
0d7965ebf1 Fix missing kwargs in PluginSettings remove 2016-01-04 09:25:58 -08:00
Paul de Vries
34ceb93509 Initialize loginUser and loginPass with an empty string
Clear loginUser and loginPass after a successful login (e.g. the user made a typo)
2016-01-03 22:02:49 +01:00
Paul de Vries
645c2da7a5 Moved custom bindings from main.js to bindings/{bindingname}.js
Added custom bindings files in the flask.py js list

Removed inline onclick with sliderToggle and made a custom binding
'toggleContent'

Add padding and line-height to intermediary heading for better readability
2015-12-30 17:54:22 +01:00
Paul de Vries
b987e2ac7d Remove 'folder' className to 'back' 2015-12-25 19:57:30 +00:00
Paul de Vries
1f878fefb0 Add .type as className for better styling 2015-12-25 19:50:26 +00:00
Paul de Vries
bff20bf4d9 If dynamic LESS or CSS is empty then do not parse the jinja2 assets block 2015-12-25 18:28:28 +00:00
Paul de Vries
da1ae91d9a Remove XHTML and make it HTML5 valid 2015-12-25 18:12:44 +00:00
Paul de Vries
ff96642f82 Upgrade LESS v1.3.3 to v2.5.3 2015-12-25 18:12:14 +00:00
Gina Häußge
c120261e2b Increased backend fail counter for intermediary page
Also made sure that baseURL always ends in a /
2015-12-18 17:39:30 +01:00
Gina Häußge
f0acacec6a Intermediary page needs to remove fragments for baseUrl
Otherwise image pinging won't work properly.
2015-12-18 14:30:53 +01:00
Gina Häußge
86b96b8d4a Don't allow empty folder names 2015-12-17 16:56:09 +01:00
Gina Häußge
9b3e4f5c2a Properly capture StorageErrors 2015-12-17 16:48:02 +01:00
Gina Häußge
376c832b0b Fixed a ReferenceError when processing the SlicingProgress events 2015-12-17 13:57:39 +01:00
Gina Häußge
9fbe130169 Merge branch 'fix/aclFirstRun' into maintenance 2015-12-17 13:19:26 +01:00
Gina Häußge
7791f7751f Merge branch 'fix/aclFirstRun' into devel
Conflicts:
	src/octoprint/server/__init__.py
	src/octoprint/server/api/__init__.py
	src/octoprint/server/views.py
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/viewmodels/firstrun.js
2015-12-17 13:16:51 +01:00
Gina Häußge
b96d1b51e0 Disabled ACL is now tracked through enabled flag on UserManager
That allows us to properly enable and disable it at runtime (during first run).
2015-12-17 13:08:45 +01:00
Gina Häußge
22ae7fecf4 Merge branch 'fix/timeoutOnUnknownCommands' into devel
Conflicts:
	src/octoprint/util/comm.py
2015-12-17 10:45:33 +01:00
Gina Häußge
570c66b6f3 Trigger command processing on unknown commands
We suffer from the same problem as commands being suppressed in the
send queue here. If a non-GCODE-command we send to the printer
produces no output, our _monitor loop will wait until the next response
produced by another command. Which we won't send though since
we are stuck waiting in the _monitor loop waiting for a response. Hence
we need to manually trigger further command processing from the
send loop here in order to ensure things keep going.
2015-12-17 10:44:43 +01:00
Gina Häußge
e64a9bd4b5 Added feature flag to toggle F command support
Defaults to off, set feature.supportFAsCommand to true to enable.
2015-12-17 10:37:32 +01:00
Gina Häußge
dd843c8f67 Also recognize F as standalone GCODE command
While 3D printers usually don't support that, at least Smoothieware
does combined with CNC operations.
2015-12-16 16:50:42 +01:00
Salandora
8c85ed8ce5 Fix for system menu not getting properly reloaded after entries changed.
Plus added a missing semicolon.
2015-12-16 12:28:41 +01:00
Salandora
f9f22daa4d Merge branch 'fix/systemMenu' into devel 2015-12-16 12:21:34 +01:00
Salandora
ccd2ddc056 Fixed a bug with access control during first run
Requests against restricted resources could fail even though the
first run wizard had been completed successfully.
2015-12-16 11:59:45 +01:00
Salandora
54f24b43f0 If no system actions were configured during rendering of the page, no system menu was added to the template.
hat caused system actions added during runtime (e.g. by API) to not show up until a re-rendering of the page.
2015-12-16 11:35:25 +01:00
Alexander Leisentritt
6962fad1ae added "Retraction Z-Hop" setting to timelapse and altered the capture function in z-change mode so not on every z change pictures are captured but only on a real layer change 2015-12-16 01:21:23 +00:00
Gina Häußge
7232df686a Merge branch 'fix/compatibilityCheck' into devel
Conflicts:
	src/octoprint/plugins/pluginmanager/__init__.py
2015-12-14 14:24:30 +01:00
Gina Häußge
eae68f04ca Use PEP440 compatible version compatibility check
Also make sure that if we have a pkg_resources version that returns
tuples we not only remove any intermediary version parts if the base
version is requested, but we also append "*final" to the tuple afterwards,
otherwise the compatibility check will fail.
2015-12-14 14:14:44 +01:00
Gina Häußge
7e947a8403 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/server/__init__.py
2015-12-14 11:58:21 +01:00
Gina Häußge
7fcd04ae61 Also use pre-calculated revision information instead of fetching anew 2015-12-14 10:16:29 +01:00
Gina Häußge
365c852769 Merge branch 'fix/fasterUpdateCheck' into devel
Conflicts:
	src/octoprint/plugins/pluginmanager/__init__.py
	src/octoprint/plugins/softwareupdate/__init__.py
2015-12-14 09:57:20 +01:00
Gina Häußge
28eb436c88 Merge branch 'fix/includeReleasenotesInUpdateNotifications' into devel 2015-12-10 17:12:11 +01:00
Gina Häußge
1a4920fc36 Display remote version in update message, not local one... 2015-12-10 17:12:02 +01:00
Gina Häußge
dcd67e7645 Merge branch 'fix/includeReleasenotesInUpdateNotifications' into devel
Conflicts:
	src/octoprint/plugins/softwareupdate/static/css/softwareupdate.css
	src/octoprint/plugins/softwareupdate/static/js/softwareupdate.js
	src/octoprint/plugins/softwareupdate/static/less/softwareupdate.less
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/less/octoprint.less
2015-12-10 14:45:39 +01:00
Gina Häußge
8149a3b4a8 Include release notes in update notification
... and confirmation dialog and settings dialog.

github_release fetches release notes link from github. Check configurations
can always set individual release notes links via the new `release_notes`
property. The URL also supports placeholders `{octoprint_version}`,
`{target_version}` and `{target_name}`. A custom release note URL
hence could be configured by a plugin via

    def get_update_information(self):
        return dict(
            myplugin=dict(
                [...]
                release_notes="https://me.github.io/MyPlugin/my/custom/releasenotes.html#version_{target_version}"
                [...]
            )
        )

and if a new release "1.3.4" was now to be released would be displayed to the user as

    https://me.github.io/MyPlugin/my/custom/releasenotes.html#version_1.3.4

The same of course is possible via config.yaml:

    plugins:
      softwareupdate:
        checks:
          myplugin:
            release_notes: 'https://me.github.io/MyPlugin/my/custom/releasenotes.html#version_{target_version}'
2015-12-10 14:41:46 +01:00