• Tutorials
    • Installing django CMS
      • Requirements
      • Your working environment
        • Create and activate a virtual env
        • Update pip
        • Use the django CMS installer
        • Start up the runserver
    • Templates & Placeholders
      • Templates
      • Placeholders
      • Static Placeholders
      • Rendering Menus
    • Integrating applications
      • Install the polls application
        • Improve the templates for Polls
      • Set up a new polls_cms_integration application
        • Create the application
        • Add it to INSTALLED_APPS
    • Plugins
      • Install the polls application
      • Set up a base template for the application
      • Create a new polls_cms_integration application
        • The Plugin Model
        • The Plugin Class
        • The template
      • Integrate the polls_cms_integration application
    • Apphooks
      • Create an apphook
        • What this all means
      • Apply the apphook to a page
    • Extending the Toolbar
      • Create the toolbar
        • What this all means
      • See it at work
    • Extending the navigation menu
      • Create the navigation menu
    • Content creation wizards
    • Integrating a third-party application
      • Basic installation
      • Django settings
        • INSTALLED_APPS
        • THUMBNAIL_PROCESSORS
        • ALDRYN_BOILERPLATE_NAME
        • STATICFILES_FINDERS
        • TEMPLATES
      • Migrate the database
      • Create a new apphooked page
      • Add new News & Blog articles
  • How-to guides
    • Install django CMS by hand
      • Install the django CMS package
      • Create a new project
      • Minimally-required applications and settings
        • INSTALLED_APPS
        • Language settings
      • Database
        • Database tables
        • Admin user
      • Using cms check for configuration
        • Sekizai
        • Middleware
        • Context processors
      • Further required configuration
        • URLs
        • Templates
        • Media and static file handling
      • Adding content-handling functionality
        • Django Filer
        • Django CMS CKEditor
        • Miscellaneous plugins
      • Launch the project
      • Next steps
    • Create custom plugins
      • Why would you need to write a plugin?
      • Overview
        • A note about cms.plugin_base.CMSPluginBase
        • An aside on models and configuration
      • The simplest plugin
      • Troubleshooting
      • Storing configuration
        • Handling Relations
      • Advanced
        • Inline Admin
        • Plugin form
        • Handling media
        • Plugin Context
        • Plugin Context Processors
        • Plugin Processors
        • Nested Plugins
        • Extending context menus of placeholders or plugins
        • Plugin data migrations
    • Customise menus
      • Menus
        • Customise menus at runtime
      • Attach Menus
      • Navigation Modifiers
        • Example use-cases
        • How it works
        • Performance issues in menu modifiers
    • Create apphooks
      • The basics of apphook creation
        • Apphooks for namespaced applications
        • Loading new and re-configured apphooks
      • Using an apphook
        • Sub-pages of an apphooked page
      • Apphook management
        • Uninstalling an apphook with applied instances
        • Management commands
      • Apphook menus
      • Apphook permissions
      • Automatically restart server on apphook changes
      • Apphooks and placeholder template tags
    • Manage complex apphook configuration
      • Attaching an application multiple times
        • Define a namespace at class-level
        • Set a namespace at instance-level
      • Apphook configurations
        • Basic concepts
      • An example apphook configuration
        • Using helper applications
        • Create the new FAQ application
        • Put it all together
    • Serve multiple languages
      • Multilingual URLs
        • Monolingual URLs
      • Store the user’s language preference
      • Working in templates
        • Display a language chooser in the page
        • Get the URL of the current page for a different language
      • Configuring language-handling behaviour
    • Work with templates
      • static_placeholder
      • CMS_TEMPLATE
      • render_model
    • Extend Page & Title models
      • Title vs Page extensions
      • Implement a basic extension
        • Page model extension example
        • Title model extension example
      • Using extensions
        • In templates
        • With menus
        • Handling relations
      • Complete toolbar API
        • Simplified Toolbar API
    • Extend the Toolbar
      • Registering
      • Adding items
      • Modifying an existing toolbar
        • Adding Items Alphabetically
        • Adding items through views
      • Frontend
    • Test your extensions
      • Testing Apps
        • Resolving View Names
        • CMSTestCase
      • Testing Plugins
    • Use placeholders outside the CMS
      • Get started
        • Admin Integration
        • I18N Placeholders
        • Templates
      • Adding content to a placeholder
        • Options
        • Permissions
    • Manage caching
      • Set-up
        • Plugins
        • Content Cache Duration
        • Settings
    • Enable frontend editing for Page and Django models
      • Template tags
      • Page titles edit
      • Page menu edit
      • Editing ‘ordinary’ Django models
        • Configure the model’s admin class
        • Selected fields edit
        • Special attributes
        • Custom views
        • Model changelist
      • Filters
      • Context variable
    • Create sitemaps
      • Sitemap
      • Configuration
      • django.contrib.sitemaps
    • Manage Page Types
      • Creating Page Types
      • Managing Page Types
      • Selecting a Page Type
    • Implement content creation wizards
      • Create a content-creation wizard
    • Contribute a patch
      • The basics
        • Target branches
      • How to write a test
      • Submitting your code
        • Acceptance criteria
  • Key topics
    • Application hooks (“apphooks”)
      • Multiple apphooks per application
      • Apphook configurations
    • Publishing
      • Code and Pages
    • Serving content in multiple languages
      • Basic concepts
        • How django CMS determines the user’s preferred language
        • How django CMS determines what language to serve
        • What django CMS shows in your menus
    • Internationalisation
      • URLs
      • How django CMS determines which language to serve
    • Permissions
      • CMS_PERMISSION mode
        • CMS_PERMISSION mode off
        • CMS_PERMISSION mode on
        • Page permissions
      • Permission strategies
        • Two dimensions of permissions
        • Use permissions on Groups, not on Users
        • Use Groups to build up permissions
        • Global or specific page permissions?
    • Using touch-screen devices with django CMS
      • General
      • Device support
      • Your site’s frontend
      • Known issues
        • General issues
        • CKEditor issues
        • Django Admin issues
    • How the menu system works
      • Basic concepts
        • Soft Roots
        • Registration
        • Generators and Modifiers
        • Nodes
      • Menu system logic
    • Some commonly-used plugins
      • django CMS Core Addons
      • Other addons of note
      • Deprecated addons
    • Search and django CMS
    • Frontend integration
  • Reference
    • API References
      • cms.api
        • Functions and constants
        • Example workflows
      • cms.constants
      • cms.app_base
    • Command Line Interface
      • Informational commands
        • cms list
        • cms check
      • Plugin and apphook management commands
        • cms delete-orphaned-plugins
        • cms uninstall
        • cms copy
        • cms copy lang
        • cms copy site
      • Moderation commands
        • cms moderator
        • cms publisher-publish
      • Maintenance and repair
        • fix-tree
        • fix-mptt
    • Configuration
      • The INSTALLED_APPS setting
      • The MIDDLEWARE_CLASSES setting
        • cms.middleware.utils.ApphookReloadMiddleware
      • Custom User Requirements
      • Required Settings
        • CMS_TEMPLATES
      • Basic Customisation
        • CMS_TEMPLATE_INHERITANCE
        • CMS_TEMPLATES_DIR
        • CMS_PLACEHOLDER_CONF
        • CMS_PLUGIN_CONTEXT_PROCESSORS
        • CMS_PLUGIN_PROCESSORS
        • CMS_APPHOOKS
      • Internationalisation and localisation (I18N and L10N)
        • CMS_LANGUAGES
        • Unicode support for automated slugs
      • Media Settings
        • CMS_MEDIA_PATH
        • CMS_MEDIA_ROOT
        • CMS_MEDIA_URL
        • CMS_PAGE_MEDIA_PATH
      • Advanced Settings
        • CMS_INTERNAL_IPS
        • CMS_REQUEST_IP_RESOLVER
        • CMS_PERMISSION
        • CMS_RAW_ID_USERS
        • CMS_PUBLIC_FOR
        • CMS_CACHE_DURATIONS
        • CMS_CACHE_PREFIX
        • CMS_PAGE_CACHE
        • CMS_PLACEHOLDER_CACHE
        • CMS_PLUGIN_CACHE
        • CMS_TOOLBARS
        • CMS_TOOLBAR_ANONYMOUS_ON
        • CMS_TOOLBAR_HIDE
        • CMS_DEFAULT_X_FRAME_OPTIONS
        • CMS_TOOLBAR_SIMPLE_STRUCTURE_MODE
        • CMS_PAGE_WIZARD_DEFAULT_TEMPLATE
        • CMS_PAGE_WIZARD_CONTENT_PLACEHOLDER
        • CMS_PAGE_WIZARD_CONTENT_PLUGIN
        • CMS_PAGE_WIZARD_CONTENT_PLUGIN_BODY
    • Form and model fields
      • Model fields
      • Form fields
    • Menus and navigation
      • show_menu
        • Some Examples
      • show_menu_below_id
      • show_sub_menu
      • show_breadcrumb
      • Properties of Navigation Nodes in templates
      • Modifying & Extending the menu
      • Menu system classes and function
        • menu application
        • cms application
    • Models
    • Permissions
    • Placeholders
    • Plugins
      • CMSPluginBase Attributes and Methods Reference
      • CMSPlugin Attributes and Methods Reference
    • Sitemaps
    • Template Tags
      • CMS template tags
        • Placeholders
        • render_placeholder
        • render_uncached_placeholder
        • show_placeholder
        • show_uncached_placeholder
        • page_lookup
        • page_url
        • page_attribute
        • render_plugin
        • render_plugin_block
        • render_model
        • render_model_block
        • render_model_icon
        • render_model_add
        • render_model_add_block
        • page_language_url
        • language_chooser
      • Toolbar template tags
    • Titles
    • The Toolbar
      • cms.toolbar.toolbar
      • cms.toolbar.items
    • Content creation wizards
      • Base Wizard
      • Base Wizard methods
        • get_description
        • get_title
        • get_success_url
        • get_weight
        • user_has_add_permission
      • wizard_pool
      • Wizard pool methods
        • is_registered
        • register
        • unregister
        • get_entry
        • get_entries
  • Development & community
    • django CMS’s development community
      • Divio AG
      • Core developers
        • Current core developers
        • Retired core developers
        • Becoming a core developer
      • Technical board
        • Role
        • Composition of the board
    • Development policies
      • Reporting security issues
      • Review
        • Formal approval
      • Proposal and discussion of significant changes
      • Release schedule
      • Branches
      • Commits
        • Commit messages
        • Squashing commits
      • Changelog
    • Contributing code
      • In a nutshell
      • Basic requirements and standards
        • Syntax and conventions
        • Process
      • Frontend
        • Styles
        • Icons
        • JS Bundling
    • Contributing documentation
      • Building the documentation
      • Spelling
        • Install the spelling software
        • Check spelling
      • Making a pull request
      • Documentation structure
      • Documentation markup
        • Sections
        • Inline markup
        • Rules for using technical words
        • References
    • Contributing translations
    • Code and project management
      • Issues
        • Raising an issue
        • Getting your issue accepted
      • How we process tickets
        • django CMS ticket processing system rules
        • Status
        • Needs
        • Kinds and components
        • Other labels
        • Comments
      • Label reference
        • Statuses
        • Needs
        • Other
    • Running and writing tests
      • Running tests
        • Problems running the tests
        • Advanced testing options
      • Running Frontend Tests
        • Unit tests
        • Integration tests
      • Writing tests
        • What we need
    • Code of Conduct
      • Raising a concern
  • Release notes & upgrade information
    • 3.5.4 release notes
      • What’s new in 3.5.4
        • Bug Fixes
    • 3.5.3 release notes
      • What’s new in 3.5.3
        • Bug Fixes
    • 3.5.2 release notes
      • What’s new in 3.5.2
        • Bug Fixes
    • 3.5.1 release notes
      • What’s new in 3.5.1
        • Bug Fixes
    • 3.5.0 release notes
      • What’s new in 3.5.0
        • Improvements and new features
        • Bug Fixes
        • Removal of deprecated functionality
        • Backward-incompatible changes
      • How to upgrade to 3.5
      • Create a new django CMS 3.5 project
        • On the Divio Cloud
        • Using the django CMS Installer
      • Contributors to this release
    • 3.4.4 release notes
      • What’s new in 3.4.4
        • Bug Fixes
        • Improvements and new features
        • Deprecations
      • Backward incompatible changes
        • Page methods
        • Placeholder utilities
    • 3.4.3 release notes
      • What’s new in 3.4.3
        • Security Fixes
        • Thanks
    • 3.4.2 release notes
      • What’s new in 3.4.2
        • Bug Fixes
        • Improvements and new features
        • Deprecations
        • Other changes
    • 3.4.1 release notes
      • What’s new in 3.4.1
        • Bug Fixes
    • 3.4 release notes
      • What’s new in 3.4
      • Upgrading to 3.4
      • Backward incompatible changes
        • Apphooks & Toolbars
        • Permissions
        • Manual plugin rendering
    • 3.3 release notes
      • What’s new in 3.3
      • Upgrading to 3.3
        • Deprecation of Old-Style Page Wizard Settings
      • Backward incompatible changes
        • Management commands
        • Signature changes
    • 3.2.5 release notes
      • What’s new in 3.2.5
        • Bug Fixes
        • DjangoCMS Text CKEditor
    • 3.2.4 release notes
      • What’s new in 3.2.4
        • Bug Fixes
        • DjangoCMS Text CKEditor
    • 3.2.3 release notes
      • What’s new in 3.2.3
        • Bug Fixes
    • 3.2.2 release notes
      • What’s new in 3.2.2
        • Improvements
        • Bug Fixes
        • Model Relationship Back-References and Django 1.9
        • Notice of Upcoming Change in 3.3
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.2.1 release notes
      • What’s new in 3.2.1
        • Improvements
        • Bug Fixes
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.2 release notes
      • What’s new in 3.2
      • Changes that require attention
        • Touch interface support
        • Bug-fixes
        • Content wizards
        • Renaming cms_app, cms_toolbar, menu modules
        • New ApphookReloadMiddleware
        • For developers
        • New structure board
        • Replaced the sideframe with an overlay
        • New startup page
      • Known issues
      • Backward-incompatible changes
      • Upgrading django CMS 3.1 to 3.2
      • Pending deprecations
    • 3.1.5 release notes
      • What’s new in 3.1.5
        • Bug Fixes
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.1.4 release notes
      • What’s new in 3.1.4
        • Bug Fixes
        • Treebeard corruption
    • 3.1.3 release notes
      • What’s new in 3.1.3
        • Bug Fixes
        • Thanks
    • 3.1.2 release notes
      • What’s new in 3.1.2
        • Bug Fixes
    • 3.1.1 release notes
      • What’s new in 3.1.1
        • Bug Fixes
        • Potentially backward incompatible changes
        • Thanks
    • 3.1 release notes
      • What’s new in 3.1
        • Switch from MPTT to MP
        • Dropped support for Django 1.4 and 1.5
        • South is now an optional dependency
        • Changes to PlaceholderAdmin.add_plugin
        • Migrations moved
        • Plugins migrations moving process
        • Structure mode permission
        • Simplified loading of view restrictions in the menu
        • Toolbar API extension
        • Per-namespace apphook configuration
        • Improvements to the toolbar user interface
        • Placeholder language fallback default to True
        • New template tags
        • Plugin table naming
        • cms.context_processors.media replaced by cms.context_processors.cms_settings
      • Upgrading django CMS 3.0 to 3.1
        • Preliminary steps
        • Settings update
        • Update the database
    • 3.0.16 release notes
      • Bug-fixes
    • 3.0.15 release notes
      • What’s new in 3.0.15
        • Bug Fixes
        • Thanks
    • 3.0.14 release notes
      • What’s new in 3.0.14
        • Bug Fixes
        • Potentially backward incompatible changes
        • Thanks
    • 3.0.13 release notes
      • What’s new in 3.0.13
        • Bug Fixes
    • 3.0.12 release notes
      • What’s new in 3.0.12
        • Bug Fixes
    • 3.0.11 release notes
      • What’s new in 3.0.11
        • Bug Fixes
        • Other
    • 3.0.10 release notes
      • What’s new in 3.0.10
        • Bug Fixes
    • 3.0.9 release notes
      • What’s new in 3.0.9
        • Bug Fixes
    • 3.0.8 release notes
      • What’s new in 3.0.8
        • Bug Fixes
    • 3.0.7 release notes
      • What’s new in 3.0.7
        • Bug Fixes
        • Project & Community Governance
    • 3.0.6 release notes
      • What’s new in 3.0.6
        • Django 1.7 support
        • Extended Custom User Support
        • CMSPlugin.get_render_template
        • Simplified toolbar API for page extensions
    • 3.0.3 release notes
      • What’s new in 3.0.3
        • New Alias Plugin
        • New Context Menu API
        • Apphook Permissions
    • 3.0 release notes
      • What’s new in 3.0
        • New Frontend Editing
        • New Toolbar
        • New Page Types
        • Experimental Python 3.3 support
        • Better multilingual editing
        • CMS_SEO_FIELDS
        • CMS_MENU_TITLE_OVERWRITE
        • Plugin fallback languages
        • language_chooser
        • Undo and Redo
        • Plugins removed
        • Plugin Context Processors take a new argument
        • Apphooks
        • PlaceholderAdmin
        • Placeholder object permissions
        • Placeholders are pre-fillable with default plugins
        • Custom modules and plugin labels in the toolbar UI
        • New copy-lang subcommand
        • Frontend editor for Django models
        • New Page related_name to Site
        • Moved all template tags to cms_tags
        • getter and setter for translatable plugin content
        • No more DB table-name magic for plugins
        • Added support for custom user models
        • Page caching
        • Placeholder caching
        • Plugin caching
        • Per-page Clickjacking protection
        • CMS_TEMPLATE context variable
      • Upgrading from 2.4
      • Pending deprecations
        • placeholder_tags
        • cms.context_processors.media
    • 2.4 release notes
      • What’s new in 2.4
        • Introducing Django 1.5 support, dropped support for Django 1.3 and Python 2.5
        • Migrations overhaul
        • Added delete orphaned plugins command
        • Added a check command
        • CMS_MODERATOR
        • Added Fix MPTT Management command
        • Removed the MultilingualMiddleware
        • Added LanguageCookieMiddleware
        • CMS_LANGUAGES
        • CMS_FLAT_URLS
        • Plugins in Plugins
        • New way to handle django CMS settings
        • Added cms.constants module
        • django-reversion integration changes
        • Changes to the show_sub_menu template tag
        • PlaceholderAdmin support i18n
        • Added CMS_RAW_ID_USERS
      • Backwards incompatible changes
        • New minimum requirements for dependencies
      • Pending deprecations
    • 2.3.4 release notes
      • What’s new in 2.3.4
        • WymEditor fixed
        • Moved Norwegian translations
        • Added support for time zones
        • Fixed slug clashing
        • Prevent unnamed related names for PlaceholderField
        • Two fixes to page change form
    • 2.3.3 release notes
      • What’s new in 2.3.3
        • Restored Python 2.5 support
      • Pending deprecations
    • 2.3.2 release notes
      • What’s new in 2.3.2
        • Google map plugin
    • 2.3 release notes
      • What’s new in 2.3
        • Introducing Django 1.4 support, dropped support for Django 1.2
        • Lazy page tree loading in admin
        • Toolbar isolation
        • Plugin cancel button fixed
        • Tests refactor
        • Moving text plugins to different placeholders no longer loses inline plugins
        • Minor improvements
      • Backwards incompatible changes
        • New minimum requirements for dependencies
        • Registering a list of plugins in the plugin pool
      • Pending deprecations
    • 2.2 release notes
      • What’s new in 2.2
        • django-mptt now a proper dependency
        • Django 1.3 support
        • View permissions
      • Backwards incompatible changes
        • django-sekizai instead of PluginMedia
        • Toolbar must be enabled explicitly in templates
        • Static files moved to /static/
      • Features deprecated in 2.2
        • django-dbgettext support
    • Upgrading from 2.1.x and Django 1.2.x
      • Upgrading dependencies
      • Updates to settings.py
      • Template Updates
      • Database Updates
      • Static Media
  • Using django CMS
    • Tutorial
      • Log in
      • Create a page
        • Create your first page
        • Publish a page
        • Create a second page
      • Changing page settings
      • Structure and content modes
        • Add a second plugin
    • Reference for content editors
      • Page admin
        • The interface
        • Admin views & forms
      • Working with admin in the frontend
        • Redirection
