[jira] [Commented] (TAP5-2575) Replace json.org-licensed classes with Apache-compatible versions
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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)