Commit Graph

2088 Commits

Author SHA1 Message Date
Nick Gon 2dbea4f4cd metadata: Add support to extract metadata from g-code files generated by QIDISlicer
This PR adds support to extract metadata from the g-code files generated by QIDISlicer

Signed-off-by: Nick Gon <albatar@trance.fr>
2024-06-23 05:31:45 -04:00
Moggie 4d6037c3d3 module: file_manager
Allow default metadata parser timeout to be configurable

Signed-off-by: Paul Morgan moggieuk@hotmail.com
2024-06-23 05:31:18 -04:00
Eric Callahan 346a3d7c9d
history: fix default for unknown filename during migration
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-06-02 07:37:05 -04:00
Eric Callahan f2f2c93aa1
history: check for null values during database migration
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-06-02 07:17:15 -04:00
Eric Callahan 4fe89d5571
database: don't warn on UUID mismatch
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-28 18:07:18 -04:00
Eric Callahan 7f89bd7d62 git_deploy: limit corruption detection
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-28 16:13:13 -04:00
Eric Callahan 3b1c21a72d
database: attempt to install lmdb if missing
When attempting a conversion, install the lmdb package if its missing.
This should resolve issues with containers or new installations that
want to migrate a previous db to sqlite.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-28 06:11:42 -04:00
Eric Callahan 5332eab258
database: skip invalid values when migrating namespaces
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-27 10:49:34 -04:00
Eric Callahan c9581205d3 docs: add pinned commit documentation
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-25 12:30:56 -04:00
Eric Callahan fa1dc438fa git_deploy: add support for pinned commits
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-25 12:30:56 -04:00
Eric Callahan bc34ebdff9 filelock: fix lockfile cleanup
Python 3.7 does not support the "missing_ok" argument
in pathlib.unlink().

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan e41a934f74 database: support legacy sqlite_master table
Sqlite versions older than 3.33.0 store schema information in the
sqlite_master table rather than the sqlite_schema table.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 7e16dded0b docs: add sqlite documentation
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 6b31076a43 machine: skip validation for new installs
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 3f62bb6fb4 database: add backup, restore, and compact endpoints
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 64ffe22545 build: dependency updates
Remove lmdb python and system dependencies.  Bump
streaming-form-data to 1.15.0 and remove smart_open
as the issue import issue has been resolved.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 0b1fce8a6d file_manager: minor type checking fixes
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan bb0266f5c4 app: replace dict with UserInfo throughout Moonraker
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan eddf47e4a3 authorization: use SQL tables to store user info
Add a UserInfo class which provides type annotations for each member.
This class easily converts to a dict or tuple, simplifying conversion
for usage in SQL statements.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 3f0d20ed8c history: use tables for history and totals storage
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-21 06:18:46 -04:00
Eric Callahan 80c762074f database: migrate from lmdb to sqlite
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-18 08:03:47 -04:00
Eric Callahan 9d0d09de80 eventloop: add low level eventloop property
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-18 08:03:47 -04:00
dependabot[bot] 73df63db1f build(deps): bump jinja2 from 3.1.3 to 3.1.4
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-18 08:02:28 -04:00
Eric Callahan fca0cf3027 docs: update sensor documentation
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-15 07:31:57 -04:00
Eric Callahan 76704feee4 sensor: add support for parameter configuration
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-15 07:31:57 -04:00
Eric Callahan c5bf6e77a7
confighelper: type checking fix
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-14 20:08:40 -04:00
Eric Callahan 9c6048a759
confighelper: store deep copies of parsed options
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-14 18:05:19 -04:00
Eric Callahan ba9428558a
docs: add uhubctl documentation
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-06 07:56:42 -04:00
Eric Callahan ddc0e76ffc power: add support for uhubctl devices
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-06 06:46:53 -04:00
Eric Callahan 326d23a509 docs: document history additions
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-05 06:29:21 -04:00
Eric Callahan 81899e04fd sensor: add history field options
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-05 06:29:21 -04:00
Eric Callahan b60e6dc311 spoolman: add history field tracking spool ids
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-04 08:16:37 -04:00
Eric Callahan 531028ef4f history: report user in job history
When possible record the name of the user that requested the
job.  The klippy_api's component now takes an optional user
argument in its "start_print" method.  This user is broadcast
in an event after a print request successfully returns.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-04 08:16:37 -04:00
Eric Callahan 1dfbffb422 history: add support for auxiliary fields
Allow other components to register custom fields tracked and reported
in job history.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-04 08:16:37 -04:00
Eric Callahan b6896c7c0a common: add common history tracking implementation
The HistoryDataField class can be instantiated by any
component.  It can then be used to register additional fields
tracked in the job history.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-04 08:16:37 -04:00
Eric Callahan e7d3f3e961 job_state: track and store most recent Job Event
Signed-off-by:  Eric Callahan <arksine.codee@gmail.com>
2024-05-03 08:22:41 -04:00
Eric Callahan 4b1a3b8792 sensor: minor refactoring
Remove dataclasses, refactor for consistency with
other components.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-03 08:22:41 -04:00
Eric Callahan 8d59c424d7 server: convert history a core component
The history component requires no specific configuration, is
generally always used, and has no dependencies that prevent
loading at startup.  Convert history to a core component,
making it eligible for lookup/use in optional components.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-05-03 08:22:41 -04:00
Eric Callahan 0f2e3d7c99
mqtt: fix whitespace error
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:32:34 -04:00
Eric Callahan 48cb177ef0
docs: update configuration and changelog
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:21:24 -04:00
Eric Callahan ac550bac24 mqtt: add support for tls connections
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:08:30 -04:00
Eric Callahan 5570ab02ee power: remove state check when performing job queue requests
Allow the device to refresh the state in the event that its stale.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:08:30 -04:00
Eric Callahan 1ab413e9bc mqtt: add support for paho client version 2.0
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:08:30 -04:00
Eric Callahan a802e10725
mqtt: support configurable status update interval
SIgned-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-28 06:03:12 -04:00
Eric Callahan 546a17f5d3
filelock: add missing newline
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-27 11:10:24 -04:00
Eric Callahan 7394a22c2d
filelock: fix type annotation
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-04-27 11:08:18 -04:00
Eric Callahan 379a26600c
update_manager: use temporary file storage for iids
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>
2024-04-27 10:52:22 -04:00
Eric Callahan 683d93a894
utils: add file lock utility
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>
2024-04-27 10:24:44 -04:00
David Zwart 02144b472a docs: more tweaks in remote API JSON formatting
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>
2024-04-27 06:16:59 -04:00
David Zwart 763d987309 docs: fix remote API JSON formatting and url(s)
"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>
2024-04-27 06:16:59 -04:00