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

Update contributing guide #281

Merged
merged 1 commit into from
Nov 14, 2024
Merged
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
23 changes: 23 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,26 @@ This project employs [branch protection](https://docs.github.com/en/repositories
Congratulations! :tada: And thank you very much for your contribution to this project!

Once your pull request is merged, our build and test workflow will execute once again to validate changes. Afterward, your changes will be committed to the `main` branch.

### Releasing a New Version

To release a new version, create a tag at the commit that you want to release and push it to the repository. You will require appropriate permissions to push tags to the repository.

The tag should be in the format `v[major].[minor].[patch]` (e.g. `v1.0.0`). Once the tag is created, the release will be automatically created by the GitHub workflow.

#### What version number do I use?

The version number should be determined by the type of changes that are being released.
- **Major**: Breaking changes. Ideally these should be avoided, if you feel they are necessary please discuss them with the maintainers as part of your pull request.
- **Minor**: New features that are backwards compatible.
- **Patch**: Bug fixes.

## Development Guides

### Enums

There are fields in some types that are represented by enums, for example `FilterType`. If you add a new enum value you need to use `enumer` to update the string representation that gets used in API calls.

- To install enumer run: `go install github.com/dmarkham/enumer@latest`
- Then add it to your path
- To update the string representations, run enumer from the folder where the enum file is located, for example `enumer -type=FilterType -json -output filter_type_string.go`
Loading