This document outlines when various pieces of FeinCMS will be removed or altered in backward incompatible way. Before a feature is removed, a warning will be issued for at least two releases.
- The value of
FEINCMS_REVERSE_MONKEY_PATCHhas been changed toFalse. - Deprecated page manager methods have been removed (
page_for_path_or_404,for_request_or_404,best_match_for_request,from_request) -Page.objects.for_request(),Page.objects.page_for_pathandPage.objects.best_match_for_pathshould cover all use cases. - Deprecated page methods have been removed (
active_children,active_children_in_navigation,get_siblings_and_self) - Request and response processors have to be imported from
:mod:`feincms.module.page.processors`. Additionally, they must be registered
individually by using
register_request_processorandregister_response_processor. - Prefilled attributes have been removed. Use Django's
prefetch_relatedorfeincms.utils.queryset_transforminstead. feincms.views.basehas been moved tofeincms.views.legacy. Usefeincms.views.cbvinstead.FEINCMS_FRONTEND_EDITING's default has been changed toFalse.- The code in :mod:`feincms.module.page.models` has been split up. The admin classes are in :mod:`feincms.module.page.modeladmin`, the forms in :mod:`feincms.module.page.forms` now. Analogous changes have been made to :mod:`feincms.module.medialibrary.models`.
- The monkeypatch to make Django's :func:`django.core.urlresolvers.reverse` applicationcontent-aware will be removed. Use :func:`feincms.content.application.models.app_reverse` and the corresponding template tag instead.
- The module :mod:`feincms.content.medialibrary.models` will be replaced by
the contents of :mod:`feincms.content.medialibrary.v2`. The latter uses
Django's
raw_id_fieldssupport instead of reimplementing it badly. - The legacy views inside :mod:`feincms.views.legacy` will be removed.
The module
feincms.admin.editorwill be removed. The model admin classes have been available in :mod:`feincms.admin.item_editor` and :mod:`feincms.admin.tree_editor` since FeinCMS v1.0.Cleansing the HTML of a rich text content will still be possible, but the cleansing module :mod:`feincms.utils.html.cleanse` will be removed. When creating a rich text content, the
cleanseargument must be a callable and cannot beTrueanymore. The cleansing function has been moved into its own package, feincms-cleanse.Registering extensions using shorthand notation will be not be possible in FeinCMS v1.8 anymore. Use the following method instead:
Page.register_extensions( 'feincms.module.page.extensions.navigation', 'feincms.module.extensions.ct_tracker', )feincms_navigationandfeincms_navigation_extendedwill be removed. Their functionality is provided byfeincms_navinstead.The function-based generic views aren't available in Django after v1.4 anymore. :mod:`feincms.views.generic` and :func:`feincms.views.decorators.add_page_to_extra_context` will be removed as well.
The module :mod:`feincms.content.medialibrary.v2`, which is only an alias for :mod:`feincms.content.medialibrary.models` starting with FeinCMS v1.7 will be removed.
Page.setup_request()does not do anything anymore and will be removed.
- Fields added through page extensions which haven't been explicitly added
to the page model admin using
modeladmin.add_extension_optionswill disappear from the admin interface. The automatic collection of fields will be removed. - All extensions should inherit from
feincms.extensions.Extension. Support forregister(cls, admin_cls)-style functions will be removed in FeinCMS v1.9. - The
_feincms_extensionsattribute on the page model and on models inheritingExtensionsMixinis gone.
No deprecations.
RSSContentandupdate_rsscontenthave been deprecated.- The automatic discovery of subclasses of
NavigationExtensionhas been replaced with an explicit mechanism of defining navigation extensions. Page.cache_keyhas never been used by FeinCMS itself and will therefore be removed in a future release. Comparable functionality has been available for a long time withPage.path_to_cache_key.
- TODO update this