At 07:14 PM 12/01/2004 +0100, Paul Reeves wrote:
>On Monday 12 January 2004 16:52, Olivier Mascia wrote:
>[much compelling argument snipped]
> > tools that look for
> > isc_get_client_version() will not find it and conclude we're some kind
> > of 6.x InterBase, which on an interoperability point of view is
> > probably a much safer bet than letting them assume we might be a 7.0.
>One can only hope that application developers actually read the value
>returned by a call like isc_get_client_version(), rather than just
>testing for an entrypoint.
> > So unless we *have to* to export those isc_get_client_version() APIs I
> > vote for exporting them as "fb_" APIs, even though this breaks that
> > API area at this late stage.
>I think we do have to export these calls now, because we have done so for
>8 RCs. And as InterBase uses them we now need to imitate them correctly
>for applications that are expecting InterBase.
Has anyone actually *tested* the assumptions with interfaces other than the
IBX Admin components?
Recent assumptions seem to be based on hearsay - "a renamed fbclient.dll
doesn't work with applications built to use an InterBase client." Well, at
least in the case of IB Objects, a RC8 fbclient.dll renamed to gds32.dll
and placed into the system directory works just fine with old apps.
It would be timely to test the assumptions and discover what the problem
really is. All this messing about with the client libraries is a nightmare
and, to me, the RC8 "solution" creates more problems than it solves.
AFAIR the purpose of the IBX Admin library disabling itself in the Delphi
IDE if it found a gdslib version 6 or higher was to prevent poor stupid
Delphi developers from using them for versions of IB that don't expose the
Services API. If I remember rightly, the IBX Admin code also also does
some hacky stuff to disable itself if an IB 6 client tries to connect to a
Classic server on Linux...
Do we actually know that a renamed fbclient.dll placed in the system
directory won't work with the IBX data access components, FIBPlus,
DBXpress, ADO, etc.? IOW, what evidence is there that anything other than
IBX Admin actually checks the version string? Why would they need to?
If it turns out that the only real issue is IBX Admin, then the fix (which
is drop-dead simple) belongs with the application developer. It's not as
if users had no warning that IBX would become incompatible with Firebird