aboutsummaryrefslogtreecommitdiff
path: root/compat-macs.el
AgeCommit message (Collapse)Author
2023-05-24compat-macs--defun: Fix new Emacs 30 bytecompiler warningsDaniel Mendler
2023-02-11Additional workflow checksDaniel Mendler
2023-02-11compat-macs: More checksDaniel Mendler
2023-02-11More robust method to require libraries conditionallyDaniel Mendler
2023-01-31compat-27: Mark compat--dired-get-marked-files as obsoleteDaniel Mendler
See https://github.com/magit/magit/pull/4867
2023-01-27Improve commentaryDaniel Mendler
2023-01-24Ensure that Compat works both interpreted and compiledDaniel Mendler
See https://github.com/magit/magit/issues/4858
2023-01-22compat-macs: FormattingDaniel Mendler
2023-01-22Add :extended version checkDaniel Mendler
2023-01-22compat-macs: Use compat-macs-- namespaceDaniel Mendler
Avoid any potential clash with compat-- namespace of extended definitions.
2023-01-21compat-guard: Remove currently unused attribute :whenDaniel Mendler
2023-01-21Rename :explicit to :extendedDaniel Mendler
2023-01-21compat-macs: Reorder definitionsDaniel Mendler
2023-01-21compat-macs: Strict checking of :explicitDaniel Mendler
2023-01-21compat-guard: Add strict compile time checkDaniel Mendler
2023-01-21compat-macs: Add strict checksDaniel Mendler
2023-01-21compat-macs: Improve error checkingDaniel Mendler
2023-01-21compat-27: Add major-mode-suspend and major-mode-restoreDaniel Mendler
2023-01-18compat-macs: Improve docstringsDaniel Mendler
2023-01-18compat-defvar/defun/defmacro: Support obsoletionDaniel Mendler
2023-01-17compat-guard: Declare indentDaniel Mendler
2023-01-17Rename variableDaniel Mendler
2023-01-17Add compat-guard dynamic conditionDaniel Mendler
We have to make sure that no definitions are overriden at runtime, when the compiled library is loaded in a newer or patched Emacs version.
2023-01-17Require cl-lib at compile timeDaniel Mendler
2023-01-17Rename helperDaniel Mendler
2023-01-17Introduce compat-guard helper macroDaniel Mendler
2023-01-17Simplify compat-27 struct definitions, add make-decoded-timeDaniel Mendler
2023-01-16compat-macs: Rename :cond to :whenDaniel Mendler
2023-01-16compat-macs: Expand docstringDaniel Mendler
2023-01-15compat-macs: Simplification, remove :min-version and :max-versionDaniel Mendler
2023-01-15Minor code cleanup, shorter codeDaniel Mendler
2023-01-13compat-defalias: Add docstringDaniel Mendler
2023-01-12compat-29: Add buttonize and buttonize-regionDaniel Mendler
2023-01-06Move json functions to compat.elDaniel Mendler
These functions are defined conditionally. Therefore they must not be part of the versioned files. Conditionally-defined functions are a special complicated edge case, which need more testing. Therefore the json functions are currently marked as UNTESTED.
2023-01-06Only require Compat libraries which are neededDaniel Mendler
2023-01-06Remove :realnameDaniel Mendler
2023-01-06compat--function-definition: Do not use hashed symbolDaniel Mendler
The hashed symbol leads to a bytecompiler warning (false positive).
2023-01-06compat-defalias: Add missing debug declareDaniel Mendler
2023-01-06compat--function-definition: Add declare-functionDaniel Mendler
The functions are declared in order to avoid bytecompiler warnings about missing definitions at runtime. These warnings may be generated due to the dynamic unless fboundp check, which ensures that existing functions are not overridden.
2023-01-06compat-macs: Restore runtime checksDaniel Mendler
Compat uses runtime checks (boundp, fboundp) to ensure that existing definitions are never overridden, when Compat is loaded on a newer Emacs than it was compiled on.
2023-01-06Add runtime version checkDaniel Mendler
We must make sure that we don't load Compat in an incompatible Emacs version.
2023-01-06Rework the macros in compat-macsDaniel Mendler
- New macro compat--guarded-definition, which handles the generic feature and version checks (:feature, :min-version, :max-version). - compat--function-definition: Use compat--guarded-definition. - compat-defun, compat-defmacro: Use compat--function-definition. - compat-defvar: Use compat--guarded-definition. - compat-defalias: Use compat--guarded-definition. - compat--format-docstring: New helper function to format the compatibility docstring. Used by compat-defvar and compat-defun. - compat--condition-satisfied: New helper function which performs the version constraint checks. Used by compat--guarded-definition. - compat--check-attributes: New helper function which checks the attribute plists for validity. Used by compat--guarded-definition.
2023-01-06Remove deprecated prefixed compatibility functionsDaniel Mendler
These functions are only used by exactly two packages: Consult 0.30 (released) and Magit 3.4.0 (unreleased development version). Both packages have been updated to use compat-call.
2023-01-05Hotfix, add missing version checkDaniel Mendler
2023-01-05compat-macs: Fix docstringsDaniel Mendler
2023-01-05Exclusive bounds for :max-versionDaniel Mendler
2023-01-05Simplify macrosDaniel Mendler
2023-01-05Remove version checkDaniel Mendler
2023-01-05Remove :version keyDaniel Mendler
2023-01-05Add string-splitDaniel Mendler