doc/abi.md
Since r2-6.0.0 the ABI_VERSION define avoid plugins built with different ABI
to be loaded to avoid segfaults.
Since r2-5.6.0 the development model has changed in order to provide a reliable way to push updates without the need to recompile the plugins, tools and api bindings.
In order to achieve this, the contributions need to follow some new rules in order to be merged, so we ensure that binaries keep stable.
As it's said, odd version numbers are development versions that are only available
in git form. The releases are always an even number (0, 2, 4, 6, 8).
When X.Y.9 is reached, it's time to merge all the pull requests tagged for
the next big release, the .9 versions are always the most unstable as they focus
on quick development in order to make all the breaking changes needed to
introduce new features or simplify the usage of some apis.
What you CANNOT do between X.Y.0 and X.Y.8:
What you CAN do between X.Y.0 and X.Y.8:
R2_XY0 static inline
#if R2_XY0 to be removed when .9 arrivesR_DEPRECATE to tag everything that will be removed when .9 is reachedWhat you MUST do in X.Y.9:
R_DEPRECATE or R2_XY0. Use git grep to find them outAll this is checked in the CI with the abidiff utility.