diff options
| author | Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> | 2024-12-13 09:33:45 +0100 |
|---|---|---|
| committer | Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> | 2025-01-15 22:28:37 +0100 |
| commit | bc3f3031d8ae0b689d02a427f33df24a90cf54c1 (patch) | |
| tree | 6cbb62607599f28606736d37459859ebfef650c4 | |
| parent | 85750bd2f8ed7e595aac25c7e5fd7218528a25b1 (diff) | |
Refs #35405 -- Removed FieldCacheMixin.get_cache_name() per deprecation timeline.
| -rw-r--r-- | django/db/models/fields/mixins.py | 18 | ||||
| -rw-r--r-- | docs/releases/6.0.txt | 2 | ||||
| -rw-r--r-- | tests/model_fields/test_mixins.py | 23 |
3 files changed, 5 insertions, 38 deletions
diff --git a/django/db/models/fields/mixins.py b/django/db/models/fields/mixins.py index 6774303773..7de4120a1e 100644 --- a/django/db/models/fields/mixins.py +++ b/django/db/models/fields/mixins.py @@ -1,7 +1,4 @@ -import warnings - from django.core import checks -from django.utils.deprecation import RemovedInDjango60Warning from django.utils.functional import cached_property NOT_PROVIDED = object() @@ -15,22 +12,9 @@ class FieldCacheMixin: typically the field’s name. """ - # RemovedInDjango60Warning. - def get_cache_name(self): - raise NotImplementedError - @cached_property def cache_name(self): - # RemovedInDjango60Warning: when the deprecation ends, replace with: - # raise NotImplementedError - cache_name = self.get_cache_name() - warnings.warn( - f"Override {self.__class__.__qualname__}.cache_name instead of " - "get_cache_name().", - RemovedInDjango60Warning, - stacklevel=3, - ) - return cache_name + raise NotImplementedError def get_cached_value(self, instance, default=NOT_PROVIDED): try: diff --git a/docs/releases/6.0.txt b/docs/releases/6.0.txt index 6969aed7f4..ac2b984207 100644 --- a/docs/releases/6.0.txt +++ b/docs/releases/6.0.txt @@ -316,3 +316,5 @@ to remove usage of these features. * The setter for ``django.contrib.gis.gdal.OGRGeometry.coord_dim`` is removed. * The ``check`` keyword argument of ``CheckConstraint`` is removed. + +* The ``get_cache_name()`` method of ``FieldCacheMixin`` is removed. diff --git a/tests/model_fields/test_mixins.py b/tests/model_fields/test_mixins.py index 8847f25987..f3412eed3a 100644 --- a/tests/model_fields/test_mixins.py +++ b/tests/model_fields/test_mixins.py @@ -1,17 +1,10 @@ from django.db.models.fields.mixins import FieldCacheMixin from django.test import SimpleTestCase -from django.utils.deprecation import RemovedInDjango60Warning from django.utils.functional import cached_property from .models import Foo -# RemovedInDjango60Warning. -class ExampleOld(FieldCacheMixin): - def get_cache_name(self): - return "example" - - class Example(FieldCacheMixin): @cached_property def cache_name(self): @@ -23,21 +16,9 @@ class FieldCacheMixinTests(SimpleTestCase): self.instance = Foo() self.field = Example() - # RemovedInDjango60Warning: when the deprecation ends, replace with: - # def test_cache_name_not_implemented(self): - # with self.assertRaises(NotImplementedError): - # FieldCacheMixin().cache_name - def test_get_cache_name_not_implemented(self): + def test_cache_name_not_implemented(self): with self.assertRaises(NotImplementedError): - FieldCacheMixin().get_cache_name() - - # RemovedInDjango60Warning. - def test_get_cache_name_deprecated(self): - msg = "Override ExampleOld.cache_name instead of get_cache_name()." - with self.assertWarnsMessage(RemovedInDjango60Warning, msg) as ctx: - result = ExampleOld().cache_name - self.assertEqual(result, "example") - self.assertEqual(ctx.filename, __file__) + FieldCacheMixin().cache_name def test_cache_name(self): result = Example().cache_name |
