Plone 5.1b3 soft-released

Plone 5.1b3 has been soft-released. Please give it a try and let me know if there are any critical issues. http://dist.plone.org/release/5.1b3-pending/versions.cfg

For those who haven't run across soft-releases before, this is the
last step before the final release. Because things haven't been
finalized yet, some packages may change between now and the release. It
is not recommended to use soft-releases in production.

Changelog

mr.developer: 1.35 → 1.36
-------------------------

plone.app.robotframework: 1.0.2 → 1.0.3
---------------------------------------
New features:

- Manage datetime and date field types in "set field value" keyword
  [sgeulette]

- Manage RelationList field using "references" field type in "set field value" keyword
  [sgeulette]


mockup: 2.4.0 → 2.4.1
---------------------
Breaking changes:

- *add item here*

New features:

- *add item here*

Bug fixes:

- Fix i18n in upload pattern.
  [cedricmessiant]

- Do not use relative paths for imports in less files.
  Use the less variables for paths instead.
  Fixes a case, where less files couldn't be found in Plone development mode.
  [thet]

- fix datepicker markup, see plone/Products.CMFPlone#1953 - removes also ugly separator and uses CSS to add space.
  [jensens]

- fix pat-moment: localization of default date display.
  This was american english only, now it uses the configured locale format LLL (see momentjs docs) which is almost the same,
  but works in any language.
  [jensens]

- fix structure pattern: do not use a relative date in structure pattern, editors are complaining and it indeed is bad UX.
  format with date and time in localized format 'L LT'
  [jensens]

- fix structure pattern: if title is empty then show items ID.
  [jensens]


Plone: 5.1b2 → 5.1b3
--------------------
New features:

- Release Plone 5.1b3
  [esteele]


plone.api: 1.6 → 1.6.1
----------------------
Bug fixes:

- Simplify delete and transition functions.
  [adamcheasley]

- Do not reassign dynamic roles as local roles when using user.grant_roles().
  Fixes same issue as #351 for groups.
  [pbauer]

- Include local roles granted from being in a group when using "inherit=False"
  in user.get_roles. Fixes #346
  [pbauer]

- Ignore local roles granted on parents when using "inherit=False" in either
  user.get_roles or group.get_roles. Fixes #354
  [pbauer]

- Fix title wrongly set by ``api.content.create`` when called from GS setup
  handler https://github.com/plone/plone.api/issues/99
  [gotcha, pgrunewald]


plone.app.caching: 1.2.15 → 1.2.17
----------------------------------
Bug fixes:

- Fixed title and description of max age in strong caching rule for resources.
  They wrongly were the same as for shared max age.
  Fixes `issue 1989 <https://github.com/plone/Products.CMFPlone/issues/1989>`_.
  [maurits]

- Fix: Do not break Plone if there is no Archetypes available.
  [jensens]


plone.app.content: 3.3.5 → 3.4
------------------------------
New features:

- Allow for easier overriding of some BaseVocabularyView settings
  [Gagaro]

Bug fixes:

- Adapt tests to the new indexing operations queueing.
  Part of PLIP 1343: https://github.com/plone/Products.CMFPlone/issues/1343
  [gforcada]


plone.app.contentrules: 4.0.13 → 4.0.14
---------------------------------------
Bug fixes:

- Fix issue where content rules edit forms were broken because of move of
  getIcon from @@plone to @@plone_layout
  [datakurre]


plone.app.contenttypes: 1.2.22 → 1.3.0
--------------------------------------
New features:

- Make use of plone.namedfile's tag() function to generate img tags. Part of plip 1483.
  [didrix]

Bug fixes:

- Avoid failure during migration if relation is broken.
  [cedricmessiant]

- Fix import location for Products.ATContentTypes.interfaces.
  [thet]


plone.app.dexterity: 2.4.0 → 2.4.1
----------------------------------
Bug fixes:

- Made exclude_from_nav optional. Fixed #101
  [jaroel]


plone.app.folder: 1.2.2 → 1.2.3
-------------------------------
Bug fixes:

- Fix import location for Products.ATContentTypes.interfaces.
  [thet]


plone.app.iterate: 3.3.1 → 3.3.2
--------------------------------
New features:

- Add each field label for the diff view, fix visual diff link and add break
  [frapell]

Bug fixes:

- Change ``IIterateSettings.checkout_workflow_policy`` to ASCIILine,
  as required by ``Products.CMFWorkflowPolicy``.


