Morgan Smith <[email protected]> writes:

> ... I'd be
> interested in knowing how you figure out what functions are available in
> what versions of Emacs.

Some functions have this information in help buffer.
But in most cases, I simply run emacs-28, emacs-29, emacs-30, ...
and check if a given function is available.

Another possibility is checking git history on function source in Emacs
git sources.

>>> 1. emacs-28 has issues with elpa signature
>
> Can't reproduce that locally.  I assume your emacs-28 package depends on
> outdated certificates or something?  Seems like a package issue, not an
> Emacs issue.

Interesting. In any case, I think it is no longer relevant. Emacs 31 is
soon-to-be-released. On main, we can already drop emacs-28 support.

>> A gentle ping. It has been 2 months.
>
> Honestly, the "make repro" and related workflows are what's stopping me
> from working on this :P

> I can't help but feel like we are adding complexity for little benefit.
> Currently it is easy to work on org-mode completely offline.  With this
> change installed an accidental "git clean -xfd" (which I do all the
> time) will bring an offline development session to a halt (assuming the
> hacker is using an older emacs).

Yes, I have been thinking about this from the very beginning when adding
compat was suggested. For now, Org does not have any non-optional
third-party dependencies. Adding compat means we will have one.
But I think that it is worth it, especially given that adding compat
will reduce maintenance burden significantly. I remember countless times
when we have to carefully think about supporting/not supporting old
Emacs versions. Compat will make our life much easier.

The other question is how to do it best.

> I wish there was a better way to leverage packages installed on a user's
> system.  This change completely overrides "package-user-dir".

Maybe we can use package-directory-list.

Daniel also suggested another approach - ship compat together with Org
mode, just as Emacs ships third-party libraries. Not for ELPA, just for
git repository.

The idea is to keep your code, but *commit* the compat to Git repo.
Then, we can have a special make target to update compat in git.
WDYT?

-- 
Ihor Radchenko // yantar92,
Org mode maintainer,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>

Reply via email to