Skip to main content

Distribute extension to install components listed in extras_require

Project description

This package adds a command to distribute to interact with the extra components listed in extras_require.

For example, you could write a setup.py containing:

setup(
    name="Project-A",
    ...
    extras_require={
        'PDF': ["ReportLab>=1.2", "RXP"],
        'reST': ["docutils>=0.3"],
    }
 )

Then distribute-install_component allows you to write:

$ python setup.py install_component PDF reST

to install the dependencies needed for these features.

Commandline Arguments

install_component takes a list of components to install dependencies for. These must be listed in the extras_require section of the package.

The -l option can be used to list the components available.

Configuring a package

To make distribute-install_component available in your package, you can add it to setup_requires in your setup.py:

setup(
    name='myproject',
    ...
    setup_requires=[
        'distribute-install_component',
    ]
)

Tips

You can use distribute-install_requires to provide development dependencies, such as documentation builders or testing packages:

setup(
    name='myproject',
    ...
    setup_requires=[
        'distribute-install_component',
    ],
    extras_require={
        'test': ['nose==1.1.2', 'mock==0.8.0'],
        'docs': ['Sphinx>=1.1.3', 'sphinxcontrib-httpdomain==1.1.7'],
    }
)

Then normal users can just run

$ python setup.py install

While developers can run

$ python setup.py develop install_component test docs

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

distribute-install_component-0.1.tar.gz (2.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page