[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread Hudson (JIRA)

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

Hudson commented on TAP5-2575:
--

FAILURE: Integrated in Jenkins build tapestry-trunk-freestyle #1609 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1609/])
TAP5-2575: another JavaDoc fix (jochen.kemnade: rev 
ea4db57b91fc8153a553f78c7a10b043080d4ce9)
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONArray.java


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>Assignee: Jochen Kemnade
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread ASF subversion and git services (JIRA)

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

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

Commit 48586f306f9244940a8441561709770a79e54e14 in tapestry-5's branch 
refs/heads/5.4.x from [~jkemnade]
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=48586f3 ]

TAP5-2575: another JavaDoc fix


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>Assignee: Jochen Kemnade
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread Hudson (JIRA)

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

Hudson commented on TAP5-2575:
--

FAILURE: Integrated in Jenkins build tapestry-trunk-freestyle #1608 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1608/])
TAP5-2575: fix topos in JavaDoc comments (jochen.kemnade: rev 
4305047ef912ffd969d70dc260356a103ac3746a)
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONArray.java


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>Assignee: Jochen Kemnade
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread ASF subversion and git services (JIRA)

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

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

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

TAP5-2575: another JavaDoc fix


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>Assignee: Jochen Kemnade
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread ASF subversion and git services (JIRA)

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

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

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

TAP5-2575: fix topos in JavaDoc comments


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread ASF subversion and git services (JIRA)

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

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

Commit 2567aa9111a36ba332d9da32cb1c4d5ff2c74051 in tapestry-5's branch 
refs/heads/5.4.x from [~jkemnade]
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=2567aa9 ]

TAP5-2575: fix topos in JavaDoc comments


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-20 Thread ASF subversion and git services (JIRA)

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

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

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

TAP5-2575: rewrite some of tapestry-json based upon code from 
https://github.com/tdunning/open-json


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Fix For: 5.5.0, 5.4.2
>
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-09 Thread Hudson (JIRA)

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

Hudson commented on TAP5-2575:
--

FAILURE: Integrated in Jenkins build tapestry-trunk-freestyle #1605 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1605/])
TAP5-2575: rewrite some of tapestry-json based upon code from (jochen.kemnade: 
rev aaa0d550a9853c786bbac224582768218c3da1cd)
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONTokener.java
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONObject.java
* (add) tapestry-json/src/main/java/org/apache/tapestry5/json/JSON.java
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONArray.java
* (add) tapestry-json/src/main/java/org/apache/tapestry5/json/JSONStringer.java
* (edit) tapestry-json/build.gradle
* (edit) tapestry-json/src/main/java/org/apache/tapestry5/json/package-info.java


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-09 Thread ASF subversion and git services (JIRA)

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

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

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

TAP5-2575: rewrite some of tapestry-json based upon code from 
https://github.com/tdunning/open-json


> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch, 
> 0001-TAP5-2575-rewrite-some-of-tapestry-json-based-upon-c.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-08 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

I'm on it.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-08 Thread Bob Harner (JIRA)

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

Bob Harner commented on TAP5-2575:
--

Yes, my original thought was just to copy those 3 classes from open-json, 
changing the package name. It does seem simpler and less bug-prone than writing 
adapter code, even though your patch does seem pretty far along.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-08 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

Oh, we could of course just copy the code from open-json and adapt it to our 
needs. I only ever thought of pulling it in as a dependency.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-07 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

Yes, me too. If we didn't have to ensure compatibility, my preferred solution 
would be to ditch {{tapestry-json}} altogether and just use 
{{javax.json}}/jsonp in Tapestry.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-07 Thread Bob Harner (JIRA)

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

Bob Harner commented on TAP5-2575:
--

Slightly concerned that we're adding another major dependency, replacing what 
was some internal classes that couldn't conflict with user code.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-07 Thread Bob Harner (JIRA)

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

Bob Harner commented on TAP5-2575:
--

Slightly concerned that we're adding another major dependency, replacing what 
was some internal classes that couldn't conflict with user code.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
> Attachments: 0001-TAP5-2575-base-tapestry-json-on-Jackson.patch
>
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-07 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

