Skip to content

Commit

Permalink
Merge pull request #330 from asteris-llc/feature/i-love-external-cont…
Browse files Browse the repository at this point in the history
…ributors

Add contributing.md and code of conduct
  • Loading branch information
BrianHicks authored Sep 29, 2016
2 parents adb8615 + 42ed620 commit 6c3ebb0
Show file tree
Hide file tree
Showing 2 changed files with 237 additions and 0 deletions.
160 changes: 160 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# Converge Code of Conduct

<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-generate-toc again -->
**Table of Contents**

- [Converge Code of Conduct](#converge-code-of-conduct)
- [Our Pledge](#our-pledge)
- [Our Standards](#our-standards)
- [Do These Things](#do-these-things)
- [Consideration](#consideration)
- [Respect](#respect)
- [Asking for help](#asking-for-help)
- [Responsibility](#responsibility)
- [Attribution](#attribution)
- [Explictly Unacceptable Behavior](#explictly-unacceptable-behavior)
- [Our Responsibilities](#our-responsibilities)
- [Scope](#scope)
- [Enforcement](#enforcement)
- [Attribution](#attribution)
- [License](#license)

<!-- markdown-toc end -->

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of
experience, nationality, personal appearance, race, religion, or sexual identity
and orientation.

## Our Standards

### Do These Things

Examples of behavior that contributes to creating a positive environment
include:

#### Consideration

- Experience levels vary. Don't assume that someone can understand your
particular explanation.
- Keep in mind that English is a second language for many users.
- Be respectful of differing viewpoints and experiences

#### Respect

- It is possible to strongly disagree without using harsh language or resorting
to derogatory comments. If you disagree with someone, disagree with the
argument, not the character of the person.
- If your work receives criticism, receive it with grace and&hellip;
- Remember that everyone is entitled to an opinion.
- Using welcoming and inclusive language in all your interactions.

#### Asking for help

- If you don't know how to proceed with an aspect of development or
documentation, ask for help! Always read the documentation, but don't be
afraid to ask "silly" questions.
- When asking for help, take advantage of the resources that are available to
you, including the wiki, issue list, and Slack channel.

#### Responsibility

- If you did something wrong, apologize to the affected. Do your best to fix the
issue and, if you can't, ask for help!
- Show empathy towards other community members.
- Focus on what is best for the community.

#### Attribution

- Give proper credit to everyone involved in any contribution to the project, be
it documentation, tests, code, or anything in between.
- If someone fails to give adequate contribution, gently remind them while being
considerate. Assume that the omission was accidental, not malicious.

### Explictly Unacceptable Behavior

- The use of sexualized language or imagery and unwelcome sexual attention or
advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic
address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, or to ban temporarily or permanently any
contributor for other behaviors that they deem inappropriate, threatening,
offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team
at [[email protected]](mailto:[email protected]). All complaints will be reviewed and
investigated and will result in a response that is deemed necessary and
appropriate to the circumstances. The project team is obligated to maintain
confidentiality with regard to the reporter of an incident. Further details of
specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is primarily adapted from
the [Contributor Covenant][homepage], version 1.4, available
at [http://contributor-covenant.org/version/1/4][version].

The five "do these things" principles are adapted from
the [Asterisk Community Code of Conduct](asterisk-coc)

[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
[asterisk-coc]: https://wiki.asterisk.org/wiki/display/AST/Asterisk+Community+Code+of+Conduct

### License

The Contributor Covenant is licensed as follows:

> The MIT License (MIT)
>
> Copyright (c) 2014 Coraline Ada Ehmke
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of
> this software and associated documentation files (the "Software"), to deal in
> the Software without restriction, including without limitation the rights to
> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
> the Software, and to permit persons to whom the Software is furnished to do so,
> subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all
> copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
77 changes: 77 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Contribution Guide

Hi! Thanks for being interested in contributing to Converge. We're really happy
to have you (we have mini-parties in Slack whenever someone external opens a
PR!)

Here's a quick guide for how you should expect the contribution process to go.
Above all, the core team and everyone involved with Converge is expected to
follow the [code of conduct](CODE_OF_CONDUCT.md).

<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-generate-toc again -->
**Table of Contents**

- [Contribution Guide](#contribution-guide)
- [Filing Bugs and Getting Help](#filing-bugs-and-getting-help)
- [Feature Requests](#feature-requests)
- [Contributing Features and Fixes](#contributing-features-and-fixes)
- [Documentation](#documentation)
- [Code of Conduct](#code-of-conduct)

<!-- markdown-toc end -->

## Filing Bugs and Getting Help

Have you found an issue with Converge? Boo, but thanks! Issues are free, so open
one. It'd help us out if you'd search for your issue before opening a new one,
but if in doubt just go ahead and open one. We'll merge them as necessary.

When you're opening an issue, it'll save everyone some time if you could attach
the output of `converge version` and the output of the command you're having
trouble with at the DEBUG level (set `--log-level=debug` and censor if
necessary). If you don't attach that info our first comment will probably be
asking for it, so doing that will speed up the process of getting you unblocked.

Once you open an issue, it can help to also mention your issue in
the [Converge Slack channel](http://converge-slack.aster.is). This will let us
talk back and forth and figure things out even faster.

## Feature Requests

We really want to hear how you want to use Converge, and what you think it could
do for you. That said, we often have a pretty good idea of the features on our
roadmap. If Converge doesn't do something you want, open an issue and we'll
figure out how it can fit into the overall picture.

### Contributing Features and Fixes

If you just want to contribute a new feature yourself: wow, thanks! But please
still open an issue before you begin work so we can make sure that we're not
already working on something similar.

Bug fixes are also especially welcome, probably even more than new features! If
you find something wrong and easily correctable in our code, a small diff is
often much easier to reason about than describing a problem and solution.

That said, we have a number of bars for any contribution to clear:

- It must pass the entire test suite and linting (including gofmt)
- If it introduces a new feature or changes an existing feature, that feature
must be documented (how else will people find out about your awesome work?)
- It can't change existing syntax except in extremely well-reasoned cases. If
you're changing the syntax of existing features, definitely open an issue
first so we can discuss.

#### Documentation

When contributing documentation, please just change the markdown files in
`docs_source`. If your PR includes the changed HTML under `docs` it's much
harder to review. Pretty please?

## Code of Conduct

Participation in the development process of Converge is subject to
the [code of conduct](CODE_OF_CONDUCT.md). Please familiarise yourself with that
document. If nothing else, it will let you know what to do if something goes
terribly wrong. But aside from that, the code has positive standards of how
community members should behave in their interactions with others.

0 comments on commit 6c3ebb0

Please sign in to comment.