Commit graph

2218 commits

Author SHA1 Message Date
Gina Häußge
08f9529c6d Merge remote-tracking branch 'origin/maintenance' into maintenance 2016-08-18 13:58:38 +02:00
Gina Häußge
6499bd160f Only wait for preemptive cache if it's enabled for path & view 2016-08-18 13:56:46 +02:00
Gina Häußge
f43381ce30 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/filemanager/__init__.py
2016-08-18 12:28:13 +02:00
Gina Häußge
599098a589 Have intermediary reload only after preliminary caching 2016-08-18 12:27:30 +02:00
Gina Häußge
aa57277ff8 Only report files as enqueued for analysis which actually are 2016-08-18 08:39:19 +02:00
Gina Häußge
7cc3403a41 Info logging for preemptively caching plugins 2016-08-18 08:34:43 +02:00
Gina Häußge
74a94469b6 Fix an issue with global_get from 3rd party plugins 2016-08-17 14:50:53 +02:00
Gina Häußge
00923427cb Really do force a plugin view during preemptive caching
We don't need to check if the plugin will handle the UI, we just force
it to handle it.
2016-08-16 14:04:45 +02:00
Gina Häußge
79c95aa3b4 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/filemanager/storage.py
	src/octoprint/templates/sidebar/state.jinja2
2016-08-16 09:34:49 +02:00
Gina Häußge
217e54d81c Make sure we are still in printing state before sending next line
We might just have "eaten" a line used for triggering a pause (e.g. an M0)
and thus might not be eligible to send the next line from the streamed file
anymore.

Solves #1448
2016-08-16 09:29:29 +02:00
Gina Häußge
b05beb27b5 Don't sanitize . or .. folder names 2016-08-15 16:13:35 +02:00
Gina Häußge
d81ec15f43 Improvements in fuzzy print time algorithm
Also use new fuzzy print time in gcode viewer to have some consistency.
2016-08-15 15:42:06 +02:00
Gina Häußge
39372a9475 Also sanitize leading .
That way hidden files that are uploaded will be "de-hidden".

Note that NO "de-hiding" of existing files will take place!
2016-08-15 14:19:36 +02:00
Gina Häußge
e8cac14c2f Make sure uploads folder only has sanitized entries
Should make sure stuff doesn't break when people perform manual
file operations on the uploads folder (e.g. uploading files
that don't match the sanitization scheme).

Should solve #1434
2016-08-15 14:19:35 +02:00
Gina Häußge
5bef0926a6 Add [ and ] to valid chars in filenames
See #1434
2016-08-15 14:19:34 +02:00
Gina Häußge
7772fdc7bf Tooltips for state panel 2016-08-15 14:19:33 +02:00
Gina Häußge
cd736c44df Improved fuzzy print time display 2016-08-15 14:19:32 +02:00
Gina Häußge
11bdc176a0 Fix minute comparison for dumb estimate fallback
Probably solves the core reason that caused #1428 to be
reported in the first place, totally inaccurate early linear
approximations (when nothing better is available) making
it to the user.

It should now display "Calcuting..." until the approximation
stabilizes OR the configured max percentage or max time without
an estimate are reached.
2016-08-15 14:17:27 +02:00
Gina Häußge
edf83e4984 Merge branch 'vanilla_devel' of https://github.com/mrbeam/OctoPrint into pr/mrbeam/vanilla_devel
Conflicts:
	src/octoprint/static/less/octoprint.less
2016-08-15 09:40:21 +02:00
Teja
963bb77d89 added transform without vendor prefix. Didn't work in Chromium 52.x anymore. 2016-08-04 09:58:07 +02:00
Gina Häußge
039412183c Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
2016-07-30 09:57:31 +02:00
Gina Häußge
90340487f7 Merge branch 'fix/revertTimeoutAdjustment' into maintenance 2016-07-29 08:54:11 +02:00
Gina Häußge
1f19fd1e1d Partially revert 937487037
This commit might be at the root of the problems reported
in #1423
2016-07-29 07:45:03 +02:00
Gina Häußge
9b13eb8a6c Support serial hook handlers to not return written bytes 2016-07-29 00:13:03 +02:00
Gina Häußge
444a36d0f0 state_string must always be initialized
See #1425
2016-07-28 23:24:29 +02:00
Gina Häußge
e6d88a124d Merge branch 'maintenance' into devel 2016-07-28 15:21:06 +02:00
Gina Häußge
7c5cc8d256 Make sure we have at least two timestamps in lastmodified calculation
Otherwise our max(*timestamps) call might fail
2016-07-28 15:19:34 +02:00
Gina Häußge
aae01fe81b Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
	docs/api/fileops.rst
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/server/api/files.py
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/main.js
	src/octoprint/static/js/app/viewmodels/files.js
	src/octoprint/static/js/app/viewmodels/settings.js
	src/octoprint/templates/sidebar/state.jinja2
	src/octoprint/util/comm.py
2016-07-28 15:00:23 +02:00
Gina Häußge
14969e5508 Preparing release of 1.2.14 2016-07-28 12:15:22 +02:00
Gina Häußge
f671006582 Use circle instead of info symbol for print time left quality indicator 2016-07-28 11:37:27 +02:00
Gina Häußge
bd352f4658 Make sure to clear_to_send in timeout handling for active resends 2016-07-28 11:30:23 +02:00
Gina Häußge
046536dd70 If a line is filtered while printing, read next line to continue sending
We want to make sure that while printing we always continue sending something,
either from the command queue or the printed file.
2016-07-28 11:18:57 +02:00
Gina Häußge
fad2e8f1b8 Visual distinction of state panel UI clusters 2016-07-27 18:38:40 +02:00
Gina Häußge
f2ecb96c83 Add indicator of origin of print time left estimate to UI 2016-07-27 18:38:17 +02:00
Gina Häußge
0a81e8b161 Use centered text in progress bars
* print progress shows percentage
  * upload progress shows what it always showed, but fully centered
  * GCODE viewer progress shows what it always showed, but fully centered
2016-07-27 15:05:16 +02:00
Gina Häußge
eb822c83a3 Add LESS/CSS for (centered) text in progress bars & knockout helper 2016-07-27 15:04:07 +02:00
Gina Häußge
ec8427cbb8 Fix a bug causing the "Streaming ..." text to vanish on transfer to SD 2016-07-27 14:46:00 +02:00
Gina Häußge
3585eb05a2 Fix a tiny typo 2016-07-27 10:13:11 +02:00
Gina Häußge
1fd776153c Another attempt at saner print time estimation
Seriously though, this topic is driving me nuts...

  * track origin of print time left estimate
  * less draconian threshold for estimation helper for all prints, not just
    sd prints
  * sanity check estimated/statistical total print time, if not sane force "dumb"
    estimate
  * force "dumb" estimate if no other estimate is available after set percentage or
    print time
2016-07-26 18:06:21 +02:00
Gina Häußge
75012472a2 Revert "Synchronize access to selected file"
This reverts commit b5e19f0676.
2016-07-26 11:18:10 +02:00
Gina Häußge
55d5df7f14 Report CLOSED/CLOSED_WITH_ERROR states as "Offline"
Provide error string for the latter case in state as well.
2016-07-22 10:51:38 +02:00
Gina Häußge
6e73c31a68 Report correct printer state even after disconnecting
Error string on close with error would get lost, that happens no longer
2016-07-22 10:50:48 +02:00
Gina Häußge
d7ae147764 Tickle printer on timeout when idle and blocked 2016-07-22 09:46:58 +02:00
Gina Häußge
9eb1485e84 Add max timeouts configuration to settings 2016-07-21 18:46:54 +02:00
Gina Häußge
4f11f6362b Saner defaults for max timeouts
10 max consecutive with 30s default communication timeout
is a bit too long to wait
2016-07-21 18:46:34 +02:00
Gina Häußge
4f1a55c2df Added AWOL debug command to virtual printer 2016-07-21 16:25:49 +02:00
Gina Häußge
cfc5f45aa5 Merge branch 'maintenance' into fix/timeoutDetection
Conflicts:
	src/octoprint/settings.py
	src/octoprint/util/comm.py
2016-07-21 16:13:35 +02:00
Gina Häußge
2f26104b98 Better sleep debug command in virtual printer 2016-07-21 16:11:09 +02:00
Gina Häußge
b5e19f0676 Synchronize access to selected file 2016-07-21 16:10:57 +02:00
Gina Häußge
3614033b0d No endless circles if we can't write any bytes to serial 2016-07-21 16:10:00 +02:00
Gina Häußge
44ec821294 Track consecutive timeouts
Should allow to detect if a device actually has gone missing.

See #1388
2016-07-21 16:02:28 +02:00
Gina Häußge
c6225aa834 Introduce single output method in virtual printer for easier debugging 2016-07-21 13:25:39 +02:00
Gina Häußge
5d21399a73 Custom markdown filter, 3rd party one wasn't thread safe 2016-07-21 11:50:29 +02:00
Gina Häußge
cba742a94f Fix some more left-overs of py2<->py3 PRs
Related to #1411, #1414 and #1415
2016-07-15 12:46:53 +02:00
Gina Häußge
dc874d98ac Merge branch 'dev/python3E' of https://github.com/ByReaL/OctoPrint into pr/ByReaL/dev/python3E
Conflicts:
	src/octoprint/server/__init__.py
	src/octoprint/users.py
	src/octoprint/util/jinja.py
2016-07-15 12:32:24 +02:00
Gina Häußge
47b7acdfbc Merge branch 'dev/python3A' of https://github.com/ByReaL/OctoPrint into pr/ByReaL/dev/python3A
Conflicts:
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/printer/standard.py
2016-07-15 12:28:19 +02:00
Gina Häußge
e961234458 Explicitly use floor division where necessary 2016-07-15 11:42:01 +02:00
Gina Häußge
76a04cbe9d Merge branch 'dev/python3B' of https://github.com/ByReaL/OctoPrint into pr/ByReaL/dev/python3B 2016-07-15 11:28:55 +02:00
Gina Häußge
3cb045380e Merge pull request #1414 from ByReaL/dev/python3D
python3: os.umask(002) to os.umask(0o002)
2016-07-15 11:14:11 +02:00
Gina Häußge
31d56c11c1 Merge pull request #1413 from ByReaL/dev/python3C
python3: xrange got removed from python 3
2016-07-15 11:13:54 +02:00
MirceaDan
a48241d45e python3: iterators, bytes and next
iteritems got removed items is to be used for python 2 and 3
compatibility , it returns a view in python 3 and must be casted to a
list if the list is needed.

bytes form builtins

using builtin function next is the compatible way between python 2 and 3
2016-07-15 01:43:31 -07:00
MirceaDan
bf320a8c43 python3: os.umask(002) to os.umask(0o002)
os.umask(0o002) is the python 2/3 way
2016-07-15 01:18:11 -07:00
MirceaDan
3dae8d90d7 python3: xrange got removed from python 3
python3 range is = python2 xrange
to make python 2 range = with python3 range i used teh future package
and did
from builtins import range
2016-07-15 00:56:45 -07:00
MirceaDan
c33a9f9aa2 from __future__ import absolute_import, division, print_function
changed the behavior to import division and print to be consistent
across all app and similar with python 3.x
2016-07-15 00:16:58 -07:00
MirceaDan
149cc8c7c5 python 3 changes exceptions, queue and asesrtEqual
1) import Queue is now lower caps

2) exceptions
except KeyError as e:

