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_PATCH has been changed to False.
- 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_path and
Page.objects.best_match_for_path should 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 using register_request_processor and
register_response_processor.
- Prefilled attributes have been removed. Use Django’s prefetch_related
or feincms.utils.queryset_transform instead.
- feincms.views.base has been moved to feincms.views.legacy. Use
feincms.views.cbv instead.
- FEINCMS_FRONTEND_EDITING‘s default has been changed to False.
- The code in feincms.module.page.models has been split up. The admin
classes are in feincms.module.page.modeladmin, the forms in
feincms.module.page.forms now. Analogous changes have been made
to feincms.module.medialibrary.models.
1.7
- The monkeypatch to make Django’s django.core.urlresolvers.reverse()
applicationcontent-aware will be removed. Use
feincms.content.application.models.app_reverse() and the corresponding
template tag instead.
- The module feincms.content.medialibrary.models will be replaced by
the contents of feincms.content.medialibrary.v2. The latter uses
Django’s raw_id_fields support instead of reimplementing it badly.
- The legacy views inside feincms.views.legacy will be removed.
1.8
The module feincms.admin.editor will be removed. The model admin classes
have been available in feincms.admin.item_editor and
feincms.admin.tree_editor since FeinCMS v1.0.
Cleansing the HTML of a rich text content will still be possible, but the
cleansing module feincms.utils.html.cleanse will be removed. When
creating a rich text content, the cleanse argument must be a callable
and cannot be True anymore. 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_navigation and feincms_navigation_extended will be removed.
Their functionality is provided by feincms_nav instead.
The function-based generic views aren’t available in Django after v1.4
anymore. feincms.views.generic and
feincms.views.decorators.add_page_to_extra_context() will be removed
as well.
The module feincms.content.medialibrary.v2, which is only an alias for
feincms.content.medialibrary.models starting 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_options will
disappear from the admin interface. The automatic collection of fields
will be removed.
- All extensions should inherit from feincms.extensions.Extension.
Support for register(cls, admin_cls)-style functions will be removed
in FeinCMS v1.9.