FeinCMS Deprecation Timeline¶
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.
1.6¶
- 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
feincms.module.page.processors. Additionally, they must be registered individually by usingregister_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
feincms.module.page.modelshas been split up. The admin classes are infeincms.module.page.modeladmin, the forms infeincms.module.page.formsnow. Analogous changes have been made tofeincms.module.medialibrary.models.
1.7¶
- The monkeypatch to make Django’s
django.core.urlresolvers.reverse()applicationcontent-aware will be removed. Usefeincms.content.application.models.app_reverse()and the corresponding template tag instead. - The module
feincms.content.medialibrary.modelswill be replaced by the contents offeincms.content.medialibrary.v2. The latter uses Django’sraw_id_fieldssupport instead of reimplementing it badly. - The legacy views inside
feincms.views.legacywill be removed.
1.8¶
The module
feincms.admin.editorwill be removed. The model admin classes have been available infeincms.admin.item_editorandfeincms.admin.tree_editorsince FeinCMS v1.0.Cleansing the HTML of a rich text content will still be possible, but the cleansing module
feincms.utils.html.cleansewill be removed. When creating a rich text content, thecleanseargument 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.
feincms.views.genericandfeincms.views.decorators.add_page_to_extra_context()will be removed as well.The module
feincms.content.medialibrary.v2, which is only an alias forfeincms.content.medialibrary.modelsstarting with FeinCMS v1.7 will be removed.Page.setup_request()does not do anything anymore and will be removed.
1.9¶
- 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.
1.10¶
No deprecations.
1.11¶
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.