summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2022-07-20 07:35:10 +0200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-07-26 11:41:19 +0200
commit66f30dbf253f89a3803aebbcee2675ce3e186b00 (patch)
tree2a7fd7c98a8d689f49e4fbe4d5184cd7aba3930b
parenta1e9e9abc592b8f44fa798c6e4e225b1a04f757c (diff)
Refs #27236 -- Reverted "Refs #27236 -- Refactored out DeprecationForHistoricalMigrationMixin."
This reverts commit 57793b47657ace966ce8ce96d801ac0d85e5efc6.
-rw-r--r--django/db/models/fields/__init__.py35
-rw-r--r--django/utils/deprecation.py39
2 files changed, 31 insertions, 43 deletions
diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py
index 3757860f20..5381a3b17f 100644
--- a/django/db/models/fields/__init__.py
+++ b/django/db/models/fields/__init__.py
@@ -24,7 +24,6 @@ from django.utils.dateparse import (
parse_duration,
parse_time,
)
-from django.utils.deprecation import DeprecationForHistoricalMigrationMixin
from django.utils.duration import duration_microseconds, duration_string
from django.utils.functional import Promise, cached_property
from django.utils.ipv6 import clean_ipv6_address
@@ -112,7 +111,7 @@ def return_None():
@total_ordering
-class Field(DeprecationForHistoricalMigrationMixin, RegisterLookupMixin):
+class Field(RegisterLookupMixin):
"""Base class for all field types"""
# Designates whether empty strings fundamentally are allowed at the
@@ -138,7 +137,8 @@ class Field(DeprecationForHistoricalMigrationMixin, RegisterLookupMixin):
"%(date_field_label)s %(lookup_type)s."
),
}
- check_type = "fields"
+ system_check_deprecated_details = None
+ system_check_removed_details = None
# Attributes that don't affect a column definition.
# These attributes are ignored when altering the field.
@@ -263,7 +263,7 @@ class Field(DeprecationForHistoricalMigrationMixin, RegisterLookupMixin):
*self._check_null_allowed_for_primary_keys(),
*self._check_backend_specific_checks(**kwargs),
*self._check_validators(),
- *self.check_deprecation_details(),
+ *self._check_deprecation_details(),
]
def _check_field_name(self):
@@ -441,6 +441,33 @@ class Field(DeprecationForHistoricalMigrationMixin, RegisterLookupMixin):
)
return errors
+ def _check_deprecation_details(self):
+ if self.system_check_removed_details is not None:
+ return [
+ checks.Error(
+ self.system_check_removed_details.get(
+ "msg",
+ "%s has been removed except for support in historical "
+ "migrations." % self.__class__.__name__,
+ ),
+ hint=self.system_check_removed_details.get("hint"),
+ obj=self,
+ id=self.system_check_removed_details.get("id", "fields.EXXX"),
+ )
+ ]
+ elif self.system_check_deprecated_details is not None:
+ return [
+ checks.Warning(
+ self.system_check_deprecated_details.get(
+ "msg", "%s has been deprecated." % self.__class__.__name__
+ ),
+ hint=self.system_check_deprecated_details.get("hint"),
+ obj=self,
+ id=self.system_check_deprecated_details.get("id", "fields.WXXX"),
+ )
+ ]
+ return []
+
def get_col(self, alias, output_field=None):
if alias == self.model._meta.db_table and (
output_field is None or output_field == self
diff --git a/django/utils/deprecation.py b/django/utils/deprecation.py
index eaef496138..caed5b25d4 100644
--- a/django/utils/deprecation.py
+++ b/django/utils/deprecation.py
@@ -157,42 +157,3 @@ class MiddlewareMixin:
thread_sensitive=True,
)(request, response)
return response
-
-
-class DeprecationForHistoricalMigrationMixin:
- system_check_deprecated_details = None
- system_check_removed_details = None
- check_type = ""
-
- def check_deprecation_details(self):
- from django.core import checks
-
- if self.system_check_removed_details is not None:
- return [
- checks.Error(
- self.system_check_removed_details.get(
- "msg",
- "%s has been removed except for support in historical "
- "migrations." % self.__class__.__name__,
- ),
- hint=self.system_check_removed_details.get("hint"),
- obj=self,
- id=self.system_check_removed_details.get(
- "id", f"{self.check_type}.EXXX"
- ),
- )
- ]
- elif self.system_check_deprecated_details is not None:
- return [
- checks.Warning(
- self.system_check_deprecated_details.get(
- "msg", "%s has been deprecated." % self.__class__.__name__
- ),
- hint=self.system_check_deprecated_details.get("hint"),
- obj=self,
- id=self.system_check_deprecated_details.get(
- "id", f"{self.check_type}.WXXX"
- ),
- )
- ]
- return []