diff --git a/release-notes/0.9.7.md b/release-notes/0.9.7.md new file mode 100644 index 0000000000..ce7ca0217f --- /dev/null +++ b/release-notes/0.9.7.md @@ -0,0 +1,49 @@ +# [`bevy_mod_scripting`](https://github.com/makspll/bevy_mod_scripting/) 0.9.7 is out! + +![image](https://github.com/user-attachments/assets/6ae0f927-ea1b-4d90-a809-4cc513e49b18) + +## Summary +- Adds ability to construct arbitrary types and enums via `construct` global functions: +```lua +local myStruct = construct(StructType, { + foo = bar + zoo = construct(NestedType { + foo = bar + }) +}) + +local myEnum = construct(EnumType, { + variant = "StructVariant" + foo = Bar +}) + +local myTupleStructEnum = construct(EnumType, { + variant = "TupleStructVariant" + _1 = bar +}) +``` + +- BMS will now automatically register components with `ReflectComponent` type data, so that you can query them as components *before* inserting them into entities. i.e.: +```rust +#[derive(Reflect, ..)] +#[reflect(Component)] +struct MyComp; +``` + +- `ReflectAllocator` diagnostics are now available conveniently packaged as a plugin (measuring current allocation count + deallocations): +```rust +app.add_plugins(AllocatorDiagnosticPlugin) +``` + +- Initial documentation generation from LAD files is now being published with the book over at https://makspll.github.io/bevy_mod_scripting/ladfiles/bindings.lad.html + - This is still a prototype, but will contain useful information on bindings BMS exports by default. + - LAD files are in a good shape, but some details need to be polished before they become stable + - work on other backends (other than mdbook) should be possible now, albeit changes are expected + +## Fixes +- When an asset handle is requested and immediately dropped, the previously confusing error: `A script was added but it's asset was not found, failed to compute metadata. This script will not be loaded.` was downgraded to a warning with a helpful hint. +- Cases where resource/component/allocation locks would not be correctly released in the case of script function errors or short-circuting logic were fixed +- The `bevy/reflect_functions` and `bevy/file_watcher` feature flags are no longer pulled into the dependency tree by BMS, reducing bloat. + +## Changelog +See a detailed changelog [here](https://github.com/makspll/bevy_mod_scripting/blob/main/CHANGELOG.md)