Commit graph

304 commits

Author SHA1 Message Date
Gina Häußge
f1254622c5 Docs: Link to Jinja 2.8.1 documentation mirror at jinja.octoprint.org
The official docs are only 2.9+, that doesn't help us as long as we are
stuck with 2.8.

Fixes #1900
2017-05-03 11:56:25 +02:00
Gina Häußge
251a1ea4b5 "a couple" => "a few"/"some"
Because apparently I was using it wrong, at least for some parts of the
world :)
2017-04-12 14:54:32 +02:00
Gina Häußge
9bcce4e56a docs: plugin tutorial requires 2017-04-12 13:00:56 +02:00
Gina Häußge
b84432c8a5 Merge branch 'patch-1' of http://github.com/ParkerK/OctoPrint into maintenance 2017-04-11 09:36:13 +02:00
Parker K
c6623c8883 added missing period and space so works 2017-04-10 21:35:46 -04:00
Gina Häußge
b24851ca05 New events: FileAdded, FileRemoved, FolderAdded, FolderRemoved
Closes #1092
2017-04-03 15:50:23 +02:00
Gina Häußge
fa73fd3c14 Merge branch 'master' into maintenance
# Conflicts:
#	src/octoprint/server/api/settings.py
#	src/octoprint/settings.py
2017-03-16 15:16:52 +01:00
Gina Häußge
0a69dbeddb Preparing release of 1.3.2 2017-03-16 13:08:31 +01:00
Gina Häußge
3e5923b21e Consolidate API Key handling
System wide API key now offers a generate button like the user
API keys. Setting the API key directly to a value via the settings API
endpoint is now no longer possible, which should prevent setting it
accidentally thanks to the browser prefilling things where it shouldn't.

No delete button is offered for the system wide API key since it will
get automatically regenerated on server start if not set, so
regeneration is the only functionality here that makes sense.

If no API key is set in the user settings, the "delete" button is now
disabled. If a key is already set and a new one is to be generated, a
confirmation dialog makes sure this is really what the user wants. Same
for deleting an existing API key.

Both the system wide API key and the user specific API keys will now
only display a QRCode if there's actually a value for the key.
2017-03-13 17:09:56 +01:00
Gina Häußge
3006bde972 octoprint --safe -> octoprint serve --safe 2017-03-10 13:51:44 +01:00
Gina Häußge
55762ee71a Documentation updated for safe mode feature 2017-03-10 13:34:55 +01:00
Gina Häußge
01cffafe77 Fixed documentation of printer profile API
Closes #1732
2017-03-06 14:36:43 +01:00
Gina Häußge
ed46d9967a Adjusted docs of slicing API to match implementation
Follow-up to PR #1748
2017-02-21 14:17:14 +01:00
Gina Häußge
b8cbe02b7a Fixed docs for config.yaml and settings 2017-02-17 13:52:16 +01:00
Gina Häußge
42f4fad257 Fixed minor doc issue 2017-01-26 15:00:06 +01:00
Gina Häußge
eaadf8743b Allow multiple instances of the JS client
We now have a global OctoPrintClient, which is the class from which
all clients are derived, and a global OctoPrint, which is a single
instance already setup and ready to use in case we only need one.

It would be cleaner to have clients create that singular instance
themselves, but we need to maintain backward compatibility for now
with how we established the client to work with the 1.3.0 release.

New clients can be create with

    client = new OctoPrintClient({ /* options */ });

Alternatively the options can be left out and set at a later point:

    client = new OctoPrintClient();
    /* ... */
    client.options = { /* options */ };

Individual client components register themselves with OctoPrintClient
via OctoPrintClient.registerComponent(name, component) from the
component JS files. Just like before their instances are then
available in the individual client instances under "<client>.<name>",
 e.g. "OctoPrint.files".

Plugin components register themselves with OctoPrintClient via
OctoPrintClient.registerPluginComponent(name, component) from the
component JS files. Just like before their instances are then
available in the individual client instances under "<client>.plugins
.<name>", e.g. "OctoPrint.plugins.softwareupdate".

This should make it possible to create dashboard pages utilizing the
JS client that monitor the status of multiple OctoPrint instances,
without workarounds such as having to swap out the options globally
before each request.

