git.net

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Command line argument files


Last August there was a feature request on the Ant user mailing list to
support argument files (also called @-files):
https://mail-archives.apache.org/mod_mbox/ant-user/201808.mbox/%3c5D285FC05679A441ACF34A90905BFA923D6C3D54@xxxxxxxxxxxxxxxxxx%3e

Picocli has support for @-files/argument files (
https://picocli.info/#AtFiles ) to handle cases where the length of the
command line exceeds the OS limitations.

This would allow ant to support command lines of arbitrary length.

The other benefits (less code in the Main class, usage help message with
ANSI colors, and command line autocompletion for the `ant` shell script)
are “nice to have”.


On Fri, Nov 16, 2018 at 4:44 Jan Matèrne (jhm) <apache@xxxxxxxxxx> wrote:

> Thank you for your suggestion.
> But I think we shouldn’t add a new dependency for replacing code, that
> works and was touched last time 8 months ago ('just' introducing some Java8
> stuff), then 2 years ago (no FileInput/OutputStream::new) then 4 years ago
> ...
>
> So maintenance is no real point here.
>
> Jan
>
>
> https://github.com/apache/ant/blame/master/src/main/org/apache/tools/ant/Main.java
>
>
> > -----Ursprüngliche Nachricht-----
> > Von: Remko Popma [mailto:remko.popma@xxxxxxxxx]
> > Gesendet: Donnerstag, 15. November 2018 11:14
> > An: dev@xxxxxxxxxxxxxx
> > Betreff: Command line argument files
> >
> > Would there be any interest in using picocli (
> > https://github.com/remkop/picocli) as the command line parser in
> > `org.apache.tools.ant.Main`?
> >
> > Picocli has support for @-files (https://picocli.info/#AtFiles ) to
> > handle cases where the length of the command line exceeds the OS
> > limitations. (I believe there was a recent request for this feature on
> > the user list.)
> >
> > The Main class will likely become shorter and easier to maintain.
> >
> > As a bonus, picocli generates nice-looking help with ANSI colors and
> > can generate completion scripts to get command line completion on bash
> > and zsh shells.
> >
> > The trade-off is the additional external dependency.
> >
> > Picocli is relatively new (1.0 released in Aug 2017) but has growing
> > adoption and is used in Groovy, Micronaut, JUnit 5 and CheckStyle.
> >
> > I’d be happy to provide a PR if there’s interest.
> >
> > Remko Popma
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@xxxxxxxxxxxxxx
> For additional commands, e-mail: dev-help@xxxxxxxxxxxxxx
>
>