Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mdt-papyrus.dev] [PROVENANCE INTERNET] Re: [PROVENANCE INTERNET] Re: discusion relative to maven integration in papyrus

Hi,

 

Thanks Christian for this report. It’s especially interesting to see that M2E behaves a lot like PDE regarding the .classpath configuration. Most performance issues only seem to occur on the first build or are related to actual errors/inconsistencies in the plug-ins, so they will not affect day-to-day work (And will actually help detecting and solving issues rather than ignoring them).

 

I also agree on the M1 schedule

 

Camille

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de LETAVERNIER Camille
Envoyé : jeudi 19 février 2015 13:40
À : Papyrus Project list
Objet : [PROVENANCE INTERNET] Re: [mdt-papyrus.dev] [PROVENANCE INTERNET] Re: discusion relative to maven integration in papyrus

 

Hi,

 

Ø  Perhaps it could be good to know what is the exact version of maven on the hudson server, so we could assert that we have exactly the same environment.

 

Currently, Maven 3.2.5. You can check that in the Maven Build Information produced for each build on Papyrus HIPP

 

Camille

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de LE FEVRE FRANCOIS
Envoyé : jeudi 19 février 2015 13:07
À : Papyrus Project list
Objet : [PROVENANCE INTERNET] Re: [mdt-papyrus.dev] discusion relative to maven integration in papyrus

 

Hi, Christian,

 

Your report « Maven Nature in Papyrus source projects” is really good.

I had really appreciated it covers all aspects from installation , to configuration, to scalability…

 

About the installation process.

Perhaps it could be good to know what is the exact version of maven on the hudson server, so we could assert that we have exactly the same environment.

You can link a specific maven instance that is not embedded within the eclipse/oomph in the installations setup/eclipse preference.

 

 

Performance/Scalability

Your tests were really precise and it is a good news to see that there are no major impact in the time of each step.

They are still in the same magnitude order, even if m2e is a little longer.

 

Mvn clean install

If we add the nature maven, it is really important that the “mvn clean install” default command works.

This will be the basic test that will lead an external developer that comes from the maven side.

 

Benefits

To my humble opinion, the major benefits are:

·         Better code industrialization

o   Unify developer and releng and test environments on a common basis maven/tycho

o   Detect many small bugs/misconfiguration (.classpath, missing pom, so missing plugin in the build process)

·         Improve developer’s experience

o   Decrease the size of the repository if we are able to generate at the fly the generated code for XTend,  EMF and GMF ( I have tried to setup a project to generate clazz diagram but I am block on a specific dependency, I will need help there)

o   Less git trigger

o   No modification of the src-gen folders by the developers, best code practices

·         Maven galaxy

o   By using maven we could rely more on convention rather than configuration

o   It could be also a good start to define some api/tools independent from Eclipse and then encapsulate them for Eclipse IDE, or other workbench (web?)

o   It is a step for instance to develop our own maven archetype to create default papyrus eclipse plugins ensuring a shared infrastructure

o   We could also rely on many other plugins that will help us to refine the releng process.

 

Integration

I do agree with your proposition to make the modification in the first milestone post Mars.

It could be also the good time to organize/simplify the source repository, as proposed by Benoit, by adding pom to group plugins elements together (children/module feature) and eventually to add additional repositories to separate project concepts.

 

Initially I was afraid because you use at the beginning of the report the term “it has  been proposed to convert” which was too strong, but then you precise “adding the maven nature”.

I do not want to break the amazing work that have been done, I just want to open a new way to manipulate the papyrus source code.

And finally it is not a “new way”, as the papyrus team has already done the migration to tycho, it is just to strengthen this link papyrus/tycho/maven.

 

Again Thanks a lot for this report.

 

Francois

 

 

 

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de Christian W. Damus
Envoyé : jeudi 19 février 2015 04:24
À : Papyrus Project list
Objet : Re: [mdt-papyrus.dev] discusion relative to maven integration in papyrus

 

Hi, François, all,

 

I have completed a preliminary experiment with the M2Eclipse maven nature in a large Papyrus workspace and, I have to say, I am quite pleased with the results.  My concerns about performance and scalability turn out to be pretty much dispelled (at least as far as Papyrus is concerned).

 

Perhaps my previous experience with maven projects in Eclipse suffered from either the particular set-up of the projects I was working with, or M2Eclipse has just gotten that much better, or my memories are at least in part fictional, or some combination of all of these factors.  In short, although I don’t yet see much concrete advantage for developers in the general case to convert our source projects to the maven nature, neither do I have any objection now.  It is still something of a sweeping change that might rather wait until the summer, but of course we can discuss that.  Also, I don’t know how I could practically continue to “soak” this environment with real development work to give it a more thorough test, as I am between major feature development activities and work on a branch would imply continual merges of probably an annoying kind (considering how very many files would be different).

 

Anyhow, I have prepared what I think is a fairly upbeat report on the matter [1] and I have added a blurb with a link to the same report to the Wiki, in the Developer Guide [2].  I’d appreciate your comments.

 

Cheers,

 

Christian

 


Back to the top