Skip to main content

typescore - generate typing completeness scores (and more) for a set of packages

Project description

#typescore

typescore generates typing completeness scores (and more) for a set of packages.

Usage:

  typescore [--packages <packages>] [--scores <scorefile>] [--sep <sep>] [--verbose] [<package>...]
  typescore --help
  typescore --version

Options:
  --packages <packages> File containing the list of packages.
  --scores <scorefile>  The output file (if not stdout).
  --sep <sep>           CSV column separator. [default: ,]
  -v, --verbose         Include package info in the output.
  -h, --help            Show this help.
  -V, --version         Show the version.

typescore uses pyright to score the typing completeness of a set of Python packages. It reads this list from <packages> and writes the results to <scorefile>. If errors prevent it from scoring a package it will set the score to 0%.

The output has the form:

package,typed,module,score,extra_columns

or, if --verbose is specified:

package,version,typed,module,score,stub_package,package_description,extra_columns

typed is a Boolean and tells whether the package had a py.typed file.

Note: we only score top-level modules, not submodules. The assumption is that scores for top-level modules would be reasonably representative of the packages all-up.

<packages> should have one package name per line. It can be a CSV file with the package name as the first column, in which case other columns will be included in the score file output (the extra_columns). A typical extra column might be the package rank on PyPI downloads.

While it would be useful to be able to measure the coverage scores on stub packages too, pyright does not support doing so. As a result, you should evaluate whether a stub package is better than the inline types for a package yourself beffore making use of it.

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

typescore-0.10.tar.gz (56.1 kB view details)

Uploaded Source

Built Distribution

typescore-0.10-py2.py3-none-any.whl (8.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file typescore-0.10.tar.gz.

File metadata

  • Download URL: typescore-0.10.tar.gz
  • Upload date:
  • Size: 56.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for typescore-0.10.tar.gz
Algorithm Hash digest
SHA256 ecddd3c3512204577720c6e0eb0641a070e1b9ed9d34528407771d83ddb9cdef
MD5 5422a09df53625e62ca93f46a8aa9935
BLAKE2b-256 70f33d2038c187e0c9e7d43cbbab4b8167fca57f8d395a2b529d9bda5883d337

See more details on using hashes here.

File details

Details for the file typescore-0.10-py2.py3-none-any.whl.

File metadata

  • Download URL: typescore-0.10-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for typescore-0.10-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 fa8d769924232e8735bb00b309b222b6f57a9e55de463e6a3521f8470de58b4f
MD5 22c3b91f735ea5c8aa15a0a430b293a1
BLAKE2b-256 e189c93e4ad4d06664bd07945d3bd0eed9ebe06447b04bd70b31184b29ab51b5

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