plone.app.layout: 2.6.4 → 2.6.5
-------------------------------
Bug fixes:

- Fix tests for social media viewlet.
  [hvelarde]

- Fix import location for Products.ATContentTypes.interfaces.
  [thet]

- Remove redundant Twitter card tags. If og:title, og:description, og:image and
  og:url are defined Twitter will recognise and use those on the card.
  See: `Twitter getting started <https://dev.twitter.com/cards/getting-started>`_ section on
  Twitter Cards and Open Graph. Fixes `issue 119 <https://github.com/plone/plone.app.layout/issues/119>`_.
  [jladage]


plone.app.linkintegrity: 3.2.1 → 3.2.2
--------------------------------------
New features:

- Use plone.namedfile for testing images
  [didrix]

Bug fixes:

- Fix typo in logging method
  [tomgross]


plone.app.multilingual: 5.0.3 → 5.0.4
-------------------------------------
New features:

- Add a new view ``@@tg`` for translatable content. It will return the
  current translation group of the content, matching the bahavior of ``@@uuid``
  of ``plone.app.uuid`` returning UUID of the content.  [datakurre]


plone.app.portlets: 4.2.3 → 4.3.0
---------------------------------
New features:

- Make use of plone.namedfile's tag() function to generate image tags.
  Part of plip 1483.
  [didrix]


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

- Reduce log level of ThemingPolicy cache to 'debug'.
  [jensens]


plone.app.upgrade: 2.0.1 → 2.0.2
--------------------------------
New features:

- Add image scaling options to image handling controlpanel
  when migrating to 5.1b3.
  [didrix]

Bug fixes:

- Update ``twitter_username``, ``facebook_app_id`` and ``facebook_username`` field values as they are now declared as ``ASCIILine`` instead of ``TextLine``.
  [hvelarde]


plone.app.vocabularies: 4.0.1 → 4.0.2
-------------------------------------
Bug fixes:

- plone/Products.CMFPlone#1794: use permissive vocabulary type
  for numeric-indexed weekday and month vocabularies
  to avoid breaking GenericSetup import.
  [seanupton]

- plone/Products.CMFPlone#1268: use permissive vocabulary type
  for ReallyUserFriendlyTypes, to avoid insertion of new types
  in plone.displayed_types (registry) from breaking GenericSetup
  profiles in add-ons.
  [seanupton]


plone.app.z3cform: 2.2.1 → 3.0
------------------------------
Breaking changes:

- Removed ``plone.app.z3cform.object`` and
  ``plone.app.z3cform.objectsubform`` because z3c.form 3.3 removed the
  underlying code.
  See https://github.com/zopefoundation/z3c.form/pull/38 for upstream changes.
  [maurits]

New features:

- Add new class ``view-name-VIEWNAME`` to form element indicating the view name w/o old kss prefix.
  New class's replaces ``++`` in view by ``-`` in order to produce valid class (CSS selectable) names.
  [jensens]

Bug fixes:

- Catch TypeError occuring on conflicting subrequests in inline validation
  [tomgross]

- Clean up: code-style, zca-decorators, replace lambda.
  [jensens]


plone.autoform: 1.7.1 → 1.7.2
-----------------------------
New features:

- Make of tracebacks of ``plone.autoform.widgets.ParameterizedWidget`` calls more verbose in order to ease debugging.
  [jensens]


plone.behavior: 1.1.4 → 1.2.0
-----------------------------
New features:

- For zcml registration:
  If both, no ``for`` and no ``@adapter`` is given,
  fall first back to ``marker`` if given (new),
  else to ``Interface`` (as it was already before).
  [jensens]

Bug fixes:

- Cleanup: Make Jenkins CI code analysis silent by fixing the issues.
  [jensens]


plone.namedfile: 4.1.2 → 4.2.0
------------------------------
New features:

- Add retina image scales using srcset attribute.
  [didrix]


plone.scale: 2.1 → 2.1.1
------------------------
Bug fixes:

- Only convert JPEG to greyscale if they actually are and not when the image
  has less than 256 colors. This bug was introduced in 2.1 with PR #13.
  [fschulze]

- Preserve color profile in scaled images.
  [fschulze]


plone.testing: 4.1.1 → 4.3.0
----------------------------

plonetheme.barceloneta: 1.7 → 1.7.1
-----------------------------------
Bug fixes:

- Added styles for input type number.
  [agitator]


Products.CMFCore: 2.2.10 → 2.2.11
---------------------------------

Products.CMFDiffTool: 3.1.3 → 3.1.4
-----------------------------------
New features:

- When field is a Relation List, get the referenced objects instead of diffing
  on the actual reference objects.
  [frapell]

Bug fixes:

- Fixed AttributeError: 'NoneType' if the object doesn't have the expected attribute [rristow]


Products.CMFEditions: 3.0.1 → 3.1
---------------------------------
New features:

- Use the ``processQueue`` from the merged ``collective.indexing``.  [gforcada]


Products.CMFPlacefulWorkflow: 1.7.2 → 1.7.3
-------------------------------------------
Bug fixes:

- Removed Plone 5.0 installer code from tests.
  Test that multiple installs and uninstalls work.
  See `issue 1959 <https://github.com/plone/Products.CMFPlone/issues/1959>`_.
  [maurits]


Products.CMFPlone: 5.1b2 → 5.1b3
--------------------------------
New features:

- Adapt code and tests to the new indexing operations queueing.
  Part of PLIP 1343: https://github.com/plone/Products.CMFPlone/issues/1343
  [gforcada]

- Make use of plone.namedfile's tag() function to generate img tags. Part of plip 1483.
  [didrix]

- Add retina scales settings in image handling. Part of plip 1483
  [didrix]

Bug fixes:

- Use canonical url instead of absolute url for RSS feed items.
  This code is used for the social viewlet too.
  So default pages are reported with their parent url.
  Fixes `layout issue 118 <https://github.com/plone/plone.app.layout/issues/118>`_.
  [maurits]

- Fix social media schema field types of ``twitter_username``, ``facebook_app_id`` and ``facebook_username`` to be ``ASCIILine`` instead of ``TextLine``.
  [hvelarde]

- Show version of products in Add-ons control panel configlet.
  This fixes https://github.com/plone/Products.CMFPlone/issues/1472.
  [hvelarde]

- Resource registry legacy bundle cooking: Exit early with a warning, if preconditions to build are not given (no compilation paths).
  Allow cooking CSS, even if no JS is defined.
  Log all important steps of the cooking process.
  [thet]

- Remove unused ``plone.css`` from static repository.
  [thet]

- Check for ``AccessInactivePortalContent`` for each path in a catalog query.
  This solves a problem, where Editors couldn't see inactive content, even though they had the required permission on a subpath of the portal (e.g. a subsite).
  [thet]

- Test: Wrong use of assertTrue in testResourceRegistries.
  [jensens]

- Fix issue popped iup after fix of use of assertTrue in testResourceRegistries: insert-before in legacy resource import was broken.
  [jensens]


Products.CMFUid: 2.2.1 → 2.2.2
------------------------------

Products.contentmigration: 2.1.15 → 2.1.16
------------------------------------------
Bug fixes:

- Fix import location for Products.ATContentTypes.interfaces.
  [thet]


Products.GenericSetup: 1.8.6 → 1.8.7
------------------------------------
- Allow registering the same profile twice if it really is the same.
  This is mostly for tests where the registry may not be cleaned up
  correctly in case of problems in test teardown.
  If you register the same profile twice in zcml, you still get a
  conflict from ``zope.configuration`` during Zope startup.
  [maurits]


Products.PortalTransforms: 2.2.2 → 3.0.0
----------------------------------------
Breaking changes:

- Use lxml.html.Cleaner for safe HTML transforms (PLIP 1441)
  [prakharjoshi, tomgross]


archetypes.referencebrowserwidget: 2.5.8 → 2.5.9
------------------------------------------------
Bug fixes:

- Fix import location for Products.ATContentTypes.interfaces.
  [thet]


archetypes.schemaextender: 2.1.6 → 2.1.7
----------------------------------------
Bug fixes:

- Update docs about ``Products.ATContentTypes.interfaces`` import location.
  [thet]

- Fix imports from Globals that was removed in Zope4
  [pbauer]


plone.app.blob: 1.6.7 → 1.7
---------------------------
New features:

- Adapt tests to the new indexing operations queueing.
  Part of PLIP 1343: https://github.com/plone/Products.CMFPlone/issues/1343
  [gforcada]


Products.Archetypes: 1.13.0 → 1.14.0
------------------------------------
Breaking changes:

