Hello,
I'd like to push json-simple 3.1.1 into unstable, but I'm not sure how I should handle the transition. The 3.x releases are not backward compatible with 2.x. A whole set of deprecated classes has been removed:* Deprecated JSONParse and JSONValue in favor of Jsoner. * Deprecated JSONStreamAware and JSONAware in favor of Jsonable. * Deprecated JSONObject in favor of JsonObject. * Deprecated JSONArray in favor of JsonArray.
Maybe it wouldn't be too difficult to patch the dependencies to
work with 3.x release? There are ~15 source packages, so I'd say
it should be doable provided the API changes are not too drastic.
This would allow to retain the same binary package name.
I think about renaming the binary package to libjson-simple1-java but keeping the jar file name as json-simple.jar. It implies setting Conflicts: libjson-simple-java.
Name libjson-simple3-java would be better, as it reflects the upstream version. However, I would recommend against having conflicting JAR names, as this would effectively forbid coexistence of packages depending on different versions of json-simple.
If having both v2 and v3 JARs could not be avoided, I'd suggest
providing /usr/share/java/json-simple-2.x.jar in
libjson-simple-java and /usr/share/java/json-simple-3.x.jar in
libjson-simple3-java. Packages junit [1] and junit4 [2] are made
to coexist in a similar manner.
[1] https://packages.debian.org/sid/all/junit/filelist
[2] https://packages.debian.org/sid/all/junit4/filelist
Hope this helps,
Andrius
Attachment:
signature.asc
Description: OpenPGP digital signature