Commit graph

4711 commits

Author SHA1 Message Date
Gina Häußge
7df78defb1 Make data version part of etag
We might add fields to things like file entries (e.g. "display") and in
such cases want to refetch the list even if the files itself didn't
change, to make sure those new fields are available to the clients.

See https://github.com/foosel/OctoPrint/issues/2111#issuecomment-337164940
2017-10-17 11:05:43 +02:00
Gina Häußge
d0aa81c977 Merge branch 'staging/maintenance' into maintenance 2017-10-16 16:21:00 +02:00
Gina Häußge
13de4b4b1d staging/maintenance is now 1.3.6rc1.dev 2017-10-16 16:20:43 +02:00
Gina Häußge
4fba88d197 Merge branch 'rc/maintenance' into staging/maintenance 2017-10-16 16:09:14 +02:00
Gina Häußge
77753ca026 Preparing release of 1.3.5 2017-10-16 13:21:27 +02:00
Gina Häußge
fd53f47f86 Wider scrollbars & no fade out
Increased scrollbar width of file list and plugin repository list to
10px (from 5px). Fixed scroll bar hiding itself on initialization due to
alwaysVisible not properly persisting the initial binding.

Enhance knockout binding syntax for slimScrolledForeach: slimscroll
initialization parameters may now be provided during data binding via
the additional slimscroll property accepted as part of the extended
foreach syntax, e.g.

slimScrolledForEach: {data: ..., slimscroll: {alwaysVisible: true, ...}}

Implements #2111
2017-10-13 17:52:54 +02:00
Gina Häußge
af4f97f2df Updated slimscroll.js to version 1.3.8 2017-10-13 17:52:54 +02:00
Gina Häußge
44f5916cd4 Faster animation speed & close on PNotify 2017-10-13 17:52:54 +02:00
Gina Häußge
4e80d69e51 SWU: Always auto-hide up-to-date info
See #2042
2017-10-13 17:52:54 +02:00
Gina Häußge
020180a4a7 Merge pull request #2152 from ntoff/improve/auto-update-warn-sd-interupt
Add print interruption warning to auto update dialog
2017-10-13 11:49:45 +02:00
ntoff
a21934abba add print interruption warning to auto update dialog 2017-10-13 13:04:38 +10:00
Gina Häußge
42ac133436 Support full UTF8 file names
Files (and folders) are still slugified to ASCII for storage on disk,
but now the original filename is stored alongside in metadata.yaml
and used for display in the file list and print status.

The slicing dialog also inherits that display name for use as base
for the suggested GCODE name.

Internally, everything still depends completely on the slugified
ASCII version.

This implements #2094
2017-10-12 18:08:41 +02:00
Gina Häußge
42018ae29a starts_with => startswith
Now that was embarrassing.

Fixes #2151
2017-10-11 16:27:51 +02:00
Gina Häußge
054bbd8a9b comm: no need to fetch potential ports again 2017-10-11 16:20:37 +02:00
Gina Häußge
4093995ba0 STK500v2: Retries for reading from serial
This would normally not fly at all but we give it a pass here since we
only use that module for auto detection anyhow (and probably not for
much longer since that approach is simply too error prone).

Adapted from

  https://github.com/foosel/OctoPrint/issues/2138#issuecomment-334117910

by @dtynan.

Solves #2138 until I come up with something better
2017-10-11 16:19:37 +02:00
Gina Häußge
d1fdbd5080 More lenient check for unrendered timelapses
Only delete automatically if modification AND creation date are older
than the calculated cutoff.
2017-10-10 12:51:43 +02:00
Gina Häußge
abfcc6e5aa Fix deletion of unrendered timelapses
If the filename contained a [] pair, the file would not match the glob
pattern used for selecting for deletion.

Backporting the glob.escape function from Python 3.4 and using it here
should fix that. We only use our own ported version if glob.escape
doesn't exist - that should reduce redundant code once we become Python
3 compatible.
2017-10-10 12:41:47 +02:00
Gina Häußge
b89b6970c6 Fix temperature plot init if it's not the 1st tab
If the temperature graph was not on the first tab, the plot would be
initialized without being visible, causing some sizing issues and
alignment issues with the Y axis ticks.

Forcing the plot to only get initialized once visible solves these
problems.

Fixes #2147
2017-10-09 15:57:52 +02:00
Gina Häußge
40eb3c1072 Merge pull request #2146 from ntoff/improve/shutdown-serial-reset-warn
Add possible print disruption warning to shutdown dialog
2017-10-09 11:13:03 +02:00
ntoff
178131945e Add possible print distruption warning to shutdown dialog 2017-10-06 09:32:49 +10:00
Peter Backx
452ee8e156 Adding documentation for the virtual printer plugin. 2017-10-05 18:19:08 +02:00
Gina Häußge
807b44a35e Merge branch 'staging/maintenance' into maintenance 2017-10-04 15:02:26 +02:00
Gina Häußge
f4e7ab424b staging is 1.3.5rc5.dev 2017-10-04 15:02:07 +02:00
Gina Häußge
e88e6ba292 Preparing release of 1.3.5rc4 2017-10-04 13:33:46 +02:00
Gina Häußge
25c56a5402 Wizard: Force ACL sub wizard to always come first
If required.

