This whole issue was already discussed something like 2 years ago. There is no way to clean this up in the 1.x branch, changing the return type to List<Object> is probably the best you can do.
For now, I would just fix known bugs and move on to cli2 with a clean codebase. Thomas On Thu, May 7, 2015 at 10:45 AM, Benedikt Ritter <brit...@apache.org> wrote: > 2015-05-03 19:21 GMT+02:00 Gary Gregory <garydgreg...@gmail.com>: > > > The new class DefaultParser does not use generics to define the options > > List, that is suspicious. Looking closer, the list can hold a mix of > > OptionGroup and String instances. Really? Looking at Options I see the > list > > defined as List<Object>. This avoids compiler warnings but is nasty. This > > is probably what we have inherited from this very old code base. We > should > > at least perpetuate this to DefaultParser's List as a List<Object>. > > > The expectedOpts field is protected so subclasses my use it. It's not > accessible through getters, so the methods defined on DefaultParser don't > pass raw lists to the outside world. I think adding <Object> could be added > in 1.3.1, although I agree that it would be better to resolve this and > maybe split up the two lists. If DefaultParser wouldn't define all fields > as protected, we could change this later. But as it is now, it looks like > we have to fix this. > > Benedikt > > > > I switched a couple of years ago to using annotation based CLI processing > > with JCommander. I'd like to come back to Commons for CLI, but not I do > not > > see that happening until a very different CLI2 emerges. > > > > This is not the thread for discussing a CLI2 of course... ;-) > > > > Gary > > > > On Sun, May 3, 2015 at 8:18 AM, Benedikt Ritter <brit...@apache.org> > > wrote: > > > > > Hi, > > > > > > We have fixed quite a few bugs and added some significant enhancements > > > since CLI 1.2 was released and the Groovy Project is asking for a new > > > release, so I would like to release CLI 1.3. The most notable change is > > the > > > introduction of a new API for creating Option instances. > > > > > > CLI 1.3 RC1 is available for review here: > > > https://dist.apache.org/repos/dist/dev/commons/cli/ (svn revision > > 8797) > > > > > > Maven artifacts are here: > > > > > > > > > https://repository.apache.org/content/repositories/orgapachecommons-1090/ > > > > > > Details of changes since 1.2 are in the release notes: > > > https://dist.apache.org/repos/dist/dev/commons/cli/RELEASE-NOTES.txt > > > http://people.apache.org/~britter/cli-1.3-RC1/changes-report.html > > > > > > I have tested this with JDK 6, 7 and 8 using maven 3. > > > > > > The tag is here: > > > http://svn.apache.org/repos/asf/commons/proper/cli/tags/cli-1.3-RC1/ > > > (svn > > > revision 1677410) > > > > > > Site: > > > http://people.apache.org/~britter/cli-1.3-RC1/ > > > (note some *relative* links are broken and the 1.2 directories are > not > > > yet created - these will be OK once the site is deployed) > > > > > > Clirr Report (compared to 1.2): > > > http://people.apache.org/~britter/cli-1.3-RC1/clirr-report.html > > > > > > RAT Report: > > > http://people.apache.org/~britter/cli-1.3-RC1/rat-report.html > > > > > > KEYS: > > > https://www.apache.org/dist/commons/KEYS > > > > > > Please review the release candidate and vote. This vote will close no > > > sooner that 72 hours from now, i.e. after 06-May 2015, 17:30 CEST. > > > > > > [ ] +1 Release these artifacts > > > [ ] +0 OK, but... > > > [ ] -0 OK, but really should fix... > > > [ ] -1 I oppose this release because... > > > > > > Thanks! > > > Benedikt > > > > > > > > > -- > > > http://people.apache.org/~britter/ > > > http://www.systemoutprintln.de/ > > > http://twitter.com/BenediktRitter > > > http://github.com/britter > > > > > > > > > > > -- > > E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > > Java Persistence with Hibernate, Second Edition > > <http://www.manning.com/bauer3/> > > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > > Spring Batch in Action <http://www.manning.com/templier/> > > Blog: http://garygregory.wordpress.com > > Home: http://garygregory.com/ > > Tweet! http://twitter.com/GaryGregory > > > > > > -- > http://people.apache.org/~britter/ > http://www.systemoutprintln.de/ > http://twitter.com/BenediktRitter > http://github.com/britter >