This is a great discussion to show we are ready for graduation. 

I think we should put together a list of project coding guidelines. For
example staying compatible with Java Lucene indexes.  These guidelines would
allow us to take our discussions from line-by-line or .Net like and move to
whether a contribution meets the project coding guidelines.  

The line-by-line method/style will probably live on for sometime, but
community contributions will end up deciding how .net like the project will
be.   

Scott

 

> -----Original Message-----
> From: Prescott Nasser [mailto:geobmx...@hotmail.com] 
> Sent: Friday, December 30, 2011 12:43 PM
> To: lucene-net-dev@lucene.apache.org
> Subject: RE: [Lucene.Net] Lucene.Net 3 onwards and 2.9.4g
> 
> 
> I think when I said I want all those things - I meant it as 
> an incremental, but something that we woudln't shy away from 
> doing like we've done so far. So I think you're thoughts 
> regarding how to proceed are right on par with mine. 
>  > Date: Fri, 30 Dec 2011 14:10:16 +0000
> > From: andy.p...@gmail.com
> > To: lucene-net-dev@lucene.apache.org
> > Subject: Re: [Lucene.Net] Lucene.Net 3 onwards and 2.9.4g
> > 
> > Thought I'd add my opinion as a user of Lucene.net...
> > 
> > My company processes content from several feeds (mainly web 
> but also 
> > social media). The volumes are fairly large (100M's of 
> documents). The 
> > results are stored in lucene indexes.
> > 
> > Points of interest:
> >  - We use 2.9.4g compiled against dotnet 4.0
> >  - We add our own tokens in parallel with the word tokens
> >  - We have our own parser (using Irony) so that we can extend the 
> > syntax (related to the extra tokens)
> >  - We have created a wrapper to abstract/hide most of the Lucene API
> >    - maps to and from poco objects
> >    - it exposes IEnumerable<TPoco>
> > 
> > So much for the background.
> > I agree with much of what is being said here. Particularly, 
> let's make 
> > a choice and stop wasting the little resources the project has.
> > 
> > I don't care about java. So I don't care that the API changes.
> > I do want 100% index compatibility.
> > I would like things like name capitalization, IDisposable, 
> IEnumerable etc.
> > Though I think that g adds a little confusion by also using other 
> > collection types i.e. ICollection<T>, List<T> unnecessarily.
> > I'd like to get to Lucene 4 as soon as possible. The NRT and Codec 
> > bits would solve a lot of the issues we spend a lot of time on. So 
> > being able to catch up to java, currently 3.5, is high on my list.
> > I like Troy's list of "I wants". I'd like all of that too. The 
> > question is, how?
> > 
> > I think the ancient argument about "line by line" or 
> "transliteration" 
> > or "lets change the api" or "complete rewrite" can't be easily 
> > resolved because it obscures two separate things.
> >  1. How do we port changes in java to the .net version  2. 
> Most (all?) 
> > don't like the java api
> > 
> > I don't think the project will survive if this cannot be 
> resolved. It 
> > barely survived the last time. But I also don't believe that the 
> > project can achieve a full rewrite (such as Lucere 
> started). At least, 
> > not yet. It would take too much and is too easily divisive.
> > 
> > I would like to see something like "line by line with 
> formally defined 
> > mutations".
> > 
> > I want to see Lucene.net on par with java Lucene and not 
> continually a 
> > year or more behind. I think the only way to get there is 
> to adhere, 
> > mostly, to the same basic code and structures as java.
> > 
> > However, I also think that there should be a set of agreed and 
> > documented "mutations" that are applied (both retro fitting and 
> > applied to newly migrated changes). For example:
> >  - Method names are capitalized according to dotnet conventions
> >  - A class implementing Close should have IDisposable added 
> according 
> > to an agreed template/style
> >  - A collection class should implement IEnumerable<T> or 
> > ICollection<T> or IList<T> depending on agreed criteria and 
> according 
> > to an agreed template/style
> >  - Convert to enum
> >  - Convert to Func<T>/Action<T>
> > 
> > I'm sure there are many more. All of the above need to be 
> formalized 
> > into guidelines/criteria/templates/styles and agreed by the core 
> > committers. The experience of the g branch should provide a 
> solid start.
> > 
> > Please use this or something like this so that we can accelerate 
> > towards parity with java Lucene.
> > As the project progresses more mutations can be added as 
> they become 
> > apparent.
> > This doesn't mean that other refactoring cannot be done but I would 
> > hope that these can be discussed as mini-projects instead 
> of opening 
> > this box yet again.
> > 
> > My company is in the process of expanding it's dev team 
> significantly 
> > so I'm hoping that I will be able to devote some time to help.
> > 
> > Regards,
> >   Andy
> > 
> > On 30 December 2011 04:55, Christopher Currens 
> <currens.ch...@gmail.com>wrote:
> > 
> > > If we could find a reasonable solution and get people to 
> commit to 
> > > it, I could see it being done, in fact, I'd like to see 
> it done.  If 
> > > we had more developers and more time to work on it, it would be 
> > > awesome to see that kind of response and progress on the 
> project.  I 
> > > would hope their enthusiasm wouldn't fade with time; that it 
> > > wouldn't just be a boost of energy at the beginning of 
> the (welcome) 
> > > change and then fizzle out if it got to be too much for 
> people.  I 
> > > will admit, I'm sure it's not surprising, but there are a lot of 
> > > annoyances about Lucene.NET that could be done away with, 
> if we did a re-write of the library.
> > >
> > > Anyway, I really have no idea who uses Lucene.NET besides 
> those on 
> > > this project, and StackOverflow.  I would hope we could 
> get opinions 
> > > and advice from those other users as well.
> > >
> > >
> > > Thanks,
> > > Christopher
> > >
> > > On Thu, Dec 29, 2011 at 8:47 PM, Troy Howard 
> <thowar...@gmail.com> wrote:
> > >
> > > > Chris,
> > > >
> > > > Regarding release schedule and the amount of work to accomplish 
> > > > porting... What if we had 20 developers working on the project?
> > > >
> > > > It's likely that by changing what we're doing, we'll 
> attract more 
> > > > people to work on the project and thus these concerns 
> (which are 
> > > > perfectly valid concerns if you're attempting to port 
> the entire 
> > > > library as a one or two person effort, as George, DIGY and you 
> > > > have
> > > > done) will no longer be relevant.
> > > >
> > > > If the *volume* of work is a problem, then a reasonable 
> solution 
> > > > is to scale up the quantity of devs on the project and get 
> > > > organized enough to keep them all productive. I'm certain that 
> > > > moving away from the line-by-line port will cause more 
> developers 
> > > > to be interested in working on it. No one wants to do 
> that kind of 
> > > > code and then have to look at the product of their work 
> and still be annoyed by the API.
> > > > This is essentially *exactly* where things were a year ago when 
> > > > the project was about to die and this is why.
> > > >
> > > > When I started up the Lucere project in response to these 
> > > > problems, I was flooded with devs offering to help, to 
> the extent 
> > > > that I couldn't keep up with it and had to just start telling 
> > > > people we didn't need any more help. There is no reason 
> that the 
> > > > same thing couldn't happen here.
> > > >
> > > > Thanks,
> > > > Troy
> > > >
> > > >
> > > > On Thu, Dec 29, 2011 at 8:27 PM, Christopher Currens 
> > > > <currens.ch...@gmail.com> wrote:
> > > > > Unfortunately, my desires for this project seem to 
> change with 
> > > > > the
> > > > progress
> > > > > that we make on it.  What I mean, is that what I want 
> right now, 
> > > > > will likely be different from what I will want once we've 
> > > > > released a few
> > > more
> > > > > versions.  What I KNOW I want right now:
> > > > >
> > > > > I want the line-by-line port to continue, but in 
> respects of the 
> > > > > API, I want things that "just don't make sense(tm)" 
> in .NET to 
> > > > > change.  By
> > > that
> > > > I
> > > > > mean removing Close() and properly implement the 
> IDisposable pattern.
> > > > >  Also, the Java iterator has a perfect .NET analog, 
> IEnumerable.  
> > > > > The
> > > > code
> > > > > can essentially stay the same, but it enables real 
> usage in .NET.
> > > > >  Fortunately, a great deal of 3.0.3 has already been 
> moved over 
> > > > > to generics, so I'm actually concerned less with 
> that.  I want 
> > > > > .NET style-naming, and I want CLS compatibility where 
> possible, 
> > > > > at least allowing for use in case-insensitive languages.
> > > > >
> > > > > When the project started, I didn't want a line-by-line port to
> > > continue,
> > > > > but once I touched every single part of this codebase that I 
> > > > > understood
> > > > how
> > > > > large this project is. I've realized that with the amount of 
> > > > > time that everyone has been able to put into this project, I 
> > > > > can't see a .NET
> > > > version
> > > > > being made until it's up to date with Java.  Maybe I'm being
> > > pessimistic,
> > > > > maybe I'm not.  I'm not trying to call anyone out or blame 
> > > > > anyone, we
> > > all
> > > > > have other jobs, but the amount of time that can be 
> spent vs the 
> > > > > amount
> > > > of
> > > > > work a .NET centric re-write would take, just doesn't seem 
> > > > > possible, considering the goals mention, of trying to 
> keep up with Lucene.
> > > > >
> > > > > I think it would be more likely that a goal like that would 
> > > > > succeed, if
> > > > the
> > > > > codebase were caught up with java, and as the 
> .netification was 
> > > > > being
> > > > done,
> > > > > any features, bugfixes, changes, or whatever would be 
> > > > > immediately
> > > > obvious.
> > > > >  I care very much about the index formats being the same, as 
> > > > > well as
> > > the
> > > > > query syntax, and think a search done in java against 
> an index 
> > > > > should behave the exact same way in .NET.  I'm afraid 
> that will 
> > > > > the amount of effort it would take to do it now, when we're 
> > > > > already behind, would
> > > cause
> > > > > the project to end up stagnating, like it did before, 
> which I'm
> > > committed
> > > > > to not let happen.
> > > > >
> > > > > That being said, if everyone else disagrees with me, that is 
> > > > > absolutely fine.  If no one would be against it, I would ask 
> > > > > that I could work on
> > > a
> > > > > line-by-line port on my own, in a separate branch, if no one 
> > > > > else
> > > wanted
> > > > > to.  For me, I think people want a) performance and b) the 
> > > > > latest
> > > version
> > > > > with bug fixes.  That's what I DO want out of this project, 
> > > > > since we're using it in ours.  I don't have exact benchmarks, 
> > > > > but the performance
> > > of
> > > > > the 3.0.3 branch is much better than 2.9.4, from 
> indexing to searching.
> > > >  I
> > > > > should also mention that 2.9.4 introduced a memory 
> leak that was 
> > > > > not present in 2.9.2, and in 3.0.3, this memory leak 
> no longer 
> > > > > exists.  It
> > > is
> > > > > also more memory friendly.
> > > > >
> > > > > I don't think that the line-by-line port hurts the 
> performance 
> > > > > of Lucene.NET as much as it does annoy the crap out 
> of everyone.  
> > > > > I'm seriously annoyed that I can't enumerate over Terms or 
> > > > > TermDocs,
> > > without
> > > > > that terrible Next() and HasNext() crap.  That's not 
> to say that 
> > > > > moving from a line-by-line port won't increase 
> performance, of 
> > > > > course. :)  I'm definitely not against changing the API to 
> > > > > facilitate a more .NET experience.
> > > > >
> > > > > That's what I want.  If no one else wants it, that's 
> okay.  If 
> > > > > we
> > > decide
> > > > to
> > > > > not have the line-by-line port an official part of 
> Lucene.NET, 
> > > > > that's
> > > > fine
> > > > > too, I'm not going to stop working on it, I would 
> likely wind up
> > > working
> > > > on
> > > > > it outside this project.  However, I think it's 
> valuable to have 
> > > > > as an official part of our releases, and I like to think its 
> > > > > something the community wants, since I believe it 
> would allow a 
> > > > > faster release
> > > schedule
> > > > > than our own interpretation of a Lucene library.
> > > > >
> > > > >
> > > > > Thanks,
> > > > > Christopher
> > > > >
> > > > >
> > > > > On Thu, Dec 29, 2011 at 7:42 PM, Troy Howard 
> > > > > <thowar...@gmail.com>
> > > > wrote:
> > > > >
> > > > >> I completely agree with Michael's mentality on 
> thinking of this 
> > > > >> as a business and coming from the perspective of 
> "what will wow 
> > > > >> our customers" ...
> > > > >>
> > > > >> I also completely agree with Prescott, that we just 
> need to get 
> > > > >> down to brass tacks and say what we want it to be 
> specifically 
> > > > >> and subjectively.
> > > > >>
> > > > >> Here's what I want:
> > > > >>
> > > > >> * I want an extremely modern .NET API full of 
> injection points 
> > > > >> where I can pass lambdas, use IEnumerable<T> and all that 
> > > > >> System.Linq provides, interfaces for everything, as well as 
> > > > >> excellent unit test coverage.
> > > > >> * I want to write *very* minimal code to accomplish 
> basic tasks
> > > > >> * I want an average .NET developer be able to intuitively 
> > > > >> understand and use the library with Intellisense as 
> their only 
> > > > >> documentation
> > > > >> * I want performance that meets or exceeds Java Lucene
> > > > >> * I want no memory leaks
> > > > >> * I want no "surprises" in general
> > > > >> * I want minimal I/O
> > > > >> * I want any execution that can be deferred or 
> optimized out to 
> > > > >> be deferred or optimized out
> > > > >> * I want any data that could be large in size to be 
> streamable
> > > > >> * I want no pointless unavoidable limitations on 
> scale... and I 
> > > > >> want to be able to horizontally distribute searching and 
> > > > >> indexing with ease
> > > > >> * I want every feature that Java Lucene's latest version has 
> > > > >> (and then
> > > > >> some)
> > > > >> * I want the index formats to be compatible with 
> every other "Lucene"
> > > > >> out there in whatever language and I want the query 
> language to 
> > > > >> work identically across all of them.. That is to say 
> given query Text "X"
> > > > >> and index "Y" you will always get result set "Z" from every 
> > > > >> implementation of Lucene. Because when I have to get 
> to my data 
> > > > >> via Python, Java, C++, Ruby or whatever, I want 
> everything to just work.
> > > > >> * I want to know which clauses in my query caused the result 
> > > > >> hit and to what degree, without having to incur a huge 
> > > > >> performance hit
> > > > >> * I want real-time updates without having to do a 
> little dance 
> > > > >> and wave my hands to get it to work
> > > > >> * I want to get a new major version of the library 
> roughly once 
> > > > >> or twice a year and I want to be very impressed by 
> the features 
> > > > >> in the new version. I want bug fixes rolled out on a 
> quarterly 
> > > > >> basis (at
> > > > >> minimum) between those major versions.
> > > > >> * I want to be able to trace or step-debug the 
> execution of a 
> > > > >> search or indexing process and not think "WTF" 
> constantly. Some 
> > > > >> of that code is extremely obtuse.
> > > > >> * I want the query parser to be generated from a PEG 
> grammar so 
> > > > >> that I can easily generate one in other languages
> > > > >>
> > > > >> ... and much much more. I didn't even get into things like 
> > > > >> being able to create custom indexes that use something other 
> > > > >> than strings for the inversion product, decorating my POCO's 
> > > > >> properties with attributes like 
> [Field("Description")] and just 
> > > > >> saying "Store", better query expansion, and blah 
> blah blah.  :)
> > > > >>
> > > > >> And I agree with Prescott on this one: I don't care *at all* 
> > > > >> about Java, other than porting code out of it so that it can 
> > > > >> run on .NET. I hate Java, but I love a lot of the libraries 
> > > > >> written in it. I feel that the JVM is an inferior runtime to 
> > > > >> the CLR and the Java language is like C#'s retarded cousin. 
> > > > >> I'll gladly write a new book on the new API and 
> publish it for 
> > > > >> free online, so people don't have to read "Lucene in 
> Action" to 
> > > > >> learn Lucene.Net. I'll gladly spend the time it takes to 
> > > > >> understand a changeset from the Java project and the 
> mentally 
> > > > >> model what they were trying to accomplish by it and 
> then re-engineer the change to apply to our library.
> > > > >>
> > > > >> Basically, I don't want to limit the project to a 
> line-by-line 
> > > > >> port at all. I also don't want to piss people off 
> and destroy 
> > > > >> the project in the process. Soo... I'm flexible as well. :)
> > > > >>
> > > > >> Thanks,
> > > > >> Troy
> > > > >>
> > > > >>
> > > > >> On Thu, Dec 29, 2011 at 6:18 PM, Prescott Nasser <
> > > geobmx...@hotmail.com
> > > > >
> > > > >> wrote:
> > > > >> >
> > > > >> > Someone has to take a stand and call out what they 
> prefer - 
> > > > >> > rather
> > > > than
> > > > >> shooting out all the alternatives, we need to start 
> voicing our
> > > > opinions of
> > > > >> which direction we need to go. I'll get us started: 
> I want to 
> > > > >> see
> > > > something
> > > > >> that is more .NET like, I want to see something that 
> can run on 
> > > > >> the
> > > > phone,
> > > > >> xbox, pc, mono, etc. I want to use the latest and 
> greatest .NET 
> > > > >> has to offer.  I do care that we keep the index files 100% 
> > > > >> compabitible. I
> > > also
> > > > >> care that we try to keep up with Java in feature set 
> and extras 
> > > > >> (contrib's). I couldn't care less about keeping the 
> API in line 
> > > > >> with
> > > > java.
> > > > >>   I don't really care about the line by line - but others in 
> > > > >> the past
> > > > have
> > > > >> said they did. My energy isn't really behind keeping that in 
> > > > >> line but
> > > > I'll
> > > > >> help maintain it if that is what the community really wants. 
> > > > >> But I
> > > agree
> > > > >> with Troy - there are lots of options if you want the Java 
> > > > >> Lucene
> > > > avaliable
> > > > >> in .Net That's my feeling - but at the same time, I 
> realize we 
> > > > >> are a
> > > > small
> > > > >> community, and if we don't really agree with what we want to 
> > > > >> do, then
> > > we
> > > > >> are SOL - I'm FLEXIBLE if others really want 
> something or feel 
> > > > >> we
> > > > should do
> > > > >> something.  ~P
> > > > >> >
> > > > >> >  > Date: Thu, 29 Dec 2011 20:51:09 -0500
> > > > >> >> From: mhern...@wickedsoftware.net
> > > > >> >> To: lucene-net-dev@lucene.apache.org
> > > > >> >> Subject: Re: [Lucene.Net] Lucene.Net 3 onwards and 2.9.4g
> > > > >> >>
> > > > >> >> Might I suggest that we all approach this as a business 
> > > > >> >> owners,
> > > > >> community
> > > > >> >> builders, startup entrepreneurs instead of 
> developers for a second.
> > > > >> >>
> > > > >> >> You have limited resources: time, budget, personnel, etc.
> > > > >> >>
> > > > >> >> What is our two biggest metrics of success for 
> this product?
> > > > >> >>
> > > > >> >> My guess is adoption and customer involvement 
> (contributing
> > > patches,
> > > > >> >> tutorials, tweets, etc).  Most likely both are those are 
> > > > >> >> going to
> > > be
> > > > >> >> carried by .NET developers as your inside 
> promoter of Lucene.NET.
> > > > >> >>
> > > > >> >> So what is going to wow them? bring them the most value?  
> > > > >> >> What can
> > > we
> > > > >> >> provide so that it makes their job easier, cost 
> effective, 
> > > > >> >> and lets
> > > > get
> > > > >> >> home faster to their lives or significant other?  
> What is a 
> > > > >> >> break
> > > out
> > > > >> niche
> > > > >> >> that Lucene.Net could have over Solr/Lucene?
> > > > >> >>
> > > > >> >> What is going to make an average developer more 
> willing to 
> > > > >> >> grow the community and contribute?  What would encourage 
> > > > >> >> them to give up
> > > their
> > > > >> free
> > > > >> >> time to do so?
> > > > >> >>
> > > > >> >> I would approach the answer from this angle rather than 
> > > > >> >> continue to
> > > > talk
> > > > >> >> about it from a developer/committer perspective 
> as we keep 
> > > > >> >> going in circles. You're not going to be able to please 
> > > > >> >> everyone, so lets
> > > > figure
> > > > >> out
> > > > >> >> was is going to deliver the most value to .NET developers 
> > > > >> >> and go
> > > from
> > > > >> >> there.
> > > > >> >>
> > > > >> >> - michael
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >>
> > > > >> >> On Thu, Dec 29, 2011 at 8:13 PM, Rory Plaire 
> > > > >> >> <codekai...@gmail.com
> > > >
> > > > >> wrote:
> > > > >> >>
> > > > >> >> > The other option for people not wanting a line-by-line 
> > > > >> >> > port is to
> > > > just
> > > > >> >> > stick with whichever the last version that had a 
> > > > >> >> > line-by-line transliteration done to it. This 
> is done in a 
> > > > >> >> > number of projects
> > > > >> where new
> > > > >> >> > versions break compatibility. 2.9.4 is certainly a nice
> > > release...
> > > > >> >> >
> > > > >> >> > -r
> > > > >> >> >
> > > > >> >> > On Thu, Dec 29, 2011 at 4:32 PM, Troy Howard <
> > > thowar...@gmail.com>
> > > > >> wrote:
> > > > >> >> >
> > > > >> >> > > Thinking about it, I should make myself more clear 
> > > > >> >> > > regarding
> > > why
> > > > I
> > > > >> >> > > brought up IKVM again, just so no one gets the wrong 
> > > > >> >> > > idea about
> > > > my
> > > > >> >> > > intentions there...
> > > > >> >> > >
> > > > >> >> > > I only mentioned it as a justification for dropping
> > > line-by-line
> > > > >> >> > > compatibility and as an alternative for people who 
> > > > >> >> > > really care
> > > > about
> > > > >> >> > > that. As we discussed previously, IKVMed Lucene is not
> > > Lucene.Net
> > > > >> in a
> > > > >> >> > > lot of important material ways. We are 
> already deviating
> > > > >> significantly
> > > > >> >> > > from Java Lucene even with the "mostly line 
> by line" approach.
> > > > >> Compare
> > > > >> >> > > Lucene.Net 2.9.4 and IKVMed Java Lucene 
> 2.9.4. They are 
> > > > >> >> > > very
> > > > >> different
> > > > >> >> > > user experiences on a lot of levels (licensing, 
> > > > >> >> > > packaging, data
> > > > >> types
> > > > >> >> > > used, etc).
> > > > >> >> > >
> > > > >> >> > > But it's a *reasonable alternative* when a 
> high-degree 
> > > > >> >> > > of
> > > > >> consistency
> > > > >> >> > > with Java Lucene is important to the end user and by 
> > > > >> >> > > pointing
> > > to
> > > > >> IKVM
> > > > >> >> > > as our answer to those users, we are free to move 
> > > > >> >> > > forward
> > > without
> > > > >> that
> > > > >> >> > > concern.
> > > > >> >> > >
> > > > >> >> > > That means, supposing we move away from Java 
> > > > >> >> > > significantly, as
> > > a
> > > > new
> > > > >> >> > > end user looking to employ Lucene in their 
> .NET product, 
> > > > >> >> > > they
> > > can
> > > > >> >> > > choose between IKVM Lucene (identical API to 
> Java, can 
> > > > >> >> > > use the
> > > > >> latest
> > > > >> >> > > Java build, performs well, may have some problems with
> > > licensing
> > > > and
> > > > >> >> > > packaging) and Lucene.Net (different API but 
> hopefully 
> > > > >> >> > > one that
> > > > is
> > > > >> >> > > more palatable to .NET users so it'd be easy 
> to learn, 
> > > > >> >> > > perfoms
> > > > >> better
> > > > >> >> > > than IKVM, but has a dev cycle that lags behind Java, 
> > > > >> >> > > possibly
> > > > by a
> > > > >> >> > > lot).
> > > > >> >> > >
> > > > >> >> > > Existing users who like who Lucene.Net as it 
> is now, may 
> > > > >> >> > > feel alienated because they would be forced to choose 
> > > > >> >> > > between
> > > learning
> > > > >> the
> > > > >> >> > > new API and dealing with a slow dev cycle, or 
> adapting 
> > > > >> >> > > to IKVM
> > > > which
> > > > >> >> > > could be very difficult or impossible for 
> them. Either 
> > > > >> >> > > one
> > > would
> > > > >> >> > > require a code change. But of course, we run 
> this risk 
> > > > >> >> > > with any
> > > > >> change
> > > > >> >> > > we make to what we are doing. I think a 
> greater risk is 
> > > > >> >> > > that
> > > the
> > > > >> >> > > project lacks direction.
> > > > >> >> > >
> > > > >> >> > > Anyway, it's just one idea/talking point 
> towards the end 
> > > > >> >> > > goal
> > > of
> > > > >> >> > > getting the general topic off the table completely.
> > > > >> >> > >
> > > > >> >> > > Thanks,
> > > > >> >> > > Troy
> > > > >> >> > >
> > > > >> >> > >
> > > > >> >> > > On Thu, Dec 29, 2011 at 3:32 PM, Troy Howard <
> > > > thowar...@gmail.com>
> > > > >> >> > wrote:
> > > > >> >> > > > Apologies upfront: another long email.
> > > > >> >> > > >
> > > > >> >> > > > My most firm opinion on this topic is that, as a 
> > > > >> >> > > > community,
> > > we
> > > > >> spend
> > > > >> >> > > > too much time on this discussion. We should just 
> > > > >> >> > > > simply
> > > commit
> > > > to
> > > > >> one
> > > > >> >> > > > or the other path, or both, or some middle 
> ground, or 
> > > > >> >> > > > just
> > > > commit
> > > > >> to
> > > > >> >> > > > not discussing it anymore and go with 
> "whatever code 
> > > > >> >> > > > gets
> > > > written
> > > > >> and
> > > > >> >> > > > works is what we use" and leave it up to the 
> > > > >> >> > > > discretion of
> > > the
> > > > >> coder
> > > > >> >> > > > who is actually spending time improving the product.
> > > Obviously
> > > > the
> > > > >> >> > > > last option is the worst of them.
> > > > >> >> > > >
> > > > >> >> > > > My view of our current roadmap is/was:
> > > > >> >> > > >
> > > > >> >> > > > 1. We'd maintain basic line-by-line consistency 
> > > > >> >> > > > through the
> > > 2.x
> > > > >> >> > > > releases. But 3.X and beyond were open to 
> changing the 
> > > > >> >> > > > API significantly. We are committed to changing the 
> > > > >> >> > > > API and
> > > > internal
> > > > >> >> > > > implementations in order to improve performance and 
> > > > >> >> > > > developer experience on .NET, but haven't 
> yet had made 
> > > > >> >> > > > a plan for that
> > > > (eg,
> > > > >> no
> > > > >> >> > > > spec for a new API).
> > > > >> >> > > >
> > > > >> >> > > > 2. We'd try to automate the porting process 
> so that it 
> > > > >> >> > > > was
> > > > >> repeatable
> > > > >> >> > > > and easy to keep up with (or at least easier) and 
> > > > >> >> > > > maintain a line-by-line port in a branch. 
> That means 
> > > > >> >> > > > the .NET version
> > > > would
> > > > >> >> > > > ultimately be a very different product than the 
> > > > >> >> > > > line-by-line
> > > > port
> > > > >> and
> > > > >> >> > > > we'd be creating two separate but related 
> products but 
> > > > >> >> > > > where
> > > > >> possible,
> > > > >> >> > > > share code between them. Patching the line-by-line 
> > > > >> >> > > > product
> > > from
> > > > >> Java
> > > > >> >> > > > would be easier and faster than patching the .NET 
> > > > >> >> > > > product and
> > > > so
> > > > >> they
> > > > >> >> > > > may end up with different release schedules.
> > > > >> >> > > >
> > > > >> >> > > > It seems that effort on improving automation of the 
> > > > >> >> > > > port has
> > > > >> tapered
> > > > >> >> > > > off. As anyone who has done any of the porting from 
> > > > >> >> > > > commit
> > > > patches
> > > > >> >> > > > from Java knows, a good portion of that work can be 
> > > > >> >> > > > automated
> > > > with
> > > > >> >> > > > find/replace but substantial portions and certain 
> > > > >> >> > > > scenarios
> > > is
> > > > the
> > > > >> >> > > > current code definitely cannot be and probably will 
> > > > >> >> > > > never be
> > > > able
> > > > >> to
> > > > >> >> > > > be fully automated.
> > > > >> >> > > >
> > > > >> >> > > > While I have been advocating "doing both" 
> and trying 
> > > > >> >> > > > to find
> > > a
> > > > >> >> > > > strategy that makes sense for that, another 
> option is 
> > > > >> >> > > > to just officially drop any concern for 
> line-by-line 
> > > > >> >> > > > consistency with
> > > > >> Java. A
> > > > >> >> > > > justification for that is simple: IKVM 
> provides this already.
> > > > The
> > > > >> >> > > > licensing allows use in commercial apps and it's 
> > > > >> >> > > > performance
> > > is
> > > > >> close
> > > > >> >> > > > to the same, so, AFAIK it's a viable 
> replacement for a
> > > > >> line-by-line
> > > > >> >> > > > version of Lucene.Net in just about any context as 
> > > > >> >> > > > long as no
> > > > one
> > > > >> is
> > > > >> >> > > > modifying IKVM itself. I don't think it's 
> unreasonable 
> > > > >> >> > > > to
> > > > suggest
> > > > >> to
> > > > >> >> > > > people who want a line-by-line version to use IKVM 
> > > > >> >> > > > instead of Lucene.Net.
> > > > >> >> > > >
> > > > >> >> > > > So, if we use that perspective and say that 
> the need 
> > > > >> >> > > > for a
> > > .NET
> > > > >> usable
> > > > >> >> > > > line-by-line version of Lucene is already available 
> > > > >> >> > > > via IKVM,
> > > > why
> > > > >> >> > > > would we bother handcoding another one? It 
> makes more 
> > > > >> >> > > > sense
> > > to
> > > > >> focus
> > > > >> >> > > > our valuable hand coding work on making 
> something that
> > > > *improves*
> > > > >> upon
> > > > >> >> > > > the .NET development experience. It may 
> cause us to be 
> > > > >> >> > > > slow
> > > to
> > > > >> >> > > > release, but for good reason.
> > > > >> >> > > >
> > > > >> >> > > > So it seems to me we have the following 
> primary agenda 
> > > > >> >> > > > items
> > > to
> > > > >> deal
> > > > >> >> > > with:
> > > > >> >> > > >
> > > > >> >> > > > 1. Make an official decision regarding line-by-line 
> > > > >> >> > > > porting,
> > > > >> publish
> > > > >> >> > > > it and document our reasoning, so that we 
> can end the
> > > ambiguity
> > > > >> and
> > > > >> >> > > > circular discussions
> > > > >> >> > > > 2. If line-by-line porting is still part of 
> our plan 
> > > > >> >> > > > after we accomplish Agenda Item #1, resume work on 
> > > > >> >> > > > improving
> > > automation
> > > > of
> > > > >> >> > > > porting, creating scripts/tools/etc and 
> document the 
> > > > >> >> > > > process 3. If having a different API for 
> .NET is still 
> > > > >> >> > > > part of our
> > > plan
> > > > >> after
> > > > >> >> > > > we accomplish Agenda Item #1, spec those 
> API changes 
> > > > >> >> > > > and
> > > > >> associated
> > > > >> >> > > > internal changes required and publish the spec
> > > > >> >> > > >
> > > > >> >> > > > And to drive home the point I made in my first 
> > > > >> >> > > > sentence: If
> > > had
> > > > >> >> > > > already accomplished those three agenda items, the 
> > > > >> >> > > > time I
> > > just
> > > > >> spent
> > > > >> >> > > > typing this email could have been spent working on
> > > Lucene.Net.
> > > > We
> > > > >> need
> > > > >> >> > > > to get to that point if we want to maintain 
> any kind 
> > > > >> >> > > > of
> > > > >> development
> > > > >> >> > > > velocity.
> > > > >> >> > > >
> > > > >> >> > > > Thanks,
> > > > >> >> > > > Troy
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > > On Thu, Dec 29, 2011 at 2:38 PM, Prescott Nasser <
> > > > >> >> > geobmx...@hotmail.com>
> > > > >> >> > > wrote:
> > > > >> >> > > >> I dont think at the end of the day we want to make 
> > > > >> >> > > >> just
> > > > cosmetic
> > > > >> >> > > changes. We also have the issue of same name 
> different 
> > > > >> >> > > casing
> > > > which
> > > > >> needs
> > > > >> >> > > to be fixed - but it's not clear how to manage that 
> > > > >> >> > > without
> > > some
> > > > >> large
> > > > >> >> > > adjustments to the API.
> > > > >> >> > > >>
> > > > >> >> > > >>
> > > > >> >> > > >>
> > > > >> >> > > >> Sent from my Windows Phone 
> > > > >> >> > > >> ________________________________
> > > > >> >> > > >> From: Troy Howard
> > > > >> >> > > >> Sent: 12/29/2011 2:19 PM
> > > > >> >> > > >> To: lucene-net-dev@lucene.apache.org
> > > > >> >> > > >> Subject: Re: [Lucene.Net] Lucene.Net 3 onwards and 
> > > > >> >> > > >> 2.9.4g
> > > > >> >> > > >>
> > > > >> >> > > >> My vote goes to merging the two:
> > > > >> >> > > >>
> > > > >> >> > > >> Apply the same concepts from 2.9.4g to 3.X 
> > > > >> >> > > >> development,
> > > using
> > > > >> generics
> > > > >> >> > > >> where possible, Disposable vs Close, and exposing
> > > *additional*
> > > > >> APIs
> > > > >> >> > > >> for generics (but leaving the existing old 
> ones) to 
> > > > >> >> > > >> enable
> > > the
> > > > >> >> > > >> underlying performance improvements the 
> generics offer.
> > > Also,
> > > > >> expose
> > > > >> >> > > >> IEnumerable<T> implementations vs Java style
> > > > >> enumerables/iterators.
> > > > >> >> > > >>
> > > > >> >> > > >> If we are only adding to the existing and making 
> > > > >> >> > > >> relatively
> > > > minor
> > > > >> >> > > >> changes to enable generics, updating/maintenance 
> > > > >> >> > > >> should be
> > > > >> relatively
> > > > >> >> > > >> easy and it won't break anyone's code.
> > > > >> >> > > >>
> > > > >> >> > > >> Thanks,
> > > > >> >> > > >> Troy
> > > > >> >> > > >>
> > > > >> >> > > >>
> > > > >> >> > > >> On Thu, Dec 29, 2011 at 2:08 PM, Prescott Nasser <
> > > > >> >> > geobmx...@hotmail.com>
> > > > >> >> > > wrote:
> > > > >> >> > > >>> I agree its a matter of taste. I'd vote continue 
> > > > >> >> > > >>> with g and
> > > > >> evolve it
> > > > >> >> > > to where we want a .net version to be. What 
> do others think?
> > > > >> >> > > >>>
> > > > >> >> > > >>> Sent from my Windows Phone 
> > > > >> >> > > >>> ________________________________
> > > > >> >> > > >>> From: Digy
> > > > >> >> > > >>> Sent: 12/29/2011 1:16 PM
> > > > >> >> > > >>> To: lucene-net-dev@lucene.apache.org
> > > > >> >> > > >>> Subject: RE: [Lucene.Net] Lucene.Net 3 
> onwards and 
> > > > >> >> > > >>> 2.9.4g
> > > > >> >> > > >>>
> > > > >> >> > > >>> When I started that "g" branch, I had no 
> intention 
> > > > >> >> > > >>> to
> > > change
> > > > >> the API,
> > > > >> >> > > but at
> > > > >> >> > > >>> the end it resulted in a few changes like 
> > > > >> >> > > >>> StopAnalyzer(List<string> stopWords),
> > > > >> >> > > >>> Query.ExtractTerms(ICollection<string>) etc.
> > > > >> >> > > >>> But I think, a drop-in replacement will work for 
> > > > >> >> > > >>> most of
> > > the
> > > > >> >> > Lucene.Net
> > > > >> >> > > >>> users (Of course some contribs have been also 
> > > > >> >> > > >>> modified
> > > > >> accordingly)
> > > > >> >> > > >>>
> > > > >> >> > > >>> Changing arraylists/collections with generic 
> > > > >> >> > > >>> counterparts,
> > > > >> >> > > GetEnumerator's
> > > > >> >> > > >>> with foreach, AnonymousClass's with Func<> or 
> > > > >> >> > > >>> Action<>'s and Fixing LUCENENET-172 are things
> > > most
> > > > >> people
> > > > >> >> > > would
> > > > >> >> > > >>> not notice.
> > > > >> >> > > >>>
> > > > >> >> > > >>> This "g" version includes also some other patches 
> > > > >> >> > > >>> that were
> > > > >> fixed for
> > > > >> >> > > >>> .GE.(=>) Lucene3.1 (Which? I have to rework on my 
> > > > >> >> > > >>> commits)
> > > > >> >> > > >>>
> > > > >> >> > > >>> So, there isn't much change in API, more 
> changes for
> > > > developers
> > > > >> and
> > > > >> >> > > more
> > > > >> >> > > >>> stable code(At least I think so, since I 
> use this "g"
> > > > version in
> > > > >> >> > > production
> > > > >> >> > > >>> env. for months without any problem. For short, 
> > > > >> >> > > >>> 2.9.4g is a
> > > > >> superset
> > > > >> >> > of
> > > > >> >> > > >>> 2.9.4 in bugfix level)
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>> As a result, creating a new branch for 
> .Net friendly
> > > > Lucene.Net
> > > > >> or
> > > > >> >> > > >>> continuing on this branch is just a 
> matter of taste.
> > > > >> >> > > >>>
> > > > >> >> > > >>> DIGY
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>> -----Original Message-----
> > > > >> >> > > >>> From: Scott Lombard 
> [mailto:lombardena...@gmail.com]
> > > > >> >> > > >>> Sent: Thursday, December 29, 2011 5:05 PM
> > > > >> >> > > >>> To: lucene-net-dev@lucene.apache.org
> > > > >> >> > > >>> Subject: RE: [Lucene.Net] Lucene.Net 3 
> onwards and 
> > > > >> >> > > >>> 2.9.4g
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>> I don't see the g branch differing all that much 
> > > > >> >> > > >>> from the
> > > > >> >> > line-by-line
> > > > >> >> > > port.
> > > > >> >> > > >>> All the g branch does is change some data types as
> > > generics,
> > > > >> but line
> > > > >> >> > > by
> > > > >> >> > > >>> line the code the same once the generics 
> are declared.
> > > > >> >> > > >>>
> > > > >> >> > > >>> I don't see 2.9.4g being any closer to a 
> .NET style 
> > > > >> >> > > >>> version
> > > > than
> > > > >> >> > 2.9.4.
> > > > >> >> > > >>> While it does generics use for list style 
> variable 
> > > > >> >> > > >>> types
> > > the
> > > > >> >> > underlying
> > > > >> >> > > >>> classes are still the same and all of the 
> problems 
> > > > >> >> > > >>> with
> > > 2.9.4
> > > > >> not
> > > > >> >> > > being .NET
> > > > >> >> > > >>> enough would be true in 2.9.4g.
> > > > >> >> > > >>>
> > > > >> >> > > >>> I would have to refer to Digy on if it 
> changes how 
> > > > >> >> > > >>> an end
> > > > user
> > > > >> >> > > interacts
> > > > >> >> > > >>> with Lucene.NET.  If it does not affect 
> how the end 
> > > > >> >> > > >>> user
> > > > >> interacts
> > > > >> >> > with
> > > > >> >> > > >>> Lucene.NET then I think we should merge 
> it into the 
> > > > >> >> > > >>> Trunk
> > > and
> > > > >> go from
> > > > >> >> > > there
> > > > >> >> > > >>> on 3.0.3.
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>> Scott
> > > > >> >> > > >>>
> > > > >> >> > > >>>
> > > > >> >> > > >>>> -----Original Message-----
> > > > >> >> > > >>>> From: Prescott Nasser 
> > > > >> >> > > >>>> [mailto:geobmx...@hotmail.com]
> > > > >> >> > > >>>> Sent: Wednesday, December 28, 2011 8:28 PM
> > > > >> >> > > >>>> To: lucene-net-dev@lucene.apache.org
> > > > >> >> > > >>>> Subject: RE: [Lucene.Net] Lucene.Net 3 
> onwards and 
> > > > >> >> > > >>>> 2.9.4g
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>> Any reason we can't continue this g 
> branch and make 
> > > > >> >> > > >>>> it
> > > more
> > > > >> >> > > >>>> and more .net like? I was thinking about 
> what we've
> > > > expressed
> > > > >> >> > > >>>> at goals - we want a line by line port - 
> it's easy 
> > > > >> >> > > >>>> to maintain parity with java and easy to 
> compare. 
> > > > >> >> > > >>>> We also
> > > want
> > > > a
> > > > >> >> > > >>>> more .NET version - the g branch gets 
> this started 
> > > > >> >> > > >>>> -
> > > > although
> > > > >> >> > > >>>> it's not as .Net as people want (I think).
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>> What if we used the g branch as our .Net version 
> > > > >> >> > > >>>> and continued to make it more .Net like? 
> and kept 
> > > > >> >> > > >>>> the trunk as the line by line? The G 
> branch seems 
> > > > >> >> > > >>>> like a good start to
> > > > the
> > > > >> >> > > >>>> more .Net version anyway - we might as 
> well build 
> > > > >> >> > > >>>> off of
> > > > that?
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>>
> > > > >> >> > > >>>> ---------------------------------------- > From:
> > > > >> >> > > >>>> digyd...@gmail.com > To: 
> > > > >> >> > > >>>> lucene-net-dev@lucene.apache.org>
> > > > >> >> > > >>>> Date: Thu, 29 Dec 2011 02:45:23 +0200 > 
> Subject: RE:
> > > > >> >> > > >>>> [Lucene.Net] Lucene.Net 3 onwards and 
> 2.9.4g > > > 
> > > > >> >> > > >>>> but I guess the future of 2.9.4g depends on the 
> > > > >> >> > > >>>> extent that it
> > > is
> > > > >> >> > > >>>> becoming > more .NET like > > My 
> intention while I 
> > > > >> >> > > >>>> was creating that branch was just to 
> make 2.9.4 a > 
> > > > >> >> > > >>>> little bit more .Net like(+ maybe some 
> > > > >> >> > > >>>> performance). > I used many
> > > > codes
> > > > >> >> > > >>>> from 3.0.3 Java. So it is somewhere 
> between 2.9.4 & 
> > > > >> >> > > >>>> 3.0.3
> > > >
> > > > >> >> > > >>>> But I didn't think it as a separate branch to 
> > > > >> >> > > >>>> evolve on
> > > its
> > > > >> >> > > >>>> own path. It > is(or I think it is) the final 
> > > > >> >> > > >>>> version of
> > > 2.9
> > > > >> >> > > >>>> > > DIGY > > -----Original Message----- > From:
> > > Christopher
> > > > >> >> > > >>>> Currens [mailto:currens.ch...@gmail.com] > Sent:
> > > Wednesday,
> > > > >> >> > > >>>> December 28, 2011 9:20 PM > To:
> > > > >> >> > > >>>> lucene-net-dev@lucene.apache.org > Cc:
> > > > >> >> > > >>>> lucene-net-u...@lucene.apache.org > Subject: Re:
> > > > [Lucene.Net]
> > > > >> >> > > >>>> Lucene.Net 3 onwards and 2.9.4g > > One of the 
> > > > >> >> > > >>>> benefits of moving forward with the 
> conversion of 
> > > > >> >> > > >>>> the Java > Lucene,
> > > is
> > > > >> >> > > >>>> that they're using more recent versions of Java 
> > > > >> >> > > >>>> that
> > > support
> > > > >> >> > > >>>> > things like generics and enums, so the direct 
> > > > >> >> > > >>>> > port is
> > > > >> >> > > >>>> getting more and more > like .NET, though not in 
> > > > >> >> > > >>>> all
> > > > respects
> > > > >> >> > > >>>> of course. I'm of the mind, though, > 
> that one of 
> > > > >> >> > > >>>> the
> > > larger
> > > > >> >> > > >>>> annoyances, Iterables, should be converted to >
> > > Enumerables
> > > > >> >> > > >>>> in the direct port. It makes it a pain 
> to use it in 
> > > > >> >> > > >>>> .NET > without it inheriting from IEnumerable, 
> > > > >> >> > > >>>> since it can't be used in a foreach > 
> loop or with 
> > > > >> >> > > >>>> linq. Also, since the
> > > > direct
> > > > >> >> > > >>>> port isn't perfect anyway, it > seems a 
> port of the 
> > > > >> >> > > >>>> IDEA
> > > of
> > > > >> >> > > >>>> iterating would be more in the spirit of what > 
> > > > >> >> > > >>>> we're
> > > trying
> > > > >> >> > > >>>> to accomplish, since the code would 
> pretty much be 
> > > > >> >> > > >>>> the
> > > same,
> > > > >> >> > > >>>> > just with different method names. > > 
> I sort of 
> > > > >> >> > > >>>> > got off
> > > > >> >> > > >>>> topic there for a second, but I guess 
> the future of 
> > > > >> >> > > >>>> >
> > > 2.9.4g
> > > > >> >> > > >>>> depends on the extent that it is 
> becoming more .NET like.
> > > >
> > > > >> >> > > >>>> Obviously, while java is starting to use similar
> > > constructs
> > > > >> >> > > >>>> that we have > in .NET, it will never be perfect.
> > > > Admittedly,
> > > > >> >> > > >>>> I haven't looked at 2.9.4g > in a little 
> while, so 
> > > > >> >> > > >>>> I'm not sure how much it now differs from 3.x, 
> > > > >> >> > > >>>> since > there's a relatively large change there 
> > > > >> >> > > >>>> already. > > Thanks, > Christopher > > 
> On Thu, Dec 
> > > > >> >> > > >>>> 22, 2011 at 9:13 PM, Prescott Nasser > 
> wrote: > > > 
> > > > >> >> > > >>>> > > That's a great question - I
> > > know a
> > > > >> >> > > >>>> lot of people like the generics, and I > > don't 
> > > > >> >> > > >>>> really
> > > want
> > > > >> >> > > >>>> it to disappear. I'd like to keep it in 
> parity with 
> > > > >> >> > > >>>> the >
> > > >
> > > > >> >> > > >>>> trunk. But I know we also have a goal of making 
> > > > >> >> > > >>>> Lucene.Net more .Net like > > (further than 
> > > > >> >> > > >>>> 2.9.4g), and I don't know how that fits 
> in. We are 
> > > > >> >> > > >>>> a pretty > > small community and
> > > I
> > > > >> >> > > >>>> know everyone has some pretty busy 
> schedules so it 
> > > > >> >> > > >>>> > >
> > > takes
> > > > >> >> > > >>>> us considerable time to make big 
> progress. Trying 
> > > > >> >> > > >>>> to keep three > > different code bases probably 
> > > > >> >> > > >>>> isn't the right
> > > way
> > > > >> >> > > >>>> to go. > > > > > > > > > Date: Fri, 23 Dec 2011 
> > > > >> >> > > >>>> 13:02:03
> > > > >> >> > > >>>> +1100 > > > From: mitiag...@gmail.com > > > To:
> > > > >> >> > > >>>> lucene-net-u...@lucene.apache.org > > > Subject:
> > > > [Lucene.Net]
> > > > >> >> > > >>>> Lucene.Net 3 onwards and 2.9.4g > > > > 
> > > I was 
> > > > >> >> > > >>>> browsing "Roadmap" emails from November 
> in Lucene developer list.
> > > > >
> > > > >> >> > > >>>> It > > > remains unclear in what state Lucene 3 
> > > > >> >> > > >>>> porting
> > > is ,
> > > > >> >> > > >>>> but my question more > > > about 2.9.4g 
> . > > > Is 
> > > > >> >> > > >>>> it kind
> > > > of
> > > > >> >> > > >>>> experimental dead end variation of 2.9.4 with 
> > > > >> >> > > >>>> generics ? >
> > > > Am
> > > > >> >> > > >>>> > > > I right in classifying it as more 
> .Net like 
> > > > >> >> > > >>>> > > > 2.9.4
> > > > which
> > > > >> >> > > >>>> is unrelated to > > > roadmap Lucene 3 porting 
> > > > >> >> > > >>>> effort. > >
> > > > >> >> > > >>>> ----- > > Checked by AVG - www.avg.com > Version:
> > > > 2012.0.1901
> > > > >> >> > > >>>> / Virus Database: 2109/4708 - Release Date: 
> > > > >> >> > > >>>> 12/28/11 >
> > > > >> >> > > >>>>
> > > > >> >> > > >>>
> > > > >> >> > > >>> -----
> > > > >> >> > > >>>
> > > > >> >> > > >>> Checked by AVG - www.avg.com
> > > > >> >> > > >>> Version: 2012.0.1901 / Virus Database: 
> 2109/4710 - 
> > > > >> >> > > >>> Release
> > > > Date:
> > > > >> >> > > 12/29/11
> > > > >> >> > > >>>
> > > > >> >> > >
> > > > >> >> >
> > > > >> >
> > > > >>
> > > >
> > >
>                                         

Reply via email to