3) assertEquals is deprecated but assertEqual does exactly same thing
2016-07-14 23:53:39 -07:00
Gina Häußge
28814db207 Merge branch 'maintenance' into devel
Conflicts:
	setup.py
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/printer/standard.py
2016-07-14 19:47:38 +02:00
Gina Häußge
92f9ed465e Removed two unused locks from StateMonitor 2016-07-14 19:46:44 +02:00
Gina Häußge
0a8a7ba589 Fixed some imports 2016-07-14 19:43:22 +02:00
Gina Häußge
bfcd00e466 Fix: Send non-protocol messages from the printer to clients
Solves #1385
2016-07-14 19:42:43 +02:00
Gina Häußge
20fc7f25bc Fix: Ensure log entries and messages from printer are unicode
Otherwise even one line that can't be converted while sending the
backlog to the client can kill the whole backlog.
2016-07-14 19:20:05 +02:00
Gina Häußge
1e7ea28195 Merge branch 'fix/serialRxBufferHandling' into maintenance 2016-07-13 17:24:13 +02:00
Gina Häußge
937487037a Shorter timeout during heatup & no scary message on end
Set read timeout on serial port to a much shorter value (default 2.0s)
during a heatup. Firmware should usually send the current temperature
back every second, so if that stops we can consider the heatup to be finished
even if we don't see an ok.

That is important in cases such as SD printing, where we might see a
heatup sequence we didn't trigger ourselves, during which we shouldn't spam
the printer with commands it potentially can't process but after which we
still should take up normal communication again. In case of a heatup sequence
triggered by an SD print we won't see an ok and hence only can now through a
timeout that things are now done printer side. In such a case the user should not
get thrown a scary timeout message in their general direction either.

Solves #1409
2016-07-13 17:21:45 +02:00
Gina Häußge
9cd47bc5e2 Merge branch 'maintenance' into devel 2016-07-13 13:11:08 +02:00
Gina Häußge
2cc9631791 Reset printAfterSelect once it's triggered
Should solve #1407
2016-07-13 13:01:33 +02:00
Gina Häußge
27227e271d Don't try to calculate min/max for empty bounding box 2016-07-13 12:50:16 +02:00
Gina Häußge
99ec1efda7 Merge branch 'fix/serialRxBufferHandling' into devel
Conflicts:
	src/octoprint/plugins/virtual_printer/virtual.py
2016-07-12 17:54:07 +02:00
Gina Häußge
2b9aef5874 Keep sending if serial line was only sent partially
So far the sending routine did not track the amount of bytes that were
actually sent. This is now fixed such that if the number of sent bytes
is less then the number of bytes of the whole message, the sending
rountine will continue to send the unsent parts of the message until
it succeeds (or a timeout occurs).

Also adjusted the virtual printer to imitate a real serial interface with
regards to having it return the written bytes and allowing a partial
sending (returning the number of bytes that actually were sent).
2016-07-12 17:48:47 +02:00
Gina Häußge
a33338684e Merge branch 'fix/slicingDocs' into devel 2016-07-12 11:52:59 +02:00
Gina Häußge
58ee5f17f7 Fix simulation of moves on virtual printer 2016-07-08 16:44:40 +02:00
Gina Häußge
9b6b4a9228 Have path set for SD files and strip leading / 2016-07-08 15:45:13 +02:00
Gina Häußge
42e54f0fbc Fix missing path attribute for sd files on API 2016-07-08 15:44:37 +02:00
Gina Häußge
7909672f51 Fix wrong location assignment for selected file 2016-07-08 15:43:48 +02:00
Gina Häußge
5bf5e336ec Extend payload in various events
Added name and path various event print job events and
the upload event, deprecated the file property.

Had to move event triggering of the print job events to
the printer implementation, since the file manager
is not available in the comm layer. Added new callbacks
to the PrinterInterface to allow for that to be possible.
2016-07-08 12:54:58 +02:00
Gina Häußge
3a4902367b New event placeholders for path & origin 2016-07-08 12:52:40 +02:00
Gina Häußge
0fd510a51f Less scary message on config.yaml parsing error 2016-07-08 12:35:46 +02:00
Gina Häußge
55ed4211f9 Fix highlighting of selected file in file list in frontend 2016-07-08 11:14:40 +02:00
Gina Häußge
db2c3bf10b Have frontend's printer state also track file path
Also display it on mouse over on the selected file's name.
2016-07-08 11:13:14 +02:00
Gina Häußge
d91c6256b4 Have GCODE viewer use file path instead of name
That way it should also work for GCODE files contained in folders.
2016-07-08 10:57:33 +02:00
Gina Häußge
dfb8f51238 Extend payload in MetadataAnalysis events
Added name, path and origin, deprecated file property.
2016-07-08 10:50:13 +02:00
Gina Häußge
2e8d104864 Fix resource URLs for files in folders 2016-07-08 10:42:50 +02:00
Gina Häußge
a7fe2d5148 Clean up old AND invalid entries in preemptive cache config 2016-07-07 10:22:37 +02:00
Gina Häußge
d96a91ecc3 Fix modal background of update confirmation not vanishing 2016-07-06 15:30:36 +02:00
Gina Häußge
0015d844a8 Merge branch 'improve/templateErrorResilience' into devel
Conflicts:
	src/octoprint/server/__init__.py
