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

Define initial contributing guidelines #404

Merged
merged 2 commits into from
May 16, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
33 changes: 33 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Contributing guidelines

If you'd like to contribute to the libmata, please [fork the repository](https://github.com/VeriFIT/mata/fork),
create a new feature branch, and finally [create a new pull request](https://github.com/VeriFIT/mata/compare).

In case you run into some unexpected behaviour, error or anything suspicious either contact us directly through mail or
[create a new issue](https://github.com/VeriFIT/mata/issues/new/choose).
When creating a new issue, please, try to include everything necessary for us to know (such as the version, operation
Adda0 marked this conversation as resolved.
Show resolved Hide resolved
system, etc.) so we can sucessfully replicate the issue.

## Design style

- private attributes of classes/structs should use `snake_case_` (note the trailing `_`).
Adda0 marked this conversation as resolved.
Show resolved Hide resolved
- `snake_case` is to be used in context of:
- variables, and
- functions / class methods (which are neither constructors nor destructors).
- `UpperCamelCase` is to be used in the context of:
- class/structure names,
- aliases of types created using `using`,
- constructors and destructors, and
- elements of the type `enum` (prefer using `enum class`).

## Note to maintainers

By default, each merge automatically increases the `minor` version of the library
(i.e., `0.0.0 -> 0.1.0` ). This can be overruled using either tag `#patch` (increasing
patch version, i.e., `0.0.0 -> 0.0.1`) or `#major` (increasing major version, i.e.,
`0.0.0 -> 1.0.0`). This tag is specified in the merge message.

Generally, it is recommended to use `#major` for changes that introduces backward-incompatible
changes for people that used previous versions, and `#patch` for minor changes, such as bug-fixes,
performance fixes or refactoring.

21 changes: 1 addition & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -221,26 +221,7 @@ You can either run your scripts directly using `python` or compile it using the

# Contributing

If you'd like to contribute to the libmata,
please [fork the repository](https://github.com/VeriFIT/mata/fork), create a new
feature branch, and finally [create a new pull request](https://github.com/VeriFIT/mata/compare).

In case you run into some unexpected behaviour, error or anything suspicious
either contact us directly through mail or
[create a new issue](https://github.com/VeriFIT/mata/issues/new/choose).
When creating a new issue, please, try to include everything necessary for us to know
(such as the version, operation system, etc.) so we can sucessfully replicate the issue.

## Note to main contributors

By default, each merge automatically increases the `minor` version of the library
(i.e., `0.0.0 -> 0.1.0` ). This can be overruled using either tag `#patch` (increasing
patch version, i.e., `0.0.0 -> 0.0.1`) or `#major` (increasing major version, i.e.,
`0.0.0 -> 1.0.0`). This tag is specified in the merge message.

Generally, it is recommended to use `#major` for changes that introduces backward-incompatible
changes for people that used previous versions, and `#patch` for minor changes, such as bug-fixes,
performance fixes or refactoring.
Please refer to our [contributing guidelines](CONTRIBUTING.md).

# Links

Expand Down
Loading