Python package to analyze compliance with fair-software.eu recommendations
Project description
Python package to analyze a GitHub repository’s compliance with the fair-software.eu recommendations.
Install
pip3 install --user howfairis
Afterwards check that the install directory was added to the PATH environment variable. You should then be able to call the executable, like so:
howfairis https://github.com/owner/repo # Linux | Mac
howfairis.exe https://github.com/owner/repo # Windows
Expected output
Depending on for which repository you are doing the analysis, the output looks something like this:
Checking compliance with fair-software.eu...
Running for https://github.com/fair-software/badge-test
(1/5) repository
✓ has_open_repository
(2/5) license
✓ has_license
(3/5) registry
× has_bintray_badge
× has_conda_badge
× has_cran_badge
× has_crates_badge
× has_maven_badge
× has_npm_badge
✓ has_pypi_badge
× has_rsd_badge
× is_on_github_marketplace
(4/5) citation
× has_citation_file
× has_citationcff_file
× has_codemeta_file
✓ has_zenodo_badge
× has_zenodo_metadata_file
(5/5) checklist
✓ has_core_infrastructures_badge
× has_sonarcloud_badge
Calculated compliance: ● ● ● ● ●
Expected badge is equal to the actual badge. It's all good.
Development install
# Create a virtualenv, e.g. with
python3 -m virtualenv -p python3 venv3
# activate virtualenv
source venv3/bin/activate
# (from the project root directory)
# install howfairis as an editable package
pip install --editable .
pip install --editable .[dev]
Afterwards check that the install directory was added to the PATH environment variable. You should then be able to call the executable, like so:
howfairis https://github.com/owner/repo # Linux | Mac
howfairis.exe https://github.com/owner/repo # Windows
For maintainers
Bumping the version across all files is done with bump2version, e.g.
bump2version minor
Making a release
Make sure the version is correct.
# In a new terminal, without venv
cd $(mktemp -d --tmpdir howfairis.XXXXXX)
git clone https://github.com/fair-software/howfairis.git .
python3 -m virtualenv -p python3 venv3
source venv3/bin/activate
pip install --no-cache-dir --editable .
pip install --no-cache-dir --editable .[publishing]
rm -rf howfairis.egg-info
rm -rf dist
python setup.py sdist
# upload to test pypi instance
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
# In a new terminal, without venv
# check you don't have an existing howfairis
python3 -m pip uninstall howfairis
# install in user space from test pypi instance:
python3 -m pip -v install --user --no-cache-dir \
--index-url https://test.pypi.org/simple/ \
--extra-index-url https://pypi.org/simple howfairis
# check that the package works as it should when installed from pypitest
# Back to the first terminal,
# FINAL STEP: upload to PyPI
twine upload dist/*
Don’t forget to also make a release on GitHub.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file howfairis-0.7.0.tar.gz
.
File metadata
- Download URL: howfairis-0.7.0.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e367694c97f96ccd3e51ef135f183ecbc5b71eefccbf1559b27d3166330d4d5c |
|
MD5 | a162151ab9d257d168836b690efb79ce |
|
BLAKE2b-256 | 4c3533a4be486081a1d791d31f26c9aa16599174d0f0f9cdd2b352901696b78f |