Commit graph

59 commits

Author SHA1 Message Date
Philipp Engel
39bd44bf70 Merge branch 'devel' of https://github.com/foosel/OctoPrint into mrbeam 2014-10-24 11:29:39 -05:00
Gina Häußge
c23cb378cd Allow login of the same user from multiple browsers without side effects
So far when logging in from two different browsers, then logging out in one of them the user was logged out across all browsers. This should now be changed in so far as that each individual browser session is tracked and only that session is ended by a logout that belongs to the browser where the logout button was clicked.

Should fix #556
2014-10-24 13:05:07 +02:00
Philipp Engel
219a26ec0b applied grbl support changes from PxT | https://github.com/PxT/OctoPrint 2014-10-21 19:39:15 -05:00
Gina Häußge
6e62ecc8c1 Keep track of files that are currently being used (file being printed, source and destination for slicing) so that they can't be deleted
Also added logging to exception branches where the exception was formerly just swallowed.
2014-10-21 19:18:59 +02:00
Gina Häußge
776e6aa498 Fixed a typo breaking slicing altogether 2014-10-21 15:03:36 +02:00
Gina Häußge
71d73c6562 Do not try to slice on local slicers when printing
Since slicing takes a lot of resources, that might lead to quality loss for the print job.
2014-10-21 14:14:00 +02:00
Gina Häußge
10d76ae7a4 Fix for deleting the file that is currently selected
Due to a missing switch to a refactored version of an internal data structure, that file stayed being selected but wasn't actually there anymore, leading to an error upon hitting Print.
2014-10-06 19:01:30 +02:00
Gina Häußge
cd973adedf Improved slicing and file management
- File management is prepared to support folders (UI still lacking support)
- STL files are now first class citizens
  - can be managed via the file list (and filtered from it)
  - can be sliced on demand
- Slicing now happens via plugins
- Added Cura plugin
  - uses CuraEngine directly instead of full Cura installation
  - Cura profile importer for importing profiles from regular Cura installs via settings dialog
  - TODO: UI for editing profiles
- API for slicing and slicing profile management
2014-10-06 17:34:07 +02:00
Gina Häußge
fe34bdc656 Fixed a bug that broke the first-run-dialog 2014-09-12 12:18:15 +02:00
Gina Häußge
d1c34a9c88 Try to reconnect to backend when switching from ap to wifi
netconnectd now regularly pings hostname it got from backend (defaults to <systemname>.local) while switching to wifi from ap mode and reloads page to that if host comes up.

This requires the browser the client is currently running in to be able to resolve local domains as broadcasted via avahi. Windows systems will need to install the Bonjour for Windows client for this to work.
2014-09-11 15:40:04 +02:00
Gina Häußge
65263a8b74 Made what is registered for discovery more configurable
- Additional zeroconf services may now be added via config
- Exposed zeroconf_register method as helper for plugins
- Vendor specifics may be added to service registrations via config
2014-09-11 12:19:10 +02:00
Gina Häußge
56b1705df4 Added plugin helpers, added ssdp/zeroconf browsing in discovery plugin as first helpers 2014-09-10 22:28:03 +02:00
Gina Häußge
75017d7ac6 Integrated netconnectd plugin with netconnectd service 2014-09-08 18:05:25 +02:00
Gina Häußge
428ea89f62 discovery plugin: let's try upnp 2014-09-07 00:53:54 +02:00
Gina Häußge
e1366ef90f First experiments with a plugin system, service discovery and connectivity ensurance 2014-09-05 17:11:11 +02:00
Gina Häußge
e4cc84b771 Merge branch 'master' into devel
Conflicts:
	docs/index.rst
	setup.py
	src/octoprint/server/__init__.py
	src/octoprint/server/api/__init__.py
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/gcodeviewer/js/renderer.js
	src/octoprint/static/js/app/viewmodels/printerstate.js
	src/octoprint/static/less/octoprint.less
	src/octoprint/templates/index.jinja2
2014-08-31 15:28:07 +02:00
Gina Häußge
e77efde503 Make key removal from session more solid
Do not die a horrible death if the key you are attempting to remove from the session upon logout doesn't exist. Attempt at
fixing #556
2014-08-29 09:26:57 +02:00
Gina Häußge
b78bb9e970 Make watched folder configurable via UI 2014-08-19 15:55:52 +02:00
Gina Häußge
6c5b32d92b New option to set default extrusion length in Control panel
Adds a new config key printerParameters.defaultExtrusionLength which can be configured via the settings dialog in the Printer section and then gets used to set the placeholder value on the extrusion/retraction control and as fallback if the user entered no value when clicking the Extrude/Retract button.

Closes #513
2014-08-11 17:37:26 +02:00
Gina Häußge
aefb72f7cc API version 1.0 is too early, we'll set it to 0.1 for now until it is really stable and not missing things like system commands and such
(cherry picked from commit 4d434d3)
2014-08-08 17:07:02 +02:00
Gina Häußge
4d434d36be API version 1.0 is too early, we'll set it to 0.1 for now until it is really stable and not missing things like system commands and such 2014-08-08 17:06:43 +02:00
Gina Häußge
f69abdcc14 Version resource on API with API and software version
(cherry picked from commit 907f505)
2014-08-08 17:04:31 +02:00
Gina Häußge
f2092ee89c Merge branch 'devel' into dev/largeFileUpload 2014-08-05 19:59:05 +02:00
Gina Häußge
d4e7c2e1b1 We actually do want to run the configured system commands on the shell, so set shell to True
Also includes a workaround for sarge bug no. 21

