From 7ea751066a268e11bbd1242dfb68222d663035b4 Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Thu, 26 Aug 2021 16:03:13 +0100 Subject: [PATCH 1/7] Add ADR for Code of Conduct --- docs/adr/2021-08-26-code-of-conduct.md | 38 ++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 docs/adr/2021-08-26-code-of-conduct.md diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md new file mode 100644 index 00000000..d7fd1e76 --- /dev/null +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -0,0 +1,38 @@ +# Expectations of community are clearly explained by a code of conduct + +* Status: accepted +* Deciders: @relequestual, @Julian, @jdesrosiers, @karenetheridge +* Date: 2021-08-26 + +## Context and Problem Statement + +To the best of my knowledge, JSON Schema has never formally had a Code of Conduct (CoC). + +I personally only recall one instance where a CoC may have been useful. + +We want to make people feel welcome, and so should have a formal CoC. + +## Decision Drivers + +* We have had a few instances where it would have been useful to have a CoC +* Assuming we continue to join the OpenJS Foundation, they would expect us to have a CoC +* Not having a CoC may make our community less welcoming + +## Considered Options + +* Contributor Covenant +* IETF BCP 54 +* Roll our own + +## Decision Outcome + +We decided to use the Contributor Covenant in conjunction with IETF BCP 54, because BCP 54 defines some specifics on how we should interact with each other which the Contributor Covenant does not. + +For example: "We dispute ideas by using reasoned argument rather than through intimidation or personal attack." + +## Links + +* Discussion: [We should adopt a Code of Conduct. Let's start with Contributor Covenant #2](https://github.com/json-schema-org/community/discussions/2) +* Issue: [Adopt a Code of Conduct for JSON Schema #26](https://github.com/json-schema-org/community/issues/26) +* https://www.contributor-covenant.org +* [BCP54 / RFC7154](https://www.rfc-editor.org/rfc/rfc7154) From 44c7dd8695a51ccbc40898efded457978ca57b1c Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Thu, 26 Aug 2021 17:17:57 +0100 Subject: [PATCH 2/7] Correct number of instances where CoC would have been useful --- docs/adr/2021-08-26-code-of-conduct.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index d7fd1e76..8cdb084c 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -8,7 +8,7 @@ To the best of my knowledge, JSON Schema has never formally had a Code of Conduct (CoC). -I personally only recall one instance where a CoC may have been useful. +I personally recall a few instances where a CoC may have been useful. We want to make people feel welcome, and so should have a formal CoC. From e87269e6bd7e35abdcfc2a72336f50ce3dacc3a5 Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Thu, 26 Aug 2021 17:22:13 +0100 Subject: [PATCH 3/7] Better explain reason for decision, including additional benefit of including BCP 54 --- docs/adr/2021-08-26-code-of-conduct.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index 8cdb084c..a0b3119f 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -26,10 +26,16 @@ We want to make people feel welcome, and so should have a formal CoC. ## Decision Outcome -We decided to use the Contributor Covenant in conjunction with IETF BCP 54, because BCP 54 defines some specifics on how we should interact with each other which the Contributor Covenant does not. +We decided to use the Contributor Covenant in conjunction with IETF BCP 54. + +The Contributor Covenant is well established and regarded as a brilliant de-factor Code of Conduct option for open source projects. + +BCP 54 defines some specifics on how we should interact with each other which the Contributor Covenant does not. For example: "We dispute ideas by using reasoned argument rather than through intimidation or personal attack." +Further, should we choose to pursue publication throught the IETF, we would remain compatible in a sense. + ## Links * Discussion: [We should adopt a Code of Conduct. Let's start with Contributor Covenant #2](https://github.com/json-schema-org/community/discussions/2) From e1a250f9c33337e1bc7d3cb9c4d29d36fddb0ec9 Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Fri, 27 Aug 2021 11:00:06 +0100 Subject: [PATCH 4/7] Fixed typo --- docs/adr/2021-08-26-code-of-conduct.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index a0b3119f..d0fe9662 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -28,7 +28,7 @@ We want to make people feel welcome, and so should have a formal CoC. We decided to use the Contributor Covenant in conjunction with IETF BCP 54. -The Contributor Covenant is well established and regarded as a brilliant de-factor Code of Conduct option for open source projects. +The Contributor Covenant is well established and regarded as a brilliant de-facto Code of Conduct option for open source projects. BCP 54 defines some specifics on how we should interact with each other which the Contributor Covenant does not. From c37f289d260cd153e5389e0771cbd4a1b89efc7e Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Thu, 23 Sep 2021 18:03:14 +0100 Subject: [PATCH 5/7] Add some pros and cons to different options under consideration for the CoC --- docs/adr/2021-08-26-code-of-conduct.md | 37 ++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index d0fe9662..938b30b5 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -23,22 +23,55 @@ We want to make people feel welcome, and so should have a formal CoC. * Contributor Covenant * IETF BCP 54 * Roll our own +* Combination of Contributor Covenant and IETF BCP 54 ## Decision Outcome We decided to use the Contributor Covenant in conjunction with IETF BCP 54. -The Contributor Covenant is well established and regarded as a brilliant de-facto Code of Conduct option for open source projects. - BCP 54 defines some specifics on how we should interact with each other which the Contributor Covenant does not. For example: "We dispute ideas by using reasoned argument rather than through intimidation or personal attack." Further, should we choose to pursue publication throught the IETF, we would remain compatible in a sense. +## Pros and Cons of the Options + +### Contributor Covenant + +The Contributor Covenant is well established and regarded as a brilliant de-factor Code of Conduct option for open source projects. + +* Good, because it is well known and recognised as a good and useful Code of Conduct base +* Good, because the familiarty of it from other communities will make people feel more comfortable +* Good, because we do not have unqiue needs as a community +* Good, because we can discuss situations or get help from other projects/orgs (Such as OpenJSF) that use the same Code of Conduct +* Good, because it can be modified / added to, and used as just a base + +### BCP 54 / RFC 7154 + +BCP 54 is an Internet Best Current Practice memo document, used by all new IETF based RFCs and publications. +It outlines behavioural and conduct expectations for individual contributors, including the expectation to actually contribute. + +* Good, because we want to operate using general consensus by understanding others +* Good, because it considers the type of work we are producing +* Bad, because it doesn't reflect our organisational situation (We aren't working under an IETF Chair for example) +* Bad, because consequences don't reflect our projects operations + +### Roll our own + +* Good, because it would be exactly what we think we want +* Bad, because it would likely not be what we actually need +* Bad, because none of our core contributors have experience writing a Code of Conduct + +### Combination of Contributor Covenant and IETF BCP 54 + +* Good, because we can pick the parts from BCP 54 that are applicable to our organization +* Good, because we have clear inforcement for conduct which covers the whole Code of Conduct + ## Links * Discussion: [We should adopt a Code of Conduct. Let's start with Contributor Covenant #2](https://github.com/json-schema-org/community/discussions/2) * Issue: [Adopt a Code of Conduct for JSON Schema #26](https://github.com/json-schema-org/community/issues/26) +* Pull Request [Add ADR for Code of Conduct](https://github.com/json-schema-org/community/pull/41) * https://www.contributor-covenant.org * [BCP54 / RFC7154](https://www.rfc-editor.org/rfc/rfc7154) From b75b8d0ff546baa8b23bb4fa6fe10925c476c8ea Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Fri, 24 Sep 2021 10:49:50 +0100 Subject: [PATCH 6/7] Minor fix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removed "brilliant", which is subjective. Fixed typo, "de-factor" -> "de-facto" 😅 --- docs/adr/2021-08-26-code-of-conduct.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index 938b30b5..aaca6936 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -39,7 +39,7 @@ Further, should we choose to pursue publication throught the IETF, we would rema ### Contributor Covenant -The Contributor Covenant is well established and regarded as a brilliant de-factor Code of Conduct option for open source projects. +The Contributor Covenant is well established and regarded as a de-facto Code of Conduct option for open source projects. * Good, because it is well known and recognised as a good and useful Code of Conduct base * Good, because the familiarty of it from other communities will make people feel more comfortable From 1da393f196218ef8fdc6077ed7514986bf44fec6 Mon Sep 17 00:00:00 2001 From: Ben Hutton Date: Fri, 1 Oct 2021 11:29:06 +0100 Subject: [PATCH 7/7] Fix typo in CoC ADR Co-authored-by: Jason Desrosiers --- docs/adr/2021-08-26-code-of-conduct.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/adr/2021-08-26-code-of-conduct.md b/docs/adr/2021-08-26-code-of-conduct.md index aaca6936..9441bd9d 100644 --- a/docs/adr/2021-08-26-code-of-conduct.md +++ b/docs/adr/2021-08-26-code-of-conduct.md @@ -66,7 +66,7 @@ It outlines behavioural and conduct expectations for individual contributors, in ### Combination of Contributor Covenant and IETF BCP 54 * Good, because we can pick the parts from BCP 54 that are applicable to our organization -* Good, because we have clear inforcement for conduct which covers the whole Code of Conduct +* Good, because we have clear enforcement for conduct which covers the whole Code of Conduct ## Links