The PLplot Plotting Library: Programmer's Reference Manual
Prev | Chapter 21. API compatibility definition | Next

# Regression test for backwards compatibility

Since PLplot is developed by so many people, the task of checking for backwards compatiblity of the library is very hard. As for the 5.3.1 release, we do not have any rigorous regression test for check whether the library is really backwards compatible.

However, here are some rules to be followed by the Release Manager prior to releasing a new version of PLplot:

- Check if there are any changes in `plplot.h`. If no prototype is changed, then the chances are high that no backwards compatibilities have been introduced. If new functions has been added, then the library soname will be kept, although the libtool soversion string in `configure.ac` must be changed from `x:y:z` to `(x+1):0:(z+1)`. See the libtool manual for details.

- A necessary, but not sufficient test consists of the following: first, install the previous released version of PLplot in the system and compile all the examples `examples/c/x??c.`. After that, install the to-be-released version of PLplot and try to run the previously compiled examples. If they either link or run incorrectly, then backwards incompatibilities have been introduced and the soversion string must be upgraded from `x:y:z` to `(x+1):0:0`.

Prev | Home | Next
API compatibility definition | Up | Obsolete/Deprecated API for PLplot