Closes #489
2014-08-05 19:03:04 +02:00
Gina Häußge
b4af85f405 Finalizing upload streaming support
Major refactoring of octoprint.server.util (divided into smaller submodules), extended Tornado to allow for request-specific max content lengths, introduced settings parameters to configure maximum upload size, maximum request body size and file suffixes

See #455
2014-08-05 11:26:13 +02:00
Gina Häußge
e9ca09da87 Introduced UploadStorageFallbackHandler which rewrites multipart file upload forms to store the contained files in temporary files (like nginx-upload), made the file upload API in OctoPrint utilize this 2014-08-04 14:45:46 +02:00
Gina Häußge
d770c20b5a Working streaming file upload for now 2014-08-03 18:53:10 +02:00
Gina Häußge
1ef9c617b3 Trying to get large file uploads to work 2014-08-02 10:24:41 +02:00
Gina Häußge
f6e2a59008 Correctly handle GET requests on /api/printer/{tool|bed} when printer is not operational
Closes #515
2014-07-17 13:02:00 +02:00
Gina Häußge
6a3241fa0b Another try at fixing #476 2014-06-23 16:22:57 +02:00
Gina Häußge
907f5051e1 Version resource on API with API and software version 2014-06-23 13:31:31 +02:00
Gina Häußge
522eb40808 Documented SockJS interface, deprecated /api/state 2014-06-08 16:52:28 +02:00
Gina Häußge
fa8d4eff0f Merge branch 'jonnor/api-allow-cors' into devel 2014-06-07 18:00:49 +02:00
Gina Häußge
666a9ef0fa ACCESS_CONTROL_REQUEST_HEADERS => Access-Control-Request-Headers
While flask internally translates that just right back, this makes the implementation more readable since it matches the standard header name
2014-06-07 17:49:55 +02:00
Jon Nordby
014ea3eadc API: Clarify Access-Control-Request-Header handling
'headers' was a way too generic name, and the code structure implied
it was used in place of 'resp.headers' or 'request.headers', which is not the case.
Also add comment about the purpose of this code.
2014-06-07 14:42:58 +02:00
Gina Häußge
f7e1b39af9 Added checkbox to the settings dialog for CORS, also slight changes in the documentation 2014-06-07 13:21:54 +02:00
Jon Nordby
651a9d30ce API: Only allow cross-origin requests if explicitly enabled
To enable, set the key "allowCrossOrigin" under "api" in config.yml
No user interface for this option yet
2014-06-07 01:04:32 +02:00
Jon Nordby
0bd6005cb9 API: Allow cross-origin requests
When a REST API is called from within a browser page from a different domain,
the server needs to explicitly allow this. This makes the OctoPrint
API available also to other webapps, for instance those hosted on same network in hackerspace.
2014-06-07 00:27:19 +02:00
Gina Häußge
1b9523f700 Forgot to adapt verifyFileExists to new sd file list format 2014-06-01 11:54:03 +02:00
Gina Häußge
ee31808522 Also support extended sd file list (including size in bytes) from printer
See also #486 where support for SD_EXTENDED_DIR format was requested between the lines ;)
2014-05-30 18:05:43 +02:00
Gina Häußge
cbde819e07 Better error reporting for timelapse rendering and system commands, updated pnotify and added possibility to add a "more" section to notifications 2014-05-26 22:51:45 +02:00
Gina Häußge
9c9b98dde4 Properly detect current file, forgot to adjust detection stuff in upload API after renaming things in the job tracking.
Thanks to Bryan Mayland for spotting this.

Closes #476
2014-05-25 20:18:41 +02:00
Gina Häußge
9ab4fa608a Corrected typo for print bed command "offset", expected parameter is called "offset" not "offsets"
Compare #444
2014-04-18 14:03:38 +02:00
Gina Häußge
e373cde4f7 Some more work on the REST API documentation & set Location header on file upload response 2014-03-24 22:50:56 +01:00
Gina Häußge
072079df05 Further work on the REST API, documented most of /api/printer and while at it also fixed #365 2014-03-24 18:27:43 +01:00
Gina Häußge
f7c75442e7 Merge branch 'master' into devel
Conflicts:
	src/octoprint/server/api/settings.py
	src/octoprint/settings.py
	src/octoprint/static/js/app/viewmodels/settings.js
	src/octoprint/util/comm.py
2014-03-15 20:36:35 +01:00
Gina Häußge
ca8779676c Added configurable timeout settings for temperature and sd status query, made communication timeout reset everytime a non-empty line is received from the printer 2014-03-10 13:52:09 +01:00
Gina Häußge
f580acaf70 Added post roll to timelapse
You can now define an amount of seconds that should be added to the rendered timelapse (so, since the current fps setting is 25 frames per seconds, 25 * the configured amount of post roll seconds images will need to be captured).

Timed timelapses add this to the actual run time of the timelapse capturing process (so if you configure 1s post roll, a timed timelapse will run 25s longer than the print)

Z-triggered timelapses just create one last capture from the webcam and use this image again and again (so 25 times for a post roll of 1s).

Implements #384
2014-03-05 20:52:25 +01:00
Gina Häußge
27322a971f Also support repetier target temperature output
Should fix #360
2014-03-03 23:04:36 +01:00
Gina Häußge
ace102e1c1 Added API documentation, adjusted API and returned data model slightly to be consistent with other parts of the API, made log file management restricted to admins.
TODO: Make downloading of logs also restricted to admins
2014-02-24 09:57:51 +01:00