[ 
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)

Reply via email to