Skip to content

Add a Contributor Agreement #42

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

Merged
merged 22 commits into from
Feb 26, 2025
Merged
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
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
4 changes: 4 additions & 0 deletions .github/workflows/first_pull_request.yml
Original file line number Diff line number Diff line change
@@ -42,5 +42,9 @@ jobs:
It appears that this is your first Pull Request. To give credit where it's due, we ask that you add your information to the \`AUTHORS.md\` and \`.zenodo.json\`:
- [ ] The relevant author information has been added to \`AUTHORS.md\` and \`.zenodo.json\`

We also require that you sign our [Contributor License Agreement](https://github.com/CSHS-CWRA/RavenHydroFramework/blob/main/contributor-licensing-agreement.txt) before we can merge your code.
Please add the following line to your Pull Request description:
- [x] I have read and agree to the terms of the Contributor License Agreement.

Please make sure you've read our [contributing guide](CONTRIBUTING.md). We look forward to reviewing your Pull Request shortly ✨`
})
57 changes: 48 additions & 9 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,64 @@
# Contribution Guidelines

## Contributor Licensing Agreement
Thank you for considering contributing to the Raven Hydrological Modelling Framework! By participating in this project, you agree to abide by the following terms and conditions.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Mus mauris vitae ultricies leo integer malesuada nunc vel. Cras pulvinar mattis nunc sed blandit libero volutpat sed. Elit eget gravida cum sociis natoque. Nunc mattis enim ut tellus elementum sagittis vitae et leo. Urna neque viverra justo nec ultrices dui sapien eget mi. Proin nibh nisl condimentum id venenatis a condimentum vitae. Scelerisque eleifend donec pretium vulputate sapien. Venenatis tellus in metus vulputate eu. Auctor urna nunc id cursus metus aliquam. Leo vel orci porta non pulvinar neque laoreet suspendisse. Facilisi cras fermentum odio eu feugiat pretium nibh ipsum consequat.
## Contribution Process

1. Fork the repository and create your branch from `main`.
2. Make your changes.
3. Ensure your code adheres to the project's coding standards.
4. Update documentation if necessary.
5. Submit a pull request.

## License

