Skip to content

Commit

Permalink
Merge branch 'release' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
psmyrek committed Oct 4, 2023
2 parents 59d3630 + 2a9b1de commit c29a933
Show file tree
Hide file tree
Showing 936 changed files with 33,873 additions and 5,562 deletions.
36 changes: 36 additions & 0 deletions .circleci/template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,31 @@ jobs:
name: Upload the coverage to Coveralls
command: npx coveralls -v < .out/combined_lcov.info

cke5_trigger_release_process:
machine: true
steps:
- community_verification_command
- checkout_command
- bootstrap_repository_command
- run:
name: Verify if CKEditor 5 is ready to release
command: |
#!/bin/bash
# Do not fail if the Node script ends with non-zero exit code.
set +e
node scripts/ci/is-ckeditor5-ready-to-release.js
EXIT_CODE=$( echo $? )
if [ ${EXIT_CODE} -eq 1 ];
then
circleci-agent step halt
fi
- run:
name: Trigger the Uber CI
command: node scripts/ci/trigger-ckeditor5-continuous-integration.js -r ckeditor/ckeditor5 -c $CIRCLE_SHA1 -b $CIRCLE_BRANCH

cke5_trigger_uber_ci:
machine: true
steps:
Expand Down Expand Up @@ -234,6 +259,17 @@ workflows:
branches:
only:
- master
- cke5_trigger_release_process:
requires:
- cke5_tests_framework
- cke5_tests_features
- cke5_validators
- cke5_manual
- release_prepare
filters:
branches:
only:
- release
- notify_ci_failure:
filters:
branches:
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,16 @@ jobs:
repo-token: ${{ secrets.GH_BOT_TOKEN }}
stale-issue-label: status:stale
close-issue-label: resolution:expired
stale-issue-message: "There has been no activity on this issue for the past five years. We've marked it as stale and will close it in 30 days. We understand it may still be relevant, so if you're interested in the solution, leave a comment or reaction under this issue."
stale-pr-message: "There has been no activity on this PR for the past five years. We've marked it as stale and will close it in 30 days. We understand it may still be relevant, so if you're interested in the contribution, leave a comment or reaction under this PR."
close-issue-message: "We've closed your issue due to inactivity over the last five years. We understand that the issue may still be relevant. If so, feel free to open a new one (and link this issue to it)."
close-pr-message: "We've closed your PR due to inactivity over the last five years. While time has passed, the core of your contribution might still be relevant. If you're able, consider opening a similar PR."
days-before-stale: 1825
stale-pr-label: status:stale
close-pr-label: resolution:expired
stale-issue-message: "There has been no activity on this issue for the past year. We've marked it as stale and will close it in 30 days. We understand it may be relevant, so if you're interested in the solution, leave a comment or reaction under this issue."
stale-pr-message: "There has been no activity on this PR for the past year. We've marked it as stale and will close it in 30 days. We understand it may be relevant, so if you're interested in the contribution, leave a comment or reaction under this PR."
close-issue-message: "We've closed your issue due to inactivity over the last year. We understand that the issue may still be relevant. If so, feel free to open a new one (and link this issue to it)."
close-pr-message: "We've closed your PR due to inactivity over the last year. While time has passed, the core of your contribution might still be relevant. If you're able, consider reopening a similar PR."
days-before-stale: 365
days-before-close: 30
exempt-issue-labels: support,domain:accessibility
exempt-pr-labels: support,domain:accessibility
exempt-issue-labels: support:1,support:2,support:3,domain:accessibility
exempt-pr-labels: support:1,support:2,support:3,domain:accessibility
ignore-reactions: false
operations-per-run: 60
ascending: true
operations-per-run: 1000
ascending: true
299 changes: 189 additions & 110 deletions CHANGELOG.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ In your HTML page, add an element that CKEditor should replace:
Load the classic editor build (you can choose between the [CDN](https://cdn.ckeditor.com/#ckeditor5), [npm](https://ckeditor.com/docs/ckeditor5/latest/installation/getting-started/predefined-builds.html#npm), and [zip downloads](https://ckeditor.com/docs/ckeditor5/latest/installation/getting-started/predefined-builds.html#zip-download)):

```html
<script src="https://cdn.ckeditor.com/ckeditor5/39.0.2/classic/ckeditor.js"></script>
<script src="https://cdn.ckeditor.com/ckeditor5/40.0.0/classic/ckeditor.js"></script>
```

Call the [`ClassicEditor.create()`](https://ckeditor.com/docs/ckeditor5/latest/api/module_editor-classic_classiceditor-ClassicEditor.html#static-function-create) method:
Expand Down Expand Up @@ -151,7 +151,7 @@ See the [official contributors' guide](https://ckeditor.com/docs/ckeditor5/lates

### Reporting issues and feature requests

Report issues in [the `ckeditor5` repository](https://github.com/ckeditor/ckeditor5/issues). Read more on the [Getting support](https://ckeditor.com/docs/ckeditor5/latest/support/getting-support.html) guide.
Report issues in [the `ckeditor5` repository](https://github.com/ckeditor/ckeditor5/issues). Read more on the [Getting support](https://ckeditor.com/docs/ckeditor5/latest/support/reporting-issues.html) section of the CKEditor 5 documentation.

## License

Expand Down
3 changes: 2 additions & 1 deletion docs/examples/builds/balloon-block-editor.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ classes: main__content--no-toc
{@link installation/getting-started/predefined-builds#balloon-block-editor Balloon block editor} lets you create your content directly in its target location with the help of two toolbars:

* a balloon toolbar that appears next to the selected editable document element (offering inline content formatting tools),
* a {@link features/blocktoolbar block toolbar} accessible using a button attached to the editable content area and following the selection in the document (bringing additional block formatting tools).
* a {@link features/blocktoolbar block toolbar} accessible using a button (``) attached to the editable content area and following the selection in the document (bringing additional block formatting tools),
* the `` toolbar is also a handle that can be used to drag and drop blocks around the content.

{@snippet examples/balloon-block-editor}

Expand Down
2 changes: 1 addition & 1 deletion docs/features/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Additionally, CKEditor&nbsp;5 offers the {@link features/restricted-editing rest

{@img assets/img/features-collaboration.png 800 CKEditor&nbsp;5 collaboration features.}

You can also easily track the progress and changes done in the content with the {@link features/revision-history revision history feature} {@icon @ckeditor/ckeditor5-revision-history/theme/icons/revision-history.svg Revision history}. This modern and robust document versioning tool lets you create named versions, compare changes, and restore previous document versions at ease, tracking all progress &mdash; also when multiple editors work together.
You can also easily track the progress and changes done in the content with the {@link features/revision-history revision history feature} {@icon @ckeditor/ckeditor5-core/theme/icons/history.svg Revision history}. This modern and robust document versioning tool lets you create named versions, compare changes, and restore previous document versions at ease, tracking all progress &mdash; also when multiple editors work together.

{@img assets/img/features-revision-history.png 800 CKEditor&nbsp;5 document versioning feature.}

Expand Down
2 changes: 2 additions & 0 deletions docs/features/toolbar.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,8 @@ You can use one of the icons listed below for your dropdown:
| `'paragraph'` | {@icon @ckeditor/ckeditor5-core/theme/icons/paragraph.svg Paragraph} |
| `'text'` | {@icon @ckeditor/ckeditor5-core/theme/icons/text.svg Text} |
| `'plus'` | {@icon @ckeditor/ckeditor5-core/theme/icons/plus.svg Plus} |
| `'dragIndicator'` | {@icon @ckeditor/ckeditor5-core/theme/icons/drag-indicator.svg Drag indicator} |
| `'pilcrow'` | {@icon @ckeditor/ckeditor5-core/theme/icons/pilcrow.svg Pilcrow} |

* The default icons are loaded from the `ckeditor5-core` package.
* If no icon is specified, `'threeVerticalDots'` will be used as a default.
Expand Down
2 changes: 1 addition & 1 deletion docs/framework/contributing/development-environment.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ You can find all the official packages listed in the [CKEditor&nbsp;5 repository

In order to start developing CKEditor&nbsp;5 you will require:

* [Node.js](https://nodejs.org/en/) 16.0.0+
* [Node.js](https://nodejs.org/en/) 18.0.0+
* [Git](https://git-scm.com/)

## Setting up the CKEditor development environment
Expand Down
2 changes: 1 addition & 1 deletion docs/framework/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ This guide will show you how to initialize the CKEditor&nbsp;5 rich-text editor

The CKEditor&nbsp;5 Framework consists of several [npm packages](https://npmjs.com). To install it you need:

* [Node.js](https://nodejs.org/en/) 16.0.0+
* [Node.js](https://nodejs.org/en/) 18.0.0+
* npm 5.7.1+ (**note:** some npm 5+ versions were known to cause [problems](https://github.com/npm/npm/issues/16991), especially with deduplicating packages; upgrade npm when in doubt)

Besides Node.js and npm you also need [webpack@5](https://webpack.js.org) with a few additional packages to use the framework. They are needed to bundle the source code. Read more about building CKEditor&nbsp;5 in the {@link installation/advanced/integrating-from-source-webpack Integrating from source} guide.
Expand Down
2 changes: 1 addition & 1 deletion docs/installation/getting-started/quick-start-other.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ Some of the reasons for creating custom builds are:

To start developing CKEditor&nbsp;5 you will require:

* [Node.js](https://nodejs.org/en/) 16.0.0+
* [Node.js](https://nodejs.org/en/) 18.0.0+
* [npm](https://www.npmjs.com) 5.7.1+ (**note:** some npm 5+ versions were known to cause [problems](https://github.com/npm/npm/issues/16991), especially with deduplicating packages; upgrade npm when in doubt)
* [Git](https://git-scm.com/)

Expand Down
2 changes: 1 addition & 1 deletion docs/installation/plugins/installing-plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ CKEditor&nbsp;5 plugins, responsible for various features, are distributed throu

To enrich the CKEditor&nbsp;5 by installing plugins, you will require:

* [Node.js](https://nodejs.org/en/) 16.0.0+
* [Node.js](https://nodejs.org/en/) 18.0.0+
* [npm](https://www.npmjs.com/) 5.7.1+ (**note:** some npm 5+ versions were known to cause [problems](https://github.com/npm/npm/issues/16991), especially with deduplicating packages; upgrade npm when in doubt)

<info-box warning>
Expand Down
1 change: 1 addition & 0 deletions docs/support/license-key-and-activation.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ This article explains how to activate a commercial license of CKEditor&nbsp;5 an
* {@link features/comments Comments}
* {@link features/revision-history Revision history}
* {@link features/pagination Pagination}
* {@link features/ai-assistant AI Assistant}
* The Productivity Pack that includes:
* {@link features/document-outline Document outline}
* {@link features/format-painter Format painter}
Expand Down
1 change: 0 additions & 1 deletion docs/updating/update-to-39.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ category: update-guides
meta-title: Update to version 39.x | CKEditor 5 Documentation
menu-title: Update to v39.x
order: 85
modified_at: 2023-07-31
---

# Update to CKEditor&nbsp;5 v39.x
Expand Down
68 changes: 68 additions & 0 deletions docs/updating/update-to-40.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
category: update-guides
meta-title: Update to version 40.x | CKEditor 5 Documentation
menu-title: Update to v40.x
order: 84
modified_at: 2023-09-26
---

# Update to CKEditor&nbsp;5 v40.x

<info-box>
When updating your CKEditor&nbsp;5 installation, make sure **all the packages are the same version** to avoid errors.

For custom builds, you may try removing the `package-lock.json` or `yarn.lock` files (if applicable) and reinstalling all packages before rebuilding the editor. For best results, make sure you use the most recent package versions.
</info-box>

## Update to CKEditor&nbsp;5 v40.0.0

For the entire list of changes introduced in version 40.0.0, see the [release notes for CKEditor&nbsp;5 v40.0.0](https://github.com/ckeditor/ckeditor5/releases/tag/v40.0.0).

Listed below are the most important changes that require your attention when upgrading to CKEditor&nbsp;5 v40.0.0.

### Changes to the image feature

This release introduces changes connected with the image `width` and `height` attributes. These are now preserved while loading editor content. Images without their size specified will automatically gain natural image size on any interaction with the image within the editor. Due to this new behavior, the `width` and `height` attributes are now used to preserve the image's natural width and height and the model attribute name of a resized image is now changed to `resizedWidth`.

The `srcset` model attribute which provides parameters for responsive images, has been simplified. It is no longer an object `{ data: "...", width: "..." }`, but the value that was previously stored in the `data` part.

Last but not least, content styles have been updated with this release, which means you need to update them in your editor implementation to avoid any discrepancies. Please refer to the {@link installation/advanced/content-styles Content styles} guide to learn how to generate the stylesheet.

### Changes to the comments feature

The comment thread's **resolved** state has been separated from the **unlinked** state (a state, when the related editor content was removed from the document). A thread can now have any combination of these states, so if a comment thread is either **resolved** or **unlinked**, it is moved to the comments archive. This new approach is reflected in the comments archive UI. Notably, an **unlinked** comment thread can become resolved and reopened while still being in the comments archive. Additionally, the **unlinked** comment threads have a gray header color to differentiate them from the **resolved** comment threads.

The `Comment#archivedAt` property is now the property to check when deciding whether the comment thread is inside the comments archive or not (that property was `#resolvedAt` before).

The `CommentsArchive#resolvedThreads` property has been renamed to `#archivedThreads`. If your custom code used that property, make sure to apply this change.

The `deletedAt` property is no longer passed in `AddCommentThreadEvent` as it is not needed anymore. Deleted comment threads should never be added to the repository, so they should not be handled in `addCommentThread`. If your custom code used that property, make sure to apply this change.

In a real-time collaboration environment, removed comment threads will no longer be added to `CommentsRepository` after re-initializing the editor. Before, the comment thread was removed from `CommentsRepository` but was added back when the editor re-connected to Cloud Services. If your custom code expected the old (incorrect) behavior, it might need a change. This change was reflected in the {@link features/comments-outside-editor comments outside the editor} guide.

### New Balloon Block editor icon

We have changed the default {@link features/blocktoolbar Balloon Block editor toolbar} indicator icon from the pilcrow icon (``) to the braille pattern dots icon (``). The new icon better corresponds to the dual function of the indicator, which may be used to both invoke the balloon toolbar and to drag to content block around.

While `` is now a default, the icon can still be configured by the integrator, for example:

```js
blockToolbar: {
items: [
'bold',
'italic',
'link'
],
icon: 'pilcrow' // or SVG.
},
```

### A new default lists plugin coming

We currently maintain two list features: {@link features/lists List} and {@link features/document-lists DocumentList}. The list v1 feature was implemented in the early days of CKEditor 5. It supports “plain lists” &ndash; lists where `<li>` cannot contain block content (paragraphs, headings, tables, block images). It supports to-do lists, but it does not support extending list markup via the {@link features/general-html-support General HTML Support (GHS)} feature.

The list v2 (document list) feature was implemented in 2022 to add support for block content in list items. It supported extending list markup via GHS. It did not, however, support to-do lists. Since then we concentrated on bringing full list v1 functionality to this plugin. We are nearing the end of a long job of pairing these two plugins in their functions. The newest release brings in the to-do list functionality and the {@link features/document-lists#simple-lists simple list configuration setting}.

You can follow the current state of works in the [Document list feature parity](https://github.com/ckeditor/ckeditor5/issues/14632) issue. Considering this progress, the old lists feature will be replaced with the new document lists in one of the upcoming releases and it will be sunset at the beginning of 2024. The change will be seamless for the users, but there are significant changes between these plugins. We will update the information about this process as it unfolds.

See the [#14767](https://github.com/ckeditor/ckeditor5/issues/14767) issue for more details.
Loading

0 comments on commit c29a933

Please sign in to comment.