Daniel Mendler <[email protected]> writes: >> (or (require 'compat nil 'noerror) >> (require 'org-vendored-compat)) >> >> Then, if system provides compat library, we load that version. > > No, this does not sound good. > > It should only be (require 'compat), and the build scripts should make > sure that Compat is available on the load path, either the Emacs Compat > shim, a Compat installed as package or a vendored Compat. Otherwise you > will create an incentive for distributions to install the > org-vendored-compat as part of the distributions package, and this is > clearly undesired.
But if we have vendored compat, we can't step into the namespace, or packages may load *Org's* compat instead of installed. That will create a lot of headache for everyone. > The only purpose of the vendoring should be that you have the source of > Compat is available of "offline use" inside the repository, such that > you can develop with a cloned version of the Org repository without > installing anything else, without cloning another repository and without > cloning a git submodule. What about users who use git version of Org? -- 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>