Closes #2140
2017-10-04 11:34:06 +02:00
Gina Häußge
c5e7212fa2 PMGR: Support VCS URLs to install from
Implements #2104
2017-10-02 17:56:38 +02:00
Gina Häußge
0f8f4579d6 Add no-op default action to login form
That way people clicking too fast on login before the view models are
bound won't be able to make the form submit username and password as GET
parameter to the base URL.

Closes #2108
2017-10-02 16:39:57 +02:00
Gina Häußge
12126621c5 Merge pull request #2044 from dforsi/fix/fix-typos
Fix typos in strings and comments
2017-09-29 16:28:33 +02:00
Gina Häußge
a093dbc36f Merge pull request #2109 from mrbeam/upstream_maintenance
added decorator for calls only available on the first run.
2017-09-29 16:26:55 +02:00
Gina Häußge
0f325b95c1 Minor changes to #2123 for better readability 2017-09-29 16:18:52 +02:00
Gina Häußge
7fc0f48659 Adjust unit tests for script root in cookie suffix 2017-09-28 17:43:53 +02:00
Gina Häußge
dfe345007e Updated sockjs-tornado dependency
Apparently we need 1.0.3 after all for custom session classes.

Reported by @MoonshineSG in #2095
2017-09-28 16:30:27 +02:00
Gina Häußge
4fe6e0545a Also include script name in cookie name
Otherwise we might run into trouble if we have an OctoPrint instance
running on / and /octoprint2 for example - the browser will send
cookies for both instances to the /octoprint2 instance and whatever
gets processed last will overwrite the value before in Tornado's cookie
processing. This of course will nuke the login session in case of the /
cookie being sent or processed last.

Appending the path/script root to the cookie name solves this, similar
to how we circumvented an identical problem caused by browsers not
distinguishing between ports for cookies.

Solves an issue reported by @mgrl in #2095
2017-09-28 16:23:27 +02:00
Gina Häußge
c84e199e87 Add & use "octoprint analysis gcode" subcommand
That should solve any weird import issues we have when
running gcodeInterpreter.py directly (and hence putting
octoprint.util as first entry into the python path,
causing potential issues with imported modules such as
yaml to catch the octoprint.util.platform module instead
of the actual python platform module).

See reported problem with that by @CapnBry in #2095
2017-09-28 10:33:28 +02:00
Luke McKechnie
791f0457fb Fix for SharedNozzle, replicating temp from current tool to all tools. Issue # 2077 2017-09-21 09:31:33 -04:00
Teja
56ad1841d4 added decorator for before firstrun only calls. 2017-09-08 16:20:37 +02:00
Gina Häußge
b161a1f093 Merge branch 'staging/maintenance' into maintenance 2017-08-25 14:56:42 +02:00
Gina Häußge
79f7a5a1e7 staging is 1.3.5rc4.dev 2017-08-25 14:56:15 +02:00
Gina Häußge
679674df22 Preparing release of 1.3.5rc3 2017-08-25 11:46:40 +02:00
Gina Häußge
5989d243d3 Fix wrapping of temperature controls on touch devices
Successfully tested in Chrome (desktop & Android), Firefox (desktop &
Android), Safari (desktop & iOS).

Closes #2059
2017-08-25 09:47:11 +02:00
Gina Häußge
97cb0088f6 Delay opening of serial.log until first message
That way we don't risk running into potential "file busy" issues
under windows on log file rollover.
2017-08-24 19:16:41 +02:00
Gina Häußge
2ed36ed383 Do not block when processing held back events! 2017-08-23 19:07:08 +02:00
Gina Häußge
12b8a54081 set_close_exec on intermediary server port for unix & windows
Using the win32 API it's possible to prevent the intermediary server
socket from inheriting itself to subprocesses. So let's use that here.

Another bit of the solution for #2090.
2017-08-23 18:31:42 +02:00
Gina Häußge
a35e145649 Don't forward events to uninitialized EventPlugin implementations
Another part of fixing #2090
2017-08-23 18:19:37 +02:00
Gina Häußge
f77be701a2 Only fire events once Events.STARTUP has been seen
One part of fixing #2090
2017-08-23 18:11:40 +02:00
Gina Häußge
e9401b7090 Easier copying of API keys
There's now a dedicated button for that.

This should get around issues like #2056. Also increased size
of API key display field (where possible). Fixes #2055
2017-08-22 18:10:32 +02:00
Gina Häußge
b138c2bccf New global JS helper copyToClipboard 2017-08-22 18:05:53 +02:00
Gina Häußge
76c2113ad4 Fix block-level input-append/input-prepend
We still had double borders going on for included add-ons.
2017-08-22 18:05:00 +02:00
Gina Häußge
bfe5bc179c New hook octoprint.comm.protocol.temperatures.received
Allows preprocessing/sanitizing temperatures as received from the
printer.

Workaround for printers that occasionally report garbage temperature
data, e.g. #2050
2017-08-22 11:32:47 +02:00
Gina Häußge
d7298cee06 Virtual printer: Less code duplication in temp simulation 2017-08-22 11:21:04 +02:00