Skip to main content

No description has been added so far.

Project description

Build Status PyPI version License Test Coverage

This python package allows you to validate npm package names. It is a python implementation of the official npm/validate-npm-package-name package for javascript.

$ pip install npm_package_validator

CLI Usage

$ npm_package_validator my-package

Programmatic usage

Validate an npm package name like this:

import npm_package_validator
# Fails! Uppercase is not allowed for new packages
assert npm_package_validator.valid_new_package('MY-package')

However, upper case once has been allowed and you can also validate old, existing packages:

assert npm_package_validator.valid_old_package('MY-package')  # Succeeds!

When using the CLI, you can use the --old flag.

If you want to know whats wrong with a name, use:

from npm_package_validator.validate import validate_package
errors, warnings = validate_package('MY-package')
print("Errors: %s" % ", ".join(errors))
print("Warnings: %s" % ", ".join(warnings))

A valid new package name must have neither errors nor warnings. Existing packages can have warnings, as the npm validation rules have become stricter over time.

Credits

This package is a port from the official npm/validate-npm-package-name

Development

For detailed instructions see CONTRIBUTING.

Tests

You can run tests with

$ invoke test
$ invoke test --min-coverage=90     # Fail when code coverage is below 90%
$ invoke type-check                 # Run mypy type checks

Linting and formatting

Lint and format the code with

$ invoke format
$ invoke lint

All of this happens when you run invoke pre-commit.

Note

This project is still in the alpha stage and should not be considered production ready.

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

npm_package_validator-1.0.3.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

npm_package_validator-1.0.3-py2.py3-none-any.whl (6.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file npm_package_validator-1.0.3.tar.gz.

File metadata

  • Download URL: npm_package_validator-1.0.3.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for npm_package_validator-1.0.3.tar.gz
Algorithm Hash digest
SHA256 c9e63ddf2224c996d76e525f98f62a100a434d52b69fe45726aac9650eee0bbc
MD5 bfa0b66b33447f5bd5afb64dfe8aba23
BLAKE2b-256 8eaec122ae3ee4cd7c4e765e3a71fdf5ebee7efcfd03bc59358b1b8c1292685c

See more details on using hashes here.

File details

Details for the file npm_package_validator-1.0.3-py2.py3-none-any.whl.

File metadata

  • Download URL: npm_package_validator-1.0.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for npm_package_validator-1.0.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1c307226ab7e097edb74fdba4490c7a0b66fb06fbe0926d1e1d5bccda82b4833
MD5 92b1e18f238d2601fe733b506a7fbb7c
BLAKE2b-256 c50c46bd836f7070a67b97f558ab8b97067583f4e45aa405d7734968c69dbacc

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