2016-07-06 15:12:19 +02:00
Gina Häußge
924d5c8d7d More error resilience in template rendering
Wrapped potentially external and problematic includes in
custom try-endtry-blocks
2016-07-06 15:09:38 +02:00
Gina Häußge
5126fc1093 Fixed an import error introduced through moving the jinja trycatch extension
(cherry picked from commit 3ea77c7)
2016-07-06 15:03:43 +02:00
Gina Häußge
162c4f11dd Moved jinja ExceptionHandlerExtension to octoprint.util.jinja
(cherry picked from commit 3d0fc8d)
2016-07-06 15:03:34 +02:00
Gina Häußge
240fe70902 Custom try-catch block for jinja
Allows some more error checking in templates. Not used at the moment but
might come in handy in the future.
(cherry picked from commit 7708eea)
2016-07-06 15:01:55 +02:00
Gina Häußge
5802c11689 Fixed a bug (variable not yet defined) 2016-07-06 14:06:38 +02:00
Gina Häußge
07dc0499d0 Merge branch 'gcode_arc_rendering' of https://github.com/eyck/OctoPrint into pr/eyck/gcode_arc_rendering 2016-07-06 13:38:54 +02:00
Gina Häußge
a2cd46899c Merge branch 'improve/intermediaryUrlsAndTimeouts' into devel
Conflicts:
	AUTHORS.md
	src/octoprint/plugins/virtual_printer/virtual.py
2016-07-06 13:32:03 +02:00
Gina Häußge
eeaf68d61a Better timeout defaults for intermediary page
In some situations an error could be displayed otherwise since
online.gif was available, intermediary.gif wasn't anymore, but pinging
the latter timed out before the next ping of the former.

(cherry picked from commit 7809ba8)
2016-07-06 13:16:01 +02:00
Gina Häußge
674d625150 Transfer query & fragment on intermediary page reload
Also user window.location.reload if URL to reload is the same as the current one,
otherwise reloading will be a no-op if a fragment is provided.