- Update code to the new indexing operations queueing.
  Part of PLIP 1343: https://github.com/plone/Products.CMFPlone/issues/1343
  [gforcada]


Products.ATContentTypes: 2.3.3 → 2.3.4
--------------------------------------
Bug fixes:

- Adapt tests to the new indexing operations queueing.
  Part of PLIP 1343: https://github.com/plone/Products.CMFPlone/issues/1343
  [gforcada]


plone.app.debugtoolbar: 1.1.1 → 1.1.2
-------------------------------------
Bug fixes:

- Fix imports from Globals that was removed in Zope4
  [pbauer]

- Add coding headers on python files.
  [gforcada]


plone.app.openid: 2.2.1 → 2.2.2
-------------------------------
Bug fixes:

- Removed dependency on unittest2


plone.tiles: 1.8.2 → 2.0.0b2
----------------------------
Breaking changes:

- Tiles no longer add relative ``X-Tile-Url``-header in ``__call__``.
  Tiles still add absolute ``X-Tile-Url``-header during traversal, but
  it gets removed after rendering when request is not CSRF-authorized.
  [datakurre]

- Generic ESI helper check now taht the request is authorized to render
  the tile according to the registered view permission fo the tile.
  [datakurre]

- Transactions of requests to ESI helper views are automatically aborted,
  because ESI requests should always be immutable GET requests
  [datakurre]

- plone.app.theming (transform) is now disabled with X-Theme-Disabled-header
  for requests rendering tiles
  [datakurre]

- plone.protect's ProtectTransform is skipped for tile requests with correct
  CSRF token prevent its side-effects on tile editors rendering tiles
  individually
  [datakurre]

New features:

- Added X-Frame-Options -header for ESI-tile views with matching behavior
  with plone.protect
  [datakurre]

Bug fixes:

- Do not swallow ``AttributeError`` inside ``index()`` on template rendering.
  [hvelarde]

- Fix code analysis errors.
  [gforcada]

- Fix issue where ESI-tile helper views didn't get correct
  Cache-Control-headers, because ESI-helpers views were not acquisition
  wrapped
  [datakurre]
1 Like

I have updated buildout.plonetest according this:

AFAIK, this is a blocker:

It can not be a blocker for 5.1 if the error is on 4.3, and as it is related to archetypes, it really can not be a blocker for 5.x

yes, you're right: I posted in the wrong thread.

Thanks @esteele!

I get the following error in a site with only Products.CMFPlone (NO Plone egg!):

