Plone 4.3.3 released

"Announcement of Plone releases and security-related notifications. Recommended subscription for all Plone developers and site admins." <[email protected]> Mon, 28 Apr 2014 07:55:37 -0400
Newsgroups gmane.comp.web.zope.plone.announce
Message-ID <[email protected]>
--===============3107815458263427300==
Content-Type: multipart/alternative;
	boundary="=_MailMate_FAADCC61-0900-4635-AF17-3D102FCE19FC_="
Content-Transfer-Encoding: 7bit


--=_MailMate_FAADCC61-0900-4635-AF17-3D102FCE19FC_=
Content-Type: text/plain; charset=utf-8; format=flowed; markup=markdown
Content-Transfer-Encoding: quoted-printable

Plone 4.3.3 has been released. Unified, OS X, and Vagrant/Virtualbox=20
installers are available at=20
http://plone.org/products/plone/releases/4.3.3

Full Changelog
--------------


plone.recipe.alltests: 1.2 =E2=86=92 1.4
--------------------------------
- Flush stdout after printing status before and after running tests.

- Added ``exclude-groups`` and ``include-groups`` so entire package=20
groups
   can be easily included or excluded from the test run.

- Added the ``default-policy`` setting which makes it possible to=20
exclude
   packages by default, unless explicitly listed in ``include``.

- Make it possible to run a single test group by specifying the --group=3D=
=20
option.
   This can aid with debugging test isolation problems.
   [davisagli]

plone.recipe.zope2instance: 4.2.13 =E2=86=92 4.2.14
-------------------------------------------
- Link to zope.conf is now relativitize if option relative-paths is=20
true.
   [bsuttor]
- Added ability to set ``initialization`` to configure Python
   code to run on instance start up.
   [davidjb]
- added support for http-header-max-length
   [alecghica]

robotframework-ride: 1.1 =E2=86=92 1.3
------------------------------

robotframework-selenium2library: 1.2 =E2=86=92 1.4
------------------------------------------

selenium: 2.34 =E2=86=92 2.37.2
-----------------------

Pillow: 1.7.8 =E2=86=92 2.3
-------------------

Plone: 4.3.2 =E2=86=92 4.3.3
--------------------
- Release Plone 4.3.3
   [esteele]

Products.ATContentTypes: 2.1.13 =E2=86=92 2.1.14
----------------------------------------
- Update ICONMAP (.gif to .png).
   [mathias.leimgruber]

Products.Archetypes: 1.9.4 =E2=86=92 1.9.7
----------------------------------
- Set logging level to DEBUG for warnings regarding new fields=20
initialized on
   an existing object. INFO level can seriously spam the logs of a busy=20
portal.
   [olimpiurob]

- Fix issue #13833 (https://dev.plone.org/ticket/13833) by logging a=20
warning
   instead of throwing an un catched error when calling=20
reindexObjectSecurity
   on an object that has cataloged other objects which are deleted
   [ichim-david]

- Internationalized file size and content type on file and image=20
widgets.
   [thomasdesvenain]

- Make sure @@at_utils.translate method always returns a string (empty=20
or
   not) even when the passed value is an empty tuple (before, the=20
returned
   value was an empty tuple or a non empty string).
   [gbastien]

- Do not add warning about new field initialized on an existing object=20
in
   the transaction description, show this as a Zope log info message.
   [gbastien]

- ``Vocabulary`` method was not working with ``vocabulary_factory``
   and int values (IntDisplayList is required)
   [keul]

- Return original error during validation when a field already has an
   error. This avoids ``TypeError: 'bool' object has no attribute
   '__getitem__'`` in ``Products.CMFFormController.ControllerState.``
   [maurits]

- Various vocabulary fixes, mostly for translations and
   IntDisplayLists.
   [maurits]

Products.CMFCalendar: 2.2.2 =E2=86=92 2.2.3
-----------------------------------

Products.CMFDefault: 2.2.3 =E2=86=92 2.2.4
----------------------------------

Products.CMFEditions: 2.2.8 =E2=86=92 2.2.9
-----------------------------------
- Use search_icon.png instead of search_icon.gif in=20
version_image_view.pt.
   The page crashed because search_icon.gif couldn't be found.
   [vincentfretin]

- Do not depend on the ``jq`` variable in the history view.
   [maurits]

Products.CMFPlacefulWorkflow: 1.5.9 =E2=86=92 1.5.10
--------------------------------------------
- Move dependency on Products.PloneTestCase to test extra and thus=20
removing
   implicit hard dependency on Products.ATContentTypes.
   [thet]

- Fix policy_form test failures for Plone 5.
   [timo]

Products.CMFPlone: 4.3.2 =E2=86=92 4.3.3
--------------------------------
- Fix incorrect use of dict get method in CatalogTool.search, introduced=20
by
   PloneHotfix20131210 (issue 195)
   [fulv]

- Change default permission for sendto_form to Authenticated instead of
   Anonymous
   [vangheem]

- merge hotfixes from=20
https://pypi.python.org/pypi/Products.PloneHotfix20131210
   [vangheem]

- handle plone.app.textfield RichTextValue objects in syndication.=20
Should
   fix syndication with plone.app.contenttypes.
   [vangheem]

- FolderFeed adapter now takes into account the limit property when=20
displaying
   the RSS feed just like the other adapters do
   [ichim-david]

- Fix handling of URL fragments in form_tabbing.js.
   [davisagli]

- Password reset emails will now be sent from the navigation root=20
instead
   the portal, enabling support for multilingual sites and other=20
subsites
   to keep the correct language, title, menus and designs.
   [regebro]

- Fix issue where a user could delete unintended object through
   acquisition magic. See https://dev.plone.org/ticket/13603.
   [gotcha]

- Added a method toLocalizedSize to @@plone view,
   on the model of toLocalizedTime,
   to get a localized string rendering a size from an integer.
   Use it on image view.
   [thomasdesvenain]

- Remove plone_deprecated/sitemap.pt to avoid sitemap traceback because=20
we
   don't have a @@sitemap_view view anymore when you enable back
   the plone_deprecated skin layer.
   [vincentfretin]