(cherry picked from commit a367902)
2016-07-06 13:15:50 +02:00
MoonshineSG
bfecb5fadf fix intermediary.html for url with parameters
(cherry picked from commit 2cc5eaf)
2016-07-06 13:15:34 +02:00
Mark Walker
5eefee3a4d RepRapFirmware style M23 select file
RepRapFirmware enumerates the gcode files starting at /gcode, it will
also interpret any relative path as being relative to that folder.
However a full absolute path will actually interpret as from the real
root of the SD card :-(

(cherry-picked from ac68570)
2016-07-06 05:17:44 +00:00
Mark Walker
02b0e906f1 Allow M23 "File opened" response with no filename
(cherry-picked from ba4b7c0)
2016-07-06 05:17:29 +00:00
Mark Walker
3069e05766 Add RepRapPro style file opened to virtual printer
(cherry-picked from 257c4ed)
Conflicts:
	src/octoprint/plugins/virtual_printer/virtual.py
2016-07-06 05:14:10 +00:00
Gina Häußge
9fca41c76c Merge branch 'maintenance' into devel 2016-07-05 14:53:54 +02:00
Gina Häußge
8c80e3ac4a Scalar3D => Vector3D 2016-07-05 14:53:16 +02:00
Gina Häußge
66792da5bc MinMax3D type for tracking printing area & include dimensions in analysis 2016-07-05 14:40:00 +02:00
Gina Häußge
5a9852e7b8 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/util/gcodeInterpreter.py
2016-07-05 14:37:17 +02:00
Gina Häußge
79d660f377 Further GCODE interpreter fixes & optimizations
* Introduce Vector3D type to help with coordinate back and
    forth calculations
  * Fix typo in movement calculation (Y twice instead of Y and Z)
  * Removed some code duplication
2016-07-05 13:22:16 +02:00
Salandora
2ae2405792 Add diff part to retract too because of things like G1 X-10 Y-10 Z1 E-5
(cherry picked from commit de325c3)
2016-07-05 13:16:07 +02:00
Salandora
6e42e3e0ef Add calculation for moves in Z direction
(cherry picked from commit b9cf42f)
2016-07-05 13:16:02 +02:00
Salandora
ad3ae405f6 Check for moveType == move instead of x,y,z is not None, otherwise x,y,z,e moves wouldn't be seen as extrude/retract moves
(cherry picked from commit 1b6a46c)
2016-07-05 13:15:55 +02:00
Gina Häußge
93b247b088 Display fuzzy time estimates in frontend 2016-07-05 13:15:20 +02:00
Mark Walker
d767d19ffb Remove extra paren
Syntax error from c2fc139
2016-07-04 11:50:52 -07:00
Gina Häußge
c2fc139b97 Merge branch 'fix/overeagerPreemptiveCache' into devel
Conflicts:
	src/octoprint/filemanager/storage.py
	src/octoprint/server/views.py
2016-07-04 19:57:10 +02:00
Gina Häußge
6018bf8428 Fix overeager preemptive caching, even on broken protocols 2016-07-04 19:28:20 +02:00
Gina Häußge
a49bc9ca75 Fixed wrong placeholders in format string for exception 2016-07-04 19:02:12 +02:00
Gina Häußge
277860b831 Allow removal of folders 2016-07-04 18:59:06 +02:00
Gina Häußge
69b231139f Slight rewording to better reflect filter 2016-07-04 16:05:12 +02:00
Gina Häußge
2c1b36b922 Spinner on add folder & scroll to new folder 2016-07-04 16:04:25 +02:00
Gina Häußge
aacb07091e Don't reload on enter in create folder dialog
Instead submit dialog and create new folder. Also have input
field focused on dialog show.
2016-07-04 16:03:20 +02:00
Gina Häußge
1991a9e2c7 Fix hide empty folders option
Now hides folders which contain no files at all
2016-07-04 16:01:50 +02:00
Gina Häußge
0371fdd497 Merge branch 'improve/wrongUploadError' into devel
Conflicts:
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/viewmodels/files.js
2016-07-04 15:19:25 +02:00
Gina Häußge
1e561e7b4a Merge branch 'fix/scrollToUpload' into devel
Conflicts:
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/viewmodels/files.js
2016-07-04 13:28:56 +02:00
Gina Häußge
cdbc8fcfbd Merge branch 'improve/wrongUploadError' into maintenance 2016-07-04 13:20:30 +02:00
Gina Häußge
e453201c1a Better "upload error" message with supported extensions 2016-07-04 13:20:15 +02:00
Gina Häußge
ec97765c80 Scroll to uploaded file, highlight it 2016-07-04 13:17:16 +02:00
Gina Häußge
be34f7309d Scroll to uploaded file, highlight it 2016-07-04 13:14:38 +02:00
Gina Häußge
20ca50f0b5 Only fetch showFahrenheit flag from settings if they are available 2016-07-04 11:08:53 +02:00
Gina Häußge
b07c352b48 Merge branch 'improve/slicingFlexibility' into devel
Conflicts:
	src/octoprint/filemanager/__init__.py
	src/octoprint/server/api/files.py
	src/octoprint/static/js/app/viewmodels/slicing.js
2016-07-04 10:24:43 +02:00
Gina Häußge
dbf1273e9d Use first destination extension for default target name 2016-07-02 18:10:05 +02:00
Gina Häußge
944775abde Fixed registered destination extensions in cura plugin 2016-07-02 18:07:59 +02:00
Gina Häußge
e7c21b1978 Support alternative source file types in SlicerPlugin
Also limit list of slicers in slicer dialog to compatible slicers.

Implements #935
2016-07-02 18:05:11 +02:00
Gina Häußge
294203ffd5 Add absolute jog mode to printer API 2016-07-01 17:54:26 +02:00
Gina Häußge
d9e3553c7c Some fixes in the client lib for better usability 2016-07-01 17:53:37 +02:00
Gina Häußge
08de33e27d Add path into file and folder entries & allow non recursive listings 2016-07-01 17:51:21 +02:00
Gina Häußge
72bc30eae5 Merge branch 'devel' into dev/jsclientdocs
Conflicts:
	src/octoprint/static/js/app/viewmodels/printerstate.js
2016-06-30 13:04:57 +02:00
Gina Häußge
2971c29f10 Merge branch 'improve/pauseApiCommand' into devel
Conflicts:
	src/octoprint/static/js/app/viewmodels/printerstate.js
2016-06-30 13:01:13 +02:00
Gina Häußge
73a85646c5 Added only pause/resume sub commands to job API
Implements #1393
2016-06-30 12:56:18 +02:00
Gina Häußge
cec2f7d917 WIP: More work on the documentation of the js client lib 2016-06-30 12:06:08 +02:00
Gina Häußge
176dd84739 Merge branch 'maintenance' into devel 2016-06-29 12:21:55 +02:00
Gina Häußge
0376bc4235 Only use first value for X-Scheme for reverse proxy setup
Solves #1391
2016-06-29 12:16:28 +02:00
Gina Häußge
c4a0b63a87 Add flag to disable model size detection & check
Also marked feature as beta
2016-06-28 14:47:17 +02:00
Gina Häußge
df5a6e42d7 Docs for additions to slicing event payload 2016-06-28 12:58:31 +02:00
Gina Häußge
b41c1d89f4 Docs for octoprint.printer.factory hook 2016-06-28 12:58:08 +02:00
Gina Häußge
3b2af5b7ed Fix settings unit tests 2016-06-28 10:57:51 +02:00
Gina Häußge
b5cce6d41f Merge branch 'devel' into dev/settingsOverlays
Conflicts:
	src/octoprint/settings.py
2016-06-28 10:44:18 +02:00
Gina Häußge
73ba5b05a9 Add unit tests for settings 2016-06-28 10:29:05 +02:00
Gina Häußge
b39bb4c961 Move get_connection_options as classmethod into PrinterInterface 2016-06-27 12:19:28 +02:00
Gina Häußge
8b4d59f904 Merge branch 'devel' into dev/settingsOverlays 2016-06-24 14:59:36 +02:00
Gina Häußge
cf496662e9 If plugin is not enabled/installed, skip preemptive caching 2016-06-24 14:59:25 +02:00
Gina Häußge
3258b4b7f0 Fix processing of settings if there are no overlay maps 2016-06-24 14:57:52 +02:00
Gina Häußge
4070702931 Fix error in deep_dict when settings substructure defaults to None 2016-06-24 14:42:55 +02:00
Gina Häußge
3893b700f6 Merge branch 'devel' into dev/settingsOverlays 2016-06-24 14:31:41 +02:00
Gina Häußge
7ed71fad28 Improved request and preemptive caching
* UiPlugins may now disable preemptive caching
* Preemptive cache recording will also be disabled when preemptive caching
  is disabled according to settings (so far only execution on startup was prevented
  then)
* Preemptive cache forces configured view. E.g. if plugin "someplugin" was recorded
  in the preemptive cache, a custom context now makes sure that only that this view
  will be cached even if request parameters are hard to define to get routing to work
  correctly for an alternative UI
2016-06-24 14:28:19 +02:00
Gina Häußge
0fb1a41fef Fix ETag computation for UIPlugins 2016-06-24 12:18:13 +02:00
Gina Häußge
f8a4d73c30 Also detect editable plugins installs as managable 2016-06-24 11:06:23 +02:00
Gina Häußge
4398931b5c Normalize paths for sub path testing in pluginmgr 2016-06-24 09:23:53 +02:00
Gina Häußge
e5b8fdf0f4 Fix plugin settings cleanup
"only_local" was not properly evaluated
when retrieving full settings tree for
config diffing and minimal persistance
in SettingsPlugin.

That lead to overlay settings making their
way into config.yaml.
2016-06-23 17:51:46 +02:00
Gina Häußge
4dafa6704d Fix processing of overlays with plugin defaults 2016-06-23 16:14:28 +02:00
Gina Häußge
c693bce761 Plugins with settings overlay need restart 2016-06-23 16:13:49 +02:00
Gina Häußge
19ff9ac664 Allow plugins to define settings overlays 2016-06-23 13:54:14 +02:00
Gina Häußge
9131b3edd6 Allow defining a class on confirmation dialog 2016-06-23 11:26:51 +02:00
Gina Häußge
c879ae4099 Allow adding a settings overlay 2016-06-23 11:25:57 +02:00
Gina Häußge
34842d4312 Use ChainMap for settings 2016-06-22 15:22:47 +02:00
Gina Häußge
7d3440b744 Set user manager on components dict for plugins 2016-06-22 13:45:17 +02:00
Gina Häußge
bf6ce92be2 Add location for gcode and stl to slicing events 2016-06-21 17:47:41 +02:00
Gina Häußge
4e60c9ff49 Added file type path to file manager response 2016-06-21 17:34:30 +02:00
Eyck Jentzsch
9b34b8cfd0 Added support for gcode arc commands (G2/G3) in IJ notation 2016-06-21 17:30:36 +02:00
Gina Häußge
b32c231c47 Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/static/js/app/viewmodels/gcode.js
2016-06-21 16:10:02 +02:00
Gina Häußge
f20fdfd4db Add octoprint.printer.factory hook 2016-06-21 15:57:28 +02:00
Gina Häußge
6c20e58529 Handle browsers w/o support for visibility tracking 2016-06-16 12:10:14 +02:00
Gina Häußge
611c1ccf4a Disable GCODE viewer if browser is unsupported 2016-06-16 12:08:46 +02:00
Gina Häußge
397f762182 Don't trigger initial passive login before viewmodels are available
Closes #1374
2016-06-15 17:15:57 +02:00
Gina Häußge
ad201b040d Don't parse B: in position as bed temperature
Closes #1373
2016-06-15 16:27:51 +02:00
Gina Häußge
0274b0f25b Have virtual printer report back with "B:" in line
Similar to Marlin with enabled COREXY. Useful for testing
parser behaviour.
2016-06-15 16:22:37 +02:00
Gina Häußge
9c89d45c10 Use print_function import + added @MirceDan to AUTHORS.md 2016-06-15 10:52:49 +02:00
MirceaDan
65c1415d4b added () to print statements for python 3.x compatibility
some print already have () some did not , for consistency and
compatibility i added () to all prints.
(cherry picked from commit b601239)
2016-06-15 10:48:59 +02:00
Gina Häußge
8616bc13cb Made optional pass flag a parameter to viewmodel factory
Also some minor whitespace related stuff and some comments
2016-06-15 10:41:59 +02:00
Gina Häußge
9e2f24b767 Merge branch 'devel-ko-rewrite-optional' of https://github.com/BillyBlaze/OctoPrint into pr/BillyBlaze/devel-ko-rewrite-optional 2016-06-15 09:49:21 +02:00
Gina Häußge
467cda54a4 Don't display wizard if ACL is active and user not logged in
Fixes #1365
2016-06-09 14:05:09 +02:00
Gina Häußge
0bb467e884 Ensure temperature graph to be properly initialized 2016-06-09 13:41:14 +02:00
Gina Häußge
de78c14ae3 Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/main.js
	src/octoprint/static/js/app/viewmodels/files.js
	src/octoprint/static/js/app/viewmodels/loginstate.js
2016-06-09 12:56:07 +02:00
Gina Häußge
685ce16c85 Preparing release of 1.2.12 (part three)
Forgot to add the news category of the blog to the announcement
plugin and also updated the list of patrons again.
2016-06-09 09:31:36 +02:00
Gina Häußge
d7ef60b4d2 Slight change in function definition of reused functions (JS) 2016-06-08 16:33:08 +02:00
Gina Häußge
63cec660ca Solve a race condition that could cause 401 responses and a broken UI
Closes #1364. See ticket for details.
2016-06-08 16:21:25 +02:00
Gina Häußge
4c34cb84c7 Preparing release of 1.2.12 2016-06-08 13:09:04 +02:00
Gina Häußge
5006b019af Add events for slicing profile manipulation
Events SlicingProfile(Added|Modified|Deleted). Initially thought to be necessary
to properly refresh available profiles in slicing dialog, not needed for that after
all but still left in and documented, might be useful for someone.
2016-06-06 18:12:32 +02:00
Gina Häußge
4f3e4f7f38 Force rescanning of available slicing profiles for slicer on update
Should make newly uploaded profiles available in the slicing dialog without
having to first deselect and then reselected the current slicer.
2016-06-06 16:20:47 +02:00
Gina Häußge
db66e4afea Merge branch 'maintenance' into devel 2016-06-02 12:05:08 +02:00
Gina Häußge
a0697f8bad Use movie prefix for timelapse notifications
Also added a missing lock.

Also part of the fix for #1320
2016-06-02 12:03:57 +02:00
Gina Häußge
2833372603 Allow deletion of *.mp4 timelapse files
That one was missing in a00faf2.

Fixes #1320
2016-06-02 11:11:06 +02:00
Gina Häußge
8ce1eafd5d Properly track unrendered timelapses that are being processed
UI removes action buttons for them and displays a spinner
indicating that the timelapse in question is either being
recorded or being rendered at the moment.

Should prevent users from accidentally trying to render an
incomplete timelapse.
2016-06-02 10:11:54 +02:00
Gina Häußge
21a4033f73 Don't concurrently delete unrendered timelapses
Could trigger lots of errors if an unrendered timelapse currently
being collected was deleted from a separate thread from right
under the collection thread.

Also only log errors while processing already deleted files
if debug logging is enabled.

Finally trigger MovieDone event AFTER deleting unrendered
files (otherwise just rendered timelapse might still be present
when list of timelapses is queried right after).

Should solve #1326
2016-06-02 10:05:44 +02:00
Gina Häußge
7d52aa4be2 Merge branch 'maintenance' into devel
Conflicts:
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/viewmodels/timelapse.js
2016-06-01 13:29:56 +02:00
Gina Häußge
51a1953d99 Move timelapse event processing to timelapse viewmodel 2016-06-01 13:24:29 +02:00
Gina Häußge
30b6211157 Whitelist .g extensions on sd file upload
That way uploading something like auto0.g will not
cause a rename to auto0.gco anymore.

Closes #1314
2016-06-01 12:29:42 +02:00
Gina Häußge
36ec9c4741 Do not sort events in the event queue alphabetically
This should never have been a PriorityQueue, or at the very least it should
never have the data itself in a sortable structure.

Thanks to processing speed of the event queue that seldomly showed,
only in cases where two events entered the queue almost simultanously,
e.g. when starting to render a timelapse movie and immediately failing.

Should solve #1343
2016-06-01 10:29:47 +02:00
Gina Häußge
e4c7ccecef Merge remote-tracking branch 'origin/devel' into devel 2016-05-31 13:33:28 +02:00
Gina Häußge
06a66ac1df Merge branch 'fix/brokenEditUserDialog' into devel 2016-05-31 13:32:46 +02:00
Gina Häußge
1581ebbead Fix error when trying to confirm the edit-user-dialog
Closes #1357
2016-05-31 13:32:14 +02:00
Mark Walker
938251d755 Fix condition on print volume check
This should address #1354
2016-05-26 00:42:20 +00:00
Gina Häußge
a8927d08ab Merge branch 'maintenance' into devel 2016-05-20 11:04:55 +02:00
Gina Häußge
436ebd7c18 Add help text re units for disk space thresholds
Closes #1338
2016-05-20 11:04:42 +02:00
Gina Häußge
82a580f5d5 Add help text re units for gcode size thresholds
Closes #1338
2016-05-20 10:58:18 +02:00
Gina Häußge
833bf07ded Merge branch 'fix/noProgressReportOn0' into devel
Conflicts:
	src/octoprint/__init__.py
2016-05-20 10:27:20 +02:00
Gina Häußge
801d60388a Also report 0% print progress to plugins
Fixes #1344
2016-05-20 10:24:47 +02:00
Gina Häußge
821fa4299b Let's go all in and use keyword parameters
Way less error prone than positional arguments!
2016-05-19 18:35:02 +02:00
Gina Häußge
b018a56e4c Merge branch 'maintenance-pid_cleanup' of https://github.com/kevans91/OctoPrint into fix/1324 2016-05-19 18:32:46 +02:00
Gina Häußge
7a43f34d46 Make Slice Dialog pop up again on STL upload 2016-05-19 18:14:53 +02:00
Gina Häußge
e560809f70 Merge branch 'dev/printExceedsBed' into devel 2016-05-19 18:14:19 +02:00
Gina Häußge
2680d135ee Small changes before merging of PR
* Do not trigger notifications within additional data generation,
    that would trigger a LOT of notifications just on page load. Instead
    adjusted to only display notification if a problematic file gets
    selected for printing (and select & print gets downgraded to just
    select in such a case too)
  * Made some left-over english-only strings translatable
  * Added Model Size display to additional data in file list (if we have
    it, why not show it :))
  * Slight rewording of notification.
  * Fixed a merge error.
2016-05-19 18:14:08 +02:00
Gina Häußge
6d1774bec2 Merge branch 'fix/adminNeededForConnecting' into devel 2016-05-19 10:46:34 +02:00
Gina Häußge
b1e75a1033 Make connection dialog visible for users again
Should actually not have been limited to admins-only, that was an accident
during switching to 1.2.0 implementation.

Once #1110 is tackled, this should be something configurable based on the role
as well.
2016-05-19 10:42:27 +02:00
Kyle Evans
86fbbefb6e Complete backport of pid cleanup fix for #1324 2016-05-15 09:16:53 -05:00
Javier Martínez Arrieta
92279fb3a0 Squashed commit of the following:
commit cd6688be2691997feb1c76ca785e096779ac51db
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Thu May 12 15:13:23 2016 +0200

    Removed previousE

commit 413655f7051012b26406be013db9b4b3697404bc
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Thu May 12 12:36:54 2016 +0200

    Changed to detect in case of two extruders

commit b0cfa28eaff7648e9fa1b809122205f5c6a56899
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Mon Apr 11 18:11:54 2016 +0200

    Identation issues solved and code improved

commit 95b6eba2ad034d48c1b56576a2c665b4bb3abf72
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Mon Apr 4 18:48:47 2016 +0200

    Changed message shown to user using sprintf and improved 'if' checks

