Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature request] export --inspect results in a machine-readable format #116

Open
jameslamb opened this issue Nov 28, 2022 · 0 comments
Open
Labels
enhancement New feature or request

Comments

@jameslamb
Copy link
Owner

What change would you like to see?

pydistcheck --inspect should support optionally writing its information into at least one machine-readable format.

How would implementing this improve pydistcheck?

Right now, pydistcheck --inspect just prints information like the following.

file size
  * compressed size: 6.3779K
  * uncompressed size: 11.5596K
  * compression space saving: 0.448
contents
  * directories: 2
  * files: 9
size by extension
  * .txt - 11.1K (96.0%)
  * .py - 0.4K (3.2%)
  * .PY - 0.1K (0.6%)
  * .ini - 0.0K (0.2%)

Exporting it to JSON (and maybe CSV or Parquet in the future) would enable the following:

  • analyzing the results of pydistcheck run over multiple Python package distributions (e.g. for research purposes)
  • building extensions that merge pydistcheck's analysis with other tools' analyses of Python package distributions

Notes

I really like the way that pytest-cov does this.

https://pytest-cov.readthedocs.io/en/latest/reporting.html

pytest --cov-report html:cov_html
        --cov-report xml:cov.xml
        --cov-report lcov:cov.info

That's awesome because it allows for:

  • writing multiple formats or different copies from a single command
  • redirecting output to other directories without needing a separate argument
@jameslamb jameslamb added the enhancement New feature or request label Nov 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant