Re: [ANNOUNCEMENT] Tapestry 5.6.2 released
On Thu, Apr 8, 2021 at 2:49 AM Ben Weidig wrote: > Hi! > Hello! > even though I've mentioned the signature changes as a risk in the ticket, > it slipped my mind when it got merged into 5.6.x and not just 5.7. > The merge on 5.6.x is on me and I apologize for that. Considering the breaking changes, it shouldn't have been done. > There are 2 signature changes in JSONObject to match the Map interface: > > * Object get(String name) -> Object get(Object name) > * JSONObject putAll(Map newProperties) -> void putAll(Map extends String, ? extends Object> newProperties) > > The first one could have been augmented with the previous one as > @Deprecated, but the second one wouldn't work due to type erasure, so it > would've been a breaking change either way. > > If you like I could make the changes to the release notes, and maybe wrote > a few sentences about the JSON module. And I could update the Type Coercion > page with the new JSR310 coercers. > Please do it. > But I don't know how to edit the project page... > Basically, go to https://cwiki.apache.org/confluence/, log in with your ASF credentials, then go here: https://cwiki.apache.org/confluence/display/TAPESTRY/Home. From there, you can click on links or use search to find specific pages. You should already have edition permissions. Cheers! > > Ben > > > On Wed, Apr 7, 2021 at 11:43 PM Thiago H. de Paula Figueiredo < > thiag...@gmail.com> wrote: > > > On Wed, Mar 31, 2021 at 1:40 PM Dmitry Gusev > > wrote: > > > > > Hello, > > > > > > > Hello! > > > > > > > I'm upgrading one of our apps to latest 5.6.3 and found that this > release > > > broke binary compatibility after tapestry-json improvements: > > > > > > https://issues.apache.org/jira/browse/TAP5-2640 > > > > > > Libraries compiled with < 5.6.2 _and_ using JSONObject class, > > > namely JSONObject#get(String), will fail with NoSuchMethodError at > > runtime. > > > > > > > The changes are indeed mentioned in > > https://tapestry.apache.org/release-notes-562.html, but I didn't know > they > > would have binary compatibility broken. I'm sorry for that. > > > > > > > > > > Such libraries will need to be recompiled using 5.6.2+ > > > > > > Release notes for 5.6.2 miss this detail. > > > > > > On Wed, Feb 24, 2021 at 3:01 PM Thiago H. de Paula Figueiredo < > > > thiag...@gmail.com> wrote: > > > > > > > Tapestry 5.6.2 is a drop-in replacement for Tapestry 5.4, 5.5 and 5.6 > > > > releases. It's a recommended upgrade for 5.6.1 and 5.6.0. To upgrade, > > > just > > > > update the dependency in your build configuration (Maven POM, Gradle > > > build > > > > script, etc.) – or Download the new JAR file -- and the new version > > will > > > > just work. However, please review the How to Upgrade instructions > > before > > > > upgrading. > > > > > > > > The most interesting improvement is TAP5-2640: better exceptions in > > > > tapestry-json code, plus JSONArray now implementing Collection and > > > > JSONObject implementing Map. > > > > > > > > Full details at https://tapestry.apache.org/release-notes-562.html. > > > > > > > > Thanks for everyone involved in this release! > > > > > > > > Happy coding! > > > > > > > > -- > > > > Thiago > > > > > > > > > > > > > -- > > > Dmitry Gusev > > > > > > AnjLab Team > > > http://anjlab.com > > > > > > > > > -- > > Thiago > > > -- Thiago
Re: [ANNOUNCEMENT] Tapestry 5.6.2 released
Hi! even though I've mentioned the signature changes as a risk in the ticket, it slipped my mind when it got merged into 5.6.x and not just 5.7. There are 2 signature changes in JSONObject to match the Map interface: * Object get(String name) -> Object get(Object name) * JSONObject putAll(Map newProperties) -> void putAll(Map newProperties) The first one could have been augmented with the previous one as @Deprecated, but the second one wouldn't work due to type erasure, so it would've been a breaking change either way. If you like I could make the changes to the release notes, and maybe wrote a few sentences about the JSON module. And I could update the Type Coercion page with the new JSR310 coercers. But I don't know how to edit the project page... Ben On Wed, Apr 7, 2021 at 11:43 PM Thiago H. de Paula Figueiredo < thiag...@gmail.com> wrote: > On Wed, Mar 31, 2021 at 1:40 PM Dmitry Gusev > wrote: > > > Hello, > > > > Hello! > > > > I'm upgrading one of our apps to latest 5.6.3 and found that this release > > broke binary compatibility after tapestry-json improvements: > > > > https://issues.apache.org/jira/browse/TAP5-2640 > > > > Libraries compiled with < 5.6.2 _and_ using JSONObject class, > > namely JSONObject#get(String), will fail with NoSuchMethodError at > runtime. > > > > The changes are indeed mentioned in > https://tapestry.apache.org/release-notes-562.html, but I didn't know they > would have binary compatibility broken. I'm sorry for that. > > > > > > Such libraries will need to be recompiled using 5.6.2+ > > > > Release notes for 5.6.2 miss this detail. > > > > On Wed, Feb 24, 2021 at 3:01 PM Thiago H. de Paula Figueiredo < > > thiag...@gmail.com> wrote: > > > > > Tapestry 5.6.2 is a drop-in replacement for Tapestry 5.4, 5.5 and 5.6 > > > releases. It's a recommended upgrade for 5.6.1 and 5.6.0. To upgrade, > > just > > > update the dependency in your build configuration (Maven POM, Gradle > > build > > > script, etc.) – or Download the new JAR file -- and the new version > will > > > just work. However, please review the How to Upgrade instructions > before > > > upgrading. > > > > > > The most interesting improvement is TAP5-2640: better exceptions in > > > tapestry-json code, plus JSONArray now implementing Collection and > > > JSONObject implementing Map. > > > > > > Full details at https://tapestry.apache.org/release-notes-562.html. > > > > > > Thanks for everyone involved in this release! > > > > > > Happy coding! > > > > > > -- > > > Thiago > > > > > > > > > -- > > Dmitry Gusev > > > > AnjLab Team > > http://anjlab.com > > > > > -- > Thiago >
Re: [ANNOUNCEMENT] Tapestry 5.6.2 released
On Wed, Mar 31, 2021 at 1:40 PM Dmitry Gusev wrote: > Hello, > Hello! > I'm upgrading one of our apps to latest 5.6.3 and found that this release > broke binary compatibility after tapestry-json improvements: > > https://issues.apache.org/jira/browse/TAP5-2640 > > Libraries compiled with < 5.6.2 _and_ using JSONObject class, > namely JSONObject#get(String), will fail with NoSuchMethodError at runtime. > The changes are indeed mentioned in https://tapestry.apache.org/release-notes-562.html, but I didn't know they would have binary compatibility broken. I'm sorry for that. > > Such libraries will need to be recompiled using 5.6.2+ > > Release notes for 5.6.2 miss this detail. > > On Wed, Feb 24, 2021 at 3:01 PM Thiago H. de Paula Figueiredo < > thiag...@gmail.com> wrote: > > > Tapestry 5.6.2 is a drop-in replacement for Tapestry 5.4, 5.5 and 5.6 > > releases. It's a recommended upgrade for 5.6.1 and 5.6.0. To upgrade, > just > > update the dependency in your build configuration (Maven POM, Gradle > build > > script, etc.) – or Download the new JAR file -- and the new version will > > just work. However, please review the How to Upgrade instructions before > > upgrading. > > > > The most interesting improvement is TAP5-2640: better exceptions in > > tapestry-json code, plus JSONArray now implementing Collection and > > JSONObject implementing Map. > > > > Full details at https://tapestry.apache.org/release-notes-562.html. > > > > Thanks for everyone involved in this release! > > > > Happy coding! > > > > -- > > Thiago > > > > > -- > Dmitry Gusev > > AnjLab Team > http://anjlab.com > -- Thiago
Re: [ANNOUNCEMENT] Tapestry 5.6.2 released
Hello, I'm upgrading one of our apps to latest 5.6.3 and found that this release broke binary compatibility after tapestry-json improvements: https://issues.apache.org/jira/browse/TAP5-2640 Libraries compiled with < 5.6.2 _and_ using JSONObject class, namely JSONObject#get(String), will fail with NoSuchMethodError at runtime. Such libraries will need to be recompiled using 5.6.2+ Release notes for 5.6.2 miss this detail. On Wed, Feb 24, 2021 at 3:01 PM Thiago H. de Paula Figueiredo < thiag...@gmail.com> wrote: > Tapestry 5.6.2 is a drop-in replacement for Tapestry 5.4, 5.5 and 5.6 > releases. It's a recommended upgrade for 5.6.1 and 5.6.0. To upgrade, just > update the dependency in your build configuration (Maven POM, Gradle build > script, etc.) – or Download the new JAR file -- and the new version will > just work. However, please review the How to Upgrade instructions before > upgrading. > > The most interesting improvement is TAP5-2640: better exceptions in > tapestry-json code, plus JSONArray now implementing Collection and > JSONObject implementing Map. > > Full details at https://tapestry.apache.org/release-notes-562.html. > > Thanks for everyone involved in this release! > > Happy coding! > > -- > Thiago > -- Dmitry Gusev AnjLab Team http://anjlab.com