Skip to content

Matplotlib Installing Test Dependencies #3649

Closed

Description

@HolgerPeters

Hi,

it seems that matplotlib by default now pulls dependencies for testing, such as nose and mock. While this might be handy for a matplotlib developer, I think this should not be the default for a matplotlib user.

I think the more canonical behaviour would be to install matplotlib (with its tests even) and then let the user install nose and test if they want to run the tests.

I would be willing to contribute a pull request removing the nose and mock from the list of install requirements.

Activity

  1. matthew-brett commented on Oct 15, 2014

    @matthew-brett
    Contributor

    The more common pattern is to make nose, mock "extra" dependencies in the setuptools sense (as in pip install matplotlib[test]) - see the IPython setup.py and supporting functions for an example.

  2. HolgerPeters commented on Oct 16, 2014

    @HolgerPeters
    ContributorAuthor

    "extra" dependencies seem to be deprecated. I would suggest that we use tests_require to specify the test dependencies and then register a TestCommand in the setup.py. This means that upon running python setup.py test, the test requirements are installed not in the virtual environment, but as eggs in the local folder.

    python setup.py test would be the standard way to invoke the nosetests (i.e. take the role of today's ./tests.py)

  3. added this to the v1.4.x milestone on Oct 16, 2014
  4. tacaswell commented on Oct 16, 2014

    @tacaswell
    Member

    @HolgerPeters My understanding of the history of our setup.py and test suite is that they pre-dated many of today's standard best practices/tools and grew organically over time. This has resulted in something that works, but is a bit Frankenstein like, even by the standards of python + c-extension packaging.

    If you would like to take a crack at cleaning up/modernizing/making sane the build scripts please go for it!

    On the radar is also to make sure we have a working conda recipe in our repo.

  5. modified the milestones: , v1.4.x on Oct 16, 2014
  6. QuLogic commented on Aug 13, 2015

    @QuLogic
    Member

    This was fixed by #4188/#4668, no?

  7. jenshnielsen commented on Aug 13, 2015

    @jenshnielsen
    Member

    Yes they are no longer installed automatically

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions