Ant Contrib

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Ant Contrib

Gintautas Grigelionis
I noticed that Ivy has Ant Contrib as a dependency. It's a project that has
been asleep for a decade, and it shows. So I decided to revive it, and the
result is here: https://github.com/twogee/ant-contrib

The question is, of course, is this sufficient for a 1.1 release? The next
step would be a 2.0 release, removing what is no longer relevant (variable,
importurl, post -- please suggest :-). As for HTTP methods, I'd like to
improve on Missing Link tasks: https://github.com/twogee/ant-http

Gintas

P.S. While we're at it, in the light of the latest ASM debacle, I'm
interested in improving Ant classloader task, see
https://github.com/apache/ant/compare/master...gagern:28228-classloader; I
also cloned the original proposal here:
https://github.com/twogee/ant-classloader
Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Earl Hood
On Sun, Jun 4, 2017 at 4:47 AM, Gintautas Grigelionis wrote:

> I noticed that Ivy has Ant Contrib as a dependency. It's a project
> that has been asleep for a decade, and it shows. So I decided to
> revive it, and the result is here:
> https://github.com/twogee/ant-contrib

When you say "revive", what exactly do you plan on changing?  Are you
planning on taking ownership of the project or making a fork?

I am sure I am not the only person who is involved in a project that
makes use of ant-contrib tasks.

--ewh

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Paul King
In reply to this post by Gintautas Grigelionis
On Sun, Jun 4, 2017 at 7:47 PM, Gintautas Grigelionis <
[hidden email]> wrote:

> [...]
> P.S. While we're at it, in the light of the latest ASM debacle, I'm
> interested in improving Ant classloader task

[...]


Which ASM issue(s) are you referring to? Is there a link to some
discussions?

Cheers, Paul.
Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Gintautas Grigelionis
In reply to this post by Earl Hood
Sorry for not being clear about my intentions.

I made some changes already (SAX → SAX2, which makes ant contrib work
without having an ancient Xerces around). Would that be sufficient for 1.1
release?

Next, it needs pruning (anybody needs an Ivy 1 wrapper? or httpclient 3
wrapper? is local a good enough replacement for var?), that's why I asked
for your opinions. The pruned version should be released as 2.0

Gintas

2017-06-05 4:25 GMT+02:00 Earl Hood <[hidden email]>:

> On Sun, Jun 4, 2017 at 4:47 AM, Gintautas Grigelionis wrote:
>
> > I noticed that Ivy has Ant Contrib as a dependency. It's a project
> > that has been asleep for a decade, and it shows. So I decided to
> > revive it, and the result is here:
> > https://github.com/twogee/ant-contrib
>
> When you say "revive", what exactly do you plan on changing?  Are you
> planning on taking ownership of the project or making a fork?
>
> I am sure I am not the only person who is involved in a project that
> makes use of ant-contrib tasks.
>
> --ewh
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Gintautas Grigelionis
In reply to this post by Paul King
Jan was having a problem with JaCoCo last week because of multiple copies
of ASM library on the classpath because he was building both Ant and Ivy in
the same workspace. He mentioned making some checks on the contents of the
classpath. I thought it was appropriate to remind of a solution that was
proposed 12 years ago :-)

Gintas

2017-06-05 6:16 GMT+02:00 Paul King <[hidden email]>:

> On Sun, Jun 4, 2017 at 7:47 PM, Gintautas Grigelionis <
> [hidden email]> wrote:
>
> > [...]
> > P.S. While we're at it, in the light of the latest ASM debacle, I'm
> > interested in improving Ant classloader task
>
> [...]
>
>
> Which ASM issue(s) are you referring to? Is there a link to some
> discussions?
>
> Cheers, Paul.
>
Reply | Threaded
Open this post in threaded view
|

AW: Ant Contrib

Jan Matèrne (jhm)
Some years ago there were a discussion about having ant-contrib a part of Ant.
Result was that it wasn't possible due IP (and therefore legal) reasons.

