Plone 6.0.11.1 released

Release notes for Plone 6.0.11.1

This is a "sub" release of 6.0.11 with a fix for wrong character encoding in some parts.
For example in the folder contents view instead of "Add new..." you might see "Add newâ¦".

The plone-backend Docker image is not there yet, but is being prepared.

If you want to jump straight in, here are two important links:

Highlights

Major changes since 6.0.11:

  • plone.app.theming: When calling the html serializer pass an encoding. This is needed because we updated from lxml 4 to 5.

Major changes since 6.0.10.1:

  • mxdev: Fix for Python 3.12 virtual envs.
  • plone.namedfile, plone.formwidget.namedfile and plone.app.z3cform: Support for allowed media types.
    Support to constrain files to specific media types with an "accept" attribute on file and image fields, just like the "accept" attribute of the HTML file input. With this, allowed file types are checked already before uploading, while still also being checked on the server side.
  • plone.app.z3cform: Use label_css_class attribute from widget if available in checkbox_input and radio_input.
  • plone.namedfile: Improve contenttype detection logic for unregistered but common types. Change get_contenttype to support common types which are or were not registered with IANA, like image/webp or audio/midi.
  • plone.app.discussion: Provide HCaptcha if plone.formwidget.hcaptcha is installed.
  • plone.base: Make the TinyMCE help and accordion plugins available as options.
    To really use this, you need an add-on, like collective.outputfilters.tinymceaccordion. But at least the options are available now.
  • plone.base and plone.app.layout: Add a field webstats_head_js to the Site controlpanel and render its contents in the head section using IHtmlHeadLinks viewlet manager. Reason: some javascript needs to be loaded at the bottom of the page, and some in the head section.
  • plone.recipe.zope2instance: Add support for setting max_value_length in Sentry init. When you use this option, you should use sentry-sdk 1.29.0 or higher.
  • plone.restapi: Add available languages information and the site timezone to the @site endpoint.
  • lxml: Upgraded from version 4.9.4 to 5.2.1. This could mean small differences in html. See the changelog. If you get wrong results, maybe because Diazo theming rules are parsed differently, it should be fine to downgrade, but version 4 is not maintained anymore.
  • Products.PortalTransforms: Use Cleaner from new package lxml_html_clean.
    This was factored out from lxml in version 5.2.0. See https://lxml-html-clean.readthedocs.io/

Volto frontend

The default frontend for new Plone 6 sites is Volto. Latest release is 16.31.4. See the changelog.
Note that this is a JavaScript frontend that you need to run in a separate process with NodeJS.

Also, existing Plone sites need some or more extensive changes to be upgraded before they can use the Volto Frontend. Please read the guide on migrating from Plone Classic UI to Volto.

Note that Volto 17 is also available, and you can use it on Plone 6.0, but we will keep recommending Volto 16 by default.

Classic UI

The HTML based and server side rendered UI that was present in Plone 5.2 and earlier major Plone releases is still available and has also been updated and improved upon in Plone 6. Our documentation now refers to this frontend as 'Classic UI'. Support for Classic UI is especially relevant for existing Plone sites which for whatever reason or requirements are not yet ready to be upgraded to the Volto frontend.

Python compatibility

This release supports Python 3.8, 3.9, 3.10, 3.11, and 3.12.

Note that Plone 6.0 is tested on Python 3.8 and 3.11 on every change to core packages. For the other Python versions we run the tests once a week.

pip, buildout, setuptools

In Plone core we use these versions to install Plone:

pip==24.0
setuptools==69.5.1
wheel==0.43.0
zc.buildout==3.0.1

In general you are free to use whatever versions work for you, but these worked for us.

Installation

For installation instructions, see the documentation.

Issues

If you find any issues, please report them in the main issue tracker.

1 Like

@mauritsvanrees
can update the version pin of zope.testrunner >= v6.3 in both releases (6.0, 6.1), please ?

Not easily, but @gforcada is handling that in Bump zope.testrunner by gforcada · Pull Request #927 · plone/buildout.coredev · GitHub.

And after a last minute fix, zope.testrunner=6.4 is on both 6.0 and 6.1 branches :tada:

1 Like

Thanks!