Skip to content

Commit 15f8b76

Browse files
authored
Update 0.9.7.md
1 parent c4991e2 commit 15f8b76

File tree

1 file changed

+37
-17
lines changed

1 file changed

+37
-17
lines changed

release-notes/0.9.7.md

Lines changed: 37 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,47 @@
33
![image](https://github.com/user-attachments/assets/6ae0f927-ea1b-4d90-a809-4cc513e49b18)
44

55
## Summary
6-
- Adds macro for generating namespace builder instantiations including docstrings and argument names like so:
6+
- Adds ability to construct arbitrary types and enums via `construct` global functions:
7+
```lua
8+
local myStruct = construct(StructType, {
9+
foo = bar
10+
zoo = construct(NestedType {
11+
foo = bar
12+
})
13+
})
14+
15+
local myEnum = construct(EnumType, {
16+
variant = "StructVariant"
17+
foo = Bar
18+
})
19+
20+
local myTupleStructEnum = construct(EnumType, {
21+
variant = "TupleStructVariant"
22+
_1 = bar
23+
})
24+
```
25+
26+
- 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.:
727
```rust
8-
#[script_bindings(name = "test_functions")]
9-
impl TestStruct {
10-
/// My docs !!
11-
fn test_fn(_self: Ref<TestStruct>, mut _arg1: usize) {}
12-
}
13-
14-
fn main() {
15-
let mut world = ...
16-
register_test_functions(&mut world);
17-
}
28+
#[derive(Reflect, ..)]
29+
#[reflect(Component)]
30+
struct MyComp;
1831
```
19-
- Fixes compilation issues with `tracy` enabled
20-
- Initial work on `Language Agnostic Declaration` (LAD) file format for doc-gen
21-
- Adds ability to create static scripts, which do not need to be attached to an entity to run:
32+
33+
- `ReflectAllocator` diagnostics are now available conveniently packaged as a plugin (measuring current allocation count + deallocations):
2234
```rust
23-
commands.queue(AddStaticScript::new("my_static_script.lua"));
35+
app.add_plugins(AllocatorDiagnosticPlugin)
2436
```
25-
- Fixes asset loader issues (asset loaders now specify extensions) when working with `bevy_asset_loader` and other asset loading crates
26-
- And more
37+
38+
- 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
39+
- This is still a prototype, but will contain useful information on bindings BMS exports by default.
40+
- LAD files are in a good shape, but some details need to be polished before they become stable
41+
- work on other backends (other than mdbook) should be possible now, albeit changes are expected
42+
43+
## Fixes
44+
- 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.
45+
- Cases where resource/component/allocation locks would not be correctly released in the case of script function errors or short-circuting logic were fixed
46+
- The `bevy/reflect_functions` and `bevy/file_watcher` feature flags are no longer pulled into the dependency tree by BMS, reducing bloat.
2747

2848
## Changelog
2949
See a detailed changelog [here](https://github.com/makspll/bevy_mod_scripting/blob/main/CHANGELOG.md)

0 commit comments

Comments
 (0)