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));
         }
 
     }