Re: Need inputs before starting a new RC for 1.10.6

2019-03-30 Thread Stefan Bodewig
On 2019-03-28, Gintautas Grigelionis wrote:

> 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.

I'll now start with reverting the change and see what it would take to
make the test pass. In the end excluding the failing test(s) seem to be
the way to go.

Stefan

-
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org



Re: Need inputs before starting a new RC for 1.10.6

2019-03-28 Thread Gintautas Grigelionis
On Thu, 28 Mar 2019 at 15:36, Stefan Bodewig  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/


Re: Need inputs before starting a new RC for 1.10.6

2019-03-28 Thread Stefan Bodewig
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.

Stefan

-
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org



Need inputs before starting a new RC for 1.10.6

2019-03-28 Thread Jaikiran Pai
After releasing the (now aborted) RC1 of 1.10.6 last week, I went back
to see how I managed to mess up that RC. While looking into that, I
uncovered an unrelated issue which I think now needs attention and
decision before I start a new RC release for 1.10.6.

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).

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. Is that version supposed to be
updated every time a newer release is done? What's the point of getting
a released version of Ant when the whole "latest" code of Ant is
available and built locally and can be used by these poms for whatever
tests need to be run against the Ant distribution?

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?

Any thoughts on how I should proceed? This isn't an isolated single
commit in the poms so I don't really know what impact it might have just
undoing this change (if that's the way to go).

For now, I won't be initiating a RC for 1.10.6 till we come to a
decision around these poms and this one in particular.

[1]
https://github.com/apache/ant/commit/f871e80a6a9f6165137d24b72e209a73283494e8#diff-da69e4ebd862444e205e118aa2aed802

[2]
https://github.com/apache/ant/commit/f871e80a6a9f6165137d24b72e209a73283494e8#diff-c4ff64043583b0162e0b77f91c2e8a1eR112

-Jaikiran



-
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org