Releases: 3DCoded/DynamicMacros
DynamicMacros v1.5
This release of DynamicMacros has a few new features and bugfixes:
Macro Parameters in Mainsail/Fluidd/KlipperScreen
Previously, DynamicMacros required an interface_workaround: True parameter to allow for showing DynamicMacros on Fluidd. With a recent Fluidd update, this is no longer required for macros to show up. It is still recommended to use this parameter, to allow macros to display in KlipperScreen.
This update allows for displaying parameters in Mainsail/Fluidd/KlipperScreen macro previews, and fixes a few minor bugs along with it.
Fixes #20
Custom Delimiters
The previous implementation of custom delimiters in DynamicMacros had two main issues:
- The multiline default delimiter was prone to splitting macros where they shouldn't have been split, especially around comments.
- I misspelled delimiter to delimeter.
This update fixes both of these issues. The new default delimiter is --- to make sure macros are only split when you actually want them to split, and not accidentally.
Delayed GCode Enhancements
This release also cleans up the delayed GCode implementation in DynamicMacros to fix a few bugs surrounding them. See #21
Full Changelog: v1.4...v1.5
DynamicMacros v1.4
This release of DynamicMacros has a few new features and optimizations.
Improved Logging
Similar to the automated printer.cfg locating that used Klippy's start arguments, DynamicMacros v1.4 now uses the same technique to locate the klippy.log, and places dynamicmacros.log in the same directory.
Custom Delimiters for Receiving Variable Updates
Previously, DynamicMacros only let you split macros by three newlines. This led to a few issues, however, with macros being unintentionally split. To resolve this, DynamicMacros now has a delimeter option, or disabling entirely. docs
Support Dropped for Manufacturer Modified Klipper Installations
Unfortunately, too many manufacturers have been using Klipper firmware as advertisement, and many times, they install either old versions of Klipper, heavily modify it, or both. This makes it nearly impossible to provide support for them, let alone develop plugins for them.
As a general rule of thumb, if your klippy.log says your Klipper version is less than v0.12.0, and/or you see modified Klipper files you didn't put there, you're running a manufacturer modified Klipper and you must update to proper mainline Klipper or Kalico to use DynamicMacros.
Minor Updates:
- DynamicMacros now supports Kalico (beta)!
Full Changelog: v1.3...v1.4
DynamicMacros v1.3
This release of DynamicMacros has a few new features.
Fluidd and KlipperScreen
A new interface_workaround parameter was introduced to DynamicMacros. Now, you can set this to true if your DynamicMacros don't show up on Fluidd or KlipperScreen interfaces. #5
[include] support
DynamicMacros now supports the [include] tag in configuration files. This allows you to include multiple configuration files into one file. #9
Full Changelog: v1.2...v1.3
DynamicMacros v1.2
This release of DynamicMacros has several new features.
Multiple Klipper Instances
When using multiple Klipper instances, the config path is no longer the default ~/printer_data/config. DynamicMacros v1.1.1 introduced a configurable config_path variable for this. Now, DynamicMacros v1.2 automatically detects the configuration path for your Klipper install.
Macro Clusters
DynamicMacros v1.2 has a new feature called macro clusters. In short, this allows for macro files to be grouped together. This also allows disabling of Python and/or the printer object on a per-cluster basis.
DYNAMIC_RENDER command
This feature (explained in the documentation) allows for viewing what will be executed when a macro is run (passing in parameters, printer data, etc.) A quick example:
[gcode_macro test]
gcode:
M117 {params.A}
When TEST A=2 is run, the macro is internally "rendered" into:
M117 2
Then, this is run. The DYNAMIC_RENDER command allows for viewing of the rendered macro, without running it, making DynamicMacros even more useful as a macro development tool.
Traditional delayed_gcode Syntax
This last major feature of DynamicMacros v1.2 is support for traditional delayed_gcode syntax.
Full Changelog: v1.1.1...v1.2
DynamicMacros v1.1.1
This bugfix release of DynamicMacros has a new features.
Features
- The ability to configure a
config_path - Simple logging for quicker debugging
New Contributors
Thank you @Firas95k for helping me diagnose the issue in #3 leading to the new features in this release.
What's Changed
Full Changelog: v1.1...v1.1.1
DynamicMacros v1.2-beta
This prerelease of DynamicMacros v1.2 contains several new features.
Features
- Sandboxing macros to enable control over whether or not Python and/or the
printerobject is enabled - Traditional
delayed_gcodesyntax for easier migration from standard GCode macros
This release also includes a work in progress Klippy extra tutorial.
Full Changelog: v1.1...v1.2
DynamicMacros v1.1
This release of DynamicMacros has several new features.
Features
- Ability to run Python from within a Dynamic Macro
- Dynamic implementation of
delayed_gcode - More utility functions
What's Changed
New Contributors
Full Changelog: v1.0...v1.1
Dynamic Macros v1.0
DynamicMacros v1.0
The first release of Dynamic Macros has the following features:
- All features of standard GCode macros
- Ability to update, add, remove, and rename Dynamic Macros without restarting Klipper
- Utility functions
- Recursion
- Receiving Variable Updates
Full Changelog: https://github.com/3DCoded/DynamicMacros/commits/v1.0