Hi Matt, Great suggestions, I added the changes around compile time scoping, and the library name, although i did not change the name exactly like you recommended. See https://github.com/michapringle/fluentStringUtils for the updated version. [To those in charge] What are the chances of getting a link from the apache commons page to this StringUtils to see if there is any interest? That seems like a reasonable idea, and if there is interest, i will devote time to this. :D Cheers,Micha
From: Matt Benson <gudnabr...@gmail.com> To: Commons Developers List <dev@commons.apache.org> Sent: Sunday, November 22, 2015 9:53 PM Subject: Re: Proposed fluent string utils On Nov 22, 2015 7:31 PM, "Henri Yandell" <flame...@gmail.com> wrote: > > My suggestion would be to add a link to teh Commons Lang website to Micha's > repo and see how successful it is (i.e. if successful, I'd expect to see > users contributing other Lang related fluent APIs to it). > > I'd suggest renaming to fluengLang :) > I would add that I personally would have no problem with a compile time only annotation dependency. Matt > On Mon, Nov 16, 2015 at 11:50 AM, Benedikt Ritter <brit...@apache.org> > wrote: > > > Hello again, > > > > 2015-11-16 20:22 GMT+01:00 Micha Pringle <michaprin...@yahoo.com>: > > > > > Hi Benedikt, > > > > > > Thanks for the reply. > > > > > > I will update the current code and make the following changes, then > > notify > > > the mail list when it is complete for further review. > > > * Java 8 will be downgraded to Java 6. That's my own fault for unit > > > testing with lambda's. > > > * I would prefer to keep the annotations (especially the tiny > > > net.jcip:jcip-annotations:1.0), but I will drop them and replace with > > > javadoc. > > > * I intended this to go into commons-lang3, I will look at BeanUtils2 and > > > make the appropriate changes. > > > * Since this idea looks like it will be included in Apache Commons > > (lang3) > > > I will review Java String and Guava String API's, to make sure nothing is > > > missed (and add unit tests). That seems unlikely though, StringUtils > > seems > > > to cover all the bases. > > > > > > > I'm currently not convinced that this really belongs into Commons Lang. > > Lang's description is "The standard Java libraries fail to provide enough > > methods for manipulation of its core classes. Apache Commons Lang provides > > these extra methods.". My opinion is, that we already have stuff in Lang > > that isn't just auxiliary methods to the java.lang package. The change you > > propose looks like a fluent wrapper to java.lang.String, which while > > generally useful does not feel like it belongs into Commons Lang. That's > > why I've proposed to publish this as an additional package for > > commons-lang3. > > > > If you would like to join development of Commons Lang, you can simply go to > > the bug tracker [1] and look through the open issues. To start working on > > open source projects, it's good to find small things to fix first. This > > JavaDoc could be clearer, that test could be added, etc. This helps to get > > a general feeling for the library at hands, before tossing a big change > > over with no discussion. It is very important for ASF projects to find > > consensus in the community before changing code. So if you have an idea > > which sounds good at the beginning, it may not fit into the project you > > want to contribute it to. This doesn't make the idea less good, but it may > > lead to frustration if changes are not discussed at first. > > > > Having said this, I hope your not discouraged because I don't feel like > > your FluentWrapper belongs into commons. We need people like you who are > > enthusiastic! And by the way, I'm not the one to decide whether is will be > > added or not. I'm just sharing my thought. There may be other project > > members you think this fits. It is still open for discussion. > > > > > > > > > > Without having yet looked at BeanUtils2 (so this might be a moot > > > question), would it be useful to have a commons-lang3.fluent package or > > the > > > like? > > > > > > > I don't feel like "implementing fluent wrappers" is something that belongs > > into commons. There could be a commons-fluent component or something like > > that, which provides fluent wrappers for classes of the JDK. Given the > > popularity of fluent APIs, this may be something others could have a use of > > as well. > > > > > > > > > > As for unit testing, do you want me to test all the delegating methods as > > > well? It seems like a lot of work for nominal gain. > > > > > > > Changes should always be backed up by unit tests. > > > > > > > > > > Thanks again. > > > > > > > Thank you for your interest in Apache Commons. > > > > Benedikt > > > > [1] http://issues.apache.org/jira/browse/LANG > > > > > > > > > > Cheers, > > > Micha > > > ------------------------------ > > > *From:* Benedikt Ritter <brit...@apache.org> > > > *To:* Commons Developers List <dev@commons.apache.org>; Micha Pringle < > > > michaprin...@yahoo.com> > > > *Sent:* Monday, November 16, 2015 11:00 AM > > > *Subject:* Re: Proposed fluent string utils > > > > > > Hello Micha, > > > > > > 2015-11-15 1:47 GMT+01:00 Micha Pringle <michaprin...@yahoo.com.invalid > > >: > > > > > > > > > I really apologize, it seems the link below still managed to include a > > > period despite my best efforts. Please tryhttps:// > > > github.com/michapringle/fluentStringUtils > > > > > > Cheers,Micha From: Micha Pringle <michaprin...@yahoo.com> > > > To: "dev@commons.apache.org" <dev@commons.apache.org> > > > Sent: Saturday, November 14, 2015 4:44 PM > > > Subject: Proposed fluent string utils > > > > > > Hi folks, > > > > > > Firstly, apologies if this results in a double post. I tried posting a > > > couple of times, but the first time I sent to the user list (sorry), and > > > the second time I do not see my email at all in the mail archive ( > > > http://mail-archives.apache.org/mod_mbox/commons-dev/201511.mbox/thread > > ). > > > Hopefully 3rd time is the charm, and again, sorry for my n00biness. > > > I have written a fluent wrapper for the string utils class. Being new to > > > commit anything to Apache Commons, and given the nature of the change, I > > > wrote up a first draft that I was hoping the community could review, and > > > then consider for addition to the commons library. > > > A copy can be obtained from > > > https://github.com/michapringle/fluentStringUtils.git. If there is a > > > desire to add this to commons, I can complete any additional work > > required > > > to meet the Commons standard. > > > Cheers,Micha > > > > > > > > > Thank you for your interest in Apache Commons Lang and my apologies for > > > the late response. The pre-christmas time is always pretty busy for me > > :-) > > > Your Fluent String Utils wrapper looks generally useful, however I'm not > > > sure whether is fits into Commons Lang. Lang has a rather conservative > > API > > > design (meaning, we don't have any fluent APIs yet). > > > > > > This would not be a blocker but the following definitely is: > > > - Requires Java 8 - Lang is on Java 6 > > > - Has dependencies to net.jcip:jcip-annotations:1.0 > > > and org.jetbrains:annotations:15.0 - Lang should have little to no > > > dependencies > > > > > > So maybe you can simply publish this as an additional library for > > > commons-lang3. If you would like to work on fluent APIs, you should have > > a > > > look at BeanUtils2 [1] which has a really nice one. > > > > > > Regards, > > > Benedikt > > > > > > [1] commons.apache.org/sandbox/beanutils2 > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > http://people.apache.org/~britter/ > > > http://www.systemoutprintln.de/ > > > http://twitter.com/BenediktRitter > > > http://github.com/britter > > > > > > > > > > > > > > > -- > > http://people.apache.org/~britter/ > > http://www.systemoutprintln.de/ > > http://twitter.com/BenediktRitter > > http://github.com/britter > >