You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thank you for being willing to contribute! If you have some ideas to propose, please open an [issue](https://github.com/xarray-contrib/xarray-dataclasses/issues).
350
+
We use [GitHub flow](https://docs.github.com/en/get-started/using-github/github-flow) for developing and managing the project.
351
+
The first section describes how to contribute with it.
352
+
The second and third sections explain how to prepare a local development environment and our automated workflows in GitHub Actions, respectively.
First install [pixi](https://pixi.sh/latest/installation/). Then, install project dependencies:
365
+
366
+
```shell
367
+
pixi install -a
368
+
pixi run pre-commit-install
369
+
```
370
+
371
+
### Testing, linting, and formatting
372
+
We have [a test workflow][test-workflow] for testing, static type checking, linting, and formatting the code.
373
+
It is used for status checks when a pull request is created.
374
+
If you would like to check them in local, the following commands are almost equivalent (the difference is that the workflow is run under multiple Python versions).
375
+
Furthermore, these tasks are defined only in the `dev` environment. Pixi does not require you to specify the environment
376
+
in that case.
377
+
378
+
```shell
379
+
pixi run tests
380
+
pixi run flake8
381
+
pixi run black
382
+
pixi run pyright
383
+
```
384
+
385
+
### Creating documentation
386
+
We also have a [documentation workflow] (Add link). However, if you want to locally create the documentation
387
+
run the following:
388
+
389
+
```shell
390
+
pixi run doc_build
391
+
```
392
+
393
+
### Create a release
394
+
395
+
This section is relevant only for maintainers.
396
+
397
+
1. Pull `git`'s `main` branch.
398
+
2.`pixi install -a`
399
+
3.`pixi run pre-commit-install`
400
+
4.`pixi run -e test test`
401
+
5.`pixi shell`
402
+
6.`hatch version <new-version>`
403
+
7.`git add .`
404
+
8.`git commit -m "ENH: Bump version to <version>"`
405
+
9.`hatch build`
406
+
10.`hatch publish`
407
+
11.`git push upstream main`
408
+
12. Create a new tag and Release via the GitHub UI. Auto-generate release notes
0 commit comments