commit 3baf9d7fc0b05a336e17a3920fd5d267423959b3
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Tue Mar 8 17:46:40 2016 +0000

    Analysis now done in frontend, taking also into account centre origin

commit e742e74475dbacdb54517528e79533fbad8fa188
Author: Javier Martínez Arrieta <martinezarrietajavier@gmail.com>
Date:   Sat Mar 5 21:37:02 2016 +0100

    Update analysis.py

commit 29a821c2f40daa0fe15807d0c12435eef6a63b4f
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Mon Feb 29 19:11:59 2016 +0000

    Removed unrelated folders and files for pull request

commit 0edbcf3d3cbe3b6bb3e93c8a65fd7e6cbf8c7c45
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Sat Feb 27 10:54:47 2016 +0000

    Completed requirements and solutions for Slic3r integration and added requirements for scheduled printing

commit a92b7e3adeedbdc1a8f084aca0be248bb713e7c2
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Mon Feb 22 11:06:22 2016 +0000

    Changed requirements and solution file for Slic3r integration

commit 201b5723d9a537262d490a568ce32cbacb872dc9
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Thu Feb 18 12:15:54 2016 +0000

    Solved problem with character '}' at static/js/viewmodels/file.js

commit d89319c2a57d0aecaf96a3d91f58f9585e00fc25
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Wed Feb 17 21:04:44 2016 +0000

    Completed requirementes to add Slic3r as a plugin

