commons-jexl.git
3 years agoUpdate NOTICE file for 2019.
Gary Gregory [Thu, 16 May 2019 18:07:01 +0000 (14:07 -0400)] 
Update NOTICE file for 2019.

3 years agoJEXL-300: limit antish resolution to non-safe non-expression cases; refactored Intrep...
henrib [Wed, 15 May 2019 16:44:31 +0000 (18:44 +0200)] 
JEXL-300: limit antish resolution to non-safe non-expression cases; refactored IntrepreterBase/Interpreter for a better technical/functional split

3 years agoJEXL: refactored fixes related to debugging templates wrt new-lines
henrib [Wed, 15 May 2019 08:37:31 +0000 (10:37 +0200)] 
JEXL: refactored fixes related to debugging templates wrt new-lines

3 years agoJEXL: reporting fixes related to debugging templates wrt new-lines
henrib [Tue, 14 May 2019 15:44:22 +0000 (17:44 +0200)] 
JEXL: reporting fixes related to debugging templates wrt new-lines

3 years agoJEXL: reporting fixes related to debugging templates wrt new-lines
henrib [Tue, 14 May 2019 15:00:58 +0000 (17:00 +0200)] 
JEXL: reporting fixes related to debugging templates wrt new-lines

3 years agoJEXL-253: refined logic to find inheritable permissions, added test
henrib [Mon, 13 May 2019 16:42:11 +0000 (18:42 +0200)] 
JEXL-253: refined logic to find inheritable permissions, added test

3 years agoJEXL-299, JEXL-257: release notes and changes
henrib [Mon, 13 May 2019 14:50:14 +0000 (16:50 +0200)] 
JEXL-299, JEXL-257: release notes and changes

3 years agoJEXL-299: corrected signature generation (square brackets are already generated by...
henrib [Mon, 13 May 2019 14:38:34 +0000 (16:38 +0200)] 
JEXL-299: corrected signature generation (square brackets are already generated by class.getSimpleName())

3 years agoJEXL-257 , JEXL-299: added specific tests
henrib [Mon, 13 May 2019 14:36:57 +0000 (16:36 +0200)] 
JEXL-257 , JEXL-299: added specific tests

3 years agoJEXL-257: catch and wrap InvocationTargetException in thrown JexlEXception.TryFailed...
henrib [Mon, 13 May 2019 13:11:43 +0000 (15:11 +0200)] 
JEXL-257: catch and wrap InvocationTargetException in thrown JexlEXception.TryFailed from tryInvoke

3 years agoJEXL-299: added argument classes to method signature in Exception reporting
henrib [Mon, 13 May 2019 13:08:25 +0000 (15:08 +0200)] 
JEXL-299: added argument classes to method signature in Exception reporting

3 years agoJEXL-299: added argument classes to method signature in Exception reporting
henrib [Mon, 13 May 2019 13:03:57 +0000 (15:03 +0200)] 
JEXL-299: added argument classes to method signature in Exception reporting

3 years agoJEXL-253: readying for testing
henrib [Mon, 13 May 2019 12:43:50 +0000 (14:43 +0200)] 
JEXL-253: readying for testing

3 years agoMerge origin/master
Henri Biestro [Mon, 29 Apr 2019 07:53:52 +0000 (09:53 +0200)] 
Merge origin/master

3 years agoJEXL-253: first code drop, testing waters
Henri Biestro [Mon, 29 Apr 2019 07:50:27 +0000 (09:50 +0200)] 
JEXL-253: first code drop, testing waters

3 years agoJEXL-292: release-notes and changes
henrib [Fri, 26 Apr 2019 11:42:49 +0000 (13:42 +0200)] 
JEXL-292: release-notes and changes

3 years agoMerge origin/master
Henri Biestro [Thu, 25 Apr 2019 21:08:12 +0000 (23:08 +0200)] 
Merge origin/master

3 years agoJEXL-292: passing permissions from Uberspect to Introspector
Henri Biestro [Thu, 25 Apr 2019 21:06:50 +0000 (23:06 +0200)] 
JEXL-292: passing permissions from Uberspect to Introspector

3 years agofighting with git...
henrib [Mon, 1 Apr 2019 16:21:08 +0000 (18:21 +0200)] 
fighting with git...

3 years agoJEXL-292: allowing permissions to be subclassed
henrib [Mon, 1 Apr 2019 16:03:47 +0000 (18:03 +0200)] 
JEXL-292: allowing permissions to be subclassed

3 years agoJEXL-288: fix grammar, add test
henrib [Mon, 1 Apr 2019 15:54:33 +0000 (17:54 +0200)] 
JEXL-288: fix grammar, add test

3 years agoJEXL-296: fix grammar, add test
henrib [Mon, 1 Apr 2019 14:03:38 +0000 (16:03 +0200)] 
JEXL-296: fix grammar, add test
Task #JEXL-296 - Real literal in scientific format is not parsed without suffix

3 years agoJEXL-295: doc, release-notes, changes
henrib [Fri, 29 Mar 2019 14:47:05 +0000 (15:47 +0100)] 
JEXL-295: doc, release-notes, changes
Task #JEXL-295 - Add unary plus operator

3 years agoJEXL-295: cache constant unary plus/minus number literal only after checking determin...
henrib [Fri, 29 Mar 2019 14:34:06 +0000 (15:34 +0100)] 
JEXL-295: cache constant unary plus/minus number literal only after checking deterministic guard
Task #JEXL-295 - Add unary plus operator

3 years agoJEXL-295: positivize performs integral promotion of char, byte, short
henrib [Thu, 28 Mar 2019 17:20:25 +0000 (18:20 +0100)] 
JEXL-295: positivize performs integral promotion of char, byte, short
Task #JEXL-295 - Add unary plus operator

3 years agoJEXL-295: add unary plus support and arithmetic positivize method
henrib [Wed, 27 Mar 2019 17:52:49 +0000 (18:52 +0100)] 
JEXL-295: add unary plus support and arithmetic positivize method
Task #JEXL-295 - Add unary plus operator

3 years agoJEXL-291: use user-provided property object if sandbox does not change input
henrib [Fri, 22 Mar 2019 17:20:49 +0000 (18:20 +0100)] 
JEXL-291: use user-provided property object if sandbox does not change input
Task #JEXL-291 - Using sandbox prevents array-syntax lookup by number in Map

3 years agoJEXL: nitpick on debugger missing a space on Elvis operator output
henrib [Fri, 8 Mar 2019 10:21:04 +0000 (11:21 +0100)] 
JEXL: nitpick on debugger missing a space on Elvis operator output

3 years agoJEXL-280: found new case when lambda created within loop of a lambda, fixed loop...
henrib [Tue, 12 Feb 2019 17:11:42 +0000 (18:11 +0100)] 
JEXL-280: found new case when lambda created within loop of a lambda, fixed loop counter stack management
Task #JEXL-280 - break/continue statements outside of the loop

3 years agoJEXL-287: found regression when local variables are defined, not declared and returne...
henrib [Thu, 17 Jan 2019 16:19:08 +0000 (17:19 +0100)] 
JEXL-287: found regression when local variables are defined, not declared and returned with safe navigation

3 years agoJEXL-289: fix regression in edge case
henrib [Wed, 16 Jan 2019 18:10:40 +0000 (19:10 +0100)] 
JEXL-289: fix regression in edge case

3 years agoJEXL-287, JEXL-289: differentiate declared vs defined local variables (JavaScript...
henrib [Wed, 16 Jan 2019 17:06:03 +0000 (18:06 +0100)] 
JEXL-287, JEXL-289: differentiate declared vs defined local variables (JavaScript-like behavior wrt global/local), properly control parameter/argument binding wrt cardinality

3 years agoJEXL-286: allow for statements without body to iterate
henrib [Wed, 16 Jan 2019 10:48:06 +0000 (11:48 +0100)] 
JEXL-286: allow for statements without body to iterate

3 years agoJEXL-290: check for safe navigation around unsolvableMethod calls
henrib [Wed, 16 Jan 2019 10:10:01 +0000 (11:10 +0100)] 
JEXL-290: check for safe navigation around unsolvableMethod calls

3 years agoJEXL-290: check for safe navigation around unsolvableMethod calls
henrib [Wed, 16 Jan 2019 10:10:01 +0000 (11:10 +0100)] 
JEXL-290: check for safe navigation around unsolvableMethod calls

3 years agoJEXL-285: detect reuse of local vars in 'for' statements at parsing time
henrib [Fri, 11 Jan 2019 15:58:11 +0000 (16:58 +0100)] 
JEXL-285: detect reuse of local vars in 'for' statements at parsing time

3 years agoJEXL-285: detect reuse of local vars in 'for' statements at parsing time
henrib [Fri, 11 Jan 2019 15:51:51 +0000 (16:51 +0100)] 
JEXL-285: detect reuse of local vars in 'for' statements at parsing time

3 years agoJEXL-285: in for statement, use local var (vs global/context) as iteration var if...
henrib [Thu, 10 Jan 2019 14:25:09 +0000 (15:25 +0100)] 
JEXL-285: in for statement, use local var (vs global/context) as iteration var if one exists

3 years agoJEXL-279: safe navigation was not working on function call followed by array derefere...
henrib [Thu, 10 Jan 2019 14:21:31 +0000 (15:21 +0100)] 
JEXL-279: safe navigation was not working on function call followed by array dereference (call()[0])

3 years agoJEXL: being explicit about the source incompatiblity changes brought by 3.2
henrib [Wed, 2 Jan 2019 15:05:33 +0000 (16:05 +0100)] 
JEXL: being explicit about the source incompatiblity changes brought by 3.2

3 years agoJEXL-257: partial fix by being more precise in reusing solved method instances in...
henrib [Wed, 2 Jan 2019 14:57:49 +0000 (15:57 +0100)] 
JEXL-257: partial fix by being more precise in reusing solved method instances in set* making tryInvoke a tad safer

3 years agoJEXL-279: fix reset
henrib [Thu, 27 Dec 2018 10:42:13 +0000 (11:42 +0100)] 
JEXL-279: fix reset

3 years agoJEXL-279: updated tests
henrib [Thu, 27 Dec 2018 09:34:05 +0000 (10:34 +0100)] 
JEXL-279: updated tests

3 years agoJEXL-279: refined logic to discriminate undefined vs null variables or properties
henrib [Wed, 26 Dec 2018 17:09:10 +0000 (18:09 +0100)] 
JEXL-279: refined logic to discriminate undefined vs null variables or properties

3 years agoJEXL-280: added stack of loop counters in parser and tests
henrib [Tue, 18 Dec 2018 14:01:52 +0000 (15:01 +0100)] 
JEXL-280: added stack of loop counters in parser and tests

3 years agoJEXL-282: fixed grammar and test
henrib [Tue, 18 Dec 2018 10:13:48 +0000 (11:13 +0100)] 
JEXL-282: fixed grammar and test

3 years agoJEXL-281: releases notes and changes
henrib [Mon, 17 Dec 2018 15:42:49 +0000 (16:42 +0100)] 
JEXL-281: releases notes and changes

3 years agoJEXL-281: refined logic in MethodKey.isVarArgs avoiding costly class hierarchy walk
henrib [Mon, 17 Dec 2018 15:10:55 +0000 (16:10 +0100)] 
JEXL-281: refined logic in MethodKey.isVarArgs avoiding costly class hierarchy walk

3 years agoJEXL-279: refined logic to better capture null variables dereferencing in interpreter
henrib [Wed, 28 Nov 2018 17:07:05 +0000 (18:07 +0100)] 
JEXL-279: refined logic to better capture null variables dereferencing in interpreter

3 years agoJEXL-278: refined logic to better capture ambiguous statements
henrib [Sun, 28 Oct 2018 16:56:23 +0000 (17:56 +0100)] 
JEXL-278: refined logic to better capture ambiguous statements

3 years agoJEXL-278: added logic to better capture ambiguous statements and a method to attempt...
henrib [Thu, 25 Oct 2018 20:15:12 +0000 (22:15 +0200)] 
JEXL-278: added logic to better capture ambiguous statements and a method to attempt cleaning them from the source

3 years agoJEXL: nitpicks in Javadoc
henrib [Mon, 22 Oct 2018 09:47:51 +0000 (11:47 +0200)] 
JEXL: nitpicks in Javadoc

4 years agoMerge dmitri-blinov/documentation-brushup into JEXL-233
henrib [Tue, 18 Sep 2018 12:42:35 +0000 (14:42 +0200)] 
Merge dmitri-blinov/documentation-brushup into JEXL-233

4 years agoJEXL-274: added JexlBuilder option, interpreter code, tests and changes
henrib [Tue, 18 Sep 2018 11:35:45 +0000 (13:35 +0200)] 
JEXL-274: added JexlBuilder option, interpreter code, tests and changes

4 years agoMerge branch 'master' into documentation-brushup 14/head
dmitri-blinov [Tue, 18 Sep 2018 08:37:39 +0000 (11:37 +0300)] 
Merge branch 'master' into documentation-brushup

4 years agoDocumentation update cleanup
Dmitri Blinov [Tue, 18 Sep 2018 08:35:42 +0000 (11:35 +0300)] 
Documentation update cleanup

4 years agoDocumentation update
Dmitri Blinov [Tue, 18 Sep 2018 08:27:09 +0000 (11:27 +0300)] 
Documentation update

4 years agoJEXL-275: added option, tests and changes
henrib [Mon, 17 Sep 2018 20:09:15 +0000 (22:09 +0200)] 
JEXL-275: added option, tests and changes

4 years agoJEXL-273: changes & release notes
henrib [Thu, 13 Sep 2018 16:25:24 +0000 (18:25 +0200)] 
JEXL-273: changes & release notes

4 years agoJEXL: more tests on do...while loops
henrib [Thu, 13 Sep 2018 16:05:37 +0000 (18:05 +0200)] 
JEXL: more tests on do...while loops

4 years agoMerge branch 'experimental-do-while' of https://github.com/dmitri-blinov/commons...
henrib [Thu, 13 Sep 2018 15:45:07 +0000 (17:45 +0200)] 
Merge branch 'experimental-do-while' of https://github.com/dmitri-blinov/commons-jexl

4 years agoJEXL-175: changes & release notes
henrib [Thu, 13 Sep 2018 15:26:43 +0000 (17:26 +0200)] 
JEXL-175: changes & release notes

4 years agoReuse parsing method;
henrib [Thu, 13 Sep 2018 15:12:02 +0000 (17:12 +0200)] 
Reuse parsing method;
Nitpick on doc

4 years agoMerge branch 'experimental-regex' of https://github.com/dmitri-blinov/commons-jexl... 9/head
Dmitri Blinov [Thu, 13 Sep 2018 05:57:39 +0000 (08:57 +0300)] 
Merge branch 'experimental-regex' of https://github.com/dmitri-blinov/commons-jexl.git into experimental-regex

4 years agoRegex literal to be parse-time constant
Dmitri Blinov [Thu, 13 Sep 2018 05:56:27 +0000 (08:56 +0300)] 
Regex literal to be parse-time constant

4 years agoMerge branch 'master' into experimental-regex
henrib [Wed, 12 Sep 2018 13:47:16 +0000 (15:47 +0200)] 
Merge branch 'master' into experimental-regex

4 years agoJEXL-272: releases notes typo
henrib [Wed, 12 Sep 2018 13:26:09 +0000 (15:26 +0200)] 
JEXL-272: releases notes typo

4 years agoJEXL-272: properly detect and report null property dereference
henrib [Wed, 12 Sep 2018 12:51:57 +0000 (14:51 +0200)] 
JEXL-272: properly detect and report null property dereference
JEXL-271: moved lambda/curry tests to test class

4 years agoJEXL-271: reporting the unbound parameters (curry()), tls interpreter cleanup
Henri Biestro [Wed, 12 Sep 2018 06:31:59 +0000 (08:31 +0200)] 
JEXL-271: reporting the unbound parameters (curry()), tls interpreter cleanup

4 years agoJEXL: enable easier log lib change and package rename
henrib [Mon, 10 Sep 2018 14:36:22 +0000 (16:36 +0200)] 
JEXL: enable easier log lib change and package rename

4 years agoJEXL-271, JEXL-270: release notes, changes
henrib [Mon, 10 Sep 2018 14:02:54 +0000 (16:02 +0200)] 
JEXL-271, JEXL-270: release notes, changes

4 years agoJEXL-271: simplified curry(...) after being hinted it was a form of closure
henrib [Mon, 10 Sep 2018 13:15:28 +0000 (15:15 +0200)] 
JEXL-271: simplified curry(...) after being hinted it was a form of closure

4 years agoJEXL-270, JEXL-271: fix hoisting resolution and use thread-local current interpreter...
henrib [Mon, 10 Sep 2018 08:46:19 +0000 (10:46 +0200)] 
JEXL-270, JEXL-271: fix hoisting resolution and use thread-local current interpreter to capture env while currying, fix script re-stringification, added tests

4 years agoIntroduce regex Pattern literal ~//
Dmitri Blinov [Mon, 20 Aug 2018 09:00:36 +0000 (12:00 +0300)] 
Introduce regex Pattern literal ~//

4 years agoIntroduce do/while loop syntax 8/head
Dmitri Blinov [Mon, 20 Aug 2018 08:55:20 +0000 (11:55 +0300)] 
Introduce do/while loop syntax

4 years agoJEXL-267: added test illustrating intended behaviors
henrib [Thu, 16 Aug 2018 13:33:23 +0000 (15:33 +0200)] 
JEXL-267: added test illustrating intended behaviors

4 years agoJEXL-266: augmented example/prototype with 2 forEach operator 'overloads'
henrib [Thu, 16 Aug 2018 13:00:29 +0000 (15:00 +0200)] 
JEXL-266: augmented example/prototype with 2 forEach operator 'overloads'

4 years agoJEXL-266: added an example/prototype through forEach operator 'overload'
henrib [Wed, 15 Aug 2018 08:50:40 +0000 (10:50 +0200)] 
JEXL-266: added an example/prototype through forEach operator 'overload'

4 years agoJEXL: cleansing and refactoring the Interpreter.call(...) that was way too convoluted
henrib [Wed, 8 Aug 2018 16:45:45 +0000 (18:45 +0200)] 
JEXL: cleansing and refactoring the Interpreter.call(...) that was way too convoluted

4 years agoJEXL-265: making namespace identifier explicit in grammar and code
henrib [Mon, 6 Aug 2018 09:15:04 +0000 (11:15 +0200)] 
JEXL-265: making namespace identifier explicit in grammar and code

4 years agoJEXL-264: adding syntax in javacc jjt, escaping/unescaping identifier parsing methods...
henrib [Thu, 2 Aug 2018 16:43:16 +0000 (18:43 +0200)] 
JEXL-264: adding syntax in javacc jjt, escaping/unescaping identifier parsing methods, tests and book-keeping

4 years agoJEXL-261: reload namespaces which are classes on setClassLoader
henrib [Thu, 2 Aug 2018 15:47:19 +0000 (17:47 +0200)] 
JEXL-261: reload namespaces which are classes on setClassLoader

4 years agoJEXL-260: performance regression fix
henrib [Wed, 23 May 2018 12:20:08 +0000 (14:20 +0200)] 
JEXL-260: performance regression fix

4 years agoJEXL-261: api change, added logic in engine and interpreter, added test, updated...
henrib [Mon, 21 May 2018 11:17:48 +0000 (13:17 +0200)] 
JEXL-261: api change, added logic in engine and interpreter, added test, updated release notes & changes

4 years agoJEXL-260: added logic in interpreter, added test, updated release notes & changes
henrib [Sun, 20 May 2018 19:10:58 +0000 (21:10 +0200)] 
JEXL-260: added logic in interpreter, added test, updated release notes & changes

4 years agoJEXL: fixing preparation to add 'escaped' identifiers
henrib [Wed, 16 May 2018 12:40:08 +0000 (14:40 +0200)] 
JEXL: fixing preparation to add 'escaped' identifiers

4 years ago[JEXL]:
henrib [Wed, 16 May 2018 08:40:19 +0000 (10:40 +0200)] 
[JEXL]:
- preparing to add 'escaped' identifiers

4 years ago[JEXL]:
henrib [Wed, 16 May 2018 08:40:19 +0000 (10:40 +0200)] 
[JEXL]:
- preparing to add 'escaped' identifiers

4 years agoJEXL-256: a test/sample for throwing (jexl) exception from a context set
Henri Biestro [Wed, 11 Apr 2018 20:51:25 +0000 (22:51 +0200)] 
JEXL-256: a test/sample for throwing (jexl) exception from a context set

4 years agoJEXL-255: separated script execution cancellation and interruption
Henri Biestro [Mon, 5 Mar 2018 07:38:50 +0000 (08:38 +0100)] 
JEXL-255: separated script execution cancellation and interruption

4 years agoJEXL-255: implemented a test timeout annotation, fixed code around it
Henri Biestro [Sun, 4 Mar 2018 20:49:13 +0000 (21:49 +0100)] 
JEXL-255: implemented a test timeout annotation, fixed code around it

4 years agoJEXL-252, JEXL-250: syntax documentation
Henri Biestro [Wed, 7 Feb 2018 11:12:48 +0000 (12:12 +0100)] 
JEXL-252, JEXL-250: syntax documentation

4 years agoJEXL-252, JEXL-250: hardened logic and more tests
Henri Biestro [Wed, 7 Feb 2018 10:03:28 +0000 (11:03 +0100)] 
JEXL-252, JEXL-250: hardened logic and more tests

4 years agoJEXL-252, JEXL-250: hardened logic and more tests
Henri Biestro [Wed, 7 Feb 2018 10:01:58 +0000 (11:01 +0100)] 
JEXL-252, JEXL-250: hardened logic and more tests

4 years agoJEXL-252, JEXL-250: hardened logic and more tests
Henri Biestro [Tue, 6 Feb 2018 11:11:46 +0000 (12:11 +0100)] 
JEXL-252, JEXL-250: hardened logic and more tests

4 years agoJEXL-254: Fixed the name of the test classes
Emmanuel Bourg [Tue, 6 Feb 2018 11:36:58 +0000 (12:36 +0100)] 
JEXL-254: Fixed the name of the test classes

4 years agoJEXL-252, JEXL-250: added safe navigation and string interpolation to identifier...
Henri Biestro [Mon, 5 Feb 2018 14:00:09 +0000 (15:00 +0100)] 
JEXL-252, JEXL-250: added safe navigation and string interpolation to identifier resolution

4 years agoUpdated the year in NOTICE.txt
Emmanuel Bourg [Sun, 4 Feb 2018 09:42:38 +0000 (10:42 +0100)] 
Updated the year in NOTICE.txt

4 years ago[JEXL] Attempting git commit
Henri Biestro [Sat, 3 Feb 2018 08:22:51 +0000 (09:22 +0100)] 
[JEXL] Attempting git commit

4 years agoReplaced the Subversion URLs with the equivalent ones on Gitbox
Emmanuel Bourg [Fri, 2 Feb 2018 10:58:39 +0000 (11:58 +0100)] 
Replaced the Subversion URLs with the equivalent ones on Gitbox