Plone CMS Changelog

What's new in Plone CMS 4.3.4

Jan 16, 2015
  • Bugfix release for the Plone 4.3.x series.

New in Plone CMS 4.0.6 (May 23, 2011)

  • Fix form tab navigation when it has more than 6 tabs under ie, chrome, safari. This fixes http://dev.plone.org/plone/ticket/11815. [thomasdesvenain]
  • Let the content import step (importing the site structure) not depend on plone-final but on typeinfo. Solves circular dependency. Refs http://dev.plone.org/plone/ticket/8350 [maurits]
  • Backport fix zope.sendmail patch to raise errors for immediate sending failures. Relates to http://dev.plone.org/plone/ticket/10675. [elro]
  • Fix form submission when it has more than 5 tabs. This fixes http://dev.plone.org/plone/ticket/10868. [thomasdesvenain]
  • Fix cicular dependency in import steps. This partially fixes http://dev.plone.org/plone/ticket/8350 [kiorky]

New in Plone CMS 4.1 Beta 2 (Apr 10, 2011)

  • Release Plone 4.1b2 [esteele]
  • Depend on wicked now that Products.CMFPlone doesn't. [davisagli]

New in Plone CMS 4.0.5 (Apr 10, 2011)

  • Fixed: "showing field with error is broken in edit view" This fixes https://dev.plone.org/plone/ticket/11686. [gotcha]
  • Fixed: "missing required icon in tabs in edit view" This fixes https://dev.plone.org/plone/ticket/11685. [gotcha]
  • Added "rss" alias to "RSS". This fixes https://dev.plone.org/plone/ticket/11638. [gotcha]
  • Fixed: "Show all" livesearch link manages "current folder only" option. This fixes https://dev.plone.org/plone/ticket/11414. [thomasdesvenain]
  • Fixed: "Show all" was not displayed in live search when limit result was exceeded. This fixes https://dev.plone.org/plone/ticket/11628. [thomasdesvenain]

New in Plone CMS 4.0.4 (Mar 3, 2011)

  • Remove useless trailing slash in 404. This fixes http://dev.plone.org/plone/ticket/11550 [gotcha]
  • Use correct argument order in utranslate.py script. This fixes http://dev.plone.org/plone/ticket/10395 [fRiSi]
  • Add missing security declarations on PropertiesTool. [davisagli]
  • Add fallback icon for control panels with no icon, in the portlet_prefs portlet. This fixes http://dev.plone.org/plone/tickets/11112. [topherh, davisagli]
  • Remove js-generated inline style from searchbox. Same CSS is in public.css. See http://dev.plone.org/plone/changeset/40654, Fixes http://dev.plone.org/plone/ticket/11186 [msmith64]
  • Fixed handling of relative links used as default pages This fixes http://dev.plone.org/plone/ticket/11340 [fRiSi]
  • Re-instate spinner.gif (animation), lost in the move to PNGs. The static spinner.png has been deprecated. Fixes http://dev.plone.org/plone/ticket/11504 [mj]

New in Plone CMS 4.1 Alpha 2 (Feb 11, 2011)

  • Include plone.app.caching as an optional, shipped add-on.

New in Plone CMS 4.1 Alpha 1 (Jan 21, 2011)

  • Separate Products.CMFPlone from the Plone egg. [elro]

New in Plone CMS 4.0.3 (Jan 21, 2011)

  • Change PloneBatch class to work with actual_result_count alone instead of calculating the length of the provided sequence. [hannosch]
  • Pass on batching hints to the catalog query in getFolderContents. [hannosch]
  • Make role/permission settings consistent in Plone root http://dev.plone.org/plone/ticket/7922 [tom_gross]
  • Added some css ids on login form. [thomasdesvenain]
  • Fixed possible Unauthorized error when registering a user when using the email address as login name. [maurits]
  • Fixed errors on kss update in portal factory. This fixes http://dev.plone.org/plone/ticket/11311. [thomasdesvenain]
  • In the registration tool strip the mail text before passing it through message_from_string. A leading white line would prevent getting Subject, To and From headers from the generated message. [maurits]
  • Avoid various deprecation warnings under Zope 2.13. [hannosch]

New in Plone CMS 4.0.2 (Nov 22, 2010)

  • Added fill-slot to events_listing.pt that was not showing any events. This fixes http://dev.plone.org/plone/ticket/11216. [jmansilla, WouterVH]
  • Fixed factory.addPloneSite so extension profiles have a chance of specifying site properties in a properties.xml file. [hannosch]
  • Edit tab on Author page pointed to personal preferences page instead of personal information. This fixes http://dev.plone.org/plone/ticket/11141. [piv]
  • Fixed http://dev.plone.org/plone/ticket/11160, first level of Table of Contents is a level with at least two entries. [thomasdesvenain]
  • Fixed: http://dev.plone.org/plone/ticket/11177, some formselector specifications for popups were too vague. [smcmahon]
  • Fixed: http://dev.plone.org/plone/ticket/11187, Better message when you cannot delete a locked item [kiorky]

New in Plone CMS 4.0.1 (Oct 4, 2010)

  • Fixed : 'listing' class table sort of first column failed (at third click). [thomasdesvenain]
  • Re-add suggestions for 404 pages that were missing in 4.0. [MatthewWilkes]
  • Block picking a username already in use by a parent PAS to prevent potential security issues due to collisions. [MatthewWilkes]
  • Successful completion of contact form ended in redirect to 'undefined' when using popups. Fixed by just closing. Fixes https://dev.plone.org/plone/ticket/11090 [smcmahon]
  • Fixed i18n of the Upgrade hellip button in plone-overview.pt. [vincentfretin]
  • Fix a malformed list comprehension in failsafe_login_form.cpt [esteele]
  • Modified plone.css.py script to correctly show contents for z3 style resources, by using portal_css.getInlineResource. This fixes http://dev.plone.org/plone/ticket/10864 [mr_savage]
  • Fixed https://dev.plone.org/plone/ticket/10956 - prevent content of the types listed in typesUseViewActionInListings from being selected as default pages. [elro]
  • Validate new group names using the isMemberIdAllowed method of the registration tool. This fixes http://dev.plone.org/plone/ticket/10897. [davisagli]

New in Plone CMS 4.0 RC1 (Aug 6, 2010)

  • Fixed http://dev.plone.org/plone/ticket/10790 "popupforms.js causes javascript error on IE7" [smcmahon]
  • Limit number of matches looked up during live search for speedier replies. [witsch]
  • Use the standard libraries doctest module. [hannosch]
  • Don't open content_status_history in a popup, it requires template specific JS and CSS to be loaded. This refs http://dev.plone.org/plone/ticket/10726. [hannosch]
  • No longer mention textile as a supported markup style. We don't ship with the required Python packages by default. This closes http://dev.plone.org/plone/ticket/10690. [hannosch]
  • Fix the table of contents generation script to include h1 tags from the content body. Fixes http://dev.plone.org/plone/ticket/10755 [davisagli]
  • Update plone-upgrade.pt to explicitly check if a Plone instance has been downgraded since the database was created. This fixes: http://dev.plone.org/plone/ticket/10220 Thanks to davidblewett for the patch. [claytron, davisagli]
  • Update license to GPL version 2 only. [hannosch]
  • Use Unicode characters instead of HTML entities in the default front page text. This closes http://dev.plone.org/plone/ticket/10084. [hannosch]
  • Replace the manage_zmi_logout link and page with a nicer Plone specific implementation. [hannosch]
  • Fixed the visual appearance of the logged_out page. [hannosch]
  • Stop issuing deprecation warnings about action icons in our default install. [hannosch]
  • Silence the ISO8601 warning until we fixed all of Plone Core. This refs http://dev.plone.org/plone/ticket/10322. [hannosch]
  • Avoid deprecation warning in sendmail patch and require at least Zope 2.12.9. [hannosch]
  • Removed long unused ie5fixes.js. This refs http://dev.plone.org/plone/ticket/10287. [hannosch]
  • Be a bit less noisy in GenericSetup handlers and don't log a Nothing to import message for our own handlers. [hannosch]
  • Fix broken userid/login name in the password reset code. Fixes http://dev.plone.org/plone/ticket/10767 [wichert]

