Django 1.7 - How do I suppress "(1 6.W001) Es posible que algunas unidades de proyecto no se ejecuten como se esperaba."?


Tengo una aplicación Django que tiene partes escritas originalmente en Django 1.2, y la aplicación se ha actualizado hasta la 1.7. Después de actualizar a la versión 1.7, recibo la siguiente advertencia de python manage.py check:

System check identified some issues:

WARNINGS:
?: (1_6.W001) Some project unittests may not execute as expected.
    HINT: Django 1.6 introduced a new default test runner. It looks like this project was generated using Django 1.5 or earlier. You should ensure your tests are all running & behaving as expected. See https://docs.djangoproject.com/en/dev/releases/1.6/#new-test-runner for more information.

La URL mencionada en el mensaje de error detalla los cambios que se han realizado, pero no da ninguna pista sobre por qué se activa esta advertencia o cómo suprimirla. A pesar de que el mensaje de advertencia hace referencia a Django 1.6, solo comenzó a aparecer después de actualizar a Django 1.7

He comprobado que se está ejecutando el mismo número de pruebas unitarias bajo Django 1.7 que bajo Django 1.6.1.

Para los interesados, la aplicación en cuestión es un sistema de gestión de eventos llamado Kompassi que se puede encontrar en Github.

Author: Santtu Pajukanta, 2014-09-16

5 answers

Parece Que los desarrolladores han decidido eliminar esta advertencia:

Https://code.djangoproject.com/ticket/23469

 9
Author: Arklon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-19 16:57:28

Encontró una entrada de blog que revela explícitamente especificar

TEST_RUNNER = 'django.test.runner.DiscoverRunner'

En settings.py detendrá esta advertencia.

 45
Author: Santtu Pajukanta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-09-16 17:19:12

Véase https://github.com/django/django/blob/1.7/django/core/checks/compatibility/django_1_6_0.py#L42 para la lista de cosas que comprueba que le da este error.

 10
Author: xeor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-26 12:36:44

Puede silenciar advertencias individuales de comprobación del sistema con la configuración SILENCED_SYSTEM_CHECKS.

Con respecto a su otra pregunta sobre cómo encontrar las razones por las que se activó esta advertencia, el único lugar que pude encontrar fue mirando el código fuente .

 9
Author: Vinod Kurup,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-05-03 10:23:47

Si todo está bien con sus pruebas, simplemente puede desactivar la advertencia haciendo uno (o todos) de estos pasos:

  1. Elimine SITE_ID de su configuración si ya no utiliza sites framework.

  2. Agregue la variable BASE_DIR a su configuración.

  3. Elimine la lista MANAGERS de su configuración si no la usa.

  4. Eliminar XFrameOptionsMiddleware middleware en configuración. (Está habilitado por defecto en Django 1.6 + de todos modos)

  5. Eliminar personalizado TEMPLATE_LOADERS o ADMINS si no los necesitas (normalmente lo haces, así que no lo hagas a menos que sepas lo que estás haciendo).

Esas son dos cosas que la heurística actual (Django 1.7.3) comprueba para detectar si su proyecto fue generado por Django

 8
Author: Ivan Anishchuk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-02-27 19:47:10