On 16 August 2011 22:53, Gary Gregory <garydgreg...@gmail.com> wrote: > On Tue, Aug 16, 2011 at 5:23 PM, Julius Davies <juliusdav...@gmail.com>wrote: > >> > Please see the recent discussion on adding generics to [codec] where I >> > propose "<O> encode(<I>)" >> > >> > Gary >> > >> >> Hi, Gary!!! >> >> I thought of replying to that thread, but I thought it's kinda rude to >> hijack a thread like that. >> >> What would be the pros/cons of just typing "svn remove Encoder.java" >> and "svn remove Decoder.java"? What do people think? >> > > That would break binary compatibility and require and package name change.
Agreed. > According > https://issues.apache.org/jira/browse/CODEC-125?focusedCommentId=13083179&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13083179 > > "The lucene/solr source seems not to reference StringEncoder. All references > go via Encoder. In org.apache.lucene.analysis.phonetic.PhoneticFilter, it > has the code: > > String value = termAtt.toString(); > String phonetic = null; > try { String v = encoder.encode(value).toString(); if (v.length() > 0 && > !value.equals(v)) phonetic = v; } catch (Exception ignored) {} // just use > the direct text > > In org.apache.solr.analysis.PhoneticFilterFactory, there's a registry map of > encoders listing the (known) StringEncoder instances but typed to Encoder." That's a pity. I think the best we can do whilst maintaining binary compat. is to deprecate Decoder/Encoder. > Gary > > > >> >> Here is one thought in favour of removing them, at least from Base64: >> sometimes I copy Base64.java into my own projects as a copy/paste. I >> change the namespace. Then I remove references to other parts of >> commons-codec that I am not bringing in, but that Base64.java refers >> to (typically Encoder, Decoder, and EncoderException). The smaller my >> delta after the copy/paste, the easier it is for me copy the newest >> version in the future to keep my fork up to date. >> >> I like doing this because it can make the difference between needing a >> jar dependency and having no dependencies at all in some of my other >> work. >> >> >> Of course I am pretty focused on Base64. I have never used the soundex >> stuff. >> >> >> I'm torn. On the one hand, I suspect the Encoder/Decoder interfaces >> have been mostly unused, and analyzing the Maven2 repository could >> shed light on that. Removing the interfaces makes sense if they are >> not really used, but on the other hand, improving them, making them >> actually useful, also makes sense. >> >> >> >> >> >> -- >> yours, >> >> Julius Davies >> 604-222-3310 (Home) >> >> $ sudo apt-get install cowsay >> $ echo "Moo." | cowsay | cowsay -n | cowsay -n >> http://juliusdavies.ca/cowsay/ >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> For additional commands, e-mail: dev-h...@commons.apache.org >> >> > > > -- > Thank you, > Gary > > http://garygregory.wordpress.com/ > http://garygregory.com/ > http://people.apache.org/~ggregory/ > http://twitter.com/GaryGregory > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org