Plone 6.0.0a2

Milestone information

Project:
Plone
Series:
6.0
Version:
6.0.0a2
Released:
 
Registrant:
Maurits van Rees
Release registered:
Active:
Yes. Drivers can target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
No bugs are targeted to this milestone.

Download files for this release

File Description Downloads

Release notes 

# Release notes for Plone 6.0.0 alpha 2

Released: Friday December 3, 2021.

## Highlights

Changes since 6.0.0a1:

- Products.CMFPlone: Replace `z3c.autoinclude` with `plone.autoinclude`. Note: ``includeDependencies`` is no longer supported. See [Plip 3339](https://github.com/plone/Products.CMFPlone/issues/3339).
- Products.CMFPlone: On Zope root, create Volto site by default.
- plone.app.contenttypes: Remove atcontenttypes dependencies and most migration code, and removed backwards compatibility ATContentTypes view name registrations.
- plone.app.layout: Moved most portlet related code to `plone.app.portlets`. Removed long deprecated `getIcon` from layout-policy.
- plone.app.textfield and plone.app.z3cform: Restored ability to enable multiple wysiwyg editors. This change will end up in Plone 5.2.7 as well.
- plone.app.z3cform: Enable formautofocus for Plone forms. Allow disabling it for specific forms with `enable_autofocus = False`.
- plone.dexterity: Removed dependency on `plone.synchronize`, and copy its one and only simple `synchronized` function.
- plone.restapi: Enable table blocks indexing. Return non-batched vocabularies given a query param `b_size=-1`. Add root (INavigationRoot) for the current object information in @translations endpoint. Implement `IJSONSummarySerializerMetadata` allowing addons to extend the metadata returned by Summary serializer. Enable usage of metadata_fields also for POST calls.
- plonetheme.barceloneta: Make loading of webfont optional. Move Barceloneta specific styles out of `base.scss`. Update to Bootstrap 5.1.3.

## Expected

There are some items that we want to include during the alpha phase, but which are not ready yet:

- Updated JavaScript for Plone Classic, using ES6 modules. No more through-the-web compiling of JavaScript. See [PLIP 3211](https://github.com/plone/Products.CMFPlone/issues/3211).
- An updated installation method to more easily combine the node frontend and Python backend. See [community post](https://community.plone.org/t/our-pip-based-development-workflow-for-plone/14562).

## Installation

Some documentation about installation:

- Installation instructions from the Mastering Plone 6 training:
  https://training.plone.org/5/mastering-plone/installation.html
- Volto frontend installation:
  https://docs.voltocms.com/getting-started/install/
- [Community post](https://community.plone.org/t/our-pip-based-development-workflow-for-plone/14562) on work in progress.

If you use Docker, we have some images:

- `plone/plone-backend` (5.2 and 6.0)
- `plone/plone-frontend` (Volto)
- `plone/plone-haproxy`

If you don't do Docker, you will have to do the backend by hand.
The links above should give you information on how to install the prerequisites, like Python, also on Windows.
Here, we will focus on Unix-like systems (Linux, Mac OSX), but Windows should work as well.
The steps are:

* Install the Plone (Classic) backend with buildout or pip.
* Create the Plone Site in the browser.
* Install the Plone frontend (Volto) with node.

## Install backend with buildout

Change to a new directory and put a file `buildout.cfg` in it:

```
[buildout]
extends = https://dist.plone.org/release/6.0-dev/versions.cfg
parts = instance

[instance]
recipe = plone.recipe.zope2instance
eggs =
    Plone
    plone.volto
user = admin:admin
zodb-temporary-storage = off
```

Install it with:

```
python3.9 -m venv .
bin/pip install -r https://dist.plone.org/release/6.0-dev/requirements.txt
bin/buildout
bin/instance fg
```

## Install backend with pip

If you don't want to use buildout, you can install the Plone Python packages with `pip`.
Change to a new directory and then:

```
python3.9 -m venv .
bin/pip install -U pip setuptools wheel
bin/pip install Plone plone.volto -c https://dist.plone.org/release/6.0-dev/constraints.txt --use-deprecated legacy-resolver
bin/mkwsgiinstance -u admin:admin -d .
bin/runwsgi -v etc/zope.ini
```

## Create Plone backend

After you have installed the backend with buildout or pip, open a browser and go to http://localhost:8080/.
Click 'Create a new Plone site' to prepare for the new Volto frontend.
If you want Plone Classic instead, click 'Create Classic Plone site'.
(If this button is not available, then you did not install `plone.volto` with buildout or pip. 'Create a new Plone site' will create a Classic site then.)

Note: For Volto, make sure the Path identifier is Plone. You can change this, but then you need to change some Volto frontend configuration as well.

Submit the form and your backend is ready.
If you want Classic Plone, you are done.
If you want the full Plone 6 with Volto, read on.

## Frontend with node

You should probably read one of documentation pages linked above.
But the following gives you the general idea.

First install nvm, the Node Version Manager

* On Linux: `apt-get install nvm`
* On Mac: `brew install nvm`
* Or use the installation procedure detailed in the [nvm documentation](https://github.com/nvm-sh/nvm)

Create a Volto project:

```
nvm install --lts
npm install --global yarn
npm init yo @plone/volto
```

This will take long, and then ask for a project name.
It will create a directory with this name.
Go to that directory and start the frontend:

```
yarn start
```

In your browser go to http://localhost:3000.

You are done. Welcome to Plone 6!

Changelog 

View the full changelog

collective.recipe.omelette: 1.0.0 → 1.1.0
-----------------------------------------
- Fix 2to3 old setuptools hook [goschtl]

- mordernize to python3 code [goschtl]

- update to new zope.testing [goschtl]

- use pytest and tox [goschtl]

- Note: tested on Python 2.7 and 3.6-3.10.

plone.releaser: 1.8.4 → 1.8.5
-----------------------------
Bug fixes:

- Fix InterpolationMissingOptionError when parsing coredev 6.0 sources.
  [maurits] (#42)

zest.releaser: 6.22.1 → 7.0.0a1
-------------------------------

Plone: 6.0.0a1 → 6.0.0a2
------------------------
Bug fixes:

- Release 6.0.0a2.
  [maurits]

plone.app.caching: 3.0.0a8 → 3.0.0a10
-------------------------------------
New features:

- When purging images also purge the field WITHOUT a size parameter (e.g. ``[...]/@@images/image``).
  [wolbernd] (#89)

Bug fixes:

- Remove translations endpoint test because it does not have the correct fixture
  [sneridagh] (#87)

plone.app.content: 4.0.0a7 → 4.0.0a8
------------------------------------
Bug fixes:

- Adapt the tests to cope with the fact the since Plone 6 the Plone site root is cataloged [ale-rt] (#236)

plone.app.contentlisting: 2.0.4 → 2.0.5
---------------------------------------
Bug fixes:

- Adapt the tests for Plone 6 [ale-rt] (#39)

plone.app.contenttypes: 3.0.0a4 → 3.0.0a5
-----------------------------------------
Breaking changes:

- Remove atcontenttypes dependencies, migration, keep BaseClassMigratorForm.
  [agitator] (#620)

- Remove (ATCT) BBB view name registrations.
  [agitator] (#621)

Bug fixes:

- Adapt the tests to cope with the fact the since Plone 6 the Plone site root is cataloged [ale-rt] (#616)

- Fixed typo in test 'constraints' -> 'constrains'. [iham] (#619) (#619)

- Use document_view as default for dx site root.
  [agitator] (#624)

plone.app.dexterity: 3.0.0a3 → 3.0.0a4
--------------------------------------
Bug fixes:

- Rename "Dexterity Content Types" to just "Content Types"
  [timo] (#331)

- Fix broken test for https://github.com/plone/plone.app.contenttypes/pull/624
  [agitator] (#333)

plone.app.layout: 4.0.0a4 → 4.0.0a5
-----------------------------------
Breaking changes:

- Move most (hard dependency) portlet related to `plone.app.portlets`:
  Dashboard, Portlet related viewlets.
  A first step towards a Portlet-as-an-Addon story.
  [jensens] (#268)

- Remove long deprecated ``getIcon``` from layout-policy. [jensens] (#270)

Bug fixes:

- Fix breadcrumb id.
  [agitator] (#267)

- Micro optimizations at visibility in layoutpolicy [jensens] (#271)

plone.app.locales: 6.0 → 6.0.1
------------------------------
- Rename Dexterity Content Types to Content Types in en and de
  [tisto]

- Complete eu translation.
  [erral]

plone.app.portlets: 5.0.0a6 → 5.0.0a7
-------------------------------------
Breaking changes:

- Move most (hard dependency) portlet related from `plone.app.layout`:
  Dashboard, Portlet related viewlets.
  A first step towards a Portlet-as-an-Addon story.
  [jensens] (#160)

plone.app.textfield: 1.3.5 → 1.3.6
----------------------------------
Bug fixes:

- Fix usage of wysiwyg editor settings from portal_properties to registry
  [duchenean, gotcha] (#45)

plone.app.theming: 5.0.0a3 → 5.0.0a4
------------------------------------
Bug fixes:

- Add missing i18n:translate tags
  [erral] (#204)

plone.app.upgrade: 2.0.41 → 3.0.0a1
-----------------------------------
Breaking changes:

- Removed upgrade steps from Plone 5.1 and lower.
  You can only migrate to Plone 6 from a site that is already Python 3, so Plone 5.2.
  [maurits] (#227)

Bug fixes:

- Index the Plone site root (#264)

- Added upgrade to 6002, Plone 6.0.0a2. [maurits] (#6002)

plone.app.z3cform: 4.0.0a3 → 4.0.0a4
------------------------------------
New features:

- Enable multiple wysiwyg editors (use default editor registry setting) [duchenean, gotcha] (#45)

- Enable formautofocus for Plone forms.
  Allow disabling for specific forms with ``enable_autofocus = False``.
  [jmevissen] (#135)

plone.dexterity: 2.10.4 → 2.10.5
--------------------------------
Bug fixes:

- Incorporate ``plone.synchronize`` its one and only simple ``synchronized`` function into ``plone.dexterity``, which were the only consumer.
  Also moves the test. Removes a dependency and a package to look after.
  [jensens] (#157)

- Avoid setting a default value on methods.
  If a Schema Interface has a method in it, i.e. to be used as a
  constraint for another field, etc. the `default_from_schema` function
  would trip over it while trying to get a default value for it.
  [gforcada, jensens] (#158)

- Fixes schema name generated in Python 2. [wesleybl] (#159)

plone.restapi: 8.12.1 → 8.16.2
------------------------------
New features:

- Enable table blocks indexing [cekk] (#1281)

- Return non-batched vocabularies given a query param ``b_size=-1``
  [sneridagh] (#1264)

- Add root (INavigationRoot) for the current object information in @translations endpoint
  [sneridagh] (#1263)

- Implement IJSONSummarySerializerMetadata allowing addons to extend the metadata returned by Summary serializer.
  [ericof] (#1250)

- Enable usage of metadata_fields also for POST calls [cekk] (#1253)

Bug fixes:

- Revert "Improve support for missing_value and default story" because it breaks multilingual
  [timo] (#1289)

- Improve support and meaning for `default` and `missing_value` in serializers/deserializers
  [sneridagh] (#1282)

- Types service: Do not consider TypeSchemaContext as a valid context
  [ericof] (#1278)

- Improve error status code in vocabularies endpoint refactor
  [sneridagh] (#1284)

- Adjust restrictions of vocabularies endpoint [ksuess] (#1258)

- Fix schema generation when /@types/ is used in a context. [ericof] (#1271)

- Remove all traces of ``Products.CMFQuickInstaller``.
  It was removed in Plone 5.2.
  BBB code was in ``plone.app.upgrade`` only.
  Plone with Restapi broke if ``plone.app.upgrade` was not available, like when dependening on ``Products.CMFPlone`` only.
  [jensens] (#1267)

- Fix installation of JWT PAS plugin with default profile. [jensens] (#1269)

plone.volto: 3.1.0a2 → 3.1.0a6
------------------------------
- Update German translations
  [timo]

- Fix translation files
  [cekk, timo]

- Use plone/setup-plone github action.
  [ericof]

- Initial support and tests using Github Actions for Plone with pip installations.
  [ericof]

- Remove ``jq`` from dependencies and remove old ``blocksremoveserver.py`` script.
  [ericof]

- Remove ``z3c.jbot`` from dependencies
  [ericof]

- Remove ``requests`` from dependencies
  [ericof]

plonetheme.barceloneta: 3.0.0a6 → 3.0.0a8
-----------------------------------------
New features:

- Refactored the scss for the alerts. [klye] (#250)

- Make loading of webfont optional.
  Move Barceloneta specific styles out of base.scss.
  Update to Bootstrap 5.1.3.
  [agitator] (#253)

Bug fixes:

- Remove unused IBarcelonetaLayer.
  [agitator] (#254)

- Add print styles.
  Disable important for utility classes.
  Enable negative margin utility classes.
  [agitator] (#255)

- event listing datecard style
  [petschki] (#252)

Products.CMFPlone: 6.0.0a1 → 6.0.0a2
------------------------------------
Breaking changes:

- PLIP 3339: Replace ``z3c.autoinclude`` with ``plone.autoinclude``.
  Note: ``includeDependencies`` is no longer supported.
  [maurits, tschorr] (#3339)

New features:

- On Zope root, create Volto site by default.
  [maurits] (#3344)

Bug fixes:

- Move prefs_error_log* from skins to browser views
  [jmevissen] (#3241)

- The Plone site root is cataloged (#3314)

- Fix #3323DX-Site-Root: ZMI Nav-Tree is no longer expandable.
  [jensens] (#3323)

- Fixes #3337:
  Remove dead code that wont work in Py 3 anyway if called (cmp).
  [jensens] (#3337)

- Remove DYNAMIC_CONTENT from translation files
  [erral] (#3342)

- Remove adapter for index location. [wesleybl] (#3347)

- Use document_view as default for site root.
  [agitator] (#3354)

- Add missing lxml dependency [MrTango] (#3356)

- Fixes #3352 - dependency indirection on plone.app.iterate [jensens] (#3357)

- In Portal: use security decorators
  [jensens] (#3366)

- Updated metadata version to 6002. [maurits] (#6002)

Products.GenericSetup: 2.1.4 → 2.1.5
------------------------------------
- Fix #114: Problems using ZMI on multi-instance clusters due to instable hash key.
  (`#114 <https://github.com/zopefoundation/Products.GenericSetup/issues/114>`_)

- Move several tabs to Zope 4+ ZMI-markup standard. [jensens]

plone.app.versioningbehavior: 1.4.3 → 1.4.4
-------------------------------------------
Bug fixes:

- Fix tests on Python 2 with newer plone.dexterity using repr for the schema.
  [wesleybl] (#60)

httplib2: 0.19.1 → 0.20.2
-------------------------

tomli: 1.2.1 → 1.2.2
--------------------

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.