Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ee4j-pmc] EE4J parent pom

Dmitry,

 

first of all, thanks for publishing the parent pom! I think this can become a valueable tool! :-)

 

Second, I have some negative feedback, too. I tried to apply the parent pom to JAX-RS API and it makes more work to integrate it than it provides value. The reason is that this is not a pure parent pom, but it more looks like the head of a multi-module project where it is expected that all modules look and work the same. This is not the case of EE4J. All projects are independent, and so the following issues are:

 

- Lukas is mentioned as a programmer in all projects now and it cannot be overridden by subprojects. This is a no-go as for example at JAX-RS we do not mention ANY developers in the POM, so the result now is that in JAX-RS he is listed as the SOLE programmer. That is a showstopper for using the parent POM at least in JAX-RS.

- The description given in the parent pom is used in all subprojects unless these explicitly overide the <description> that. At JAX-RS we do not have a description, so we either need to add one or at least add an empty <description/> element. That's not nice as it implies work. Nobody wants to have the EE4J description as the default for the subproject.

- The inception year is defaulted by 2018 now. This is problematic as this element is used by some maven plugins, e. g. to set the copyright year. JAX-RS does not have this element in its POM, so Maven did not know our inception. Now it is overriden by 2018, which simply is wrong. Hence, this is a source of failure, even with a legal aspect. If JAX-RS adopts the parent pom, we MUST override the inception year now. BTW, I assume ALL existing projects MUST do that, so what is this default good for at all?

+ The sole benefit JAX-RS actually found is that we get rid of our own <licences> and <organization> elements (just a few lines actually), and the preconfigured Sonatype repos.

 

To sum up: I do not see that the benefit outweighs the drawbacks from the view of the JAX-RS API project. Nevertheless, it is not my decision, so I will open a PR tomorrow and let the contributors vote.

 

My first advice to the PMC would be to immediately step up from 1.0 to 1.1-SNAPSHOT, open a PR for 1.1, and let the project committers discuss the proposal on Github FIRST before publishing a parent POM to Maven Central. My second advice to the PMC would be to get rid of <developers>, <description>, <inceptionYear> and all other non-essential stuff. Start with the absolute minimal information that is really really really the same for all projects and then let the project committers propose additions in the form of POM profiles and / or optional plugins (aka dependencyManagement).

 

Regards

-Markus

 

From: ee4j-pmc-bounces@xxxxxxxxxxx [mailto:ee4j-pmc-bounces@xxxxxxxxxxx] On Behalf Of Dmitry Kornilov
Sent: Freitag, 11. Mai 2018 14:40
To: EE4J PMC Discussions
Subject: [ee4j-pmc] EE4J parent pom

 

Hi,

 

We managed to deploy the first version of EE4J parent pom. See here: http://search.maven.org/#search%7Cga%7C1%7Corg.eclipse.ee4j

We will try to use it in some projects. When it works smoothly I’ll write a wiki page with instructions and PMC should oficially recommend it to use in all EE4J projects.

 

Thanks,

Dmitry


Back to the top