ENB: Only *now* can Leo's API truly break

11 views
Skip to first unread message

Edward K. Ream

unread,
Aug 1, 2026, 3:42:59 AM (10 days ago) Aug 1
to leo-editor
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

Reply all
Reply to author
Forward
0 new messages