Allows versioning of the Plone Site type for the portal working copy to work #113
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is part of: plone/volto#5284
For the working copy of
plone.app.iterate
to work on thePlone Site
type, it is necessary that this type is versionable. See:https://github.com/plone/plone.app.iterate/blob/1908aa1f4e9c95c37143fae88655469b72ea451a/plone/app/iterate/browser/control.py#L88-L90
This also allows the "Plone Site" type to be cloned.
Products.CMFEditions
uses thepickle
module to clone objects. See:Products.CMFEditions/Products/CMFEditions/ArchivistTool.py
Lines 210 to 229 in c80bc31
These changes prevent the error:
When trying to serialize an
ImplicitAcquisitionWrapper
object with the pickle dump. This error occurred when trying to check in a Plone Site type withplone.app.iterate
.These changes also allow the Plone Site type to be serialized with the pickle. When the
persistent_id
method ofSkipParentPointers
returns something other than None, the object is not serialized. So we need to make sure it returns None for the Plone Site type.