2242 Commits

Author SHA1 Message Date
zkk
f20f64f6e2 Merge commit 'b48fdc708c052b6c4342db499307518db13d702b' into release 2025-06-21 11:17:37 +08:00
b48fdc708c 新增P800的配置文件 2025-06-19 11:15:47 +08:00
zkk
d3561dae4f 解决切换WiFi以后 SSDP无法扫描到的问题 2025-06-19 08:48:17 +08:00
78c990a114 修复未获取到下位机版本号时会执行固件升级的问题 2025-06-17 10:59:59 +08:00
zkk
f5461563b8 Merge commit '075f70accf3a7a5001ef78a58b1ad180efe38bee' into release 2025-05-10 16:32:17 +08:00
zkk
075f70accf 优化检测下位机升级的条件为升级klipper或者重启moonraker 2025-05-09 17:13:08 +08:00
0a18e41612 修复启动klipper时获取不到最小版本的问题 2025-05-08 19:14:40 +08:00
338dbfbe18 修复下位机自动升级时单机头板机型查询不到机头板固件路径的问题 2025-05-07 13:53:25 +08:00
zkk
3791adfec5 实现ssdp扫描功能 2025-05-07 11:12:22 +08:00
16d41bd11d 优化断电续打功能 2025-04-30 13:16:02 +08:00
b040265375 实现下位机自动更新功能 2025-04-29 18:27:11 +08:00
zkk
ada08d4574 Merge commit 'eb8d1e58ed4c374df41fda925bf531125e5609c5' into release 2025-03-31 11:32:33 +08:00
eb8d1e58ed 实现开门检测功能 2025-03-29 17:49:50 +08:00
zkk
e2c136be49 Merge commit '4eb23ef2817dc56e9a8a2bf81e1a011ee27888e3' into develop
# Conflicts:
#	moonraker/components/file_manager/metadata.py
#	scripts/moonraker-requirements.txt
2025-03-13 16:31:28 +08:00
Pedro Lamas
4eb23ef281 metadata: balanced quoted string split
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2025-03-06 11:43:52 -05:00
Wondro
18f3da59b0 file_manager: Fix total filament change count parsing for PS/SS
Signed-off-by: Tyler Wondrasek <wondro18@hotmail.com>
2025-03-03 05:30:56 -05:00
zkk
c953613611 Merge commit '8e870f15e6cfedd3d15f0aa6a784718473665d01' into release 2025-03-03 15:48:57 +08:00
zkk
8e870f15e6 修复休眠模式下关机流程不对问题 2025-03-03 15:48:42 +08:00
Eric Callahan
91b6bfbd09 workflows: update bug template
Add OctoApp to the client list.  Make it clear that moonaker.log is
required.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-03-01 08:10:00 -05:00
Wondro
4889a2dd38 file_manager: Added per tool weights and total filament change count metadata
Signed-off-by: Tyler Wondrasek <wondro18@hotmail.com>
2025-02-26 18:08:53 -05:00
moggieuk
9b4b3def44
file_manager: Added additional metadata to aid tool selection on single extruder multi-material prints
Added additional essential metdata for single extruder multi-material printing.  This is critical to new Mainsail functionality to map tools to MMU spools when using Happy Hare (Klipper MMU driver)

