diff --git a/.github/issue-branch.yml b/.github/issue-branch.yml index ffe3714339..61b4b0dd8b 100644 --- a/.github/issue-branch.yml +++ b/.github/issue-branch.yml @@ -1,6 +1,6 @@ mode: auto silent: false -branchName: full +branchName: '${issue.number}-${issue.title}' defaultBranch: 'main' branches: @@ -11,3 +11,5 @@ branches: prefix: features/ - label: documentation prefix: docs/ + - label: workflows + prefix: workflows/ diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000000..49dafa0fa7 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,22 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the version of Python and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.11" + +# Build documentation in the docs/ directory with Sphinx +sphinx: + configuration: doc/source/conf.py + +# We recommend specifying your dependencies to enable reproducible builds: +# https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: doc/requirements.txt diff --git a/quick_start.md b/quick_start.md index e6b02dd707..09b4c68101 100644 --- a/quick_start.md +++ b/quick_start.md @@ -67,31 +67,26 @@ Local torch tensor on rank 1 : tensor([5, 6, 7, 8, 9], dtype=torch.int32) ## New Contributors -1. [Fork](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) or, if you have write access, clone the [Heat repository](https://github.com/helmholtz-analytics/heat). +1. Pick an Issue you'd like to work on. Check out [Good First Issues](https://github.com/helmholtz-analytics/heat/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22), start from most recent. Get in touch and ask to be assigned to the issue. -2. Create a virtual environment `heat_dev` with all dependencies via [heat_dev.yml](https://github.com/helmholtz-analytics/heat/blob/main/scripts/heat_dev.yml). Note that `heat_dev.yml` does not install Heat via `pip` (as opposed to [`heat_env.yml`](#conda) for users). +2. **IMPORTANT:** As soon as an issue is assigned, a new branch will be created (a comment will be posted under the relevant issue). Do use this branch to make your changes, it has been checked out from the correct base branch (i.e. `main` for new features, `release/*` for bug fixes). + +3. [Fork](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) or, if you have write access, clone the [Heat repository](https://github.com/helmholtz-analytics/heat). + +4. Create a virtual environment `heat_dev` with all dependencies via [heat_dev.yml](https://github.com/helmholtz-analytics/heat/blob/main/scripts/heat_dev.yml). Note that `heat_dev.yml` does not install Heat via `pip` (as opposed to [`heat_env.yml`](#conda) for users). ``` conda env create -f heat_dev.yml conda activate heat_dev ``` - -3. In the `/heat` directory of your local repo, install the [pre-commit hooks]( https://pre-commit.com/): +5. In the `/heat` directory of your local repo, install the [pre-commit hooks]( https://pre-commit.com/): ``` cd $MY_REPO_DIR/heat/ pre-commit install ``` -4. Pick an Issue you'd like to work on. Check out [Good First Issues](https://github.com/helmholtz-analytics/heat/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22), start from most recent. - -5. [New branches](https://docs.github.com/en/get-started/quickstart/contributing-to-projects#creating-a-branch-to-work-on) should be named according to the following scheme: - - New feature: `features/ISSUE_NUMBER-my-new-feature` - - Bug fix: `bugs/ISSUE_NUMBER-my-bug-fix` - - Documentation: `docs/ISSUE_NUMBER-my-better-docs` - - Automation (CI, GitHub Actions etc.): `workflows/ISSUE_NUMBER-my-fancy-workflow` - 6. Write and run (locally) [unit tests](https://docs.python.org/3/library/unittest.html) for any change you introduce. Here's a sample of our [test modules](https://github.com/helmholtz-analytics/heat/tree/main/heat/core/tests). Running all unit tests locally, e.g. on 3 processes: