|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## [0.9.0-alpha.2](https://github.com/makspll/bevy_mod_scripting/compare/v0.9.0-alpha.1...v0.9.0-alpha.2) - 2025-01-05 |
| 4 | + |
| 5 | +### Added |
| 6 | + |
| 7 | +- Dynamic function registry and dynamic function calls |
| 8 | +- `bevy_mod_scripting_functions` crate added, containing built-in dynamic functions callable from scripts |
| 9 | +- Lua dynamic function call mechanism |
| 10 | +- Dynamic functions automatically register their argument and return types with the type registry |
| 11 | +- Added set of `IntoScript`, `FromScript`, `IntoScriptRef`, and `FromScriptRef` traits |
| 12 | +- Added `ScriptAllocator` to manage lifetimes of non-world stored types (such as `Vec2` created via scripts etc..) |
| 13 | +- Added `AccessMap` dynamic safety mechanism, every access is now small, and does not require mutexing the entire world |
| 14 | + |
| 15 | +### Changed |
| 16 | +- Complete plugin re-write, expect breakages everywhere |
| 17 | +- `prelude` imports removed |
| 18 | +- `ScriptValue` abstraction replacing the concept of a generic event argument type. Each event payload is a `ScriptValue` |
| 19 | +- `world` is now a static reference, `world:function` calls must be replaced with `world.function` calls |
| 20 | +- Documentation generation was temporarilly removed |
| 21 | +- `Teal` and `Tealr` was removed |
| 22 | +- `bevy_mod_scripting_derive`, `bevy_mod_scripting_common` and other derive crates as well as `bevy_event_priority` and `bevy_script_api` crates were removed |
| 23 | +- Temporarilly suspended full rhai and rune support until next non-alpha release |
| 24 | +- Removed Deferred reflection mechanism |
| 25 | +- Added `mdbook` documentation book |
| 26 | +- Removed `APIProvider` traits in favour of various configuration resources |
| 27 | +- Specific registration of `Vec<T>` and `Option<T>` via `register_lua_vec` etc.. is no longer necessary, reflection *just* works on all registered types |
| 28 | +- Expanded core library of `ReflectReference` functions |
| 29 | +- Removed `LuaProxyable` abstraction and all custom type data, everything is now driven via normal reflection |
| 30 | +- All references are now represented via either references to the world or to a `ScriptAllocator` |
| 31 | +- Accessing anything in the world requires claiming the appropriate `AccessMap` locks to do so safely (which is abstracted away with various utility functions) |
| 32 | +- And much more |
| 33 | + |
3 | 34 | ## [0.8.0-alpha.2](https://github.com/makspll/bevy_mod_scripting/compare/v0.8.0-alpha.1...v0.8.0-alpha.2) - 2024-12-03
|
4 | 35 |
|
5 | 36 | ### Fixed
|
|
69 | 100 | - Fixed broken example links in `readme.md`
|
70 | 101 |
|
71 | 102 | ## v0.1.0
|
72 |
| -Initial version |
| 103 | +Initial version |
0 commit comments