>      Traceback (most recent call last):
>   File "/home/vagrant/www.fhnw.ch/parts/instance1v/bin/interpreter", line 337, in <module>
>     exec(compile(__file__f.read(), __file__, "exec"))
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/run.py", line 76, in <module>
>     run()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/run.py", line 22, in run
>     starter.prepare()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/__init__.py", line 92, in prepare
>     self.startZope()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/__init__.py", line 268, in startZope
>     Zope2.startup()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/__init__.py", line 47, in startup
>     _startup()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/startup.py", line 120, in startup
>     load_zcml()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/startup.py", line 52, in load_zcml
>     load_site()
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/zcml.py", line 46, in load_site
>     _context = xmlconfig.file(site_zcml)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 649, in file
>     include(context, name, package)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
>     processxmlfile(f, context)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
>     parser.parse(src)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 110, in parse
>     xmlreader.IncrementalParser.parse(self, source)
>   File "/usr/lib64/python2.7/xml/sax/xmlreader.py", line 123, in parse
>     self.feed(buffer)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 213, in feed
>     self._parser.Parse(data, isFinal)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 365, in end_element_ns
>     self._cont_handler.endElementNS(pair, None)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
>     self.context.end()
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
>     self.stack.pop().finish()
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
>     actions = self.handler(context, **args)
>   File "/home/vagrant/Eggs/Zope2-2.13.26-py2.7.egg/OFS/metaconfigure.py", line 46, in loadProducts
>     xmlconfig.include(_context, zcml, package=product)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
>     processxmlfile(f, context)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
>     parser.parse(src)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 110, in parse
>     xmlreader.IncrementalParser.parse(self, source)
>   File "/usr/lib64/python2.7/xml/sax/xmlreader.py", line 123, in parse
>     self.feed(buffer)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 213, in feed
>     self._parser.Parse(data, isFinal)
>   File "/usr/lib64/python2.7/xml/sax/expatreader.py", line 365, in end_element_ns
>     self._cont_handler.endElementNS(pair, None)
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
>     self.context.end()
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
>     self.stack.pop().finish()
>   File "/home/vagrant/Eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
>     actions = self.handler(context, **args)
>   File "/home/vagrant/Eggs/z3c.autoinclude-0.3.7-py2.7.egg/z3c/autoinclude/zcml.py", line 101, in includePluginsDirective
>     info = PluginFinder(dotted_name).includableInfo(zcml_to_look_for)
>   File "/home/vagrant/Eggs/z3c.autoinclude-0.3.7-py2.7.egg/z3c/autoinclude/plugin.py", line 18, in includableInfo
>     groups = zcml_to_include(plugin_dottedname, zcml_to_look_for)
>   File "/home/vagrant/Eggs/z3c.autoinclude-0.3.7-py2.7.egg/z3c/autoinclude/plugin.py", line 36, in zcml_to_include
>     filename = resource_filename(dotted_name, zcmlgroup)
>   File "/home/vagrant/Eggs/setuptools-34.3.0-py2.7.egg/pkg_resources/__init__.py", line 1202, in resource_filename
>     return get_provider(package_or_requirement).get_resource_filename(
>   File "/home/vagrant/Eggs/setuptools-34.3.0-py2.7.egg/pkg_resources/__init__.py", line 430, in get_provider
>     __import__(moduleOrReq)
>   File "/home/vagrant/Eggs/plone.app.upgrade-2.0.2-py2.7.egg/plone/app/upgrade/__init__.py", line 111, in <module>
>     from Products.ATContentTypes.tool import metadata
> zope.configuration.xmlconfig.ZopeXMLConfigurationError: File "/home/vagrant/www.fhnw.ch/parts/instance1v/etc/site.zcml", line 12.2-12.39
>     ZopeXMLConfigurationError: File "/home/vagrant/Eggs/Products.CMFPlone-5.1b3-py2.7.egg/Products/CMFPlone/meta.zcml", line 47.4-51.10
>     ImportError: No module named ATContentTypes.tool

I have made a pull request for the ImportError of ATContentTypes.

I've removed the pending tag on 5.1b3.

This does not include the fixes in plone.app.upgrade, but you can pin plone.app.upgrade to 2.0.3 if you need that fix.

Hello Eric!

We were on Plone 5.1b2 before and after upgrading to 5.1b3 we have noticed two problems:

  • The upgrade in the Plone configuration fails because the upgrade step Update social media fields gives an error:

Traceback (innermost last):
Module ZPublisher.Publish, line 138, in publish
Module ZPublisher.mapply, line 77, in mapply
Module ZPublisher.Publish, line 48, in call_object
Module Products.GenericSetup.tool, line 1053, in manage_doUpgrades
Module Products.GenericSetup.upgrade, line 166, in doStep
Module plone.app.upgrade.v51.betas, line 130, in update_social_media_fields
Module plone.registry.recordsproxy, line 60, in setattr
Module plone.registry.registry, line 51, in setitem
Module plone.registry.record, line 82, in _set_value
Module zope.schema._bootstrapfields, line 183, in validate
Module zope.schema._bootstrapfields, line 310, in _validate
Module zope.schema._bootstrapfields, line 210, in _validate
WrongType: ('', <type 'unicode'>, 'value')

Doing the upgrade step Run to51beta3 upgrade profile. ... in ZMI works though.

  • We feel extremely uncomfortable with the changes of searchResults in CatalogTool.py.
    In our setup we have a Plone site at root.
    In that Plone site are some Folders on the next level that are private by design.
    In that private folders live several lineage subsites that are public and accessible through the web.
    This setup has been working fine until now, but now in all portal queries the 'path' key is checked
    and we have lots of errors because our first level folders are private.
    We would be happy, if the old condition

if not show_inactive
and not _checkPermission(AccessInactivePortalContent, self)

could be kept and the new condition
could be used with a flag in the portal query like the show_inactive flag.
Something like

portal_catalog(path={"query": path, "depth": 1},use_new_strict_mode=True)

would fit our needs.

this may be my fault as that was the first contribution I made that needed an upgrade step.

I'll fix it if someone guides me.

Unicode error, maybe (I managed to get it working by running upgrade steps in /portal_setup )

This change was added after the release. Does that cover your second point?

Yes, that does the trick! :grinning: