From c7806cad9171abc0f8029b489096cafe370da72c Mon Sep 17 00:00:00 2001 From: Benjamin Sternthal Date: Wed, 14 Aug 2024 15:03:46 -0700 Subject: [PATCH 1/4] Clarified DCO and CLA requirements --- governance/IP_POLICY_GUIDANCE.md | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/governance/IP_POLICY_GUIDANCE.md b/governance/IP_POLICY_GUIDANCE.md index 95bfaa456..ec03bbfca 100644 --- a/governance/IP_POLICY_GUIDANCE.md +++ b/governance/IP_POLICY_GUIDANCE.md @@ -10,10 +10,16 @@ If in doubt about anything related to IP after reading this document, first read There are four key requirements for all OpenJS Foundation projects: -1. [Licensing](#1-licensing) -2. [Copyright notices](#2-copyright-notices) -3. Displaying the [standard website footer](#3-standard-website-footer) on the project's website -4. [Adopting the DCO or a CLA](#4-adopting-the-dco-or-a-cla) +- [OpenJS Foundation IP Policy Guidance](#openjs-foundation-ip-policy-guidance) + - [Basic requirements](#basic-requirements) + - [1. Licensing](#1-licensing) + - [2. Copyright notices](#2-copyright-notices) + - [3. Standard website footer](#3-standard-website-footer) + - [4. Adopting the DCO or a CLA](#4-adopting-the-dco-or-a-cla) + - [DCO](#dco) + - [CLA](#cla) + - [Obtaining an exemption from the Board](#obtaining-an-exemption-from-the-board) + - [Getting help](#getting-help) ### 1. Licensing @@ -53,15 +59,27 @@ All project websites need to have a [standard website footer][]. Each project must adopt either the [Developer Certificate of Origin (DCO)][DCO] or a Contributor License Agreement (CLA). +#### DCO + +There are two options for implementing a DCO on your project: + +1. Via installing the [DCO bot](https://github.com/apps/dco) +2. By including the following in your repository: + 1. Adding the DCO to your CONTRIBUTING.md file, [example](https://github.com/nodejs/node/blob/main/CONTRIBUTING.md) + 2. Adding the DCO to your PR templates, [example](https://raw.githubusercontent.com/nodejs/node/main/.github/PULL_REQUEST_TEMPLATE.md) + +The DCO Bot is the preferred method and is mandatory for any new projects joining the foundation. We also recommend this method for existing projects that require stricter enforcement. + +#### CLA + The Board has pre-approved an [individual CLA][ICLA] and a [corporate CLA][CCLA]. Projects can choose to adopt either the individual CLA by itself or both the individual CLA and the corporate CLA without any further review. If you need to use a different CLA, you must [obtain an exemption from the board](#obtaining-an-exemption-from-the-board). -We are preparing additional guidance documentation on how to implement the DCO or a CLA, what infrastructure the foundation provides to help with this, what steps maintainers need to make when merging pull requests, and how to fix common issues that arise when using either solution. +CLAs are managed through [EasyCLA](https://docs.linuxfoundation.org/lfx/easycla). Please reach out to the [OpenJS staff](mailto:operations@openjsf.org) for assistance with implementation. -To setup the CLA infrastructure until this additional documentation is ready, please [reach out to foundation staff](#getting-help). ## Obtaining an exemption from the Board From f1997d435d4cf2b79d09a5a1a3389aecda4df437 Mon Sep 17 00:00:00 2001 From: Benjamin Sternthal Date: Thu, 3 Oct 2024 16:16:24 -0700 Subject: [PATCH 2/4] Update IP_POLICY_GUIDANCE.md Updated based on feebdack. Changes include: 1. Removing an auto generated TOC that was included by a visual studio plugin :| 2. Changed DCO instructions so that DCO bot is preferred but either method works. --- governance/IP_POLICY_GUIDANCE.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/governance/IP_POLICY_GUIDANCE.md b/governance/IP_POLICY_GUIDANCE.md index ec03bbfca..ff739713b 100644 --- a/governance/IP_POLICY_GUIDANCE.md +++ b/governance/IP_POLICY_GUIDANCE.md @@ -10,16 +10,10 @@ If in doubt about anything related to IP after reading this document, first read There are four key requirements for all OpenJS Foundation projects: -- [OpenJS Foundation IP Policy Guidance](#openjs-foundation-ip-policy-guidance) - - [Basic requirements](#basic-requirements) - - [1. Licensing](#1-licensing) - - [2. Copyright notices](#2-copyright-notices) - - [3. Standard website footer](#3-standard-website-footer) - - [4. Adopting the DCO or a CLA](#4-adopting-the-dco-or-a-cla) - - [DCO](#dco) - - [CLA](#cla) - - [Obtaining an exemption from the Board](#obtaining-an-exemption-from-the-board) - - [Getting help](#getting-help) +1. [Licensing](#1-licensing) +2. [Copyright notices](#2-copyright-notices) +3. Displaying the [standard website footer](#3-standard-website-footer) on the project's website +4. [Adopting the DCO or a CLA](#4-adopting-the-dco-or-a-cla) ### 1. Licensing @@ -68,7 +62,7 @@ There are two options for implementing a DCO on your project: 1. Adding the DCO to your CONTRIBUTING.md file, [example](https://github.com/nodejs/node/blob/main/CONTRIBUTING.md) 2. Adding the DCO to your PR templates, [example](https://raw.githubusercontent.com/nodejs/node/main/.github/PULL_REQUEST_TEMPLATE.md) -The DCO Bot is the preferred method and is mandatory for any new projects joining the foundation. We also recommend this method for existing projects that require stricter enforcement. +The DCO Bot is the preferred method and is also recommended for projects that require strict enforcement.” #### CLA From 4ddb6e61a731001d4896e67eab1eadd26217639d Mon Sep 17 00:00:00 2001 From: Benjamin Sternthal Date: Thu, 3 Oct 2024 16:18:08 -0700 Subject: [PATCH 3/4] Update IP_POLICY_GUIDANCE.md removed typo Signed-off-by: Benjamin Sternthal --- governance/IP_POLICY_GUIDANCE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/governance/IP_POLICY_GUIDANCE.md b/governance/IP_POLICY_GUIDANCE.md index ff739713b..45d32ece0 100644 --- a/governance/IP_POLICY_GUIDANCE.md +++ b/governance/IP_POLICY_GUIDANCE.md @@ -62,7 +62,7 @@ There are two options for implementing a DCO on your project: 1. Adding the DCO to your CONTRIBUTING.md file, [example](https://github.com/nodejs/node/blob/main/CONTRIBUTING.md) 2. Adding the DCO to your PR templates, [example](https://raw.githubusercontent.com/nodejs/node/main/.github/PULL_REQUEST_TEMPLATE.md) -The DCO Bot is the preferred method and is also recommended for projects that require strict enforcement.” +The DCO Bot is the preferred method and is also recommended for projects that require strict enforcement. #### CLA From 5680778046a32e10fae88c3e3266f9783f9676f7 Mon Sep 17 00:00:00 2001 From: Benjamin Sternthal Date: Wed, 9 Oct 2024 15:04:17 -0700 Subject: [PATCH 4/4] Update IP_POLICY_GUIDANCE.md Resolved Tobie's suggestions. --- governance/IP_POLICY_GUIDANCE.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/governance/IP_POLICY_GUIDANCE.md b/governance/IP_POLICY_GUIDANCE.md index 45d32ece0..376069698 100644 --- a/governance/IP_POLICY_GUIDANCE.md +++ b/governance/IP_POLICY_GUIDANCE.md @@ -55,9 +55,9 @@ Each project must adopt either the [Developer Certificate of Origin (DCO)][DCO] #### DCO -There are two options for implementing a DCO on your project: +There are two options for implementing the DCO on your project: -1. Via installing the [DCO bot](https://github.com/apps/dco) +1. By installing the [DCO bot](https://github.com/apps/dco) 2. By including the following in your repository: 1. Adding the DCO to your CONTRIBUTING.md file, [example](https://github.com/nodejs/node/blob/main/CONTRIBUTING.md) 2. Adding the DCO to your PR templates, [example](https://raw.githubusercontent.com/nodejs/node/main/.github/PULL_REQUEST_TEMPLATE.md) @@ -72,7 +72,7 @@ Projects can choose to adopt either the individual CLA by itself or both the ind If you need to use a different CLA, you must [obtain an exemption from the board](#obtaining-an-exemption-from-the-board). -CLAs are managed through [EasyCLA](https://docs.linuxfoundation.org/lfx/easycla). Please reach out to the [OpenJS staff](mailto:operations@openjsf.org) for assistance with implementation. +CLAs are managed through [EasyCLA](https://docs.linuxfoundation.org/lfx/easycla). ## Obtaining an exemption from the Board @@ -82,7 +82,7 @@ To do so, please [open an issue in the Cross Project Council repository](https:/ ## Getting help -If you have a question about this policy or how to implement it, please reach out to [legal-questions@lists.openjsf.org](mailto:legal-questions@lists.openjsf.org). +If you have any questions about this policy or need assistance with its implementation, please contact the [OpenJS staff](mailto:operations@openjsf.org). [IP Policy]: https://ip-policy.openjsf.org [DCO]: https://developercertificate.org