Arksine
578ce740c5
docs: update API documentation for changes to update_manager
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:18:28 -05:00
Arksine
6a88df095e
scripts: modify update_manger.conf for new configuration
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:18:28 -05:00
Jordan Ruthe
c17d86aa09
docs: update configuration to reflect multiple update clients
...
Signed-off-by: Jordan Ruthe <jordan.ruthe@gmail.com>
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:18:28 -05:00
Arksine
0ad97fd9eb
update_manager: extract and verify configurable git repo options
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:18:28 -05:00
Jordan Ruthe
f3ae6da635
update_manager: Allow for multiple client entries
...
Signed-off-by: Jordan Ruthe <jordan.ruthe@gmail.com>
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:18:28 -05:00
Arksine
e9ab5fb480
power: add missing call to super() for Tasmota devices
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 17:16:51 -05:00
Arksine
21d1726bfd
power: report device name in error when "locked while printing"
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-22 11:20:36 -05:00
Jordan Ruthe
0b3b8cede8
power: Raise error if trying to change a locked device during printing
...
Signed-off-by: Jordan Ruthe <jordan.ruthe@gmail.com>
2021-01-22 11:00:31 -05:00
Jordan Ruthe
00db209d5d
power: Add 'locked_while_printing' to device list
...
Signed-off-by: Jordan Ruthe <jordan.ruthe@gmail.com>
2021-01-22 11:00:31 -05:00
Jordan Ruthe
b4602115d7
power: add "locked_while_printing" option to avoid accidental shutdown
...
Signed-off-by: Jordan Ruthe <jordan.ruthe@gmail.com>
2021-01-22 11:00:31 -05:00
Arksine
ff8e53b269
moonraker: return list of registered directors in server.info response
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-20 10:21:27 -05:00
Arksine
e2c325a724
extract_metadata: support first layer height expressed as a percentage
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-16 12:46:56 -05:00
Arksine
a1f2228473
extract_metadata: add shebang to script
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-16 12:38:54 -05:00
Arksine
d70bd8d2e0
data_store: add support for storing gcode commands
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-12 14:56:37 -05:00
Bryan Mayland
8c365c62cb
data_store: Add heater PWM value to /server/temperature_store
...
Signed-off-by: Bryan Mayland <bmayland@capnbry.net>
2021-01-12 11:36:19 -05:00
Volodymyr Babchynskyy
6f4a72fe2e
Readme: added link to Klipper
...
Signed-off-by: Volodymyr Babchynskyy <vvchik@gmail.com>
2021-01-09 05:46:28 -05:00
Arksine
bdd270fa4a
update_manager: wrap calls to http.fetch in "gen.with_timeout"
...
This is a workaround for an issue where the http client fails to propogate an exception back to the caller, hanging the update process.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-07 20:27:23 -05:00
Arksine
d194ce00ab
update_manager: send notification response upon update error
...
Attach "is_complete" to the response so clients know that the transaction is done, even though it resulted in an error.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 19:42:40 -05:00
Arksine
5f986ab770
power: refactor initialization
...
The entire configuration should be validated prior to device initialization. In the event of an error, the GPIO Chip factory must be closed.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 14:39:33 -05:00
Arksine
e0f4b46364
update_manager: refactor initialization
...
We need to be sure that the entire update_manager is correctly configured prior to queueing the callbacks for the initial refresh. Rather than have each updater spawn a "refesh" callback, move them all into a single init method spawned after the module has been fully configured.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 14:14:12 -05:00
Arksine
fb3706c54f
paneldue: configure the serial connection last
...
This allows the PanelDue object to be properly cleaned in the event of a configuration error.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 14:00:29 -05:00
Arksine
d1388080c4
moonraker: don't crash the server if an optional plugin fails to import
...
The server can still operate and be used to fetch the logs if a plugin fails to load. Add a 'failed_plugins' field to the /server/info response so clients can notify users that this plugin failed to load.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 12:32:26 -05:00
Arksine
f1a75117db
confighelper: add config file path to systemargs
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 12:05:10 -05:00
Arksine
4ae63dbbf8
moonraker: log config file at startup
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 12:05:10 -05:00
Arksine
30637011e6
utils: add method for setting rollover info
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 12:05:09 -05:00
Arksine
8a18fa6c2f
confighelper: Add method to write config to a file object
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 09:09:29 -05:00
Arksine
4cd97d61f9
file_manager: remove unnecessary call to get_file_list() in get_file_metadata()
...
If the metadata doesnt exist simply return an empty dict.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 07:49:47 -05:00
Arksine
40f876192c
file_manager: check for new metadata on each call to _list_directory
...
Previously this check was only on done when a directory was requested by the API. Moving this check to _list_directory ()updates metadata for internal calls as well.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-06 07:19:37 -05:00
Arksine
fa53d889d0
file_mananager: Use absolute paths instead of normalized paths
...
This prevents potential issues where relative paths may be compared to absolute paths.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-05 12:09:52 -05:00
Arksine
6fcb26ddd7
file_manager: skip broken symlinks in list directory
...
This resolves an issue where an exception is raised when path info is requested.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-05 11:27:46 -05:00
Arksine
67adcfc448
docs: note update_manager API changes
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-04 08:51:41 -05:00
Arksine
0c280122fb
websockets: Add "update_refreshed" notification
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-04 08:18:11 -05:00
Arksine
5b9f637c2d
update_manager: Implement auto refresh
...
The slower system package update will now only executed by the auto-refresh routine. Moonraker will check for updates roughly every 2 hours, however system packages updates will only occur between 1am and 4am local time.
If a print is in progress any attempt to refresh or update will be aborted.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-04 08:18:10 -05:00
Arksine
2bb9128b5b
docs: document the "off_when_shutdown" option for the power plugin
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 19:53:41 -05:00
Arksine
222f0c4695
power: introduce "off_when_shutdown" device option
...
This allows devices to power down when a Klippy shutdown is detected.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 19:42:04 -05:00
Arksine
ea1ad0277d
update_manager: use a lock to prevent concurrent update and refresh requests
...
This should reduce the load on low perfomance devices. This also makes it possible to queue update requests.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 14:58:38 -05:00
Arksine
1e81297624
update_manager: resolve potential rentry issues
...
Calls to "refresh" should not be allowed to occur while a client a current refresh is in progress. Updates will wait for a pending refresh to complete before beginning the update procedure.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 09:11:41 -05:00
Arksine
ae3661b100
app: Force register moonraker and klippy log endpoints
...
It is possible for the log files to be registered after a rollover, which can result in the file not existing. Force the log endpoints to register, bypassing the existance check.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 06:45:04 -05:00
Arksine
67f5b32d84
file_manager: Increase extract_metadata timeout to 10 seconds
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-02 06:23:17 -05:00
Arksine
14b5384572
update_manager: retry failed "run_with_response" commands
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 20:52:46 -05:00
Arksine
c261ee51f3
shell_command: Add retries to "run_with_response" method
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 20:52:46 -05:00
Arksine
67f992dabd
file_manager: add disk usage to directory listing
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 17:06:33 -05:00
Arksine
a535e6e94a
paneldue: Improve file name parsing
...
Previously file names containing whitespace were not parsed correctly.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 12:46:31 -05:00
Arksine
4aa2a86e3b
docs: Document "notify_klippy_shutdown"
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 11:51:52 -05:00
Arksine
7d738c7a8b
websockets: add "klippy_shutdown" notification
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 11:48:31 -05:00
Arksine
f753263c60
docs: document the "-n" command line option
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 11:47:03 -05:00
Arksine
2f8a1567a8
moonraker: add --nologfile (-n) option to the command line
...
This allows moonraker to run without generating a log file.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-01-01 11:28:34 -05:00
Arksine
933622adda
docs: Note changes to the file manager path restrictions
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2020-12-31 20:23:48 -05:00
Arksine
1814a11a8d
file_manager: remove restriction that file paths must be in HOME
...
Instead make sure that the supplied path is not the system root and check that moonraker has the appropriate privileges to access the directory.
Also track visited directories when retreiving a full file list to prevent infinite recursion.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2020-12-31 19:36:55 -05:00
Arksine
77c483ea0f
docs: document changes to the update_manager plugin
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2020-12-31 08:25:59 -05:00