users@jaxb.java.net

Re: com.sun.tools.xjc.outline.Aspect -> com.sun.tools.xjc.model.Aspect

From: Iaroslav Savytskyi <Iaroslav.Savytskyi_at_oracle.com>
Date: Fri, 12 Dec 2014 17:50:53 +0100

Hi, Alexey,

You are right. Unfortunately we have so much open API.

I’ll try to return Aspect back.


Yarda

> On 12 Dec 2014, at 10:10, Aleksei Valikov <valikov_at_gmx.net> wrote:
>
> Hi,
>
> I'm not sure my message got through to the dev ML, I hope it's OK to cc to the users ML.
>
> Best wishes,
> Alexey
>
>
> ---------- Forwarded message ----------
> From: Aleksei Valikov <valikov_at_gmx.net>
> Date: Thu, Dec 11, 2014 at 10:47 PM
> Subject: com.sun.tools.xjc.outline.Aspect -> com.sun.tools.xjc.model.Aspect
> To: dev_at_jaxb.java.net
>
> Hi,
>
> I think there's a problem with 2.2.11.
>
> I've just got this issue:
>
> https://github.com/highsource/maven-jaxb2-plugin/issues/24
>
> In essense the problem is that with the upgrade to 2.2.11 JAXB plugins which used the Aspect class fail as they use com.sun.tools.xjc.outline.Aspect class which was moved to com.sun.tools.xjc.model in 2.2.11.
>
> Now the effect of this is that some (a lot of ?) plugins will become incompatible with 2.2.11. The thing is, many of the plugins were written a long time ago and are not actively maintained - though still usable. If not the refactoring, these plugins would've lived further on, but now they'll have to die. I believe this is a significant damage to the JAXB2 plugin ecosystem.
>
> Next, until 2.2.11 most plugins were somewhat well 2.0 - 2.1 - 2.2 compatible. And people do use JAXB 2.1.x still pretty often. I'm not sure what the exact reasons are, but they do.
> The introduced refactoring will break this compatibility. Plugins will be either 2.2.x or 2.1.x compatible, not both (unless you'll apply the refactoring in 2.1.x as well).
>
> I am not quite sure that these consequences were clear when the refactoring was applied. The effects on JAXB plugins aren't really good. This might be breaking a lot of builds. I'm really not sure if it's worth it.
>
> Now there are following options:
>
> * Revert the refactoring (until it's too late). This will only affect plugins which followed the change in 2.2.11, which can't be too many. And if they followed this change this would mean that they're actively maintained and will also follow the reversion.
> * Leave everything as is.
> * Leave everything as is in 2.2.x but apply the same refactoring in 2.1.x as well.
> * Maybe there's some hacky technical way to "alias" com.sun.tools.xjc.model.Aspect as com.sun.tools.xjc.outline.Aspect?
>
> Please let me know, what you think and what the plan would be - this will influence the advise I'll be giving to the users.
>
> Best wishes,
> Alexey