There have been some proposals to add new dependencies in Django's test 
suite:

1. #23289 <https://code.djangoproject.com/ticket/23289> - unittest.mock 
(included in Python 3.3+; a backport version would need be installed when 
testing on Python 2.7 and 3.2)
2. #23792 <https://code.djangoproject.com/ticket/23792> - freezegun (to 
freeze time.time() and fix some non-deterministic tests, rather than create 
our own "poor freezegun" utility in django.test)

Our current policy is that all test dependencies are optional and if they 
aren't installed, the test is skipped. I'd like to think that Python 
packaging is mature enough that we could consider adding some "hard 
dependencies" like the above (and perhaps removing the existing skip 
requirement entirely) such that runtests.py would thrown an error if it 
doesn't find any required dependencies rather than continue down the path 
of skipping tests which can be tedious. We have the test dependencies in 
requirements files (see tests/requirements) so installing the dependencies 
is fairly painless using pip.

While I know the idea that you can simply clone Django and run the tests 
straight away is appealing, I believe the fact that Python 3.4 includes pip 
and virtualenv should allow us to move forward here. If this nudges people 
to contribute to Django using Python 3 in their local environment, I'd 
consider that a win. If the Django Girls tutorial can use Python 3 (albeit 
with the help of a coach), I'd think Django's contributing docs could take 
this approach as well.

What do you think?

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/df1b45c7-55e7-4d56-b4fa-763a211fdb5a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to