Skip to content
/ pycracks Public

πŸ’’πŸ” breaking change detection in Python - Compatible with Semantic Version and Semantic Release

License

Notifications You must be signed in to change notification settings

ELC/pycracks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Pycracks

PyPI PyPI Downloads PyPI Version GitHub Workflow Status (with event)
Unreleased Commits Last Released date
Quality Coveralls branch Code Climate maintainability Code Climate technical debt
OSSF-Scorecard Score Dependabot
Format Conventional Commits Commitlint
Pre Commit Format Linting
Legal FOSSA Status PyPI - License Commercial Use

πŸ’’πŸ” breaking change detection in Python - Compatible with Semantic Version and Semantic Release

Usage

Use the --help flag for detailed options:

pycracks --help

Pycracks can be used in different ways, the most straightforward one is:

pycracks --paths "tests" --target-version "<to-be-release-version>" --test-command "pytest tests"

The test-command could be any command and does not need to be Python specific

Combine with scripts

It is also possible to simplify the test-command by always using something like pipenv scripts or npm scripts

So in the project.json / Pipfile, one could define the test command and use pycracks with npm run test or pipenv run test instead:

pycracks --paths "tests" --target-version "<to-be-release-version>" --test-command "pipenv run test"
pycracks --paths "tests" --target-version "<to-be-release-version>" --test-command "npm run test"

Semantic Release

If using the Python-Semantic-Release module, installable with:

pipx install python-semantic-release

One can integrate it with PyCracks by using:

pycracks -t "$(semantic-release -v version --print)"

Installation

With Pipx

Recommended instalation for CICD is through pipx with a pinned version:

pip install pipx==1.2.0
pipx run pycracks==0.18.0 --paths "tests" --target-version "<to-be-release-version>" --test-command "pytest tests"

That command will create a virtual environment just for pycracks and run the test command from there.

With pip

Instalation can be done with pip as usual:

pip install pycracks

Pipenv and poetry equivalents can be used as well.

F.A.Q.

License

FOSSA Status

About

πŸ’’πŸ” breaking change detection in Python - Compatible with Semantic Version and Semantic Release

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages