From e1dc2afc7b3a52ac61e028c89b61a4a9eb8b4020 Mon Sep 17 00:00:00 2001 From: "Brian S. Stephan" Date: Mon, 18 Dec 2023 11:14:13 -0600 Subject: [PATCH] add SPDX-License-Identifier and DCO information this includes my personal signoff on the MAINTAINERS.md for DCO purposes Signed-off-by: Brian S. Stephan --- CONTRIBUTING.md | 57 +++++++++++++++++------------- DCO.txt | 34 ++++++++++++++++++ MAINTAINERS.md | 10 ++++++ incorporealcms/__init__.py | 5 ++- incorporealcms/config.py | 5 ++- incorporealcms/error_pages.py | 5 ++- incorporealcms/lib.py | 5 ++- incorporealcms/mdx/__init__.py | 5 ++- incorporealcms/mdx/figures.py | 5 ++- incorporealcms/mdx/pydot.py | 5 ++- incorporealcms/pages.py | 5 ++- setup.py | 5 ++- tests/conftest.py | 5 ++- tests/functional_markdown_tests.py | 5 ++- tests/functional_tests.py | 5 ++- tests/instance/config.py | 5 ++- tests/test_factory.py | 5 ++- tests/test_pages.py | 5 ++- 18 files changed, 137 insertions(+), 39 deletions(-) create mode 100644 DCO.txt create mode 100644 MAINTAINERS.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9a53e08..98e4ef4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,39 @@ prioritization. ## Contributions +### Sign Offs/Custody of Contributions + +I do not request the copyright of contributions be assigned to me or to the project, and I require no provision that I +be allowed to relicense your contributions. My personal oath is to maintain inbound=outbound in my open source projects, +and the expectation is authors are responsible for their contributions. + +I am following the the [Developer Certificate of Origin (DCO)](https://developercertificate.org/), also available at +`DCO.txt`. The DCO is a way for contributors to certify that they wrote or otherwise have the right to license their +code contributions to the project. Contributors must sign-off that they adhere to these requirements by adding a +`Signed-off-by` line to their commit message, and/or, for frequent contributors, by signing off on their entry in +`MAINTAINERS.md`. + +This process is followed by a number of open source projects, most notably the Linux kernel. Here's the gist of it: + +``` +[Your normal Git commit message here.] + +Signed-off-by: Random J Developer +``` + +`git help commit` has more info on adding this: + +``` +-s, --signoff + Add Signed-off-by line by the committer at the end of the commit log + message. The meaning of a signoff depends on the project, but it typically + certifies that committer has the rights to submit this work under the same + license and agrees to a Developer Certificate of Origin (see + http://developercertificate.org/ for more information). +``` + +### Submitting Contributions + I don't expect contributors to sign up for my personal Gitea in order to send contributions, but it of course makes it easier. If you wish to go this route, please sign up at and fork the project. People planning on @@ -50,27 +83,3 @@ your change and to tell me how to pull your changes. formatting a good commit message. * Please make sure your Author contact information is stable, in case I need to reach you. * Consider cryptographically signing (`git commit -S`) your commits. - -### Custody of Contributions - -I do not request the copyright of contributions be assigned to me or to the project, and I require no -provision that I be allowed to relicense your contributions. My personal oath is to maintain -inbound=outbound in my open source projects, and the expectation is authors are responsible for their -contributions. - -I am following the *spirit* of the [Developer Certificate of Origin](https://developercertificate.org/), -but in a simplified fashion: - -By making a contribution to this project, you certify that: - -1. The contribution was created by you and you have the right to submit it under the open source license - indicated in the LICENSE file; or -2. The contribution is based upon previous work that is covered under an appropriate open source license - compatible with the license indicated in the LICENSE file, and you have the right to contribute that - work with or without modifications, under the terms of that same open source license; or -3. The contribution was provided directly to you by some other person who certified points 1, 2, or 3, and - you have not modified it. - -In the event of point 3, your commit **must** include the Signed-off-by line(s) as a chain of custody, -via `git commit -s`. For points 1 and 2, your commit with accurate Author information doubles as direct -custody. diff --git a/DCO.txt b/DCO.txt new file mode 100644 index 0000000..49b8cb0 --- /dev/null +++ b/DCO.txt @@ -0,0 +1,34 @@ +Developer Certificate of Origin +Version 1.1 + +Copyright (C) 2004, 2006 The Linux Foundation and its contributors. + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. + + +Developer's Certificate of Origin 1.1 + +By making a contribution to this project, I certify that: + +(a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + +(b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + +(c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + +(d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 0000000..8ec5125 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,10 @@ +# Maintainers + +This file contains information about people permitted to make major decisions and direction on the project. + +## Contributing Under the DCO + +By adding your name and email address to this section, you certify that all of your subsequent contributions to +incorporeal-cms are made under the terms of the Developer's Certificate of Origin 1.1, available at `DCO.txt`. + +* Brian S. Stephan () diff --git a/incorporealcms/__init__.py b/incorporealcms/__init__.py index 8e314b9..d571076 100644 --- a/incorporealcms/__init__.py +++ b/incorporealcms/__init__.py @@ -1,4 +1,7 @@ -"""An application for running my Markdown-based sites.""" +"""An application for running my Markdown-based sites. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import logging import os from logging.config import dictConfig diff --git a/incorporealcms/config.py b/incorporealcms/config.py index 7641984..d09d641 100644 --- a/incorporealcms/config.py +++ b/incorporealcms/config.py @@ -1,4 +1,7 @@ -"""Default configuration.""" +"""Default configuration. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" class Config(object): diff --git a/incorporealcms/error_pages.py b/incorporealcms/error_pages.py index 5034fab..b694d68 100644 --- a/incorporealcms/error_pages.py +++ b/incorporealcms/error_pages.py @@ -1,4 +1,7 @@ -"""Error page views for 400, 404, etc.""" +"""Error page views for 400, 404, etc. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" from incorporealcms.lib import render diff --git a/incorporealcms/lib.py b/incorporealcms/lib.py index 3c47cd4..8a51b7b 100644 --- a/incorporealcms/lib.py +++ b/incorporealcms/lib.py @@ -1,4 +1,7 @@ -"""Miscellaneous helper functions and whatnot.""" +"""Miscellaneous helper functions and whatnot. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import logging import markdown diff --git a/incorporealcms/mdx/__init__.py b/incorporealcms/mdx/__init__.py index e3bc274..c62c085 100644 --- a/incorporealcms/mdx/__init__.py +++ b/incorporealcms/mdx/__init__.py @@ -1 +1,4 @@ -"""Markdown extensions.""" +"""Markdown extensions. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" diff --git a/incorporealcms/mdx/figures.py b/incorporealcms/mdx/figures.py index 8613a4c..06dd641 100644 --- a/incorporealcms/mdx/figures.py +++ b/incorporealcms/mdx/figures.py @@ -1,4 +1,7 @@ -"""Create generic figures with captions.""" +"""Create generic figures with captions. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import re from xml.etree.ElementTree import SubElement diff --git a/incorporealcms/mdx/pydot.py b/incorporealcms/mdx/pydot.py index db8cf8f..7ee7548 100644 --- a/incorporealcms/mdx/pydot.py +++ b/incorporealcms/mdx/pydot.py @@ -1,4 +1,7 @@ -"""Serve dot diagrams inline.""" +"""Serve dot diagrams inline. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import base64 import logging import re diff --git a/incorporealcms/pages.py b/incorporealcms/pages.py index 9de25c9..cfedfbf 100644 --- a/incorporealcms/pages.py +++ b/incorporealcms/pages.py @@ -1,4 +1,7 @@ -"""General page functionality.""" +"""General page functionality. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import datetime import logging import os diff --git a/setup.py b/setup.py index 3f8e0b3..538fe6c 100644 --- a/setup.py +++ b/setup.py @@ -1,4 +1,7 @@ -"""Setuptools configuration.""" +"""Setuptools configuration. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import os from setuptools import find_packages, setup diff --git a/tests/conftest.py b/tests/conftest.py index 5967d31..9cde9be 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,4 +1,7 @@ -"""Create the test app and other fixtures.""" +"""Create the test app and other fixtures. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import os import pytest diff --git a/tests/functional_markdown_tests.py b/tests/functional_markdown_tests.py index 79345b1..15f4d2b 100644 --- a/tests/functional_markdown_tests.py +++ b/tests/functional_markdown_tests.py @@ -1,4 +1,7 @@ -"""Test graphviz functionality.""" +"""Test graphviz functionality. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import os from incorporealcms import create_app diff --git a/tests/functional_tests.py b/tests/functional_tests.py index 3874ad3..f90daf3 100644 --- a/tests/functional_tests.py +++ b/tests/functional_tests.py @@ -1,4 +1,7 @@ -"""Test page requests.""" +"""Test page requests. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import re from unittest.mock import patch diff --git a/tests/instance/config.py b/tests/instance/config.py index 5a4d43a..0d6bd4a 100644 --- a/tests/instance/config.py +++ b/tests/instance/config.py @@ -1,4 +1,7 @@ -"""Configure the test application.""" +"""Configure the test application. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" LOGGING = { 'version': 1, diff --git a/tests/test_factory.py b/tests/test_factory.py index 6b0e617..99b16a6 100644 --- a/tests/test_factory.py +++ b/tests/test_factory.py @@ -1,4 +1,7 @@ -"""Test basic configuration stuff.""" +"""Test basic configuration stuff. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import os from incorporealcms import create_app diff --git a/tests/test_pages.py b/tests/test_pages.py index 9c83f98..4abf196 100644 --- a/tests/test_pages.py +++ b/tests/test_pages.py @@ -1,4 +1,7 @@ -"""Unit test helper methods.""" +"""Unit test helper methods. + +SPDX-License-Identifier: AGPL-3.0-or-later +""" import os import pytest