Opened 20 months ago

Closed 6 weeks ago

#21793 closed Cleanup/optimization (wontfix)

Require specific versions of test suite's Python dependencies?

Reported by: JustinTArthur Owned by: nobody
Component: Testing framework Version: master
Severity: Normal Keywords: testing, test suite, continuous integration, ci, dependencies, pip, pypi
Cc: Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Currently, there are several tests that depend on 3rd party libraries that we haven't assimilated into the source code directly. These tests are simply skipped/passed when a developer or tester's environment is missing one of these libraries.

The question is:
Do we want to specify the preferred versions of these dependencies in test/requirements/*.txt?

Additionally:
Do we want to have the CI environment(s) use those text files for the automated testing we do? (they currently don't according to timo)

I vote for at least adjusting those text files to refer to the same dependency versions as our CI environments are currently using for the sake of giving contributors a consistent regression testing process (their passing-on-local test less likely to fail-on-continuous-integration).

We may also have a day when a developer's local test suite goes red, not because Django has regressed, but because one of the test's dependencies has changed in API or behavior. This could be desired behavior? I don't know.

Ticket inspired by a #django-dev conversation with timo on 2014-01-16 with regards to pull request 2173, which adds a dependency to a specific version of a 3rd-party library.

Change History (3)

comment:1 Changed 20 months ago by JustinTArthur

  • Needs documentation unset
  • Needs tests unset
  • Patch needs improvement unset

Where these dependencies are currently documented (outside those pip-readable textfiles): https://docs.djangoproject.com/en/1.6/internals/contributing/writing-code/unit-tests/#running-all-the-tests

comment:2 Changed 20 months ago by timo

  • Triage Stage changed from Unreviewed to Accepted

I think this is likely to happen at some point.

comment:3 Changed 6 weeks ago by timgraham

  • Resolution set to wontfix
  • Status changed from new to closed

18 months later, the status quo seems okay to me. When there are new versions of dependencies that don't work with older versions of Django, we add specific version requirements at that time.

Note: See TracTickets for help on using tickets.
Back to Top