You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@flex.apache.org by Frédéric THOMAS <we...@hotmail.com> on 2014/12/05 12:40:08 UTC

[FlexMojos] Compatible Model Validator

Hi,
For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
Frédéric THOMAS
[1] https://github.com/doublefx/flexmojos-compatible-model-validator 		 	   		  

RE: AW: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Yeah, I added that recently, thinking it was better than checking if the file was present from inside a pom profile :-)

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 12 Dec 2014 10:56:55 +0000
> 
> Ah ... you use it to auto-install the lib ... I thought it were an alternative to copying to the lib/ext directory.
> 
> Chris
> 
> ________________________________________
> Von: Frédéric THOMAS <we...@hotmail.com>
> Gesendet: Freitag, 12. Dezember 2014 11:22
> An: users@flex.apache.org
> Betreff: RE: AW: [FlexMojos] Compatible Model Validator
> 
> Hi Chris,
> > I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. > http://maven.apache.org/guides/mini/guide-using-extensions.html
> Not only, "and plug-ins which provide lifecycle enhancements" from the same source, which is what I do, one of the component has a role = AbstractMavenLifecycleParticipant.class, I use it to install the extension.
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 12 Dec 2014 08:57:16 +0000
> >
> > Well after about 2 Weeks of not being able to invest one second in Flex & FlexMojos today I'll be able to :-)
> >
> > One thing th Flexmojos FlexJS support is currently still lacking, is that Flexmojos enforces some rules on the poms. I will have to greatly change these and will probably add my configuration validation support in there. I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. http://maven.apache.org/guides/mini/guide-using-extensions.html
> >
> >
> > Chris
> >
> >
> >
> > ________________________________________
> > Von: Christofer Dutz <ch...@c-ware.de>
> > Gesendet: Dienstag, 9. Dezember 2014 10:45
> > An: users@flex.apache.org
> > Betreff: AW: [FlexMojos] Compatible Model Validator
> >
> > The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Di., Dez. 9, 2014 10:34
> >
> > last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Tue, 9 Dec 2014 09:24:14 +0000
> > >
> > > Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> > >
> > > Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Mo., Dez. 8, 2014 16:27
> > >
> > > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > > You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> > > import groovy.util.XmlSlurper
> > >
> > > import java.nio.file.Files;
> > >
> > > def destinationDirectory = new File(project.properties.rslDestination)
> > >
> > > if (!destinationDirectory.exists())
> > >     destinationDirectory.mkdir()
> > >
> > > project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> > >     def artifact = it;
> > >     println "Copying Flex resources for: " + artifact
> > >
> > >     def configFile = new File(settings.localRepository + File.separator +
> > >             artifact.groupId.replace(".", File.separator) + File.separator +
> > >             artifact.artifactId + File.separator +
> > >             artifact.version + File.separator +
> > >             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> > >
> > >     def root = new XmlSlurper().parse(configFile)
> > >
> > >     def rslPathNodes = root["runtime-shared-library-path"];
> > >
> > >     rslPathNodes.each() {
> > >         def rslPath = it["path-element"]
> > >         def rslUrl = it["rsl-url"][0]
> > >
> > >         def rslUrlString =  rslUrl.toString()
> > >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> > >
> > >         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
> > >         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> > >
> > >         if (!destinationRslFile.exists()) {
> > >             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
> > >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> > >         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
> > >     }
> > > }
> > >     <plugin>
> > >         <groupId>org.codehaus.gmaven</groupId>
> > >         <artifactId>gmaven-plugin</artifactId>
> > >
> > >         <executions>
> > >             <execution>
> > >                 <id>copy-flex-resources</id>
> > >                 <phase>generate-resources</phase>
> > >                 <goals>
> > >                     <goal>execute</goal>
> > >                 </goals>
> > >                 <configuration>
> > >                     <properties>
> > >                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> > >                         <configClassifier>${build.profile.id}-configs</configClassifier>
> > >                     </properties>
> > >                     <classpath>
> > >                         <element>
> > >                             <groupId>org.codehaus.groovy</groupId>
> > >                             <artifactId>groovy-xml</artifactId>
> > >                             <version>2.1.0-rc-2</version>
> > >                         </element>
> > >                     </classpath>
> > >                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> > >                 </configuration>
> > >             </execution>
> > >         </executions>
> > >     </plugin>
> > >
> > > <dependencies>
> > >     <dependency>
> > >         <groupId>com.*.blabla</groupId>
> > >         <artifactId>Application</artifactId>
> > >         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
> > >         <type>xml</type>
> > >     </dependency>
> > >
> > >     <dependency>
> > >         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
> > >         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
> > >     </dependency>
> > > </dependencies>
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > > >
> > > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Sa., Dez. 6, 2014 15:54
> > > >
> > > > Hi Chris,
> > > >
> > > > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > > >
> > > > Or I didn't get well your point :-)
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > > >
> > > > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > > > >
> > > > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > > > >
> > > > > Hope this explains what I was thinking of.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 18:33
> > > > >
> > > > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > > >
> > > > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > > >
> > > > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > >
> > > > > > From: webdoublefx@hotmail.com
> > > > > > To: users@flex.apache.org
> > > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > Could be a new goal ?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > >
> > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > To: users@flex.apache.org
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > > >
> > > > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > > >
> > > > > > > Hi Chris,
> > > > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > > > Any better ideas?
> > > > > > >
> > > > > > > Frédéric THOMAS
> > > > > > > [1]<profile>
> > > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > > >     <activation>
> > > > > > >         <file>
> > > > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > > >         </file>
> > > > > > >     </activation>
> > > > > > >     <build>
> > > > > > >         <plugins>
> > > > > > >             <plugin>
> > > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > > >                 <version>2.8</version>
> > > > > > >                 <executions>
> > > > > > >                     <execution>
> > > > > > >                         <id>copy</id>
> > > > > > >                         <phase>validate</phase>
> > > > > > >                         <goals>
> > > > > > >                             <goal>copy</goal>
> > > > > > >                         </goals>
> > > > > > >                         <configuration>
> > > > > > >                             <artifactItems>
> > > > > > >                                 <artifactItem>
> > > > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > > > >                                     <type>jar</type>
> > > > > > >                                     <overWrite>true</overWrite>
> > > > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > > >                                 </artifactItem>
> > > > > > >                             </artifactItems>
> > > > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > > > >                         </configuration>
> > > > > > >                     </execution>
> > > > > > >                 </executions>
> > > > > > >             </plugin>
> > > > > > >             <plugin>
> > > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > > >                 <version>1.4</version>
> > > > > > >                 <executions>
> > > > > > >                     <execution>
> > > > > > >                         <phase>validate</phase>
> > > > > > >                         <goals>
> > > > > > >                             <goal>execute</goal>
> > > > > > >                         </goals>
> > > > > > >                     </execution>
> > > > > > >                 </executions>
> > > > > > >                 <configuration>
> > > > > > >                     <source>
> > > > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > > > >                     </source>
> > > > > > >                 </configuration>
> > > > > > >             </plugin>
> > > > > > >         </plugins>
> > > > > > >     </build>
> > > > > > > </profile>
> > > > > > >
> > > > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > > To: users@flex.apache.org
> > > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > > >
> > > > > > > > Cool Stuff.
> > > > > > > >
> > > > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > > > >
> > > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > > >
> > > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > > >
> > > > > > > > Chris
> > > > > > > >
> > > > > > > > Gesendet mit meinem HTC
> > > > > > > >
> > > > > > > > ----- Reply message -----
> > > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > > >
> > > > > > > > Hi,
> > > > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > > Frédéric THOMAS
> > > > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
 		 	   		  

AW: AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Ah ... you use it to auto-install the lib ... I thought it were an alternative to copying to the lib/ext directory.

Chris

________________________________________
Von: Frédéric THOMAS <we...@hotmail.com>
Gesendet: Freitag, 12. Dezember 2014 11:22
An: users@flex.apache.org
Betreff: RE: AW: [FlexMojos] Compatible Model Validator

Hi Chris,
> I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. > http://maven.apache.org/guides/mini/guide-using-extensions.html
Not only, "and plug-ins which provide lifecycle enhancements" from the same source, which is what I do, one of the component has a role = AbstractMavenLifecycleParticipant.class, I use it to install the extension.

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 12 Dec 2014 08:57:16 +0000
>
> Well after about 2 Weeks of not being able to invest one second in Flex & FlexMojos today I'll be able to :-)
>
> One thing th Flexmojos FlexJS support is currently still lacking, is that Flexmojos enforces some rules on the poms. I will have to greatly change these and will probably add my configuration validation support in there. I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. http://maven.apache.org/guides/mini/guide-using-extensions.html
>
>
> Chris
>
>
>
> ________________________________________
> Von: Christofer Dutz <ch...@c-ware.de>
> Gesendet: Dienstag, 9. Dezember 2014 10:45
> An: users@flex.apache.org
> Betreff: AW: [FlexMojos] Compatible Model Validator
>
> The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Di., Dez. 9, 2014 10:34
>
> last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...
>
> Frédéric THOMAS
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Tue, 9 Dec 2014 09:24:14 +0000
> >
> > Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> >
> > Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Mo., Dez. 8, 2014 16:27
> >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> > import groovy.util.XmlSlurper
> >
> > import java.nio.file.Files;
> >
> > def destinationDirectory = new File(project.properties.rslDestination)
> >
> > if (!destinationDirectory.exists())
> >     destinationDirectory.mkdir()
> >
> > project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> >     def artifact = it;
> >     println "Copying Flex resources for: " + artifact
> >
> >     def configFile = new File(settings.localRepository + File.separator +
> >             artifact.groupId.replace(".", File.separator) + File.separator +
> >             artifact.artifactId + File.separator +
> >             artifact.version + File.separator +
> >             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> >
> >     def root = new XmlSlurper().parse(configFile)
> >
> >     def rslPathNodes = root["runtime-shared-library-path"];
> >
> >     rslPathNodes.each() {
> >         def rslPath = it["path-element"]
> >         def rslUrl = it["rsl-url"][0]
> >
> >         def rslUrlString =  rslUrl.toString()
> >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> >
> >         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
> >         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> >
> >         if (!destinationRslFile.exists()) {
> >             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
> >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> >         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
> >     }
> > }
> >     <plugin>
> >         <groupId>org.codehaus.gmaven</groupId>
> >         <artifactId>gmaven-plugin</artifactId>
> >
> >         <executions>
> >             <execution>
> >                 <id>copy-flex-resources</id>
> >                 <phase>generate-resources</phase>
> >                 <goals>
> >                     <goal>execute</goal>
> >                 </goals>
> >                 <configuration>
> >                     <properties>
> >                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> >                         <configClassifier>${build.profile.id}-configs</configClassifier>
> >                     </properties>
> >                     <classpath>
> >                         <element>
> >                             <groupId>org.codehaus.groovy</groupId>
> >                             <artifactId>groovy-xml</artifactId>
> >                             <version>2.1.0-rc-2</version>
> >                         </element>
> >                     </classpath>
> >                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> >                 </configuration>
> >             </execution>
> >         </executions>
> >     </plugin>
> >
> > <dependencies>
> >     <dependency>
> >         <groupId>com.*.blabla</groupId>
> >         <artifactId>Application</artifactId>
> >         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
> >         <type>xml</type>
> >     </dependency>
> >
> >     <dependency>
> >         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
> >         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
> >     </dependency>
> > </dependencies>
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Sa., Dez. 6, 2014 15:54
> > >
> > > Hi Chris,
> > >
> > > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > >
> > > Or I didn't get well your point :-)
> > >
> > > Frédéric THOMAS
> > >
> > > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > >
> > > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > > >
> > > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > > >
> > > > Hope this explains what I was thinking of.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 18:33
> > > >
> > > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > >
> > > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > >
> > > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > From: webdoublefx@hotmail.com
> > > > > To: users@flex.apache.org
> > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Could be a new goal ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > >
> > > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > >
> > > > > > Hi Chris,
> > > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > > Any better ideas?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > > [1]<profile>
> > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > >     <activation>
> > > > > >         <file>
> > > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > >         </file>
> > > > > >     </activation>
> > > > > >     <build>
> > > > > >         <plugins>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > >                 <version>2.8</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <id>copy</id>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>copy</goal>
> > > > > >                         </goals>
> > > > > >                         <configuration>
> > > > > >                             <artifactItems>
> > > > > >                                 <artifactItem>
> > > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > > >                                     <type>jar</type>
> > > > > >                                     <overWrite>true</overWrite>
> > > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > >                                 </artifactItem>
> > > > > >                             </artifactItems>
> > > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > > >                         </configuration>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >             </plugin>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > >                 <version>1.4</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>execute</goal>
> > > > > >                         </goals>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >                 <configuration>
> > > > > >                     <source>
> > > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > > >                     </source>
> > > > > >                 </configuration>
> > > > > >             </plugin>
> > > > > >         </plugins>
> > > > > >     </build>
> > > > > > </profile>
> > > > > >
> > > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > To: users@flex.apache.org
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > >
> > > > > > > Cool Stuff.
> > > > > > >
> > > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > > >
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > >
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > >
> > > > > > > Hi,
> > > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > Frédéric THOMAS
> > > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > >
> > > > >
> > > >
> > >
> >
>

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Hi Chris,
> I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. > http://maven.apache.org/guides/mini/guide-using-extensions.html
Not only, "and plug-ins which provide lifecycle enhancements" from the same source, which is what I do, one of the component has a role = AbstractMavenLifecycleParticipant.class, I use it to install the extension.

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 12 Dec 2014 08:57:16 +0000
> 
> Well after about 2 Weeks of not being able to invest one second in Flex & FlexMojos today I'll be able to :-)
> 
> One thing th Flexmojos FlexJS support is currently still lacking, is that Flexmojos enforces some rules on the poms. I will have to greatly change these and will probably add my configuration validation support in there. I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. http://maven.apache.org/guides/mini/guide-using-extensions.html
> 
> 
> Chris
> 
> 
> 
> ________________________________________
> Von: Christofer Dutz <ch...@c-ware.de>
> Gesendet: Dienstag, 9. Dezember 2014 10:45
> An: users@flex.apache.org
> Betreff: AW: [FlexMojos] Compatible Model Validator
> 
> The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Di., Dez. 9, 2014 10:34
> 
> last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Tue, 9 Dec 2014 09:24:14 +0000
> >
> > Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> >
> > Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Mo., Dez. 8, 2014 16:27
> >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> > import groovy.util.XmlSlurper
> >
> > import java.nio.file.Files;
> >
> > def destinationDirectory = new File(project.properties.rslDestination)
> >
> > if (!destinationDirectory.exists())
> >     destinationDirectory.mkdir()
> >
> > project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> >     def artifact = it;
> >     println "Copying Flex resources for: " + artifact
> >
> >     def configFile = new File(settings.localRepository + File.separator +
> >             artifact.groupId.replace(".", File.separator) + File.separator +
> >             artifact.artifactId + File.separator +
> >             artifact.version + File.separator +
> >             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> >
> >     def root = new XmlSlurper().parse(configFile)
> >
> >     def rslPathNodes = root["runtime-shared-library-path"];
> >
> >     rslPathNodes.each() {
> >         def rslPath = it["path-element"]
> >         def rslUrl = it["rsl-url"][0]
> >
> >         def rslUrlString =  rslUrl.toString()
> >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> >
> >         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
> >         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> >
> >         if (!destinationRslFile.exists()) {
> >             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
> >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> >         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
> >     }
> > }
> >     <plugin>
> >         <groupId>org.codehaus.gmaven</groupId>
> >         <artifactId>gmaven-plugin</artifactId>
> >
> >         <executions>
> >             <execution>
> >                 <id>copy-flex-resources</id>
> >                 <phase>generate-resources</phase>
> >                 <goals>
> >                     <goal>execute</goal>
> >                 </goals>
> >                 <configuration>
> >                     <properties>
> >                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> >                         <configClassifier>${build.profile.id}-configs</configClassifier>
> >                     </properties>
> >                     <classpath>
> >                         <element>
> >                             <groupId>org.codehaus.groovy</groupId>
> >                             <artifactId>groovy-xml</artifactId>
> >                             <version>2.1.0-rc-2</version>
> >                         </element>
> >                     </classpath>
> >                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> >                 </configuration>
> >             </execution>
> >         </executions>
> >     </plugin>
> >
> > <dependencies>
> >     <dependency>
> >         <groupId>com.*.blabla</groupId>
> >         <artifactId>Application</artifactId>
> >         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
> >         <type>xml</type>
> >     </dependency>
> >
> >     <dependency>
> >         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
> >         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
> >     </dependency>
> > </dependencies>
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Sa., Dez. 6, 2014 15:54
> > >
> > > Hi Chris,
> > >
> > > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > >
> > > Or I didn't get well your point :-)
> > >
> > > Frédéric THOMAS
> > >
> > > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > >
> > > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > > >
> > > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > > >
> > > > Hope this explains what I was thinking of.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 18:33
> > > >
> > > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > >
> > > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > >
> > > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > From: webdoublefx@hotmail.com
> > > > > To: users@flex.apache.org
> > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Could be a new goal ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > >
> > > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > >
> > > > > > Hi Chris,
> > > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > > Any better ideas?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > > [1]<profile>
> > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > >     <activation>
> > > > > >         <file>
> > > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > >         </file>
> > > > > >     </activation>
> > > > > >     <build>
> > > > > >         <plugins>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > >                 <version>2.8</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <id>copy</id>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>copy</goal>
> > > > > >                         </goals>
> > > > > >                         <configuration>
> > > > > >                             <artifactItems>
> > > > > >                                 <artifactItem>
> > > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > > >                                     <type>jar</type>
> > > > > >                                     <overWrite>true</overWrite>
> > > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > >                                 </artifactItem>
> > > > > >                             </artifactItems>
> > > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > > >                         </configuration>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >             </plugin>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > >                 <version>1.4</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>execute</goal>
> > > > > >                         </goals>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >                 <configuration>
> > > > > >                     <source>
> > > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > > >                     </source>
> > > > > >                 </configuration>
> > > > > >             </plugin>
> > > > > >         </plugins>
> > > > > >     </build>
> > > > > > </profile>
> > > > > >
> > > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > To: users@flex.apache.org
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > >
> > > > > > > Cool Stuff.
> > > > > > >
> > > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > > >
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > >
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > >
> > > > > > > Hi,
> > > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > Frédéric THOMAS
> > > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > >
> > > > >
> > > >
> > >
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Well after about 2 Weeks of not being able to invest one second in Flex & FlexMojos today I'll be able to :-)

One thing th Flexmojos FlexJS support is currently still lacking, is that Flexmojos enforces some rules on the poms. I will have to greatly change these and will probably add my configuration validation support in there. I remember a post of you using the extensions inside the pom ... as far as I understood the thing this only works for adding wagon providers to maven. http://maven.apache.org/guides/mini/guide-using-extensions.html


Chris



________________________________________
Von: Christofer Dutz <ch...@c-ware.de>
Gesendet: Dienstag, 9. Dezember 2014 10:45
An: users@flex.apache.org
Betreff: AW: [FlexMojos] Compatible Model Validator

The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Di., Dez. 9, 2014 10:34

last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:24:14 +0000
>
> Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
>
> Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Mo., Dez. 8, 2014 16:27
>
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> import groovy.util.XmlSlurper
>
> import java.nio.file.Files;
>
> def destinationDirectory = new File(project.properties.rslDestination)
>
> if (!destinationDirectory.exists())
>     destinationDirectory.mkdir()
>
> project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
>     def artifact = it;
>     println "Copying Flex resources for: " + artifact
>
>     def configFile = new File(settings.localRepository + File.separator +
>             artifact.groupId.replace(".", File.separator) + File.separator +
>             artifact.artifactId + File.separator +
>             artifact.version + File.separator +
>             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
>
>     def root = new XmlSlurper().parse(configFile)
>
>     def rslPathNodes = root["runtime-shared-library-path"];
>
>     rslPathNodes.each() {
>         def rslPath = it["path-element"]
>         def rslUrl = it["rsl-url"][0]
>
>         def rslUrlString =  rslUrl.toString()
>         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
>
>         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
>         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
>
>         if (!destinationRslFile.exists()) {
>             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
>             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
>         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
>     }
> }
>     <plugin>
>         <groupId>org.codehaus.gmaven</groupId>
>         <artifactId>gmaven-plugin</artifactId>
>
>         <executions>
>             <execution>
>                 <id>copy-flex-resources</id>
>                 <phase>generate-resources</phase>
>                 <goals>
>                     <goal>execute</goal>
>                 </goals>
>                 <configuration>
>                     <properties>
>                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
>                         <configClassifier>${build.profile.id}-configs</configClassifier>
>                     </properties>
>                     <classpath>
>                         <element>
>                             <groupId>org.codehaus.groovy</groupId>
>                             <artifactId>groovy-xml</artifactId>
>                             <version>2.1.0-rc-2</version>
>                         </element>
>                     </classpath>
>                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
>                 </configuration>
>             </execution>
>         </executions>
>     </plugin>
>
> <dependencies>
>     <dependency>
>         <groupId>com.*.blabla</groupId>
>         <artifactId>Application</artifactId>
>         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
>         <type>xml</type>
>     </dependency>
>
>     <dependency>
>         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
>         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
>     </dependency>
> </dependencies>
>
> Frédéric THOMAS
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Sat, 6 Dec 2014 21:52:00 +0000
> >
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Sa., Dez. 6, 2014 15:54
> >
> > Hi Chris,
> >
> > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> >
> > Or I didn't get well your point :-)
> >
> > Frédéric THOMAS
> >
> > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > >
> > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > >
> > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > >
> > > Hope this explains what I was thinking of.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 18:33
> > >
> > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > >
> > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 16:03
> > > >
> > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > From: webdoublefx@hotmail.com
> > > > To: users@flex.apache.org
> > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > >
> > > >
> > > >
> > > >
> > > > Could be a new goal ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > >
> > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > >
> > > > > Hi Chris,
> > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > Any better ideas?
> > > > >
> > > > > Frédéric THOMAS
> > > > > [1]<profile>
> > > > >     <id>prepare-maven-extended-libs</id>
> > > > >     <activation>
> > > > >         <file>
> > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > >         </file>
> > > > >     </activation>
> > > > >     <build>
> > > > >         <plugins>
> > > > >             <plugin>
> > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > >                 <version>2.8</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <id>copy</id>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>copy</goal>
> > > > >                         </goals>
> > > > >                         <configuration>
> > > > >                             <artifactItems>
> > > > >                                 <artifactItem>
> > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > >                                     <type>jar</type>
> > > > >                                     <overWrite>true</overWrite>
> > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > >                                 </artifactItem>
> > > > >                             </artifactItems>
> > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > >                         </configuration>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >             </plugin>
> > > > >             <plugin>
> > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > >                 <version>1.4</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>execute</goal>
> > > > >                         </goals>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >                 <configuration>
> > > > >                     <source>
> > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > >                     </source>
> > > > >                 </configuration>
> > > > >             </plugin>
> > > > >         </plugins>
> > > > >     </build>
> > > > > </profile>
> > > > >
> > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > >
> > > > > > Cool Stuff.
> > > > > >
> > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > >
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > >
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > >
> > > > > > Hi,
> > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > Frédéric THOMAS
> > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > >
> > > >
> > >
> >
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Btw, I added:

Remove warning when the scope "theme" is add to a dependency  and a "rsl" or "caching" scope is already used for this artifact, now the raw validator doesn't complain if "groupId:artifactId:type:classifier:scope" pattern is unique instead of "groupId:artifactId:type:classifier" as before in the FlexMojos Compatible Model Validator.
To avoid this kind of warnings:[WARNING] 
[WARNING] Some problems were encountered while building the effective model for com.domain.blabla:application:swf:version
[WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: com.adobe.flex.framework:spark:swc -> duplicate declaration of version ${flex.sdk.version} @ com.domain.blabla.builder:swf-builder:1.0-SNAPSHOT, C:\Users\me\.m2\repository\path\builder\swf-builder\1.0-SNAPSHOT\swf-builder-1.0-SNAPSHOT.pom, line 341, column 21
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] Did I do it right ?Frédéric THOMAS

> From: webdoublefx@hotmail.com
> To: users@flex.apache.org
> Subject: RE: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:58:11 +0000
> 
> Actually, in the way I did it, it doesn't change the behavior of the existing goals, only add a new one with does that copy-dependencies does but add support for Flex stuffs, I've been in depth in order to don't change anything in what they currently do extending internal maven classes as a start, hopping that way, it will be more easily accepted in case that works.
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Tue, 9 Dec 2014 09:45:57 +0000
> > 
> > The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(
> > 
> > Gesendet mit meinem HTC
> > 
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Di., Dez. 9, 2014 10:34
> > 
> > last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...
> > 
> > Frédéric THOMAS
> > 
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Tue, 9 Dec 2014 09:24:14 +0000
> > >
> > > Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> > >
> > > Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Mo., Dez. 8, 2014 16:27
> > >
> > > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > > You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> > > import groovy.util.XmlSlurper
> > >
> > > import java.nio.file.Files;
> > >
> > > def destinationDirectory = new File(project.properties.rslDestination)
> > >
> > > if (!destinationDirectory.exists())
> > >     destinationDirectory.mkdir()
> > >
> > > project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> > >     def artifact = it;
> > >     println "Copying Flex resources for: " + artifact
> > >
> > >     def configFile = new File(settings.localRepository + File.separator +
> > >             artifact.groupId.replace(".", File.separator) + File.separator +
> > >             artifact.artifactId + File.separator +
> > >             artifact.version + File.separator +
> > >             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> > >
> > >     def root = new XmlSlurper().parse(configFile)
> > >
> > >     def rslPathNodes = root["runtime-shared-library-path"];
> > >
> > >     rslPathNodes.each() {
> > >         def rslPath = it["path-element"]
> > >         def rslUrl = it["rsl-url"][0]
> > >
> > >         def rslUrlString =  rslUrl.toString()
> > >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> > >
> > >         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
> > >         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> > >
> > >         if (!destinationRslFile.exists()) {
> > >             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
> > >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> > >         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
> > >     }
> > > }
> > >     <plugin>
> > >         <groupId>org.codehaus.gmaven</groupId>
> > >         <artifactId>gmaven-plugin</artifactId>
> > >
> > >         <executions>
> > >             <execution>
> > >                 <id>copy-flex-resources</id>
> > >                 <phase>generate-resources</phase>
> > >                 <goals>
> > >                     <goal>execute</goal>
> > >                 </goals>
> > >                 <configuration>
> > >                     <properties>
> > >                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> > >                         <configClassifier>${build.profile.id}-configs</configClassifier>
> > >                     </properties>
> > >                     <classpath>
> > >                         <element>
> > >                             <groupId>org.codehaus.groovy</groupId>
> > >                             <artifactId>groovy-xml</artifactId>
> > >                             <version>2.1.0-rc-2</version>
> > >                         </element>
> > >                     </classpath>
> > >                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> > >                 </configuration>
> > >             </execution>
> > >         </executions>
> > >     </plugin>
> > >
> > > <dependencies>
> > >     <dependency>
> > >         <groupId>com.*.blabla</groupId>
> > >         <artifactId>Application</artifactId>
> > >         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
> > >         <type>xml</type>
> > >     </dependency>
> > >
> > >     <dependency>
> > >         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
> > >         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
> > >     </dependency>
> > > </dependencies>
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > > >
> > > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Sa., Dez. 6, 2014 15:54
> > > >
> > > > Hi Chris,
> > > >
> > > > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > > >
> > > > Or I didn't get well your point :-)
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > > >
> > > > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > > > >
> > > > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > > > >
> > > > > Hope this explains what I was thinking of.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 18:33
> > > > >
> > > > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > > >
> > > > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > > >
> > > > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > >
> > > > > > From: webdoublefx@hotmail.com
> > > > > > To: users@flex.apache.org
> > > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > Could be a new goal ?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > >
> > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > To: users@flex.apache.org
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > > >
> > > > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > > >
> > > > > > > Hi Chris,
> > > > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > > > Any better ideas?
> > > > > > >
> > > > > > > Frédéric THOMAS
> > > > > > > [1]<profile>
> > > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > > >     <activation>
> > > > > > >         <file>
> > > > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > > >         </file>
> > > > > > >     </activation>
> > > > > > >     <build>
> > > > > > >         <plugins>
> > > > > > >             <plugin>
> > > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > > >                 <version>2.8</version>
> > > > > > >                 <executions>
> > > > > > >                     <execution>
> > > > > > >                         <id>copy</id>
> > > > > > >                         <phase>validate</phase>
> > > > > > >                         <goals>
> > > > > > >                             <goal>copy</goal>
> > > > > > >                         </goals>
> > > > > > >                         <configuration>
> > > > > > >                             <artifactItems>
> > > > > > >                                 <artifactItem>
> > > > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > > > >                                     <type>jar</type>
> > > > > > >                                     <overWrite>true</overWrite>
> > > > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > > >                                 </artifactItem>
> > > > > > >                             </artifactItems>
> > > > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > > > >                         </configuration>
> > > > > > >                     </execution>
> > > > > > >                 </executions>
> > > > > > >             </plugin>
> > > > > > >             <plugin>
> > > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > > >                 <version>1.4</version>
> > > > > > >                 <executions>
> > > > > > >                     <execution>
> > > > > > >                         <phase>validate</phase>
> > > > > > >                         <goals>
> > > > > > >                             <goal>execute</goal>
> > > > > > >                         </goals>
> > > > > > >                     </execution>
> > > > > > >                 </executions>
> > > > > > >                 <configuration>
> > > > > > >                     <source>
> > > > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > > > >                     </source>
> > > > > > >                 </configuration>
> > > > > > >             </plugin>
> > > > > > >         </plugins>
> > > > > > >     </build>
> > > > > > > </profile>
> > > > > > >
> > > > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > > To: users@flex.apache.org
> > > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > > >
> > > > > > > > Cool Stuff.
> > > > > > > >
> > > > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > > > >
> > > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > > >
> > > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > > >
> > > > > > > > Chris
> > > > > > > >
> > > > > > > > Gesendet mit meinem HTC
> > > > > > > >
> > > > > > > > ----- Reply message -----
> > > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > > >
> > > > > > > > Hi,
> > > > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > > Frédéric THOMAS
> > > > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> > 
>  		 	   		  
 		 	   		  

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Actually, in the way I did it, it doesn't change the behavior of the existing goals, only add a new one with does that copy-dependencies does but add support for Flex stuffs, I've been in depth in order to don't change anything in what they currently do extending internal maven classes as a start, hopping that way, it will be more easily accepted in case that works.

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:45:57 +0000
> 
> The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Di., Dez. 9, 2014 10:34
> 
> last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Tue, 9 Dec 2014 09:24:14 +0000
> >
> > Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> >
> > Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Mo., Dez. 8, 2014 16:27
> >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> > import groovy.util.XmlSlurper
> >
> > import java.nio.file.Files;
> >
> > def destinationDirectory = new File(project.properties.rslDestination)
> >
> > if (!destinationDirectory.exists())
> >     destinationDirectory.mkdir()
> >
> > project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> >     def artifact = it;
> >     println "Copying Flex resources for: " + artifact
> >
> >     def configFile = new File(settings.localRepository + File.separator +
> >             artifact.groupId.replace(".", File.separator) + File.separator +
> >             artifact.artifactId + File.separator +
> >             artifact.version + File.separator +
> >             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> >
> >     def root = new XmlSlurper().parse(configFile)
> >
> >     def rslPathNodes = root["runtime-shared-library-path"];
> >
> >     rslPathNodes.each() {
> >         def rslPath = it["path-element"]
> >         def rslUrl = it["rsl-url"][0]
> >
> >         def rslUrlString =  rslUrl.toString()
> >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> >
> >         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
> >         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> >
> >         if (!destinationRslFile.exists()) {
> >             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
> >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> >         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
> >     }
> > }
> >     <plugin>
> >         <groupId>org.codehaus.gmaven</groupId>
> >         <artifactId>gmaven-plugin</artifactId>
> >
> >         <executions>
> >             <execution>
> >                 <id>copy-flex-resources</id>
> >                 <phase>generate-resources</phase>
> >                 <goals>
> >                     <goal>execute</goal>
> >                 </goals>
> >                 <configuration>
> >                     <properties>
> >                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> >                         <configClassifier>${build.profile.id}-configs</configClassifier>
> >                     </properties>
> >                     <classpath>
> >                         <element>
> >                             <groupId>org.codehaus.groovy</groupId>
> >                             <artifactId>groovy-xml</artifactId>
> >                             <version>2.1.0-rc-2</version>
> >                         </element>
> >                     </classpath>
> >                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> >                 </configuration>
> >             </execution>
> >         </executions>
> >     </plugin>
> >
> > <dependencies>
> >     <dependency>
> >         <groupId>com.*.blabla</groupId>
> >         <artifactId>Application</artifactId>
> >         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
> >         <type>xml</type>
> >     </dependency>
> >
> >     <dependency>
> >         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
> >         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
> >     </dependency>
> > </dependencies>
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > >
> > > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Sa., Dez. 6, 2014 15:54
> > >
> > > Hi Chris,
> > >
> > > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > >
> > > Or I didn't get well your point :-)
> > >
> > > Frédéric THOMAS
> > >
> > > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > >
> > > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > > >
> > > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > > >
> > > > Hope this explains what I was thinking of.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 18:33
> > > >
> > > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > >
> > > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > >
> > > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > From: webdoublefx@hotmail.com
> > > > > To: users@flex.apache.org
> > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Could be a new goal ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > >
> > > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > >
> > > > > > Hi Chris,
> > > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > > Any better ideas?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > > [1]<profile>
> > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > >     <activation>
> > > > > >         <file>
> > > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > >         </file>
> > > > > >     </activation>
> > > > > >     <build>
> > > > > >         <plugins>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > >                 <version>2.8</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <id>copy</id>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>copy</goal>
> > > > > >                         </goals>
> > > > > >                         <configuration>
> > > > > >                             <artifactItems>
> > > > > >                                 <artifactItem>
> > > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > > >                                     <type>jar</type>
> > > > > >                                     <overWrite>true</overWrite>
> > > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > >                                 </artifactItem>
> > > > > >                             </artifactItems>
> > > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > > >                         </configuration>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >             </plugin>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > >                 <version>1.4</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>execute</goal>
> > > > > >                         </goals>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >                 <configuration>
> > > > > >                     <source>
> > > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > > >                     </source>
> > > > > >                 </configuration>
> > > > > >             </plugin>
> > > > > >         </plugins>
> > > > > >     </build>
> > > > > > </profile>
> > > > > >
> > > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > From: christofer.dutz@c-ware.de
> > > > > > > To: users@flex.apache.org
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > >
> > > > > > > Cool Stuff.
> > > > > > >
> > > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > > >
> > > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > > >
> > > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > >
> > > > > > > Hi,
> > > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > Frédéric THOMAS
> > > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > >
> > > > >
> > > >
> > >
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
The maven guys week never accept any change if this sort with an official maven plugin :-( have given up going that road. They're pretty stubborn when it comes to changes for non-java projects :-(

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Di., Dez. 9, 2014 10:34

last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:24:14 +0000
>
> Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
>
> Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Mo., Dez. 8, 2014 16:27
>
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> import groovy.util.XmlSlurper
>
> import java.nio.file.Files;
>
> def destinationDirectory = new File(project.properties.rslDestination)
>
> if (!destinationDirectory.exists())
>     destinationDirectory.mkdir()
>
> project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
>     def artifact = it;
>     println "Copying Flex resources for: " + artifact
>
>     def configFile = new File(settings.localRepository + File.separator +
>             artifact.groupId.replace(".", File.separator) + File.separator +
>             artifact.artifactId + File.separator +
>             artifact.version + File.separator +
>             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
>
>     def root = new XmlSlurper().parse(configFile)
>
>     def rslPathNodes = root["runtime-shared-library-path"];
>
>     rslPathNodes.each() {
>         def rslPath = it["path-element"]
>         def rslUrl = it["rsl-url"][0]
>
>         def rslUrlString =  rslUrl.toString()
>         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
>
>         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
>         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
>
>         if (!destinationRslFile.exists()) {
>             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
>             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
>         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
>     }
> }
>     <plugin>
>         <groupId>org.codehaus.gmaven</groupId>
>         <artifactId>gmaven-plugin</artifactId>
>
>         <executions>
>             <execution>
>                 <id>copy-flex-resources</id>
>                 <phase>generate-resources</phase>
>                 <goals>
>                     <goal>execute</goal>
>                 </goals>
>                 <configuration>
>                     <properties>
>                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
>                         <configClassifier>${build.profile.id}-configs</configClassifier>
>                     </properties>
>                     <classpath>
>                         <element>
>                             <groupId>org.codehaus.groovy</groupId>
>                             <artifactId>groovy-xml</artifactId>
>                             <version>2.1.0-rc-2</version>
>                         </element>
>                     </classpath>
>                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
>                 </configuration>
>             </execution>
>         </executions>
>     </plugin>
>
> <dependencies>
>     <dependency>
>         <groupId>com.*.blabla</groupId>
>         <artifactId>Application</artifactId>
>         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
>         <type>xml</type>
>     </dependency>
>
>     <dependency>
>         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
>         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
>     </dependency>
> </dependencies>
>
> Frédéric THOMAS
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Sat, 6 Dec 2014 21:52:00 +0000
> >
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Sa., Dez. 6, 2014 15:54
> >
> > Hi Chris,
> >
> > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> >
> > Or I didn't get well your point :-)
> >
> > Frédéric THOMAS
> >
> > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > >
> > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > >
> > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > >
> > > Hope this explains what I was thinking of.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 18:33
> > >
> > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > >
> > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 16:03
> > > >
> > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > From: webdoublefx@hotmail.com
> > > > To: users@flex.apache.org
> > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > >
> > > >
> > > >
> > > >
> > > > Could be a new goal ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > >
> > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > >
> > > > > Hi Chris,
> > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > Any better ideas?
> > > > >
> > > > > Frédéric THOMAS
> > > > > [1]<profile>
> > > > >     <id>prepare-maven-extended-libs</id>
> > > > >     <activation>
> > > > >         <file>
> > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > >         </file>
> > > > >     </activation>
> > > > >     <build>
> > > > >         <plugins>
> > > > >             <plugin>
> > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > >                 <version>2.8</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <id>copy</id>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>copy</goal>
> > > > >                         </goals>
> > > > >                         <configuration>
> > > > >                             <artifactItems>
> > > > >                                 <artifactItem>
> > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > >                                     <type>jar</type>
> > > > >                                     <overWrite>true</overWrite>
> > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > >                                 </artifactItem>
> > > > >                             </artifactItems>
> > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > >                         </configuration>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >             </plugin>
> > > > >             <plugin>
> > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > >                 <version>1.4</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>execute</goal>
> > > > >                         </goals>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >                 <configuration>
> > > > >                     <source>
> > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > >                     </source>
> > > > >                 </configuration>
> > > > >             </plugin>
> > > > >         </plugins>
> > > > >     </build>
> > > > > </profile>
> > > > >
> > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > >
> > > > > > Cool Stuff.
> > > > > >
> > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > >
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > >
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > >
> > > > > > Hi,
> > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > Frédéric THOMAS
> > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > >
> > > >
> > >
> >
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
last night I started a POC adding a goal to the maven-dependency-plugin and extending some of the Maven internal classes to try to address that thru this plugin, my time is limited and still have to implement the integration tests but in case it works with this plugin, I thing it could with FM, let's see...

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:24:14 +0000
> 
> Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> 
> Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Mo., Dez. 8, 2014 16:27
> 
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> import groovy.util.XmlSlurper
> 
> import java.nio.file.Files;
> 
> def destinationDirectory = new File(project.properties.rslDestination)
> 
> if (!destinationDirectory.exists())
>     destinationDirectory.mkdir()
> 
> project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
>     def artifact = it;
>     println "Copying Flex resources for: " + artifact
> 
>     def configFile = new File(settings.localRepository + File.separator +
>             artifact.groupId.replace(".", File.separator) + File.separator +
>             artifact.artifactId + File.separator +
>             artifact.version + File.separator +
>             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> 
>     def root = new XmlSlurper().parse(configFile)
> 
>     def rslPathNodes = root["runtime-shared-library-path"];
> 
>     rslPathNodes.each() {
>         def rslPath = it["path-element"]
>         def rslUrl = it["rsl-url"][0]
> 
>         def rslUrlString =  rslUrl.toString()
>         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> 
>         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
>         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> 
>         if (!destinationRslFile.exists()) {
>             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
>             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
>         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
>     }
> }
>     <plugin>
>         <groupId>org.codehaus.gmaven</groupId>
>         <artifactId>gmaven-plugin</artifactId>
> 
>         <executions>
>             <execution>
>                 <id>copy-flex-resources</id>
>                 <phase>generate-resources</phase>
>                 <goals>
>                     <goal>execute</goal>
>                 </goals>
>                 <configuration>
>                     <properties>
>                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
>                         <configClassifier>${build.profile.id}-configs</configClassifier>
>                     </properties>
>                     <classpath>
>                         <element>
>                             <groupId>org.codehaus.groovy</groupId>
>                             <artifactId>groovy-xml</artifactId>
>                             <version>2.1.0-rc-2</version>
>                         </element>
>                     </classpath>
>                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
>                 </configuration>
>             </execution>
>         </executions>
>     </plugin>
> 
> <dependencies>
>     <dependency>
>         <groupId>com.*.blabla</groupId>
>         <artifactId>Application</artifactId>
>         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
>         <type>xml</type>
>     </dependency>
> 
>     <dependency>
>         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
>         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
>     </dependency>
> </dependencies>
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Sat, 6 Dec 2014 21:52:00 +0000
> >
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Sa., Dez. 6, 2014 15:54
> >
> > Hi Chris,
> >
> > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> >
> > Or I didn't get well your point :-)
> >
> > Frédéric THOMAS
> >
> > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > >
> > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > >
> > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > >
> > > Hope this explains what I was thinking of.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 18:33
> > >
> > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > >
> > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 16:03
> > > >
> > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > From: webdoublefx@hotmail.com
> > > > To: users@flex.apache.org
> > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > >
> > > >
> > > >
> > > >
> > > > Could be a new goal ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > >
> > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > >
> > > > > Hi Chris,
> > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > Any better ideas?
> > > > >
> > > > > Frédéric THOMAS
> > > > > [1]<profile>
> > > > >     <id>prepare-maven-extended-libs</id>
> > > > >     <activation>
> > > > >         <file>
> > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > >         </file>
> > > > >     </activation>
> > > > >     <build>
> > > > >         <plugins>
> > > > >             <plugin>
> > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > >                 <version>2.8</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <id>copy</id>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>copy</goal>
> > > > >                         </goals>
> > > > >                         <configuration>
> > > > >                             <artifactItems>
> > > > >                                 <artifactItem>
> > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > >                                     <type>jar</type>
> > > > >                                     <overWrite>true</overWrite>
> > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > >                                 </artifactItem>
> > > > >                             </artifactItems>
> > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > >                         </configuration>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >             </plugin>
> > > > >             <plugin>
> > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > >                 <version>1.4</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>execute</goal>
> > > > >                         </goals>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >                 <configuration>
> > > > >                     <source>
> > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > >                     </source>
> > > > >                 </configuration>
> > > > >             </plugin>
> > > > >         </plugins>
> > > > >     </build>
> > > > > </profile>
> > > > >
> > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > >
> > > > > > Cool Stuff.
> > > > > >
> > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > >
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > >
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > >
> > > > > > Hi,
> > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > Frédéric THOMAS
> > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > >
> > > >
> > >
> >
> 
 		 	   		  

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Another way to do it is changing the copy mojo to make it doing what I do in my groovy script and it would make sense IMO to have the configs:xml as dependency instead of the main artifact, allowing the copy mojo to deal with more complex classifier (ie. local-configs, integration-configs, uat-configs and so on)
Thought ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Tue, 9 Dec 2014 09:24:14 +0000
> 
> Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.
> 
> Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Mo., Dez. 8, 2014 16:27
> 
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
> import groovy.util.XmlSlurper
> 
> import java.nio.file.Files;
> 
> def destinationDirectory = new File(project.properties.rslDestination)
> 
> if (!destinationDirectory.exists())
>     destinationDirectory.mkdir()
> 
> project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
>     def artifact = it;
>     println "Copying Flex resources for: " + artifact
> 
>     def configFile = new File(settings.localRepository + File.separator +
>             artifact.groupId.replace(".", File.separator) + File.separator +
>             artifact.artifactId + File.separator +
>             artifact.version + File.separator +
>             artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)
> 
>     def root = new XmlSlurper().parse(configFile)
> 
>     def rslPathNodes = root["runtime-shared-library-path"];
> 
>     rslPathNodes.each() {
>         def rslPath = it["path-element"]
>         def rslUrl = it["rsl-url"][0]
> 
>         def rslUrlString =  rslUrl.toString()
>         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> 
>         def originRslFile = new File(rslPath.toString().replace(".swc", ext));
>         def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())
> 
>         if (!destinationRslFile.exists()) {
>             println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
>             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
>         } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
>     }
> }
>     <plugin>
>         <groupId>org.codehaus.gmaven</groupId>
>         <artifactId>gmaven-plugin</artifactId>
> 
>         <executions>
>             <execution>
>                 <id>copy-flex-resources</id>
>                 <phase>generate-resources</phase>
>                 <goals>
>                     <goal>execute</goal>
>                 </goals>
>                 <configuration>
>                     <properties>
>                         <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
>                         <configClassifier>${build.profile.id}-configs</configClassifier>
>                     </properties>
>                     <classpath>
>                         <element>
>                             <groupId>org.codehaus.groovy</groupId>
>                             <artifactId>groovy-xml</artifactId>
>                             <version>2.1.0-rc-2</version>
>                         </element>
>                     </classpath>
>                     <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
>                 </configuration>
>             </execution>
>         </executions>
>     </plugin>
> 
> <dependencies>
>     <dependency>
>         <groupId>com.*.blabla</groupId>
>         <artifactId>Application</artifactId>
>         <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
>         <type>xml</type>
>     </dependency>
> 
>     <dependency>
>         <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
>         <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
>     </dependency>
> </dependencies>
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Sat, 6 Dec 2014 21:52:00 +0000
> >
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Sa., Dez. 6, 2014 15:54
> >
> > Hi Chris,
> >
> > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> >
> > Or I didn't get well your point :-)
> >
> > Frédéric THOMAS
> >
> > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > >
> > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > >
> > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > >
> > > Hope this explains what I was thinking of.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 18:33
> > >
> > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > >
> > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 16:03
> > > >
> > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > From: webdoublefx@hotmail.com
> > > > To: users@flex.apache.org
> > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > >
> > > >
> > > >
> > > >
> > > > Could be a new goal ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > >
> > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > >
> > > > > Hi Chris,
> > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > Any better ideas?
> > > > >
> > > > > Frédéric THOMAS
> > > > > [1]<profile>
> > > > >     <id>prepare-maven-extended-libs</id>
> > > > >     <activation>
> > > > >         <file>
> > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > >         </file>
> > > > >     </activation>
> > > > >     <build>
> > > > >         <plugins>
> > > > >             <plugin>
> > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > >                 <version>2.8</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <id>copy</id>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>copy</goal>
> > > > >                         </goals>
> > > > >                         <configuration>
> > > > >                             <artifactItems>
> > > > >                                 <artifactItem>
> > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > >                                     <type>jar</type>
> > > > >                                     <overWrite>true</overWrite>
> > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > >                                 </artifactItem>
> > > > >                             </artifactItems>
> > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > >                         </configuration>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >             </plugin>
> > > > >             <plugin>
> > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > >                 <version>1.4</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>execute</goal>
> > > > >                         </goals>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >                 <configuration>
> > > > >                     <source>
> > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > >                     </source>
> > > > >                 </configuration>
> > > > >             </plugin>
> > > > >         </plugins>
> > > > >     </build>
> > > > > </profile>
> > > > >
> > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > >
> > > > > > Cool Stuff.
> > > > > >
> > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > >
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > >
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > >
> > > > > > Hi,
> > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > Frédéric THOMAS
> > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > >
> > > >
> > >
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Well in order to address this issue I was planning on automatically processing the dependencies in a flex project and to have flexmojos add direct rsl scoped deps for transitive dependencies. Should make the copy rsl goal work correctly.

Unfortunately my motivation investing my time in flex is currently at an all time low. Perhaps I'll look into this during the Christmas holidays.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Mo., Dez. 8, 2014 16:27

> Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
import groovy.util.XmlSlurper

import java.nio.file.Files;

def destinationDirectory = new File(project.properties.rslDestination)

if (!destinationDirectory.exists())
    destinationDirectory.mkdir()

project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
    def artifact = it;
    println "Copying Flex resources for: " + artifact

    def configFile = new File(settings.localRepository + File.separator +
            artifact.groupId.replace(".", File.separator) + File.separator +
            artifact.artifactId + File.separator +
            artifact.version + File.separator +
            artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)

    def root = new XmlSlurper().parse(configFile)

    def rslPathNodes = root["runtime-shared-library-path"];

    rslPathNodes.each() {
        def rslPath = it["path-element"]
        def rslUrl = it["rsl-url"][0]

        def rslUrlString =  rslUrl.toString()
        def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));

        def originRslFile = new File(rslPath.toString().replace(".swc", ext));
        def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())

        if (!destinationRslFile.exists()) {
            println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
            Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
        } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
    }
}
    <plugin>
        <groupId>org.codehaus.gmaven</groupId>
        <artifactId>gmaven-plugin</artifactId>

        <executions>
            <execution>
                <id>copy-flex-resources</id>
                <phase>generate-resources</phase>
                <goals>
                    <goal>execute</goal>
                </goals>
                <configuration>
                    <properties>
                        <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
                        <configClassifier>${build.profile.id}-configs</configClassifier>
                    </properties>
                    <classpath>
                        <element>
                            <groupId>org.codehaus.groovy</groupId>
                            <artifactId>groovy-xml</artifactId>
                            <version>2.1.0-rc-2</version>
                        </element>
                    </classpath>
                    <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
                </configuration>
            </execution>
        </executions>
    </plugin>

<dependencies>
    <dependency>
        <groupId>com.*.blabla</groupId>
        <artifactId>Application</artifactId>
        <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
        <type>xml</type>
    </dependency>

    <dependency>
        <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
        <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
    </dependency>
</dependencies>

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Sat, 6 Dec 2014 21:52:00 +0000
>
> Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Sa., Dez. 6, 2014 15:54
>
> Hi Chris,
>
> Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
>
> Or I didn't get well your point :-)
>
> Frédéric THOMAS
>
> [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 19:16:59 +0000
> >
> > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> >
> > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> >
> > Hope this explains what I was thinking of.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 18:33
> >
> > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > >
> > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 16:03
> > >
> > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > >
> > > Frédéric THOMAS
> > >
> > > From: webdoublefx@hotmail.com
> > > To: users@flex.apache.org
> > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > >
> > >
> > >
> > >
> > > Could be a new goal ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > >
> > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 13:50
> > > >
> > > > Hi Chris,
> > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > Any better ideas?
> > > >
> > > > Frédéric THOMAS
> > > > [1]<profile>
> > > >     <id>prepare-maven-extended-libs</id>
> > > >     <activation>
> > > >         <file>
> > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > >         </file>
> > > >     </activation>
> > > >     <build>
> > > >         <plugins>
> > > >             <plugin>
> > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > >                 <version>2.8</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <id>copy</id>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>copy</goal>
> > > >                         </goals>
> > > >                         <configuration>
> > > >                             <artifactItems>
> > > >                                 <artifactItem>
> > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > >                                     <type>jar</type>
> > > >                                     <overWrite>true</overWrite>
> > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > >                                 </artifactItem>
> > > >                             </artifactItems>
> > > >                             <overWriteReleases>true</overWriteReleases>
> > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > >                         </configuration>
> > > >                     </execution>
> > > >                 </executions>
> > > >             </plugin>
> > > >             <plugin>
> > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > >                 <artifactId>gmaven-plugin</artifactId>
> > > >                 <version>1.4</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>execute</goal>
> > > >                         </goals>
> > > >                     </execution>
> > > >                 </executions>
> > > >                 <configuration>
> > > >                     <source>
> > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > >                     </source>
> > > >                 </configuration>
> > > >             </plugin>
> > > >         </plugins>
> > > >     </build>
> > > > </profile>
> > > >
> > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > >
> > > > > Cool Stuff.
> > > > >
> > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > >
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > >
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > >
> > > > > Hi,
> > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > Frédéric THOMAS
> > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > >
> > >
> >
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
> Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
You're right, in more because my "builder" parent pom have their own lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it doesn't resolve (because it can't) the RSLs but check directly in the poms, which is very bad when you have parameterized  the merge, caching, rsl scopes, it finds only variables, thus, I wrote a groovy script which look at the *-configs:xml dependencies and extract the rsls info from the them and copy them to the "rsls" dir defined by the user, it seems a lot of work but it is not, moreover, at compile time, I ask FM to generate a classifier for each environment I need to deploy to but here again FM doesn't know how to manage custom classifiers and link-report, configs and size-report, so, all in I had to rely on something else, this little groovy script for those interested and the Maven conf after:
import groovy.util.XmlSlurper

import java.nio.file.Files;

def destinationDirectory = new File(project.properties.rslDestination)

if (!destinationDirectory.exists())
    destinationDirectory.mkdir()

project.dependencies.findAll{artifact -> artifact.getClassifier()== project.properties.configClassifier && artifact.getType()=='xml'}.each() {
    def artifact = it;
    println "Copying Flex resources for: " + artifact

    def configFile = new File(settings.localRepository + File.separator +
            artifact.groupId.replace(".", File.separator) + File.separator +
            artifact.artifactId + File.separator +
            artifact.version + File.separator +
            artifact.artifactId + "-" + artifact.version + "-" + project.properties.configClassifier + "." + artifact.type)

    def root = new XmlSlurper().parse(configFile)

    def rslPathNodes = root["runtime-shared-library-path"];

    rslPathNodes.each() {
        def rslPath = it["path-element"]
        def rslUrl = it["rsl-url"][0]

        def rslUrlString =  rslUrl.toString()
        def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));

        def originRslFile = new File(rslPath.toString().replace(".swc", ext));
        def destinationRslFile = new File(project.properties.rslDestination + File.separator + originRslFile.getName())

        if (!destinationRslFile.exists()) {
            println "Copying RSL : " + originRslFile.getAbsolutePath() + "to : " + destinationRslFile.getAbsolutePath()
            Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
        } else println "Skiping RSL copy of : " + destinationRslFile.getAbsolutePath() + " [Already exist]"
    }
}
    <plugin>
        <groupId>org.codehaus.gmaven</groupId>
        <artifactId>gmaven-plugin</artifactId>

        <executions>
            <execution>
                <id>copy-flex-resources</id>
                <phase>generate-resources</phase>
                <goals>
                    <goal>execute</goal>
                </goals>
                <configuration>
                    <properties>
                        <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
                        <configClassifier>${build.profile.id}-configs</configClassifier>
                    </properties>
                    <classpath>
                        <element>
                            <groupId>org.codehaus.groovy</groupId>
                            <artifactId>groovy-xml</artifactId>
                            <version>2.1.0-rc-2</version>
                        </element>
                    </classpath>
                    <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
                </configuration>
            </execution>
        </executions>
    </plugin>

<dependencies>
    <dependency>
        <groupId>com.*.blabla</groupId>
        <artifactId>Application</artifactId>
        <version>${Application-version}</version>        <classifier>${build.profile.id}-configs</classifier>
        <type>xml</type>
    </dependency>

    <dependency>
        <groupId>com.*blabla</groupId>        <artifactId>Module</artifactId>
        <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>        <type>xml</type>
    </dependency>
</dependencies>

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Sat, 6 Dec 2014 21:52:00 +0000
> 
> Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Sa., Dez. 6, 2014 15:54
> 
> Hi Chris,
> 
> Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> 
> Or I didn't get well your point :-)
> 
> Frédéric THOMAS
> 
> [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 19:16:59 +0000
> >
> > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> >
> > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> >
> > Hope this explains what I was thinking of.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 18:33
> >
> > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > >
> > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 16:03
> > >
> > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > >
> > > Frédéric THOMAS
> > >
> > > From: webdoublefx@hotmail.com
> > > To: users@flex.apache.org
> > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > >
> > >
> > >
> > >
> > > Could be a new goal ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > >
> > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 13:50
> > > >
> > > > Hi Chris,
> > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > Any better ideas?
> > > >
> > > > Frédéric THOMAS
> > > > [1]<profile>
> > > >     <id>prepare-maven-extended-libs</id>
> > > >     <activation>
> > > >         <file>
> > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > >         </file>
> > > >     </activation>
> > > >     <build>
> > > >         <plugins>
> > > >             <plugin>
> > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > >                 <version>2.8</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <id>copy</id>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>copy</goal>
> > > >                         </goals>
> > > >                         <configuration>
> > > >                             <artifactItems>
> > > >                                 <artifactItem>
> > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > >                                     <type>jar</type>
> > > >                                     <overWrite>true</overWrite>
> > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > >                                 </artifactItem>
> > > >                             </artifactItems>
> > > >                             <overWriteReleases>true</overWriteReleases>
> > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > >                         </configuration>
> > > >                     </execution>
> > > >                 </executions>
> > > >             </plugin>
> > > >             <plugin>
> > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > >                 <artifactId>gmaven-plugin</artifactId>
> > > >                 <version>1.4</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>execute</goal>
> > > >                         </goals>
> > > >                     </execution>
> > > >                 </executions>
> > > >                 <configuration>
> > > >                     <source>
> > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > >                     </source>
> > > >                 </configuration>
> > > >             </plugin>
> > > >         </plugins>
> > > >     </build>
> > > > </profile>
> > > >
> > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > >
> > > > > Cool Stuff.
> > > > >
> > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > >
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > >
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > >
> > > > > Hi,
> > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > Frédéric THOMAS
> > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > >
> > >
> >
> 
 		 	   		  

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
FYI,
I improved it, so, it won't fail anymore.If included in the direct parent pom.xml, will be installed at first build and used on next ones.if declared in the corporate pom.xml or if you do like me, use parent which have their own lifecycles, will be used directly.
Btw, what about if I give it to Apache ? 
Doing so, it will benefit of the CI which will install it in the Apache Maven repo and will be available for anyone without having the burden to build it.

Thanks,
Frédéric THOMAS

> From: webdoublefx@hotmail.com
> To: users@flex.apache.org
> Subject: RE: AW: [FlexMojos] Compatible Model Validator
> Date: Sun, 7 Dec 2014 13:14:05 +0000
> 
> Just added an auto install feature, you can now do:
> 
> <build>
>     <extensions>
>         <extension>
>             <groupId>com.doublefx.maven.utils.flexmojos</groupId>
>             <artifactId>flexmojos-compatible-model-validator</artifactId>
>             <version>1.0.0-SNAPSHOT</version>
>         </extension>
>     </extensions>
>     ...https://github.com/doublefx/flexmojos-compatible-model-validator
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > 
> > Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> > 
> > Chris
> > 
> > Gesendet mit meinem HTC
> > 
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Sa., Dez. 6, 2014 15:54
> > 
> > Hi Chris,
> > 
> > Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> > 
> > Or I didn't get well your point :-)
> > 
> > Frédéric THOMAS
> > 
> > [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > 
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > >
> > > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> > >
> > > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> > >
> > > Hope this explains what I was thinking of.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 18:33
> > >
> > > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > >
> > > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 16:03
> > > >
> > > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > From: webdoublefx@hotmail.com
> > > > To: users@flex.apache.org
> > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > >
> > > >
> > > >
> > > >
> > > > Could be a new goal ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > >
> > > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > >
> > > > > Hi Chris,
> > > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > > Any better ideas?
> > > > >
> > > > > Frédéric THOMAS
> > > > > [1]<profile>
> > > > >     <id>prepare-maven-extended-libs</id>
> > > > >     <activation>
> > > > >         <file>
> > > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > >         </file>
> > > > >     </activation>
> > > > >     <build>
> > > > >         <plugins>
> > > > >             <plugin>
> > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > >                 <version>2.8</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <id>copy</id>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>copy</goal>
> > > > >                         </goals>
> > > > >                         <configuration>
> > > > >                             <artifactItems>
> > > > >                                 <artifactItem>
> > > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > > >                                     <type>jar</type>
> > > > >                                     <overWrite>true</overWrite>
> > > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > >                                 </artifactItem>
> > > > >                             </artifactItems>
> > > > >                             <overWriteReleases>true</overWriteReleases>
> > > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > > >                         </configuration>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >             </plugin>
> > > > >             <plugin>
> > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > >                 <version>1.4</version>
> > > > >                 <executions>
> > > > >                     <execution>
> > > > >                         <phase>validate</phase>
> > > > >                         <goals>
> > > > >                             <goal>execute</goal>
> > > > >                         </goals>
> > > > >                     </execution>
> > > > >                 </executions>
> > > > >                 <configuration>
> > > > >                     <source>
> > > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > > >                     </source>
> > > > >                 </configuration>
> > > > >             </plugin>
> > > > >         </plugins>
> > > > >     </build>
> > > > > </profile>
> > > > >
> > > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > From: christofer.dutz@c-ware.de
> > > > > > To: users@flex.apache.org
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > >
> > > > > > Cool Stuff.
> > > > > >
> > > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > > >
> > > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > > >
> > > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > >
> > > > > > Hi,
> > > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > Frédéric THOMAS
> > > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > >
> > > >
> > >
> > 
>  		 	   		  
 		 	   		  

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Just added an auto install feature, you can now do:

<build>
    <extensions>
        <extension>
            <groupId>com.doublefx.maven.utils.flexmojos</groupId>
            <artifactId>flexmojos-compatible-model-validator</artifactId>
            <version>1.0.0-SNAPSHOT</version>
        </extension>
    </extensions>
    ...https://github.com/doublefx/flexmojos-compatible-model-validator

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Sat, 6 Dec 2014 21:52:00 +0000
> 
> Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Sa., Dez. 6, 2014 15:54
> 
> Hi Chris,
> 
> Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.
> 
> Or I didn't get well your point :-)
> 
> Frédéric THOMAS
> 
> [1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 19:16:59 +0000
> >
> > Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> >
> > Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> >
> > Hope this explains what I was thinking of.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 18:33
> >
> > Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > >
> > > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 16:03
> > >
> > > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> > >
> > > Frédéric THOMAS
> > >
> > > From: webdoublefx@hotmail.com
> > > To: users@flex.apache.org
> > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > >
> > >
> > >
> > >
> > > Could be a new goal ?
> > >
> > > Frédéric THOMAS
> > >
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > >
> > > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 13:50
> > > >
> > > > Hi Chris,
> > > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > > Any better ideas?
> > > >
> > > > Frédéric THOMAS
> > > > [1]<profile>
> > > >     <id>prepare-maven-extended-libs</id>
> > > >     <activation>
> > > >         <file>
> > > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > >         </file>
> > > >     </activation>
> > > >     <build>
> > > >         <plugins>
> > > >             <plugin>
> > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > >                 <version>2.8</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <id>copy</id>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>copy</goal>
> > > >                         </goals>
> > > >                         <configuration>
> > > >                             <artifactItems>
> > > >                                 <artifactItem>
> > > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > >                                     <version>1.0.0-SNAPSHOT</version>
> > > >                                     <type>jar</type>
> > > >                                     <overWrite>true</overWrite>
> > > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > >                                 </artifactItem>
> > > >                             </artifactItems>
> > > >                             <overWriteReleases>true</overWriteReleases>
> > > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > > >                         </configuration>
> > > >                     </execution>
> > > >                 </executions>
> > > >             </plugin>
> > > >             <plugin>
> > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > >                 <artifactId>gmaven-plugin</artifactId>
> > > >                 <version>1.4</version>
> > > >                 <executions>
> > > >                     <execution>
> > > >                         <phase>validate</phase>
> > > >                         <goals>
> > > >                             <goal>execute</goal>
> > > >                         </goals>
> > > >                     </execution>
> > > >                 </executions>
> > > >                 <configuration>
> > > >                     <source>
> > > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > > >                     </source>
> > > >                 </configuration>
> > > >             </plugin>
> > > >         </plugins>
> > > >     </build>
> > > > </profile>
> > > >
> > > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > From: christofer.dutz@c-ware.de
> > > > > To: users@flex.apache.org
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > >
> > > > > Cool Stuff.
> > > > >
> > > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > > >
> > > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > > >
> > > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > >
> > > > > Hi,
> > > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > > Frédéric THOMAS
> > > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > > >
> > >
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Unfortunately you will only prevent the warning messages. Still maven won't dresolve the scopes correctly when it comes to transitive dependencies :-( rely shooting would make it necessary do do greater changes in mavens inner workings. But it's still a lot better than to have the errors all the time.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Sa., Dez. 6, 2014 15:54

Hi Chris,

Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.

Or I didn't get well your point :-)

Frédéric THOMAS

[1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 19:16:59 +0000
>
> Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
>
> Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
>
> Hope this explains what I was thinking of.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 18:33
>
> Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
>
> Frédéric THOMAS
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 16:27:54 +0000
> >
> > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 16:03
> >
> > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> >
> > Frédéric THOMAS
> >
> > From: webdoublefx@hotmail.com
> > To: users@flex.apache.org
> > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 15:01:06 +0000
> >
> >
> >
> >
> > Could be a new goal ?
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > >
> > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 13:50
> > >
> > > Hi Chris,
> > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > yes it is even though, I provided a profile to auto install it [1]
> > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > Any better ideas?
> > >
> > > Frédéric THOMAS
> > > [1]<profile>
> > >     <id>prepare-maven-extended-libs</id>
> > >     <activation>
> > >         <file>
> > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > >         </file>
> > >     </activation>
> > >     <build>
> > >         <plugins>
> > >             <plugin>
> > >                 <groupId>org.apache.maven.plugins</groupId>
> > >                 <artifactId>maven-dependency-plugin</artifactId>
> > >                 <version>2.8</version>
> > >                 <executions>
> > >                     <execution>
> > >                         <id>copy</id>
> > >                         <phase>validate</phase>
> > >                         <goals>
> > >                             <goal>copy</goal>
> > >                         </goals>
> > >                         <configuration>
> > >                             <artifactItems>
> > >                                 <artifactItem>
> > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > >                                     <version>1.0.0-SNAPSHOT</version>
> > >                                     <type>jar</type>
> > >                                     <overWrite>true</overWrite>
> > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > >                                 </artifactItem>
> > >                             </artifactItems>
> > >                             <overWriteReleases>true</overWriteReleases>
> > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > >                         </configuration>
> > >                     </execution>
> > >                 </executions>
> > >             </plugin>
> > >             <plugin>
> > >                 <groupId>org.codehaus.gmaven</groupId>
> > >                 <artifactId>gmaven-plugin</artifactId>
> > >                 <version>1.4</version>
> > >                 <executions>
> > >                     <execution>
> > >                         <phase>validate</phase>
> > >                         <goals>
> > >                             <goal>execute</goal>
> > >                         </goals>
> > >                     </execution>
> > >                 </executions>
> > >                 <configuration>
> > >                     <source>
> > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > >                     </source>
> > >                 </configuration>
> > >             </plugin>
> > >         </plugins>
> > >     </build>
> > > </profile>
> > >
> > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > >
> > > > Cool Stuff.
> > > >
> > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > >
> > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > >
> > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 12:41
> > > >
> > > > Hi,
> > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > Frédéric THOMAS
> > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > >
> >
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Hi Chris,

Allowing more Maven Scopes is the reason why the extension I created should be install before the build, for other kind of validations, you can still create your extension but no needs to install it before the build, AFAIK you can simply add it inside the build.extensions of your project  parent pom if the extension is an AbstractMavenLifeCycleParticipant and override the public void afterProjectsRead( MavenSession session ) and I guess from here, with the help of the MavenSession [1], you can have access to anything you need to do other kind of validations or even other things.

Or I didn't get well your point :-)

Frédéric THOMAS

[1] http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 19:16:59 +0000
> 
> Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)
> 
> Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.
> 
> Hope this explains what I was thinking of.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 18:33
> 
> Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 16:27:54 +0000
> >
> > Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 16:03
> >
> > I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> >
> > Frédéric THOMAS
> >
> > From: webdoublefx@hotmail.com
> > To: users@flex.apache.org
> > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 15:01:06 +0000
> >
> >
> >
> >
> > Could be a new goal ?
> >
> > Frédéric THOMAS
> >
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > >
> > > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 13:50
> > >
> > > Hi Chris,
> > > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > > yes it is even though, I provided a profile to auto install it [1]
> > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > > Any better ideas?
> > >
> > > Frédéric THOMAS
> > > [1]<profile>
> > >     <id>prepare-maven-extended-libs</id>
> > >     <activation>
> > >         <file>
> > >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > >         </file>
> > >     </activation>
> > >     <build>
> > >         <plugins>
> > >             <plugin>
> > >                 <groupId>org.apache.maven.plugins</groupId>
> > >                 <artifactId>maven-dependency-plugin</artifactId>
> > >                 <version>2.8</version>
> > >                 <executions>
> > >                     <execution>
> > >                         <id>copy</id>
> > >                         <phase>validate</phase>
> > >                         <goals>
> > >                             <goal>copy</goal>
> > >                         </goals>
> > >                         <configuration>
> > >                             <artifactItems>
> > >                                 <artifactItem>
> > >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> > >                                     <version>1.0.0-SNAPSHOT</version>
> > >                                     <type>jar</type>
> > >                                     <overWrite>true</overWrite>
> > >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > >                                 </artifactItem>
> > >                             </artifactItems>
> > >                             <overWriteReleases>true</overWriteReleases>
> > >                             <overWriteSnapshots>true</overWriteSnapshots>
> > >                         </configuration>
> > >                     </execution>
> > >                 </executions>
> > >             </plugin>
> > >             <plugin>
> > >                 <groupId>org.codehaus.gmaven</groupId>
> > >                 <artifactId>gmaven-plugin</artifactId>
> > >                 <version>1.4</version>
> > >                 <executions>
> > >                     <execution>
> > >                         <phase>validate</phase>
> > >                         <goals>
> > >                             <goal>execute</goal>
> > >                         </goals>
> > >                     </execution>
> > >                 </executions>
> > >                 <configuration>
> > >                     <source>
> > >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> > >                     </source>
> > >                 </configuration>
> > >             </plugin>
> > >         </plugins>
> > >     </build>
> > > </profile>
> > >
> > > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > From: christofer.dutz@c-ware.de
> > > > To: users@flex.apache.org
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > >
> > > > Cool Stuff.
> > > >
> > > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > > >
> > > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > > >
> > > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 12:41
> > > >
> > > > Hi,
> > > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > > Frédéric THOMAS
> > > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> > >
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Well I was thinking of a logic integrated into maven that allows plugins to contribute validators that he'll validating their own configuration. Unfortunately this is only possible using a maven extension (actually exactly the extension point you used). I am and was getting a lot of support questions which would actually be easy to validate automatically but are hard to guide humans through ;-)

Let's say the logic would go through the plugins in the build and check each jar for validator logic an use this it found and have them validate their own configuration.

Hope this explains what I was thinking of.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Fr., Dez. 5, 2014 18:33

Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 16:27:54 +0000
>
> Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 16:03
>
> I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
>
> Frédéric THOMAS
>
> From: webdoublefx@hotmail.com
> To: users@flex.apache.org
> Subject: RE: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 15:01:06 +0000
>
>
>
>
> Could be a new goal ?
>
> Frédéric THOMAS
>
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 14:54:37 +0000
> >
> > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 13:50
> >
> > Hi Chris,
> > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > yes it is even though, I provided a profile to auto install it [1]
> > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > Any better ideas?
> >
> > Frédéric THOMAS
> > [1]<profile>
> >     <id>prepare-maven-extended-libs</id>
> >     <activation>
> >         <file>
> >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> >         </file>
> >     </activation>
> >     <build>
> >         <plugins>
> >             <plugin>
> >                 <groupId>org.apache.maven.plugins</groupId>
> >                 <artifactId>maven-dependency-plugin</artifactId>
> >                 <version>2.8</version>
> >                 <executions>
> >                     <execution>
> >                         <id>copy</id>
> >                         <phase>validate</phase>
> >                         <goals>
> >                             <goal>copy</goal>
> >                         </goals>
> >                         <configuration>
> >                             <artifactItems>
> >                                 <artifactItem>
> >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> >                                     <version>1.0.0-SNAPSHOT</version>
> >                                     <type>jar</type>
> >                                     <overWrite>true</overWrite>
> >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> >                                 </artifactItem>
> >                             </artifactItems>
> >                             <overWriteReleases>true</overWriteReleases>
> >                             <overWriteSnapshots>true</overWriteSnapshots>
> >                         </configuration>
> >                     </execution>
> >                 </executions>
> >             </plugin>
> >             <plugin>
> >                 <groupId>org.codehaus.gmaven</groupId>
> >                 <artifactId>gmaven-plugin</artifactId>
> >                 <version>1.4</version>
> >                 <executions>
> >                     <execution>
> >                         <phase>validate</phase>
> >                         <goals>
> >                             <goal>execute</goal>
> >                         </goals>
> >                     </execution>
> >                 </executions>
> >                 <configuration>
> >                     <source>
> >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> >                     </source>
> >                 </configuration>
> >             </plugin>
> >         </plugins>
> >     </build>
> > </profile>
> >
> > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > >
> > > Cool Stuff.
> > >
> > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > >
> > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > >
> > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 12:41
> > >
> > > Hi,
> > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > Frédéric THOMAS
> > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> >
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Hum.. Not sure I understand totally, you want to add an extension to FlexMojos as a module and that extension could be extended to add features like rules and suggestions regarding the plugin configuration ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 16:27:54 +0000
> 
> Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 16:03
> 
> I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?
> 
> Frédéric THOMAS
> 
> From: webdoublefx@hotmail.com
> To: users@flex.apache.org
> Subject: RE: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 15:01:06 +0000
> 
> 
> 
> 
> Could be a new goal ?
> 
> Frédéric THOMAS
> 
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 14:54:37 +0000
> >
> > Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 13:50
> >
> > Hi Chris,
> > > I assume this is a maven extension which you have to deploy to your maven extension directory
> > yes it is even though, I provided a profile to auto install it [1]
> > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> > Any better ideas?
> >
> > Frédéric THOMAS
> > [1]<profile>
> >     <id>prepare-maven-extended-libs</id>
> >     <activation>
> >         <file>
> >             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> >         </file>
> >     </activation>
> >     <build>
> >         <plugins>
> >             <plugin>
> >                 <groupId>org.apache.maven.plugins</groupId>
> >                 <artifactId>maven-dependency-plugin</artifactId>
> >                 <version>2.8</version>
> >                 <executions>
> >                     <execution>
> >                         <id>copy</id>
> >                         <phase>validate</phase>
> >                         <goals>
> >                             <goal>copy</goal>
> >                         </goals>
> >                         <configuration>
> >                             <artifactItems>
> >                                 <artifactItem>
> >                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> >                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
> >                                     <version>1.0.0-SNAPSHOT</version>
> >                                     <type>jar</type>
> >                                     <overWrite>true</overWrite>
> >                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> >                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> >                                 </artifactItem>
> >                             </artifactItems>
> >                             <overWriteReleases>true</overWriteReleases>
> >                             <overWriteSnapshots>true</overWriteSnapshots>
> >                         </configuration>
> >                     </execution>
> >                 </executions>
> >             </plugin>
> >             <plugin>
> >                 <groupId>org.codehaus.gmaven</groupId>
> >                 <artifactId>gmaven-plugin</artifactId>
> >                 <version>1.4</version>
> >                 <executions>
> >                     <execution>
> >                         <phase>validate</phase>
> >                         <goals>
> >                             <goal>execute</goal>
> >                         </goals>
> >                     </execution>
> >                 </executions>
> >                 <configuration>
> >                     <source>
> >                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
> >                     </source>
> >                 </configuration>
> >             </plugin>
> >         </plugins>
> >     </build>
> > </profile>
> >
> > [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > From: christofer.dutz@c-ware.de
> > > To: users@flex.apache.org
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > >
> > > Cool Stuff.
> > >
> > > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> > >
> > > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> > >
> > > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > > An: "users@flex.apache.org" <us...@flex.apache.org>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Fr., Dez. 5, 2014 12:41
> > >
> > > Hi,
> > > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > > Frédéric THOMAS
> > > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> >
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Eventually a modular solution would be a good idea. One that can be extended with rules and suggestions regarding the plugin configuration. If for example someone uses deprecated config options or invalid ones, if someone uses bad practices etc.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Fr., Dez. 5, 2014 16:03

I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?

Frédéric THOMAS

From: webdoublefx@hotmail.com
To: users@flex.apache.org
Subject: RE: AW: [FlexMojos] Compatible Model Validator
Date: Fri, 5 Dec 2014 15:01:06 +0000




Could be a new goal ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 14:54:37 +0000
>
> Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 13:50
>
> Hi Chris,
> > I assume this is a maven extension which you have to deploy to your maven extension directory
> yes it is even though, I provided a profile to auto install it [1]
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> Any better ideas?
>
> Frédéric THOMAS
> [1]<profile>
>     <id>prepare-maven-extended-libs</id>
>     <activation>
>         <file>
>             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
>         </file>
>     </activation>
>     <build>
>         <plugins>
>             <plugin>
>                 <groupId>org.apache.maven.plugins</groupId>
>                 <artifactId>maven-dependency-plugin</artifactId>
>                 <version>2.8</version>
>                 <executions>
>                     <execution>
>                         <id>copy</id>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>copy</goal>
>                         </goals>
>                         <configuration>
>                             <artifactItems>
>                                 <artifactItem>
>                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
>                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
>                                     <version>1.0.0-SNAPSHOT</version>
>                                     <type>jar</type>
>                                     <overWrite>true</overWrite>
>                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
>                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
>                                 </artifactItem>
>                             </artifactItems>
>                             <overWriteReleases>true</overWriteReleases>
>                             <overWriteSnapshots>true</overWriteSnapshots>
>                         </configuration>
>                     </execution>
>                 </executions>
>             </plugin>
>             <plugin>
>                 <groupId>org.codehaus.gmaven</groupId>
>                 <artifactId>gmaven-plugin</artifactId>
>                 <version>1.4</version>
>                 <executions>
>                     <execution>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>execute</goal>
>                         </goals>
>                     </execution>
>                 </executions>
>                 <configuration>
>                     <source>
>                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
>                     </source>
>                 </configuration>
>             </plugin>
>         </plugins>
>     </build>
> </profile>
>
> [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 11:51:34 +0000
> >
> > Cool Stuff.
> >
> > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> >
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> >
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 12:41
> >
> > Hi,
> > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > Frédéric THOMAS
> > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
>


AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Well I wouldn't add it as a new goal to the core, but as I was thinking of a utility mojo for downloading and mavenizing a new flex version, that would probably fit.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Fr., Dez. 5, 2014 16:03

I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?

Frédéric THOMAS

From: webdoublefx@hotmail.com
To: users@flex.apache.org
Subject: RE: AW: [FlexMojos] Compatible Model Validator
Date: Fri, 5 Dec 2014 15:01:06 +0000




Could be a new goal ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 14:54:37 +0000
>
> Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 13:50
>
> Hi Chris,
> > I assume this is a maven extension which you have to deploy to your maven extension directory
> yes it is even though, I provided a profile to auto install it [1]
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> Any better ideas?
>
> Frédéric THOMAS
> [1]<profile>
>     <id>prepare-maven-extended-libs</id>
>     <activation>
>         <file>
>             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
>         </file>
>     </activation>
>     <build>
>         <plugins>
>             <plugin>
>                 <groupId>org.apache.maven.plugins</groupId>
>                 <artifactId>maven-dependency-plugin</artifactId>
>                 <version>2.8</version>
>                 <executions>
>                     <execution>
>                         <id>copy</id>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>copy</goal>
>                         </goals>
>                         <configuration>
>                             <artifactItems>
>                                 <artifactItem>
>                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
>                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
>                                     <version>1.0.0-SNAPSHOT</version>
>                                     <type>jar</type>
>                                     <overWrite>true</overWrite>
>                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
>                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
>                                 </artifactItem>
>                             </artifactItems>
>                             <overWriteReleases>true</overWriteReleases>
>                             <overWriteSnapshots>true</overWriteSnapshots>
>                         </configuration>
>                     </execution>
>                 </executions>
>             </plugin>
>             <plugin>
>                 <groupId>org.codehaus.gmaven</groupId>
>                 <artifactId>gmaven-plugin</artifactId>
>                 <version>1.4</version>
>                 <executions>
>                     <execution>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>execute</goal>
>                         </goals>
>                     </execution>
>                 </executions>
>                 <configuration>
>                     <source>
>                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
>                     </source>
>                 </configuration>
>             </plugin>
>         </plugins>
>     </build>
> </profile>
>
> [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 11:51:34 +0000
> >
> > Cool Stuff.
> >
> > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> >
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> >
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 12:41
> >
> > Hi,
> > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > Frédéric THOMAS
> > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
>


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
I mean, adding the extension as a new module and add a goal to install the extension, what do you think ?

Frédéric THOMAS

From: webdoublefx@hotmail.com
To: users@flex.apache.org
Subject: RE: AW: [FlexMojos] Compatible Model Validator
Date: Fri, 5 Dec 2014 15:01:06 +0000




Could be a new goal ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 14:54:37 +0000
> 
> Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 13:50
> 
> Hi Chris,
> > I assume this is a maven extension which you have to deploy to your maven extension directory
> yes it is even though, I provided a profile to auto install it [1]
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> Any better ideas?
> 
> Frédéric THOMAS
> [1]<profile>
>     <id>prepare-maven-extended-libs</id>
>     <activation>
>         <file>
>             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
>         </file>
>     </activation>
>     <build>
>         <plugins>
>             <plugin>
>                 <groupId>org.apache.maven.plugins</groupId>
>                 <artifactId>maven-dependency-plugin</artifactId>
>                 <version>2.8</version>
>                 <executions>
>                     <execution>
>                         <id>copy</id>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>copy</goal>
>                         </goals>
>                         <configuration>
>                             <artifactItems>
>                                 <artifactItem>
>                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
>                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
>                                     <version>1.0.0-SNAPSHOT</version>
>                                     <type>jar</type>
>                                     <overWrite>true</overWrite>
>                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
>                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
>                                 </artifactItem>
>                             </artifactItems>
>                             <overWriteReleases>true</overWriteReleases>
>                             <overWriteSnapshots>true</overWriteSnapshots>
>                         </configuration>
>                     </execution>
>                 </executions>
>             </plugin>
>             <plugin>
>                 <groupId>org.codehaus.gmaven</groupId>
>                 <artifactId>gmaven-plugin</artifactId>
>                 <version>1.4</version>
>                 <executions>
>                     <execution>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>execute</goal>
>                         </goals>
>                     </execution>
>                 </executions>
>                 <configuration>
>                     <source>
>                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
>                     </source>
>                 </configuration>
>             </plugin>
>         </plugins>
>     </build>
> </profile>
> 
> [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 11:51:34 +0000
> >
> > Cool Stuff.
> >
> > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> >
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> >
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 12:41
> >
> > Hi,
> > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > Frédéric THOMAS
> > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> 
 		 	   		   		 	   		  

RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Could be a new goal ?

Frédéric THOMAS

> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 14:54:37 +0000
> 
> Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 13:50
> 
> Hi Chris,
> > I assume this is a maven extension which you have to deploy to your maven extension directory
> yes it is even though, I provided a profile to auto install it [1]
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
> Any better ideas?
> 
> Frédéric THOMAS
> [1]<profile>
>     <id>prepare-maven-extended-libs</id>
>     <activation>
>         <file>
>             <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
>         </file>
>     </activation>
>     <build>
>         <plugins>
>             <plugin>
>                 <groupId>org.apache.maven.plugins</groupId>
>                 <artifactId>maven-dependency-plugin</artifactId>
>                 <version>2.8</version>
>                 <executions>
>                     <execution>
>                         <id>copy</id>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>copy</goal>
>                         </goals>
>                         <configuration>
>                             <artifactItems>
>                                 <artifactItem>
>                                     <groupId>com.doublefx.maven.utils.flexmojos</groupId>
>                                     <artifactId>flexmojos-compatible-model-validator</artifactId>
>                                     <version>1.0.0-SNAPSHOT</version>
>                                     <type>jar</type>
>                                     <overWrite>true</overWrite>
>                                     <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
>                                     <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
>                                 </artifactItem>
>                             </artifactItems>
>                             <overWriteReleases>true</overWriteReleases>
>                             <overWriteSnapshots>true</overWriteSnapshots>
>                         </configuration>
>                     </execution>
>                 </executions>
>             </plugin>
>             <plugin>
>                 <groupId>org.codehaus.gmaven</groupId>
>                 <artifactId>gmaven-plugin</artifactId>
>                 <version>1.4</version>
>                 <executions>
>                     <execution>
>                         <phase>validate</phase>
>                         <goals>
>                             <goal>execute</goal>
>                         </goals>
>                     </execution>
>                 </executions>
>                 <configuration>
>                     <source>
>                         fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
>                     </source>
>                 </configuration>
>             </plugin>
>         </plugins>
>     </build>
> </profile>
> 
> [2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > From: christofer.dutz@c-ware.de
> > To: users@flex.apache.org
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Fri, 5 Dec 2014 11:51:34 +0000
> >
> > Cool Stuff.
> >
> > Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> >
> > I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> >
> > Nave now there's a way to add that as an additional module? But only if you're interested in this.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <we...@hotmail.com>
> > An: "users@flex.apache.org" <us...@flex.apache.org>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Fr., Dez. 5, 2014 12:41
> >
> > Hi,
> > For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> > Frédéric THOMAS
> > [1] https://github.com/doublefx/flexmojos-compatible-model-validator
> 
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Well I was more thinking of adding a module to flexmojos in order to release the lib. Copying would have to remain a manual task as I don't want to modify the maven installation.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Fr., Dez. 5, 2014 13:50

Hi Chris,
> I assume this is a maven extension which you have to deploy to your maven extension directory
yes it is even though, I provided a profile to auto install it [1]
> I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> Nave now there's a way to add that as an additional module? But only if you're interested in this.
Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
Any better ideas?

Frédéric THOMAS
[1]<profile>
    <id>prepare-maven-extended-libs</id>
    <activation>
        <file>
            <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
        </file>
    </activation>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.8</version>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>com.doublefx.maven.utils.flexmojos</groupId>
                                    <artifactId>flexmojos-compatible-model-validator</artifactId>
                                    <version>1.0.0-SNAPSHOT</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
                                    <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
                                </artifactItem>
                            </artifactItems>
                            <overWriteReleases>true</overWriteReleases>
                            <overWriteSnapshots>true</overWriteSnapshots>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>gmaven-plugin</artifactId>
                <version>1.4</version>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <source>
                        fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
                    </source>
                </configuration>
            </plugin>
        </plugins>
    </build>
</profile>

[2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 11:51:34 +0000
>
> Cool Stuff.
>
> Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
>
> I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
>
> Nave now there's a way to add that as an additional module? But only if you're interested in this.
>
> Chris
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 12:41
>
> Hi,
> For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> Frédéric THOMAS
> [1] https://github.com/doublefx/flexmojos-compatible-model-validator


RE: AW: [FlexMojos] Compatible Model Validator

Posted by Frédéric THOMAS <we...@hotmail.com>.
Hi Chris,
> I assume this is a maven extension which you have to deploy to your maven extension directory
yes it is even though, I provided a profile to auto install it [1]
> I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
It happened to me as well and he even kicked me out of the group, bloody Velo :-)
> Nave now there's a way to add that as an additional module? But only if you're interested in this.
Well I wouldn't how to do except that the plugin could copy the deployed extension into the lib/ext folder as done in Wagon maven plugin [2]
Any better ideas?

Frédéric THOMAS
[1]<profile>
    <id>prepare-maven-extended-libs</id>
    <activation>
        <file>
            <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
        </file>
    </activation>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.8</version>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>com.doublefx.maven.utils.flexmojos</groupId>
                                    <artifactId>flexmojos-compatible-model-validator</artifactId>
                                    <version>1.0.0-SNAPSHOT</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
                                    <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
                                </artifactItem>
                            </artifactItems>
                            <overWriteReleases>true</overWriteReleases>
                            <overWriteSnapshots>true</overWriteSnapshots>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>gmaven-plugin</artifactId>
                <version>1.4</version>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <source>
                        fail("FlexMojos Compatible Model Validator extension is now configured. Please restart the build, and then it will be successful.")
                    </source>
                </configuration>
            </plugin>
        </plugins>
    </build>
</profile>

[2] http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> From: christofer.dutz@c-ware.de
> To: users@flex.apache.org
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 5 Dec 2014 11:51:34 +0000
> 
> Cool Stuff.
> 
> Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?
> 
> I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.
> 
> Nave now there's a way to add that as an additional module? But only if you're interested in this.
> 
> Chris
> 
> Gesendet mit meinem HTC
> 
> ----- Reply message -----
> Von: "Frédéric THOMAS" <we...@hotmail.com>
> An: "users@flex.apache.org" <us...@flex.apache.org>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Fr., Dez. 5, 2014 12:41
> 
> Hi,
> For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
> Frédéric THOMAS
> [1] https://github.com/doublefx/flexmojos-compatible-model-validator
 		 	   		  

AW: [FlexMojos] Compatible Model Validator

Posted by Christofer Dutz <ch...@c-ware.de>.
Cool Stuff.

Will definitely look into this. But I assume this is a maven extension which you have to deploy to your maven extension directory, our was there a maven change that allows this as a plugin?

I remember discussing something like this with cello a few years ago but he deleted my posts on this topic and refused to add that to flexmojos.

Nave now there's a way to add that as an additional module? But only if you're interested in this.

Chris

Gesendet mit meinem HTC

----- Reply message -----
Von: "Frédéric THOMAS" <we...@hotmail.com>
An: "users@flex.apache.org" <us...@flex.apache.org>
Betreff: [FlexMojos] Compatible Model Validator
Datum: Fr., Dez. 5, 2014 12:41

Hi,
For those interested I created and shared a Maven extension to get rid of the Maven warnings regarding the custom scopes [1].
Frédéric THOMAS
[1] https://github.com/doublefx/flexmojos-compatible-model-validator