2.3 release notes#

What’s new in 2.3#

Introducing Django 1.4 support, dropped support for Django 1.2#

In django CMS 2.3 we dropped support for Django 1.2. Django 1.3.1 is now the minimum required Django version. Django CMS 2.3 also introduces Django 1.4 support.

Lazy page tree loading in admin#

Thanks to the work by Andrew Schoen the page tree in the admin now loads lazily, significantly improving the performance of that view for large sites.

Toolbar isolation#

The toolbar JavaScript dependencies should now be properly isolated and no longer pollute the global JavaScript namespace.

Plugin cancel button fixed#

The cancel button in plugin change forms no longer saves the changes, but actually cancels.

Tests refactor#

Tests can now be run using setup.py test or runtests.py (the latter should be done in a virtualenv with the proper dependencies installed).

Check runtests.py -h for options.

Moving text plugins to different placeholders no longer loses inline plugins#

A serious bug where a text plugin with inline plugins would lose all the inline plugins when moved to a different placeholder has been fixed.

Minor improvements#

  • The or clause in the placeholder tag now works correctly on non-cms pages.

  • The icon source URL for inline plugins for text plugins no longer gets double escaped.

  • PageSelectWidget correctly orders pages again.

  • Fixed the file plugin which was sometimes causing invalid HTML (unclosed span tag).

  • Migration ordering for plugins improved.

  • Internationalised strings in JavaScript now get escaped.

Backwards incompatible changes#

New minimum requirements for dependencies#

  • django-reversion must now be at version 1.6

  • django-sekizai must be at least at version 0.6.1

  • django-mptt version 0.5.1 or 0.5.2 is required

Registering a list of plugins in the plugin pool#

This feature was deprecated in version 2.2 and removed in 2.3. Code like this will not work any more:

plugin_pool.register_plugin([FooPlugin, BarPlugin])

Instead, use multiple calls to register_plugin:

plugin_pool.register_plugin(FooPlugin)
plugin_pool.register_plugin(BarPlugin)

Pending deprecations#

The CMS_FLAT_URLS setting is deprecated and will be removed in version 2.4. The moderation feature (CMS_MODERATOR = True) will be deprecated in 2.4 and replaced with a simpler way of handling unpublished changes.