Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update: From ckeditor4 4.17.0 to ckeditor5 42.0.0 (fixes #2772) #2773

Merged
merged 16 commits into from
Nov 5, 2024

Conversation

oliverfoster
Copy link
Member

@oliverfoster oliverfoster commented Jul 9, 2024

fixes #2772

Updated from ckeditor4 4.17.0 to ckeditor5 42.0.0

image

@oliverfoster oliverfoster added the C: Front-end Issues related to the front-end/UI label Jul 9, 2024
@oliverfoster oliverfoster self-assigned this Jul 9, 2024
taylortom
taylortom previously approved these changes Jul 11, 2024
Copy link
Member

@taylortom taylortom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works well for me.

Had a play with removing features, but was more fiddly than expected and not sure it's worth the effort.

@oliverfoster
Copy link
Member Author

oliverfoster commented Jul 11, 2024

Can you retest with the ones I've commented out and then remove them if not necessary please?

This is the list of plugins and what they do, I don't know if any of these features are things which you're expecting to keep in the transition. Especially the image embedding and editing, i just stole them from the standard example of free plugins:

https://ckeditor.com/docs/ckeditor5/latest/api/module_ui_editorui_accessibilityhelp_accessibilityhelp-AccessibilityHelp.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_autoimage-AutoImage.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_ckbox_ckbox-CKBox.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_ckbox_ckboximageedit-CKBoxImageEdit.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_cloud-services_cloudservices-CloudServices.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_heading_heading-Heading.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_horizontal-line_horizontalline-HorizontalLine.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_html-embed_htmlembed-HtmlEmbed.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageblock-ImageBlock.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imagecaption-ImageCaption.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageinline-ImageInline.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageinsert-ImageInsert.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageinsertviaurl-ImageInsertViaUrl.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageresize-ImageResize.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imagestyle-ImageStyle.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imagetextalternative-ImageTextAlternative.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imagetoolbar-ImageToolbar.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_imageupload-ImageUpload.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_link_linkimage-LinkImage.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_media-embed_mediaembed-MediaEmbed.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_image_pictureediting-PictureEditing.html
https://ckeditor.com/docs/ckeditor5/latest/api/module_list_todolist-TodoList.html

@taylortom
Copy link
Member

Well that's stumped me - I got missing plugin errors when I tried that earlier, must've not rebuilt the UI correctly or something.

Have updated.

@oliverfoster
Copy link
Member Author

Looks good now 👍

taylortom
taylortom previously approved these changes Jul 11, 2024
Copy link
Member

@taylortom taylortom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved 🔥

Note to other reviewers: I've also made some very minor changes

@taylortom taylortom added the I: major High priority bugs which don't immediately impact the user label Jul 11, 2024
@canstudios-nicolaw
Copy link
Contributor

@oliverfoster @taylortom Hi both, thanks for these changes

On the CKEditor site, they have a section about upgrading from 4 to 5.

https://ckeditor.com/blog/upgrade-ckeditor-4-to-5/#step-by-step-to-upgrade-your-editor-from-ckeditor-4-to-ckeditor-5

This site mentions the risk of moving data from 4 to 5 and says that "Because CKEditor 5 utilizes an MVC architecture with a custom data model (as compared to CKEditor 4 HTML-oriented architecture), there may be some data incompatibility issues.".

Have you been able to do much testing with course content? Do you have any concerns that upgrading to CKEditor 5 might cause some data loss in existing courses within the AT?

@oliverfoster
Copy link
Member Author

oliverfoster commented Jul 15, 2024

@oliverfoster @taylortom Hi both, thanks for these changes

On the CKEditor site, they have a section about upgrading from 4 to 5.

https://ckeditor.com/blog/upgrade-ckeditor-4-to-5/#step-by-step-to-upgrade-your-editor-from-ckeditor-4-to-ckeditor-5

This site mentions the risk of moving data from 4 to 5 and says that "Because CKEditor 5 utilizes an MVC architecture with a custom data model (as compared to CKEditor 4 HTML-oriented architecture), there may be some data incompatibility issues.".

Have you been able to do much testing with course content? Do you have any concerns that upgrading to CKEditor 5 might cause some data loss in existing courses within the AT?

I think that's part of the paid server-side suite they offer. There's a series of collaboration features which have a server-side component you can license from CKEditor5 https://ckeditor.com/ckeditor-5/features/ . We don't use any of there server side features, only use the text editor code which reads and writes data in the browser from the data we give it. There is no need for migration steps 2-4, as we also don't use external plugins for CKEditor4 or the data services.

@tomgross
Copy link

Any date when this will be merged? Anything I can help to get this out?

@simondate
Copy link
Member

simondate commented Aug 15, 2024

I've been using this version of CK Editor with a client (v5 42.0.0) and they've noticed that by default they can't write classes inline in text as when they press save in the Authoring Tool it doesn't get saved. It's also added _blank to links so they open up in new tabs.

I think by default behaviour should match exactly v4 CKeditor.

@simondate simondate self-requested a review September 11, 2024 14:45
@taylortom
Copy link
Member

Hi all, this one's been a bit quiet recently - are we still happy with updating CKE?

Thanks for the approval @simondate - I'm assuming you've been using this one already

@oliverfoster
Copy link
Member Author

i'm happy if simon is happy

@simondate
Copy link
Member

Yes, please merge it

Copy link
Member

@taylortom taylortom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👀

@taylortom taylortom merged commit 104460c into master Nov 5, 2024
@taylortom taylortom deleted the issue/2772 branch November 5, 2024 16:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: Front-end Issues related to the front-end/UI I: major High priority bugs which don't immediately impact the user
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Major version update required for CKEditor
5 participants