Re: [PATCH] add a Code of Conduct document

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 24, 2019 at 02:44:54AM -0400, Jeff King wrote:
> We've never had a formally written Code of Conduct document. Though it
> has been discussed off and on over the years, for the most part the
> behavior on the mailing list has been good enough that nobody felt the
> need to push one forward.
> 
> However, even if there aren't specific problems now, it's a good idea to
> have a document:
> 
>   - it puts everybody on the same page with respect to expectations.
>     This might avoid poor behavior, but also makes it easier to handle
>     it if it does happen.
> 
>   - it publicly advertises that good conduct is important to us and will
>     be enforced, which may make some people more comfortable with
>     joining our community
> 
>   - it may be a good time to cement our expectations when things are
>     quiet, since it gives everybody some distance rather than focusing
>     on a current contentious issue
> 
> This patch adapts the Contributor Covenant Code of Conduct. As opposed
> to writing our own from scratch, this uses common and well-accepted
> language, and strikes a good balance between illustrating expectations
> and avoiding a laundry list of behaviors. It's also the same document
> used by the Git for Windows project.
> 
> The text is taken mostly verbatim from:
> 
>   https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
> 
> I also stole a very nice introductory paragraph from the Git for Windows
> version of the file.
> 
> There are a few subtle points, though:
> 
>   - the document refers to "the project maintainers". For the code, we
>     generally only consider there to be one maintainer: Junio C Hamano.
>     But for dealing with community issues, it makes sense to involve
>     more people to spread the responsibility. I've listed the project
>     committee address of git@xxxxxxxxxxxxxxxxx as the contact point.
> 
>   - the document mentions banning from the community, both in the intro
>     paragraph and in "Our Responsibilities". The exact mechanism here is
>     left vague. I can imagine it might start with social enforcement
>     (not accepting patches, ignoring emails) and could escalate to
>     technical measures if necessary (asking vger admins to block an
>     address). It probably make sense _not_ to get too specific at this
>     point, and deal with specifics as they come up.
> 
> Signed-off-by: Jeff King <peff@xxxxxxxx>
> ---
> Obviously related to the discussion in:
> 
>   https://public-inbox.org/git/71fba9e7-6314-6ef9-9959-6ae06843d17a@xxxxxxxxx/
> 
> After some poking around at various CoC options, this one seemed like
> the best fit to me. But I'm open to suggestions or more discussion. It
> seems to me that the important piece is having _some_ CoC, and picking
> something standard-ish seems a safe bet.
> 
> I did find this nice set of guidelines in an old discussion:
> 
>   https://github.com/mhagger/git/commit/c6e6196be8fab3d48b12c4e42eceae6937538dee
> 
> I think it's missing some things that are "standard" in more modern CoCs
> (in particular, there's not much discussion of enforcement or
> responsibilities, and I think those are important for the "making people
> comfortable" goal). But maybe there are bits we'd like to pick out for
> other documents; not so much "_what_ we expect" as "here are some tips
> on _how_".
> 
> If people are on board with this direction, it might be fun to pick up a
> bunch of "Acked-by" trailers from people in the community who agree with
> it. It might give it more weight if many members have publicly endorsed
> it.
> 
> I've cc'd git@xxxxxxxxxxxxxxxxx here, because I think it's important for
> all of the project committee members to endorse it (and because the
> document puts us on the hook for enforcing it!).

I tried looking it up but I couldn't find who the project committee
members are. Is this list published anywhere? More on that later...

> 
>  CODE_OF_CONDUCT.md | 85 ++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 85 insertions(+)
>  create mode 100644 CODE_OF_CONDUCT.md
> 
> diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
> new file mode 100644
> index 0000000000..b94f72b0b8
> --- /dev/null
> +++ b/CODE_OF_CONDUCT.md
> @@ -0,0 +1,85 @@
> +# Git Code of Conduct
> +
> +This code of conduct outlines our expectations for participants within
> +the Git community, as well as steps for reporting unacceptable behavior.
> +We are committed to providing a welcoming and inspiring community for
> +all and expect our code of conduct to be honored. Anyone who violates
> +this code of conduct may be banned from the community.
> +
> +## Our Pledge
> +
> +In the interest of fostering an open and welcoming environment, we as
> +contributors and maintainers pledge to make participation in our project and
> +our community a harassment-free experience for everyone, regardless of age,
> +body size, disability, ethnicity, sex characteristics, gender identity and
> +expression, level of experience, education, socio-economic status,
> +nationality, personal appearance, race, religion, or sexual identity and
> +orientation.
> +
> +## Our Standards
> +
> +Examples of behavior that contributes to creating a positive environment
> +include:
> +
> +* Using welcoming and inclusive language
> +* Being respectful of differing viewpoints and experiences
> +* Gracefully accepting constructive criticism
> +* Focusing on what is best for the community
> +* Showing empathy towards other community members
> +
> +Examples of unacceptable behavior by participants include:
> +
> +* 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

Since this is a mailing list-based project, we should explicitly state
that email addresses and names don't count as private information since
it's vital for discourse.

On that note, I like the idea of having a CoC-interpretations document,
much like the one in the Linux kernel[1]. In my opinion, having one
would remove a lot of the vagueness (such as the emails issue) in the
CoC and close us off from people loophole lawyering over the language
used.

> +* 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

Since we use patches here, we should probably explicitly state that too.

> +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 within all project spaces, and it also applies
> +when an individual is representing the project or its community in public
> +spaces. 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 git@xxxxxxxxxxxxxxxxx. 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.

I feel uncomfortable with this being left so wide open. First of all, I
know that the power *probably* won't be abused but I don't think
probably is good enough.

As I said above, I couldn't find a public list of the people who were on
the project committee. Perhaps that's because my Googling skills are bad
but I feel uncomfortable knowing that *anyone* will be given judge, jury
and executioner power, let alone people whom I don't know anything
about.

I'm okay with leaving it open for now but I think I would be a lot more
comfortable if we had the interpretations document to close up the
vagueness later.

Thanks for starting the discussion,

Denton

[1]: https://github.com/torvalds/linux/blob/master/Documentation/process/code-of-conduct-interpretation.rst

> +
> +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 adapted from the [Contributor Covenant][homepage],
> +version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
> +
> +[homepage]: https://www.contributor-covenant.org
> +
> +For answers to common questions about this code of conduct, see
> +https://www.contributor-covenant.org/faq
> -- 
> 2.23.0.763.g3828a6cd7f
> 



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux