Commit Graph

1718 Commits

Author SHA1 Message Date
Eric Callahan 1b9f29db13
websockets: move JsonRPC and BaseSocketClient to common
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:43 -05:00
Eric Callahan 201e84cd94
database: remove stale import
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:43 -05:00
Eric Callahan ad66831324
confighelper: getlists bugfix
If a valid "count" argument is received do not overwrite it
with "None" values.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:42 -05:00
Eric Callahan 834fa2e4e0
mqtt: ignore type error in paho client
The original paho client was written without considering
static type checking.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:42 -05:00
Eric Callahan 244004136c
klippy_apis: handle invalid klippy responses
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:41 -05:00
Eric Callahan 6d73c60a38
moonraker: move common classes to common.py
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:41 -05:00
Eric Callahan 160f6d64be
simplyprint: fix error on import
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:00:47 -05:00
ThinkAlex 80fb97c9bc
docs: fix typo in print_objects.md
Fixes a minor typo in the `gcode_move` section of `print_objects.md`.

`coorinates` becomes `coordinates`

Signed-off-by: Alexandre Haddad-Delaveau <ahaddaddelaveau@icloud.com>
2023-02-23 17:53:03 -05:00
Pedro Lamas ed569a2fdb docs: fixes minor typos
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2023-02-23 11:29:39 -05:00
Eric Callahan a06f748587
docs: update doc requirements
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-23 11:11:47 -05:00
Eric Callahan 68a6eb3f2a
docs: bump version in changelog
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-23 11:01:31 -05:00
Eric Callahan d549af915f
docs: update changelog
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 19:56:30 -05:00
Eric Callahan 672c223cc6
docs: update README with a link to the changelog
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 19:55:37 -05:00
Eric Callahan 68c5fb6f6b
git_deploy: strip comments when parsing python reqs
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:52 -05:00
Eric Callahan fce056e481
file_manager: fix notification sync on fast machines
Desktop class PCs may exit the request before the inotify observer
gains control of the loop.  When the observer does gain control
it will immediately notify as the sync mutex is no longer held,
this can result in sending  the websocket notification before
the response has returned.  Delay all notifications by 5ms to prevent
this.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:51 -05:00
Eric Callahan a02209443e
server: remove duplicates when loading components
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:51 -05:00
Eric Callahan 2cda75ff2c
utils: simplify sentinel object
Use an enum to represent the sentinel rather than a singleton object.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:50 -05:00
Eric Callahan 0e80e301f0
button: remove stale sentinel import
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:50 -05:00
Eric Callahan e32fd688e4
moonraker: correct stale annotations
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:50 -05:00
Eric Callahan 5a504243df
app: use Jinja2 to render the welcome landing page
Read the template using the "source_info" utility, which
uses a zip-safe method to read a file.

Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:49 -05:00
Eric Callahan 7520d0e7b1
install: update script to set PYTHONPATH env var
This is preferable to setting the WorkingDirectory item in
the systemd unit, as its possible to switch between git repos
and installed wheels without requiring root.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:49 -05:00
Eric Callahan 5ffd18d132
machine: update install validation to use package
If the "moonraker" entry point is available use it as an executable.  Otherwise
launch the module through the "-m" switch.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:48 -05:00
Eric Callahan 79467e6484
utils: add source_info utility module
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:48 -05:00
Eric Callahan 277aecd305
moonraker: convert utils.py to a package
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:47 -05:00
Eric Callahan f48c18bfda
utils: add support for package version retreival
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:47 -05:00
Eric Callahan a3121775fc
build: add initial support for pdm build
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 18:08:46 -05:00
Eric Callahan a5790d4b84
install: add moonraker system deps json file
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:41:57 -05:00
Eric Callahan b50057c3ba
install: remove dependency on pycurl
Moonraker no longer uses the curl http client backend.  The curl
commandline client is still used in some scripts and thus has been
retained.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:16:28 -05:00
Eric Callahan 15f37827a1
test: fix imports
The tests are stale and will not run successfully against the current
code.  This will be addressed in a future series of patches.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:16:27 -05:00
Eric Callahan 0f8638fec7
components: correct imports
All imports must now be relative to work correctly with the
moonraker parent package.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:16:27 -05:00
Eric Callahan b9a17e07e9
moonraker: convert code to a package
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:16:26 -05:00
Eric Callahan a5d63db9a6
server: rename moonraker.py to server.py
Signed-off-by:  Eric Callahan <arksiine.code@gmail.com>
2023-02-21 18:05:01 -05:00
Eric Callahan 1e7be4598c
docs: add a changelog
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-21 16:54:29 -05:00
Eric Callahan 833519ecc3
docs: update file_manager documentation
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-21 12:24:54 -05:00
Eric Callahan dce3b9eaf5
file_manager: add metadata scan endpoint
Support manual scan requests for systems where inotify
does not function correctlly (network shares).  This endpoint
may also be used to force a rescan of files that have already
had an initial scan.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-21 12:10:56 -05:00
Eric Callahan 9178b3833c
file_manager: improve observer log message
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-21 07:33:45 -05:00
Eric Callahan 522fdab63d
metadata: simplify the S3Dv5 temp regex
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-21 06:24:17 -05:00
Eric Callahan 7845390dd1
file_manager: support uploading to symlinks
Previously Moonraker disabled writing to symbolic links, as
doing so would overwrite the link.  Moonraker now resolves
the link, overwrites the file, and manually emits a websocket
notification.

Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-20 20:42:19 -05:00
Eric Callahan 0f7b781f57
file_manager: process metadata changes when no observer is configured
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:49:48 -05:00
Eric Callahan 347c9f4d2b
file_manager: improve duplicate notifcation detection
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:36:58 -05:00
Eric Callahan 2fd668bf0d
file_manager: implement configurable fs observer
Currently the choices are "none" and "inotify".

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:36:58 -05:00
Eric Callahan 1e97571aa8
file_manager: refactor attribute names
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:36:57 -05:00
Eric Callahan 7330c2c123
file_manager: add request notifcation fallback
Schedule fallback websocket notifications in the event that
inotify is unable to watch a file system.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:36:57 -05:00
Eric Callahan 51e307dbd6
file_manager: don't queue "create from move" events
Treat these events as if they were actual file write events.  They
will reset the node completion time and suppress the notifcation.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 19:36:56 -05:00
Christian Speich 45506647a7 metadata: Add support for Simplify3D v5
Signed-off-by: Christian Speich <christian@spei.ch>
2023-02-20 19:35:37 -05:00
Eric Callahan 3917c9cd56
docs: fix minor typos
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-20 17:47:39 -05:00
Morton Jonuschat b2ba52ce3d
sensor: add support to track generic single value sensors
This feature implements a sensor component that can be used to
track/log generic sensors from multiple sources. Each sensor
can have properties like unit of measurement, accuracy and a
display name that help frontends display the tracked measurements.


Signed-off-by: Morton Jonuschat <mjonuschat+moonraker@gmail.com>
2023-02-20 17:43:41 -05:00
Eric Callahan 0a811b9e44
file_manager: cleanup coroutines on close
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-17 16:40:31 -05:00
Eric Callahan 36de982692
docs: document file manager API fix
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-17 15:04:04 -05:00
Eric Callahan a8c82b4560
moonraker: bump API version for patch
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2023-02-17 14:28:18 -05:00