summaryrefslogtreecommitdiff
path: root/etc/NEWS.28
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2021-10-01 07:50:25 -0700
committerGlenn Morris <rgm@gnu.org>2021-10-01 07:50:25 -0700
commit823bc66e7459eed71de498ff0a2544f2bb889d34 (patch)
treec7267cc6dd2273e52eb41bca77cb2627cea0ed2b /etc/NEWS.28
parente50f5d51f5b44dbe4996ce2a5a2b42d6eb97adf4 (diff)
parentad0798a395c172c8befdb5190c74bd7ab38df938 (diff)
downloademacs-823bc66e7459eed71de498ff0a2544f2bb889d34.tar.gz
emacs-823bc66e7459eed71de498ff0a2544f2bb889d34.tar.bz2
emacs-823bc66e7459eed71de498ff0a2544f2bb889d34.zip
Merge from origin/emacs-28
ad0798a395 * etc/TODO: Add interactive mode tagging. 879ef5b19a * etc/TODO: Rearrange to start with "Simple tasks". d73f0e96a7 ; * etc/TODO: Move elpa.gnu.org items to the end. 7cf1229706 ; * etc/TODO: Mention a relevant bug report. f733b909ff * etc/TODO: Remove outdated item. (Bug#50904) 94c247d659 ; Oops, fix up last commit 88378acbfc Rename arguments of ERC's '/whois' and simplify doc string 205eb7f801 ; s/class/type 86da812afb Migrate Xref off EIEIO 5c73dfcbcb * admin/release-branch.txt: New file. f060d1c9a4 * lisp/dired.el (dired-omit-mode): Declare, to avoid compi... # Conflicts: # etc/NEWS
Diffstat (limited to 'etc/NEWS.28')
-rw-r--r--etc/NEWS.2814
1 files changed, 14 insertions, 0 deletions
diff --git a/etc/NEWS.28 b/etc/NEWS.28
index b9f58306563..10a46571b7e 100644
--- a/etc/NEWS.28
+++ b/etc/NEWS.28
@@ -3294,6 +3294,20 @@ file:
(add-hook 'foo-mode-hook (lambda () (auto-fill-mode -1))
+** Xref migrated from EIEIO to cl-defstruct for its core objects.
+This means that 'oref' and 'with-slots' no longer works on them, and
+'make-instance' can no longer be used to create those instances (which
+wasn't recommended anyway). Packages should keep to using the
+functions like 'xref-make', 'xref-make-match', 'xref-make-*-location',
+as well as accessor functions 'xref-item-summary' and
+'xref-item-location'.
+
+Among the benefits are better performance (noticeable when there are a
+lot of matches) and improved flexibility: 'xref-match-item' instances
+do not require that 'location' inherits from 'xref-location' anymore
+(that class was removed), so packages can create new location types to
+use with "match items" without adding EIEIO as a dependency.
+
* Incompatible Lisp Changes in Emacs 28.1