To install this package, run in Emacs:
M-x package-install RET compat RET
To allow for the usage of Emacs functions and macros that are defined in newer versions of Emacs, compat.el provides definitions that are installed ONLY if necessary. These reimplementations of functions and macros are at least subsets of the actual implementations. Be sure to read the documentation string to make sure. Not every function provided in newer versions of Emacs is provided here. Some depend on new features from the core, others cannot be implemented to a meaningful degree. Please consult the Compat manual for details. The main audience for this library are not regular users, but package maintainers. Therefore commands and user options are usually not implemented here.
This is a minor release that hopes to address https://todo.sr.ht/~pkal/compat/7.
This is a minor release adding the following changes:
derived-mode-pdefined in Emacs 27
provided-mode-derived-pdefined in Emacs 27
read-multiple-choicedefined in Emacs 26
file-name-absolute-pdefined in Emacs 28
The only other notable change is that the manual has been rewritten to include much more documentation that had been the case previously.
The main change of this release has been the major simplification of Compat's initialisation system, improving the situation around issues people had been reporting (https://todo.sr.ht/~pkal/compat/4, once again) with unconventional or unpopular packaging systems.
In addition to this, the following functional changes have been made:
format-promptof an empty string as "default" argument
decoded-time-perioddefined in Emacs 28
subr-primitive-pdefined in Emacs 28
Minor improvements to manual are also part of this release.
This release just contains a hot-fix for an issue introduced in the last version, where compat.el raises an error during byte compilation. See https://todo.sr.ht/~pkal/compat/4.
Two main changes have necessitated a new patch release:
This is a minor release fixing a bug in
json-serialize, that could
cause unintended side-effects, not related to packages using Compat
directly (see https://todo.sr.ht/~pkal/compat/2).
This release mostly fixes a number of smaller bugs that were not identified as of 22.214.171.124. Nevertheless these warrent a version bump, as some of these changes a functional. These include:
ox-texinfo). For the time being, the Texinfo file is maintained in the repository itself, next to the
MANUALfile. This might change in the future.
compat-*macros. This improves the compile-time optimisation that strips away functions that are known to be defined for a specific version.
setf) support for
image-propertyand generalised variable support for
Furthermore a bug tracker was added: https://todo.sr.ht/~pkal/compat, which is the preferred way to report issues or feature requests. … …