Django-contact-form

Latest version: v5.0.1

Safety actively analyzes 641872 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

5.0.1

~~~~~~~~~~~~~

Released May 2024

* Correct an issue in the changelog for 5.0.0

* Correct an issue with the display of the package's documentation/source URLs
on the Python Package Index.

5.0

Django 5.0 (after 5.0.0 and 5.0.1). Since the Django project at the time was
supporting Django 5.0 and 4.2, that version of ``django-contact-form`` would
also support Django 5.0 and 4.2.


API stability and deprecations
------------------------------

The API stability/deprecation policy for ``django-contact-form`` is as follows:

* The supported stable public API is the set of symbols which are documented in
this documentation. For classes, the supported stable public API is the set
of methods and attributes of those classes whose names do not begin with one
or more underscore (``_``) characters and which are documented in this
documentation.

* When a public API is to be removed, or undergo a backwards-incompatible
change, it will emit a deprecation warning which serves as notice of the
intended removal or change. This warning will be emitted for at least two
releases, after which the removal or change may occur without further
warning. This is different from Django's own deprecation policy, which avoids
completing a removal/change in "LTS"-designated releases. Since
``django-contact-form`` does not have "LTS" releases, it does not need that
exception.

* Security fixes, and fixes for high-severity bugs (such as those which might
cause unrecoverable crash or data loss), are not required to emit deprecation
warnings, and may -- if needed -- impose backwards-incompatible change in any
release. If this occurs, this changelog document will contain a note
explaining why the usual deprecation process could not be followed for that
case.

* This policy is in effect as of the adoption of "DjangoVer" versioning, with
version 5.0.0 of ``django-contact-form``.


Releases under DjangoVer
------------------------

5.0.0

~~~~~~~~~~~~~

Released May 2024

* Adopted "DjangoVer" versioning.

* The :class:`~django_contact_form.forms.AkismetContactForm` and its Akismet
integration have been rewritten to make use of more recent versions of the
Python Akismet client. Configuring the Akismet client via Django settings is
now deprecated, and support for configuring via Django settings will be
removed in a future version of ``django-contact-form``. The
``AkismetContactForm`` class now also provides two overridable public methods
to allow customization of the Akismet API client instance and the arguments
passed to the Akismet spam check.


Releases not under DjangoVer
----------------------------

2.1

~~~~~~~~~~~

Released July 2023

* The supported Django versions are now 3.2, 4.1, and 4.2.

2.0.1

~~~~~~~~~~~~~

Released May 2022

* Corrected several issues in the documentation of the 2.0 release.

2.0

~~~~~~~~~~~

Released May 2022

Major version bump, with several changes:

* The supported Django versions are 3.2 and 4.0.

* Prior to 2.x, django-contact-form installed a Python module named
``contact_form``. To avoid silent incompatibilities, and to conform to more
recent best practices, django-contact-form 2.x now installs a module named
``django_contact_form``. Attempts to import from the ``contact_form`` module
will immediately fail with :exc:`ImportError`. Many installations will be
able to adapt by replacing references to ``contact_form`` with references to
``django_contact_form``.

* Similar to the module renaming above, the name of the default directory in
which django-contact-form looks for templates has changed from
``contact_form/`` to ``django_contact_form/``.

* Prior to 2.x, :class:`~django_contact_form.forms.ContactForm` provided a
method named ``get_context()`` which was used to generate the template
context from which the message would be rendered. However, Django 4.0
introduced `a new template-based system for rendering forms
<https://docs.djangoproject.com/en/stable/releases/4.0/#template-based-form-rendering>`_,
and as a result :class:`django.forms.Form` now has a method named
:meth:`~django.forms.Form.get_context`. To resolve this conflict with
Django's own base form class, the method in django-contact-form has been
renamed to
:meth:`~django_contact_form.forms.ContactForm.get_message_context`, which
hopefully will not be adopted by any future version of Django's own forms
system. If you were previously overriding ``get_context()``, you should
rename your overridden method to
:meth:`~django_contact_form.forms.ContactForm.get_message_context` to ensure
it is still called properly. If you have other code which called
``get_context()``, you should update any such references to call
:meth:`~django_contact_form.forms.ContactForm.get_message_context` instead.


Pre-2.0 versions
~~~~~~~~~~~~~~~~

Page 1 of 2

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.