Every so often, Leo's documentation has announced breaking changes to Leo's API.
Those announcements weren't wrong, and they were good practice. And yet...
In the absence of full, accurate annotations, it's legitimate to ask: did Leo ever have a published API? And if not, how could that API ever break?
Sure,
there have always been ways to break code. Just change the number of
required args to a function/method, or change its returned value.
But consider the global functions in leoGlobals.py. Many functions now return an empty string instead of None. Yes, this is technically a
breaking change. But without any annotation of the returned type, how
likely was it that plugins or scripts would explicitly test against
None?
Summary
Yes, Leo 6.8.10 must carefully document all breaking changes.
Now, for the first time (thanks to full, accurate annotations), Leo has a properly documented API.
All of your question or comments are welcome.
Edward