v43.2.0
We are happy to announce the release of CKEditor 5 v43.2.0.
Release highlights
Notable improvements
- Operational Transformation Stability: Significant changes have been made to the OT system, enhancing the undo functionality and real-time collaboration, especially in conflict resolution scenarios. These improvements ensure smoother editor operations during complex interactions.
- Performance Improvements: We have merged several community-driven performance enhancements (thanks @sunesimonsen), that optimize the editor’s core engine. While no changes to the editor’s logic were made, these updates improve overall efficiency and responsiveness.
More imports available via ckeditor5
and ckeditor5-premium-features
indexes
As users transition to new installation methods (v42.0.0+) with ckeditor5
and ckeditor5-premium-features
as the main packages, we are continuously addressing missing imports for less common classes, functions, types, and utilities, broadening their availability. Since our TypeScript rewrite (v37.0.0), imports can now be made directly through the package indexes, simplifying integration. As many users historically imported from src
, we encourage you to try the new version and report any missing imports. In the future, we are considering removing src
from published packages to reduce package size, so the more feedback we receive, the better and more stable API we will provide.
Features
- engine: Added the
usePassive
option toDomEventObserver
that enables listening to passive events. Closes #16412. (commit) - media-embed: It is now possible to embed YouTube shorts. Closes #17090. (commit)
- ui: Updated the "Powered by" link. (commit)
Bug fixes
- ckbox: Editing inline images using
CKBox
no longer changes and reinserts them simultaneously. Closes #17056. (commit) - engine: Fixed incorrect marker handling in some scenarios involving undo and real-time collaboration, which earlier led to a
model-nodelist-offset-out-of-bounds
error. See #9296. (commit) - engine: Fixed incorrect handling of merge changes during undo in some scenarios involving real-time collaboration, which earlier led to a
model-nodelist-offset-out-of-bounds
error. See #9296. (commit) - engine: Fixed conflict resolution error, which led to editor crash in some scenarios where two users removed larger intersecting part of the content and used undo. See #9296. (commit)
- engine: Fixed incorrect undo behavior leading to an editor crash when a user pressed Enter key multiple times, then pressed backspace that many times, then undid all the changes. Closes #9296. (commit)
- theme-lark: Increased the specificity of the dropdown menu panel styles to address issues with incorrect
z-index
ordering. (commit) - ui: Fixed scrolling in dropdowns when a block toolbar button is active. Closes #17067. (commit)
- ui: Increased the specificity of the dropdown menu panel styles to address issues with incorrect
z-index
ordering. (commit)
Other changes
- basic-styles: Exported the
AttributeCommand
class. Closes #17105. (commit) - ckeditor5-premium-features: Marked the
ckeditor5
package aspeerDependencies
. - engine: Performance improvements. Avoided creating unnecessary arrays. Closes #17143. (commit)
- Exported several classes and utilities from various packages (commit).
Released packages
Check out the Versioning policy guide for more information.
Released packages (summary)
Releases containing new features:
- @ckeditor/ckeditor5-engine: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-media-embed: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-ui: v43.1.1 => v43.2.0
Other releases:
- @ckeditor/ckeditor5-adapter-ckfinder: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-ai: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-alignment: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-autoformat: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-autosave: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-basic-styles: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-block-quote: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-balloon: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-balloon-block: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-classic: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-decoupled-document: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-inline: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-build-multi-root: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-case-change: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-ckbox: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-ckfinder: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-clipboard: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-cloud-services: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-code-block: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-collaboration-core: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-comments: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-core: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-document-outline: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-easy-image: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-editor-balloon: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-editor-classic: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-editor-decoupled: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-editor-inline: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-editor-multi-root: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-enter: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-essentials: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-export-pdf: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-export-word: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-find-and-replace: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-font: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-format-painter: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-heading: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-highlight: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-horizontal-line: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-html-embed: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-html-support: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-image: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-import-word: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-indent: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-language: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-link: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-list: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-list-multi-level: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-markdown-gfm: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-mention: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-merge-fields: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-minimap: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-operations-compressor: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-page-break: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-pagination: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-paragraph: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-paste-from-office: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-paste-from-office-enhanced: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-real-time-collaboration: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-remove-format: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-restricted-editing: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-revision-history: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-select-all: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-show-blocks: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-slash-command: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-source-editing: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-special-characters: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-style: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-table: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-template: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-theme-lark: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-track-changes: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-typing: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-undo: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-upload: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-utils: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-watchdog: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-widget: v43.1.1 => v43.2.0
- @ckeditor/ckeditor5-word-count: v43.1.1 => v43.2.0
- ckeditor5-collaboration: v43.1.1 => v43.2.0
- ckeditor5-premium-features: v43.1.1 => v43.2.0