diff --git a/README.md b/README.md index d72419ab..a0d43b0f 100644 --- a/README.md +++ b/README.md @@ -114,6 +114,15 @@ API Documentation +### API Compatibility +Even if we try our best not to, every once in a while we are forced to modify +our API in a way that will break backwards compatibility. If you find yourself +unable to compile code that was working fine before a library update, make sure +you check the [API changes](docs/apichanges.md) section first. + +**NOTE** - Our **C++ header files** will change their extension from *.h* to +*.hpp* in the upcoming version. + ### Changelog Version changelog [here](docs/changelog.md). diff --git a/docs/apichanges.md b/docs/apichanges.md new file mode 100644 index 00000000..1282a5c0 --- /dev/null +++ b/docs/apichanges.md @@ -0,0 +1,20 @@ +API Changes {#apichanges} +=============== + +**IMPORTANT NOTICE** + +Our **C++ header files** will change their extension from *.h* to *.hpp*. This +change is anticipated in the upcoming version and unfortunately will break +source compatibility with previous versions of UPM for every library. You will +need to update your code and change to the new extension format in your +`#include` directives. + +Here's a list of other API changes made to the library that break source/binary +compatibility between releases: + + * **my9221**, **groveledbar** and **grovecircularled** are now all part of the + same library (my9221) and new functionality was added going to v.0.5.1 + * **stepmotor** driver API was changed significantly from v.0.4.1 to v.0.5.0 + * **eboled** library was greatly improved in version 0.4.0 and the `draw()` + function was removed in favor of a more complete GFX library implementation + \ No newline at end of file