A collection of tools for commmon package scripts
Project description
JGT Tools is a collection of package helpers for common CLI functions within a properly-formatted repository.
Quickstart
Just include jgt_tools in your package VirtualEnv, and you’ll have access to these CLI calls:
env-setup - set up the development environment with all packages and pre-commit checks
self-check - run self-checks/linters/etc. on your repository
run-tests - run your in-repo test suite
build-docs - build repo documentation locally
build-and-push-docs - both build the docs, then publish to your gh-pages branch
check-version - raise an error if package-relevant files have changed without a version bump
Details for each script can be found by calling with the --help flag.
Configuration
A number of the actions to be called can be customized in a [tool.jgt_tools] in your pyproject.toml file. Available values are:
env_setup_commands - a list of commands to be run under the env-setup call
self_check_commands - a list of commands to be run under the self-check call
run_tests_commands - a list of commands to be run under the run-tests call
doc_build_types - a list of types for doc construction: - api is currently the only supported option
For example:
[tool.jgt_tools] env_setup_commands = [ "poetry install", "poetry run pip install other_package", "./my_custom_setup_script.sh" ] doc_build_types = []
would run your specified commands for env-setup and skip the api doc builder.
In addition, the function to verify which files are relevant to check-version can be customized. By default, if any files in the diff against master are .py files, a version bump is expected, but the user can provide an alternate function to verify filenames.
The function should expected a list of strings representing file paths relative from project root (as provided by git diff master --name-only) and return a boolean representing if a version change should be ensured (i.e. True if version should be checked).
This can be registered as a plugin in your pyproject.toml file:
[tools.poetry.plugins."file_checkers"] "version_trigger" = "my_module:my_function"
or in your setup.py file:
setup( ... entry_points={ "version_trigger": ["version_trigger = my_module:my_fuction"] } )
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
Built Distribution
Hashes for jgt_tools-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b23b84b0e14fda2b1ceaafd568ec28872e998b983b7e68188e8e57415dc2385 |
|
MD5 | f9da3b3572aaed3472b5e64d954558e3 |
|
BLAKE2b-256 | 558e5075cdae694c284675cc1707de70afb1d4aef79999c8f80fa6c221d791b5 |