What would make things consistent for the client api's is a prescribed set
of implementations for a solr release.  For example, executing searches with
these parameters, support for facets requires those parameters, updates
should be called in this manner, etc.  For lack of a better term, a
loosely-coupled interface definition.  Those requirements could then be
versioned, and the various api's could advertise themselves as solr
1.0compliant, solr
1.1 compliant, and so on.  The solr release dictates the requirements for
compliance; the api maintainer is responsible for meeting those
requirements.  This would also be handy when certain features are
deprecated, i.e. when the /update url is changed.

Regarding C#, this would be easy enough to implement.  There are common
community methods for building/compilation, test libraries, and help
documentation, so doing things consistently with Erik and the solrb library
works for C# as well (and I assume most other languages.)

-- j


On 3/31/07, Chris Hostetter <[EMAIL PROTECTED]> wrote:


On a related note: We've still never really figured out how to deal with
integrating compilation or testing for client code into our main and build
system -- or for that matter how we should distribute them when we do our
next release, so if you have any suggestions regarding your C# client by
all means speak up ... in the mean time we can do the same thing Erik
started with solrb and flare: an isolated build system that makes sense to
the people who understand that language and rely on community to cacth any
changes to Solr that might break clients.

-Hoss


Reply via email to