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

Add contribution docs for local dev #18

Merged
merged 2 commits into from
Dec 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 27 additions & 3 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Contributing to Publishing Python Packages
# Contributing to repo-man

Thank you for your interest in improving repoman!
Thank you for your interest in improving repo-man!
Please read these guidelines to see how best to contribute to the project's success.

## Source code issues

If you've discovered an issue with the code in this repository, please [open an issue](https://github.com/easy-as-python/repo-man/issues/new/choose).
Or, if you have time, please consider forking this repo and opening a pull request with the fix!
Or, if you have time, please consider forking this repository and opening a pull request with the fix!

## Questions

Expand All @@ -15,3 +15,27 @@ If you just have a question or would like to discuss ideas, [start a discussion]
## Code of conduct

Please read the [code of conduct](../CODE_OF_CONDUCT.md) before contributing to this repository.

## Local development

This section covers how to work with the project when developing changes locally.

### Running

To run repo-man as a command-line interface (CLI) locally, you need to install the package.
You can install the package in a Python virtual environment using your preferred method, or use [pipx](https://pipx.pypa.io/stable/).
You can use the `-e` flag in either pip or pipx to install repo-man from the project directory as an editable package so that any changes you make will be reflected the next time you use the CLI.
If using a virtual environment, be sure the environment is activated before trying to use the CLI so that the `repo-man` command will be on your `$PATH`.

### Testing

The test suite runs using [tox](https://tox.wiki).
You can install tox into the same virtual environment you use to install the project, or you can install tox using pipx as well.
Once you've installed tox, you can run the `tox` command in the root of the project to run unit tests with coverage.

### Linting, type checking, and formatting

Several other project development activities such as linting, type checking, and formatting are also available as tox environments.
You can see all available tasks in `setup.cfg`.
These will be run when you open a pull request, and the checks will fail if you haven't fixed any issues locally.
If this happens, run the tasks locally to find and fix any issues, then push your changes.
4 changes: 2 additions & 2 deletions .github/workflows/packaging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ jobs:
uses: softprops/action-gh-release@v1
with:
files: |
dist/repoman-*.whl
dist/repoman-*.tar.gz
dist/repo-man-*.whl
dist/repo_man-*.tar.gz
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}