- Inline validation JavaScript for z3c.form only sends request when
   field name can be obtained from DOM for a widget (#13741).
   [seanupton]

- Fix problem generating feeds including Dexterity items with no primary=20
field.
   [bloodbare]

- recently_modified and recently_published respects allow anonymous to=20
view
   about setting
   [vangheem]

- Return a 404 instead of "AttributeError: (dynamic view)" if a user=20
attempts to
   view a still-temporary PortalFactory item.
   [esteele]

- Ensure that initial_login is set to True when a user first logs in.
   [taito]

- No longer set news, events and member folder to be unordered
   [vangheem]

- Fix calendar ajax next and prev buttons
   [vangheem]

- Ensure ``object_rename`` script has ``_`` message factory available
   to prevent error when unauthorized.
   [davidjb]

- Fix issue with the search js in sharing page where the user needed to=20
check
   twice a checkbox to assign a role after a search.
   [vincentfretin]

- Catch missing userid on mail_password form, and treat is as
   an empty userid. That way the user gets a helpful message.
   [do3cc]

Products.contentmigration: 2.1.5 =E2=86=92 2.1.7
----------------------------------------
- Nothing changed yet.

- Unlock items with webdav.
   [maurits]

Products.PasswordResetTool: 2.0.15 =E2=86=92 2.0.16
-------------------------------------------
- Password reset emails will now be sent from the navigation root=20
instead
   the portal, enabling support for multilingual sites and other=20
subsites
   to keep the correct language, title, menus and designs.
   [regebro]

Products.PlonePAS: 4.1.1 =E2=86=92 4.1.3
--------------------------------
- Remove backwards-incompatible changes meant for Plone 5.
   [esteele]

- Don't try to migrate the root user folder if the portal has no parent.
   [davisagli]

- Use correct method to get user from id at gruf_support.
   [tomgross]

Products.PloneTestCase: 0.9.17 =E2=86=92 0.9.18
---------------------------------------
- Adjust conditionals for Plone 5 instead of 4.4.
   [davisagli]

Products.PortalTransforms: 2.1.2 =E2=86=92 2.1.3
----------------------------------------

Products.ResourceRegistries: 2.2.9 =E2=86=92 2.2.10
-------------------------------------------

Products.TinyMCE: 1.3.5 =E2=86=92 1.3.6
-------------------------------
- Reapplied fix for missing popups when zoom is applied in Chrome from=20
pull
   request 29. Credits go to bosim, raekjaer and jaroel for fix
   (close `#13013`__)
   [ichim-david]

- Pay attention to safe html filter being disabled for tinymce=20
configuration
   [vangheem]

- Fix selector used for finding anchors
   [vangheem]

- Fixed uploading dexterity file via TinyMCE file uploader.
   [kroman0]

- Updated media plugin; added styling to placeholder generated by media
   plugin.
   [tiberiuichim]

- French translations.
   [thomasdesvenain]

- Do not load styles with conditional comments if the user agent doesn't
   contain Trident when computin getStyle, otherwise we load IE styles=20
on non
   IE browsers
   [ichim-david]

- Require ``plone.app.layout=3D=3D2.3.7`` which includes bodyClass fix.
   [saily]

- Valid HTML 5 attribute ``start`` for ``ol`` no more removed
   (close `#13566`__)
   [keul]

archetypes.querywidget: 1.0.9 =E2=86=92 1.0.10
--------------------------------------
- ``QueryBuilder`` instance is now obtained using ZCA, so other add-ons
   will be able to customize it
   [keul, cekk]

archetypes.referencebrowserwidget: 2.4.19 =E2=86=92 2.4.20
--------------------------------------------------
- Filter out references that are None. This may happen when the
   reference_catalog has links from a source to a no longer existing
   target.
   [maurits]

archetypes.schemaextender: 2.1.2 =E2=86=92 2.1.3
----------------------------------------
- Fix tests [kiorky]

collective.z3cform.datetimewidget: 1.2.5 =E2=86=92 1.2.6
------------------------------------------------
- Determine whether to show am/pm based on the current locale's time=20
format.
   [davisagli]

diazo: 1.0.4 =E2=86=92 1.0.5
--------------------
- Escape curly brackets on theme attributes.
   [TracyWebTech]

plone.app.blob: 1.5.8 =E2=86=92 1.5.9
-----------------------------
- Make sure mimetype is not None and use use filename for detection if=20
available.
   [tschanzt]

plone.app.caching: 1.1.6 =E2=86=92 1.1.8
--------------------------------
- #13848 Update installation instructions to reflect fact it has shipped=20
with
   Plone since version 4.1
   [anthonygerrard]

- Make it possible to set a maxage of zero in strong caching. This is
   an edge case since this would ordinarily be handled by moderate=20
caching.
   [smcmahon]

- Add some testing for weak caching operations.
   [smcmahon]

- Fix handling of anon-only flag for cases where maxage is not zero. It
   was effectively ignored. Added operation test for strong caching.
   [smcmahon]

plone.app.content: 2.1.3 =E2=86=92 2.1.4
--------------------------------
- Fix constrainttypes form.
   [davisagli]

- Protect the folder constraintypes form with the 'Modify constrain=20
types'
   permission.
   [davisagli]

- Fix tests for Plone 5 where the PLONE_FIXTURE layer does not provide
   content types any longer.
   [timo]

plone.app.contentmenu: 2.0.8 =E2=86=92 2.0.10
-------------------------------------
- Nothing changed yet.

- Don't break if there's no portal_actionicons tool.
   [davisagli]

- Ported tests to plone.app.testing
   [tomgross]

plone.app.contentrules: 3.0.4 =E2=86=92 3.0.6
-------------------------------------
- Make sure CHANGES.rst is included in distributions.
   [esteele]

- Fixed 3.0.4 regression: add/move/remove events where not handled
   anymore on discussion items.
   [thomasdesvenain]

- Fixed reordering of actions / conditions.
   This occured when 'jq' was not defined as 'jQuery'.
   [thomasdesvenain]

- User that manage a rule can now allow actions executed by this rule
   to recursively trigger other rules.
   For example, if you have a rule that automatically publish added=20
content,
   and an other rule that sends an email when a content is published,
   if autopublish rule is marked as 'cascading', then send mail rule=20
will be triggered.
   [thomasdesvenain]

- Mail action: if string interpolation of recipient gives several times
   the same email address,
   the email is sent only once to this recipient.
   [thomasdesvenain]

- Workaround ``KeyError: context`` for unicode TALES expressions in=20
content
   rules by providing the expression ``context``. This was triggered by=20
a
   TALES expression such as ``u'string:${portal_url}``.
   [davidjb]

plone.app.controlpanel: 2.3.7 =E2=86=92 2.3.8
-------------------------------------
- Fix test email: msgid was sent, not translation.
   [thomasdesvenain]

- Fix syndication settings to not write on read.
   [vangheem]

plone.app.dexterity: 2.0.9 =E2=86=92 2.0.11
-----------------------------------
- Fixed Add view URL of cloned content type.
   Refs http://dev.plone.org/ticket/13776.
   [thomasdesvenain]

- Add robot testing environment and first robot test.
   [cedricmessiant]

- Better string normalization when setting type id from type title
   (change accented or special characters with corresponding letters).
   [cedricmessiant]

- Show a warning when editing the default page of a folder.
   [davisagli]

- Fix determination of allowed types so it checks permission in
   the context of the original folder when inheriting allowed
   types.
   [davisagli]

plone.app.discussion: 2.2.8 =E2=86=92 2.2.12
------------------------------------
- Show author email to Moderator when it is available in anonymous=20
comment.
   [gotcha, smoussiaux]

- Put defaultUser.png instead of old defaultUser.gif
   [bsuttor]

- Update basque translation [Mikel Larreateg]

- Fix ownership of comments. [toutpt]

- Revert "Refactor tests to use the PLONE_APP_CONTENTTYPES_FIXTURE=20
instead of the PLONE_FIXTURE." that has been accidentially introduced=20
into the 2.2.9 release.
   [timo]

- Portuguese translation added.
   [Rui Silva]

- Rename CHANGES.txt to CHANGES.rst.
   [timo]

- Fix ajax form submit for delete comment action: add 'data' to the=20
request.
   [toutpt]

plone.app.folder: 1.0.5 =E2=86=92 1.0.6
-------------------------------
- Fix test for Plone 4, so we really only apply the reindexOnReorder
   patch when we are on Plone 3.
   [maurits]

plone.app.form: 2.2.3 =E2=86=92 2.2.4
-----------------------------
- Fixed ValueError in DateComponents.result() with a date before 1900.
   [bsuttor]

plone.app.imaging: 1.0.9 =E2=86=92 1.0.10
---------------------------------
- Generate Progressive JPEG.
   [kroman0]

plone.app.iterate: 2.1.10 =E2=86=92 2.1.12
----------------------------------
- Information messages can be hidden from user who checked out content=20
when
   using a placeful workflow, see: https://dev.plone.org/ticket/13852
   [anthonygerrard]

- Replaced the "Locked" label with "Warning"
   [rristow]

- Nothing changed yet.

plone.app.jquerytools: 1.5.6 =E2=86=92 1.5.7
------------------------------------
- Fix a test isolation issue.
   [davisagli]

- Install plone.app.jquerytools.js after plone_javasscript_variables.js
   in new instances.
   [bloodbare]

plone.app.layout: 2.3.7 =E2=86=92 2.3.11
--------------------------------
- Update package dependencies and clearly specify this branch is for
   Plone 4.3 only.
   [hvelarde]

- Fix 'plone.belowcontentbody.relateditems' viewlet to avoid trying to=20
display
   items if the user has no permission to view them (like content in=20
Private
   state).
   [hvelarde]

- modified sections.pt for adding link target.
   Fixed that portal_actions: 'Link Target' on
   portal_actions/portal_tabs doesn't work.
   [terapyon]

- Add plone.app.relationfield to test dependencies,
   needed to test dexterity support. [jpgimenez]

- Removed hard dependency on plone.app.relationfield. [pabo,=20
marcosfromero]

- Fix 'table of contents' for Dexterity types.
   [pabo, pbauer, timo]

- Use safe_unicode to decode the title of the object when retrieving the
   rss links from the RSSViewlet
   [ichim-david]

plone.app.linkintegrity: 1.5.3 =E2=86=92 1.5.4
--------------------------------------
- Added support for sub path after uid of resolveuid
   [hoka]

plone.app.locales: 4.3.2 =E2=86=92 4.3.3
--------------------------------
- All danish translations are now in UTF-8
   [bosim]

- Updated Romanian translation.
   [ichim-david]

- Update Traditional Chinese translation.
   [marr]

- Added messages for mimetypes.
   French translation.
   [thomasdesvenain]

- Updated Chinese Simplified translation
   [Jian Aijun]

- Updated Spanish translation for plone.app.ldap addon
   [macagua]

- Added Spanish translation for plone.app.caching addon
   [macagua]

- Slovak translation updates
   [rlacko]

- Added Spanish translation for plone.app.ldap addon
   [Talueses]

plone.app.portlets: 2.4.5 =E2=86=92 2.4.8
---------------------------------
- Fixed navigation portlet when navigation root was None.
   [thomasdesvenain]

- Fix navigation root of portlets when root field is unicode.
   This is the case when portlet is imported with generic setup.
   [thomasdesvenain]

- Don't show the ``New user?`` link in the Login portlet if there isn't
   a register URL available from portal_actions.
   [davidjb]

- Use relative links for calender next and prev buttons since caching=20
can
   cause these things to change the current page the user is viewing
   [vangheem]

- Fix the removing of Group- and Typeportlets
   https://dev.plone.org/ticket/13659
   [pbauer]

plone.app.querystring: 1.0.8 =E2=86=92 1.1.1
------------------------------------
- fixed broken handling of limit and batch size.
   [bosim]

- pep8 fixes
   [bosim]

- be able to include a depth value onto path query string
   [vangheem]

- Use plone.batching.
   [khink]

plone.app.search: 1.1.5 =E2=86=92 1.1.7
-------------------------------
- (back port) URL bar is not correctly updated after clicking
   pagination or updating search. Fixing regression introduced in 1.1.5
   [anthonygerrard]

- When the request has no valid form keys but the query does, it is
   still valid.
   [maurits]

plone.app.testing: 4.2.2 =E2=86=92 4.2.4
--------------------------------
- Add 'ROBOT_TEST_LEVEL' to interfaces, so other packages can import it.=20
This
   makes things easier if we decide to change the value.
   [timo]

- Sync bbb PloneTestCase class with original one but don't install
   ATContentTypes profile
   [tomgross]

- Fire an event notification to ensure setup of browser and skin layers
   Fixes https://dev.plone.org/ticket/11673
   [do3cc]

plone.app.textfield: 1.2.2 =E2=86=92 1.2.3
----------------------------------
- Do not give an error when the raw value is None. Give an empty
   unicode string as output in that case.
   [maurits]

plone.app.upgrade: 1.3.4 =E2=86=92 1.3.6
--------------------------------
- Migrate theme settings, install Barceloneta.
   [davisagli]

- Migrate Members folder default view
   [davisagli]

- Be sure the improved syndication settings introduced in the 4.3 series
   are applied on upgrade.
   [gbastien]

- Avoid failure at lexicon upgrade (4.3rc1)
   when we have an integrity error into the ZCTextIndex.
   [thomasdesvenain]

- Install plone.app.event and remove portal_calendar when upgarding to=20
Plone 5.
   [davisagli]

- Remove portal_interface when upgrading to Plone 5.
   [ale-rt]

- Remove portal_actionicons, portal_discussion, and portal_undo when
   upgrading to Plone 5.
   [davisagli]

- Add condition to the upgrade step to add scaling-quality 4.3-final.
   plone.app.imaging no longer has the imaging_properties (moved to=20
CMFPlone)
   so they are not there in plone5-tests.
   [pbauer]

- Add conditional install of plonetheme.classic in upgrade step 4.0a1.=20
Since
   plonetheme.classic will be removed in Plone 5, we can not be sure=20
that it
   is always installed.
   [timo]

- Replace deprecated test assert statements.
   [timo]

- Add undeclared Products.TinyMCE dependency.
   [timo]

- Add use_uuid_as_userid site property in Plone 5.
   Part of PLIP 13419.
   [maurits]

- Use lowercase for email login in Plone 5.
   Part of PLIP 13419.
   [maurits]

- Remove persistent kss_mimetype import step.
   [maurits]

- Fix name of Plone 5 zcml conditional feature to plone-5.
   [thet]

- Don't fail on out of date catalog when upgrading syndication for 4.3
   [tomgross]

- Add Default Plone Password Policy to Plone's acl_users.
   [gbastien]

plone.app.users: 1.2a2 =E2=86=92 1.2
----------------------------
- Fixed i18n of new_password field in change-password view.
   [vincentfretin]

- Fix email as login validation in the personalize form (UserDataPanel).
   This is for the case when email is used as login. It checked that a
   changed email address was valid as user id. But the user id is
   never changed here, only the login name. We only need to check if
   this address is not used by another user.
   [maurits]

- Fix to not break if passwords contain non-ASCII characters.
   This closes https://dev.plone.org/ticket/13114
   [davisagli]

- Be consistent in using INavigationRoot. (Backport from 1.1.4)
   [do3cc]

plone.app.uuid: 1.0 =E2=86=92 1.1
-------------------------
- Make the test setup independent from basic content types in the
   PLONE_FIXTURE.
   [timo]

plone.app.viewletmanager: 2.0.4 =E2=86=92 2.0.5
---------------------------------------
- Do not catch conflict errors and keywordinterrupt in viewlet manager.
   We can programmatically setup the exceptions that are not caught.
   [thomasdesvenain]

- If render fails, be more verbose about the exception to know where and=20
how it
   happens in the stack. [kiorky]
- refactor JS in template [petschki]

plone.app.vocabularies: 2.1.11 =E2=86=92 2.1.14
---------------------------------------
- Add actions vocabulary.
   [giacomos]

-
- provide proper contains method for catalog results
   [vangheem]

- fallback to getSite for grabbing portal_catalog
   [vangheem]

- catalog vocabulary query could be None
   [garbas]

- getTerm and getTermByToken were not really checking if item is in the
   vocabulary list
   [garbas]

- use sort_on and sort_order in catalog vocabulary
   [vangheem]

plone.app.workflow: 2.1.6 =E2=86=92 2.1.7
---------------------------------
- Show user's login name instead of the user id, which is an internal
   identifier.
   [davisagli]

plone.app.z3cform: 0.7.4 =E2=86=92 0.7.6
--------------------------------
- Translate fieldset labels correctly.
   [maurits]

- We can add enable_unload_protection =3D False on a Form to disable=20
unload protection.
   [thomasdesvenain]

- Add '.empty' css class to fields that have no value.
   [cedricmessiant]

- Indicate 'error' status when reporting errors from group forms.
   [davisagli]

- Replace deprecated test assert statements.
   [timo]

- Solve #13567: InlineValidation broken for MultiWidget.
   [sunew]

- Fix an issue with the inline validator, KSS was giving values for
   fieldset attr than can't be converted to an integer.
   [jpgimenez]
- Inline validation supports fieldset names instead of integer-indexed=20
naming.
   [seanupton]
- Use group __name__, not label value to have stable fieldset_name used=20
in
   DOM id, and for inline validation.
   [seanupton]
- Inline validation robustness if no field name is passed by client=20
request.
   [seanupton]
- Support for IDict in the MultiWidget. Makes it compatible with=20
z3c.form 3.0 (released 2013-06-24)
   [djay]
- Give fieldset legends ids based on their name, for compatibility with
   Archetypes.
   [davisagli]
- Fixed chechbox inline validation.
   [kroman0]

plone.autoform: 1.5 =E2=86=92 1.6
-------------------------
- Replace deprecated test assert statements.
   [timo]

- Support anonymous schema (dynamic interfaces with and empty
   __name__ attribute) in autoGroups, opting to use prefix as
   group name for such cases. This allows subclasses of
   AutoExtensibleForm to implement getPrefix() method as
   a sufficient condition to support an unnamed schema.
   [seanupton]

plone.batching: 1.0 =E2=86=92 1.0.1
---------------------------
- Fix issue with sequences when the reported length was different
   than len() iteration would return the full unbatched sequence.
   [alecm]

plone.browserlayer: 2.1.2 =E2=86=92 2.1.3
---------------------------------
- Fix tests with diazo.
   [davisagli]

plone.cachepurging: 1.0.4 =E2=86=92 1.0.5
---------------------------------
- Replace deprecated test assert statements.
   [timo]

plone.contentrules: 2.0.3 =E2=86=92 2.0.4
---------------------------------
- If a rule is 'cascading', actions executed by this rule
   can recursively trigger other rules.
   [thomasdesvenain]

plone.dexterity: 2.1.3 =E2=86=92 2.2.1
------------------------------
- Also check behavior-fields for IPrimaryField since=20
plone.app.contenttypes
   uses fields provided by behaviors as primary fields
   [pbauer]

- utils.createContent honors behaviors [toutpt]

- Date index method works even if source field is a dexterity field
   wich provides a datetime python value.
   Now you can manually add a field with the name of a common Plone=20
metadata field
   (as effective_date, publication_date, etc.)
   [tdesvenain]

- Replace deprecated test assert statements.
   [timo]

- Put a marker interface on the default edit view so viewlets
   can be registered for it.
   [davisagli]

- Ensure FTI's isConstructionAllowed method returns a boolean.
   [danjacka]

- Hide the Dublin Core tab and show the Properties tab for
   items when viewed in the ZMI.
   [davisagli]

- Avoid storing dublin core metadata on new instances unless it
   differs from the default values.
   [davisagli]

- Implement CMF's dublin core interfaces inline rather than
   depending on CMFDefault.
   [davisagli]

- Support GenericSetup structure import/export of Dexterity content.
   Content is serialized the same way as for WebDAV,
   using plone.rfc822. Not all field types are supported yet,
   but this at least gets the basics in place.

   GS import used to work by accident in a basic way for Dexterity
   containers. If you were using this, you'll need to recreate your
   exported files with the rfc822 serialization.
   [davisagli]

- Creator accessor should return encoded strings
   If your catalog was broken, try to clear & reindex Creator::

     cat.clearIndex('Creator')
     cat.manage_reindexIndex(['Creator'])

   [kiorky]

- Use the same message string for the default fieldset as Archetypes=20
does.
   [davisagli]

plone.folder: 1.0.4 =E2=86=92 1.0.5
---------------------------
- Allow reversing the current order, without specifying a key for
   sorting.
   [maurits]

- Allow ordering by a method instead of an attribute.
   [maurits]

plone.formwidget.namedfile: 1.0.7 =E2=86=92 1.0.9
-----------------------------------------
- Fix fr translation for "Remove image".

- The _mimetype property in NamedFileWidget would fail on attempting
   to render after a validation failure when it tried to lookup a
   mimetype with the wrong method. Result was a malformed mimetype
   exception. Fixes #13798.
   [smcmahon]

- Display icon and content type name on widget.
   [thomasdesvenain]

- Internationalized size on file and image widget.
   [thomasdesvenain]

plone.namedfile: 2.0.2 =E2=86=92 2.0.5
------------------------------

plone.openid: 2.0.1 =E2=86=92 2.0.2
---------------------------
- Replace deprecated test assert statements.
   [timo]

- Use system random when available. This is part of the fix for
   https://plone.org/products/plone/security/advisories/20121106/24
   [davisagli]

- Fixed extractCredentials to strip whitespaces around=20
__ac_identity_url.
   This fixes http://dev.plone.org/plone/ticket/11044
   [datakurre]

plone.outputfilters: 1.11.1 =E2=86=92 1.12
----------------------------------
- Nothing changed yet.

plone.scale: 1.3.2 =E2=86=92 1.3.3
--------------------------

plone.schemaeditor: 1.3.3 =E2=86=92 1.3.7
---------------------------------
- Fix packaging error.
   [esteele]

- Use a different id for field edit form and listing form, to ease
   reuse of overlay behaviours.
   [thomasdesvenain]

- Fix French translation.
   [thomasdesvenain]

- Don't depend on popupform.js
   [davisagli]

- Add an "editable" method to IFieldFactory that may be used to=20
determine
   if a particular field is editable. Rationale: fields customized via=20
XML
   editing are sometimes not going to be editable via schemaeditor due=20
to
   an inability to handle custom vocabularies or sources. The field=20
factory
   utility is a very convenient place to test this since it's already
   used to determine available fields and their addability.

   editable(fieldInstance) returns True in the base class. Override it=20
for
   custom behavior in a subclass.
   [smcmahon]

- Add an "available" method to IFieldFactory that may be used to=20
determine
   if a field factory is actually available in the current context. This=20
always
   returns True in the base class. Override it if a field factory isn't=20
useful
   unless conditions are met. Example: we can't use a field factory for
   RelationChoice unless the relationfield is activated in the Plone
   instance.
   [smcmahon]

- Fixed: on a multi selection field with a vocabulary name,
   when the field had been generated from a model,
   the vocabulary name was not selected on edit form.
   [thomasdesvenain]

- Fixed drag and drop fields in fieldsets when form tabbing is disabled:
   we can drop a field into the fieldset legend (for example, when the=20
fieldset is empty),
   or directly positioning it beside fields of the new fieldset.
   [thomasdesvenain]

- i18n fixes.
   [thomasdesvenain]

- Better string normalization when setting field id from field title
   (change accented or special characters with corresponding letters).
   [cedricmessiant]

- Added robot tests.
   [davisp, cedricmessiant, thomasdesvenain at toulouse-sprint]

- We can select a vocabulary factory on a choice field,
   among all registered vocabularies.
   We don't have an error anymore
   when we edit a choice field with a vocabulary factory.
   [thomasdesvenain]

- Fixed deleting field from fieldset.
   [kroman0]

plone.stringinterp: 1.0.10 =E2=86=92 1.0.11
-----------------------------------
- Add portal_url and portal_title.
   [thomasdesvenain]

- Add parent_id.
   [maartenkling]

plone.subrequest: 1.6.7 =E2=86=92 1.6.8
-------------------------------
- Handle sub-requests which contain a doubled // in the path.
   [gweis]

plone.supermodel: 1.2.3 =E2=86=92 1.2.4
-------------------------------
- Replace deprecated test assert statements.
   [timo]

plone.testing: 4.0.8 =E2=86=92 4.0.11
-----------------------------
- Fix z2.txt doctest for FTP_SERVER.
   [timo]

- Read 'FTPSERVER_HOST' and 'FTPSERVER_PORT' from the environment=20
variables if
   possible. This allows us to run tests in parallel on CI servers.
   [timo]

- Replace deprecated Zope2VocabularyRegistry import.
   [timo]

plone.theme: 2.1 =E2=86=92 2.1.1
------------------------
- Remove hard dependency on CMFDefault.
   [davisagli]

plonetheme.classic: 1.3.2 =E2=86=92 1.3.3
---------------------------------
- Fixed comment that broke columns.css.
   Fixes https://github.com/plone/plonetheme.classic/issues/3
   [maurits, djowett]

plonetheme.sunburst: 1.4.5 =E2=86=92 1.4.6
----------------------------------
- Update README.rst to point to correct file for updating portal_css.
   [aclark]

- Use nocall when referencing site_properties for a mini optimization.
   [tomgross]

- Clarify documentation about registration of the skins layer.
   [thet]

z3c.autoinclude: 0.3.4 =E2=86=92 0.3.5
------------------------------
- If a module cannot be resolved, but raises ``ImportError``, log a
   warn and continue. This fixes an issue where the determining the
   includable packages would fail due to a problem with the importation
   of one or potentially more modules. An example is the ``gobject``
   module which provides a Python binding to ``GObject``. In a recent
   API deprecation, one is no longer allowed to both import ``gi`` and
   ``gobject``.

z3c.form: 3.0.2 =E2=86=92 3.1.1
-----------------------
- Feature: Added a consistent id on single checkbox and multi checkbox
   widgets.

- Feature: Added a consistent id on ordered selection widget.

- Feature: Added a hidden template for the textlines widget.

- Feature: added an API to render each radio button separately.

- Bug: Remove errors for cases where the key field of a dict field uses=20
a
   sequence widget (most notably choices). The sequence widget always=20
returns
   lists as widget values, which are not hashable. We convert those=20
lists to
   tuples now within the dict support.

- Feature: Moved registration of translation directories to a separate=20
ZCML
   file.

- Bug: Fixed a typo in German translations.

- Feature: Version 2.9 introduced a solution for missing terms in
   vocabularies. Adapted sources to this solution, too.

z3c.formwidget.query: 0.9 =E2=86=92 0.10
--------------------------------

plone.formwidget.autocomplete: 1.2.5 =E2=86=92 1.2.6
--------------------------------------------
- Fix url in css for indicator.gif
   [mitakas]
--=_MailMate_FAADCC61-0900-4635-AF17-3D102FCE19FC_=
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<div class=3D"markdown">
<p dir=3D"auto">Plone 4.3.3 has been released. Unified, OS X, and Vagrant=
/Virtualbox installers are available at <a href=3D"http://plone.org/produ=
cts/plone/releases/4.3.3">http://plone.org/products/plone/releases/4.3.3<=
/a></p>

<h2>Full Changelog</h2>

<h2>plone.recipe.alltests: 1.2 =E2=86=92 1.4</h2>

<ul>
<li><p dir=3D"auto">Flush stdout after printing status before and after r=
unning tests.</p></li>
<li><p dir=3D"auto">Added <code>exclude-groups</code> and <code>include-g=
roups</code> so entire package groups<br>
can be easily included or excluded from the test run.</p></li>
<li><p dir=3D"auto">Added the <code>default-policy</code> setting which m=
akes it possible to exclude<br>
packages by default, unless explicitly listed in <code>include</code>.</p=
></li>
<li><p dir=3D"auto">Make it possible to run a single test group by specif=
ying the --group=3D option.<br>
This can aid with debugging test isolation problems.<br>
[davisagli]</p></li>
</ul>

<h2>plone.recipe.zope2instance: 4.2.13 =E2=86=92 4.2.14</h2>

<ul>
<li>Link to zope.conf is now relativitize if option relative-paths is tru=
e.
[bsuttor]</li>
<li>Added ability to set <code>initialization</code> to configure Python
code to run on instance start up.
[davidjb]</li>
<li>added support for http-header-max-length
[alecghica]</li>
</ul>

<h2>robotframework-ride: 1.1 =E2=86=92 1.3</h2>

<h2>robotframework-selenium2library: 1.2 =E2=86=92 1.4</h2>

<h2>selenium: 2.34 =E2=86=92 2.37.2</h2>

<h2>Pillow: 1.7.8 =E2=86=92 2.3</h2>

<h2>Plone: 4.3.2 =E2=86=92 4.3.3</h2>

<ul>
<li>Release Plone 4.3.3
[esteele]</li>
</ul>

<h2>Products.ATContentTypes: 2.1.13 =E2=86=92 2.1.14</h2>

<ul>
<li>Update ICONMAP (.gif to .png).
[mathias.leimgruber]</li>
</ul>

<h2>Products.Archetypes: 1.9.4 =E2=86=92 1.9.7</h2>

<ul>
<li><p dir=3D"auto">Set logging level to DEBUG for warnings regarding new=
 fields initialized on<br>
an existing object. INFO level can seriously spam the logs of a busy port=
al.<br>
[olimpiurob]</p></li>
<li><p dir=3D"auto">Fix issue #13833 (<a href=3D"https://dev.plone.org/ti=
cket/13833">https://dev.plone.org/ticket/13833</a>) by logging a warning<=
br>
instead of throwing an un catched error when calling reindexObjectSecurit=
y<br>
on an object that has cataloged other objects which are deleted<br>
[ichim-david]</p></li>
<li><p dir=3D"auto">Internationalized file size and content type on file =
and image widgets.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Make sure @@at_utils.translate method always returns =
a string (empty or<br>
not) even when the passed value is an empty tuple (before, the returned<b=
r>
value was an empty tuple or a non empty string).<br>
[gbastien]</p></li>
<li><p dir=3D"auto">Do not add warning about new field initialized on an =
existing object in<br>
the transaction description, show this as a Zope log info message.<br>
[gbastien]</p></li>
<li><p dir=3D"auto"><code>Vocabulary</code> method was not working with <=
code>vocabulary_factory</code><br>
and int values (IntDisplayList is required)<br>
[keul]</p></li>
<li><p dir=3D"auto">Return original error during validation when a field =
already has an<br>
error. This avoids <code>TypeError: 'bool' object has no attribute<br>
'__getitem__'</code> in <code>Products.CMFFormController.ControllerState.=
</code><br>
[maurits]</p></li>
<li><p dir=3D"auto">Various vocabulary fixes, mostly for translations and=
<br>
IntDisplayLists.<br>
[maurits]</p></li>
</ul>

<h2>Products.CMFCalendar: 2.2.2 =E2=86=92 2.2.3</h2>

<h2>Products.CMFDefault: 2.2.3 =E2=86=92 2.2.4</h2>

<h2>Products.CMFEditions: 2.2.8 =E2=86=92 2.2.9</h2>

<ul>
<li><p dir=3D"auto">Use search<em>icon.png instead of search</em>icon.gif=
 in version<em>image</em>view.pt.<br>
The page crashed because search_icon.gif couldn't be found.<br>
[vincentfretin]</p></li>
<li><p dir=3D"auto">Do not depend on the <code>jq</code> variable in the =
history view.<br>
[maurits]</p></li>
</ul>

<h2>Products.CMFPlacefulWorkflow: 1.5.9 =E2=86=92 1.5.10</h2>

<ul>
<li><p dir=3D"auto">Move dependency on Products.PloneTestCase to test ext=
ra and thus removing<br>
implicit hard dependency on Products.ATContentTypes.<br>
[thet]</p></li>
<li><p dir=3D"auto">Fix policy_form test failures for Plone 5.<br>
[timo]</p></li>
</ul>

<h2>Products.CMFPlone: 4.3.2 =E2=86=92 4.3.3</h2>

<ul>
<li><p dir=3D"auto">Fix incorrect use of dict get method in CatalogTool.s=
earch, introduced by<br>
PloneHotfix20131210 (issue 195)<br>
[fulv]</p></li>
<li><p dir=3D"auto">Change default permission for sendto_form to Authenti=
cated instead of<br>
Anonymous<br>
[vangheem]</p></li>
<li><p dir=3D"auto">merge hotfixes from <a href=3D"https://pypi.python.or=
g/pypi/Products.PloneHotfix20131210">https://pypi.python.org/pypi/Product=
s.PloneHotfix20131210</a><br>
[vangheem]</p></li>
<li><p dir=3D"auto">handle plone.app.textfield RichTextValue objects in s=
yndication. Should<br>
fix syndication with plone.app.contenttypes.<br>
[vangheem]</p></li>
<li><p dir=3D"auto">FolderFeed adapter now takes into account the limit p=
roperty when displaying<br>
the RSS feed just like the other adapters do<br>
[ichim-david]</p></li>
<li><p dir=3D"auto">Fix handling of URL fragments in form_tabbing.js.<br>=

[davisagli]</p></li>
<li><p dir=3D"auto">Password reset emails will now be sent from the navig=
ation root instead<br>
the portal, enabling support for multilingual sites and other subsites<br=
>
to keep the correct language, title, menus and designs.<br>
[regebro]</p></li>
<li><p dir=3D"auto">Fix issue where a user could delete unintended object=
 through<br>
acquisition magic. See <a href=3D"https://dev.plone.org/ticket/13603">htt=
ps://dev.plone.org/ticket/13603</a>.<br>
[gotcha]</p></li>
<li><p dir=3D"auto">Added a method toLocalizedSize to @@plone view,<br>
on the model of toLocalizedTime,<br>
to get a localized string rendering a size from an integer.<br>
Use it on image view.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Remove plone<em>deprecated/sitemap.pt to avoid sitema=
p traceback because we<br>
don't have a @@sitemap</em>view view anymore when you enable back<br>
the plone_deprecated skin layer.<br>
[vincentfretin]</p></li>
<li><p dir=3D"auto">Inline validation JavaScript for z3c.form only sends =
request when<br>
field name can be obtained from DOM for a widget (#13741).<br>
[seanupton]</p></li>
<li><p dir=3D"auto">Fix problem generating feeds including Dexterity item=
s with no primary field.<br>
[bloodbare]</p></li>
<li><p dir=3D"auto">recently<em>modified and recently</em>published respe=
cts allow anonymous to view<br>
about setting<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Return a 404 instead of "AttributeError: (dynamic vie=
w)" if a user attempts to<br>
view a still-temporary PortalFactory item.<br>
[esteele]</p></li>
<li><p dir=3D"auto">Ensure that initial_login is set to True when a user =
first logs in.<br>
[taito]</p></li>
<li><p dir=3D"auto">No longer set news, events and member folder to be un=
ordered<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Fix calendar ajax next and prev buttons<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Ensure <code>object_rename</code> script has <code>_<=
/code> message factory available<br>
to prevent error when unauthorized.<br>
[davidjb]</p></li>
<li><p dir=3D"auto">Fix issue with the search js in sharing page where th=
e user needed to check<br>
twice a checkbox to assign a role after a search.<br>
[vincentfretin]</p></li>
<li><p dir=3D"auto">Catch missing userid on mail_password form, and treat=
 is as<br>
an empty userid. That way the user gets a helpful message.<br>
[do3cc]</p></li>
</ul>

<h2>Products.contentmigration: 2.1.5 =E2=86=92 2.1.7</h2>

<ul>
<li><p dir=3D"auto">Nothing changed yet.</p></li>
<li><p dir=3D"auto">Unlock items with webdav.<br>
[maurits]</p></li>
</ul>

<h2>Products.PasswordResetTool: 2.0.15 =E2=86=92 2.0.16</h2>

<ul>
<li>Password reset emails will now be sent from the navigation root inste=
ad
the portal, enabling support for multilingual sites and other subsites
to keep the correct language, title, menus and designs.
[regebro]</li>
</ul>

<h2>Products.PlonePAS: 4.1.1 =E2=86=92 4.1.3</h2>

<ul>
<li><p dir=3D"auto">Remove backwards-incompatible changes meant for Plone=
 5.<br>
[esteele]</p></li>
<li><p dir=3D"auto">Don't try to migrate the root user folder if the port=
al has no parent.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Use correct method to get user from id at gruf_suppor=
t.<br>
[tomgross]</p></li>
</ul>

<h2>Products.PloneTestCase: 0.9.17 =E2=86=92 0.9.18</h2>

<ul>
<li>Adjust conditionals for Plone 5 instead of 4.4.
[davisagli]</li>
</ul>

<h2>Products.PortalTransforms: 2.1.2 =E2=86=92 2.1.3</h2>

<h2>Products.ResourceRegistries: 2.2.9 =E2=86=92 2.2.10</h2>

<h2>Products.TinyMCE: 1.3.5 =E2=86=92 1.3.6</h2>

<ul>
<li><p dir=3D"auto">Reapplied fix for missing popups when zoom is applied=
 in Chrome from pull<br>
request 29. Credits go to bosim, raekjaer and jaroel for fix<br>
(close <code>#13013</code>__)<br>
[ichim-david]</p></li>
<li><p dir=3D"auto">Pay attention to safe html filter being disabled for =
tinymce configuration<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Fix selector used for finding anchors<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Fixed uploading dexterity file via TinyMCE file uploa=
der.<br>
[kroman0]</p></li>
<li><p dir=3D"auto">Updated media plugin; added styling to placeholder ge=
nerated by media<br>
plugin.<br>
[tiberiuichim]</p></li>
<li><p dir=3D"auto">French translations.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Do not load styles with conditional comments if the u=
ser agent doesn't<br>
contain Trident when computin getStyle, otherwise we load IE styles on no=
n<br>
IE browsers<br>
[ichim-david]</p></li>
<li><p dir=3D"auto">Require <code>plone.app.layout=3D=3D2.3.7</code> whic=
h includes bodyClass fix.<br>
[saily]</p></li>
<li><p dir=3D"auto">Valid HTML 5 attribute <code>start</code> for <code>o=
l</code> no more removed<br>
(close <code>#13566</code>__)<br>
[keul]</p></li>
</ul>

<h2>archetypes.querywidget: 1.0.9 =E2=86=92 1.0.10</h2>

<ul>
<li><code>QueryBuilder</code> instance is now obtained using ZCA, so othe=
r add-ons
will be able to customize it
[keul, cekk]</li>
</ul>

<h2>archetypes.referencebrowserwidget: 2.4.19 =E2=86=92 2.4.20</h2>

<ul>
<li>Filter out references that are None. This may happen when the
reference_catalog has links from a source to a no longer existing
target.
[maurits]</li>
</ul>

<h2>archetypes.schemaextender: 2.1.2 =E2=86=92 2.1.3</h2>

<ul>
<li>Fix tests [kiorky]</li>
</ul>

<h2>collective.z3cform.datetimewidget: 1.2.5 =E2=86=92 1.2.6</h2>

<ul>
<li>Determine whether to show am/pm based on the current locale's time fo=
rmat.
[davisagli]</li>
</ul>

<h2>diazo: 1.0.4 =E2=86=92 1.0.5</h2>

<ul>
<li>Escape curly brackets on theme attributes.
[TracyWebTech]</li>
</ul>

<h2>plone.app.blob: 1.5.8 =E2=86=92 1.5.9</h2>

<ul>
<li>Make sure mimetype is not None and use use filename for detection if =
available.
[tschanzt]</li>
</ul>

<h2>plone.app.caching: 1.1.6 =E2=86=92 1.1.8</h2>

<ul>
<li><h1>13848 Update installation instructions to reflect fact it has shi=
pped with</h1>

<p dir=3D"auto">Plone since version 4.1<br>
[anthonygerrard]</p></li>
<li><p dir=3D"auto">Make it possible to set a maxage of zero in strong ca=
ching. This is<br>
an edge case since this would ordinarily be handled by moderate caching.<=
br>
[smcmahon]</p></li>
<li><p dir=3D"auto">Add some testing for weak caching operations.<br>
[smcmahon]</p></li>
<li><p dir=3D"auto">Fix handling of anon-only flag for cases where maxage=
 is not zero. It<br>
was effectively ignored. Added operation test for strong caching.<br>
[smcmahon]</p></li>
</ul>

<h2>plone.app.content: 2.1.3 =E2=86=92 2.1.4</h2>

<ul>
<li><p dir=3D"auto">Fix constrainttypes form.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Protect the folder constraintypes form with the 'Modi=
fy constrain types'<br>
permission.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Fix tests for Plone 5 where the PLONE_FIXTURE layer d=
oes not provide<br>
content types any longer.<br>
[timo]</p></li>
</ul>

<h2>plone.app.contentmenu: 2.0.8 =E2=86=92 2.0.10</h2>

<ul>
<li><p dir=3D"auto">Nothing changed yet.</p></li>
<li><p dir=3D"auto">Don't break if there's no portal_actionicons tool.<br=
>
[davisagli]</p></li>
<li><p dir=3D"auto">Ported tests to plone.app.testing<br>
[tomgross]</p></li>
</ul>

<h2>plone.app.contentrules: 3.0.4 =E2=86=92 3.0.6</h2>

<ul>
<li><p dir=3D"auto">Make sure CHANGES.rst is included in distributions.<b=
r>
[esteele]</p></li>
<li><p dir=3D"auto">Fixed 3.0.4 regression: add/move/remove events where =
not handled<br>
anymore on discussion items.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fixed reordering of actions / conditions.<br>
This occured when 'jq' was not defined as 'jQuery'.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">User that manage a rule can now allow actions execute=
d by this rule<br>
to recursively trigger other rules.<br>
For example, if you have a rule that automatically publish added content,=
<br>
and an other rule that sends an email when a content is published,<br>
if autopublish rule is marked as 'cascading', then send mail rule will be=
 triggered.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Mail action: if string interpolation of recipient giv=
es several times<br>
the same email address,<br>
the email is sent only once to this recipient.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Workaround <code>KeyError: context</code> for unicode=
 TALES expressions in content<br>
rules by providing the expression <code>context</code>. This was triggere=
d by a<br>
TALES expression such as <code>u'string:${portal_url}</code>.<br>
[davidjb]</p></li>
</ul>

<h2>plone.app.controlpanel: 2.3.7 =E2=86=92 2.3.8</h2>

<ul>
<li><p dir=3D"auto">Fix test email: msgid was sent, not translation.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fix syndication settings to not write on read.<br>
[vangheem]</p></li>
</ul>

<h2>plone.app.dexterity: 2.0.9 =E2=86=92 2.0.11</h2>

<ul>
<li><p dir=3D"auto">Fixed Add view URL of cloned content type.<br>
Refs <a href=3D"http://dev.plone.org/ticket/13776">http://dev.plone.org/t=
icket/13776</a>.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Add robot testing environment and first robot test.<b=
r>
[cedricmessiant]</p></li>
<li><p dir=3D"auto">Better string normalization when setting type id from=
 type title<br>
(change accented or special characters with corresponding letters).<br>
[cedricmessiant]</p></li>
<li><p dir=3D"auto">Show a warning when editing the default page of a fol=
der.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Fix determination of allowed types so it checks permi=
ssion in<br>
the context of the original folder when inheriting allowed<br>
types.<br>
[davisagli]</p></li>
</ul>

<h2>plone.app.discussion: 2.2.8 =E2=86=92 2.2.12</h2>

<ul>
<li><p dir=3D"auto">Show author email to Moderator when it is available i=
n anonymous comment.<br>
[gotcha, smoussiaux]</p></li>
<li><p dir=3D"auto">Put defaultUser.png instead of old defaultUser.gif<br=
>
[bsuttor]</p></li>
<li><p dir=3D"auto">Update basque translation [Mikel Larreateg]</p></li>
<li><p dir=3D"auto">Fix ownership of comments. [toutpt]</p></li>
<li><p dir=3D"auto">Revert "Refactor tests to use the PLONE<em>APP</em>CO=
NTENTTYPES<em>FIXTURE instead of the PLONE</em>FIXTURE." that has been ac=
cidentially introduced into the 2.2.9 release.<br>
[timo]</p></li>
<li><p dir=3D"auto">Portuguese translation added.<br>
[Rui Silva]</p></li>
<li><p dir=3D"auto">Rename CHANGES.txt to CHANGES.rst.<br>
[timo]</p></li>
<li><p dir=3D"auto">Fix ajax form submit for delete comment action: add '=
data' to the request.<br>
[toutpt]</p></li>
</ul>

<h2>plone.app.folder: 1.0.5 =E2=86=92 1.0.6</h2>

<ul>
<li>Fix test for Plone 4, so we really only apply the reindexOnReorder
patch when we are on Plone 3.
[maurits]</li>
</ul>

<h2>plone.app.form: 2.2.3 =E2=86=92 2.2.4</h2>

<ul>
<li>Fixed ValueError in DateComponents.result() with a date before 1900.
[bsuttor]</li>
</ul>

<h2>plone.app.imaging: 1.0.9 =E2=86=92 1.0.10</h2>

<ul>
<li>Generate Progressive JPEG.
[kroman0]</li>
</ul>

<h2>plone.app.iterate: 2.1.10 =E2=86=92 2.1.12</h2>

<ul>
<li><p dir=3D"auto">Information messages can be hidden from user who chec=
ked out content when<br>
using a placeful workflow, see: <a href=3D"https://dev.plone.org/ticket/1=
3852">https://dev.plone.org/ticket/13852</a><br>
[anthonygerrard]</p></li>
<li><p dir=3D"auto">Replaced the "Locked" label with "Warning"<br>
[rristow]</p></li>
<li><p dir=3D"auto">Nothing changed yet.</p></li>
</ul>

<h2>plone.app.jquerytools: 1.5.6 =E2=86=92 1.5.7</h2>

<ul>
<li><p dir=3D"auto">Fix a test isolation issue.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Install plone.app.jquerytools.js after plone<em>javas=
script</em>variables.js<br>
in new instances.<br>
[bloodbare]</p></li>
</ul>

<h2>plone.app.layout: 2.3.7 =E2=86=92 2.3.11</h2>

<ul>
<li><p dir=3D"auto">Update package dependencies and clearly specify this =
branch is for<br>
Plone 4.3 only.<br>
[hvelarde]</p></li>
<li><p dir=3D"auto">Fix 'plone.belowcontentbody.relateditems' viewlet to =
avoid trying to display<br>
items if the user has no permission to view them (like content in Private=
<br>
state).<br>
[hvelarde]</p></li>
<li><p dir=3D"auto">modified sections.pt for adding link target.<br>
Fixed that portal<em>actions: 'Link Target' on<br>
portal</em>actions/portal_tabs doesn't work.<br>
[terapyon]</p></li>
<li><p dir=3D"auto">Add plone.app.relationfield to test dependencies,<br>=

needed to test dexterity support. [jpgimenez]</p></li>
<li><p dir=3D"auto">Removed hard dependency on plone.app.relationfield. [=
pabo, marcosfromero]</p></li>
<li><p dir=3D"auto">Fix 'table of contents' for Dexterity types.<br>
[pabo, pbauer, timo]</p></li>
<li><p dir=3D"auto">Use safe_unicode to decode the title of the object wh=
en retrieving the<br>
rss links from the RSSViewlet<br>
[ichim-david]</p></li>
</ul>

<h2>plone.app.linkintegrity: 1.5.3 =E2=86=92 1.5.4</h2>

<ul>
<li>Added support for sub path after uid of resolveuid
[hoka]</li>
</ul>

<h2>plone.app.locales: 4.3.2 =E2=86=92 4.3.3</h2>

<ul>
<li><p dir=3D"auto">All danish translations are now in UTF-8<br>
[bosim]</p></li>
<li><p dir=3D"auto">Updated Romanian translation.<br>
[ichim-david]</p></li>
<li><p dir=3D"auto">Update Traditional Chinese translation.<br>
[marr]</p></li>
<li><p dir=3D"auto">Added messages for mimetypes.<br>
French translation.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Updated Chinese Simplified translation<br>
[Jian Aijun]</p></li>
<li><p dir=3D"auto">Updated Spanish translation for plone.app.ldap addon<=
br>
[macagua]</p></li>
<li><p dir=3D"auto">Added Spanish translation for plone.app.caching addon=
<br>
[macagua]</p></li>
<li><p dir=3D"auto">Slovak translation updates<br>
[rlacko]</p></li>
<li><p dir=3D"auto">Added Spanish translation for plone.app.ldap addon<br=
>
[Talueses]</p></li>
</ul>

<h2>plone.app.portlets: 2.4.5 =E2=86=92 2.4.8</h2>

<ul>
<li><p dir=3D"auto">Fixed navigation portlet when navigation root was Non=
e.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fix navigation root of portlets when root field is un=
icode.<br>
This is the case when portlet is imported with generic setup.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Don't show the <code>New user?</code> link in the Log=
in portlet if there isn't<br>
a register URL available from portal_actions.<br>
[davidjb]</p></li>
<li><p dir=3D"auto">Use relative links for calender next and prev buttons=
 since caching can<br>
cause these things to change the current page the user is viewing<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Fix the removing of Group- and Typeportlets<br>
<a href=3D"https://dev.plone.org/ticket/13659">https://dev.plone.org/tick=
et/13659</a><br>
[pbauer]</p></li>
</ul>

<h2>plone.app.querystring: 1.0.8 =E2=86=92 1.1.1</h2>

<ul>
<li><p dir=3D"auto">fixed broken handling of limit and batch size.<br>
[bosim]</p></li>
<li><p dir=3D"auto">pep8 fixes<br>
[bosim]</p></li>
<li><p dir=3D"auto">be able to include a depth value onto path query stri=
ng<br>
[vangheem]</p></li>
<li><p dir=3D"auto">Use plone.batching.<br>
[khink]</p></li>
</ul>

<h2>plone.app.search: 1.1.5 =E2=86=92 1.1.7</h2>

<ul>
<li><p dir=3D"auto">(back port) URL bar is not correctly updated after cl=
icking<br>
pagination or updating search. Fixing regression introduced in 1.1.5<br>
[anthonygerrard]</p></li>
<li><p dir=3D"auto">When the request has no valid form keys but the query=
 does, it is<br>
still valid.<br>
[maurits]</p></li>
</ul>

<h2>plone.app.testing: 4.2.2 =E2=86=92 4.2.4</h2>

<ul>
<li><p dir=3D"auto">Add 'ROBOT<em>TEST</em>LEVEL' to interfaces, so other=
 packages can import it. This<br>
makes things easier if we decide to change the value.<br>
[timo]</p></li>
<li><p dir=3D"auto">Sync bbb PloneTestCase class with original one but do=
n't install<br>
ATContentTypes profile<br>
[tomgross]</p></li>
<li><p dir=3D"auto">Fire an event notification to ensure setup of browser=
 and skin layers<br>
Fixes <a href=3D"https://dev.plone.org/ticket/11673">https://dev.plone.or=
g/ticket/11673</a><br>
[do3cc]</p></li>
</ul>

<h2>plone.app.textfield: 1.2.2 =E2=86=92 1.2.3</h2>

<ul>
<li>Do not give an error when the raw value is None. Give an empty
unicode string as output in that case.
[maurits]</li>
</ul>

<h2>plone.app.upgrade: 1.3.4 =E2=86=92 1.3.6</h2>

<ul>
<li><p dir=3D"auto">Migrate theme settings, install Barceloneta.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Migrate Members folder default view<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Be sure the improved syndication settings introduced =
in the 4.3 series<br>
are applied on upgrade.<br>
[gbastien]</p></li>
<li><p dir=3D"auto">Avoid failure at lexicon upgrade (4.3rc1)<br>
when we have an integrity error into the ZCTextIndex.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Install plone.app.event and remove portal_calendar wh=
en upgarding to Plone 5.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Remove portal_interface when upgrading to Plone 5.<br=
>
[ale-rt]</p></li>
<li><p dir=3D"auto">Remove portal<em>actionicons, portal</em>discussion, =
and portal_undo when<br>
upgrading to Plone 5.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Add condition to the upgrade step to add scaling-qual=
ity 4.3-final.<br>
plone.app.imaging no longer has the imaging_properties (moved to CMFPlone=
)<br>
so they are not there in plone5-tests.<br>
[pbauer]</p></li>
<li><p dir=3D"auto">Add conditional install of plonetheme.classic in upgr=
ade step 4.0a1. Since<br>
plonetheme.classic will be removed in Plone 5, we can not be sure that it=
<br>
is always installed.<br>
[timo]</p></li>
<li><p dir=3D"auto">Replace deprecated test assert statements.<br>
[timo]</p></li>
<li><p dir=3D"auto">Add undeclared Products.TinyMCE dependency.<br>
[timo]</p></li>
<li><p dir=3D"auto">Add use<em>uuid</em>as_userid site property in Plone =
5.<br>
Part of PLIP 13419.<br>
[maurits]</p></li>
<li><p dir=3D"auto">Use lowercase for email login in Plone 5.<br>
Part of PLIP 13419.<br>
[maurits]</p></li>
<li><p dir=3D"auto">Remove persistent kss_mimetype import step.<br>
[maurits]</p></li>
<li><p dir=3D"auto">Fix name of Plone 5 zcml conditional feature to plone=
-5.<br>
[thet]</p></li>
<li><p dir=3D"auto">Don't fail on out of date catalog when upgrading synd=
ication for 4.3<br>
[tomgross]</p></li>
<li><p dir=3D"auto">Add Default Plone Password Policy to Plone's acl_user=
s.<br>
[gbastien]</p></li>
</ul>

<h2>plone.app.users: 1.2a2 =E2=86=92 1.2</h2>

<ul>
<li><p dir=3D"auto">Fixed i18n of new_password field in change-password v=
iew.<br>
[vincentfretin]</p></li>
<li><p dir=3D"auto">Fix email as login validation in the personalize form=
 (UserDataPanel).<br>
This is for the case when email is used as login. It checked that a<br>
changed email address was valid as user id. But the user id is<br>
never changed here, only the login name. We only need to check if<br>
this address is not used by another user.<br>
[maurits]</p></li>
<li><p dir=3D"auto">Fix to not break if passwords contain non-ASCII chara=
cters.<br>
This closes <a href=3D"https://dev.plone.org/ticket/13114">https://dev.pl=
one.org/ticket/13114</a><br>
[davisagli]</p></li>
<li><p dir=3D"auto">Be consistent in using INavigationRoot. (Backport fro=
m 1.1.4)<br>
[do3cc]</p></li>
</ul>

<h2>plone.app.uuid: 1.0 =E2=86=92 1.1</h2>

<ul>
<li>Make the test setup independent from basic content types in the
PLONE_FIXTURE.
[timo]</li>
</ul>

<h2>plone.app.viewletmanager: 2.0.4 =E2=86=92 2.0.5</h2>

<ul>
<li><p dir=3D"auto">Do not catch conflict errors and keywordinterrupt in =
viewlet manager.<br>
We can programmatically setup the exceptions that are not caught.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">If render fails, be more verbose about the exception =
to know where and how it<br>
happens in the stack. [kiorky]</p></li>
<li><p dir=3D"auto">refactor JS in template [petschki]</p></li>
</ul>

<h2>plone.app.vocabularies: 2.1.11 =E2=86=92 2.1.14</h2>

<ul>
<li>Add actions vocabulary.
[giacomos]</li>
</ul>

<p dir=3D"auto">-<br>
- provide proper contains method for catalog results<br>
  [vangheem]</p>

<ul>
<li><p dir=3D"auto">fallback to getSite for grabbing portal_catalog<br>
[vangheem]</p></li>
<li><p dir=3D"auto">catalog vocabulary query could be None<br>
[garbas]</p></li>
<li><p dir=3D"auto">getTerm and getTermByToken were not really checking i=
f item is in the<br>
vocabulary list<br>
[garbas]</p></li>
<li><p dir=3D"auto">use sort<em>on and sort</em>order in catalog vocabula=
ry<br>
[vangheem]</p></li>
</ul>

<h2>plone.app.workflow: 2.1.6 =E2=86=92 2.1.7</h2>

<ul>
<li>Show user's login name instead of the user id, which is an internal
identifier.
[davisagli]</li>
</ul>

<h2>plone.app.z3cform: 0.7.4 =E2=86=92 0.7.6</h2>

<ul>
<li><p dir=3D"auto">Translate fieldset labels correctly.<br>
[maurits]</p></li>
<li><p dir=3D"auto">We can add enable<em>unload</em>protection =3D False =
on a Form to disable unload protection.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Add '.empty' css class to fields that have no value.<=
br>
[cedricmessiant]</p></li>
<li><p dir=3D"auto">Indicate 'error' status when reporting errors from gr=
oup forms.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Replace deprecated test assert statements.<br>
[timo]</p></li>
<li><p dir=3D"auto">Solve #13567: InlineValidation broken for MultiWidget=
=2E<br>
[sunew]</p></li>
<li><p dir=3D"auto">Fix an issue with the inline validator, KSS was givin=
g values for<br>
fieldset attr than can't be converted to an integer.<br>
[jpgimenez]</p></li>
<li><p dir=3D"auto">Inline validation supports fieldset names instead of =
integer-indexed naming.<br>
[seanupton]</p></li>
<li><p dir=3D"auto">Use group <strong>name</strong>, not label value to h=
ave stable fieldset_name used in<br>
DOM id, and for inline validation.<br>
[seanupton]</p></li>
<li><p dir=3D"auto">Inline validation robustness if no field name is pass=
ed by client request.<br>
[seanupton]</p></li>
<li><p dir=3D"auto">Support for IDict in the MultiWidget. Makes it compat=
ible with z3c.form 3.0 (released 2013-06-24)<br>
[djay]</p></li>
<li><p dir=3D"auto">Give fieldset legends ids based on their name, for co=
mpatibility with<br>
Archetypes.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Fixed chechbox inline validation.<br>
[kroman0]</p></li>
</ul>

<h2>plone.autoform: 1.5 =E2=86=92 1.6</h2>

<ul>
<li><p dir=3D"auto">Replace deprecated test assert statements.<br>
[timo]</p></li>
<li><p dir=3D"auto">Support anonymous schema (dynamic interfaces with and=
 empty<br>
<strong>name</strong> attribute) in autoGroups, opting to use prefix as<b=
r>
group name for such cases. This allows subclasses of<br>
AutoExtensibleForm to implement getPrefix() method as<br>
a sufficient condition to support an unnamed schema.<br>
[seanupton]</p></li>
</ul>

<h2>plone.batching: 1.0 =E2=86=92 1.0.1</h2>

<ul>
<li>Fix issue with sequences when the reported length was different
than len() iteration would return the full unbatched sequence.
[alecm]</li>
</ul>

<h2>plone.browserlayer: 2.1.2 =E2=86=92 2.1.3</h2>

<ul>
<li>Fix tests with diazo.
[davisagli]</li>
</ul>

<h2>plone.cachepurging: 1.0.4 =E2=86=92 1.0.5</h2>

<ul>
<li>Replace deprecated test assert statements.
[timo]</li>
</ul>

<h2>plone.contentrules: 2.0.3 =E2=86=92 2.0.4</h2>

<ul>
<li>If a rule is 'cascading', actions executed by this rule
can recursively trigger other rules.
[thomasdesvenain]</li>
</ul>

<h2>plone.dexterity: 2.1.3 =E2=86=92 2.2.1</h2>

<ul>
<li><p dir=3D"auto">Also check behavior-fields for IPrimaryField since pl=
one.app.contenttypes<br>
uses fields provided by behaviors as primary fields<br>
[pbauer]</p></li>
<li><p dir=3D"auto">utils.createContent honors behaviors [toutpt]</p></li=
>
<li><p dir=3D"auto">Date index method works even if source field is a dex=
terity field<br>
wich provides a datetime python value.<br>
Now you can manually add a field with the name of a common Plone metadata=
 field<br>
(as effective<em>date, publication</em>date, etc.)<br>
[tdesvenain]</p></li>
<li><p dir=3D"auto">Replace deprecated test assert statements.<br>
[timo]</p></li>
<li><p dir=3D"auto">Put a marker interface on the default edit view so vi=
ewlets<br>
can be registered for it.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Ensure FTI's isConstructionAllowed method returns a b=
oolean.<br>
[danjacka]</p></li>
<li><p dir=3D"auto">Hide the Dublin Core tab and show the Properties tab =
for<br>
items when viewed in the ZMI.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Avoid storing dublin core metadata on new instances u=
nless it<br>
differs from the default values.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Implement CMF's dublin core interfaces inline rather =
than<br>
depending on CMFDefault.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Support GenericSetup structure import/export of Dexte=
rity content.<br>
Content is serialized the same way as for WebDAV,<br>
using plone.rfc822. Not all field types are supported yet,<br>
but this at least gets the basics in place.</p>

<p dir=3D"auto">GS import used to work by accident in a basic way for Dex=
terity<br>
containers. If you were using this, you'll need to recreate your<br>
exported files with the rfc822 serialization.<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Creator accessor should return encoded strings<br>
If your catalog was broken, try to clear &amp; reindex Creator::</p>

<p dir=3D"auto">cat.clearIndex('Creator')<br>
cat.manage_reindexIndex(['Creator'])</p>

<p dir=3D"auto">[kiorky]</p></li>
<li><p dir=3D"auto">Use the same message string for the default fieldset =
as Archetypes does.<br>
[davisagli]</p></li>
</ul>

<h2>plone.folder: 1.0.4 =E2=86=92 1.0.5</h2>

<ul>
<li><p dir=3D"auto">Allow reversing the current order, without specifying=
 a key for<br>
sorting.<br>
[maurits]</p></li>
<li><p dir=3D"auto">Allow ordering by a method instead of an attribute.<b=
r>
[maurits]</p></li>
</ul>

<h2>plone.formwidget.namedfile: 1.0.7 =E2=86=92 1.0.9</h2>

<ul>
<li><p dir=3D"auto">Fix fr translation for "Remove image".</p></li>
<li><p dir=3D"auto">The _mimetype property in NamedFileWidget would fail =
on attempting<br>
to render after a validation failure when it tried to lookup a<br>
mimetype with the wrong method. Result was a malformed mimetype<br>
exception. Fixes #13798.<br>
[smcmahon]</p></li>
<li><p dir=3D"auto">Display icon and content type name on widget.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Internationalized size on file and image widget.<br>
[thomasdesvenain]</p></li>
</ul>

<h2>plone.namedfile: 2.0.2 =E2=86=92 2.0.5</h2>

<h2>plone.openid: 2.0.1 =E2=86=92 2.0.2</h2>

<ul>
<li><p dir=3D"auto">Replace deprecated test assert statements.<br>
[timo]</p></li>
<li><p dir=3D"auto">Use system random when available. This is part of the=
 fix for<br>
<a href=3D"https://plone.org/products/plone/security/advisories/20121106/=
24">https://plone.org/products/plone/security/advisories/20121106/24</a><=
br>
[davisagli]</p></li>
<li><p dir=3D"auto">Fixed extractCredentials to strip whitespaces around =
_<em>ac</em>identity_url.<br>
This fixes <a href=3D"http://dev.plone.org/plone/ticket/11044">http://dev=
=2Eplone.org/plone/ticket/11044</a><br>
[datakurre]</p></li>
</ul>

<h2>plone.outputfilters: 1.11.1 =E2=86=92 1.12</h2>

<ul>
<li>Nothing changed yet.</li>
</ul>

<h2>plone.scale: 1.3.2 =E2=86=92 1.3.3</h2>

<h2>plone.schemaeditor: 1.3.3 =E2=86=92 1.3.7</h2>

<ul>
<li><p dir=3D"auto">Fix packaging error.<br>
[esteele]</p></li>
<li><p dir=3D"auto">Use a different id for field edit form and listing fo=
rm, to ease<br>
reuse of overlay behaviours.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fix French translation.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Don't depend on popupform.js<br>
[davisagli]</p></li>
<li><p dir=3D"auto">Add an "editable" method to IFieldFactory that may be=
 used to determine<br>
if a particular field is editable. Rationale: fields customized via XML<b=
r>
editing are sometimes not going to be editable via schemaeditor due to<br=
>
an inability to handle custom vocabularies or sources. The field factory<=
br>
utility is a very convenient place to test this since it's already<br>
used to determine available fields and their addability.</p>

<p dir=3D"auto">editable(fieldInstance) returns True in the base class. O=
verride it for<br>
custom behavior in a subclass.<br>
[smcmahon]</p></li>
<li><p dir=3D"auto">Add an "available" method to IFieldFactory that may b=
e used to determine<br>
if a field factory is actually available in the current context. This alw=
ays<br>
returns True in the base class. Override it if a field factory isn't usef=
ul<br>
unless conditions are met. Example: we can't use a field factory for<br>
RelationChoice unless the relationfield is activated in the Plone<br>
instance.<br>
[smcmahon]</p></li>
<li><p dir=3D"auto">Fixed: on a multi selection field with a vocabulary n=
ame,<br>
when the field had been generated from a model,<br>
the vocabulary name was not selected on edit form.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fixed drag and drop fields in fieldsets when form tab=
bing is disabled:<br>
we can drop a field into the fieldset legend (for example, when the field=
set is empty),<br>
or directly positioning it beside fields of the new fieldset.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">i18n fixes.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Better string normalization when setting field id fro=
m field title<br>
(change accented or special characters with corresponding letters).<br>
[cedricmessiant]</p></li>
<li><p dir=3D"auto">Added robot tests.<br>
[davisp, cedricmessiant, thomasdesvenain at toulouse-sprint]</p></li>
<li><p dir=3D"auto">We can select a vocabulary factory on a choice field,=
<br>
among all registered vocabularies.<br>
We don't have an error anymore<br>
when we edit a choice field with a vocabulary factory.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Fixed deleting field from fieldset.<br>
[kroman0]</p></li>
</ul>

<h2>plone.stringinterp: 1.0.10 =E2=86=92 1.0.11</h2>

<ul>
<li><p dir=3D"auto">Add portal<em>url and portal</em>title.<br>
[thomasdesvenain]</p></li>
<li><p dir=3D"auto">Add parent_id.<br>
[maartenkling]</p></li>
</ul>

<h2>plone.subrequest: 1.6.7 =E2=86=92 1.6.8</h2>

<ul>
<li>Handle sub-requests which contain a doubled // in the path.
[gweis]</li>
</ul>

<h2>plone.supermodel: 1.2.3 =E2=86=92 1.2.4</h2>

<ul>
<li>Replace deprecated test assert statements.
[timo]</li>
</ul>

<h2>plone.testing: 4.0.8 =E2=86=92 4.0.11</h2>

<ul>
<li><p dir=3D"auto">Fix z2.txt doctest for FTP_SERVER.<br>
[timo]</p></li>
<li><p dir=3D"auto">Read 'FTPSERVER<em>HOST' and 'FTPSERVER</em>PORT' fro=
m the environment variables if<br>
possible. This allows us to run tests in parallel on CI servers.<br>
[timo]</p></li>
<li><p dir=3D"auto">Replace deprecated Zope2VocabularyRegistry import.<br=
>
[timo]</p></li>
</ul>

<h2>plone.theme: 2.1 =E2=86=92 2.1.1</h2>

<ul>
<li>Remove hard dependency on CMFDefault.
[davisagli]</li>
</ul>

<h2>plonetheme.classic: 1.3.2 =E2=86=92 1.3.3</h2>

<ul>
<li>Fixed comment that broke columns.css.
Fixes <a href=3D"https://github.com/plone/plonetheme.classic/issues/3">ht=
tps://github.com/plone/plonetheme.classic/issues/3</a>
[maurits, djowett]</li>
</ul>

<h2>plonetheme.sunburst: 1.4.5 =E2=86=92 1.4.6</h2>

<ul>
<li><p dir=3D"auto">Update README.rst to point to correct file for updati=
ng portal_css.<br>
[aclark]</p></li>
<li><p dir=3D"auto">Use nocall when referencing site_properties for a min=
i optimization.<br>
[tomgross]</p></li>
<li><p dir=3D"auto">Clarify documentation about registration of the skins=
 layer.<br>
[thet]</p></li>
</ul>

<h2>z3c.autoinclude: 0.3.4 =E2=86=92 0.3.5</h2>

<ul>
<li>If a module cannot be resolved, but raises <code>ImportError</code>, =
log a
warn and continue. This fixes an issue where the determining the
includable packages would fail due to a problem with the importation
of one or potentially more modules. An example is the <code>gobject</code=
>
module which provides a Python binding to <code>GObject</code>. In a rece=
nt
API deprecation, one is no longer allowed to both import <code>gi</code> =
and
<code>gobject</code>.</li>
</ul>

<h2>z3c.form: 3.0.2 =E2=86=92 3.1.1</h2>

<ul>
<li><p dir=3D"auto">Feature: Added a consistent id on single checkbox and=
 multi checkbox<br>
widgets.</p></li>
<li><p dir=3D"auto">Feature: Added a consistent id on ordered selection w=
idget.</p></li>
<li><p dir=3D"auto">Feature: Added a hidden template for the textlines wi=
dget.</p></li>
<li><p dir=3D"auto">Feature: added an API to render each radio button sep=
arately.</p></li>
<li><p dir=3D"auto">Bug: Remove errors for cases where the key field of a=
 dict field uses a<br>
sequence widget (most notably choices). The sequence widget always return=
s<br>
lists as widget values, which are not hashable. We convert those lists to=
<br>
tuples now within the dict support.</p></li>
<li><p dir=3D"auto">Feature: Moved registration of translation directorie=
s to a separate ZCML<br>
file.</p></li>
<li><p dir=3D"auto">Bug: Fixed a typo in German translations.</p></li>
<li><p dir=3D"auto">Feature: Version 2.9 introduced a solution for missin=
g terms in<br>
vocabularies. Adapted sources to this solution, too.</p></li>
</ul>

<h2>z3c.formwidget.query: 0.9 =E2=86=92 0.10</h2>

<h2>plone.formwidget.autocomplete: 1.2.5 =E2=86=92 1.2.6</h2>

<ul>
<li>Fix url in css for indicator.gif
[mitakas]</li>
</ul>

</div>
--=_MailMate_FAADCC61-0900-4635-AF17-3D102FCE19FC_=--


--===============3107815458263427300==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.  Get 
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
--===============3107815458263427300==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Plone-Announce mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plone-announce

--===============3107815458263427300==--