Harti Brandt wrote:

MD>NO no and again no. This would repeat the same design mistake
MD>that is already in Linux. On API level you DO NOT WANT versioning.
MD>What you really want is: type signature cheking. Like for example
MD>done through C++ symbol mangling rules. If you can't do it like that
MD>then better leave it off as it is. Versioning in itself

Type signature checking doesn't help you if the semantics of an API change
without type changes. APIs should be semantically and syntactically stable
in -STABLE. In -CURRENT they are expected to change. Managing a 3rd party
driver for current is a nightmare, but may no be necessary once we have a
-STABLE based on FreeBSD5.

Sure sure. Perhaps I wasn't clear enough. Versioning doesn't help you *anything* at all, but it is introducing new problems instead. Tons of them in fact, if one looks at the Linux pain in this area. I suggested type signature cheking in C++ style just to show how fundamentally flawed the idea of version cheking is, but I can perfectly life with the situation as it is.

Symbol versioning is good to implement "multi-flavoured" single binary
objects (glibc uses it this way) and *not* for interface cheking.
Again my main point is versioning on the symbol level simply makes no sense and
worsens the situation. It's the fundamentally wrong approach to the actual
problem.  The fact that Linux does something like this is only showing that Alan
Cox and Keith Owens didn't get it either and one shouldn't repeat the mistake.

No more no less.

_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to