You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by he...@apache.org on 2015/12/08 15:49:11 UTC
svn commit: r1718627 - in /commons/proper/jexl/trunk: RELEASE-NOTES.txt
src/site/xdoc/changes.xml
src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java
src/test/java/org/apache/commons/jexl3/SetLiteralTest.java
Author: henrib
Date: Tue Dec 8 14:49:11 2015
New Revision: 1718627
URL: http://svn.apache.org/viewvc?rev=1718627&view=rev
Log:
JEXL:
Ensured java 1.6 compatibility;
Updated release notes and changes;
Modified:
commons/proper/jexl/trunk/RELEASE-NOTES.txt
commons/proper/jexl/trunk/src/site/xdoc/changes.xml
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/SetLiteralTest.java
Modified: commons/proper/jexl/trunk/RELEASE-NOTES.txt
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/RELEASE-NOTES.txt?rev=1718627&r1=1718626&r2=1718627&view=diff
==============================================================================
--- commons/proper/jexl/trunk/RELEASE-NOTES.txt (original)
+++ commons/proper/jexl/trunk/RELEASE-NOTES.txt Tue Dec 8 14:49:11 2015
@@ -35,12 +35,23 @@ Also note that JEXL 3.0 now requires Jav
What's new in 3.0:
==================
* A redesigned API that properly segregates the "public" part and the "internal" parts of JEXL.
-* The ability to create JEXL functions in script, closure/variables hoisting included.
+* A real difference between Expression and Script (scripts accept statements: for, while, etc).
+* The ability to create JEXL functions in script, closure/variables hoisting/currying included.
+* A set of assignment operators (+=, *= , ...).
* A set of String matching operators (^= startsWith, $= endsWith) and their negative counterparts (!^, !$)
* A range operator (x .. y) to ease writing loops (for(var x : 1 .. 10) ... )
+* A literal set syntax to ease creating sets: { 1, 2...}
New features in 3.0:
====================
+* JEXL-177: Unified expressions to be used in String literals in JEXL scripts
+* JEXL-174: Overloadable property access operators
+* JEXL-173: Duck-typed java closures
+* JEXL-170: Implement assignment operators
+* JEXL-178: 'Unsolvable property' message to provide details about underlying exception
+* JEXL-164: public getters for high/low properties for IntegerRange and LongRange
+* JEXL-152: Extend Range literal to support Long values
+* JEXL-149: Set Construction as per EL 3.0 spec
* JEXL-133: String matching Operator short-hand inspired by CSS3
* JEXL-128: ObjectContext<> should implement NamespaceResolver
* JEXL-127: Allow the creation of functions
@@ -53,7 +64,29 @@ New features in 3.0:
* JEXL-130: Ternary Conditional fails for Object values
* JEXL-126: Decimal numbers literals should be 'double' by default (instead of 'float')
-There are no other changes.
+
+Bugs Fixed in 3.0:
+==================
+* JEXL-180: Documentation - suggests using float for financials
+* JEXL-171: Map access operator does not work if key name clashes with map property name
+* JEXL-169: A string is wrongly identified as FloatingPointNumber
+* JEXL-168: Dedicated operator for String concatenation
+* JEXL-79: Add support for growable arrays (ArrayLists)
+* JEXL-167: Possible loss of value when converting BigDecimal to BigInteger
+* JEXL-166: Incorrect operator symbol for bitwise complement in jexlArithmetic
+* JEXL-163: empty(new ("java.lang.Long", 4294967296)) returns true
+* JEXL-162: empty() function throws an exception : unsupported type
+* JEXL-160: typo in package.html
+* JEXL-158: Handle locale decimal separators correctly
+* JEXL-157: Replace File.pathSeparator with File.separator
+* JEXL-146: Performance problem in Interpreter.unknownVariable mechanism
+* JEXL-145: Sandbox calling wrong check (classname vs class)
+* JEXL-144: Empty array property setting fails
+* JEXL-142: Map expression issue with empty key
+* JEXL-141: Suffix for Big Decimal and Big Integer Literal is incorrectly mentioned in Java docs
+* JEXL-137: Invalid script variable list for nested array/map access
+
+Detail of all changes in changes.xml.
========================================================================================================================
Modified: commons/proper/jexl/trunk/src/site/xdoc/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/xdoc/changes.xml?rev=1718627&r1=1718626&r2=1718627&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/site/xdoc/changes.xml (original)
+++ commons/proper/jexl/trunk/src/site/xdoc/changes.xml Tue Dec 8 14:49:11 2015
@@ -36,7 +36,7 @@
'Unsolvable property' message to provide details about underlying exception
</action>
<action dev="henrib" type="add" issue="JEXL-177" due-to="Dmitri Blinov">
- Unified expressions to be used in String literals in JEXL scripts
+ Unified expressions to be used in String literals in JEXL scripts
</action>
<action dev="henrib" type="add" issue="JEXL-174" due-to="Dmitri Blinov">
Overloadable property access operators
Modified: commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java?rev=1718627&r1=1718626&r2=1718627&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java (original)
+++ commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticOperatorTest.java Tue Dec 8 14:49:11 2015
@@ -434,7 +434,7 @@ public class ArithmeticOperatorTest exte
Calendar cal = Calendar.getInstance();
cal.set(1969, 7, 20);
Date x0 = cal.getTime();
- String y0 = "yyy-MM-dd";
+ String y0 = "yyyy-MM-dd";
DateContext jc = new DateContext();
JexlEngine jexl = new JexlBuilder().cache(32).namespaces(ns).arithmetic(new DateArithmetic(true)).create();
JxltEngine jxlt = jexl.createJxltEngine();
Modified: commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/SetLiteralTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/SetLiteralTest.java?rev=1718627&r1=1718626&r2=1718627&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/SetLiteralTest.java (original)
+++ commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/SetLiteralTest.java Tue Dec 8 14:49:11 2015
@@ -18,7 +18,6 @@ package org.apache.commons.jexl3;
import java.util.Arrays;
import java.util.HashSet;
-import java.util.Objects;
import java.util.Set;
import org.junit.Assert;
import org.junit.Test;
@@ -45,7 +44,7 @@ public class SetLiteralTest extends Jexl
Object o = e.evaluate(jc);
Set<?> check = createSet("foo", "bar");
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -55,7 +54,7 @@ public class SetLiteralTest extends Jexl
Object o = e.evaluate(jc);
Set<?> check = createSet("foo");
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -65,7 +64,7 @@ public class SetLiteralTest extends Jexl
Object o = e.execute(jc);
Set<?> check = createSet("foo", "bar");
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -75,7 +74,7 @@ public class SetLiteralTest extends Jexl
Object o = e.execute(jc);
Set<?> check = createSet("foo");
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -85,7 +84,7 @@ public class SetLiteralTest extends Jexl
Object o = e.execute(jc);
Set<?> check = createSet("foo");
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -95,7 +94,7 @@ public class SetLiteralTest extends Jexl
Object o = e.evaluate(jc);
Set<?> check = createSet(new Double(5.0), new Integer(10));
- Assert.assertTrue(Objects.equals(check, o));
+ Assert.assertTrue(check.equals(o));
}
@Test
@@ -118,7 +117,7 @@ public class SetLiteralTest extends Jexl
for (int t = 0; t < exprs.length; ++t) {
JexlScript e = JEXL.createScript(exprs[t]);
Object o = e.execute(jc);
- Assert.assertTrue(exprs[t], Objects.equals(checks[t], o));
+ Assert.assertTrue(exprs[t], checks[t].equals(o));
}
}