Having a look at the tasklist [1] there are some I would use:
* antcallback: maybe enhance <antcall>
* antfetch: maybe (same base idea as antcallback)
* assert: not required, you could use antunit
* foreach: no in favour of 'for'
* for: yep
* if: not required since xmlns:if is available
* outofdate: no idea
* runtarget: no: use <ant> or <macrodef> or <antcall>
* switch: maybe, but would be in contra to <if>, you could use <antcall target="prefix${value}">
* throw: no, maybe enhance <fail>
* timetstampselector: no; nice idea but I would investigate more in using resource collections and all existing selectors, not only the tstamp one
* trycatch: maybe
* httppost: yep
* antserver: no
* performancemonitor: no, use ProfileLogger [2]
* stopwatch: no, use [2]
* osfamily: use <os> condition
* shellscript: use <script>
* math: unsure, why do you want to calculate in a buildfile? (small calculations can be done with <propertyfile>)
* propertycopy: maybe we should promote the props antlib [3] ...
* propertyselector: no
* pathtofileset: unsure
* propertyregex: maybe, but maybe I also should have a deeper look into props-antlib
* sortlist: no
* urlencode: maybe
* variable: no, you may use <local> in a <macrodef>
* forget: no, exec+spawn
* limit: unsure; the timeout for long-running tests is done on the CI server these days
* antclipse: no (unstable)
* compilewithwalls: no (deprecated)
* inifile: maybe (primarily use outside the java world? do we need a <registry> task? A windows-antlib?)
* verifydesign: unsure; a breaking build would be a clear signal; but tools like SonarQube and all the architectural tools (I should have a look at ;) are much more powerful than this



Jan


[1] http://ant-contrib.sourceforge.net/tasks/tasks/index.html
[2] http://ant.apache.org/manual/listeners.html#ProfileLogger
[3] http://ant.apache.org/antlibs/props/index.html




> -----Ursprüngliche Nachricht-----
> Von: Gintautas Grigelionis [mailto:[hidden email]]
> Gesendet: Montag, 5. Juni 2017 06:22
> An: Ant Developers List; Paul King
> Betreff: Re: Ant Contrib
>
> Jan was having a problem with JaCoCo last week because of multiple
> copies of ASM library on the classpath because he was building both Ant
> and Ivy in the same workspace. He mentioned making some checks on the
> contents of the classpath. I thought it was appropriate to remind of a
> solution that was proposed 12 years ago :-)
>
> Gintas
>
> 2017-06-05 6:16 GMT+02:00 Paul King <[hidden email]>:
>
> > On Sun, Jun 4, 2017 at 7:47 PM, Gintautas Grigelionis <
> > [hidden email]> wrote:
> >
> > > [...]
> > > P.S. While we're at it, in the light of the latest ASM debacle, I'm
> > > interested in improving Ant classloader task
> >
> > [...]
> >
> >
> > Which ASM issue(s) are you referring to? Is there a link to some
> > discussions?
> >
> > Cheers, Paul.
> >


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Gintautas Grigelionis
Thanks for the comment. IMHO, if there ever would be an Ant Contrib 2.0, it
should contain at least

antcallback
antfetch
for
if (I see use cases where xmlns:if is more cumbersome :-)
outofdate
switch
trycatch/throw
switch
stopwatch (for those who like adding timers in the script rather than using
a listener)
math (although it might be easier using JavaScript scriptdef nowadays)
propertycopy
propertyregex
propertyselector (what would be a replacement here?)
urlencode
limit
antclipse (perhaps enhanced with multirootfileset)
inifile
verifydesign

http task(s) deserve a separate antlib. The tasks on the block are

assert
foreach
runtarget
timestampselector
antserver
performancemonitor
osfamily
shellscript
sortlist
variable
forget
compilewithwalls

Gintas

2017-06-05 15:13 GMT+02:00 Jan Matèrne (jhm) <[hidden email]>:

