-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #15 from shareloqs/doc-writing
Add Contributing file
- Loading branch information
Showing
1 changed file
with
101 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
# Contributing to MPSDynamics | ||
|
||
First off, thank you for considering contributing to `MPSDynamics.jl`✨ | ||
|
||
The following is a set of guidelines for contributing to `MPSDynamics.jl`, which is hosted in the ShareLOQS Organization on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document. | ||
|
||
Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests. | ||
|
||
## What is MPSDynamics about? | ||
|
||
`MPSDynamics.jl` is an open source Julia package to perform tensor network simulations for finite temperature, open quantum system dynamics. It is distributed under the [GPL 3.0 license](https://github.com/shareloqs/MPSDynamics/blob/master/LICENSE). | ||
|
||
## Code of Conduct | ||
|
||
This project and everyone participating in it is governed by a [Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. | ||
|
||
## How to Contribute | ||
|
||
There are many ways to contribute, from writing tutorials, improving the documentation, submitting bug reports and feature requests or writing code which can be incorporated into the package itself. No contribution is too small and all contributions are welcomed. | ||
|
||
For all contributions, please respect the following guidelines: | ||
|
||
* Create [issues](https://github.com/shareloqs/MPSDynamics/issues) for any major changes and enhancements that you wish to make. Discuss things transparently and get community feedback. | ||
* Each pull request should implement *one* feature or bugfix. If you want to add or fix more than one thing, submit more than one pull request. | ||
* Do not commit changes to files that are irrelevant to your feature or bugfix (eg: .gitignore). | ||
* Be willing to accept criticism and work on improving your code. | ||
* Be aware that the pull request review process is not immediate, and generally scales with the size of the pull request. | ||
|
||
For something that is bigger than a one or two line fix: | ||
|
||
1. Create your own fork of the code | ||
2. Do the changes in your fork | ||
3. If you like the change and think the project could use it: send a pull request | ||
|
||
For code contribution aim at following Julia's [style guide](https://docs.julialang.org/en/v1/manual/style-guide/). | ||
|
||
Before to make a pull request make sure that you agree with the [Developer's Certificate of Origin](#Developer-Certificate-of-Origin). | ||
|
||
## How to Make a Pull Request | ||
|
||
[Learn about pull requests and draft pull requests on GitHub.](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) | ||
|
||
## How to Report a Bug | ||
|
||
When filing an [issue](https://github.com/shareloqs/MPSDynamics/issues) use a clear and descriptive title for the issue to identify the problem and make sure to answer these questions: | ||
|
||
1. What did you do? | ||
2. What did you expect to see? | ||
3. What did you see instead? | ||
|
||
Make sure to provide a minimal reproducible example to demonstrate the bug. | ||
|
||
## How to Suggest an Enhancement | ||
|
||
If you find yourself wishing for a feature that doesn't exist in `MPSDynamics.jl`, you are probably not alone. There might be others out there with similar needs. | ||
|
||
Open an [issue](https://github.com/shareloqs/MPSDynamics/issues) which describes: | ||
1. the feature you would like to see, | ||
2. why you need it, | ||
3. how it should work. | ||
|
||
## Developer Certificate of Origin | ||
|
||
```text | ||
Copyright (C) 2004, 2006 The Linux Foundation and its contributors. | ||
Everyone is permitted to copy and distribute verbatim copies of this | ||
license document, but changing it is not allowed. | ||
By making a contribution to this project, I certify that: | ||
(a) The contribution was created in whole or in part by me and I | ||
have the right to submit it under the open source license | ||
indicated in the file; or | ||
(b) The contribution is based upon previous work that, to the best | ||
of my knowledge, is covered under an appropriate open source | ||
license and I have the right under that license to submit that | ||
work with modifications, whether created in whole or in part | ||
by me, under the same open source license (unless I am | ||
permitted to submit under a different license), as indicated | ||
in the file; or | ||
(c) The contribution was provided directly to me by some other | ||
person who certified (a), (b) or (c) and I have not modified | ||
it. | ||
(d) I understand and agree that this project and the contribution | ||
are public and that a record of the contribution (including all | ||
personal information I submit with it, including my sign-off) is | ||
maintained indefinitely and may be redistributed consistent with | ||
this project or the open source license(s) involved. | ||
``` | ||
|
||
## Contact | ||
|
||
You can directly write to the maintainers team at shareloqs_@_framagroupes.org | ||
|
||
## Credits & Attribution | ||
|
||
We took inspiration and followed advice from [Open Source Guides](https://opensource.guide/starting-a-project/#writing-your-contributing-guidelines), [Mozilla Science Lab](https://mozillascience.github.io/working-open-workshop/contributing/), [nayafia's template](https://github.com/nayafia/contributing-template/blob/HEAD/CONTRIBUTING-template.md), and [Atom](https://github.com/atom/atom/blob/master/CONTRIBUTING.md). |