-
-
Notifications
You must be signed in to change notification settings - Fork 30.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use static copyright years #126133
Comments
+1 example: 2001-200x 2001-201x |
IMNSHO lets just adopt this already. Do not update existing copyright dates in existing files. Ex: From other your examples above - Google's policy was always "never touch the year" with the year of file creation or copyright statement addition being the standard. As noted in https://opensource.google/documentation/reference/releasing/preparing#license-headers |
Do you mean leave them as-is, and stop updating them each year? However, I expect we will still see many PRs from people who see "2001-2024" and want to help by updating to "2001-2025". It will be easy, though tedious, for us to close them, but at the expense of having wasted the time of contributors. Or to remove the end years? I think this is better, as I doubt we'll get PRs updating "2001" to "2001-2025". Here's a draft PR to illustrate: #126236. |
From that draft PR -- seeing the version with '2024' removed as the end year leads me to slightly prefer the 'YYYY - present' option, especially in lists of several prior copyright assignments. Hugo's option 1 (no year) would also render this moot, though is slightly less consistent. I would also suggest removing copyright comments from modules/files where the PSF is the only cited copyright holder, as this is simply duplicative information. A |
I wouldn't remove entire copyright statements from anywhere. Hugo should reach out to the PSF (as copyright holder) for advice. Our goal is to simplify our life, have a policy to point to, and reduce toil. We should codify said advice in our dev guide and simply reply to anyone attempting to modify copyright statements with a link to that documentation. |
I've emailed PSF legal. |
And the reply: The first thing to understand is that copyright notices are optional/informational. There was a time that copyright owners were required to include a notice in order for their copyrights to be protected; by international treaty, this requirement has been abolished. So the form of your copyright notices will not impact the rights of the copyright owner. Copyright notices can, however, still perform a useful informative role. According to the US copyright office, the elements of a valid copyright notice are:
Example: © 2024 John Doe For a work that's published only once, the year of first publication is a simple matter. A file in an open source project, on the other hand, is essentially an accretion of revisions or derivative works, each with different years of first publication. This is why you see multiple dates or date ranges in the corresponding copyright notices. For example, if a file was created in 2015 and revised in 2017, 2018, 2019, and 2022, you might render the copyright notice in one of the following ways:
It's probably fairly common in such cases to use "2015-2022" as the date range, although this provides somewhat less information about the dates of first publication of the various revisions, and arguably implies incorrectly that the file was revised in each of the years in the range. It doesn't make particular sense to update notices to add the present year at the end of the date range in every copyright notice, regardless of whether the corresponding file has been updated recently. But it's also not going to impact anyone's rights, nor is using "-present" instead. So I think both of the formats you propose that include the year would be fine. I would not recommend leaving out the year of first publication entirely, as it's one of the elements of a valid copyright notice. I'll also note that "Python Software Foundation" is probably not an accurate statement of the author(s) of PSF projects, since PSF does not (as far as I know) require copyright assignment. That said, it's also impractical and error-prone to include notices for all of the authors of a file. Some common alternatives are "FOO Project Contributors" or "The authors listed in CONTRIBUTORS." None of these are ideal, because they either don't actually name the authors, or they may become inaccurate as an author's contributions disappear over time. In short, there's no ideal solution, but thankfully notices aren't that important. Pick something reasonable and do your best to stick to it. |
Therefore I propose #126236 as it is. (Left as draft to avoid pinging the CODEOWNERS.)
Good idea. Let's do this after merge. |
I've merged #126236 and opened python/devguide#1470. |
@hugovk: Before making such changes and releasing the distributions with these changes, please ask the PSF Board for approval. They are the only ones who have the authority to change license texts and possibly even PSF copyright notices (since they are being referred to in the PSF license). Thanks. |
The PSF Legal list is monitored by PSF staff (including myself) and is the correct path for these kinds of issues. Topics that need full board involvement get sent up and ones that don't need full board involvement get decided there, either without or without legal counsel depending on the topic. In this particular instance, we did loop in counsel to make sure that the PSF is fulfilling our legal duty as copyright holders. |
Short version
Each January we update the PSF copyright years in the repo:
2025 is approaching.
Can we get permission from the PSF to adopt a copyright that does not need updating every year?
I suggest something like one of the following:
Longer version
Last year, we updated it in 15 places in 10 files:
Sometimes we miss a few and have to update them later:
2023 Update copyright years to 2023. #100848
Update additional copyright years to 2023. #100859
2022 Update copyright year to 2022. #30335
Or we miss something, merge the fix a year late, which needs refixing:
Update README.rst #25514
Fix copyright years in
README.rst
#31347And sometimes we backport these to (some) older branches, but other years don't:
[3.10] Update copyright years to 2023. (gh-100848). #100850
[3.9] Update copyright years to 2023. (gh-100848). #100851
[3.8] Update copyright years to 2023. (gh-100848). #100852
[3.7] Update copyright years to 2023. (gh-100848). #100853
[3.9] Update copyright year to 2022. (GH-30335) #30337
[3.7] Bring Python into the next decade. (GH-17801). #17803
[3.6] Bring Python into the next decade. (GH-17801). #17804
[2.7] Bring Python into the next decade. (GH-17801). #17805
[3.8] Bring Python into the new year. (GH-24036) #24046
[3.7] Bring Python into the new year. (GH-24036) #24047
[3.7] Bring Python into the new year. (GH-24036) #24052
[3.6] Bring Python into the new year (GH-24036) #24054
[3.6] Bump copyright years to 2019. (GH-11404). #11407
[2.7] Bump copyright years to 2019. (GH-11404). #11408
[2.7] advance copyright years to 2018 (GH-5094). #5105
Sometimes there's lots of duplicate PRs that end up closed and wasting everyone's time:
Not only is this tedious work, it is likely unnecessary. A lot of big projects have stopped updating copyright years: https://hynek.me/til/copyright-years/
For example:
These either have only have the first year, omit years altogether, or end with "present".
Can we do something similar?
Linked PRs
The text was updated successfully, but these errors were encountered: