I agree, the way that I have to enter the pom under 2.0.9 is now correctly reflected by 3.x.
However, the second part of the issue that I found is that the @required is beting totally ignored! 2.x enforces it, 3.x does not, it should. That I believe does need to be fixed, and that should be the simplest of test cases. -Chris On Tue, May 7, 2013 at 10:17 PM, Stuart McCulloch <mccu...@gmail.com> wrote: > On 6 May 2013, at 23:49, Chris Graham wrote: > > > Looking at that issue, if the issue was meant to deal with the example > > given, ie, and array of strings, then the issue is most certainly not > > fixed, as it is my exact case. > > The issue addressed making the behaviour more consistent, which it does - > iirc the same XML configuration injected into a list would give a list with > one element, so for the array case I'd expect a one element array. > > > Either way, as that behaviour is in published versions, my plugin needs > to > > be able to deal with both cases. > > > > From my example, > > <msgSets> > > <msgSet /> > > </msgSets> > > > > > > It is giving me precisely what the pom says. An arrary, of one null > element. > > > > It just surprised me that the behaviour changed when compared to 2.x. > Were > > I got a null array. > > Various undefined or inconsistent behaviour was cleaned up and made > consistent rather than carry-over broken/odd behaviour. > > > it's really up to you guys to decide if it's a) worth 'fixing' or if that > > is indeed the desired behaviour. > > I don't mind fixing bugs as long as there a clear testcase, but I think it > would be a mistake to start special-casing injected arrays vs collections. > > > I'll see if I can get <msgSets/> to pass parsing, as that should also > work. > > > > -Chris > > > > > > > > On Tue, May 7, 2013 at 1:25 PM, Stuart McCulloch <mccu...@gmail.com> > wrote: > > > >> Actually I think it might be a side-effect of the following > >> feature/improvement made for M3: > >> > >> https://issues.sonatype.org/browse/SISU-58 > >> > >> where the code to handle arrays was made more consistent wrt. the > handling > >> of collections. > >> > >> On 6 May 2013, at 12:35, Hervé BOUTEMY wrote: > >> > >>> looks like a subtle change in injection when moving from Plexus to > Guice > >>> > >>> Regards, > >>> > >>> Hervé > >>> > >>> Le lundi 6 mai 2013 23:06:49 Chris Graham a écrit : > >>>> Hey All. > >>>> > >>>> I'm not sure if I've found a regression issue with Maven 3.0.x (tried > >> with > >>>> all versions beta-1 onwards to 3.0.5) or not. V3.x behaves differently > >> to > >>>> 2.09, 2.0.11 and 2.2.1. > >>>> > >>>> I've written a plugin for WebSphere Message Broker; basically it's a > >>>> wrapper for the underlying mqsicreatebar tool. > >>>> > >>>> Amongst other things, it takes zero or more message sets and message > >> flows. > >>>> To handle this, I defined the parameters as an array. > >>>> > >>>> Here is the snippet from the plugin's source: > >>>> /** > >>>> * The message flows to be added to the bar file. > >>>> * @parameter expression="${msgFlows}" > >>>> * @required > >>>> */ > >>>> private String[] msgFlows; > >>>> > >>>> /** > >>>> * The message sets to be added to the bar file. > >>>> * @parameter expression="${msgSets}" > >>>> * @required > >>>> */ > >>>> private String[] msgSets; > >>>> > >>>> and here is an example configuration section from a pom that uses the > >>>> plugin: > >>>> > >>>> <configuration> > >>>> <skipApplyOverrides>false</skipApplyOverrides> > >>>> <isV60>true</isV60> > >>>> <workspace>${wmbtk.workspace.root}/24a</workspace> > >>>> <msgFlows> > >>>> > >>>> <msgFlow>MFP_Project/com/blah/MFL_DiagFlow.msgflow</msgFlow> > >>>> </msgFlows> > >>>> <msgSets> > >>>> <msgSet /> > >>>> </msgSets> > >>>> </configuration> > >>>> > >>>> So we have one message flow, but no message sets. > >>>> > >>>> Here is where the differences are seen. > >>>> > >>>> Maven 2.0.9, 2.0.11 and 2.2.1 will initialise the msgSets as null. > >>>> > >>>> Maven 3.0 (beta-1 to 3.0.5) will initialise msgSets as a single > element > >> of > >>>> null. > >>>> > >>>> My question boils down to: is this the desired behaviour? > >>>> > >>>> I've had to adjust my code to work under Maven 3.x (which I didn't > think > >>>> that I had too). > >>>> > >>>> From memory, I can not supply an empty <msgSets/> element (but I need > to > >>>> check that). > >>>> > >>>> -Chris > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > >>> For additional commands, e-mail: dev-h...@maven.apache.org > >>> > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > >> For additional commands, e-mail: dev-h...@maven.apache.org > >> > >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org > >