GET STARTED FASTER

Divio is built for django CMS

  • Powerful FREE instance
  • Local development environment
  • Preconfigured django CMS
Get your free account
django cms
Divio
  • Docs  » 
  • Release notes & upgrade information

Release notes & upgrade information¶

Some versions of django CMS present more complex upgrade paths than others, and some require you to take action. It is strongly recommended to read the release notes carefully when upgrading.

It goes without saying that you should backup your database before embarking on any process that makes changes to your database.

  • 3.5.4 release notes
  • 3.5.3 release notes
  • 3.5.2 release notes
  • 3.5.1 release notes
  • 3.5.0 release notes
  • 3.4.4 release notes
  • 3.4.3 release notes
  • 3.4.2 release notes
  • 3.4.1 release notes
  • 3.4 release notes
  • 3.3 release notes
  • 3.2.5 release notes
  • 3.2.4 release notes
  • 3.2.3 release notes
  • 3.2.2 release notes
  • 3.2.1 release notes
  • 3.2 release notes
  • 3.1.5 release notes
  • 3.1.4 release notes
  • 3.1.3 release notes
  • 3.1.2 release notes
  • 3.1.1 release notes
  • 3.1 release notes
  • 3.0.16 release notes
  • 3.0.15 release notes
  • 3.0.14 release notes
  • 3.0.13 release notes
  • 3.0.12 release notes
  • 3.0.11 release notes
  • 3.0.10 release notes
  • 3.0.9 release notes
  • 3.0.8 release notes
  • 3.0.7 release notes
  • 3.0.6 release notes
  • 3.0.3 release notes
  • 3.0 release notes
  • 2.4 release notes
  • 2.3.4 release notes
  • 2.3.3 release notes
  • 2.3.2 release notes
  • 2.3 release notes
  • 2.2 release notes
  • Upgrading from 2.1.x and Django 1.2.x
Next Previous

© Copyright 2009-2020, Divio AG and contributors. Revision 932da2eb.

Edit on GitHub