On Tue, Jan 29, 2008 at 04:11:18PM -0800, David.Comay at Sun.COM wrote: > Thanks for the explanation of where the SQLite community has been > compatible and where it has not.
There's much more at the main site: http://sqlite.org/news.html http://sqlite.org/oldnews.html http://sqlite.org/formatchng.html In the 3.x series the relevant compatibility notes are: http://sqlite.org/oldnews.html#2007__un_18 http://sqlite.org/oldnews.html#2007__pr_25 http://sqlite.org/oldnews.html#2005__eb_01 http://sqlite.org/oldnews.html#2005__an_21 and the ones described in http://sqlite.org/formatchng.html I think that's a track record that speaks for itself. Also, some parts of the API are deprecated and some are experimental. The API docs (which aren't manpages, BTW), are clear about the stability attributes of the various interfaces. > >Perhaps the i-team could say that the CLI/API/ABI/file format are > >Uncommitted and say that unspecified behaviours that "rise to the level > >of an interface" are Volatile. I'm not sure that the ARC has ever done > >anything like that though. Or perhaps the i-team could just go with > >Uncommitted. > > > >It's certainly easier for the i-team to use Volatile. I can't fault > >them for it. > > But then we risk having a situation similar to OpenSSL where there are > many consumers for a Volatile set of interfaes. The problem with OpenSSL is the penchant in the OpenSSL for backwards-incompatible changes to the ABI and the fact that many consumers make use of private OpenSSL interfaces. That shouldn't happen here. > In the case of > OpenSSL, I know the upstream community does not apparently have a good > track record of compatibility so perhaps it's warranted. But in the > case of SQLite, it seems a shame to do the same for a component that > does seem to "do the right thing" in this area. I don't think using Volatile does that. Using Uncommitted might encourage more third-parties to use the SQLite shipped in Solaris. From a making-Solaris-easier-to-develop-on that seems to me like the right thing to do. BTW, the filesystem locations of the CLI, header and compilation link ought to be Committed. Same with the static linking archive, if we do ship it. Nico --