Skip to content

Commit bd5e601

Browse files
authored
refactor: 📝 use uv not pipx in CONTRIBUTING (#336)
1 parent 25965e4 commit bd5e601

1 file changed

Lines changed: 60 additions & 63 deletions

File tree

template/CONTRIBUTING.md.jinja

Lines changed: 60 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -11,104 +11,101 @@ issue on our GitHub repository.
1111

1212
{% if for_seedcase -%}
1313
If you would like to contribute content, please check out our
14-
[guidebook](https://guidebook.seedcase-project.org/) for more specific
15-
details on how we work and develop. It is a regularly evolving document,
16-
so is at various states of completion.
14+
[guidebook](https://guidebook.seedcase-project.org/) for more specific details
15+
on how we work and develop. It is a regularly evolving document, so is at
16+
various states of completion.
1717
{%- endif %}
1818

1919
To contribute to `{{ github_repo }}`, you first need to install
2020
[uv](https://docs.astral.sh/uv/) and
21-
[justfile](https://just.systems/man/en/packages.html). We use uv and
22-
justfile to manage our package, such as to run checks and test the
23-
template. Both the uv and justfile websites have a more detailed guide
24-
on using uv, but below are some simple instructions to get you started.
21+
[justfile](https://just.systems/man/en/packages.html). We use uv and justfile to
22+
manage our package, such as to run checks and test the package. Both the uv and
23+
justfile websites have a more detailed guide on using uv, but below are some
24+
simple instructions to get you started.
2525

26-
It's easiest to install uv and justfile using
27-
[pipx](https://pipx.pypa.io/stable/), so install that first. Then,
28-
install uv and justfile by running:
26+
It's easiest to first
27+
[install uv](https://docs.astral.sh/uv/getting-started/installation/) and then
28+
install justfile and the other tools with uv. Once you've installed uv, install
29+
the other tools by running:
2930

30-
``` bash
31-
pipx install uv rust-just pyrefly
31+
```bash
32+
uv tool install rust-just pyrefly ruff
3233
```
3334

34-
We keep all our development workflows in the `justfile`, so you can
35-
explore it to see what commands are available. To see a list of commands
36-
available, run:
35+
We install Ruff and Pyrefly to make these tools available to other tools and VS
36+
Code.
37+
38+
We keep all our development workflows in the `justfile`, so you can explore it
39+
to see what commands are available. To see a list of commands available, run:
3740

3841
``` bash
3942
just
4043
```
4144

42-
As you contribute, make sure your changes will pass our tests by opening
43-
a terminal so that the working directory is the root of this package's
44-
repository and running:
45+
As you contribute, make sure your changes will pass our tests by opening a
46+
terminal so that the working directory is the root of this package's repository
47+
and running:
4548

4649
``` bash
4750
just run-all
4851
```
4952

50-
When committing changes, please try to follow [Conventional
51-
Commits](https://decisions.seedcase-project.org/why-conventional-commits/)
52-
as Git messages. Using this convention allows us to be able to
53-
automatically create a release based on the commit message by using
53+
When committing changes, please try to follow
54+
[Conventional Commits](https://decisions.seedcase-project.org/why-conventional-commits/)
55+
as Git messages. Using this convention allows us to be able to automatically
56+
create a release based on the commit message by using
5457
[Cocogitto](https://decisions.seedcase-project.org/why-semantic-release-with-cocogitto/).
55-
If you don't use Conventional Commits when making a commit, we will
56-
revise the pull request title to follow that format, as we use squash
57-
merges when merging pull requests,
58-
so all other commits in the pull request will be squashed into one
59-
commit.
58+
If you don't use Conventional Commits when making a commit, we will revise the
59+
pull request title to follow that format, as we use squash merges when merging
60+
pull requests, so all other commits in the pull request will be squashed into
61+
one commit.
6062

6163
## :file_folder: Explanation of files and folders
6264

63-
64-
- `.github/`: Contains GitHub-specific files, such as issue and pull
65-
request templates, workflows,
65+
- `.github/`: Contains GitHub-specific files, such as issue and pull request
66+
templates, workflows,
6667
[dependabot](https://docs.github.com/en/code-security/tutorials/secure-your-dependencies/dependabot-quickstart-guide)
6768
configuration, pull request templates, and a
6869
[CODEOWNERS](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners)
6970
file.
70-
- `tools/vulture-allowlist.py`: List of variables that shouldn't be
71-
flagged by [Vulture](https://github.com/jendrikseipp/vulture) as
72-
unused.
73-
- `tools/get-contributors.sh`: Script to get list of package
74-
contributors.
71+
- `tools/vulture-allowlist.py`: List of variables that shouldn't be flagged by
72+
[Vulture](https://github.com/jendrikseipp/vulture) as unused.
73+
- `tools/get-contributors.sh`: Script to get list of package contributors.
7574
- `tests/`: Test files for the package.
7675
- `src/`: Source code for the package.
7776
- `docs/`: Documentation about using and developing the Python package.
78-
- `.config/`: Contains configuration files for various tools used in the package,
79-
such as:
80-
- `quartodoc.py`: Custom
81-
[`quartodoc`](https://machow.github.io/quartodoc/) renderer.
82-
- `ruff.toml`: [Ruff](https://docs.astral.sh/ruff/) configuration file
83-
for linting and formatting Python code.
77+
- `.config/`: Contains configuration files for various tools used in the
78+
package, such as:
79+
- `quartodoc.py`: Custom [`quartodoc`](https://machow.github.io/quartodoc/)
80+
renderer.
81+
- `ruff.toml`: [Ruff](https://docs.astral.sh/ruff/) configuration file for
82+
linting and formatting Python code.
8483
- `rumdl.toml` and `panache.toml`: [rumdl](https://rumdl.dev) and
8584
[Panache](https://panache.bz) configuration file for formatting Markdown
8685
files in the project.
87-
- `cog.toml`: [Cocogitto](https://docs.cocogitto.io) configuration file
88-
for managing versions.
86+
- `cog.toml`: [Cocogitto](https://docs.cocogitto.io) configuration file for
87+
managing versions.
8988
- `cliff.toml`: [git-cliff](https://git-cliff.org) configuration file for
9089
creating the changelog.
91-
- `.copier-answers.yml`: Contains the answers you gave when copying the
92-
package from the template.
93-
**You should not modify this file directly.**
94-
- `.pre-commit-config.yaml`: [Pre-commit](https://pre-commit.com/)
95-
configuration file for managing and running checks before each commit.
96-
- `.typos.toml`: [typos](https://github.com/crate-ci/typos) spell
97-
checker configuration file.
98-
- `justfile`: [`just`](https://just.systems/man/en/) configuration file
99-
for scripting package tasks.
90+
- `.copier-answers.yml`: Contains the answers you gave when copying the package
91+
from the template. **You should not modify this file directly.**
92+
- `.pre-commit-config.yaml`: [Pre-commit](https://pre-commit.com/) configuration
93+
file for managing and running checks before each commit.
94+
- `.typos.toml`: [typos](https://github.com/crate-ci/typos) spell checker
95+
configuration file.
96+
- `justfile`: [`just`](https://just.systems/man/en/) configuration file for
97+
scripting package tasks.
10098
- `.editorconfig`: Editor configuration file for
101-
[EditorConfig](https://editorconfig.org/) to maintain consistent
102-
coding styles across different editors and IDEs.
99+
[EditorConfig](https://editorconfig.org/) to maintain consistent coding styles
100+
across different editors and IDEs.
103101
- `CHANGELOG.md`: Changelog file for tracking changes in the package.
104102
- `CITATION.cff`: Structured citation metadata for your package.
105103
- `CONTRIBUTING.md`: Guidelines for contributing to the package.
106-
- `_metadata.yml`: Quarto metadata file for the website, including
107-
information about the package, such as the titles and GitHub names.
108-
- `_quarto.yml`: Quarto configuration file for the website, including
109-
settings for the website, such as the theme, navigation, and other
110-
options.
111-
- `pyproject.toml`: Main Python package configuration file defining
112-
metadata and dependencies.
113-
- `uv.lock`: Lockfile used by [`uv`](https://docs.astral.sh/uv/) to
114-
record exact versions of installed dependencies.
104+
- `_metadata.yml`: Quarto metadata file for the website, including information
105+
about the package, such as the titles and GitHub names.
106+
- `_quarto.yml`: Quarto configuration file for the website, including settings
107+
for the website, such as the theme, navigation, and other options.
108+
- `pyproject.toml`: Main Python package configuration file defining metadata and
109+
dependencies.
110+
- `uv.lock`: Lockfile used by [`uv`](https://docs.astral.sh/uv/) to record exact
111+
versions of installed dependencies.

0 commit comments

Comments
 (0)