commit 9e07a3b7c014fd77720746624c6e8433610b2e81
Merge: caf4e84 6945394
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Wed Feb 17 10:03:56 2016 +0000

    Added functionality to warn in case object exceeds printing area

commit caf4e84ab278455bf969c5630f5d8be11fec0d03
Author: Javierma87 <javier.martinez.arrieta@alumnos.upm.es>
Date:   Thu Feb 11 18:32:36 2016 +0000

    Added docs-tfg and implemented functionality of warning in case object is bigger than printer area
2016-05-12 15:41:12 +02:00
Kyle Evans
8263c6072a Make Server class octoprint_daemon-aware, make sure terminated() gets invoked on it upon SIGTERM and update respective test
(cherry picked from commit 75f8fac)
2016-05-12 10:44:27 +02:00
Gina Häußge
0d9739095e Merge branch 'devel-pid_cleanup2' of https://github.com/kevans91/OctoPrint into pr/kevans91/devel-pid_cleanup2 2016-05-12 10:11:45 +02:00
Gina Häußge
6297f8ae8e Merge branch 'fix/sockJsThreading' into devel 2016-05-10 09:49:03 +02:00
Gina Häußge
91b5fc6b0d Force synchronization of sockjs message sending 2016-05-10 09:48:20 +02:00
Kyle Evans
75f8facb05 Make Server class octoprint_daemon-aware, make sure terminated() gets invoked on it upon SIGTERM and update respective test 2016-05-09 09:40:50 -05:00
Gina Häußge
1225a2501d Fix a stupid mistake in the german translation 2016-05-09 15:27:17 +02:00
Gina Häußge
797d24e01d Small whitespace corrections 2016-05-09 15:09:57 +02:00
Gina Häußge
4e0d9e8d8e Merge branch 'dev/gcodeLayerButton' of https://github.com/agarwali/OctoPrint into pr/agarwali/dev/gcodeLayerButton
Conflicts:
	AUTHORS.md
2016-05-09 12:56:42 +02:00
Gina Häußge
7a69096a83 Merge branch 'gcodeVisualizerFileSizeThreshold' of https://github.com/philphilphil/OctoPrint into pr/philphilphil/gcodeVisualizerFileSizeThreshold
Conflicts:
	src/octoprint/settings.py
2016-05-09 12:47:06 +02:00
Gina Häußge
628443d44b Fix a merge error 2016-05-09 12:33:26 +02:00
Gina Häußge
2fc393f02e Fixed settings for fahrenheit appearance option 2016-05-09 11:40:39 +02:00
Gina Häußge
5ff16bcbf4 Merge branch 'dev/fahrenheit' of https://github.com/therealbstern/OctoPrint into pr/therealbstern/dev/fahrenheit
Conflicts:
	AUTHORS.md
2016-05-09 11:33:57 +02:00
Gina Häußge
3322714a8a Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
2016-05-09 10:29:20 +02:00
Gina Häußge
4830d60269 Announcements: Ensure validity of channel keys, made refreshable 2016-05-04 13:28:28 +02:00
Gina Häußge
76959e06c9 Updated german translation 2016-05-04 09:57:25 +02:00
Gina Häußge
5a8c3654c4 We leave the About dialog untranslated for now 2016-05-04 09:51:50 +02:00
Gina Häußge
a9756c4c36 Announcements: no read_until -> take latest from feed 2016-05-03 17:36:43 +02:00
Gina Häußge
1b1148d0c6 Properly refresh analysis data on re-upload of a file 2016-05-03 12:23:39 +02:00
Gina Häußge
76b4a45495 Merge branch 'maintenance' into devel
Conflicts:
	THIRDPARTYLICENSES.md
	setup.py
	src/octoprint/server/__init__.py
	src/octoprint/server/views.py
	src/octoprint/settings.py
	src/octoprint/static/css/octoprint.css
2016-05-03 10:48:26 +02:00
Gina Häußge
9919de9a6c Added padding to announcement reader content pane 2016-05-03 10:22:23 +02:00
Gina Häußge
5091099f83 Added "About" link to settings dialog 2016-05-03 10:21:59 +02:00
Gina Häußge
7c6b9eac48 Added externalize_links filter for jinja2
Links from documents (like changelog, licenses etc) should
also be target blank & rel noopener/noreferrer
2016-05-03 09:59:37 +02:00
Gina Häußge
7a8e6b6b6d Use UTC for feed reader timestamps 2016-05-03 09:17:48 +02:00
Gina Häußge
50ae34dc4f Forgot the css file of the announcements plugin 2016-05-02 17:49:32 +02:00
Gina Häußge
8f621eca43 Merge branch 'improve/announcementPlugin' into maintenance 2016-05-02 17:38:21 +02:00
Gina Häußge
9e73f1563d Strip paragraphs from summaries for announcement notifications 2016-05-02 17:32:36 +02:00
Gina Häußge
3a570f8ab0 Added OctoPi + Spotlight feeds, article link, better reader design 2016-05-02 17:14:48 +02:00
Gina Häußge
62aee50701 rel="noopener noreferrer" for external links 2016-05-02 11:48:08 +02:00
Gina Häußge
789e9922d1 Some improvements in the about dialog
* Sponsors => Supporters
  * Links to individual About dialog tabs from start page
  * Slight rewording here and there
  * rel="noopener noreferrer" for external links
2016-05-02 11:25:05 +02:00
Gina Häußge
58fc67bd99 Fixed feed links in feed viewer 2016-05-02 11:02:53 +02:00
Gina Häußge
656b8c53d7 Fixed wrong fakeAck call
Thanks @markwal for spotting this.
2016-05-02 10:23:27 +02:00
Gina Häußge
d322c365ce Updated feeds 2016-05-02 10:12:18 +02:00