Thank you very much for your interest in this project! We welcome contributions from anyone, given that they follow the few rules below.
A great first step is to join our server
- Feel free to open a draft PR to first discuss the high level changes you intend to make before going deep into the implementation
- Make focused changes on a dedicated branch. Smaller code diff are easier to review, and that way you will get earlier feedback from the maintainers.
- Do not bother with the changelog and version number of this project. Both will be addressed in a final PR from the maintainers just before a release.
- A PR can contain several commits; they don't need to be squashed, but they must have an expressive enough title and have a meaning on their own.
- When you get an approval after a PR review:
- If you are a Tweager, you can press the Green Button
- Otherwise, the maintainers team will promptly merge the PR
Just before a release, the changelog needs to be edited by the maintainer team. To make the process easier, it is recommended to use github-changelog-generator that is available in nixpkgs
:
$ nix-shell -p github-changelog-generator
Then go on this page and generate a personal access token with the following permissions:
public_repo
repo:status
repo_deployment
Then create a config file .github_changelog_generator
:
issues=true
future-release=v?.?.? # eg: v0.1.1
since-tag=v?.?.? # eg: v0.1.0
user=tweag
project=linear-base
token=<your personal access token>
output=CHANGELOG-gen.md
and run
[nix-shell]$ github_changelog_generator
You'll end with a file named CHANGELOG-gen.md
that will list all the PRs and issues merged/closed since the last release. You then need to sort these entries into the following categories (most recent PR at the top of each category):
### Breaking changes
### New additions
### Code improvements / Bug fixing
### CI/Tooling improvements
### Documentation improvements
- Only the closed issues that does not match a PR 1:1 needs to appear on this listing (e.g. a
tag:bug
issue that has been fixed by an unrelated PR) - It is recommended to edit the PR titles in the listing, and add a concise description for the most important ones (or when a single line of text is not enough to describe the changes).
- You might group PRs that are related to the same feature (or when one PR is overridden by a following one)
- In case of doubt, use the changelog for
v0.2.0
as a reference of how to edit the changelog