By contributing to this project, you agree that your contributions will be licensed under the [Artistic License v2.0](https://github.com/CSHS-CWRA/RavenHydroFramework/blob/main/LICENSE).

## Contributor Licensing Agreement (CLA)

Before we can accept your contributions, you need to agree to our Contributor License Agreement (CLA). This agreement helps us ensure that we can freely distribute your contributions as part of the project.

### Summary of the CLA

* Grant of Copyright License: You grant us a perpetual, worldwide, non-exclusive, royalty-free license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute your contributions and derivative works thereof under the Artistic License v2.0.
* Grant of Patent License: You grant us a perpetual, worldwide, non-exclusive, royalty-free patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer your contributions under certain conditions.
* Source of Contribution: You represent that your contributions are your original creation and that you have the right to grant these licenses.
* Rights in Contributions: You confirm that you have the necessary rights and permissions to make your contributions, including any required approvals from your employer.
* Representations and Warranties: You represent that you are legally entitled to grant the above licenses and that your contributions are your original creation.

### Full Agreement

The full text of the CLA can be found [here](https://github.com/CSHS-CWRA/RavenHydroFramework/blob/main/contributor-licensing-agreement.txt).

### How to Agree to the CLA

To agree to the CLA, you must sign the checkbox pertaining to it in your first pull request:

" - [x] I have read and agree to the terms of the Contributor License Agreement."

Alternatively, you can sign the CLA by submitting the completed CLA form to [James Craig](mailto:jrcraig@uwaterloo.ca?subject=RAVEN-CLA).

## Pull Requests

Sagittis vitae et leo duis ut diam quam nulla. Scelerisque varius morbi enim nunc faucibus a pellentesque sit. Aliquet nec ullamcorper sit amet risus nullam eget felis eget. Cras adipiscing enim eu turpis. Purus sit amet volutpat consequat mauris nunc congue nisi vitae. Varius morbi enim nunc faucibus a. Blandit volutpat maecenas volutpat blandit aliquam etiam erat velit scelerisque. Aliquet enim tortor at auctor. Est placerat in egestas erat imperdiet sed euismod nisi porta. Metus aliquam eleifend mi in nulla posuere sollicitudin aliquam. Volutpat consequat mauris nunc congue nisi.
When opening a Pull Request, we ask that contributors label their changes with an appropriate title and provide descriptions of the changes that they wish to implement, whether those changes may cause disruptions to the normal behaviour of the project ("Breaking Changes"), and provide links to any pertinent GitHub Issues, Pull Requests, or other information.

### Styling

Amet purus gravida quis blandit turpis cursus in hac. Blandit volutpat maecenas volutpat blandit aliquam. Aliquam sem fringilla ut morbi. Nisl vel pretium lectus quam id leo in.
This project employs a handful of code styling conventions. Those currently in use are:

* No whitepaces at the end of lines.
* All files must end with a newline ('\n').

Coding standards are enforced via [pre-commit](https://pre-commit.com/), with automatic corrections performed via [pre-commit CI](https://pre-commit.ci/).

### Documentation

Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus. Tortor consequat id porta nibh venenatis cras sed felis. Purus viverra accumsan in nisl nisi scelerisque.
Documentation for the Raven Hydrological Modelling Framework can be found at https://raven.uwaterloo.ca/Downloads.html.

### Testing

Rutrum tellus pellentesque eu tincidunt tortor aliquam. Rhoncus urna neque viverra justo nec ultrices dui sapien eget. Mattis enim ut tellus elementum.

### Commit Messages
This library does not currently use testing. It is expected that all new contributions should compile for the following architectures:

Condimentum vitae sapien pellentesque habitant morbi tristique senectus. Mauris augue neque gravida in fermentum et sollicitudin ac. Sed turpis tincidunt id aliquet risus feugiat.
- Linux (x86_64)
- Windows (x86_64)
- macOS (x86_64, ARM64)
59 changes: 59 additions & 0 deletions contributor-licensing-agreement.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
Contributor License Agreement (CLA)

Project Name: Raven Hydrological Modelling Framework

Version: X.Y.Z

Effective Date: YYYY-MM-DD

You (the "Contributor") agree to the following terms for your present and future contributions submitted to the project named above (the "Project").

Definitions:
"Contribution" means any original work of authorship, including any modifications or additions to an existing work, that is intentionally submitted by You to the Project for inclusion in, or documentation of, any of the products owned or managed by the Project (the "Work").
"You" (or "Your") shall mean the individual or legal entity making a Contribution to the Project.

Grant of Copyright License:
You hereby grant to the Project, and to recipients of software distributed by the Project, a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works under the terms of the Artistic License v2.0.

Grant of Patent License:
You hereby grant to the Project, and to recipients of software distributed by the Project, a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Work to which such Contribution(s) was submitted. If any entity institutes patent litigation against You or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that Your Contribution, or the Work to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this Agreement for that Contribution or Work shall terminate as of the date such litigation is filed.

Source of Contribution:
You represent that each of Your Contributions is Your original creation (see section 6 for submissions on behalf of others).
You represent that Your Contribution submissions include complete details of any third-party licenses or other restrictions (including, but not limited to, related patents and trademarks) of which You are personally aware and which are associated with any part of Your Contributions.

Rights in Contributions:
You are legally entitled to grant the above licenses. If Your employer(s) has rights to intellectual property that You create that includes Your Contributions, You represent that You have received permission to make Contributions on behalf of that employer, that Your employer has waived such rights for Your Contributions to the Project, or that Your employer has executed a separate Corporate CLA with the Project.

Representations and Warranties:
You represent that You are legally entitled to grant the above license.
You represent that each of Your Contributions is Your original creation (see section 6 for submissions on behalf of others).
You represent that Your Contribution submissions include complete details of any third-party licenses or other restrictions (including, but not limited to, related patents and trademarks) of which You are personally aware and which are associated with any part of Your Contributions.

Support:
You understand and agree that the Project is under no obligation to provide maintenance, support, or updates for Your Contributions.

Signatures:
By making a Contribution to the Project, You accept and agree to the terms of this Agreement for Your present and future Contributions submitted to the Project.

Signatories:

Contributor:

Name: ____________________

Title: ____________________

Signature: ____________________

Date: ____________________

Project:

Name: ____________________

Title: ____________________

Signature: ____________________

Date: ____________________