cl.el, which is deprecated (Ecaml uses cl-lib now instead).Basic data types
Value.Type.Enum. Users should now use Value.Type.Enum.S instead.Filename.extension, a wrapper for file-name-extension.Emacs_version.major_version, a wrapper for variable emacs-major-version.Hook.Function.symbol, which retrieves the name of a given hook function.Process.call_exn now accepts an optional ?stderr argument, which specifies what to do with the standard error output from the process. The default, Mix, retains the old behavior of interleaving it with the standard output. It can also be dropped with Drop_if_ok or redirected elsewhere with Split.Advice.defun_around_funcall now raises a more informative error message when the advice function's arity does not match the advised function's.Buffers and Text
Buffer.is_modified, a wrapper for buffer-modified-p.Current_buffer.active_region now checks use-region-p instead of mark-active.max_duration and max_costs for Current_buffer.replace_buffer_contents. See the docstring for replace-buffer-contents.Kill_ring.current_kill_exn, which returns the first item in the kill ring (the one that would be inserted by yank). It can also return text copied from another GUI application, if available. This is a wrapper for current-kill.Overlay.delete_property. This sets an overlay property to nil, as Emacs doesn't expose a way to actually remove the property from an overlay's plist; for most text properties, a nil value has the same effect as a missing one.Point.Property_search module, which wraps text-property-search-forward and its required argument types.Text.Property_name.{after_string,before_string,invisible}, equivalent to after-string, before-string, and invisible.Rx.Char_class.Named, which allows specifying a character class by name (e.g., "alphabetic", "digit"), rather than by listing them in a string or specifying a range.Commands
Symbol.Disabled.t, which allows disabled commands to include a message, such as to explain why a command was disabled. This message is displayed when the user attempts to run the disabled command. defun_* ?disabled arguments use the new type.Key_sequence.invoking_this_command, a wrapper for this-command-keys.Faces
Color.of_rgb8, which takes arguments in the range [0, 255] (instead of [0, 65_535] as Color.of_rgb does).Face.Attribute.Extend variant, to handle the built-in faces in Emacs 28.Frames and Windows
Frame.window_list now accepts an optional ?frame argument. When None, this still lists the windows of the selected frame.Selected_window.find_file_other_window Async, as find_file already was.Major modes
Compilation.major_mode, a wrapper for compilation-mode.Compilation.find_buffer, a wrapper for compilation-find-buffer.Major_mode.Python, a wrapper for python-mode.Minor modes
Minor_mode.auto_fill, a wrapper for auto-fil-modeMinor_mode.define_minor_mode's initialize function now receives the minor mode being defined as an argument; this can be used to change the behavior based on whether the minor mode is being enabled or disabled, or to add hooks/commands that may enable/disable the minor mode.Other
Buffer.with_temp_buffer and Echo_area.wrap_message now accept a Sync_or_async.t argument, instead of requiring the body to return Deferred.t.Customization.Type.Key_sequence variant.Minibuffer.read_file_name, a wrapper for read-file-name