New in Plone CMS 4.0 Beta 2 (Apr 10, 2010)

  • Explicitly check that a searchterm was provided before adding it to the query string. Fixes http://dev.plone.org/plone/ticket/9025 (Port of [35909]) [blueaidan]
  • Batch folderContents in folder_listing's listing macro if it's not already batched when passed in. This closes http://dev.plone.org/plone/ticket/10401 [davisagli]
  • Added overlays for Rename and selecting default folder views. [limi]
  • Made the core content types use CSS sprites instead of individual images, which cuts down the number of image HTTP requests from 11 to 2. This fixes http://dev.plone.org/plone/ticket/10403 [limi]
  • Cleaned up the type descriptions, and removed the ones where that are self-evident or redundant. [limi]
  • Fix several issues in the RSS template: don't get the logo name from base_properties, correctly fetch the full text and last modified date, and only specify the publishing date in the output. [davisagli]
  • Add and adapt tests for moving dates bug which was caused by date conversion without respect to Daylight Saving Times. Fix for http://dev.plone.org/plone/ticket/10141, refs r12413. [thet]
  • Removed msgid for "Site Setup" message in portlet_prefs.pt and plone_control_panel.pt. [vincentfretin]
  • Added in support WebKit- and Gecko-based small-screen devices (iPhone, Android, Firefox Mobile) [limi]
  • Make prefs_main_template fill portlets_one_slot instead of column_one_slot to add its portlet, for compatibility with Sunburst. Also make it unnecessary for custom configlet templates to set display_border. [davisagli]
  • Adjusted viewlet configuration so that the Sunburst theme uses the viewlets defined in plone.app.layout, and the Classic theme overrides that configuration to achieve the old viewlet positions. [davisagli]
  • batch_macros.pt: Use request/ACTUAL_URL instead of context/absolute_url as batching base url so that batching works for diffent views and FSPageTemplates appended to context/absolute_url. The approach ${context/absolute_url}/${template/getId} didn't work for views. [thet]
  • Fix columns in prefs_main_template. [davisagli]
  • Use zope.app.locales >= 3.6.0, this package have now a configure.zcml which register the translations, we use it now. A new version of zope.app.locales is needed to fix http://dev.plone.org/plone/ticket/10105 [vincentfretin]
  • Fix argument order in translate Python script. [davisagli]
  • Simplify folder_tabular_view to use the folder_listing macros. [elro]
  • folder_listing should batch for collections, like folder_tabular_view. This was introduced to fix #7937 but it no longer seems to be a problem. [elro]
  • Simplified the "Event when" i18n introduced in 4.0b1. [vincentfretin]
  • Fixed DYNAMIC_CONTENT in heading_prefs_user_details message. [vincentfretin]
  • Updated the table_sorter.js to use Unicode for its arrows instead of images. Also made it more robust, so it doesn't fail if you have two columns with the same name. This refs http://dev.plone.org/plone/ticket/10352 [davisagli, limi]
  • Stop removing the $ alias for jQuery, since many plugins rely on it. Users worried about conflicts with other libraries can customize jquery-integration.js and set jq = jQuery.noConflict() again, instead of jq = jQuery [davisagli, limi]
  • For Managers, make default_error_message display tracebacks inline rather than linking to them. [davisagli, limi]
  • Fixed livesearch_reply.py to give the context to ts.translate method. [vincentfretin]
  • Fixed plone_scripts/translate.py to use translation_service.translate method. translation_service.utranslate was removed in recent version of PlacelessTranslationService. [vincentfretin]
  • Reverted default message for description_group_members_of in plone_deprecated/prefs_group_members.cpt [vincentfretin]
  • Fixed help_biography message. [vincentfretin]
  • Internationalized the backup-warning message in plone-upgrade.pt. [vincentfretin]
  • Removed template_id from batch_base_url in batch_macros.pt because it breaks when overloading the folder_listing template via zcml. [thet]
  • Convert limit_display to int in folder_tabular_view.pt and folder_listing.pt so that it can be fed in via request parameters. [thet]