I've started progress on a Jackson-based implementation. I'll attach a patch in 
case someone's interested.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-06 Thread Ted Dunning (JIRA)

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

Ted Dunning commented on TAP5-2575:
---

You are correct that open json is not a long-term solution.

I, personally, would recommend Jackson. I have tried Gson and while it is 
generally pretty nice, it does eat massive amounts of memory under some 
circumstances.



> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-06 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

{{javax.json}} is meant for immutable JSON, so it's not ideal. And we'd have a 
hard time supporting {{JSONLiteral}}. That's probably an issue with any 
specs-compliant JSON library we might decide to pull in.
I'm beginning to wonder if we should just rewrite {{tapestry-json}} from 
scratch.

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-06 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

Thanks [~mgrigorov], that sounds as if we shouldn't use open-json after all 
since we're looking for a long-term solution and don't have to stay compatible 
to JSON-java.
I'm having a look at https://jsonp.java.net/index.html

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-06 Thread Martin Grigorov (JIRA)

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

Martin Grigorov commented on TAP5-2575:
---

Hi,

You might be interested in this issue at OpenJson: 
https://github.com/tdunning/open-json/issues/11

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions

2017-03-06 Thread Jochen Kemnade (JIRA)

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

Jochen Kemnade commented on TAP5-2575:
--

If we don't want to break any API, I guess we have to use the delegate pattern 
anyway, so we don't *need* to pick an implementation that is close to JSON.org. 
Maybe we should even consider using GSON.
However, I played around with {{open-json}} and it might work, I just don't 
like the fact that it uses the {{org.json}} package. I'm pretty sure that it's 
going to lead to classpath conflicts if we pulled that in.
Another issue is that the {{tapestry-json}} tests make lot of assertions about 
the error messages. If we want to keep these intact, that's probably going to 
be a lot of work.
Also, do we want/have to do this for 5.5 only or do we want/have to do a 5.4.2 
or even a 5.3.9?

> Replace json.org-licensed classes with Apache-compatible versions
> -
>
> Key: TAP5-2575
> URL: https://issues.apache.org/jira/browse/TAP5-2575
> Project: Tapestry 5
>  Issue Type: Task
>  Components: tapestry-json
>Affects Versions: 5.3.8, 5.4.1
>Reporter: Bob Harner
>
> Because of [license issues|https://www.apache.org/legal/resolved#json], we 
> need to replace all json.org-licensed classes with alternative classes having 
> an Apache-approved license. Apache legal has imposed a deadline of April 30, 
> 2017.
> Tapestry apparently includes 3 classes that are, starting in version 5.2, 
> "repackaged, improved (and tested) version of code originally from json.org." 
> These 3 all include D. Crockford's "The Software shall be used for Good, not 
> Evil" statement in the JSON license at the top.
> The 3 classes are:
> * JSONArray.java
> * JSONTokener.java
> * JSONObject.java
> Other Apache projects (including Wicket) have successfully switched to 
> https://github.com/tdunning/open-json, which contains versions of the above 3 
> classes that are purported to be mostly compatible with the current versions 
> from json.org. However, there have been changes to Tapestry's own version 
> since the original copy was made (May 2008 or possibly earlier), and those 
> changes would need to be re-applied. Some examples:
> * TAP5-1153: When in development mode, Tapestry should pretty-print JSON 
> content
> * TAP5-2209 Make JSONObject and JSONArray implement Serializable
> * Make JSONArray.from() not care about what values are stored in Iterable
> * Add a new constructor to JSONObject to make it easier to initalize a 
> JSONObjects key/value pairs (if all strings)
> * Change generics signature for JSONArray.putAll() and JSONObject.putAll()
> * TAP5-2098: Maintain JSONObject keys & values in the order they were added
> * Add a copy() method to JSONObject
> * Add JSONArray.toList()
> * Add JSONArray.putAll()
> * Added remove(int index) to JSONArray
> * TAP5-1970: Make it easier to create JSONObject and JSONArray instances
> * Add JSONObject.toMap()
> * Add JSONObject.in(String) to create (if needed) and return a nested 
> JSONObject
> There are 116 unit tests for the JSON module. A starting point would be to 
> overlay the open-json classes and see what tests fail.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)