Well I always use include, if I make heavy usage of reflection or it I want to 
add automation instrumentation for UI frontend tests.

So reading your last post it seems as if you would agree with the way my matrix 
is constructed? Keep in mind that the non-bold parts are the default way maven 
does things.

The theme scope is actually a typical compile scope, just that it is a marker 
for flexmojos to see which dependency should be explicitly passed to the 
compiler as theme.

Chris

________________________________________
Von: Frédéric THOMAS <webdoubl...@hotmail.com>
Gesendet: Dienstag, 10. Februar 2015 11:38
An: dev@flex.apache.org
Betreff: RE: AW: Flex resolution of transitive dependencies

Note on what I just said.
Even though to me it would be ideal as I described it, now I'm thinking about a 
little bit more, I wonder if it could work every time, I remember for 
'included', at time I wasn't able to use it because of some package/name 
collisions, the compiler was complaining and I had to change my plan, so I 
wonder if others types of issues could occur changing the linkage the library 
creator has set.
Do you think it is something crazy to have a flag in FM to resolve the 
transitive deps "as is" or force them as declared by the end user ?

Thanks
Frédéric THOMAS

> From: webdoubl...@hotmail.com
> To: dev@flex.apache.org
> Subject: RE: AW: Flex resolution of transitive dependencies
> Date: Tue, 10 Feb 2015 10:14:41 +0000
>
> Hi Chris,
> So, to me the optimal usage would be to translate the transitive dependencies 
> scopes as set in the user pom dependencies declaration, eg. If my dependency 
> declares my lib as RSL, I want all transitive dependencies be declared as 
> such, idem for included, compile, provided and test (can't remember either I 
> did any usage of runtime with Flex).
> If I want another form of linkage for a given transitive dependency, I use 
> the exclude tag from the its parent (the one I declared) and declare apart 
> (in my pom) this transitive dependency with the linkage I want (this extra 
> top declaration must win in term of version, classifier and scope relative to 
> the transitive one).
> Note: theme has not been mention and is a flexmojo linkage only and therefore 
> has no equivalent for the compiler but if you want fix the  way the 
> resolution is done, I guess you should check it still work as expected in 
> case it has transitive dependencies too, right ?
> Is it the same usage for you too ?
>
> Thanks,
> Frédéric THOMAS
>
> > From: christofer.d...@c-ware.de
> > To: dev@flex.apache.org
> > Subject: AW: Flex resolution of transitive dependencies
> > Date: Mon, 9 Feb 2015 18:23:01 +0000
> >
> > Hi Guys ;-)
> >
> > Ok ... let me explain a little more in detail :-)
> >
> > In Flex we have different scopes in which we link other libraries:
> > - compile (the default linking that included only the classes actually 
> > referenced)
> > - rsl (which doesn't include a single class but references them externally)
> > - included (which includes all of the classes in the other library)
> > - provided (don't include anything, but expect it to be there ... usually 
> > this is the playerglobal and airglobal)
> > - runtime (well ... haven't come across this ;-) )
> > - test (dependency only used by test-classes ... things like FlexUnit etc. )
> >
> > In maven you define the dependencies for each artifact. If for example Lib 
> > A references Lib B and you include a compile dependency to Lib A in your 
> > project, you also get a transitive compile dependency to Lib B without 
> > explicitly asking for it.
> >
> > Same with a test-scoped dependency, but with the difference that Maven adds 
> > all compile dependencies of the referenced test-lib as test scoped 
> > dependencies. Immagine a mock framework referencing other libs. So if you 
> > add a test-dependency to this mock lib, you also add the dependencies of 
> > this mock lib to the test classpath.
> >
> > So far so good for the scopes defined in maven. Unfortunately we also have 
> > "include" and "rsl" (I'll ignore caching as we no longer have this). Maven 
> > sort of drops the ball here as the scopes are no Maven scopes. So I need to 
> > manually set the scopes correctly.
> >
> > In the matrix on the Wiki page in the left column I have the scope of the 
> > dependency and in the other columns I define the scope I should translate 
> > transitive dependencies to. So for example if I have a "rsl" dependency on 
> > Lib A and Lib a defines a "compile" dependency to Lib B, then this 
> > dependency should be added as "rsl" dependency too. If I have a "compile" 
> > dependency to Lib A and that has a "rsl" dependency to Lib B, then I should 
> > add an "rsl" dependency to Lib B and so on ... is this a little more clear 
> > now?
> >
> > I guess you have to get used to thinking maven as with Ant you usually 
> > throw everything into the same pot ... eclipse doesn't even distinguish 
> > between a compile and a test classpath :-(
> >
> > Chris
> >
> >
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Frédéric THOMAS [mailto:webdoubl...@hotmail.com]
> > Gesendet: Montag, 9. Februar 2015 17:34
> > An: dev@flex.apache.org
> > Betreff: RE: Flex resolution of transitive dependencies
> >
> > Hi Chris,
> > I guess this non-terminated sentence from the wiki doesn't help to 
> > understand what you are asking :-)Can you elaborate ?
> > "Left column of this table is the scope of the dependency, the other 
> > columns define the"
> >
> > Frédéric THOMAS
> >
> > > From: christofer.d...@c-ware.de
> > > To: dev@flex.apache.org
> > > Subject: Flex resolution of transitive dependencies
> > > Date: Sun, 8 Feb 2015 12:33:18 +0000
> > >
> > > Since Maven 3.1 a bug has been fixed that we were relying on for building 
> > > Flex applications. This caused any transitive dependencies of "rsl", 
> > > "cache" and "included" scoped dependencies to be omitted from the build. 
> > > I am currently extending FlexMojos to manually handle the flex scopes. 
> > > But I am not quite sure about all scenarios. I created a wiki page with a 
> > > table containig the scopes. The ones I'm quite sure about are bold and 
> > > blue, the ones I'm not sure about are orange.
> > >
> > > https://cwiki.apache.org/confluence/display/FLEX/Flex+Maven+Dependency+Resolution
> > >
> > > It would be good if you guys could waste some of your brain CPU cycles to 
> > > evaluate this table. I would then implement the manual resolution.
> > >
> > > Chris
> >
>

Reply via email to