So, hab mal ein Beispiel gemacht:
EDIT: So jetzt bin ich verwirrt...
Ich hab mal die Unittests gegen "stable/1.7.x", "stable/1.8.x" und "master" gemacht.
https://github.com/jedie/django/branches/yours
Änderungen im Überblick:
gegen "stable/1.7.x":
https://github.com/jedie/django/compare ... elds_1.7.x
gegen "stable/1.8.x":
https://github.com/jedie/django/compare ... elds_1.8.x
gegen "master":
https://github.com/jedie/django/compare ... lds_master
Ergebnis:
1.7.x mit Py2:
Code: Alles auswählen
test_custom_model_field (custom_model_fields.tests.TestModel1Tests) ... FAIL
test_values (custom_model_fields.tests.TestModel1Tests) ... FAIL
test_custom_model_field (custom_model_fields.tests.TestModel2Tests) ... ok
test_values (custom_model_fields.tests.TestModel2Tests) ... FAIL
1.7.x mit Py3:
Code: Alles auswählen
test_custom_model_field (custom_model_fields.tests.TestModel1Tests) ... FAIL
test_values (custom_model_fields.tests.TestModel1Tests) ... FAIL
test_custom_model_field (custom_model_fields.tests.TestModel2Tests) ... FAIL
test_values (custom_model_fields.tests.TestModel2Tests) ... FAIL
1.8.x mit Py2:
Code: Alles auswählen
test_custom_model_field (custom_model_fields.tests.TestModel1Tests) ... ok
test_values (custom_model_fields.tests.TestModel1Tests) ... ok
1.8.x mit Py3:
Code: Alles auswählen
test_custom_model_field (custom_model_fields.tests.TestModel1Tests) ... ok
test_values (custom_model_fields.tests.TestModel1Tests) ... ok
master mit Py2: (geht überhaupt nicht!)
Code: Alles auswählen
Traceback (most recent call last):
File "/home/jens/PyLucid_env/src/django/tests/runtests.py", line 12, in <module>
from django.apps import apps
File "/home/jens/PyLucid_env/src/django/django/apps/__init__.py", line 1, in <module>
from .config import AppConfig # NOQA
File "/home/jens/PyLucid_env/src/django/django/apps/config.py", line 6, in <module>
from django.utils.module_loading import module_has_submodule
File "/home/jens/PyLucid_env/src/django/django/utils/module_loading.py", line 4, in <module>
from importlib import import_module
File "/home/jens/PyLucid_env/src/django/django/utils/importlib.py", line 6, in <module>
ImportError: cannot import name RemovedInDjango19Warning
master mit Py3:
Code: Alles auswählen
test_custom_model_field (custom_model_fields.tests.TestModel1Tests) ... ok
test_values (custom_model_fields.tests.TestModel1Tests) ... ok
test_custom_model_field (custom_model_fields.tests.TestModel2Tests) ... ok
test_values (custom_model_fields.tests.TestModel2Tests) ... ok
Also es gibt eigentlich nur ein Problem mit 1.7.x...
Mit 1.8.x muß man auf
__metaclass__ = models.SubfieldBase verzichten, denn ansonsten geht nichts:
Code: Alles auswählen
Testing against Django installed in '/home/jens/PyLucid_env/src/django/django'
Importing application custom_model_fields
Traceback (most recent call last):
File "/home/jens/PyLucid_env/src/django/tests/runtests.py", line 448, in <module>
options.debug_sql)
File "/home/jens/PyLucid_env/src/django/tests/runtests.py", line 235, in django_tests
state = setup(verbosity, test_labels)
File "/home/jens/PyLucid_env/src/django/tests/runtests.py", line 214, in setup
apps.set_installed_apps(settings.INSTALLED_APPS)
File "/home/jens/PyLucid_env/src/django/django/apps/registry.py", line 324, in set_installed_apps
self.populate(installed)
File "/home/jens/PyLucid_env/src/django/django/apps/registry.py", line 108, in populate
app_config.import_models(all_models)
File "/home/jens/PyLucid_env/src/django/django/apps/config.py", line 198, in import_models
self.models_module = import_module(models_module_name)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/home/jens/PyLucid_env/src/django/tests/custom_model_fields/models.py", line 41, in <module>
class CommaSeparatedModelField2(CommaSeparatedModelField1):
File "/home/jens/PyLucid_env/src/django/django/db/models/fields/subclassing.py", line 22, in __new__
RemovedInDjango20Warning)
django.utils.deprecation.RemovedInDjango20Warning: SubfieldBase has been deprecated. Use Field.from_db_value instead.
Aber vielleicht ist das nur in den unittests so und normalerweise gibt es nur eine normal Warnung?