Releases: ckeditor/ckeditor5
v21.0.0
Release highlights
We are happy to announce the release of CKEditor 5 v21.0.0.
This release packs quite a few all around improvements, including:
- A convenient UI for changing the image's width to a predefined size.
- Autolinking URLs and emails in editor content.
- Distinguishing between inside and outside
<code>
. - Better experience when replacing (typing over) a link text.
We fixed also a handful of bug fixes, for example:
- Calling the
editor.setData()
will now also clear the undo stack. - Linking to a part of to-do list item.
- Automatic link decorators in case of a linked image.
Finally, we also took care of some developer experience-oriented improvements:
- We changed marker conversion, so that it doesn't break HTML structure in some cases.
- Introduced a new
RawElement
class to make it simpler to implement features like "embedding raw HTML".
Please note that there are some major breaking changes, be sure to review them before upgrading.
Blog post link coming soon…
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
MAJOR BREAKING CHANGES ℹ️
- The
editor.setData()
method now clears the undo and redo stacks. - engine: The
Text#is()
andTextProxy#is()
methods (in the model and view) now expect to be called with'$text'
instead of'text'
and'$textProxy'
instead of'textProxy'
. - engine: The
is()
method (e.g.Element#is()
,Text#is()
,AttributeElement#is()
orContainerElement#is()
) in both, the model and the view, no longer treats the first argument as an element name. To check the element's name use the second argument instead (node.is( 'element', 'paragraph' )
instead ofnode.is( 'paragraph' )
). - engine: Marker conversion to data has been revamped. The data format changed, the new conversion helpers were introduced and a new rule has been implemented that a comma (
,
) is not allowed in a marker name. See the GitHub issue for a walkthrough and example migration path. - engine: The
DomConverter#getParentUIElement()
method was renamed toDomConverter#getHostViewElement()
because now it supports bothUIElement
andRawElement
(see #4469).
MINOR BREAKING CHANGES ℹ️
- engine: The
bindTwoStepCaretToAttribute()
utility function has been removed. Useeditor.plugins.get( TwoStepCaretMovement ).registerAttribute()
instead. - table: The
findAncestor()
utility function was removed. - table: The parameters of
TableUtils#createTable()
has changed. Useoptions
object to pass number ofrows
andcolumns
. - table: The
removeEmptyRows()
andremoveEmptyRowsColumns()
utility functions does not require thebatch
parameter any more. - table: The
downcastTableHeadingRowsChange()
downcast converter has been removed. It is no longer possible to overrideheadingRows
attribute change in a single converter. This behavior can be customized using a table downcast converter. See #7601.
Features
- autoformat: Block autoformat can also be triggered in blocks other than a paragraph. Closes #6170. (commit)
- autoformat: Enabled autoformat feature also for blocks that are not empty. (commit)
- engine: Implemented the view
RawElement
. Added theDowncastWriter#createRawElement()
method. Closes #4469. (commit) - engine: The method
DataController#set()
is now decorated so plugins can listen toeditor.setData()
calls. (commit) - engine: Introduced a new marker conversion helpers that produce semantic HTML data output. See
DowncastHelpers#markerToData()
andUpcastHelpers#dataToMarker()
. Closes #7556. (commit) - engine: Added model
Position#findAncestor()
andElement#findAncestor()
methods. Closes #3233. (commit) - engine: Changed the visibility scope of
Mapper#findPositionIn()
fromprivate
topublic
. (commit) - engine: Added
Range#getJoined()
method for joining ranges. (commit) - image: Introduced the UI for a manual image resizing via a dropdown or standalone buttons. Closes #5201. (commit)
- image: Introduced the UI for restoring original image size. Closes #5197. (commit)
- link: Added an icon indicating in the top-right corner of an image that informs the image is linked. Closes #7457. (commit)
- link: Typing over the selected link will not remove the link itself. Instead, the typed text will replace the link text. Closes #4762. (commit)
- link: Added the
AutoLink
feature which replaces a plain text with a link if typed or pasted content is the link. Closes #4715. (commit) - page-break: Added support for pasting page breaks from MS Word. Closes #2508. (commit)
- table: Added option to set heading rows and columns for
insertTable
command andTableUtils#createTable()
. Closes #6768. (commit) - typing: Introduced the
TwoStepCaretMovement
plugin. See [#74...
v20.0.0
Release highlights
We are happy to announce the release of CKEditor 5 v20.0.0.
This release brings some highly anticipated features:
- Support for linking images.
- Typing around widgets.
- An option to automatically set link protocol.
- Improved selection handling when working with links.
New features were also accompanied by a set of bug fixes, to name a few:
- Autoformatting will no longer change formatting when typing in an inline code.
- Editor will no longer crash if there's a HTML comment in the source data.
TODO: Add a link to the blog post.
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
MAJOR BREAKING CHANGES ℹ️
- ckeditor5: Node
>=12.0.0
is required now.
MINOR BREAKING CHANGES ℹ️
- table: The
TableNavigation
plugin was renamed toTableKeyboard
. - table: The values returned by the
TableWalker
iterator have changed. See #6785. - widget: Removed the
getWidgetTypeAroundPositions()
helper since the "Insert new paragraph" buttons are now visible regardless of the widget location in the document - The
isTableWidget()
andtoTableWidget()
utility functions were removed. - The functions
getSelectedTableWidget()
andgetTableWidgetAncestor()
fromtable/utils
module were moved to thetable/utils/widget
module. - The functions
getSelectedTableCells()
,getTableCellsContainingSelection()
,getSelectionAffectedTableCells()
,getRowIndexes()
,getColumnIndexes()
, andisSelectionRectangular()
fromtable/utils
module were moved totable/utils/selection
module. - The functions
getVerticallyOverlappingCells()
,splitHorizontally()
,getHorizontallyOverlappingCells()
, andsplitVertically()
fromtable/utils
module were moved totable/utils/structure
module. - The functions
findAncestor()
,updateNumericAttribute()
,createEmptyTableCell()
, andisHeadingColumnCell()
fromtable/commands/utils
module were moved totable/utils/common
module. - The functions
getSingleValue()
andaddDefaultUnitToNumericValue()
fromtable/commands/utils
module were moved totable/utils/table-properties
module. - The functions
cropTableToDimensions()
andtrimTableCellIfNeeded()
fromtable/tableselection/croptable
module were moved totable/utils/structure
module. - The functions
repositionContextualBalloon()
,getBalloonTablePositionData()
, andgetBalloonCellPositionData()
fromtable/ui/utils
module were moved totable/utils/ui/contextualballoon
module. - The functions
getBorderStyleLabels()
,getLocalizedColorErrorText()
,getLocalizedLengthErrorText()
,colorFieldValidator()
,lengthFieldValidator()
,lineWidthFieldValidator()
,getBorderStyleDefinitions()
,fillToolbar()
, andgetLabeledColorInputCreator()
fromtable/ui/utils
module were moved totable/utils/ui/table-properties
module. - The
defaultColors
constant fromtable/ui/utils
module was moved totable/utils/ui/table-properties
module.
Features
- link: Introduced the linking images feature. Closes #7330. (commit)
- link: Introduced the
LinkImageUI
plugin that brings a UI to wrap images in links. Closes #7331. (commit) - link: A fake caret (selection) should be displayed in the content when the link input has focus and the browser does not render the native caret (selection). Closes #4721. (commit)
- link: Introduced the
config.link.defaultProtocol
option for adding it automatically to the links when it's not provided by the user in the link form. Closes #4858. (commit) - theme-lark: Added styles for the fake link caret (selection) (see #4721). (commit)
- theme-lark: Added styles for a "fake caret" brought by the
WidgetTypeAround
plugin (see #6693). (commit) - typing: Created a public
isNonTypingKeystroke()
helper (see #6693). (commit) - upload: Introduced the
config.simpleUpload.withCredentials
request configuration. Closes #7282. (commit) - utils: Created
isArrowKeyCode()
,getLocalizedArrowKeyCodeDirection()
, andisForwardArrowKeyCode()
helpers (see #6693). (commit) - widget: Implemented keyboard support for inserting paragraphs around block widgets using a "fake horizontal caret" (
WidgetTypeAround
). Both "Insert new paragraph" buttons are now always displayed for all block widgets regardless of their location in the document. Closes #6693, #6825, #6694. (commit)
Bug fixes
- autoformat: Autoformatting should not occur inside an existing text with a model
code
attribute. Closes #1239. (commit) - engine: The editor should not crash when the initial data includes HTML comments. Closes #5734. (commit)
- engine: The model selection post-fixer should not set a new selection if the ranges before and after post-fixing are the same (see #6693). (commit)
- engine: Backspace will no longer change the type of the trailing block. Closes #6680. (commit)
- font: The Font Family feature should apply the complete family value from the configuration when
config.fontFamily.supportAllValues
istrue
. Closes #7285. (commit) - image: The widget toolbar won't be shown if an empty collection of items was provided in the editor's configuration. Closes #5857. (commit)
- image: The
src
andalt
attributes for the image element will be always added to the editor's data. Even if they are empty. Closes #5033. (commit) - table: Table multi-cell selection shoul...
v19.1.1
Bug fixes
- paste-from-office: The paste from Office feature should retain background and font styles when pasting tables. Closes #7275. (commit)
Released packages
Check out the Versioning policy guide for more information.
Released packages (summary)
Other releases:
- @ckeditor/ckeditor5-build-balloon: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-build-balloon-block: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-build-classic: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-build-decoupled-document: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-build-inline: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-paste-from-office: v19.0.1 => v19.0.2
- @ckeditor/ckeditor5-utils: v19.0.1 => v19.0.2
v19.1.0
Release highlights
We are happy to announce the release of CKEditor 5 v19.1.0.
This release further refines the table plugin, brings a helper for convenient typing in tight places before or after widgets and brings a major change in our code infrastructure. Most notable enhancements are:
- Pasting within a table, with different table selection — which marks an end of our Table selection stage III task.
- New widget feature, allowing to type before or after a widget in case there's no space around it.
- Project migration to a monorepo architecture.
But we did not stop there, as the release comes with several bug fixes too:
- Entities handling in code blocks.
- Potential editor crash when removing a column.
- Editor crash when inserting a table row/column with another widget selected in a cell.
Read more in the blog post: https://ckeditor.com/blog/CKEditor-5-v19.1.1-with-table-enhancements-typing-around-widgets-and-print-to-PDF-feature/
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
MINOR BREAKING CHANGES ℹ️
- media-embed: The
MediaEmbedUI#form
property was removed from the API. - table: The
cropTable()
utility method was removed. Use thecropTableToDimensions()
instead. - theme-lark: A new
--ck-color-focus-border-coordinates
CSS custom property has been added and the existing--ck-color-focus-border
property now uses it internally. If your integration overrides the latter, we recommend you update the former to avoid compatibility issues with various editor UI features.
Features
- paragraph: Implemented the
InsertParagraphCommand
registered as'insertParagraph'
in the editor. Closes #6823, #7229. (commit) - table: Introduced support for pasting tables into a selected table fragment. Closes #6120. (commit)
- table: Introduced table cells selection using keyboard. Closes #6115, #3203. (commit)
- theme-lark: Brought styles for the feature allowing users to type in tight spots around block widgets (see #407). (commit)
- widget: Brought the feature allowing users to type in tight spots around block widgets where web browsers do not allow the caret to be placed (see #407). Closes #6740, #6688, #6689, #6695. (commit)
Bug fixes
- cloud-services: A
Token
instance will be destroyed by theCloudServices
context plugin. Closes #7248. (commit) - code-block: Fixed conversion of some entities (like
,&
) in a code block. Closes #5901. (commit) - media-embed: Made it possible to use the
mediaEmbed
button more than once (in more than one toolbar. Closes #6333. (commit) - media-mebed: The media widget conversion will no longer discard widget internals (drag or resize handlers, buttons to insert paragraphs, etc.) injected by other features when converting the URL (see #407). (commit)
- table: Setting the column as a header will now properly split col-spanned cells. Closes #6658. (commit)
- table: The table properties balloon should always be visible if the table is bigger than a visible viewport. Closes #6190. (commit)
- table: When the state is restored or the user enters color value manually, the color input will now properly match color label (if any is available). Closes #6791. (commit)
- table: The editor will not crash when removing columns next to row-spanned cells. Closes #6789. (commit)
- table: The table properties button should not be enabled if all the property commands are disabled. Closes #6679. (commit)
- table: Table heading rows should be properly updated after removing rows as a side effect of merging cells. Closes #6667. (commit)
- table: Empty table rows are properly handled during conversion and layout post-fixing. Closes #3274. (commit)
- table: Shift+click will now use an anchor cell if there is any. Closes #6453. (commit)
- table: Fixed insert table row/column commands when a widget is selected inside of a table cell. Closes #6607. (commit)
- table: Table keyboard navigation should not alter the native Shift+Arrow behavior inside of a table cell. Closes #6641. (commit)
- table: Merging cells no longer wraps the text in a
<span>
element rather than paragraph in a certain scenario. Closes #6260. (commit) - widget: The widget toolbar should always be visible even if the widget is bigger than a visible viewport (see #6190). (commit)
Other changes
- mention: Renamed the
MentionAttribute._uid
to aMentionAttribute.uid
as it needs to be used by integrators when implementing custom converters. Closes ...
v19.0.0
We are happy to announce the release of CKEditor 5 v19.0.0.
This release is focused on further improving the table selection plugin and includes following the enhancements:
- An option to select an entire row or column.
- Custom keyboard handling in tables, allowing for consistent and more convenient navigation using the keyboard.
- Improved removing rows or columns from complex tables.
- Fixed a few cases where an editor could be crashed.
We also introduced support for plural forms in our translation API, added the select all feature and created the supportAllValues
option to preserve any font family or size value.
We also did several performance tweaks to improve CKEditor 5 data processing and rendering time.
A few bugs have been fixed, most notably:
- Font retention when pasting from Microsoft Word.
- Support for special characters in mention matching.
- Artifact characters produced when typing after an emoji with text transformation enabled.
Finally, this release comes with some important breaking changes. The most notable ones are:
- Make sure the latest version of the
Essentials
plugin or theSelectAll
plugin is installed in your integration. Either is required for proper keystroke handling in editor widgets. - The format of stored editor translations changed. If you use
window.CKEDITOR_TRANSLATIONS
, see #334. - The
translate()
function from thetranslation-service
was marked as protected. See #334. - The
getPositionedAncestor()
helper will no longer return the passed element when it is positioned. - The
ViewCollection
no longer has thelocale
property. - The
ViewCollection#constructor()
no longer accepts thelocale
parameter. - The
LabeledView
component was renamed toLabeledFieldView
. Also, its instance of a labeled component's view is available throughLabeledFieldView#fieldView
. It replacedLabeledView#view
. - The
DropdownView#focusTracker
property was removed as it served no purpose. - From now on, the
SpecialCharactersNavigationView
is an instance of theFormHeaderView
and unnecessarySpecialCharactersNavigationView#labelView
was removed. - The
env.isEdge
property was removed. See ckeditor/ckeditor5#6202.
Check the list of packages below to learn more about these and other minor breaking changes.
Blog post coming soon...
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
Dependencies
New packages:
Major releases (contain major breaking changes):
- @ckeditor/ckeditor5-special-characters: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-ui: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-utils: v18.0.0 => v19.0.0
Major releases (contain minor breaking changes):
- @ckeditor/ckeditor5-ui: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-utils: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-widget: v18.0.0 => v19.0.0
Major releases (dependencies of those packages have breaking changes):
- @ckeditor/ckeditor-cloud-services-core: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-adapter-ckfinder: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-alignment: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-autoformat: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-autosave: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-basic-styles: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-block-quote: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-build-balloon: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-build-balloon-block: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-build-classic: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-build-decoupled-document: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-build-inline: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-ckfinder: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-clipboard: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-cloud-services: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-code-block: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-core: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-easy-image: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-editor-balloon: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-editor-classic: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-editor-decoupled: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-editor-inline: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-engine: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-enter: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-essentials: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-font: v18.0.0 => v19.0.0
- @ckeditor/ckeditor5-heading: v18.0.0 => v19.0.0
- [@ckeditor/...
v18.0.0
We are happy to announce the release of CKEditor 5 v18.0.0. This release introduces support for selecting multiple table cells, rows or columns and it improves structure retention for lists pasted from Microsoft Word.
We also modified our builds to include the text transformation plugin and enabled toolbar item grouping for the inline editor and balloon editor builds.
As usual, we also fixed a couple of bugs and improved existing features, mostly in the table plugin.
Finally, this release comes with a couple of important breaking changes. The most notable ones are:
- Constructor for
EditingController
,DataController
andView
classes now require aStylesProcessor
instance. - Constructor for
DomConverter
,HtmlDataProcessor
andXmlDataProcessor
classes and thecreateViewElementFromHighlightDescriptor()
function now require an instance of view document. - The
#document
getter was removed from model nodes. - The
GFMDataProcessor()
requires the view document instance as its first parameter. - The
BalloonToolbar
plugin now groups the overflowing items by default.
Check the list of packages below to learn more about above and other minor breaking changes.
Blog post coming soon...
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
Dependencies
Major releases (contain major breaking changes):
- @ckeditor/ckeditor5-editor-inline: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-engine: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-markdown-gfm: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-ui: v17.0.0 => v18.0.0
Major releases (contain minor breaking changes):
- @ckeditor/ckeditor5-engine: v17.0.0 => v18.0.0
Major releases (dependencies of those packages have breaking changes):
- @ckeditor/ckeditor-cloud-services-core: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-adapter-ckfinder: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-alignment: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-autoformat: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-autosave: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-basic-styles: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-block-quote: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-build-balloon: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-build-balloon-block: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-build-classic: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-build-decoupled-document: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-build-inline: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-ckfinder: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-clipboard: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-cloud-services: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-code-block: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-core: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-easy-image: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-editor-balloon: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-editor-classic: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-editor-decoupled: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-enter: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-essentials: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-font: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-heading: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-highlight: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-horizontal-line: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-image: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-indent: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-link: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-list: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-media-embed: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-mention: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-page-break: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-paragraph: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-paste-from-office: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-remove-format: v17.0.0 => v18.0.0
- @ckeditor/ckeditor5-restricted-editing: v17.0.0 => [v18.0.0](https://github.com/ckeditor/ckeditor5-restricted-editin...
v17.0.0
We are happy to announce the release of CKEditor 5 v17.0.0.
From the end user perspective, this release introduces support for styling tables and table cells as well as a new special characters picker feature. We also worked on improving the editor initialization and data processing performance.
From the developer perspective, we added support for editor contexts, adjusted the watchdog to work with editor contexts (which introduced breaking changes in that package) and introduced an extensible system for parsing and normalizing CSS properties which main goal was to make the editor better pick up certain style names in pasted/loaded content.
As usual, we also fixed a couple of bugs and improved existing features. The two features which got most improvements are image resizing and the restricted editing feature.
Finally, this release comes with a couple of important breaking changes. The most notable ones are:
- The decoupled document build: the highlight plugin was replaced with font color and font background color features. The upgrade path requires performing data migration or customizing the build to use the highlight feature. Refer to https://github.com/ckeditor/ckeditor5-build-decoupled-document/releases/tag/v17.0.0 for more information.
- The watchdog package: the
Watchdog
class was renamed and moved to a new module. See https://github.com/ckeditor/ckeditor5-watchdog/releases/tag/v17.0.0 for more information. - The restricted editing package: the class used by this feature to mark exceptions was changed from
ck-restricted-editing-exception
torestricted-editing-exception
. The upgrade path requires performing data migration. Refer to https://github.com/ckeditor/ckeditor5-restricted-editing/releases/tag/v17.0.0 for more information.
Check the list of packages below to learn more about other breaking changes.
Read more in the blog post: https://ckeditor.com/blog/CKEditor-5-v17.0.0-with-table-styles-special-characters-and-performance-improvements/.
Collaboration features
The CKEditor 5 Collaboration features changelog can be found here: https://ckeditor.com/collaboration/changelog.
Dependencies
New packages:
Major releases (contain major breaking changes):
- @ckeditor/ckeditor5-alignment: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-restricted-editing: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-theme-lark: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-watchdog: v16.0.0 => v17.0.0
Major releases (contain minor breaking changes):
- @ckeditor/ckeditor5-font: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-image: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-utils: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-widget: v16.0.0 => v17.0.0
Releases containing new features:
- @ckeditor/ckeditor5-engine: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-mention: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-table: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-typing: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-ui: v16.0.0 => v17.0.0
Other releases:
- @ckeditor/ckeditor-cloud-services-core: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-adapter-ckfinder: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-autoformat: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-autosave: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-basic-styles: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-block-quote: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-build-balloon: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-build-balloon-block: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-build-classic: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-build-decoupled-document: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-build-inline: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-ckfinder: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-clipboard: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-cloud-services: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-code-block: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-core: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-easy-image: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-editor-balloon: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-editor-classic: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-editor-decoupled: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-editor-inline: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-enter: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-essentials: v16.0.0 => v17.0.0
- @ckeditor/ckeditor5-heading: v16.0.0 => [v17.0.0](https://github.com/ckeditor/ckeditor5-he...
v16.0.0
We are happy to announce the release of CKEditor 5 v16.0.0. This release introduces one of the most community-requested features: code blocks. We included a new restricted editing plugin, too.
We also did some changes in the default UI colors to improve accessibility. In addition to that, as always, the release contains many more improvements and bug fixes.
The blog post is coming soon...
Dependencies
New packages:
Major releases (contain major breaking changes):
- @ckeditor/ckeditor5-theme-lark: v15.0.0 => v16.0.0
Major releases (dependencies of those packages have breaking changes):
- @ckeditor/ckeditor-cloud-services-core: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-adapter-ckfinder: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-alignment: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-autoformat: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-autosave: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-basic-styles: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-block-quote: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-build-balloon: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-build-balloon-block: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-build-classic: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-build-decoupled-document: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-build-inline: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-ckfinder: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-clipboard: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-cloud-services: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-core: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-easy-image: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-editor-balloon: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-editor-classic: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-editor-decoupled: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-editor-inline: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-engine: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-enter: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-essentials: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-font: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-heading: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-highlight: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-horizontal-line: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-image: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-indent: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-link: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-list: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-markdown-gfm: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-media-embed: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-mention: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-page-break: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-paragraph: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-paste-from-office: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-remove-format: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-table: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-typing: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-ui: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-undo: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-upload: v15.0.0 => v16.0.0
- @ckeditor/ckeditor5-utils: v15.0.0 => [v16.0.0](htt...
v15.0.0
We are happy to announce the release of CKEditor 5 v15.0.0. This editor version introduces support for inserting horizontal lines, page breaks and SVG images into the WYSIWYG editor. It also allows you to define the document title section thanks to the new title plugin. The editor toolbar is now responsive which improves the UX, especially for mobile devices.
Regarding the build itself, we added the indentation button to the build's default setup. See ckeditor/ckeditor5#1844.
From other news, we changed the versioning policy. Now, all packages will have the same major version, hence, we needed to release this one as v15.0.0 (we skipped versions 13.0.0 and 14.0.0). Read more about the new versioning policy.
Blog post coming soon...
Dependencies
New packages:
Major releases (contain major breaking changes):
- @ckeditor/ckeditor5-engine: v14.0.0 => v15.0.0
- @ckeditor/ckeditor5-image: v14.0.0 => v15.0.0
- @ckeditor/ckeditor5-list: v12.1.0 => v15.0.0
- @ckeditor/ckeditor5-ui: v14.0.0 => v15.0.0
- @ckeditor/ckeditor5-widget: v11.1.0 => v15.0.0
Major releases (dependencies of those packages have breaking changes):
- @ckeditor/ckeditor-cloud-services-core: v3.0.1 => v15.0.0
- @ckeditor/ckeditor5-adapter-ckfinder: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-alignment: v11.2.0 => v15.0.0
- @ckeditor/ckeditor5-autoformat: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-autosave: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-basic-styles: v11.1.4 => v15.0.0
- @ckeditor/ckeditor5-block-quote: v11.1.3 => v15.0.0
- @ckeditor/ckeditor5-build-balloon: v12.4.0 => v15.0.0
- @ckeditor/ckeditor5-build-balloon-block: v12.4.0 => v15.0.0
- @ckeditor/ckeditor5-build-classic: v12.4.0 => v15.0.0
- @ckeditor/ckeditor5-build-decoupled-document: v12.4.0 => v15.0.0
- @ckeditor/ckeditor5-build-inline: v12.4.0 => v15.0.0
- @ckeditor/ckeditor5-ckfinder: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-clipboard: v12.0.2 => v15.0.0
- @ckeditor/ckeditor5-cloud-services: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-core: v12.3.0 => v15.0.0
- @ckeditor/ckeditor5-easy-image: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-editor-balloon: v12.2.2 => v15.0.0
- @ckeditor/ckeditor5-editor-classic: v12.1.4 => v15.0.0
- @ckeditor/ckeditor5-editor-decoupled: v12.2.2 => v15.0.0
- @ckeditor/ckeditor5-editor-inline: v12.3.0 => v15.0.0
- @ckeditor/ckeditor5-enter: v11.1.0 => v15.0.0
- @ckeditor/ckeditor5-essentials: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-font: v11.2.2 => v15.0.0
- @ckeditor/ckeditor5-heading: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-highlight: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-indent: v10.1.0 => v15.0.0
- @ckeditor/ckeditor5-link: v11.1.2 => v15.0.0
- @ckeditor/ckeditor5-markdown-gfm: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-media-embed: v11.1.4 => v15.0.0
- @ckeditor/ckeditor5-mention: v13.0.0 => v15.0.0
- @ckeditor/ckeditor5-paragraph: v11.0.5 => v15.0.0
- @ckeditor/ckeditor5-paste-from-office: v11.1.0 => v15.0.0
- @ckeditor/ckeditor5-remove-format: v10.0.4 => v15.0.0
- @ckeditor/ckeditor5-table: v14.0.0 => v15.0.0
- @ckeditor/ckeditor5-theme-lark: v14.2.0 => v15.0.0
- @ckeditor/ckeditor5-typing: v12.2.0 => v15.0.0
- @ckeditor/ckeditor5-undo: v11.0.5 => v15.0.0
- [@ckeditor/ckedi...
v12.4.0
This release brings a huge set of new features: image resizing, to-do lists, support for RTL languages, simple upload adapter, support for pasting from Google Docs, mathematic formulas, and spelling and grammar checking. In addition to that, as always, it contains many improvements and bug fixes.
Blog post comming soon...
Dependencies
Major releases (contain breaking changes):
- @ckeditor/ckeditor5-engine: v13.2.1 => v14.0.0
- @ckeditor/ckeditor5-image: v13.1.2 => v14.0.0
- @ckeditor/ckeditor5-mention: v12.0.1 => v13.0.0
- @ckeditor/ckeditor5-table: v13.0.2 => v14.0.0
- @ckeditor/ckeditor5-ui: v13.0.2 => v14.0.0
- @ckeditor/ckeditor5-upload: v11.1.1 => v12.0.0
- @ckeditor/ckeditor5-utils: v13.0.1 => v14.0.0
- @ckeditor/ckeditor5-watchdog: v10.0.1 => v11.0.0
Minor releases:
- @ckeditor/ckeditor5-alignment: v11.1.3 => v11.2.0
- @ckeditor/ckeditor5-build-balloon: v12.3.1 => v12.4.0
- @ckeditor/ckeditor5-build-balloon-block: v12.3.1 => v12.4.0
- @ckeditor/ckeditor5-build-classic: v12.3.1 => v12.4.0
- @ckeditor/ckeditor5-build-decoupled-document: v12.3.1 => v12.4.0
- @ckeditor/ckeditor5-build-inline: v12.3.1 => v12.4.0
- @ckeditor/ckeditor5-core: v12.2.1 => v12.3.0
- @ckeditor/ckeditor5-editor-inline: v12.2.1 => v12.3.0
- @ckeditor/ckeditor5-enter: v11.0.4 => v11.1.0
- @ckeditor/ckeditor5-indent: v10.0.1 => v10.1.0
- @ckeditor/ckeditor5-list: v12.0.4 => v12.1.0
- @ckeditor/ckeditor5-paste-from-office: v11.0.4 => v11.1.0
- @ckeditor/ckeditor5-theme-lark: v14.1.1 => v14.2.0
- @ckeditor/ckeditor5-typing: v12.1.1 => v12.2.0
- @ckeditor/ckeditor5-widget: v11.0.4 => v11.1.0
Patch releases (bug fixes, internal changes):
- @ckeditor/ckeditor5-adapter-ckfinder: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-autoformat: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-autosave: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-basic-styles: v11.1.3 => v11.1.4
- @ckeditor/ckeditor5-block-quote: v11.1.2 => v11.1.3
- @ckeditor/ckeditor5-ckfinder: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-clipboard: v12.0.1 => v12.0.2
- @ckeditor/ckeditor5-cloud-services: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-easy-image: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-editor-balloon: v12.2.1 => v12.2.2
- @ckeditor/ckeditor5-editor-classic: v12.1.3 => v12.1.4
- @ckeditor/ckeditor5-editor-decoupled: v12.2.1 => v12.2.2
- @ckeditor/ckeditor5-essentials: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-font: v11.2.1 => v11.2.2
- @ckeditor/ckeditor5-heading: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-highlight: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-link: v11.1.1 => v11.1.2
- @ckeditor/ckeditor5-markdown-gfm: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-media-embed: v11.1.3 => v11.1.4
- @ckeditor/ckeditor5-paragraph: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-remove-format: v10.0.3 => v10.0.4
- @ckeditor/ckeditor5-undo: v11.0.4 => v11.0.5
- @ckeditor/ckeditor5-word-count: v10.0.1 => v10.0.2