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 details)

Uploaded Source

File details

Details for the file distribute-install_component-0.1.tar.gz.

File metadata

File hashes

Hashes for distribute-install_component-0.1.tar.gz
Algorithm Hash digest
SHA256 01572fc015f0fcc2320efdf75b6f8cb59ff48f882c9cf59867979897923a6a48
MD5 dc7e8051658cefeefc267430674bb0cc
BLAKE2b-256 6b5d0324cffda8dcf596a0fdff42e03ff9e3777e4de761b13ddfec80ca4dbb29

See more details on using hashes here.

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