You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2013/12/18 19:15:34 UTC
svn commit: r1552048 - /sis/site/trunk/content/branches.mdtext
Author: desruisseaux
Date: Wed Dec 18 18:15:33 2013
New Revision: 1552048
URL: http://svn.apache.org/r1552048
Log:
Added a section about behavioral differences JDK7 and JDK6 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=1552048&r1=1552047&r2=1552048&view=diff
==============================================================================
--- sis/site/trunk/content/branches.mdtext [UTF-8] (original)
+++ sis/site/trunk/content/branches.mdtext [UTF-8] Wed Dec 18 18:15:33 2013
@@ -82,10 +82,34 @@ necessary for implementing an older vers
+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 the behavior:
+
+ * JDK7 branch creates `java.util.Locale` instances using `Locale.Builder` inner class while the JDK6 branch
+ uses the `Locale` constructor. Since the former performs more rigorous syntax checks than the later,
+ some language strings accepted by the JDK6 branch may be rejected by the JDK7 branch. For example the
+ "`en_US_WIN`" string will be rejected on the JDK7 branch because "`WIN`" is not a valid locale variant.
+
+ * Some exception types do not exist on the JDK6 branch, for instance `java.util.IllformedLocaleException`.
+ The JDK6 branch replaces those types by their nearest parent, which may be `java.lang.RuntimeException`.
+
+ * Some verbose _multi-catches_ are replaced by a single catch of a broad type like `Exception`.
+ Consequently some exceptions that would be propagated on the JDK7 branch are caught on the JDK6 branch.
+ Since such propagated exceptions are expected to be bugs, the broad exception handling on JDK6 branch
+ may make some potential SIS bugs slightly more difficult to identify.
+
+Generally speaking, the JDK7 branch is slightly stricter than the JDK6 branch is.
+Regarding all above points, the trunk is identical to the JDK6 branch.
+
+
+
Coding recommendations {#recommendations}
============================================
- The following recommendations aim to make the merges easier by reducing the extend of potential conflicts.
+The following recommendations aim to make the merges easier by reducing the extend of potential conflicts.