Having used the new SharedLibVersion stuff in DerelictUtil myself for a bit now, I’ve realized the need for a particularly useful enhancement.
If a loader does not support loading based on SharedLibVersion, attempting to do so will trip a compile-time assert. I don’t want users to be confused, having not yet read the docs I haven’t yet written, if they find their apps failing to load older versions of a lib in the wild even though they specified the minimum version to load. Because that’s exactly what would happen. Say, for example, you tell DerelictGLFW3 that you’re perfectly fine with release 1.1.x (which supports GLFW 3.1) going ahead and loading GLFW 3.0.x. The loader would silently ignore your request and fail to load any 3.0.x shared libraries. Now, you’ll get an assert message telling you that the loader does not support SharedLibVersion. I assume you all develop with asserts on like I do.
This brings me one step closer to a 2.0 release of the package. Please keep in mind that I may add, remove or change things in the 1.9.x series before I declare 2.0. If you’re using the new SharedLibVersion stuff and it’s working for you, please let me know. I’m sure you’ll let me know if it isn’t.