Signed-off-by: Paul Morgan (moggieuk@hotmail.com)
2025-02-26 12:32:10 -05:00
Eric Callahan
f2d53fe386 install: update package resolution method
Embed the sysdeps_parser module in the install script
for package dependency resolution.  This method is
more robust than the bash implementation and adds
support for the new requirement specifiers.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-21 16:54:12 -05:00
Eric Callahan
31cb1fc94c update_manager: use sysdeps_parser
Use the sysdeps_parser utility to parse the correct dependencies
out of the data returned by the configured system dependencies
json file.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-21 16:54:12 -05:00
Eric Callahan
4b4ca76558 utils: add sysdeps_parser utility module
This functionality is used by the update manager to parse
the result from system dependency files.  By moving it
out of the update manager it becomes easier to test,
extend, and maintain.  Additionally it can be embedded
in the install script.

Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2025-02-21 05:22:58 -05:00
Pedro Lamas
62051108ea docs: JSON typo fix
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2025-02-18 10:23:11 -05:00
Eric Callahan
a0164e1575
docs: typo fix
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 18:17:31 -05:00
Eric Callahan
c35353ed2a file_manager: delay file observer initialization
The addition of "gcode file processors" makes it possible
for processor registration to occur in "component_init".
The file observer init must be delayed until after all processors
are registered to correctly process metadata for gcode files
added while Moonraker was not running.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 15:32:45 -05:00
Eric Callahan
35cb7501c6 docs: update analysis and metadata docs
Signed-off-by:  Eric Callahan
2025-02-17 15:32:45 -05:00
Eric Callahan
58f060730b analysis: add process endpoint
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 15:32:45 -05:00
Eric Callahan
cb39c8c88a analysis: don't allow an estimate to update metadata
Early feedback is that replacing the "estimated_time" field of the metadata
with the value returned by Klipper Estimator is not sufficient.  The
post-process performed by Klipper Estimator also updates M73 gcode
commands, ETAs calculated based on progress are inaccurate without
these mods.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 15:32:45 -05:00
Eric Callahan
a95405f800 file_manager: handle inotify edge move case
It is possible to create, move, then close a file.  Handle this case
by rescheduling the "create_file" event under the new name.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 15:32:45 -05:00
Eric Callahan
1f4888cded analysis: change behavior of auto analysis
Perform a post-process with Klipper Estimator rather than
analyze and replace the "estimated_time" field in the metadata.
This updates the M73 commands in the gcode file, allowing for
more accurate ETAs.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 15:32:45 -05:00
Eric Callahan
b8b28bc0c9 file_manager: add support for metadata gcode processors
Allow components to register gcode processors which will modify
the gcode file prior to metadata processing.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 08:06:46 -05:00
Eric Callahan
e338f537f5 pip_utils: handle exceptions when updating pip
Don't propagate exceptions when update_pip fails.  Some
systems may not be able to update pip, and the current
version of pip should be sufficient to install packages.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-17 08:06:46 -05:00
Pedro Lamas
ccbb03f5f3 docs: fixes invalid JSON in example
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2025-02-17 08:05:17 -05:00
Eric Callahan
354cc11b8e
docs: fix typos
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-12 06:28:53 -05:00
Eric Callahan
706455a6f8 source_info: include git worktree detection
Standard git repos contain a ".git" folder, however worktrees
contain a ".git" file.  The file provides the path to the worktree's
git directory.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-11 16:51:04 -05:00
Eric Callahan
2fcc542d85 docs: update documentation with latest changes
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-11 08:01:50 -05:00
Eric Callahan
f2c564cfb7 analysis: initial implementation
Adds support for GCode file time analysis using Klipper Estimator.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-11 08:01:50 -05:00
Eric Callahan
3ec968d873 python_deploy: update local state on refresh
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-10 18:17:39 -05:00
Eric Callahan
c7c2bb20d9 python_deploy: fix rollback procedure
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-10 18:17:39 -05:00
Eric Callahan
7f1907beb3 python_deploy: enable the eager pip update strategy
Attempt to update all dependencies of a python package to the
latest version compatible with its requirement specifier.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-10 18:17:39 -05:00
Eric Callahan
bda03dcf29 file_manager: emit event after gcode metadata has been processed
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-10 18:17:39 -05:00
Eric Callahan
530f1c2016 update_manager: add support for executable types
This change refactors zip_deploy.py, renaming it net_deploy.py.
Net hosted executables that currently exist on the system
with a valid `release_info.json` file can now be updated.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-10 18:17:39 -05:00
Eric Callahan
636626506a file_manager: provide method to look up paths by root
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 15:20:46 -05:00
Eric Callahan
152837959a authorization: add method to return api key
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 15:20:46 -05:00
Eric Callahan
ff2571180c update_manager: support internal updaters
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 15:20:46 -05:00
Eric Callahan
1117890327
docs: update changelog
Also add a warning to the "webhooks" printer object description
stating that it should not be used to receive async "ready"
updates.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 10:31:56 -05:00
Eric Callahan
fb6e416e1c
mqtt: push Klipper status updates after subscription
This resolves an issue where MQTT clients miss the first status
update after a Klipper restart.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 06:15:26 -05:00
Eric Callahan
b8388db18d
klippy_connection: improve subscription request handling
If the connection requesting the subscription already had
an outstanding subscription, remove it before processing.
This prevents immediate status updates from being pushed
to the requesting connection.

Don't add connections to the dictionary of subscribed
connections if the request is an empty object, as this
is a request to unsubscribe from all objects.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2025-02-07 06:08:49 -05:00