See #1681 for the corresponding discussion.
2017-01-26 14:59:56 +01:00
Noah Martin
b1057a4cc8 Simplified install process on Mac
(cherry picked from commit 726eec8)
2017-01-13 13:29:11 +01:00
Gina Häußge
06eae381e4 Fixed an error in the dev env setup docs 2017-01-10 19:01:23 +01:00
Gina Häußge
102727b122 [Docs] Fix missing docs for recursive parameter on file API
Solves #1634
2016-12-09 10:50:53 +01:00
Gina Häußge
558a8957f9 Fix docs for OctoPrint.upload method 2016-12-07 10:59:16 +01:00
Gina Häußge
65377b396f Added note that jquery and lodash are dependencies of the js client lib 2016-11-28 11:29:17 +01:00
Gina Häußge
daeb3dbc91 Documentation for last_position, pause_position, cancel_position 2016-11-23 17:41:58 +01:00
Gina Häußge
0d13c3b439 Add OctoPrint.options.locale and if set send X-Locale header on requests
See #1593
2016-11-18 07:56:49 +01:00
Gina Häußge
d52462b9f5 Docs: Fixed GCODE event docs 2016-11-15 11:57:09 +01:00
Gina Häußge
cc5f119f1b Include position in PrintPaused and PrintCancelled events
If available. Updated docs accordingly.
2016-11-15 11:56:30 +01:00
Gina Häußge
20d15b2abb Documented usage of js client lib 2016-10-18 11:26:17 +02:00
Gina Häußge
d1f79dffd8 Docs: update screenshot of plugin manager 2016-10-14 14:43:38 +02:00
Gina Häußge
243e4107a3 Docs: Update cura_engine binary + compiling instructions for jessie 2016-10-14 14:35:22 +02:00
Gina Häußge
f7eb12a3ee Docs for {Reload|Restart}NeedingPlugin 2016-10-14 14:15:33 +02:00
Gina Häußge
ee92fc6907 Docs for CLI of software update plugin 2016-10-14 13:57:01 +02:00
Gina Häußge
71c2789fe7 Docs: fixed duplicated "injected properties" section 2016-10-13 14:25:24 +02:00
Gina Häußge
9de78001dd Merge branch 'maintenance' into devel
# Conflicts:
#	CHANGELOG.md
#	docs/plugins/concepts.rst
#	src/octoprint/__init__.py
#	src/octoprint/server/__init__.py
#	src/octoprint/templates/javascripts.jinja2
#	src/octoprint/timelapse.py

Merge branch 'devel' into dev/wizard

# Conflicts:
#	octoprint_octobullet/__init__.py
#	octoprint_octobullet/templates/octobullet_settings.jinja2

Merge branch 'devel' into dev/wizard

# Conflicts:
#	octoprint_octobullet/__init__.py
#	octoprint_octobullet/templates/octobullet_settings.jinja2
2016-10-13 14:22:40 +02:00
Gina Häußge
1370c7a9cc Inject plugin_info object into plugin implementations as well 2016-10-13 12:03:05 +02:00
Gina Häußge
e8ee9d712c Better reporting of timelapse capture errors
* show special error if timelapse can't be rendered due to no frames having
    been captured
  * inform user during print about repeated capture errors
  * do not start post roll recording if after a print no frames were captured at all
  * also interpret non-ok-ish return codes from snapshot url as capture error
  * documentation for CaptureFailed event
2016-10-12 15:12:28 +02:00
Gina Häußge
d88bf78242 Document Shutdown event 2016-10-11 16:35:29 +02:00
Gina Häußge
82ae52e619 More docs & client fixes 2016-09-28 12:53:43 +02:00
Gina Häußge
4e69b260a1 Docs for user API
Also some fixes on said API and some fixes in the docs
2016-09-28 11:18:43 +02:00
Gina Häußge
82ae3f6f6e Re-added two utility methods removed in d9e3553c7c
They are still useful for other clients than the core application. Renamed them to fit the
general naming on the API however:

  * pathForElement is now called pathForEntry
  * elementByPath is now called entryForPath
