[6/7] tapestry-5 git commit: upgrade Selenium

2016-07-13 Thread jkemnade
upgrade Selenium


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/65b46362
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/65b46362
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/65b46362

Branch: refs/heads/master
Commit: 65b4636204c3322b1ff9464265adba2dab76d06e
Parents: 22d9db0
Author: Jochen Kemnade 
Authored: Wed Jul 13 14:27:31 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 14:27:31 2016 +0200

--
 build.gradle | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/65b46362/build.gradle
--
diff --git a/build.gradle b/build.gradle
index 346d194..635322f 100755
--- a/build.gradle
+++ b/build.gradle
@@ -18,7 +18,7 @@ project.ext.versions = [
 hibernate: "5.2.1.Final",
 slf4j: "1.7.21",
 geb: "0.13.1",
-selenium: "2.53.0"
+selenium: "2.53.1"
 ]
 
 ext.continuousIntegrationBuild = Boolean.getBoolean("ci")



[1/7] tapestry-5 git commit: upgrade Gradle wrapper

2016-07-13 Thread jkemnade
Repository: tapestry-5
Updated Branches:
  refs/heads/master 9ae5c2bb9 -> 5d9e9e36d


upgrade Gradle wrapper


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/000b85f2
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/000b85f2
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/000b85f2

Branch: refs/heads/master
Commit: 000b85f273ef5dc02b6eb7f64edb13466583cd33
Parents: 9ae5c2b
Author: Jochen Kemnade 
Authored: Wed Jul 13 14:14:55 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 14:14:55 2016 +0200

--
 gradle/wrapper/gradle-wrapper.jar| Bin 53638 -> 53319 bytes
 gradle/wrapper/gradle-wrapper.properties |   2 +-
 gradlew  |  46 ++
 gradlew.bat  |   6 ++--
 4 files changed, 29 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/000b85f2/gradle/wrapper/gradle-wrapper.jar
--
diff --git a/gradle/wrapper/gradle-wrapper.jar 
b/gradle/wrapper/gradle-wrapper.jar
index 5ccda13..d3b8398 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and 
b/gradle/wrapper/gradle-wrapper.jar differ

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/000b85f2/gradle/wrapper/gradle-wrapper.properties
--
diff --git a/gradle/wrapper/gradle-wrapper.properties 
b/gradle/wrapper/gradle-wrapper.properties
index bd8068e..323dc97 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,4 +1,4 @@
-#Tue Mar 15 08:53:15 CET 2016
+#Wed Jul 13 14:14:41 CEST 2016
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/000b85f2/gradlew
--
diff --git a/gradlew b/gradlew
index 9d82f78..27309d9 100755
--- a/gradlew
+++ b/gradlew
@@ -6,12 +6,30 @@
 ##
 ##
 
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to 
pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ls=`ls -ld "$PRG"`
+link=`expr "$ls" : '.*-> \(.*\)$'`
+if expr "$link" : '/.*' > /dev/null; then
+PRG="$link"
+else
+PRG=`dirname "$PRG"`"/$link"
+fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
 
 APP_NAME="Gradle"
 APP_BASE_NAME=`basename "$0"`
 
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to 
pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
 # Use the maximum available, or set MAX_FD != -1 to use that value.
 MAX_FD="maximum"
 
@@ -30,6 +48,7 @@ die ( ) {
 cygwin=false
 msys=false
 darwin=false
+nonstop=false
 case "`uname`" in
   CYGWIN* )
 cygwin=true
@@ -40,26 +59,11 @@ case "`uname`" in
   MINGW* )
 msys=true
 ;;
+  NONSTOP* )
+nonstop=true
+;;
 esac
 
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
-ls=`ls -ld "$PRG"`
-link=`expr "$ls" : '.*-> \(.*\)$'`
-if expr "$link" : '/.*' > /dev/null; then
-PRG="$link"
-else
-PRG=`dirname "$PRG"`"/$link"
-fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
-
 CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
 
 # Determine the Java command to use to start the JVM.
@@ -85,7 +89,7 @@ location of your Java installation."
 fi
 
 # Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; 
then
 MAX_FD_LIMIT=`ulimit -H -n`
 if [ $? -eq 0 ] ; then
 if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/000b85f2/gradlew.bat
--
diff --git a/gradlew.bat b/gradlew.bat
index 72d362d..f6d5974 100644
--- a/gradlew.bat
+++ b/gradlew.bat
@@ -8,14 +8,14 @@
 @rem Set local scope for the variables with windows NT shell
 if "%OS%"=="Windows_NT" setlocal
 
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS 
to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
 set DIRNAME=%~dp0
 if "%DIRNAME%" == "" set DIRNAME=.
 set APP_BASE_NAME=%~n0
 set APP_HOME=%DIRNAME%
 
+@rem Add default J

[2/7] tapestry-5 git commit: upgrade Moment.js

