Merge branch 'v1.3-fixes'
This commit is contained in:
27
CHANGELOG.md
27
CHANGELOG.md
@@ -13,6 +13,20 @@ New features
|
||||
* Added support for integer _ranges_ via the `..` and `..=` operators.
|
||||
|
||||
|
||||
Version 1.3.1
|
||||
=============
|
||||
|
||||
Bug fixes
|
||||
---------
|
||||
|
||||
* Custom syntax now works properly inside binary expressions.
|
||||
|
||||
Enhancements
|
||||
------------
|
||||
|
||||
* `BLOB`'s are refined to display in a more compact hex format.
|
||||
|
||||
|
||||
Version 1.3.0
|
||||
=============
|
||||
|
||||
@@ -105,7 +119,7 @@ Deprecated API's
|
||||
----------------
|
||||
|
||||
* `NativeCallContext::call_fn_dynamic_raw` is deprecated and `NativeCallContext::call_fn_raw` is added.
|
||||
* `From<EvalAltResult>` for `Result<T, Box<EvalAltResult>>` is deprecated so it will no longer be possible to do `EvalAltResult::ErrorXXXXX.into()` to convert to a `Result`; instead, `Err(EvalAltResult:ErrorXXXXX.into())` must be used. Code is clearer if errors are explicitly wrapped in `Err`.
|
||||
* `From<EvalAltResult>` for `Result<T, Box<EvalAltResult> >` is deprecated so it will no longer be possible to do `EvalAltResult::ErrorXXXXX.into()` to convert to a `Result`; instead, `Err(EvalAltResult:ErrorXXXXX.into())` must be used. Code is clearer if errors are explicitly wrapped in `Err`.
|
||||
|
||||
|
||||
Version 1.1.2
|
||||
@@ -178,7 +192,7 @@ Enhancements
|
||||
|
||||
### `Scope` API
|
||||
|
||||
* `Scope::set_value` now takes anything that implements `Into<Cow<str>>`.
|
||||
* `Scope::set_value` now takes anything that implements `Into<Cow<str> >`.
|
||||
* Added `Scope::is_constant` to check if a variable is constant.
|
||||
* Added `Scope::set_or_push` to add a new variable only if one doesn't already exist.
|
||||
|
||||
@@ -463,7 +477,8 @@ Enhancements
|
||||
|
||||
* Replaced all `HashMap` usage with `BTreeMap` for better performance because collections in Rhai are tiny.
|
||||
* `Engine::register_result_fn` no longer requires the successful return type to be `Dynamic`. It can now be any clonable type.
|
||||
* `#[rhai_fn(return_raw)]` can now return `Result<T, Box<EvalAltResult>>` where `T` is any clonable type instead of `Result<Dynamic, Box<EvalAltResult>>`.
|
||||
* `#[rhai_fn(return_raw)]` can now return `Result<T, Box<EvalAltResult> >` where `T` is any clonable
|
||||
type instead of `Result<Dynamic, Box<EvalAltResult> >`.
|
||||
* `Dynamic::clone_cast` is added to simplify casting from a `&Dynamic`.
|
||||
|
||||
|
||||
@@ -933,7 +948,7 @@ Breaking changes
|
||||
----------------
|
||||
|
||||
* `AST::iter_functions` now returns an iterator instead of taking a closure.
|
||||
* `Module::get_script_function_by_signature` renamed to `Module::get_script_fn` and returns `&<Shared<ScriptFnDef>>`.
|
||||
* `Module::get_script_function_by_signature` renamed to `Module::get_script_fn` and returns `&<Shared<ScriptFnDef> >`.
|
||||
* `Module::num_fn`, `Module::num_var` and `Module::num_iter` are removed and merged into `Module::count`.
|
||||
* The `merge_namespaces` parameter to `Module::eval_ast_as_new` is removed and now defaults to `true`.
|
||||
* `GlobalFileModuleResolver` is removed because its performance gain over the `FileModuleResolver` is no longer very significant.
|
||||
@@ -981,7 +996,7 @@ Bug fixes
|
||||
Breaking changes
|
||||
----------------
|
||||
|
||||
* `Engine::register_set_result` and `Engine::register_indexer_set_result` now take a function that returns `Result<(), Box<EvalAltResult>>`.
|
||||
* `Engine::register_set_result` and `Engine::register_indexer_set_result` now take a function that returns `Result<(), Box<EvalAltResult> >`.
|
||||
* `Engine::register_indexer_XXX` and `Module::set_indexer_XXX` panic when the type is `Array`, `Map` or `String`.
|
||||
* `EvalAltResult` has a new variant `ErrorInModule` which holds errors when loading an external module.
|
||||
* `Module::eval_ast_as_new` now takes an extra boolean parameter, indicating whether to encapsulate the entire module into a separate namespace.
|
||||
@@ -1102,7 +1117,7 @@ Breaking changes
|
||||
|
||||
* `EvalAltResult::ErrorMismatchOutputType` has an extra argument containing the name of the requested type.
|
||||
* `Engine::call_fn_dynamic` take an extra argument, allowing a `Dynamic` value to be bound to the `this` pointer.
|
||||
* Precedence of the `%` (modulo) operator is lowered to below `<<` ad `>>`. This is to handle the case of `x << 3 % 10`.
|
||||
* Precedence of the `%` (modulo) operator is lowered to below bit shifts. This is to handle the case of `x < < 3 % 10`.
|
||||
|
||||
New features
|
||||
------------
|
||||
|
Reference in New Issue
Block a user