On Thu, 28 Mar 2019 at 15:36, Stefan Bodewig <bode...@apache.org> wrote:
> On 2019-03-28, Jaikiran Pai wrote: > > > As far as I understand the pom files that we maintain and publish to > > Maven central are basic minimal. However, a bunch of relatively recent > > commits have introduced certain changes to those poms. I have gone > > through the mail discussion/commit logs to understand why this was done > > and what goal it was trying to achieve and how it was trying to achieve > > that. Reading that discussion, I haven't understood these changes and > > nor do I understand them now after reviewing them again (there's more > > than one commit). > > The goal was to build Ant from the poms AFAIR. There is a Jenkins Job > that does that as part of the nightly build. > > https://builds.apache.org/view/A/view/Ant/job/Ant-Build-from-POMs/ > > > However, the commit of note (or at least the issue I spotted was) is > > this[1]. Specifically this content[2]. I don't understand why it's coded > > to fetch a specific version of Ant. > > I must admit I've forgotten the rationaly behind this myself. > > > Furthermore, when these poms are now released, the released 1.10.6 > > version (for example) will now end up having this (artificial) > > dependency on 1.10.5 Ant zip distribution and that's a public facing > > pom. Is that the right thing? > > Two things - apart from trying to figure out whether this is really > necessary at all: > > * this is not a dependency in the maven sense of things, so it is only > half bad for people actually using the POM. * if we keep this, we > should be using http://archive.apache.org/dist/ant/binaries/ rather > than a mirror that is going to drop the old release as soon as we > release a new one. > > > Any thoughts on how I should proceed? > > I'd revert this particular change and try to do what the Jenkins job > does in order to see what breaks. The build assumes you are trying to > build the binaries via Maven so there is no binary of the current > version of Ant available at that point in time, > > I offer to give it a try myself during the weekend as I think I've been > somewhat involved back then. > The download is used in order to execute unit tests in Surefire. There are some unit tests that are dependent on bootstrap, which is not available in Maven build. Perhaps the unit tests could be modified to avoid that. Otherwise, the test code could be filtered out. Another thing worth considering is Maven flatten plugin [1]. Gintas [1] https://www.mojohaus.org/flatten-maven-plugin/