10. Incompatible Library Changes

This chapter documents those library changes since the v4.0.0 fork with MySQL++ that break end-user programs. You can dig this stuff out of the ChangeLog, but the ChangeLog focuses more on explaining and justifying the facets of each change, while this section focuses on how to migrate your code between these library versions.

Since pure additions do not break programs, those changes are still documented only in the ChangeLog.

10.1. API Changes

This section documents files, functions, methods and classes that were removed or changed in an incompatible way. If your program uses the changed item, you will have to change something in your program to get it to compile after upgrading to each of these versions.

v4.0.0

Or, differences between MySQL++ 3.2.1 and libtabula

Renamed library files from *mysqlpp* to *tabula*. On Unixy platforms, this means the actual library file will be called something like libtabula.*, which is where the new name comes from. (I didn’t want to call it just “Tabula.”)

namespace::mysqlpp is now namespace::libtabula.

#include <mysql++.h> is now #include <libtabula.h>.

10.2. ABI Changes

Since several of the API changes between MySQL++ and libtabula also affect the ABI, for the initial release we are not documenting any ABI changes. We shouldn’t have to do that until libtabula 5.0, since the ABI is intended to be stable through to the next major version.