2016-07-13 Thread jkemnade
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/5707e937/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.14.1.js
--
diff --git 
a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.14.1.js 
b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.14.1.js
new file mode 100644
index 000..1f4eb81
--- /dev/null
+++ 
b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.14.1.js
@@ -0,0 +1,11954 @@
+//! moment.js
+//! version : 2.14.1
+//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
+//! license : MIT
+//! momentjs.com
+
+;(function (global, factory) {
+typeof exports === 'object' && typeof module !== 'undefined' ? 
module.exports = factory() :
+typeof define === 'function' && define.amd ? define(factory) :
+global.moment = factory()
+}(this, function () { 'use strict';
+
+var hookCallback;
+
+function utils_hooks__hooks () {
+return hookCallback.apply(null, arguments);
+}
+
+// This is done to register the method called with moment()
+// without creating circular dependencies.
+function setHookCallback (callback) {
+hookCallback = callback;
+}
+
+function isArray(input) {
+return input instanceof Array || Object.prototype.toString.call(input) 
=== '[object Array]';
+}
+
+function isObject(input) {
+return Object.prototype.toString.call(input) === '[object Object]';
+}
+
+function isObjectEmpty(obj) {
+var k;
+for (k in obj) {
+// even if its not own property I'd still call it non-empty
+return false;
+}
+return true;
+}
+
+function isDate(input) {
+return input instanceof Date || Object.prototype.toString.call(input) 
=== '[object Date]';
+}
+
+function map(arr, fn) {
+var res = [], i;
+for (i = 0; i < arr.length; ++i) {
+res.push(fn(arr[i], i));
+}
+return res;
+}
+
+function hasOwnProp(a, b) {
+return Object.prototype.hasOwnProperty.call(a, b);
+}
+
+function extend(a, b) {
+for (var i in b) {
+if (hasOwnProp(b, i)) {
+a[i] = b[i];
+}
+}
+
+if (hasOwnProp(b, 'toString')) {
+a.toString = b.toString;
+}
+
+if (hasOwnProp(b, 'valueOf')) {
+a.valueOf = b.valueOf;
+}
+
+return a;
+}
+
+function create_utc__createUTC (input, format, locale, strict) {
+return createLocalOrUTC(input, format, locale, strict, true).utc();
+}
+
+function defaultParsingFlags() {
+// We need to deep clone this object.
+return {
+empty   : false,
+unusedTokens: [],
+unusedInput : [],
+overflow: -2,
+charsLeftOver   : 0,
+nullInput   : false,
+invalidMonth: null,
+invalidFormat   : false,
+userInvalidated : false,
+iso : false,
+parsedDateParts : [],
+meridiem: null
+};
+}
+
+function getParsingFlags(m) {
+if (m._pf == null) {
+m._pf = defaultParsingFlags();
+}
+return m._pf;
+}
+
+var some;
+if (Array.prototype.some) {
+some = Array.prototype.some;
+} else {
+some = function (fun) {
+var t = Object(this);
+var len = t.length >>> 0;
+
+for (var i = 0; i < len; i++) {
+if (i in t && fun.call(this, t[i], i, t)) {
+return true;
+}
+}
+
+return false;
+};
+}
+
+function valid__isValid(m) {
+if (m._isValid == null) {
+var flags = getParsingFlags(m);
+var parsedParts = some.call(flags.parsedDateParts, function (i) {
+return i != null;
+});
+m._isValid = !isNaN(m._d.getTime()) &&
+flags.overflow < 0 &&
+!flags.empty &&
+!flags.invalidMonth &&
+!flags.invalidWeekday &&
+!flags.nullInput &&
+!flags.invalidFormat &&
+!flags.userInvalidated &&
+(!flags.meridiem || (flags.meridiem && parsedParts));
+
+if (m._strict) {
+m._isValid = m._isValid &&
+flags.charsLeftOver === 0 &&
+flags.unusedTokens.length === 0 &&
+flags.bigHour === undefined;
+}
+}
+return m._isValid;
+}
+
+function valid__createInvalid (flags) {
+var m = create_utc__createUTC(NaN);
+if (flags != null) {
+extend(getParsingFlags(m), flags);
+}
+else {
+getParsingFlags

[7/7] tapestry-5 git commit: upgrade closure compiler

2016-07-13 Thread jkemnade
upgrade closure compiler


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/5d9e9e36
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/5d9e9e36
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/5d9e9e36

Branch: refs/heads/master
Commit: 5d9e9e36d6fa5a080c72810bb20d243ddb86340b
Parents: 65b4636
Author: Jochen Kemnade 
Authored: Wed Jul 13 14:27:56 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 14:27:56 2016 +0200

--
 tapestry-webresources/build.gradle | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/5d9e9e36/tapestry-webresources/build.gradle
--
diff --git a/tapestry-webresources/build.gradle 
b/tapestry-webresources/build.gradle
index 052d6d1..ec5727b 100644
--- a/tapestry-webresources/build.gradle
+++ b/tapestry-webresources/build.gradle
@@ -3,7 +3,7 @@ description = "Integration with WRO4J to perform runtime 
CoffeeScript compilatio
 dependencies {
 compile project(":tapestry-core")
 compile "com.github.sommeri:less4j:1.12.0"
-compile "com.google.javascript:closure-compiler:v20160315"
+compile "com.google.javascript:closure-compiler:v20160619"
 compile "org.mozilla:rhino:1.7.7.1"
 
 testCompile project(":tapestry-runner")



[5/7] tapestry-5 git commit: upgrade require.js

2016-07-13 Thread jkemnade
upgrade require.js


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/22d9db07
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/22d9db07
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/22d9db07

Branch: refs/heads/master
Commit: 22d9db07b1da17eb76022d7c569bd653f15c20cc
Parents: 5707e93
Author: Jochen Kemnade 
Authored: Wed Jul 13 14:25:11 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 14:25:11 2016 +0200

--
 .../META-INF/assets/tapestry5/require.js| 127 ++-
 1 file changed, 93 insertions(+), 34 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/22d9db07/tapestry-core/src/main/resources/META-INF/assets/tapestry5/require.js
--
diff --git 
a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/require.js 
b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/require.js
index babfa9a..23ddb4e 100644
--- a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/require.js
+++ b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/require.js
@@ -1,7 +1,6 @@
 /** vim: et:ts=4:sw=4:sts=4
- * @license RequireJS 2.1.17 Copyright (c) 2010-2015, The Dojo Foundation All 
Rights Reserved.
- * Available via the MIT or new BSD license.
- * see: http://github.com/jrburke/requirejs for details
+ * @license RequireJS 2.2.0 Copyright jQuery Foundation and other contributors.
+ * Released under MIT license, http://github.com/requirejs/requirejs/LICENSE
  */
 //Not using strict: uneven strict support in browsers, #392, and causes
 //problems with requirejs.exec()/transpiler plugins that may not be strict.
@@ -12,7 +11,7 @@ var requirejs, require, define;
 (function (global) {
 var req, s, head, baseElement, dataMain, src,
 interactiveScript, currentlyAddingScript, mainScript, subPath,
-version = '2.1.17',
+version = '2.2.0',
 commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,
 cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
 jsSuffixRegExp = /\.js$/,
@@ -20,8 +19,6 @@ var requirejs, require, define;
 op = Object.prototype,
 ostring = op.toString,
 hasOwn = op.hasOwnProperty,
-ap = Array.prototype,
-apsp = ap.splice,
 isBrowser = !!(typeof window !== 'undefined' && typeof navigator !== 
'undefined' && window.document),
 isWebWorker = !isBrowser && typeof importScripts !== 'undefined',
 //PS3 indicates loaded and complete, but need to wait for complete
@@ -38,6 +35,11 @@ var requirejs, require, define;
 globalDefQueue = [],
 useInteractive = false;
 
+//Could match something like ')//comment', do not lose the prefix to 
comment.
+function commentReplace(match, multi, multiText, singlePrefix) {
+return singlePrefix || '';
+}
+
 function isFunction(it) {
 return ostring.call(it) === '[object Function]';
 }
@@ -554,11 +556,13 @@ var requirejs, require, define;
 function takeGlobalQueue() {
 //Push all the globalDefQueue items into the context's defQueue
 if (globalDefQueue.length) {
-//Array splice in the values since the context code has a
-//local var ref to defQueue, so cannot just reassign the one
-//on context.
-apsp.apply(defQueue,
-   [defQueue.length, 0].concat(globalDefQueue));
+each(globalDefQueue, function(queueItem) {
+var id = queueItem[0];
+if (typeof id === 'string') {
+context.defQueueMap[id] = true;
+}
+defQueue.push(queueItem);
+});
 globalDefQueue = [];
 }
 }
@@ -589,7 +593,7 @@ var requirejs, require, define;
 id: mod.map.id,
 uri: mod.map.url,
 config: function () {
-return  getOwn(config.config, mod.map.id) || {};
+return getOwn(config.config, mod.map.id) || {};
 },
 exports: mod.exports || (mod.exports = {})
 });
@@ -845,7 +849,10 @@ var requirejs, require, define;
 factory = this.factory;
 
 if (!this.inited) {
-this.fetch();
+// Only fetch if not already in the defQueue.
+if (!hasProp(context.defQueueMap, id)) {
+this.fetch();
+}
 } else if (this.error) {
 this.emit('error', this

[3/7] tapestry-5 git commit: upgrade Moment.js

2016-07-13 Thread jkemnade
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/5707e937/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.13.0.js
--
diff --git 
a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.13.0.js 
b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.13.0.js
deleted file mode 100644
index b8f0313..000
--- 
a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/moment-2.13.0.js
+++ /dev/null
@@ -1,12051 +0,0 @@
-;(function (global, factory) {
-typeof exports === 'object' && typeof module !== 'undefined' ? 
module.exports = factory() :
-typeof define === 'function' && define.amd ? define(factory) :
-global.moment = factory()
-}(this, function () { 'use strict';
-
-var hookCallback;
-
-function utils_hooks__hooks () {
-return hookCallback.apply(null, arguments);
-}
-
-// This is done to register the method called with moment()
-// without creating circular dependencies.
-function setHookCallback (callback) {
-hookCallback = callback;
-}
-
-function isArray(input) {
-return input instanceof Array || Object.prototype.toString.call(input) 
=== '[object Array]';
-}
-
-function isDate(input) {
-return input instanceof Date || Object.prototype.toString.call(input) 
=== '[object Date]';
-}
-
-function map(arr, fn) {
-var res = [], i;
-for (i = 0; i < arr.length; ++i) {
-res.push(fn(arr[i], i));
-}
-return res;
-}
-
-function hasOwnProp(a, b) {
-return Object.prototype.hasOwnProperty.call(a, b);
-}
-
-function extend(a, b) {
-for (var i in b) {
-if (hasOwnProp(b, i)) {
-a[i] = b[i];
-}
-}
-
-if (hasOwnProp(b, 'toString')) {
-a.toString = b.toString;
-}
-
-if (hasOwnProp(b, 'valueOf')) {
-a.valueOf = b.valueOf;
-}
-
-return a;
-}
-
-function create_utc__createUTC (input, format, locale, strict) {
-return createLocalOrUTC(input, format, locale, strict, true).utc();
-}
-
-function defaultParsingFlags() {
-// We need to deep clone this object.
-return {
-empty   : false,
-unusedTokens: [],
-unusedInput : [],
-overflow: -2,
-charsLeftOver   : 0,
-nullInput   : false,
-invalidMonth: null,
-invalidFormat   : false,
-userInvalidated : false,
-iso : false,
-parsedDateParts : [],
-meridiem: null
-};
-}
-
-function getParsingFlags(m) {
-if (m._pf == null) {
-m._pf = defaultParsingFlags();
-}
-return m._pf;
-}
-
-var some;
-if (Array.prototype.some) {
-some = Array.prototype.some;
-} else {
-some = function (fun) {
-var t = Object(this);
-var len = t.length >>> 0;
-
-for (var i = 0; i < len; i++) {
-if (i in t && fun.call(this, t[i], i, t)) {
-return true;
-}
-}
-
-return false;
-};
-}
-
-function valid__isValid(m) {
-if (m._isValid == null) {
-var flags = getParsingFlags(m);
-var parsedParts = some.call(flags.parsedDateParts, function (i) {
-return i != null;
-});
-m._isValid = !isNaN(m._d.getTime()) &&
-flags.overflow < 0 &&
-!flags.empty &&
-!flags.invalidMonth &&
-!flags.invalidWeekday &&
-!flags.nullInput &&
-!flags.invalidFormat &&
-!flags.userInvalidated &&
-(!flags.meridiem || (flags.meridiem && parsedParts));
-
-if (m._strict) {
-m._isValid = m._isValid &&
-flags.charsLeftOver === 0 &&
-flags.unusedTokens.length === 0 &&
-flags.bigHour === undefined;
-}
-}
-return m._isValid;
-}
-
-function valid__createInvalid (flags) {
-var m = create_utc__createUTC(NaN);
-if (flags != null) {
-extend(getParsingFlags(m), flags);
-}
-else {
-getParsingFlags(m).userInvalidated = true;
-}
-
-return m;
-}
-
-function isUndefined(input) {
-return input === void 0;
-}
-
-// Plugins that add properties should also add the key here (null value),
-// so we can properly clone ourselves.
-var momentProperties = utils_hooks__hooks.momentProperties = [];
-
-function copyConfig(to, from) {
-var i, prop, val;
-
-if (!isUndefined(from._isAMomentObject)) {
-

[4/7] tapestry-5 git commit: upgrade Moment.js

2016-07-13 Thread jkemnade
upgrade Moment.js


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/5707e937
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/5707e937
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/5707e937

Branch: refs/heads/master
Commit: 5707e937de120ea4492e484092c9a57203afd3b3
Parents: 000b85f
Author: Jochen Kemnade 
Authored: Wed Jul 13 14:24:04 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 14:24:04 2016 +0200

--
 .../tapestry5/modules/JavaScriptModule.java | 2 +-
 .../META-INF/assets/tapestry5/moment-2.13.0.js  | 12051 -
 .../META-INF/assets/tapestry5/moment-2.14.1.js  | 11954 
 3 files changed, 11955 insertions(+), 12052 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/5707e937/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
--
diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
index 8a1f0e3..d442fe5 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
@@ -355,7 +355,7 @@ public class JavaScriptModule
 
@Path("${tapestry.asset.root}/typeahead.js")
 Resource typeahead,
 
-
@Path("${tapestry.asset.root}/moment-2.13.0.js")
+
@Path("${tapestry.asset.root}/moment-2.14.1.js")
 Resource moment,
 
 @Path("${" + 
SymbolConstants.BOOTSTRAP_ROOT + "}/js/transition.js")



[jira] [Reopened] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-13 Thread Jochen Kemnade (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade reopened TAP5-2556:
--

The upgrade broke the build. The 
{{org.apache.tapestry5.internal.hibernate.HibernateSessionSourceImpl.HibernateSessionSourceImpl}}
 constructor calls {{org.hibernate.SessionFactory.getAllClassMetadata()}} which 
throws an {{UnsupportedOperationException}}.

> Upgrade Hibernate to 5.2 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2449) PropertyConduitSource can't see Java 8 default methods

2016-07-13 Thread Jochen Kemnade (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade updated TAP5-2449:
-
Summary: PropertyConduitSource can't see Java 8 default methods  (was: 
PropertyConduitSource cant see Java 8 default methods)

> PropertyConduitSource can't see Java 8 default methods
> --
>
> Key: TAP5-2449
> URL: https://issues.apache.org/jira/browse/TAP5-2449
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.4
>Reporter: quurks
>  Labels: desired_for_5.5
>
> *Stets to reproduce:*
> Class with 
> {code}
> public class TestDefaultMethod {
> @Property private TestData testData = new TestData();
> public static interface TestInterface {
> public default String getTestString() {
> return "Alpha";
> }
> }
> public static class TestData implements TestInterface {
> }
> }
> {code}
> Template with 
> {code}
> ${testData.testString}
> {code}
> *Expected*:
> "Alpha" is put in the website
> *Actual*:
>Exception type: org.apache.tapestry5.ioc.util.UnknownValueException
>   Message: Class com.example.pages.TestDefaultMethod$TestData does 
> not contain a property (or public field) named 'testString'.
>   availableValues: AvailableValues\[Properties (and public fields): class]
> It works with
> {code}
> ${testData.getTestString()}
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[1/2] tapestry-5 git commit: upgrade wro4j

2016-07-13 Thread jkemnade
Repository: tapestry-5
Updated Branches:
  refs/heads/master 5d9e9e36d -> 91af872e1


upgrade wro4j


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/d5e4c8fd
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/d5e4c8fd
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/d5e4c8fd

Branch: refs/heads/master
Commit: d5e4c8fd531fc02ed643c4daed5568977ce7a665
Parents: 5d9e9e3
Author: Jochen Kemnade 
Authored: Wed Jul 13 15:26:33 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 15:26:33 2016 +0200

--
 buildSrc/build.gradle | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/d5e4c8fd/buildSrc/build.gradle
--
diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle
index f440e2b..33da1fc 100644
--- a/buildSrc/build.gradle
+++ b/buildSrc/build.gradle
@@ -6,13 +6,12 @@ repositories {
 
 
 dependencies {
-compile ("ro.isdc.wro4j:wro4j-extensions:1.7.7"){
+compile ("ro.isdc.wro4j:wro4j-extensions:1.8.0"){
   exclude group: 'org.jruby'
   exclude module: 'spring-web'
   exclude module: 'closure-compiler'
   exclude module: 'gmaven-runtime-1.7'
   exclude module: 'less4j'
 }
-compile "org.webjars:coffee-script:1.10.0"
 gradleApi()
 }



[2/2] tapestry-5 git commit: TAP5-2449: PropertyConduitSource can't see Java 8 default methods

2016-07-13 Thread jkemnade
TAP5-2449: PropertyConduitSource can't see Java 8 default methods


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/91af872e
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/91af872e
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/91af872e

Branch: refs/heads/master
Commit: 91af872e168718b6a719154674fb802b85d7ba20
Parents: d5e4c8f
Author: Jochen Kemnade 
Authored: Wed Jul 13 15:27:38 2016 +0200
Committer: Jochen Kemnade 
Committed: Wed Jul 13 15:27:38 2016 +0200

--
 .../internal/services/PropertyAccessImpl.java   | 20 +---
 .../ioc/specs/PropertyAccessImplSpec.groovy | 14 ++
 .../test/java/com/example/TestInterface.java|  7 +++
 3 files changed, 34 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/91af872e/beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
--
diff --git 
a/beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
 
b/beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
index 8dd1e02..00d08e2 100644
--- 
a/beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
+++ 
b/beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
@@ -101,10 +101,10 @@ public class PropertyAccessImpl implements PropertyAccess
 List descriptors = CollectionFactory.newList();
 
 addAll(descriptors, info.getPropertyDescriptors());
-
-// TAP5-921 - Introspector misses interface methods not 
implemented in an abstract class
-if (forClass.isInterface() || 
Modifier.isAbstract(forClass.getModifiers()) )
-addPropertiesFromExtendedInterfaces(forClass, descriptors);
+// Introspector misses:
+// - interface methods not implemented in an abstract class 
(TAP5-921)
+// - default methods (TAP5-2449)
+addPropertiesFromExtendedInterfaces(forClass, descriptors);
 
 addPropertiesFromScala(forClass, descriptors);
 
@@ -118,16 +118,22 @@ public class PropertyAccessImpl implements PropertyAccess
 
 private  void addAll(List list, T[] array)
 {
-list.addAll(Arrays.asList(array));
+if (array.length > 0){
+list.addAll(Arrays.asList(array));
+}
 }
 
 private void addPropertiesFromExtendedInterfaces(Class forClass, 
List descriptors)
 throws IntrospectionException
 {
-LinkedList queue = CollectionFactory.newLinkedList();
 
+Class[] interfaces = forClass.getInterfaces();
+if (interfaces.length == 0){
+return;
+}
+LinkedList queue = CollectionFactory.newLinkedList();
 // Seed the queue
-addAll(queue, forClass.getInterfaces());
+addAll(queue, interfaces);
 
 while (!queue.isEmpty())
 {

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/91af872e/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
--
diff --git 
a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy 
b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
index c76817f..7fa6581 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
@@ -1,5 +1,6 @@
 package ioc.specs
 
+import com.example.TestInterface
 import java.awt.Image
 import java.beans.*
 import java.lang.reflect.Method
@@ -796,4 +797,17 @@ class PropertyAccessImplSpec extends Specification {
   private Method findMethod(Class beanClass, String methodName) {
 return beanClass.methods.find { it.name == methodName }
   }
+  
+ 
+  public static class TestData implements TestInterface {
+  }
+  
+  // TAP5-2449
+  def "default method is recognized"(){
+when:
+def pa = getPropertyAdapter(TestData, 'testString')
+then:
+pa != null
+
+  }
 }

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/91af872e/tapestry-ioc/src/test/java/com/example/TestInterface.java
--
diff --git a/tapestry-ioc/src/test/java/com/example/TestInterface.java 
b/tapestry-ioc/src/test/java/com/example/TestInterface.java
new file mode 100644
index 000..b031857
--- /dev/null
+++ b/tapestry-ioc/src/test/java/com/example/TestInterface.java
@@ -0,0 +1,7 @@
+package com.example;
+
+public interface TestInterface {
+  public default String getTestString() {
+return "Alpha";
+  }
+}



[jira] [Commented] (TAP5-2449) PropertyConduitSource can't see Java 8 default methods

2016-07-13 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15374992#comment-15374992
 ] 

ASF subversion and git services commented on TAP5-2449:
---

Commit 91af872e168718b6a719154674fb802b85d7ba20 in tapestry-5's branch 
refs/heads/master from [~jkemnade]
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=91af872 ]

TAP5-2449: PropertyConduitSource can't see Java 8 default methods


> PropertyConduitSource can't see Java 8 default methods
> --
>
> Key: TAP5-2449
> URL: https://issues.apache.org/jira/browse/TAP5-2449
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.4
>Reporter: quurks
>  Labels: desired_for_5.5
> Fix For: 5.5.0
>
>
> *Stets to reproduce:*
> Class with 
> {code}
> public class TestDefaultMethod {
> @Property private TestData testData = new TestData();
> public static interface TestInterface {
> public default String getTestString() {
> return "Alpha";
> }
> }
> public static class TestData implements TestInterface {
> }
> }
> {code}
> Template with 
> {code}
> ${testData.testString}
> {code}
> *Expected*:
> "Alpha" is put in the website
> *Actual*:
>Exception type: org.apache.tapestry5.ioc.util.UnknownValueException
>   Message: Class com.example.pages.TestDefaultMethod$TestData does 
> not contain a property (or public field) named 'testString'.
>   availableValues: AvailableValues\[Properties (and public fields): class]
> It works with
> {code}
> ${testData.getTestString()}
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (TAP5-2449) PropertyConduitSource can't see Java 8 default methods

2016-07-13 Thread Jochen Kemnade (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade closed TAP5-2449.

   Resolution: Fixed
Fix Version/s: 5.5.0

> PropertyConduitSource can't see Java 8 default methods
> --
>
> Key: TAP5-2449
> URL: https://issues.apache.org/jira/browse/TAP5-2449
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.4
>Reporter: quurks
>  Labels: desired_for_5.5
> Fix For: 5.5.0
>
>
> *Stets to reproduce:*
> Class with 
> {code}
> public class TestDefaultMethod {
> @Property private TestData testData = new TestData();
> public static interface TestInterface {
> public default String getTestString() {
> return "Alpha";
> }
> }
> public static class TestData implements TestInterface {
> }
> }
> {code}
> Template with 
> {code}
> ${testData.testString}
> {code}
> *Expected*:
> "Alpha" is put in the website
> *Actual*:
>Exception type: org.apache.tapestry5.ioc.util.UnknownValueException
>   Message: Class com.example.pages.TestDefaultMethod$TestData does 
> not contain a property (or public field) named 'testString'.
>   availableValues: AvailableValues\[Properties (and public fields): class]
> It works with
> {code}
> ${testData.getTestString()}
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2552) Missing Jar file

2016-07-13 Thread Jochen Kemnade (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15374997#comment-15374997
 ] 

Jochen Kemnade commented on TAP5-2552:
--

I'm afraid I don't understand what the problem is.
{code}
$> wget 
http://repo1.maven.org/maven2/org/apache/tapestry/tapestry-test/5.3.8/tapestry-test-5.3.8.jar
--2016-07-13 15:34:50--  
http://repo1.maven.org/maven2/org/apache/tapestry/tapestry-test/5.3.8/tapestry-test-5.3.8.jar
Auflösen des Hostnamens »repo1.maven.org (repo1.maven.org)« … 151.101.36.209
Verbindungsaufbau zu repo1.maven.org (repo1.maven.org)|151.101.36.209|:80 … 
verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 469065 (458K) [application/java-archive]
Wird in »»tapestry-test-5.3.8.jar«« gespeichert.

tapestry-test-5.3.8.jar  
100%[>]
 458,07K  --.-KB/sin 0,1s

2016-07-13 15:34:50 (3,56 MB/s) - »»tapestry-test-5.3.8.jar«« gespeichert 
[469065/469065]

$> unzip tapestry-test-5.3.8.jar 
Archive:  tapestry-test-5.3.8.jar
   creating: META-INF/
  inflating: META-INF/MANIFEST.MF
   creating: org/
   creating: org/apache/
   creating: org/apache/tapestry5/
   creating: org/apache/tapestry5/ioc/
   creating: org/apache/tapestry5/ioc/test/
  inflating: org/apache/tapestry5/ioc/test/MockTester$1.class  
  inflating: org/apache/tapestry5/ioc/test/MockTester$ThreadLocalControl.class  
  inflating: org/apache/tapestry5/ioc/test/MockTester.class  
  inflating: org/apache/tapestry5/ioc/test/TestBase.class  
  inflating: org/apache/tapestry5/ioc/test/TestUtils.class  
   creating: org/apache/tapestry5/test/
  inflating: org/apache/tapestry5/test/ErrorReporter.class  
  inflating: org/apache/tapestry5/test/ErrorReporterImpl.class  
  inflating: org/apache/tapestry5/test/ErrorReportingCommandProcessor.class  
  inflating: org/apache/tapestry5/test/Jetty7Runner.class  
  inflating: org/apache/tapestry5/test/RandomDataSource.class  
  inflating: org/apache/tapestry5/test/SeleniumLauncher.class  
  inflating: org/apache/tapestry5/test/SeleniumTestCase$1.class  
  inflating: org/apache/tapestry5/test/SeleniumTestCase$1EmptyInnerClass.class  
  inflating: org/apache/tapestry5/test/SeleniumTestCase$2.class  
  inflating: org/apache/tapestry5/test/SeleniumTestCase.class  
  inflating: org/apache/tapestry5/test/ServletContainerRunner.class  
  inflating: org/apache/tapestry5/test/TapestryTestConfiguration.class  
  inflating: org/apache/tapestry5/test/TapestryTestConstants.class  
  inflating: org/apache/tapestry5/test/Tomcat6Runner.class  
  inflating: org/apache/tapestry5/test/american.0  
  inflating: org/apache/tapestry5/test/american.1  
  inflating: org/apache/tapestry5/test/american.2  
  inflating: org/apache/tapestry5/test/english.0  
  inflating: org/apache/tapestry5/test/english.1  
  inflating: org/apache/tapestry5/test/english.2  
  inflating: org/apache/tapestry5/test/english.3  
  inflating: META-INF/LICENSE.txt
  inflating: META-INF/NOTICE.txt 
$> ls org/apache/tapestry5/ioc/test/TestUtils.class
org/apache/tapestry5/ioc/test/TestUtils.class
{code}
The class is there. Are you sure that {{tapestry-test}} is on your classpath?

> Missing Jar file
> 
>
> Key: TAP5-2552
> URL: https://issues.apache.org/jira/browse/TAP5-2552
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-ioc
>Affects Versions: 5.3.8
>Reporter: nicolaslh
>
> As 
> http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/ioc/test/TestUtils.html
>  
> 
>  
>  Normally this class is in the package org.apache.tapestry5.ioc.test but 
> there is only one class which is IOCTestCase. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict

2016-07-13 Thread Jochen Kemnade (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375006#comment-15375006
 ] 

Jochen Kemnade commented on TAP5-1803:
--

[~thiagohp], anything new to add here?

> URL encoding in ActivationRequestParameter is very strict
> -
>
> Key: TAP5-1803
> URL: https://issues.apache.org/jira/browse/TAP5-1803
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.4
>Reporter: David Canteros
>  Labels: @ActivationRequestParameter, InvalidaArgumenteException, 
> URLEncoder,
>
> The URLEncoder that perform the URL encoding process does not include the 
> following "unreserved characters" :  
>  !  ~  *  ' (  )   
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
>
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter 
> requires this enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an 
> InvalidaArgumenteException. Tapestry should consider that the 
> ActivationRequestParameter is a standar way of parameter sending, and the 
> parameters sent in this way probably not have the "strict" coding process of 
> the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2449) PropertyConduitSource can't see Java 8 default methods

2016-07-13 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375160#comment-15375160
 ] 

Hudson commented on TAP5-2449:
--

FAILURE: Integrated in tapestry-trunk-freestyle #1582 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1582/])
TAP5-2449: PropertyConduitSource can't see Java 8 default methods 
(jochen.kemnade: rev 91af872e168718b6a719154674fb802b85d7ba20)
* 
beanmodel/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyAccessImpl.java
* tapestry-ioc/src/test/java/com/example/TestInterface.java
* tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy


> PropertyConduitSource can't see Java 8 default methods
> --
>
> Key: TAP5-2449
> URL: https://issues.apache.org/jira/browse/TAP5-2449
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.4
>Reporter: quurks
>  Labels: desired_for_5.5
> Fix For: 5.5.0
>
>
> *Stets to reproduce:*
> Class with 
> {code}
> public class TestDefaultMethod {
> @Property private TestData testData = new TestData();
> public static interface TestInterface {
> public default String getTestString() {
> return "Alpha";
> }
> }
> public static class TestData implements TestInterface {
> }
> }
> {code}
> Template with 
> {code}
> ${testData.testString}
> {code}
> *Expected*:
> "Alpha" is put in the website
> *Actual*:
>Exception type: org.apache.tapestry5.ioc.util.UnknownValueException
>   Message: Class com.example.pages.TestDefaultMethod$TestData does 
> not contain a property (or public field) named 'testString'.
>   availableValues: AvailableValues\[Properties (and public fields): class]
> It works with
> {code}
> ${testData.getTestString()}
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2548) Upgrade embedded Jetty and Tomcat versions

2016-07-13 Thread Thiago H. de Paula Figueiredo (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2548?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375709#comment-15375709
 ] 

Thiago H. de Paula Figueiredo commented on TAP5-2548:
-

Hello, [~jkemnade]!

I don't think that, in this case, a class in the test JAR, isn't worth the 
backward compatibility over the confusion. So, IMHO, just go ahead and rename 
the files and mention it in the release notes.

Thanks for looking into this!

Cheers!

> Upgrade embedded Jetty and Tomcat versions
> --
>
> Key: TAP5-2548
> URL: https://issues.apache.org/jira/browse/TAP5-2548
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-runner
>Reporter: Jochen Kemnade
>  Labels: desired_for_5.5, patch
> Attachments: 
> 0001-TAP5-2548-upgrade-embedded-Tomcat-and-Jetty-versions.patch
>
>
> Since we are switching to Servlet 3.0 for Tapestry 5.5, we should upgrade the 
> embedded server versions.
> Unfortunately the runner classes contain the servlet container versions in 
> their class names (Jetty7Runner and Tomcat6Runner). This means we can either 
> stay backward compatible and confuse users (e.g. start Jetty 8 from 
> Jetty7Runner) or rename the classes and break backward compatibility. I 
> prefer the latter.
> Thoughts?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict

2016-07-13 Thread Thiago H. de Paula Figueiredo (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375842#comment-15375842
 ] 

Thiago H. de Paula Figueiredo commented on TAP5-1803:
-

Hello, [~jkemnade] and [~kaosko]!

To be honest, in hindsight, I'm not sure why {{URLEncoder}} is used over 
anything which goes into or comes from request parameters, making them not work 
as anyone would expect. Regarding handling of empty string vs null, I don't 
think Tapestry should do any encoding about it: if no query parameter with that 
name, field receives null; if query parameter with that name but no value, 
field receives whatever the contributed {{ValueEncoder}} is for its Java type. 
{{URLEncoder}} usage makes sense for activation contexts, and query parameters 
are most definitely *not* activation context.

Cheers!

> URL encoding in ActivationRequestParameter is very strict
> -
>
> Key: TAP5-1803
> URL: https://issues.apache.org/jira/browse/TAP5-1803
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.4
>Reporter: David Canteros
>  Labels: @ActivationRequestParameter, InvalidaArgumenteException, 
> URLEncoder,
>
> The URLEncoder that perform the URL encoding process does not include the 
> following "unreserved characters" :  
>  !  ~  *  ' (  )   
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
>
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter 
> requires this enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an 
> InvalidaArgumenteException. Tapestry should consider that the 
> ActivationRequestParameter is a standar way of parameter sending, and the 
> parameters sent in this way probably not have the "strict" coding process of 
> the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict

2016-07-13 Thread Thiago H. de Paula Figueiredo (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375842#comment-15375842
 ] 

Thiago H. de Paula Figueiredo edited comment on TAP5-1803 at 7/13/16 9:58 PM:
--

Hello, [~jkemnade] and [~kaosko]!

To be honest, in hindsight, I'm not sure why {{URLEncoder}} is used over 
anything which goes into or comes from request parameters, making them not work 
as anyone would expect. Regarding handling of empty string vs null, I don't 
think Tapestry should do any encoding about it: if no query parameter with that 
name, field receives null; if query parameter with that name but no value, 
field receives whatever value the contributed {{ValueEncoder}} gives for its 
Java type. If it's a {{String}}, then empty string. {{URLEncoder}} usage makes 
sense for activation contexts, and query parameters are most definitely *not* 
activation context.

Cheers!


was (Author: thiagohp):
Hello, [~jkemnade] and [~kaosko]!

To be honest, in hindsight, I'm not sure why {{URLEncoder}} is used over 
anything which goes into or comes from request parameters, making them not work 
as anyone would expect. Regarding handling of empty string vs null, I don't 
think Tapestry should do any encoding about it: if no query parameter with that 
name, field receives null; if query parameter with that name but no value, 
field receives whatever the contributed {{ValueEncoder}} is for its Java type. 
{{URLEncoder}} usage makes sense for activation contexts, and query parameters 
are most definitely *not* activation context.

Cheers!

> URL encoding in ActivationRequestParameter is very strict
> -
>
> Key: TAP5-1803
> URL: https://issues.apache.org/jira/browse/TAP5-1803
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.4
>Reporter: David Canteros
>  Labels: @ActivationRequestParameter, InvalidaArgumenteException, 
> URLEncoder,
>
> The URLEncoder that perform the URL encoding process does not include the 
> following "unreserved characters" :  
>  !  ~  *  ' (  )   
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
>
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter 
> requires this enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an 
> InvalidaArgumenteException. Tapestry should consider that the 
> ActivationRequestParameter is a standar way of parameter sending, and the 
> parameters sent in this way probably not have the "strict" coding process of 
> the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-13 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15376020#comment-15376020
 ] 

Kalle Korhonen commented on TAP5-2556:
--

Yeah totally, sorry. Somehow totally botched this up while I was working on 
multiple things in parallel. I already wrote the fix for the upgrade but 
committed it to tynamo instead... will fix.

> Upgrade Hibernate to 5.2 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


tapestry-5 git commit: TAP5-2548: upgrade embedded Tomcat and Jetty versions

2016-07-13 Thread jkemnade
Repository: tapestry-5
Updated Branches:
  refs/heads/master 91af872e1 -> 95413c0c9


TAP5-2548: upgrade embedded Tomcat and Jetty versions


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/95413c0c
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/95413c0c
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/95413c0c

Branch: refs/heads/master
Commit: 95413c0c9633612d42ff07f3636b8501ebb6e56a
Parents: 91af872
Author: Jochen Kemnade 
Authored: Wed May 18 09:55:37 2016 +0200
Committer: Jochen Kemnade 
Committed: Thu Jul 14 07:40:22 2016 +0200

--
 55_RELEASE_NOTES.md |   7 +
 build.gradle|   4 +-
 tapestry-core/build.gradle  |   2 +-
 .../org/apache/tapestry5/LaunchJetty7.groovy|  21 --
 .../org/apache/tapestry5/LaunchJetty8.groovy|  21 ++
 .../apache/tapestry5/integration/RunJetty.java  |   4 +-
 .../integration/cluster/ClusterTests.java   |  10 +-
 tapestry-runner/build.gradle|   6 +-
 .../org/apache/tapestry5/test/Jetty7Runner.java | 232 --
 .../org/apache/tapestry5/test/JettyRunner.java  | 235 +++
 .../apache/tapestry5/test/Tomcat6Runner.java| 151 
 .../org/apache/tapestry5/test/TomcatRunner.java | 120 ++
 .../apache/tapestry5/test/SeleniumTestCase.java |   4 +-
 .../apache/tapestry5/upload/RunJettyUpload.java |   4 +-
 .../webresources/tests/CssCompressorSpec.groovy |   2 +-
 .../webresources/tests/WebResourcesSpec.groovy  |   4 +-
 16 files changed, 403 insertions(+), 424 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/95413c0c/55_RELEASE_NOTES.md
--
diff --git a/55_RELEASE_NOTES.md b/55_RELEASE_NOTES.md
new file mode 100644
index 000..d4e65e4
--- /dev/null
+++ b/55_RELEASE_NOTES.md
@@ -0,0 +1,7 @@
+Scratch pad for changes destined for the 5.5 release notes page.
+
+# Java 8 required
+The minimum Java release required to run apps created with Tapestry 5.5 is 
Java 8.
+
+# Updates to embedded Tomcat and Jetty versions (TAP5-2548)
+With Java 8, we made the switch to servlet-api 3.0. We updated the embedded 
Tomcat and Jetty containers to the respective versions. Unfortunately, we had 
to rename Jetty7Runner to JettyRunner and Tomcat6Runner to TomcatRunner in the 
tapestry-runner package.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/95413c0c/build.gradle
--
diff --git a/build.gradle b/build.gradle
index 635322f..4b90a01 100755
--- a/build.gradle
+++ b/build.gradle
@@ -9,8 +9,8 @@ apply from: "ssh.gradle"
 apply from: "md5.gradle"
 
 project.ext.versions = [
-jetty: "7.6.11.v20130520",
-tomcat: "6.0.30",
+jetty: "8.1.19.v20160209",
+tomcat: "7.0.70",
 testng: "6.8.21",
 easymock: "3.3.1",
 servletapi: "3.0.1",

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/95413c0c/tapestry-core/build.gradle
--
diff --git a/tapestry-core/build.gradle b/tapestry-core/build.gradle
index e0f8d8d..d7453dd 100644
--- a/tapestry-core/build.gradle
+++ b/tapestry-core/build.gradle
@@ -66,7 +66,7 @@ jar {
 }
 
 task runTestApp1(type:JavaExec) {
-  main = 'org.apache.tapestry5.test.Jetty7Runner'
+  main = 'org.apache.tapestry5.test.JettyRunner'
   args "-d", "src/test/app1", "-p", "8080"
   classpath += project.sourceSets.test.runtimeClasspath
 }

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/95413c0c/tapestry-core/src/test/groovy/org/apache/tapestry5/LaunchJetty7.groovy
--
diff --git 
a/tapestry-core/src/test/groovy/org/apache/tapestry5/LaunchJetty7.groovy 
b/tapestry-core/src/test/groovy/org/apache/tapestry5/LaunchJetty7.groovy
deleted file mode 100644
index 32f3266..000
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/LaunchJetty7.groovy
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2011 The Apache Software Foundation
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-import org.apache.tapestry5.test.Jetty7Runner
-
-if (this.args.le

[jira] [Commented] (TAP5-2548) Upgrade embedded Jetty and Tomcat versions

2016-07-13 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2548?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15376346#comment-15376346
 ] 

ASF subversion and git services commented on TAP5-2548:
---

Commit 95413c0c9633612d42ff07f3636b8501ebb6e56a in tapestry-5's branch 
refs/heads/master from [~jkemnade]
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=95413c0 ]

TAP5-2548: upgrade embedded Tomcat and Jetty versions


> Upgrade embedded Jetty and Tomcat versions
> --
>
> Key: TAP5-2548
> URL: https://issues.apache.org/jira/browse/TAP5-2548
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-runner
>Reporter: Jochen Kemnade
>  Labels: desired_for_5.5, patch
> Fix For: 5.5.0
>
> Attachments: 
> 0001-TAP5-2548-upgrade-embedded-Tomcat-and-Jetty-versions.patch
>
>
> Since we are switching to Servlet 3.0 for Tapestry 5.5, we should upgrade the 
> embedded server versions.
> Unfortunately the runner classes contain the servlet container versions in 
> their class names (Jetty7Runner and Tomcat6Runner). This means we can either 
> stay backward compatible and confuse users (e.g. start Jetty 8 from 
> Jetty7Runner) or rename the classes and break backward compatibility. I 
> prefer the latter.
> Thoughts?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (TAP5-2548) Upgrade embedded Jetty and Tomcat versions

2016-07-13 Thread Jochen Kemnade (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2548?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade closed TAP5-2548.

   Resolution: Fixed
 Assignee: Jochen Kemnade
Fix Version/s: 5.5.0

> Upgrade embedded Jetty and Tomcat versions
> --
>
> Key: TAP5-2548
> URL: https://issues.apache.org/jira/browse/TAP5-2548
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-runner
>Reporter: Jochen Kemnade
>Assignee: Jochen Kemnade
>  Labels: desired_for_5.5, patch
> Fix For: 5.5.0
>
> Attachments: 
> 0001-TAP5-2548-upgrade-embedded-Tomcat-and-Jetty-versions.patch
>
>
> Since we are switching to Servlet 3.0 for Tapestry 5.5, we should upgrade the 
> embedded server versions.
> Unfortunately the runner classes contain the servlet container versions in 
> their class names (Jetty7Runner and Tomcat6Runner). This means we can either 
> stay backward compatible and confuse users (e.g. start Jetty 8 from 
> Jetty7Runner) or rename the classes and break backward compatibility. I 
> prefer the latter.
> Thoughts?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


tapestry-5 git commit: TAP-2327: add support for httpOnly cookies and setting cookies' version/comment

2016-07-13 Thread jkemnade
Repository: tapestry-5
Updated Branches:
  refs/heads/master 95413c0c9 -> f161aa89b


TAP-2327: add support for httpOnly cookies and setting cookies' version/comment


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/f161aa89
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/f161aa89
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/f161aa89

Branch: refs/heads/master
Commit: f161aa89b64fc4f8f28aaabcb59ade036dc0fcd0
Parents: 95413c0
Author: Barry Books 
Authored: Fri Feb 26 10:30:58 2016 -0600
Committer: Jochen Kemnade 
Committed: Thu Jul 14 07:46:04 2016 +0200

--
 .../org/apache/tapestry5/CookieBuilder.java | 62 
 .../internal/services/CookiesImpl.java  | 21 +--
 2 files changed, 66 insertions(+), 17 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/f161aa89/tapestry-core/src/main/java/org/apache/tapestry5/CookieBuilder.java
--
diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/CookieBuilder.java 
b/tapestry-core/src/main/java/org/apache/tapestry5/CookieBuilder.java
index 9068d6a..3f54318 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/CookieBuilder.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/CookieBuilder.java
@@ -19,23 +19,27 @@ import org.apache.tapestry5.services.Request;
 /**
  * A fluent API to create and write cookies. Used by the
  * {@link org.apache.tapestry5.services.Cookies} service.
- * 
+ *
  * @since 5.4
  */
 public abstract class CookieBuilder
 {
-
+
 protected final String name;
 protected final String value;
-
+
 protected String path;
 protected String domain;
 protected Integer maxAge;
 protected Boolean secure;
-
+
+protected Boolean httpOnly;
+protected int version = 0;
+protected String comment;
+
 /**
  * Initialize a new CookieBuilder
- * 
+ *
  * @param name  the name of the resulting cookie
  * @param value the value of the resulting cookie
  */
@@ -72,7 +76,7 @@ public abstract class CookieBuilder
  * -1 deletes a cookie upon closing the browser. The default 
is defined by
  * the symbol org.apache.tapestry5.default-cookie-max-age. 
The factory default for
  * this value is the equivalent of one week.
- * 
+ *
  * @param maxAge
  *the cookie's maximum age in seconds
  * @return the modified {@link CookieBuilder}
@@ -82,10 +86,10 @@ public abstract class CookieBuilder
 this.maxAge = maxAge;
 return this;
 }
-
+
 /**
  * Set the cookie's secure mode. Defaults to {@link Request#isSecure()}.
- * 
+ *
  * @param secure whether to send the cookie over a secure channel only
  * @return the modified {@link CookieBuilder}
  */
@@ -94,15 +98,51 @@ public abstract class CookieBuilder
 this.secure = secure;
 return this;
 }
-
+
+/**
+ * Set the cookie's httpOnly mode.
+ *
+ * @param httpOnly prevents javascript access to this cookie
+ * @return the modified {@link CookieBuilder}
+ */
+public CookieBuilder setHttpOnly(boolean httpOnly)
+{
+this.httpOnly = httpOnly;
+return this;
+}
+
+/**
+ * Version 0 complies with the original Netscape cookie specification.
+ * Version 1 complies with RFC 2109 (experimental)
+ *
+ * @param version number
+ * @return the modified {@link CookieBuilder}
+ */
+public CookieBuilder setVersion(int version) {
+this.version = version;
+return this;
+}
+
+/**
+ * Comments are not supported by version 0 (the default) cookies
+ *
+ * @param comment for cookie
+ * @return the modified {@link CookieBuilder}
+ */
+public CookieBuilder setComment(String comment) {
+this.comment = comment;
+return this;
+}
+
+
 /**
  * Sets defaults and writes the cookie to the client.
  */
 public abstract void write();
-
+
 /**
  * Deletes the cookie.
  */
 public abstract void delete();
-
+
 }

http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/f161aa89/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
--
diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
index 78a3487..495d2c9 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
@@ 

[jira] [Closed] (TAP5-2327) The Cookies interface should provide an option to mark cookies as httpOnly

2016-07-13 Thread Jochen Kemnade (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2327?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade closed TAP5-2327.

   Resolution: Fixed
 Assignee: Jochen Kemnade
Fix Version/s: 5.5.0

> The Cookies interface should provide an option to mark cookies as httpOnly
> --
>
> Key: TAP5-2327
> URL: https://issues.apache.org/jira/browse/TAP5-2327
> Project: Tapestry 5
>  Issue Type: New Feature
>  Components: tapestry-core
>Affects Versions: 5.3.7, 5.4
>Reporter: Martin Schneider
>Assignee: Jochen Kemnade
>  Labels: desired_for_5.5, patch
> Fix For: 5.5.0
>
> Attachments: 
> 0001-TAP-2327-add-httpOnly-method-to-support-Servlet-3.0.patch, 
> 0001-TAP-2327-add-support-for-httpOnly-cookies-and-settin.patch, 
> 0002-TAP-2327-add-support-for-version-and-comment.patch
>
>
> Since Servlet 3.0 there is an option to mark cookies as httpOnly via 
> javax.servlet.http.Cookie.setHttpOnly(boolean). There should be an option to 
> use that in org.apache.tapestry5.services.Cookies. In 5.3.7 the default 
> implementation does not set the httpOnly flag.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


tapestry-5 git commit: TAP5-2327: fix NullPointerException

2016-07-13 Thread jkemnade
Repository: tapestry-5
Updated Branches:
  refs/heads/master f161aa89b -> e048d9542


TAP5-2327: fix NullPointerException


Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/e048d954
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/e048d954
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/e048d954

Branch: refs/heads/master
Commit: e048d9542c1174d00363771ecdc74b46e2962ff2
Parents: f161aa8
Author: Jochen Kemnade 
Authored: Thu Jul 14 08:08:44 2016 +0200
Committer: Jochen Kemnade 
Committed: Thu Jul 14 08:08:44 2016 +0200

--
 .../org/apache/tapestry5/internal/services/CookiesImpl.java | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/e048d954/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
--
diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
index 495d2c9..e9bfd0b 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CookiesImpl.java
@@ -140,7 +140,10 @@ public class CookiesImpl implements Cookies
 cookie.setComment(comment);
 }
 
-cookie.setHttpOnly(httpOnly);
+if (httpOnly != null)
+{
+cookie.setHttpOnly(httpOnly);
+}
 
 cookieSink.addCookie(cookie);
 }



[jira] [Commented] (TAP5-2327) The Cookies interface should provide an option to mark cookies as httpOnly

2016-07-13 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15376379#comment-15376379
 ] 

ASF subversion and git services commented on TAP5-2327:
---

Commit e048d9542c1174d00363771ecdc74b46e2962ff2 in tapestry-5's branch 
refs/heads/master from [~jkemnade]
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=e048d95 ]

TAP5-2327: fix NullPointerException


> The Cookies interface should provide an option to mark cookies as httpOnly
> --
>
> Key: TAP5-2327
> URL: https://issues.apache.org/jira/browse/TAP5-2327
> Project: Tapestry 5
>  Issue Type: New Feature
>  Components: tapestry-core
>Affects Versions: 5.3.7, 5.4
>Reporter: Martin Schneider
>Assignee: Jochen Kemnade
>  Labels: desired_for_5.5, patch
> Fix For: 5.5.0
>
> Attachments: 
> 0001-TAP-2327-add-httpOnly-method-to-support-Servlet-3.0.patch, 
> 0001-TAP-2327-add-support-for-httpOnly-cookies-and-settin.patch, 
> 0002-TAP-2327-add-support-for-version-and-comment.patch
>
>
> Since Servlet 3.0 there is an option to mark cookies as httpOnly via 
> javax.servlet.http.Cookie.setHttpOnly(boolean). There should be an option to 
> use that in org.apache.tapestry5.services.Cookies. In 5.3.7 the default 
> implementation does not set the httpOnly flag.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)