This is an automated email from the ASF dual-hosted git repository. henrib pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-jexl.git
The following commit(s) were added to refs/heads/master by this push: new 3b9fcef6 JEXL: catching up on changes 3b9fcef6 is described below commit 3b9fcef6fa287d4077c0a88d29bb4d2b764554ed Author: henrib <hen...@apache.org> AuthorDate: Sat Jul 30 16:55:44 2022 +0200 JEXL: catching up on changes --- RELEASE-NOTES.txt | 8 +++++++ src/changes/changes.xml | 56 ++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 63 insertions(+), 1 deletion(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 29e6ddee..ac14d259 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -35,12 +35,16 @@ with the @NoJexl annotation on source code. This is achieved through a crude but a security manager that controls what JEXL can introspect and thus expose to scripts. Used in conjunction with options (JexlOptions) and features (JexlFeatures), the permissions (JexlPermissions) allow fine-tuning the scripting integration into any project. +JEXL 3.3 also adds some syntactic (ECMAScript) features (let, const, =>, for, ...) to further reduce +the skill set required to write scripts. New Features in 3.3: ==================== * JEXL-373: Add support for prefix/postfix increment/decrement operators * JEXL-372: Add support for 'standard' for loop * JEXL-369: Add 'let' and 'const' variable declarations +* JEXL-367: Named function and fat-arrow (=>) lambda syntax +* JEXL-366: Fail to evaluate string and number comparison * JEXL-365: Lambda expressions * JEXL-363: Allow retrieving captured variables in script * JEXL-360: Add missing bitshift operators ( >>, >>>, <<) @@ -49,8 +53,12 @@ New Features in 3.3: Bugs Fixed in 3.3: ================== +* JEXL-376: Introspector captures methods on non-exported classes (modules, java9+) +* JEXL-375: Cannot access enums by their name when using sandbox +* JEXL-374: No exception if dereferencing null object using safe(false) and antish(false) * JEXL-371: Override of a protected method with public visibility is not callable * JEXL-370: Cannot check if variable is defined using ObjectContext if the value is null +* JEXL-368: Namespace functor resolution is not cached * JEXL-364: Evaluator options not propagated in closures * JEXL-362: JexlInfo position reporting is off * JEXL-361: Null may be used as operand silently even in arithmetic strict(true) mode diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 03c00aeb..ebfd2597 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -27,13 +27,67 @@ <body> <release version="3.3" date="YYYY-MM-DD"> <!-- ADD --> - <action dev="henrib" type="add" issue="JEXL-357" > + <action dev="henrib" type="add" issue="JEXL-373" due-to="Dmitri Blinov"> + Add support for prefix/postfix increment/decrement operators + </action> + <action dev="henrib" type="add" issue="JEXL-372" due-to="Dmitri Blinov"> + Add support for 'standard' for loop + </action> + <action dev="henrib" type="add" issue="JEXL-369" due-to="Dmitri Blinov"> + Add 'let' and 'const' variable declarations + </action> + <action dev="henrib" type="add" issue="JEXL-367" due-to="Hussachai Puripunpinyo"> + Named function and fat-arrow (=>) lambda syntax + </action> + <action dev="henrib" type="add" issue="JEXL-366" due-to="Hussachai Puripunpinyo"> + Fail to evaluate string and number comparison + </action> + <action dev="henrib" type="add" issue="JEXL-365" due-to="Dmitri Blinov"> + Lambda expressions + </action> + <action dev="henrib" type="add" issue="JEXL-363"> + Allow retrieving captured variables in script + </action> + <action dev="henrib" type="add" issue="JEXL-360" due-to="Ian Hawkins"> + Add missing bitshift operators (<<, >>>, >>) + </action> + <action dev="henrib" type="add" issue="JEXL-359"> + Allow per-operator arithmetic handling of null arguments + </action> + <action dev="henrib" type="add" issue="JEXL-357"> Configure accessible packages/classes/methods/fields </action> <!-- FIX --> + <action dev="henrib" type="fix" issue="JEXL-376"> + Introspector captures methods on non-exported classes (modules, java9+) + </action> + <action dev="henrib" type="fix" issue="JEXL-375" due-to="Jan Klicka"> + Cannot access enums by their name when using sandbox + </action> + <action dev="henrib" type="fix" issue="JEXL-374" due-to="Alex Hutton"> + No exception if dereferencing null object using safe(false) and antish(false) + </action> <action dev="henrib" type="fix" issue="JEXL-371"> Override of a protected method with public visibility is not callable </action> + <action dev="henrib" type="fix" issue="JEXL-370" due-to="Alex Hutton"> + Cannot check if variable is defined using ObjectContext if the value is null + </action> + <action dev="henrib" type="add" issue="JEXL-368"> + Namespace functor resolution is not cached + </action> + <action dev="henrib" type="fix" issue="JEXL-364"> + Evaluator options not propagated in closures + </action> + <action dev="henrib" type="fix" issue="JEXL-362"> + JexlInfo position reporting is off + </action> + <action dev="henrib" type="fix" issue="JEXL-361"> + Null may be used as operand silently even in arithmetic strict(true) mode + </action> + <action dev="henrib" type="fix" issue="JEXL-358"> + JexlScript.curry(...) resulting scripts don't evaluate correctly + </action> <action dev="henrib" type="fix" issue="JEXL-354" due-to="William Price"> #pragma does not handle negative integer or real literals </action>