Kenneth Knowles commented on BEAM-4057:

I'm a -1 on 4 and 5. Since it is machine readable it doesn't matter about the 
hierarchy. And when I go and browse a pom online and find it has a parent 
pointer that just creates extra work for someone trying to figure out what is 
going on.

> Ensure generated pom don't break consumers
> ------------------------------------------
>                 Key: BEAM-4057
>                 URL: https://issues.apache.org/jira/browse/BEAM-4057
>             Project: Beam
>          Issue Type: Sub-task
>          Components: build-system
>            Reporter: Romain Manni-Bucau
>            Assignee: Luke Cwik
>            Priority: Major
> Out of my head here are the requirements:
> 1. dependencies are all here (all scopes and well scoped: this means that 
> provided or test dependencies are not in compile scope for instance)
> 2. META-INF should contain the pom.xml and pom.properties as maven generates 
> them (it is consumes by tools and libraries to grab the dependencies or scan 
> some classpath/lib folder)
> 3. ensure the compiler plugin at least is defined with the java 
> version+compiler flags (a usage is to check if -parameters is activated for 
> instance)
> 4. (nice to have) dont put all the boilerplate in all poms (license, etc) but 
> keep it in the parent pom as it was
> 5. (if possible) respect the hierarchy (parents) - this is used sometimes as 
> a shortcut for dependencies analyzis cause it is faster than analyzing the 
> dependencies, probably not the best practise ever but it is efficient in 
> general
> 6. ensure meta used by mainstream tools like mvnrepository are here 
> (description etc, should be a passthrough from gradle)

This message was sent by Atlassian JIRA

Reply via email to