Skip to main content

Plugin for setuptools and npm

Project description

Plugin for setuptools to run npm commands.

Usage

This command provides npm_install and npm_run commands.

Run python setup.py npm_install –help or python setup.py npm_run –help for available options.

npm_not_skipped is a helper function that can be used as predicate for distutils subcommand. It evaluates to True if env variable SKIP_NPM is not defined. This variable is exclusive to this helper function and is not evaluated in npm_install and npm_run commands themselves.

Example

Let’s say you have defined build command in package.json and you’d like to run npm clean-install and npm run build each time you run setup.py build. You’d configure your project like this:

# pyproject.toml
[build-system]
requires = ["setuptools", "setuptools-npm"]
build-backend = "setuptools.build_meta"
# setup.py
from distutils.command.build import build
from setuptools import setup
from setuptools_npm import npm_not_skipped

class custom_build(build):
    sub_commands = [
        ('npm_install', npm_not_skipped),
        ('npm_run', npm_not_skipped),
    ] + build.sub_commands

setup(cmdclass={'build': custom_build, 'sdist': custom_sdist})
# setup.cfg
[npm_run]
script = build

Project details


Download files

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

Source Distribution

setuptools-npm-0.3.tar.gz (15.5 kB view details)

Uploaded Source

Built Distribution

setuptools_npm-0.3-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file setuptools-npm-0.3.tar.gz.

File metadata

  • Download URL: setuptools-npm-0.3.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.0 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.10

File hashes

Hashes for setuptools-npm-0.3.tar.gz
Algorithm Hash digest
SHA256 46c77ea1ebcecf2eca2f0c1dd27b066cc5cc18a230aa250b54ce4a1d2d005c70
MD5 b7f5c147e0eefceecc2d591c5c892ee5
BLAKE2b-256 59f7085661b8f234a889a18034ff15b16662406d03d6f51399d50d2924df6110

See more details on using hashes here.

File details

Details for the file setuptools_npm-0.3-py3-none-any.whl.

File metadata

  • Download URL: setuptools_npm-0.3-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.0 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.10

File hashes

Hashes for setuptools_npm-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 75bbc46ce8a2c7d2594394ec1e80d39d5dc0d10e260d3d3f3ab2dac1d5772f49
MD5 439167a35534ed54f48a8dc39edcf384
BLAKE2b-256 f90c4b6f2aad09e6f4cad49143195c8c5e4af1dac62e6670038ff3ac6afb8613

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