2016-09-28 10:21:27 +02:00
Gina Häußge
0b551f6b7e Some more documentation 2016-09-22 22:21:52 +02:00
Gina Häußge
9845e3b4ea Restored accidentally removed file 2016-09-22 16:32:05 +02:00
Gina Häußge
8e8853c9c3 Lots of documentation updates + some related code fixes 2016-09-22 16:27:06 +02:00
Gina Häußge
b0a6a5675a Fixed two documentation bugs
Thanks @Salandora
2016-09-21 14:35:43 +02:00
Gina Häußge
6f029d6bf4 Docs and minor fixes for printer profile API 2016-09-21 12:05:17 +02:00
Gina Häußge
fc891ac651 Make sure volume.depth for circular beds is forced to width
Both width and depth should be the diameter. Adjusted docs
accordingly to reflect this too.
2016-09-21 10:45:40 +02:00
Gina Häußge
b8159cf16f Docs bug: Maximum feedrate for axes is mm/min 2016-09-20 13:46:47 +02:00
Gina Häußge
0833d9efce Fixed a link 2016-09-20 10:30:41 +02:00
Gina Häußge
0ac3881897 Use better name than "hook" for various plugin hook documentation 2016-09-20 10:29:53 +02:00
Gina Häußge
c7055440cc Migrated docs for all bundled plugins from wiki 2016-09-20 10:27:21 +02:00
Gina Häußge
7b4b638a2b Merge branch 'fix/pluginDocs' into dev/bundledPluginsDocs 2016-09-19 17:15:20 +02:00
Gina Häußge
b6fbbb353a Merge branch 'maintenance' into devel
# Conflicts:
#	CHANGELOG.md
#	src/octoprint/filemanager/storage.py
#	src/octoprint/plugins/softwareupdate/templates/softwareupdate_settings.jinja2
2016-09-09 12:31:29 +02:00
Gina Häußge
2b22d26eac Fixed a small issue with RFC 5987 headers arriving as unicode in parser
Also added API docs regarding header encoding, incl support for RFC 5987
for filename fields in Content-Disposition headers in multipart/form-data
parts, incl. an example of an upload request with a utf-8 encoded filename.
2016-09-07 18:44:46 +02:00
Gina Häußge
eb4be89d39 Renamed GcodeFileViewModel to FileViewModel
(Let's be realistic here)

Introduced new "additionalNames" property on viewmodel declaration
to allow for registering alternative lookup names for a view model.

The freshly renamed FileViewModel now resolves as both "filesViewModel"
 and "gcodeFilesViewModel", making the renaming backwards compatible

 Documented all that stuff (and some more)
2016-09-01 10:17:18 +02:00
Gina Häußge
a13e12bb5e More work on JS Client documentation 2016-08-26 17:47:38 +02:00
Gina Häußge
4ff869c2fa Docs for settings overlay & improved hook docs 2016-08-19 15:40:43 +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
f9cb29ac91 A bunch of documentation fixes and updates 2016-07-28 09:43:41 +02:00
Gina Häußge
6cbf189104 Added some developer information 2016-07-18 12:00:04 +02:00
Gina Häußge
7908f5226f Merge pull request #1384 from docdawning/patch-2
Replaced broken link
2016-07-13 17:53:24 +02:00
Gina Häußge
0fec3aeca9 Merge branch 'patch-1' of https://github.com/cvignac/OctoPrint into maintenance 2016-07-12 11:52:27 +02:00
cvignac
12fcfda481 Typo correction in slicing.rst
In 'Retrieve all slicing profiles' :
'GET /api/slicing/profiles' -> 'GET /api/slicing'
2016-07-10 15:40:24 +03: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
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
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
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
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
294203ffd5 Add absolute jog mode to printer API 2016-07-01 17:54:26 +02:00
Gina Häußge
52d272bd24 More work on the docs 2016-07-01 17:52:40 +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
b8405becb3 Fixed a typo 2016-06-29 09:41:53 +02:00
Gina Häußge
ca8bbe2de4 JS Client docs for OctoPrint.connection 2016-06-29 09:28:55 +02:00
Gina Häußge
5611f87339 Docs for JS client lib's base module 2016-06-28 19:22:31 +02:00
Gina Häußge
cd71efdc71 Merge branch 'devel' into dev/jsclientdocs 2016-06-28 18:28:55 +02:00
Gina Häußge
7207421051 Docs for new typePath property in file model 2016-06-28 13:02:23 +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
James
87b85ce33a Replaced broken link
Replaced dead url: https://pythonhosted.org/setuptools/setuptools.html#dynamic-discovery-of-services-and-plugins
with what I think is a suitable alternative: http://setuptools.readthedocs.io/en/latest/setuptools.html#dynamic-discovery-of-services-and-plugins
2016-06-22 00:19:38 -06:00
Gina Häußge
6016b04d03 WIP: Started on JS Client docs 2016-06-15 09:47:32 +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
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
Doug Calobrisi
ebb93d9d2f Corrects example URL in Slicing API Doc
This fixes a simple typo in the API doc for fetching slicing profiles. The previous example had /profiles appended to it, whereas it should just be /api/slicing to fetch a list of all slicers and profiles.
2016-05-20 10:28:44 -04:00
Gina Häußge
ee185230a4 Refactored plugin docs + improved docs on sortables 2016-03-24 16:42:41 +01:00
Gina Häußge
6d95a5849b Add docs for hook ordering 2016-03-24 09:38:52 +01:00
Gina Häußge
1d3dfffc67 Some documentation fixes 2016-03-23 10:40:36 +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
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
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
e034e7c7e2 Merge branch 'fix/m114CustomControlExample' into devel 2016-01-05 11:49:33 +01:00
Gina Häußge
9fd8b09e34 Fixed custom control M114 example to also match negative coordinates 2016-01-05 11:48:55 +01:00
Gina Häußge
966bec2bed Merge branch 'fix/onlyShowBedIfPrinterHasBed' into devel 2015-11-30 11:11:51 +01:00
Gina Häußge
93bbedae86 Only process bed temps & commands if printer profile has heated bed
Solves #1125
2015-11-30 11:11:35 +01:00
Gina Häußge
8ed3bcb094 Slight changes in CLI structure for performance reasons
Having the plugin commands on the first level of --help proved to be
a bad idea since it basically kills every chance of lazy loading the (expensive)
plugin context. Using a sub command for anything plugin related allows us
to only fire up the plugin context if a plugin command is expected, saving us
some precious seconds of operation in all other cases.

For conformity reasons the dev sub commands were now restructured
similarly.
2015-10-30 16:28:34 +01:00
Gina Häußge
c6f1088ccf <plugin identifier>:<command> => plugin:<plugin identifier> command 2015-10-30 10:14:21 +01:00
Gina Häußge
ec491c3d0d devel:newplugin => dev:plugin new, +dev:plugin install, +dev:plugin uninstall 2015-10-30 10:10:47 +01:00
Gina Häußge
3c2d2b579d Documention for CLI and its development 2015-10-29 17:37:05 +01:00