: > No, actaully it's the converse issue -- if a major piece moves from "solr"
: > to "core" and a *person* wanted to make a major change to that piece of
: > functionality that wasn't backwards compatible, then "core" would
: > certianly need to undergo a major version bump.
: 
: To try and put it simply - w/o an attempt at synchronized releases,
: I'm against of code/modules moving out of solr.  It get's to the heart
: of why we merged in the first place.

Hmmm, i'm not sure what to say about that.  My recollection of the 
discussion was that almost everyone agreed that refactoring and reducing 
code overlap was a good idea, but synchronized releases seemed to be the 
biggest sticking point people had (isn't that why there was a second (or 
maybe third?) "take" on the vote ... to remove that item?)

In any case: it's still orthogonal to the point i'm trying to make
 
Even if Lucene-Java, and Solr, and a bunch of new modules refactored out 
of the two, all start getting lock step releases, the version labels we 
put on those releasees shouldn't neccessarily be identical.

We could easily find ourselves in either of the following two situations 
for any arbitrary release off the "trunk" (assume it's 2011-05-23, and the 
last release of both Lucene-Java and Solr was known as version "4.2") 

1) Lucene-Java has made some massive public API changes that included 
removing some deprecated APIs because they were horribly broken and 
could corrupt data - so people agree that the version number should be 
bumped to "5.0"; Solr has never used the old buggy API, and does not 
expose any of the new underlying API changes, and has had very few changes 
since 4.2 ... reving up to "5.0" would give users the impression that 
something significant had changed, when in fact very little has changed.

2) Solr has made some major front end API changes and removed some 
deprecated RequestHandlers that were buggy, so Solr really needs to bump 
the version number up to "5.0"; Lucene-Java has made some very minor 
feature additions, and the trunk is 100% back compat with 4.2 -- calling 
it "lucene-Java 5.0" would give people a missleading ipression that it was 
not API compatible with the previous release.


My key point being: Version numbers should communicate the 
significance in change to the *user* of the product, and the users of 
Solr are differnet then the users of Lucene-Java, so even if the releases 
happen in lock step, that doesn't mean the verion numbers should be in 
lock step.

-Hoss

Reply via email to