with 'libmysql' tag

work work work

was it really almost a year ago that i mentioned that my focus would be shifting from connector/odbc to libmysql? time certainly flies.

after what now seems much too long, i can say that we have carved out libmysql from the server source code, rebuilt its build system (using cmake), and are gearing up for an alpha release. the code is on launchpad, and it builds on all the platforms that the mysql server does. we have a build system set up that runs what scant tests we have on all of the platforms, and the big thing to work one before release is making more tests.

because this source is derived from the 6.0 server code, it has at least one big flaw that needs to get addressed — if you try to use utf-8, it uses the new 4-byte utf-8 supported in 6.0 even when talking to pre-6.0 servers, which then fails and falls back to latin1.

besides fixing that problem, our plan is to not make any large changes in connector/c (libmysql) for its first solo release. so the time from the first alpha release to the first “generally available” release should be small.

new responsibility

while we start to wind up development of connector/odbc 5.1, i will also be taking on responsibility for libmysql, the c library that defines the client interface to mysql, and the mysql command-line utilities. there are about 120 active bugs in those areas right now, so the first task will be getting that down to a more manageable number.

after that, the field will open up for new development. i know that an asynchronous interface to libmysql is on some people’s wishlist, and there are other areas where i think that libmysql could be cleaned up in general.

but the idea that i think is the most exciting is to build a scripting language into the mysql command-line client, such as lua. this would allow us to rewrite many of the utility scripts and perhaps even other command-line clients (like mysqldump) in lua, so they would be easier to work with and more naturally cross-platform.

i should be careful to note that this does not mean that we are abandoning connector/odbc development (again). it is just that 5.1 has been a huge leap forward in closing most of the gaps in its functionality, and the remaining features are both not numerous and not that widely used.