Skip to main content

Diff tool for Plone

Project description


Diff tool for Plone.


To enable versioning for a Dexterity content type you need to:

  1. Install and use it on your content type.

  2. Enable versioning for the type in the types control panel.

  3. Install this package.

  4. Go to the portal_diff tool ZMI page.

  5. Add Compound Diff for Dexterity types for your content type. Field name can be anything, e.g: “any”.

You can enable versioning on Dexterity content types without these steps, but then you’ll have to add the correct “diff type” for each field of your content type.


4.0.1 (2023-04-15)


  • Update configuration files. [plone devs] (3333c742)

4.0.0 (2023-03-14)

Breaking changes:

  • Drop compatibility with Plone 5.2, Python 2, Archetypes. [maurits] (#60)

3.3.3 (2021-06-30)

Bug fixes:

  • Added XSS fix from PloneHotfix20210518 for inline diff. See vulnerability. The first version of the hotfix escaped all html. Now for the rich text field, use the safe html transform, otherwise the inline diff is no longer inline. [maurits] (#39)

3.3.2 (2020-09-21)

Bug fixes:

  • Fixed invalid escape sequences. [maurits] (#3130)

3.3.1 (2020-04-22)

Bug fixes:

  • Minor packaging updates. (#1)

3.3.0 (2019-06-27)

New features:

  • Add support for Python 3.8 [pbauer]

3.2.2 (2018-10-24)

Bug fixes:

  • Display titles in diff of zope.schema.List using vocabulary [sgeulette]

  • Flake8 corrections [sgeulette]

  • fix AT tests [petschki]

3.2.1 (2018-09-23)

Bug fixes:

  • Fix diff and tests in py3 [pbauer, hverlarde, jensens]

3.2.0 (2018-04-03)

New features:

  • Use plone domain for translations [erral]

Bug fixes:

3.1.6 (2018-02-11)

Bug fixes:

  • Bug fix for dict type, because we use DataGridField. [terapyon]

3.1.5 (2018-02-05)

New features:

  • Add Python 2 / 3 compatibility [davilima6]

3.1.4 (2017-03-23)

New features:

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

Bug fixes:

  • Fixed AttributeError: ‘NoneType’ if the object doesn’t have the expected attribute [rristow]

3.1.3 (2016-09-09)

Bug fixes:

  • Fix error in showing changes to objects of type “set” [deankarlen]

3.1.2 (2016-07-29)

Bug fixes:

  • Use zope.interface decorator. [gforcada]

3.1.1 (2016-04-18)

Bug fixes:

  • Rerelease, as 3.1.0 was broken on one of our test servers. Should be fine elsewhere. [maurits]

3.1.0 (2016-04-15)

New features:

  • Add generic inline_diff implementation for FieldDiff. [davisagli]

3.0.4 (2016-02-27)


  • Include fields in additional fieldsets for DX content types [frapell]

3.0.3 (2016-02-15)


  • Test fixes. [do3cc, pbauer]

  • Removed ZopeTestCase tests. [do3cc]

3.0.2 (2015-08-13)

3.0.1 (2015-05-12)

  • Prevent AttributeError issue when performing diff on Dexterity contents. Close #330. [keul, cekk]

3.0.0 (2015-03-08)

  • Ported tests to [tomgross]

  • Fix _getValue() bug for dexterity behaviour empty fields. [sdelcourt]

2.1 (2013-05-26)

  • Nothing changed yet.

2.0.2 (2013-03-05)

  • Merge Rafael Oliveira’s (@rafaelbco) Dexterity support from collective.dexteritydiff. [rpatterson]

2.0.1 (2012-09-01)

  • Adjust test assertions to match new diff output in Python 2.7. [hannosch]

2.0 - 2010-07-15

2.0b3 - 2010-05-20

  • Added filename to BinaryDiff, TextDiff and CMFDTHtmlDiff. [davidblewett]

  • Added i18n support for filename. [davidblewett]

  • Updated code + test cases to use os.linesep instead of hard-coding them. [davidblewett]

  • Updated TextDiff to use the splitlines string method instead of splitting on a hard-coded value. [davidblewett]

  • Fix test failure as a result of string field diff assignment change. [alecm]

2.0b2 - 2010-04-28

  • Added inline diff view for simple text fields. [alecm]

  • Added blob support to ATCompoundDiff. [davidblewett]

2.0b1 - 2009-12-27

  • Added missing test dependency. [hannosch]

2.0a1 - 2009-11-14

  • Use unicode in diff generation, now that Python’s difflib supports it. [alecm]

  • Adjusted interface test to zope.interface-style interfaces. [hannosch]

  • Use new-style utility setup for portal_diff instead of the toolset handling. [hannosch]

  • Added the z3c.autoinclude entry point so this package is automatically loaded on Plone 3.3 and above. [hannosch]

  • Add encoding declaration in python files [encolpe]

  • Removed the persistent version of the changeset type. [hannosch]

  • Declare package dependencies and fixed deprecation warnings for use of Globals. [hannosch]

  • Added GS import step registration to the product. It was only registered as part of the CMFPlone base profile. [hannosch]

  • Use the real BadRequest exception instead of relying on a string exception. [hannosch]

  • Purged old Zope 2 Interface interfaces for Zope 2.12 compatibility. [elro]

0.5.2 - 2009-07-08

  • Fix #9355: Support generalized schema extension for AT fields. [alecm]

0.5.1 - 2009-06-19

  • Fix #9092: Support archetypes schema extension for ATCompoundDiff. [alecm]

0.5 - 2009-05-16

  • Fix #9108: EncodingDecodeError in TextDiff.html_diff [encolpe]

0.5b1 - 2009-03-07

  • Move CMF skin layer registration to zcml. [wichert]

  • Move GenericSetup step registration to zcml. [wichert]

0.4 - 2008-10-06

  • Switch to egg-based releases. [hannosch]

  • Added GS import step registration to the product. It was only registered as part of the CMFPlone base profile. [hannosch]

0.3.6 - 2008-04-20

  • Added protection against missing diff_tool in the exportimport handler. [hannosch]

  • Added metadata.xml file to the profile. [hannosch]

0.3.5 - 2007-12-02

  • Don’t assume there’s a portal_type for objects. Fixes [alecm]

  • Fixed issue causing diffs to break for folders that switched between inside and outside ref modifiers. [alecm]

  • Make ChangeSet compatible with CMF trunk. [wiggy]

  • Updated componentregisty.xml to new style. [hannosch]

0.3.4 - 2007-06-08

  • Fixed i18n markup in [hannosch]

0.3.3 - 2007-03-05

  • Removed default config for ATCT types, it goes in Plone now [alecm]

0.3.2 - 2007-03-05

  • Added default config for ATCT types [alecm]

0.3.1 - 2007-02-09

  • Removed useless status message. [hannosch]

  • Added ZCML layer setup for tests [alecm]

0.3 - 2006-10-02

  • Product installation is now based on a GenericSetup extension profile. [hannosch]

  • Code modernization for Python 2.4 / CMF 1.6. [hannosch]

  • Initial version. [brentmh]

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Products.CMFDiffTool-4.0.1.tar.gz (44.4 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page