From: Martijn T. <m.t...@up...> - 2007-07-18 08:10:55
|
> > Since libfbclient is guaranteed to be 100% backwards-compatible[1] (as I > > understand it), there's no need to change its soname. As we now already > > have libfbclient.so.2, let's keep that in 2.1 too. In other words, no > > change is required for fbclient, FB 2.1 can safely contain > > libfbclient.so.2.1.0, with soname of libfbclient.so.2 and symlinked from > > libfbclient.so.2. > > > > libfbembed, however, is another case -- as I understand it, its > > behaviour changes with each major release (and *possibly* with minor > > ones too) -- new datatypes, syntax construct, etc. > > > > Imagine a program that uses libfbembed as embedded server -- it relies on > > certain behaviour of the server and this should not change unexpectedly > > because the progam will break. > > > > fb_inet_server is another (although different) case - it is supposed to > > offer connection to a certain version of the server. If I have > > fb_inet_server from 2.0, connecting to it should offer the functionality > > of FB 2.0. > > > > To address the problem, I propose usage of soname for libfbembed that > > changes when "behaviour" of the server changes. I suppose this means > > soname of libfbembed.so.2.1 for FB 2.1.0. If there are behaviour changes > > in 2.1.x (x>0) then the soname may need to include that "x" too. > > > > This way, program linked with libfbembed.so.2.1 will continue to work as > > before even if FB 3.0 (or any other) is installed, since the library > > file will be named differently in 3.0 and will not replace the previous > > one. > > Reviewing your suggestions (selection of good so names for firebird is > definitely NOT trivial thing) I may suppose that they are almost OK for fb2. > Why almost - libfbembed is not only an embedded server. It's also the Ah, but _is_ it an embedded server? IMO, it isn't. Does it accept incoming connections? No, it does not, so it's not a "server". (yes, it has the server code et all, but doesn't "serve" anything). Wouldn't this rather be called "Firebird Direct Access" or something? Cause you don't need a running service to access your database? Martijn Tonies Database Workbench - tool for InterBase, Firebird, MySQL, NexusDB, Oracle & MS SQL Server Upscene Productions http://www.upscene.com My thoughts: http://blog.upscene.com/martijn/ Database development questions? Check the forum! http://www.databasedevelopmentforum.com |