> Some years ago there were a discussion about having ant-contrib a part of
> Ant.
> Result was that it wasn't possible due IP (and therefore legal) reasons.
>
> Having a look at the tasklist [1] there are some I would use:
> * antcallback: maybe enhance <antcall>
> * antfetch: maybe (same base idea as antcallback)
> * assert: not required, you could use antunit
> * foreach: no in favour of 'for'
> * for: yep
> * if: not required since xmlns:if is available
> * outofdate: no idea
> * runtarget: no: use <ant> or <macrodef> or <antcall>
> * switch: maybe, but would be in contra to <if>, you could use <antcall
> target="prefix${value}">
> * throw: no, maybe enhance <fail>
> * timetstampselector: no; nice idea but I would investigate more in using
> resource collections and all existing selectors, not only the tstamp one
> * trycatch: maybe
> * httppost: yep
> * antserver: no
> * performancemonitor: no, use ProfileLogger [2]
> * stopwatch: no, use [2]
> * osfamily: use <os> condition
> * shellscript: use <script>
> * math: unsure, why do you want to calculate in a buildfile? (small
> calculations can be done with <propertyfile>)
> * propertycopy: maybe we should promote the props antlib [3] ...
> * propertyselector: no
> * pathtofileset: unsure
> * propertyregex: maybe, but maybe I also should have a deeper look into
> props-antlib
> * sortlist: no
> * urlencode: maybe
> * variable: no, you may use <local> in a <macrodef>
> * forget: no, exec+spawn
> * limit: unsure; the timeout for long-running tests is done on the CI
> server these days
> * antclipse: no (unstable)
> * compilewithwalls: no (deprecated)
> * inifile: maybe (primarily use outside the java world? do we need a
> <registry> task? A windows-antlib?)
> * verifydesign: unsure; a breaking build would be a clear signal; but
> tools like SonarQube and all the architectural tools (I should have a look
> at ;) are much more powerful than this
>
>
>
> Jan
>
>
> [1] http://ant-contrib.sourceforge.net/tasks/tasks/index.html
> [2] http://ant.apache.org/manual/listeners.html#ProfileLogger
> [3] http://ant.apache.org/antlibs/props/index.html
>
>
>
>
> > -----Ursprüngliche Nachricht-----
> > Von: Gintautas Grigelionis [mailto:[hidden email]]
> > Gesendet: Montag, 5. Juni 2017 06:22
> > An: Ant Developers List; Paul King
> > Betreff: Re: Ant Contrib
> >
> > Jan was having a problem with JaCoCo last week because of multiple
> > copies of ASM library on the classpath because he was building both Ant
> > and Ivy in the same workspace. He mentioned making some checks on the
> > contents of the classpath. I thought it was appropriate to remind of a
> > solution that was proposed 12 years ago :-)
> >
> > Gintas
> >
> > 2017-06-05 6:16 GMT+02:00 Paul King <[hidden email]>:
> >
> > > On Sun, Jun 4, 2017 at 7:47 PM, Gintautas Grigelionis <
> > > [hidden email]> wrote:
> > >
> > > > [...]
> > > > P.S. While we're at it, in the light of the latest ASM debacle, I'm
> > > > interested in improving Ant classloader task
> > >
> > > [...]
> > >
> > >
> > > Which ASM issue(s) are you referring to? Is there a link to some
> > > discussions?
> > >
> > > Cheers, Paul.
> > >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Dominique Devienne-2
In reply to this post by Jan Matèrne (jhm)
On Mon, Jun 5, 2017 at 3:13 PM, Jan Matèrne (jhm) <[hidden email]> wrote:

> Some years ago there were a discussion about having ant-contrib a part of
> Ant.
> Result was that it wasn't possible due IP (and therefore legal) reasons.
>
> Having a look at the tasklist [1] there are some I would use:
> ...

* outofdate: no idea
>

<outofdate> was done by Peter Reilly, who's already an Ant commiter,
so that one should be OK (and we can always ask Peter). Same for <for> IIRC.

I was a heavy user of <outofdate> myself, which is much better than
<uptodate>.
I always felt it should have been in Ant proper, but I also didn't have a
problem adding
Ant-Contrib either, so no big deal. FWIW. --DD
Reply | Threaded
Open this post in threaded view
|

Re: Ant Contrib

Gintautas Grigelionis
I started a new organisation on GitHub, antlibs. Currently antlibs contain
2 repos, ant-contrib and ant-http. Please let me know if you would like to
join.

Currently, I would appreciate some help with IfTaskTest in ant-contrib
which passes with Ant + Junit but fails with Maven + Surefire. Otherwise,
things look good enough for a 1.0 :-)

As for ant-http, there are currently 2 old issues left for a 1.1.4
milestone: running inside waitfor and saving headers as properties (perhaps
it would make sense to use CookieStore and expose it as a resource
collection even if that means Java 6 as a baseline). There is not pom.xml
in ant-http either (yet :-)

Gintas

2017-06-05 21:21 GMT+02:00 Dominique Devienne <[hidden email]>:

> On Mon, Jun 5, 2017 at 3:13 PM, Jan Matèrne (jhm) <[hidden email]>
> wrote:
>
> > Some years ago there were a discussion about having ant-contrib a part of
> > Ant.
> > Result was that it wasn't possible due IP (and therefore legal) reasons.
> >
> > Having a look at the tasklist [1] there are some I would use:
> > ...
>
> * outofdate: no idea
> >
>
> <outofdate> was done by Peter Reilly, who's already an Ant commiter,
> so that one should be OK (and we can always ask Peter). Same for <for>
> IIRC.
>
> I was a heavy user of <outofdate> myself, which is much better than
> <uptodate>.
> I always felt it should have been in Ant proper, but I also didn't have a
> problem adding
> Ant-Contrib either, so no big deal. FWIW. --DD
>