sts-sponsors team mailing list archive
-
sts-sponsors team
-
Mailing list archive
-
Message #04625
[Merge] ~ack/maas:drop-base-model-field-override into maas:master
Alberto Donato has proposed merging ~ack/maas:drop-base-model-field-override into maas:master.
Commit message:
drop custom model Field
This was meant to avoid an issue with model.Field mutable args in constructor,
which has long been fixed in Django
Requested reviews:
MAAS Maintainers (maas-maintainers)
For more details, see:
https://code.launchpad.net/~ack/maas/+git/maas/+merge/435954
--
Your team MAAS Committers is subscribed to branch maas:master.
diff --git a/src/maasserver/fields.py b/src/maasserver/fields.py
index 7eeaad1..3c02e5a 100644
--- a/src/maasserver/fields.py
+++ b/src/maasserver/fields.py
@@ -29,9 +29,15 @@ from django import forms
from django.core.exceptions import ObjectDoesNotExist, ValidationError
from django.core.validators import RegexValidator, URLValidator
from django.db import connections
-from django.db.models import BinaryField, CharField
-from django.db.models import Field as _BrokenField
-from django.db.models import GenericIPAddressField, IntegerField, Q, URLField
+from django.db.models import (
+ BinaryField,
+ CharField,
+ Field,
+ GenericIPAddressField,
+ IntegerField,
+ Q,
+ URLField,
+)
from django.utils.deconstruct import deconstructible
from django.utils.encoding import force_str
from netaddr import AddrFormatError, IPAddress, IPNetwork
@@ -46,17 +52,6 @@ from maasserver.utils.orm import get_one, validate_in_transaction
MODEL_NAME_VALIDATOR = RegexValidator(r"^\w[ \w-]*$")
-class Field(_BrokenField):
- """Django's `Field` has a mutable default argument, hence is broken.
-
- This fixes it.
- """
-
- def __init__(self, *args, validators=None, **kwargs):
- kwargs["validators"] = [] if validators is None else validators
- super().__init__(*args, **kwargs)
-
-
MAC_RE = re.compile(
r"^\s*("
r"([0-9a-fA-F]{1,2}:){5}[0-9a-fA-F]{1,2}|"
diff --git a/src/metadataserver/fields.py b/src/metadataserver/fields.py
index 7301ed6..a58b70d 100644
--- a/src/metadataserver/fields.py
+++ b/src/metadataserver/fields.py
@@ -7,8 +7,7 @@
from base64 import b64decode, b64encode
from django.db import connection
-
-from maasserver.fields import Field
+from django.db.models import Field
class Bin(bytes):
Follow ups