New in Plone CMS 4.0 Beta 1 (Mar 9, 2010)

  • "Event when" improved for better i18n.
  • This closes http://dev.plone.org/plone/ticket/10196 [gotcha]
  • Adjust the tests now that DateTime objects are stored with a time zone. Refs http://dev.plone.org/plone/ticket/10141 [witsch]
  • Fix issues with sliding modification/publishing dates by using DateTime's ISO8601 method instead of ISO, which doesn't include time zones. Refs http://dev.plone.org/plone/ticket/10140, 10141 & 10171. [davisagli, witsch]
  • Set the 'context' context on Plone expression contexts, which is needed for resolving UnicodeDecodeErrors when evaluating expressions. [davisagli]
  • Added optional batchformkeys parameter to batch_macros.pt to restrict which form fields will be included in batch navigation links (for immediate use in plone.app.controlpanel's user and groups listsings). [cah190]
  • Added markup to give styling to document ByLine in folder_summary_view. This fixes http://dev.plone.org/plone/ticket/6094 [dunlapm]
  • Add an HTML id to the "add group" form. [stuttle]
  • Moved the tal:condition from the tag to tag in folder_summary_view, to remove unnecessary empty tags when no image exists. References http://dev.plone.org/plone/ticket/10251 [miguelitosm]
  • Removed the 'ListFolderContents' permission from all workflows and limit the default permission to Manager, Owner, Reviewer, Editor and Contributor. It should not change with workflow state, it's an edit/admin view that you either should have or not. References http://dev.plone.org/plone/ticket/10236 [tomster]
  • Switched plone.kss from relying on redundant #region-content to #content. References http://dev.plone.org/plone/ticket/#10231 [spliter]
  • Hide the Kupu and placeful workflow add-ons at normal site creation time. [hannosch]
  • Ensure that implicitly selected profiles are installed first, so themes depending on them are installed correctly. This closes http://dev.plone.org/plone/ticket/10223. [hannosch]
  • Cleaned plone_control_panel.pt and fixed it's validation. [spliter]
  • Moved portalStatusMessage in author.pt above #content for case when the user is not found. References http://dev.plone.org/plone/ticket/10231 http://dev.plone.org/plone/ticket/9981 [spliter]
  • Upgraded to jQuery 1.4.2. [mj]

New in Plone CMS 3.3.5 (Mar 3, 2010)

  • Check for existance of a hash in the location before attempting to scroll to that location in toc.js. Fixes bug introduced in r32066, and refs http://dev.plone.org/plone/ticket/9364 [dunlapm]
  • default_error_message page adds the error code in the subject of the contact-info page This closes http://dev.plone.org/plone/ticket/8446 [huub_bouma, kcleong]

New in Plone CMS 4.0 Alpha 5 (Feb 19, 2010)

  • Replace getObjPositionInParent with stub index capable of sorting search results according to their position in the container, a.k.a. "nogopip". [witsch]
  • Move isExpiry into CMFPlone.utils so it can be called directly, i.e. without searching the skin. [witsch]
  • Removed redundant 'configlet' class from prefs_group_details.pt and prefs_user_details.pt [spliter]
  • Updated more prefs_* templates to follow recent markup conventions. References http://dev.plone.org/old/plone/ticket/9981 [spliter]
  • Removed deprecated 'sub' slot from discussionitem_view.pt. [spliter]
  • Added a condition to the automatic loading of ZCML configuration (via the [z3c.autoinclude.plugin] target = plone entry point), so that it is possible to disable automatic loading. This is particularly useful in tests, where automatically included packages can cause leakage of state or unrelated errors if Plone's ZCML is loaded. To disable auto-inclusion, y you can add a ZCML statement like the following:
  • < configure xmlns="http://namespaces.zope.org/zope"
  • xmlns:meta="http://namespaces.zope.org/meta" >
  • < meta:provides feature="no-autoinclude" / >
  • < /configure >
  • You need to do this "early", i.e. before Plone's ZCML is loaded. [optilude]
  • Fix a test regression in discussion_reply_form if the layout for the item being discussed has no content-core macro. (Such as the link_redirect_view.py script for a Link item). [davisagli]
  • Wrapped .contentViews and .contentActions with < div id="edit-bar" > in views. [spliter]
  • Wrapped .contentViews and .contentActions with < div id="edit-bar" > in order to have consistent markup between classic and Sunburst themes. [spliter]
  • Cleaned up some markup mess, #region-content, .documentContent were redundant, and were reduced to #content instead, to reduce confusion. Full explanation here: http://dev.plone.org/plone/ticket/10231, and instructions for theme authors here: http://plone.org/documentation/kb/how-to-write-templates-for-plone-4 [limi]
  • Moved the prepareObjectTabs method from the @@plone view to the plone.contentviews viewlet. [hannosch]
  • Moved layout related methods from the @@plone view to a new @@plone_layout view found in plone.app.layout.globals. [hannosch]
  • Add a meta:provides directive to meta.zcml that provides the feature plone-4. To load Plone-4 specific ZCML, you can use something like this:
  • < configure xmlns="http://namespaces.zope.org/zope"
  • xmlns:zcml="http://namespaces.zope.org/zcml" >
  • < include zcml:condition="have plone-4"
  • file="plone-4-specific-stuff.zcml" / >
  • < /configure >
  • [optilude]
  • Add new editing control panel. [hannosch]
  • Hide the rss and print document actions for new sites. Both are consistently supported by browsers today and don't need site specific actions anymore. [hannosch]
  • We need to include ZCML from plone.app.folder, not just plone.folder. This refs http://dev.plone.org/plone/ticket/10127. [witsch, hannosch]
  • Removed the no longer needed history viewlet. This refs http://dev.plone.org/plone/ticket/10102. [hannosch]
  • Made history act as an ajax popup rather than an inline collapsible. The goal is to reduce rendering time when history isn't needed. [smcmahon]
  • Updated author.pt to follow general markup conventions. References http://dev.plone.org/plone/ticket/9981 [spliter]
  • Updated templates to fill 'main' slot with construction instead of < div metal:fill-slot="main" tal:omit-tag="" > [spliter]
  • Re-factored plone_prefs/ templates to follow the recent markup conventions. References http://dev.plone.org/plone/ticket/9981 [spliter]
  • Added 'All content' blog like view for folderish types. [elro]
  • Re-factored folder listing and summary view. [elro]
  • Updated templates to disable the columns with 'disable_MANAGER_NAME' pattern. [spliter]
  • Add current portal type to the body css class like the section and template css class's. Refs https://dev.plone.org/plone/ticket/8777. [pelle]
  • Deprecate the portlets_fetcher and macro_renderer templates. [davisagli]
  • Clean up various HTML comments that were being emitted unnecessarily. [davisagli]
  • On the Zope overview screen, make sure the user is authenticated at the Zope root before sending them to the upgrade view for a Plone site, when the Upgrade button is clicked. This closes http://dev.plone.org/plone/ticket/10154. [davisagli]
  • Increased maximum length of the sortable_title index from 40 to 70 characters to match truncation rules of most search engines. This closes http://dev.plone.org/plone/ticket/10170. [hannosch]
  • Restrict manage_options on the catalog to supported and useful options. [hannosch]
  • Re-factored all templates to follow the recent markup conventions. References http://dev.plone.org/plone/ticket/9981 [spliter]
  • Register common CSS resources as blank files here. Other themes are supposed to override them to style the site appropiately. Refs http://dev.plone.org/plone/ticket/9988. [dukebody]
  • Updated markup for kss_generic_macros and made main_template to use that as the default generator for titles and descriptions. [spliter]
  • Cache the Plone expression context in the _plone_ec_cache attribute of the request, rather than _ec_cache, to avoid accidentally getting a plain CMF expression context if that's the first sort that was fetched. [davisagli]
  • Update profile version, so we can register new upgrade steps. [hannosch]
  • Fix portal_factory to not destroy sub-path traversal. For example, a view that implements IPublishTraverse would previously not see the traversal sub-path if invoked on an item being edited in the portal_factory. [optilude]

New in Plone CMS 4.0 Alpha 4 (Feb 1, 2010)

  • Define a "content-core" macro for each content view template to make blog like listings possible. [elro]
  • Make sure the default content folders (news, events, and Members) are not explicitly ordered (e.g., equivalent to the old Large Plone Folder type). [davisagli]
  • Show user's fullname in form header in prefs_user_details [esteele]
  • Deprecated plone_prefs/prefs_search_macros.pt [esteele]
  • Deprecated plone_prefs/prefs_user_memberships.pt, plone_prefs/prefs_user_memberships.pt.metadata, plone_prefs/prefs_user_membership_edit.py, plone_prefs/prefs_user_group_search.py. Functionality is now handled by @@usergroup-usermembership. [esteele]
  • Overlay form on @@usergroup-groupprefs and @@usergroup-userprefs now redirects to the current page instead of reloading it. Reloading caused a resubmission of the last form action (such as "delete") which threw an error. [esteele]
  • Deprecated plone_deprecated/prefs_group_members.cpt, prefs_group_members.cpt.metadata, prefs_group_members_add.cpy, prefs_group_members_add.cpy.metadata, prefs_group_members_delete.cpy, prefs_group_members_delete.cpy.metadata. These are now handled by @@usergroup-groupmembership in plone.app.controlpanel [esteele]
  • In the tests, patch the MockMailHost to give it a secureSend method, just like we already patch the real MailHost. [maurits]
  • Make QuickInstallerTool.upgradeProduct() able to handle upgradeSteps directive. Closes http://dev.plone.org/plone/ticket/9455 [cah190]
  • Update jquery.js to use jquery-1.4.min.js. The change is in Plone3rdParty/branches/4.0/skins/plone_3rdParty [smcmahon]
  • Remove explicit iefixes (css and js) from the main_template, which will be pulled now from the ResourceRegistries, using the conditionalcomments property. Refs http://dev.plone.org/plone/ticket/9278. [dukebody]
  • Move iefixes.js to the ploneclassic.theme package, since we agreed upon that every theme should be responsible of its own fixes for IE. Refs http://dev.plone.org/plone/ticket/9278. [dukebody]
  • Make global_cache_settings responsible for deciding to switch on gzip compression instead of doing it in the enableHTTPCompression script. This avoids another costly Python script call. [hannosch]
  • Avoid the test function in the main_template. It doesn't exist in view page template files. [hannosch]
  • Avoid the getSectionFromURL method completely and merge functionality into the bodyClass method. [hannosch]
  • Display logoIcon.png instead of favicon.ico on the Zope root overview screen, for compatibility with IE which refuses to render X-ICON format images in the document body. [davisagli]
  • Avoid yet another mindless Python script and deprecate renderBase. [hannosch]
  • Simplify the charset handling, by moving the actual setting into the global_cache_headers macro. [hannosch]
  • Replaced the getSectionFromURL Python script with a view method. [hannosch]
  • Deprecated the computeRelatedItems script in favor of a method on the related items viewlet. [hannosch]
  • Hide plonetheme.classic from the list of uninstallable products to reduce confusion, as at this point it can't be uninstalled without breaking sunburst as well when the Quick Installer unregisters its CSS. [davisagli]
  • Altered table of contents javascript so that comments are not displayed. Refs. #8621. [dbfrombrc]
  • Added back INavigationRoot to CMFPlone.browsers. We need to provide an upgrade step for persistent marker interfaces before removing it. This refs http://dev.plone.org/plone/ticket/10072. [hannosch]
  • Updated markup of document_view and event_view to follow conventions in main_template. References https://dev.plone.org/plone/ticket/9981 [spliter]
  • Just a markup polishing - tags don't need explicit "metal" for defining slots. [spliter]
  • plone.belowcontent should not replace div#viewlet-below-content but rather add content into it [spliter]
  • Moves plone.abovecontent and plone.belowcontent viewlet managers actually above and below content respectively. Closes http://dev.plone.org/plone/ticket/10081 [spliter]
  • Put the preferred markup for content area in main_template. References #9981 [spliter]
  • Remove prefs_group_modify.cpy as we no longer use it. Adjust tests accordingly. [esteele]
  • Rework the prefs_group_details form to properly redirect back to the new @@usergroup-groupprefs page when creating a new groups, and postback to itself when modifying existing groups. [esteele]
  • Add popup for add group form. [smcmahon]
  • Pass group title and description through to the editGroups request, to ensure the those properties on the groups are updated. Allows the display of titles in @@usergroup-groupprefs Closes http://dev.plone.org/plone/ticket/7277 Closes http://dev.plone.org/plone/ticket/9828 [esteele, erikrose]
  • User-add dialog will no longer hide errors (e.g., inability to mail). fixes http://dev.plone.org/plone/ticket/9964 [smcmahon]
  • Changed noform action for user add ajax overlay form to "reload" to fix http://dev.plone.org/plone/ticket/9957 [smcmahon]
  • Changed login form overlay handling to deal with the need for a redirect if logging in from pwreset_finish. Closes http://dev.plone.org/plone/ticket/5548 [smcmahon]
  • Changed the Add Plone site link in the ZMI to use the basic form. Too many regular users are still using the ZMI. [hannosch]
  • Fix template errors in author_feedback_template.pt which prevented author feedback from being sent. Closes http://dev.plone.org/plone/ticket/9730 [esteele]
  • Update prefs_user_details.cpt and prefs_user_memberships.cpt templates to fit the current styling of other configuration screens. Closes http://dev.plone.org/plone/ticket/9660 [esteele]
  • Avoid leading spaces in the class attribute of the body element. Refs http://dev.plone.org/plone/ticket/9489. [dukebody]
  • Removed explicit macros calls for related items from templates. Closes http://dev.plone.org/plone/ticket/9985 [spliter]
  • Deprecated document_relateditems.pt template - we are using viewlet instead. Refs http://dev.plone.org/plone/ticket/9985 [spliter]
  • Introduced order of viewlets for plone.belowcontentbody viewlet manager. Refs http://dev.plone.org/plone/ticket/9985 [spliter]
  • No longer show the Send this action by default. This refs http://dev.plone.org/plone/ticket/8800. [hannosch]
  • Adjust login overlay position and width. Closes http://dev.plone.org/plone/ticket/9869. [dukebody]
  • Adjust wording for user group membership removal. This fixes http://dev.plone.org/plone/ticket/9961. [dukebody]
  • Make the ISiteRoot a INavigationRoot by default. This simplifies registering many views aimed at the nav root. [mj]

New in Plone CMS 3.3.4 (Jan 14, 2010)

  • Avoid leading spaces in the class attribute of the body element. Refs http://dev.plone.org/plone/ticket/9489. [dukebody]
  • member_search_results display login names only if the user has "List portal members" permission. Return "not allowed" message and empty search results if not. This fixes http://dev.plone.org/plone/ticket/9923 [khink]
  • In the MockMailHostTestCase register and unregister the mock mail host as an IMailHost. Fixes a test failure in PasswordResetTool (once I let that use this test case). Change taken over from Plone trunk. [maurits]
  • Do not display the author contact form when the author has no email (for example for openid users). Refs http://dev.plone.org/plone/ticket/8707 [maurits]

New in Plone CMS 3.3.3 (Dec 9, 2009)

  • Added tal condition to check if the user object is None when rendering pref_group_members.cpt since group assignments are not deleted when a user is deleted. This addresses http://dev.plone.org/plone/ticket/9885 [vangheem]
  • Increased maximum length of the sortable_title index from 30 to 40 characters to ensure titles containing an ISO date can be sorted. [hannosch]
  • Added scroll to anchor tag in toc.js because Firefox was not bringing a user to any anchor tags when a link was directly given to one. This closes http://dev.plone.org/plone/ticket/9364 [vangheem]
  • Fixed untranslatable info message "The username you entered could not be found" and other messages in RegistrationTool.py. This closes http://dev.plone.org/plone/ticket/9744 [vincentfretin]
  • Configlets title can now use a different domain than plone. This closes http://dev.plone.org/plone/ticket/9738 [vincentfretin]
  • Fixed "Manage portlets" not translated when there is no portlet visible. This closes http://dev.plone.org/plone/ticket/8454 [vincentfretin]
  • Better validation and error messages for group create/edit form. Fixes http://dev.plone.org/plone/ticket/9667 [lzdych]
  • plone.css will now output stylesheets with link rendering Fixes http://dev.plone.org/plone/ticket/9366
  • sitemap template now displays objects without a value for Title applied patch from crchemist Fixes http://dev.plone.org/plone/ticket/9775 [aaronv]
  • Removed option "Send a mail with the password" from the join form, as we never send an email with the password. Refs http://dev.plone.org/plone/ticket/9670 [maurits,vincentpretre,jladage]
  • Buttons on discussion form are now hidden from print view. Fixes http://dev.plone.org/plone/ticket/8460 [lzdych]
  • Added missing migration step to update permissions on "legacy" workflows for new roles. Thanks to Vitaliy Podoba for the patch. This fixes http://dev.plone.org/plone/ticket/8905 [amleczko]

New in Plone CMS 4.0 Alpha 1 (Nov 20, 2009)

  • Moved Image Handling control panel into the main Plone category. It's not an add-on anymore. [hannosch]
  • Clarified the default labels shown on the site setup overview page. [hannosch]
  • Adjust tests to new Archetypes behavior, which respects the default language of the portal_languages tool. [hannosch]
  • Adjust the _createObjectByType functions in utils and FactoryTool to use the _constructInstance method of the FTI instead of duplicating pieces of its logic. [davisagli]
  • By default hide the "Subfolders" tab on collections. They don't behave in a way understandable to users. Existing sites aren't changed. [hannosch]
  • Converted plone_javascript_variables.js to a browser page. Dynamically generating JS using a page template was too cumbersome. This also avoids the special escape_for_js handling of the translate script. [hannosch]
  • "Relevance" was not internationalized in search_form.pt. This closes http://dev.plone.org/plone/ticket/9747 [vincentfretin]
  • "Your Plone site is up to date" was not internationalized in plone-upgrade.pt. This closes http://dev.plone.org/plone/ticket/9746 [vincentfretin]
  • "Preferences" link should go directly to the personal prefs, the memberprefs panel is an unnecessary abstraction here. Add-on products can easily add new links to the personal menu now, so that's the pattern we want to encourage.
  • Removed the login portlet from the default setup now that the login link opens an inline window. [limi]
  • Fixed a DYNAMIC_CONTENT in site_feedback_template.pt [vincentfretin]
  • Make sure the 'Portlets: View dashboard' permission is set for Members. [davisagli]
  • Make sure the mock MailHost used in tests is registered as a local utility so that it can be found via getToolByName. [davisagli]
  • Moved all CSS styles to plonetheme.classic package. plonetheme.sunburst is now default theme, both are installed by default, classic theme may be uninstalled, sunburst theme can't be uninstalled. [limi, naro]
  • Added site_encoding and bodyClass methods to the @@plone view. These should simplify main template a bit. [naro]
  • Avoid AttributeError while getting the CMF version for the plone_control_panel when enable-product-installation is off in zope.conf. [maurits]
  • Fixed bad internationalized messages in logged_out.pt [vincentfretin]
  • Changed default message for label_show_all msgid from "Show all..." to "Show all items" in livesearch_reply.py to be the same as in folder_contents view which use the same msgid. [vincentfretin]
  • Use the new pas_member view in the overview templates. This avoids getting the member info for each item in the listing from the PAS internals. [hannosch]
  • registerNotify and mailPassword now send properly encoded emails. Fixes http://dev.plone.org/old/plone/ticket/9659 [alecm]
  • Deprecated register.py and join_form.cpt. This functionality has been moved to plone.app.users. [esteele]
  • Changed listActions on the workflow tool to no longer call the listGlobalActions method on every installed workflow. This method would internally call and calculate the worklist (reviewer_queue) for every workflow. The listActions method is called by the workflow menu to show the state drop down menu on almost all pages. [hannosch]
  • Deprecated the selectedTabs script in favor of a method on the GlobalSectionsViewlet. [hannosch]
  • Micro-optimize the CatalogNavigationTabs view. [hannosch]
  • Added a more prominent upgrade warning to the top of the ZMI screen, instead of the old tiny note on the portal migration tool. [hannosch]
  • Added a new @@plone-upgrade view, which replaces the old migration tool DTML ZMI screens. [hannosch]
  • Added a simple advanced mode to the add site form. If advanced is passed as a query argument to the @@plone-addsite more options are available. The button in the ZMI uses the advanced mode by default. Currently the choice of omitting the default content and deselecting any of the default extension profiles are limited to the advanced mode. [hannosch]
  • Expose the site language in the add site form and refactor the language guessing based on the browser language into that view. The addPloneSite function takes an explicit argument for the language now. [hannosch]
  • Hardcode utf-8 for UnicodeSplitter, since Hanno says that's all we can accept and there's no way to use getSiteEncoding from the splitter. [alecm]
  • Added option to skip the creation of the default example content in the new add site form. Grouped the add-ons selection via a fieldset. [hannosch]
  • Refactored the old factory dispatcher / addPloneSiteForm to use a modern browser page instead. [hannosch]
  • Removed the special default page and translation handling. LinguaPlone uses a content language negotiator per default instead. [hannosch]
  • Replaced highlightsearchterms.js with the Plone trunk jquery.highlightsearchterms.js plugin. This removes the need to add searchterm= query parameters to search.pt results. Refs. http://dev.plone.org/plone/ticket/8770 [mj]
  • Add a link to log out from the logged_out template if logged in as a Zope user via basic HTTP Authentication and the standard logout failed. [davisagli]
  • Removed the cut/copy/paste icons from the action menu in new sites, as they just add noise + more HTTP requests. [limi]
  • Moved happytalk in site_feedback_template.pt and author_feedback_template.pt to bottom of emails, per http://dev.plone.org/plone/ticket/7001 [jonstahl]
  • Added precedence: bulk header to several PasswordReset's mail_password_template, per http://dev.plone.org/plone/ticket/7000 - still haven't added this header to CMFPlone templates. [jonstahl]
  • Added the upgrade warning to the main control panel screen. This is the same as found on the new overview page. [hannosch]
  • Changed the new default overview page to be a normal browser page and made it aware of multiple Plone sites in the root or in ZODB mountpoints. [hannosch, davisagli]
  • Overwrote the Zope quick start page, with a more helpful Plone specific version as already found in the unified installer. [hannosch]
  • Turned the new add Plone site button in the ZMI into a link. This allows us to get out of the frameset to the top. [hannosch]
  • Add jQueryTools integration, using plone.app.jquerytools. [smcmahon]
  • Updated our add site ZMI screen. [hannosch]
  • Changed search.pt (plone_forms) and rss_template.pt (plone_templates) so they display fullname instead of creator. [ralphjacobs]
  • Cleaned up old an unused scripts to edit the plone site object itself. This is done via the site control panel now. [hannosch]
  • Hide the TinyMCE profiles hidden from the Plone site add form. [robgietema]
  • Added 'Use site default' to the wysiwyg_editor field in the Personal Preferences view. [robgietema]
  • Set default value of wysiwyg_editor to blank (use site default). [robgietema]
  • Added default editor property to the site properties. [robgietema]
  • Added TinyMCE and set TinyMCE as default visual editor. [robgietema]
  • Removed getProductInfo method from the migration tool. It wasn't used anymore and depended on the persistent product registry. [hannosch]
  • Inlined the enableSyndication function into importFinalSteps in setuphandlers. Avoid an unneeded catalog search. [hannosch]
  • Simplified portal creation code and got rid of the PloneGenerator class in setuphandlers. It was a useless closure for independent functions. [hannosch]
  • Removed the plone-site import step and stop overriding the componentregistry step. The portal object directly implements the IObjectManagerSite interface, so we don't need to activate it as a site manager in an extra step anymore. [hannosch]
  • Updated and added various ZMI-visible tool titles. [hannosch]
  • Removed the plone-archetypes import step. This is handled via a normal GenericSetup dependency in metadata.xml. [hannosch]
  • Merged the plone_various import step into the plone-final step and install more packages directly by their profiles. [hannosch]
  • Removed the zserverPatch. There's not many people running ZServer as the front-end web server anymore, so this isn't particular useful. [hannosch]
  • Fixed the default portlet blacklisting for the Members folder. [hannosch]
  • Replaced Products.ATReferenceBrowserWidget with archetypes.referencebrowserwidget. This is PLIP 9258 http://dev.plone.org/plone/ticket/9258 [tom_gross]
  • Clarified help text for extension profiles on the add site form. [davisagli]
  • Added a mechanism for specifying profiles that are selected by default on the add site form. This should be kept in sync with PloneTestCase's list of default extension profiles. [davisagli]
  • Hide the plonetheme.sunburst uninstall profile from the add site form. [davisagli]
  • Default to plonetheme.sunburst for new sites. [esteele, davisagli]
  • Allow email addresses as login name, with a switch on the security panel. This is plip 9214: Refs http://dev.plone.org/plone/ticket/9214. [maurits]
  • Extend the language specific default configuration to set a reasonable first day of week on the calendar tool. [hannosch]
  • Stop pretending to use GenericSetup's content import. As a last item we now create the translated front-page purely in imperative code. As a bonus we moved the body text of the front-page to a page template, so i18ndude can automatically extract it. [hannosch]
  • Create and configure Members folder purely in setupPortalContent. [hannosch]
  • Converted import and export steps XML files to use ZCML registrations. [hannosch]
  • Made sure to have a complete list of non-installable profiles. No longer apply the filter to base profiles and ignore our default profile. This works in combination with the corresponding changes in quick installer to reduce portal creation time. [hannosch]
  • Make use of the new authenticated flag for ResourceRegistries entries instead of specifying verbose condition expressions. [hannosch]
  • "Categories" are now "Tags", in line with common usage and terminology. [limi]
  • Changed workflow actor variable from user/getUserName to user/getId. http://dev.plone.org/plone/ticket/7398. [hannosch]
  • Removed the AT graphviz references action from all content types. [davisagli]
  • Finished switching tool and action icons to use PNG format. [davisagli]
  • Exclude some of the CMFDefault functionality, that isn't used or usable inside Plone sites. The CMFDefault types are no longer supported. [hannosch]
  • Move prefs_users_overview and prefs_groups_overview pages to plone.app.controlpanel (@@usergroup-userprefs and @@usergroup-groupprefs respectively). [esteele]
  • Adjust to CMF's splitting of CMFCatalogAware into separate CatalogAware, WorkflowAware, and OpaqueItemManager mixins. [davisagli]
  • Added zope.app.locales dependency, some strings are in zope domain such as 'Invalid value' and '(no value)' found in portlet EditForm. [vincentfretin]
  • Moved membershipRolemapping.dtml and portrait_fix.dtml to PlonePAS. [davisagli]
  • Added icon_expr property to the Plone control panel tool actions, and switched to registering configlet icons here instead of in the action icons tool. [davisagli]
  • Moved the diff tool registration to this package, so it can still be a tool for Plone 4. [davisagli]
  • Use the new zope.ramcache in favor of zope.app.cache. [hannosch]
  • Removed GroupUserFolder skin layers. [davisagli]
  • Silenced the deprecation warning about old-style actions from CMFCore's ActionProviderBase when listing configlets with the control panel tool. [davisagli]
  • Added the _IMREALLYPLONE4 hint to factory.py for PloneTestCase to use. [hannosch]
  • Removed the calendar and review portlets from the standard global assignments. The review list is better put onto a personal dashboard and the calendar is exceptionally slow and rather user unfriendly. The news and events portlets are a better fit to show-case the portlets system. [hannosch]
  • Include the overrides.zcml from Products.PlacelessTranslationService to actually make PTS' language negotiator available to the zope.i18n machinery. [hannosch]
  • Got rid of the ToolNames indirection and declared the meta_types directly in the relevant tool class themselves. [hannosch]
  • Moved ATCT specific exportimport code into the ATCT package itself. [hannosch]
  • Made sure the plone.indexer registration works by introducing a more specific IPloneCatalogTool marker interface and registering the indexable object wrapper for this. [optilude]
  • Added a restricted version of the opaqueItems method for CMFCatalogAware. This takes the idea of experimental.opaquespeedup one step further. [hannosch]
  • Actually made the types tool action lookup optimization effective. Slightly optimized the add items drop-down menu. [hannosch]
  • Removed the ResourceRegistries skin layer. It only contained test code. [hannosch]
  • Make use of the new IContainer API of object managers and replace objectIds and objectValues calls. [hannosch]
  • Finally removed the interfacePatch for the IContainer interface of OFS.ObjectManager after it has been merged upstream. [hannosch]
  • Removed CMFTopic from our dependency list, it turns out that we aren't actually using any of it. [hannosch]
  • Added proper deprecation warnings for the IBrowserDefault, IDynamicViewTypeInformation and ISelectableBrowserDefault interfaces, who has always come from Products.CMFDynamicViewFTI. [hannosch]
  • Use the replace_local_role_manager method from borg.localrole. [hannosch]
  • Deprecate our own IOrderedContainer interface in favor of the original one from OFS. [hannosch]
  • Avoid dependency on the zope.app.zapi package. [hannosch]
  • Declare package dependencies and fixed deprecation warnings for use of Globals. [hannosch]
  • No longer depend on the PageTemplates.GlobalTranslationService but use zope.i18n directly. [hannosch]
  • Merged in more performance optimizations from experimental.contentcreation. We don't restrict the permissions for the temporary folder anymore, but only care about the permissions of the actual target folder. [hannosch]
  • Use the new icon_expr for specifying icons for content types instead. [hannosch]
  • Prefer path expressions over Python expressions for persistent expressions. [hannosch]
  • Fixed the content_status_history form to include the required content table. The old_folder_contents template is gone. [hannosch]
  • Fixed the browserDefault tests to use actual traversal to look up views for content items instead of relying on Acquisition. [hannosch]
  • Moved the scale_image function from utils into the PlonePAS.utils module, as PlonePAS is the only user of it. [hannosch]
  • The remaining functionality from GroupUserFolder has been merged into the PlonePAS package. GroupUserFolder is no longer required. [hannosch]
  • Removed the groups, groupdata, membership and memberdata tools from this package. All code is now in a central place inside PlonePAS. The persistent tools have been from the PlonePAS package since Plone 2.5. [hannosch]
  • Replaced has_key method calls with containment checks via in. [hannosch]
  • Replaced a direct interface invocation with a queryAdapter call, to avoid an internal getattr call and make the pattern clearer. [hannosch]
  • Replaced here with context in all templates and scripts. The old spelling is still supported, but we need to settle on one to avoid confusion. [hannosch]
  • Optimized the types tool action lookup further to avoid Acquisition lookups. [hannosch]
  • Simplified the normalizeString method. [hannosch]
  • Optimized the action lookup code and implemented category restriction for the types tool in the same way it was available for the actions tool. [hannosch]
  • Removed remaining sys.modules hacks to provide the browser.ploneview as browser.plone. [hannosch]
  • Removed last unused external methods and PloneInitialize code. To my knowledge the Windows installer doesn't use this code anymore. [hannosch]
  • Write the doctype definition in the main_template in a way that does not claim to be valid XML, as the main_template really isn't. [hannosch]
  • Worked around sys._getframe call in mark_view. [malthe, hannosch]
  • Removed macro slot for changing the document type; this was not correct XML and should this flexibility be required, it's recommended to customize main_template.pt. [malthe]
  • Turned deprecated string 'Unauthorized' exceptions into real exceptions. [davisagli]
  • Removed module alias for the ploneview formerly named plone. [hannosch]
  • Clarified content language versus response language handling. [hannosch]
  • Removed unmaintained and unused Favorite content type. [hannosch]
  • Removed our own home-grown dependency checking code. [hannosch]
  • Exposed option to honour exclude from navigation even in subfolders from navtree_preferences. Request from theming sprinter at ploneconf2008. [MatthewWilkes]
  • Made the fieldset tabbing code faster on startup (especially for IE) by constructing a big string and creating the HTML elements in one bunch instead of using DOM functions to add them step by step. [fschulze]
  • Added uniqueItemIndex as a method to the plone view. [hannosch]
  • Added back global_defines.pt as a template including the (empty) macro definition. This allows main templates to be compatible with both Plone 3.x and 4.0 at the same time. [hannosch]
  • Removed global_defines.pt and the globalize-hack. Templates now bring in their tool and function dependency using the standard utility views or via normal Acquisition of tools. [malthe, hannosch]
  • Fixed test for editing language fields. This refs http://dev.plone.org/plone/ticket/8342. [hannosch]
  • Removed deprecated context parameter in getDefaultPage and isDefaultPage in utils.py. [maurits]
  • Made sure the export order of the factory tool GS step is consistent. This closes http://dev.plone.org/plone/ticket/7892. [hannosch]
  • Replaced lock_icon with smaller version with one third of the size. [hannosch]
  • Removed backwards-compatibility code in calendar_formfields.js introduced in Plone 3.1.4. Any date-time picker not based on calendar_macros.pt using the old-style (no plone.jscalendar namespace) methods will no longer work until adjusted. [mj]
  • Don't show relevance information of one percent in the search form, since sort_on searches will always show this for all entries This closes http://dev.plone.org/plone/ticket/4325 [hannosch]
  • Removed duplicated isMemberIdAllowed method from registration tool. [hannosch]
  • Fixed mailto link in event view and enhanced the spam protect script to allow setting css ids on the generated anchor tag. This closes http://dev.plone.org/plone/ticket/8219 [hannosch]
  • Fixed contact form to be usable for authenticated users which have no email address stored in their member data. This closes http://dev.plone.org/plone/ticket/5766 [hannosch]
  • Avoid empty tags in the contact form. This closes http://dev.plone.org/plone/ticket/8182 [hannosch]
  • Avoid an empty div in login_form. This closes http://dev.plone.org/plone/ticket/8192 [hannosch]
  • Avoid an empty dd in recently modified.pt. This closes http://dev.plone.org/plone/ticket/8186 [hannosch]
  • Avoid an empty span in folder_summary_view. This closes http://dev.plone.org/plone/ticket/8181 [hannosch]
  • Changed wording in personalize form to remove reference to external editor icon and add a note about ZopeEditManager. This closes http://dev.plone.org/plone/ticket/7390 [hannosch]
  • Changed webstats_js in portal properties to a text field. This refs http://dev.plone.org/plone/ticket/7781 [hannosch]
  • Added option to the error log control panel to search for an error log entry by number, since the number is the only thing that is exposed to normal users. This closes http://dev.plone.org/plone/ticket/7234 [hannosch]
  • Changed title of collections control panel to plural form. This closes http://dev.plone.org/plone/ticket/8096 [hannosch]
  • Include link to the plone.org upgrade manual from the migration tool inside the ZMI. This closes http://dev.plone.org/plone/ticket/8075 [hannosch]
  • Clarify help text in content_status_history. This closes http://dev.plone.org/plone/ticket/8218 [hannosch]
  • Let default RSS list publication date, not modified date and include the body text. This closes http://dev.plone.org/plone/ticket/7952 [hannosch]
  • Updated the check_id script to disallowed content by the name of properties. This closes http://dev.plone.org/plone/ticket/6005 [hannosch]
  • Fixed invalid markup in membershipRolemapping.dtml. This closes http://dev.plone.org/plone/ticket/6222 [hannosch]
  • Removed long unused getObjPositionInParent.py script which wasn't functional at all anymore, since it used Zope 2 interfaces. Also simplified the getObjPositionInParent function in the CatalogTool. This closes http://dev.plone.org/plone/ticket/6081 [hannosch]
  • Removed getActionObject call from createObject script. It was a private method and would always fail. This closes http://dev.plone.org/plone/ticket/7172 [hannosch]
  • Removed testing of sendto action visibilty from sendto.cpy. There's a permission to use to restrict sending mail. This closes http://dev.plone.org/plone/ticket/5377 [hannosch]
  • Disable external editor icon for structural folders. This closes http://dev.plone.org/plone/ticket/6871 [hannosch]
  • Updated the check_id script to disallowed content by the name of zip or plone since this shadows the views by those names. This closes http://dev.plone.org/plone/ticket/6105 [hannosch]
  • Purged old Zope 2 Interface interfaces for Zope 2.12 compatibility. [elro]
  • Make use of upgrade steps with a source '*' version and an explicit destination, to register the 'enable site' and 'register tools as utilities' only once. [hannosch]
  • Added support for upgrade step groups to the migration tool and started exposing the individual upgrade methods as steps. [hannosch]
  • Changed the way messages are handled during migration. We don't pass an out list around anymore, but use the logging framework. [hannosch]
  • Replaced our own migration step registration by using GenericSetup steps directly. Changed the migration tool to integrate with GS instead. Added BBB code to read the instance version from the migration tool if the last profile version isn't set yet inside the GS tool. [hannosch]
  • Exposed all our migration steps as GenericSetup upgrade steps. [hannosch]
  • Hide the deprecation warning about the moved ITranslatable interface for our own code. [hannosch]
  • Use png icons instead of gif icons since they are much more flexible for styling. [dannyb, wichert]
  • Fixed the coreVersions method in MigrationTool to return strings and not bound methods for the Zope and Python version. [hannosch]
  • Fixed off-by-two error in transaction_note. This closes http://dev.plone.org/plone/ticket/7610 [hannosch]
  • Moved all icons for real actions from the action icons tool to the actions themselves. [hannosch]
  • Changed PloneTool's getIconFor method to prefer the icon expression set on the action itself instead of looking it up in the action icons tool. This finally makes use of the new icon expression on actions introduced in CMF 2.1. [hannosch]
  • Avoid unneeded line breaks in TAL output, by effectively disabling the internal beautified wrapping inside tags. This reduces the HTML output by 5% - 10% for normal Plone pages. [hannosch]
  • Memoize the installed products and packages in App.FactoryDispatcher for the duration of the process runtime. [hannosch]
  • Hiding page history, page navigation, and busy icon (spinner) in print.css Related to http://dev.plone.org/plone/ticket/7433 http://dev.plone.org/plone/ticket/7402 [siebo]
  • Updated webdav_enabled method in utils.py to check for webdav.interfaces.IWriteLock interface in addition to the old Zope2 interface. [hannosch]
  • Use a FauxArchetypeTool which returns no catalogs for CatalogMultiplex aware objects in portal factory. This prevents most temporary objects from being indexed in the first place. [tesdal, hannosch]
  • Move our GenericSetup import step registrations to zcml. [wichert]
  • Added a 'do-not-use' warning to the ZMI security screen for Plone content objects. Sharing tab or workflows are what you are looking for. [hannosch]
  • Moved interface declarations for factorytool from ZCML to the class. [hannosch]
  • Added BBB code for ITranslatable, which is now part of LinguaPlone. [hannosch]
  • Added an explicit button to add a new Plone site to the ZMI for faster access. If you have installed Plone this is probably what you want to add most of the time. The button only shows up in the root folder. [hannosch]
  • Deprecate the ITranslatable interface. This interface is LinguaPlone- specific and has thus been moved to LinguaPlone. [wichert]
  • Removed tests for isRTL method of PTS. The method was deprecated in the last release and is gone now. [hannosch]
  • Removed PTSTranslationDomain utilities. PTS exposes all translation files as pure Zope3 translation utilities now, so these aren't needed anymore. [hannosch]
  • Replaced our FasterStringIO implementation by one based on collections.deque, which is a faster than StringIO. [hannosch]
  • Removed more deprecated code, adjusted some comments. [hannosch]
  • Tweaked sortable_title method to give reasonable results for titles with many numbers in them, like '1.2.3 document'. [hannosch]
  • Moved CMF skins registration into configure.zcml, removed security declaration for no-longer extant listPolicies of the portal. [hannosch]
  • Refactored initial content creation into a separate extension profile, thus making it possible to skip it. This refs http://dev.plone.org/plone/ticket/6948 [hannosch]
  • Removed some outdated Extension scripts. [hannosch]
  • Removed deprecated tool related Zope2 interfaces. Extended the deprecation period for ConstrainTypes and NonStructuralFolder as these are still used in Plone Core. [hannosch]
  • Removed work-around code for insertion of non-unicode non-ascii non-utf8 encoded text in TAL. This will produce an error now. Always use Unicode when using data in page templates and TAL. [hannosch]
  • Removed lots of deprecated code and zcml registrations. [hannosch]
  • Fixed ticket #9420 DC.date.valid_range not emitted if only Publishing Date is set. [jaroel]

New in Plone CMS 3.3.2 (Nov 4, 2009)

  • Shift "Item type" options under the advanced search page to the right when viewed for RTL scripts. This fixes http://dev.plone.org/plone/ticket/9666 [emanlove]
  • Make sure the folder_listing, folder_summary_view, and folder_tabular_view call getText with a full acquisition chain (but make the conditional for whether to display text test for the existence of getText on the aq_base'd context to avoid accidental acquisition). This fixes http://dev.plone.org/plone/ticket/8463 [davisagli]
  • Use PlonePAS methods for adding and removing members from groups, as well as for listing group membership. These methods are PAS aware and thus work correctly with PAS plugins other than the GroupUserFolder. Thanks to Giovanni Toffoli for the initial patch. Fixes http://dev.plone.org/plone/ticket/9163 [mj]
  • Fix linkintegrity-related issue regarding missing undo log entries after removing content via the "delete" action. This fixes http://dev.plone.org/plone/ticket/7784 [witsch]
  • Show template id or view name in . There was template id only before. http://dev.plone.org/plone/ticket/9111 [naro]
  • Check AddPortalContent permission before calling invokeFactory from FactoryTool. http://dev.plone.org/plone/ticket/8748 [naro]
  • Added helper methods to the i18nl10n method, to change the default date and time formats used by zope.i18n.locales. This makes it easier to use a 24 hour clock in the date/time widgets for English speakers. [hannosch]
  • Removed msgids in portlets.xml. There is no support for msgids in the import of portlets.xml implementation. This allow to extract translatable strings with i18ndude. This closes http://dev.plone.org/plone/ticket/9631 [vincentfretin]
  • Fixed some duplicated msgids with different defaults. There is no new strings to translate. See http://dev.plone.org/plone/ticket/9633 [vincentfretin]
  • Make the external_editor link on OS X use the .zem extension. Fixes http://dev.plone.org/plone/ticket/7291 [optilude]
  • Minor or trivial changes and fixes to many templates for obtain code that is also XHTML Strict See http://dev.plone.org/plone/ticket/4379 [keul]
  • Fixed folder_constraintypes_form.cpt template; was XHTML invalid when showing portal type with whitespaces (like "News Item") [keul]
  • Fixed handling of URL fragment identifiers in form-tabbing. This closes http://dev.plone.org/plone/ticket/9500 [mj]

New in Plone CMS 3.3.1 (Sep 10, 2009)

  • Defined the portal_url variable to context/@@plone_portal_state/navigation_root_url in author.cpt and personalize_form.cpt. Plone 4 and trunk are not impacted. This closes http://dev.plone.org/plone/ticket/9453 [vincentfretin]
  • Fix ITranslatable to use the canonical interface from LinguaPlone or fall back to a Zope3-style interface. [hannosch, witsch]
  • Fixed a bug which deletes an object in the acquisition path instead of the original object in case of a catalog inconsistency. This closes #9046. [pilz]

New in Plone CMS 3.3 (Aug 19, 2009)

  • Fix broken IE6 CSS support. [spliter]

New in Plone CMS 3.3 RC5 (Aug 2, 2009)

  • Remove trailing space from history_compare_with_previous_inline.png.metadata filename. This fixes http://dev.plone.org/old/plone/ticket/9367 [wichert].
  • Modified the history viewlet style so actions are green without background and border. Messages are on a blue background. [vincentfretin]

New in Plone CMS 3.3 RC4 (Jul 7, 2009)

  • Added migration step to fix missing cooked expressions in portal_css, which could mess up the site UI. Fix by Tom Gross. Fixes http://dev.plone.org/plone/ticket/9141 [maurits]
  • Upgrade to jQuery 1.3.2. This fixes multiple bugs on various browsers, allows use of more jQuery plugins (particularly current versions of jQuery UI). The only BBB problem I am aware of is use of the @ in attribute selectors (as in a[@target=_blank]), which has been deprecated for a long time and is no longer supported in jQuery 1.3. [wichert]
  • Make the BBB support for registerIndexableAttribute() more robust by only registering the indexer adapters when ZCML is loaded. This should fix issues with functional tests written for older versions of Plone. [optilude]
  • Don't rely on a Zope 2 style interface in the getObjPositionInParent indexer - accept the proper Zope 3 interface for IOrderedContainer as well. [optilude]
  • When viewing the prefs_install_products_form, do not do inline migration for profiles that were previously unknown as this may hide valid upgrade steps in some cases. [maurits]

New in Plone CMS 3.2.3 (Jun 22, 2009)

  • Added failing tests for subtopic and the ATFriendlyDateCriteria used for past events. The fix is added to Products.ATContentTypes. http://dev.plone.org/plone/ticket/8827 [pelle]
  • Make the Groups Overview search post back to the same page, since it displays a lot more useful information than the prefs_user_group_search, and fits more with the way the Users Overview works. Include a "Show all" button as well. [esteele]
  • Convert event-registration.js to use jQuery and remove it from new sites. This closes http://dev.plone.org/ticket/8097 [mj]

New in Plone CMS 3.3 RC3 (May 23, 2009)

  • Hide the NuPlone uninstall profile from the list of available extensions at Plone site creation. [wichert]
  • mark_special_links.js: Fix jQuery syntax for element wrapping. This closes http://dev.plone.org/plone/ticket/8200 [dunlapm]
  • form_tabbing.js: Allow for selection of a fieldset tab other than the default if a url hash is in the form of #fieldset-[fieldsetname]. This allows for graceful fallback if JavaScript is disabled. [dunlapm]
  • Show old and new profile versions for products with profile, this closes http://dev.plone.org/plone/ticket/9172 [vincentfretin]
  • Removed width from eventDetails CSS class, this closes http://dev.plone.org/plone/ticket/8933 [vincentfretin]
  • Splitted label_event_byline into two in folder_summary_view.pt like in folder_listing.pt fixed in Plone 3.3rc1, this closes http://dev.plone.org/plone/ticket/8358 [vincentfretin]
  • Removed spurious comma from unlockOnFormUnload.js which was causing Javascript errors in IE. This closes http://dev.plone.org/plone/ticket/9157 [davisagli]
  • Splitted description_no_account msgid into two, heading_new_user msgid added. [vincentfretin]
  • Added Internet Explorer 8 support. We only load the workaround CSS file for IE7 and earlier now, Internet Explorer 8 parses the '' header that forces it into standards mode on both intranets and public internet sites. [limi]
  • author.cpt should honour allowAnonymousViewAbout in the same way as document_byline, this closes http://dev.plone.org/old/plone/ticket/8560 [elro]

New in Plone CMS 3.3 RC2 (Apr 5, 2009)

  • Added an explicit return statement in the upgrade code for products without a GS profile. Thx to Vincent Fretin for the code review. [hannosch]
  • Fixing permissions typo in object_rename button, this closes http://dev.plone.org/plone/ticket/9060 [siebo]

New in Plone CMS 3.3 RC1 (Mar 31, 2009)

  • New favicon.ico that is in line with the new branding. [limi]
  • author.pt: Fixed the #region-content mess, replaced modification date with created date (as that's what the table says it's listing), reduced to 5 items instead of 30 tables with 5 items each, made the table vertical. [limi]
  • batch_macros.pt: Added "current" class to current item, removed the brackets, added ellipses. Moved comments to a tal section to stop them from showing up in the source. [limi]
  • default_error_message.pt: Turned apostrophes into real apostrophes. [limi]
  • join_form.pt: Removed unnecessary fieldset. [limi]
  • logged_out.pt: Removed duplicate "new account" section (it's actually located in the login form). [limi]
  • login_form.pt: Moved Forgot/New out of the fieldset, fixed wording + added headline. [limi]
  • main_template.pt: Moved #content to main template instead of offloading its responsibility to the individual templates. This makes it easier to avoid duplication and make it possible to use it with Deliverance and similar theming approaches. [limi]
  • personalize_form.pt: Cleaned up the #content mismatch. No more double tabs. [limi]
  • search_form.pt: Removed unnecessary fieldset, inserted "searchform" id on form to not get it filled in as id="search" automatically. [limi]
  • Updated the custom indexes in CatalogTool.py to no longer depend on the 'portal' keyword or kwargs, both of which are gone from plone.indexer. This is done in an effort to be forward-compatible with CMF 2.2. See the plone.indexer README for more details. [optilude]
  • Merged safe-upgrade-button branch. Instead of the removed Reinstall button in the Add/Remove products control panel, we now have an upgrade button for all products whose installation is driven by GenericSetup. This is based on GenericSetup upgrade steps. [hannosch]
  • Fixed msgid label_event_byline default message which contained dynamic content. Created a label_event_byline_without_location used when you don't specify location in an Event. [vincentfretin]
  • Updated the custom indexes in CatalogTool.py to no longer depend on the 'portal' keyword or kwargs, both of which are gone from plone.indexer. This is done in an effort to be forward-compatible with CMF 2.2. See the plone.indexer README for more details. [optilude]
  • Fixed the registerIndexableAttribute() backwards-compatibility shim to register named adapters. [optilude]
  • Re-added the 'getRemoteUrl' and 'link_remote' attributes of the navtree decorator, which were lost during the implementation of PLIP 126. Note that these attributes are deprecated and will not be available in Plone 4. Custom navigation templates using these attributes should simply link to the Link object, whose default view now takes care of redirecting based on the value of the global 'redirect_links' property. [davisagli]
  • Make the Groups Overview search post back to the same page, since it displays a lot more useful information than the prefs_user_group_search, and fits more with the way the Users Overview works. Include a "Show all" button as well. [esteele]

New in Plone CMS 3.3 Beta 1 (Mar 13, 2009)

  • Replace the workflow history portlet with a content history portlet for newly created sites. This implements PLIP 243. [wichert]
  • Changed most actions to now use the globals_view/navigationRootUrl. Updated the CMFCalendar tool override to allow the calendar portlet to allow passing in kwargs such as path. Fixed skin templates and scripts to use the @@plone_portal_state/navigation_root_url instead of portal_url. This implements http://plone.org/products/plone/roadmap/234 [calvinhp]
  • Removed CatalogTool.ExtensibleIndexableObjectWrapper in favour of the wrapper in plone.indexer, and made registerIndexableAttribute() a deprecated facade for registering an IIndexer adapter. See plone.indexer for more information about the correct (and more robust) way to register custom indexers. [optilude]
  • Removed the Reinstall button from the Add/Remove products control panel. Users would constantly mistake it as an upgrade mechanism, which Plone does not yet support in a structured way. [hannosch]
  • Added an option in the Site Settings configlet to disable TTW locking entirely. Also fixed a couple bugs with unlocking and made it so the lock gets refreshed as long as an editor is on the edit page. This implements http://plone.org/products/plone/roadmap/240
  • Added a 'redirect_links' site property and corresponding 'Redirect immediately to link target' setting in the types configlet (for the Link type only). The default view for the Link type has been changed to link_redirect_view.py from the plone_content skin layer, which redirects or falls back to the old link_view depending on the 'redirect_links' value. This implements http://plone.org/products/plone/roadmap/126 [davisagli]
  • "Mark external links" and "External links open in new window" were not working independently ('mark' had to be set for 'new window' to work) and marking could not be turned off at all (#7383). Fixed by having either one enable the js support and adding a new site property to control marking. Implemented so that new site property will be assumed false if missing and created on change if missing -- so no migration required. There is a matching change in plone.app.controlpanel. [smcmahon]
  • PLIP 238: Disable inline editing for new Plone sites. [wichert]

New in Plone CMS 3.2.2 (Mar 3, 2009)

  • Register 3.2 -> 3.2.1 migration step with the migration machinery. This fixes problems due to a missing site property for migrated sites. [matthewwilkes]
  • Fix the internalization of folder_rename status message http://dev.plone.org/plone/ticket/8750 [encolpe]

New in Plone CMS 3.2.1 (Feb 5, 2009)

  • Add dependency on Products.NuPlone to prevents sites who use NuPlone from breaking when upgrading from Plone 3.0.x or 3.1.x to 3.2 or later. [wichert]
  • Fix contact_info.cpt so it bases the appearance of the fullname and email fields on whether they are set in the current member's profile, rather than on whether the current user is anonymous or not. This closes http://dev.plone.org/plone/ticket/8526 [davisagli]
  • Update default frontpage to refer to Plone 3 instead of 3.0. [wichert]
  • Added time_only for use with toLocalizedTime so that event_view now localizes the start/end times if the start/end dates are the same. Added migration for 3.2 to 3.2.1 to add new property to the propery tool. Closes http://dev.plone.org/plone/ticket/8607 [jnelson, calvinhp]
  • Fixed links-plain issue on the front-page. This closes http://dev.plone.org/plone/ticket/6479. [cwainwright, calvinhp]
  • Put in workaround for IE6 background caching problem, closes http://dev.plone.org/plone/ticket/7445 [cwainwright, calvinhp]
  • Removed old background icon from personal bar for RTL scripts. Closes http://dev.plone.org/plone/ticket/4570 [emanlove]
  • Moved history icon off text and shifted history header to the right under RTL scripts. Closes http://dev.plone.org/plone/ticket/6368 [emanlove]
  • Cleaned up document actions for RTL scripts. Closes http://dev.plone.org/plone/ticket/8863 [emanlove]

New in Plone CMS 3.2 RC1 (Dec 16, 2008)

  • Shifted profile and personal preferences to the left for RTL scripts. Closes http://dev.plone.org/plone/ticket/8169 [emanlove]
  • Load the plone.app.locales configure.zcml. This fixes http://dev.plone.org/plone/ticket/8788. [hannosch]
  • Cleaned up Livesearch results for RTL Languages. Closes http://dev.plone.org/plone/ticket/4632 [emanlove]
  • For RTL languages adjusted document content padding so welcome text fits inside text area. Closes http://dev.plone.org/plone/ticket/6919 [emanlove]
  • For RTL languages shifted portrait photo to the left. Closes http://dev.plone.org/plone/ticket/6214 [emanlove]
  • Added 'context' as an alias for 'object' in action expressions. [davisagli]
  • Include missing dependency on plone.app.locales. [hannosch]
  • Moved plone specific diff tool configuration back to Plone default profile, since it's both plone specific and was never actually added to CMFDiffTool. Closes http://dev.plone.org/plone/ticket/8590 [alecm]
  • Fixed Forbidden error when attempting to login for the first time as a newly created user, if the must_change_password property has been added (as a Boolean) to the portal_memberdata tool and set to True. Closes http://dev.plone.org/plone/ticket/8425 [hexsprite]
  • Fixed the toc.js to not turn heading text containing an "@" into the link. Closes http://dev.plone.org/plone/ticket/7949 [sbruno, calvinhp]
  • Fixed the form_tabbing to use the correct buttons names. Closes http://dev.plone.org/plone/ticket/7559 [lucie, calvinhp]
  • Fixed the full_review_list select all link to only select the items shown and not all of the items at the portal root. This closes: http://dev.plone.org/plone/ticket/6991 [garbas, calvinhp]
  • Gave RTL.css higher priority within the stylesheet registry. loses http://dev.plone.org/plone/ticket/8505 [emanlove]
  • For RTL languages shifted Info Bar to the right. Closes http://dev.plone.org/plone/ticket/8140 [emanlove]
  • For RTL languages shifted comment icon to the right. Closes http://dev.plone.org/plone/ticket/6366 [emanlove]