Author: desruisseaux
Date: Fri Apr 22 09:28:55 2016
New Revision: 1740475

URL: http://svn.apache.org/viewvc?rev=1740475&view=rev
Log:
Separate the discussion of behavioral changes between branches.

Modified:
    sis/site/trunk/content/branches.mdtext

Modified: sis/site/trunk/content/branches.mdtext
URL: 
http://svn.apache.org/viewvc/sis/site/trunk/content/branches.mdtext?rev=1740475&r1=1740474&r2=1740475&view=diff
==============================================================================
--- sis/site/trunk/content/branches.mdtext [UTF-8] (original)
+++ sis/site/trunk/content/branches.mdtext [UTF-8] Fri Apr 22 09:28:55 2016
@@ -64,6 +64,16 @@ for building and running on a JDK7 platf
   * `java.util.function` and `java.time` API replaced by internal placeholder 
classes.
 
 
+### Behavioral differences    {#behavior-jdk7}
+
+The JDK7 branch should behaves in a way close to identical to the JDK8 branch,
+with possible variations in the following aspects:
+
+  * Usage of `java.time.format.DateTimeFormatter` for parsing and formatting 
ISO 8601 dates
+    are simulated by usage of `java.text.SimpleDateFormat`. Those two 
formatters may not have
+    the same tolerance to inputs that deviate from the standard.
+
+
 
 branches/JDK6    {#jdk6}
 ------------------------
@@ -82,6 +92,25 @@ for building and running on a JDK6 platf
   * Other JDK7-specific features resolved on a case-by-case basis.
 
 
+### Behavioral differences    {#behavior-jdk6}
+
+Some JDK7-specific features are reproduced on the JDK6 branch in an 
approximative way,
+which may cause some differences in application behavior (ignoring differences 
in performance).
+Most differences are about the JDK7 branch being slightly stricter than the 
JDK6 branch is,
+or being able to handle information that are unsupported on the JDK6 branch.
+
+  * Invalid language strings accepted by the JDK6 branch may be rejected by 
the JDK7 branch, for example "`en_US_WIN`".
+    Conversely the JDK7 branch accepts IETF BCP 47 language tag strings (for 
example "`en-US-x-lvariant-POSIX`") while
+    the JDK6 branch does not. This is because the JDK7 branch creates 
`java.util.Locale` instances using `Locale.Builder`
+    while the JDK6 branch uses `Locale` constructor, and the former performs 
more rigorous syntax checks than the later.
+    In the above example, "`WIN`" is not a valid locale variant.
+
+  * Some exceptions that would be propagated on the JDK7 branch are caught on 
the JDK6 branch.
+    This is because some verbose _multi-catches_ are replaced by a single 
catch of a broad type like `Exception`.
+    Since uncaught exceptions on JDK7 branch were expected to be bugs, the 
broad exception handling on JDK6 branch
+    may make some potential SIS bugs slightly more difficult to identify.
+
+
 
 trunk    {#trunk}
 -----------------
@@ -94,6 +123,10 @@ necessary for implementing an older vers
   * Usages of non-existent GeoAPI interfaces are replaced by direct usages of 
the
     corresponding Apache SIS implementation.
 
+  * When a new revision of a standard is available,
+    the trunk still uses the old version since the new revision is not 
available in GeoAPI 3.0.
+    Sometime it results in usage of methods that are deprecated on the SIS 
development branches.
+
 For security reasons and for avoiding misleading information, the following 
functionalities are disabled on trunk
 (but are still enabled on branches as experimental features). In particular 
the `Supervisor.ENABLED` flag controls
 whether the MBeans documented in the `org.apache.sis.console` package are 
enabled or not.
@@ -104,27 +137,12 @@ whether the MBeans documented in the `or
 Above flag values may change in future SIS releases.
 
 
+### Behavioral differences    {#behavior}
 
-Behavioral differences between the branches    {#behavior}
-==========================================================
-
-Some JDK7-specific features are reproduced on the JDK6 branch in an 
approximative way,
-which may cause some differences in application behavior (ignoring differences 
in performance).
-Most differences are about the JDK7 branch being slightly stricter than the 
JDK6 branch is,
-or being able to handle information that are unsupported on the JDK6 branch.
-
-  * Invalid language strings accepted by the JDK6 branch may be rejected by 
the JDK7 branch, for example "`en_US_WIN`".
-    Conversely the JDK7 branch accepts IETF BCP 47 language tag strings (for 
example "`en-US-x-lvariant-POSIX`") while
-    the JDK6 branch does not. This is because the JDK7 branch creates 
`java.util.Locale` instances using `Locale.Builder`
-    while the JDK6 branch uses `Locale` constructor, and the former performs 
more rigorous syntax checks than the later.
-    In the above example, "`WIN`" is not a valid locale variant.
-
-  * Some exceptions that would be propagated on the JDK7 branch are caught on 
the JDK6 branch.
-    This is because some verbose _multi-catches_ are replaced by a single 
catch of a broad type like `Exception`.
-    Since uncaught exceptions on JDK7 branch were expected to be bugs, the 
broad exception handling on JDK6 branch
-    may make some potential SIS bugs slightly more difficult to identify.
+Because of changes between GeoAPI 3.0 and GeoAPI 4.0-SNAPSHOT, the following 
aspects need special care:
 
-Regarding all above points, the trunk is identical to the JDK6 branch.
+  * If `op` is an instance of `PassThroughOperation`, then the `if (op 
instanceof SingleOperation)` expression
+    evaluates to `true` on trunk but to `false` on SIS development branches.
 
 
 


Reply via email to