The default behavior of systemd is to remove shared memory
files when the user that created them logs out. This breaks
instance ID tracking for most installations. While its possible
to overcome this by changing the user type or the logind
configuration, these solutions required elevated privileges.
The simple solution is to store iids in a temporary file, with
access protected by a flock.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Uses linux flock to create lock files that can be used
to protect access across multiple processes.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Remote API docs tweaks. Some leading commas removed for JSON serialization. Also found an unclosed json section.
Signed-off-by: David Zwart <davidzwa@gmail.com>
"Delete a webcam" section contained a wrong url. Some response examples were wrapped in result, and some others were not. I've removed "result": { } for consistency. Finally I've removed many leading commas causing problems with JSON deserialization.
Signed-off-by: David Zwart <davidzwa@gmail.com>
Added the response headers to the V2 response of the proxy implementation as a new field named "response_headers".
Signed-off-by: Patrick Schmidt <ps.patti1998@gmail.com>
Move the kernel version tuple calculation out of gpio.py into
the utils package so its available for any module that requires
it. In addition, report the kernel version string with the distribution
info and log the platform in the rollover header.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Implement instance package wide for the update_manager. This
only requires detecting multiple instances once and eliminates
costly calls to git.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This is a temporary workaround to resolve a bug in smart_open 7.0.
Moonraker does not depend on smart_open directly or use its
functionality, however `streaming_form_data` pulls in in.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
The sensor configuration isn't useful unless the user configures a
template that calls "set_result" to update fields for the desired
template. Remove the default payload template and require
that it be configured.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
New repos have not yet saved the valid state, so it is necessary to
provide a default value when attempting to access the "is_valid"
field.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Save repo state if an exception is raised during a refresh
attempt. Add additional repo warnings with for better
descriptions regarding repo issues.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This enables customizing the time of day within which periodic refresh occurs.
Previously docs said it happens between 12am-4am which is misleading,
because the code effectively allowed refresh until 4:59:59 AM.
The default window is now '0-5', which is practically the same as before.
The comment about checking every 24h hours has been fixed as well.
This hasn't been true since commit c4fa76f217
Signed-off-by: Kamil Domański <kamil@domanski.co>
0.2.1 ensures that the exclude_object markers are the first
non-comment g-code in the files, fixing issues with klipper adaptive
meshing
Signed-off-by: Franklyn Tackitt <git@frank.af>
This adds a new structure for API documentation, making each
aspect visible and uniform. The parameters, response, and
schema are collapsible, allowing for easier navigation.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
The material theme is more feature complete and flexibile,
providing better documentation for APIs and such. This
commit is just the initial move. The documents are functional,
but the layout and color schemes are subject to change.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
While a hardware UART generally won't have symlinks in the "by-path"
and "by-id" folders, it is possible to configure udev to add them.
In addition, adding these fields makes the schema consistent.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Implement endpoints to query the following:
- Serial Devices (including Hardware UART)
- USB Devices using lsusb
- Klipper CAN Node UUIDs
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This folder contains miscellaneous files used by Moonraker
or other applications in the Klipper ecosystem.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>