This document contains guidance for how individuals and core units that develop software for MakerDAO can assign copyright to Dai Foundation which is set up to be the guardian of MakerDAO’s intangible assets. The document also includes guidance for Github repository administrators on how to ensure that the software contributed has its copyright assigned to Dai Foundation,
A). Source code: Contributors are encouraged to follow the guidelines in this article: https://matija.suklje.name/how-and-why-to-properly-write-copyright-statements-in-your-code \
In a nutshell use the following format in each source file:
SPDX-FileCopyrightText: © {$year_of_file_creation} Dai Foundation <www.daifoundation.org>
SPDX-License-Identifier: {$SPDX_license_name}
For a list of license identifiers see https://spdx.org/licenses/
For example, for a smart contract initially created in 2022, add the following to all source files
SPDX-FileCopyrightText: © 2022 Dai Foundation <www.daifoundation.org>
SPDX-License-Identifier: AGPL-3.0-or-later
B). For Github repository admins to cover occasional contributions and other cases where the copyright clause may not be included in the source files, setup the Github repository for the software with a Contributor License Agreement (CLA) assistant such that contributors will sign the CLA from within a pull request. See the appendix for CLA setup details
C). Add a COPYRIGHT file to the Github repository similar to a LICENSE file with the following content
The copyright holder for the code in this repository is:
© {$year_of_repository_creation} Dai Foundation <www.daifoundation.org>
Example:
The copyright holder for the code in this repository is:
© 2022 Dai Foundation <www.daifoundation.org>
NOTE: If you have your code in another Github project than the makerdao project, then notify Dai Foundation about the location of the software. Do this by sending an email to support@daifoundation.org specifying where your repository resides.
What to do if I am contributing to software that already has other copyright holders than the Dai Foundation
In the case where the software being developed has other copyright holders than the Dai Foundation those copyright holders shall be listed together with the Dai Foundation.
For example, If contributing to a file in the DSS project that originally is written by rain, then specify the following:
SPDX-FileCopyrightText: © 2018 Rain <rainbreak@riseup.net>
SPDX-FileCopyrightText: © 2022 Dai Foundation <www.daifoundation.org>
SPDX-License-Identifier: AGPL-3.0-or-later
Please note that while Maker Foundation transferred all Maker Protocol software copyrights to Dai Foundation, there may still exist code snippets that include copyright statements referring to Maker Ecosystem Growth Holdings, INC. (MEGH). In such a case, do replace "Maker Ecosystem Growth Holdings, INC." with Dai Foundation while keeping the year of first contribution.
For example, if the code includes
Copyright (C) 2018 Maker Ecosystem Growth Holdings, INC. then update the statement like this:
SPDX-FileCopyrightText: © 2018 Dai Foundation <www.daifoundation.org>
You may wonder whether this is ok, since Dai Foundation only was created in 2019. It is ok because the prior contributor (MEGH) has transferred it copyrights to Dai Foundation. The statement in the example above shall be read as: "The copyright for the software that was created from 2018 and onwards belong to Dai Foundation".
There is an open source Contributor License Agreement Assistant available at https://github.com/cla-assistant/cla-assistant, and SAP is running a deployment of this at https://cla-assistant.io/.
The solution collects and stores the followling personal data from a contributor which accepts the MakerDAO Individual Contributor License Agreement
- Your GitHubID;
- The access token created to log you into GitHub (Note: we do not store your password); The CLA can be configured to collect additional data, but this does not happen for the MakerDAO CLA.
In order to ensure that those data aren't stored by third party that MakerDAO has no relationship to, Dai Foundation has created a fork of the solution. The code resides at https://github.com/daifoundation/cla-assistant, and the deployment of this at https://cla.daifoundation.org/.
If you want to test the Dai Foundation CLA Assistant you can create a Pull Request for one of the documents in https://github.com/daifoundation/docs
To set up your Github repository to check that contributors have signed a Contributor License Agreement and enable them to do so if they haven’t, do the following:
-
Make sure that you are signed with the Github user that is admin on the Github repository that you want to set up the integration for
-
Click “Configure CLA”, and specify
-
- the repository you want to set up CLA assistant for
-
- the location of the CLA - specify the following gist https://gist.github.com/daifoundationadmin/e698f568fb9db41454d2a79f4ebfd592
-
- Do not enter anything for the options under this point
-
Click the LINK button - and that’s it
Now, When contributors create a Pull Request, the CLA assistant checks whether they have signed the CLA, and blocks the PUll Request until the CLA is signed.