Hi internals,
Some of our source files currently contain a license header similar to this:
/*
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2018 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Andi Gutmans andi@php.net |
| Zeev Suraski zeev@php.net |
+----------------------------------------------------------------------+
*/
I would like to make two changes to this header:
-
Change "PHP Version 7" line to just "PHP", to avoid the necessity of
updating this for new major versions. I don't think the version information
here is particularly useful to anybody. -
Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from
requiring a yearly update, this line is actually complete misinformation,
because the PHP group does not hold the copyright for the PHP source
code. This would require a copyright assignment agreement on behalf of all
contributors, which we do not collect.
We could also just drop the header entirely, I'm just proposing these two
changes as the path of least resistance towards getting the "annoying"
parts removed.
Regards,
Nikita
Hi internals,
Some of our source files currently contain a license header similar to this:
/*
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2018 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Andi Gutmans andi@php.net |
| Zeev Suraski zeev@php.net |
+----------------------------------------------------------------------+
*/I would like to make two changes to this header:
Change "PHP Version 7" line to just "PHP", to avoid the necessity of
updating this for new major versions. I don't think the version information
here is particularly useful to anybody.Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from
requiring a yearly update, this line is actually complete misinformation,
because the PHP group does not hold the copyright for the PHP source
code. This would require a copyright assignment agreement on behalf of all
contributors, which we do not collect.We could also just drop the header entirely, I'm just proposing these two
changes as the path of least resistance towards getting the "annoying"
parts removed.Regards,
Nikita
And maybe also additional change from:
http://www.php.net/license/3_01.txt
to https short link that points to license content as well:
https://php.net/license/3_01.txt
--
Peter Kokot
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of updating this for
new major versions. I don't think the version information here is particularly useful to
anybody.
I don't mind that much, but I don't see any issue with keeping it the way it is either. It does look nicer the way it is now IMHO, and the cost associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from requiring a
yearly update, this line is actually complete misinformation, because the PHP group
does not hold the copyright for the PHP source code. This would require a copyright
assignment agreement on behalf of all contributors, which we do not collect.We could also just drop the header entirely, I'm just proposing these two changes as
the path of least resistance towards getting the "annoying" parts removed.
I'm no lawyer, but I do believe a case can be made for claiming that a person putting code into files with the header 'Copyright (c) XYZ', is in fact implicitly assigning copyright to XYZ. So while it's not as strong as an explicit copyright assignment, and while it was never tested in court (and hopefully never will be) - I do see value in keeping it. I certainly don't see a reason to change it after 20 years where it didn't seem to bother anybody, unless there's a strong reason to do that, which currently I don't see.
Zeev
Intellectual rights include:
non-property rights (right to authorship, right to author's name, etc.);
property rights (exclusive rights or copyright);
A very interesting question appears:
Who own the copyright for the PHP source code?
Is Nikita right when he says that the copyright on PHP belongs to all
the co-authors who contributed to the development?
Best regards,
Ruslan
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of
updating this for
new major versions. I don't think the version information here is
particularly useful to
anybody.I don't mind that much, but I don't see any issue with keeping it the way it
is either. It does look nicer the way it is now IMHO, and the cost
associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from
requiring a
yearly update, this line is actually complete misinformation, because the
PHP group
does not hold the copyright for the PHP source code. This would require
a copyright
assignment agreement on behalf of all contributors, which we do not
collect.We could also just drop the header entirely, I'm just proposing these two
changes as
the path of least resistance towards getting the "annoying" parts
removed.I'm no lawyer, but I do believe a case can be made for claiming that a
person putting code into files with the header 'Copyright (c) XYZ', is in
fact implicitly assigning copyright to XYZ. So while it's not as strong as
an explicit copyright assignment, and while it was never tested in court
(and hopefully never will be) - I do see value in keeping it. I certainly
don't see a reason to change it after 20 years where it didn't seem to
bother anybody, unless there's a strong reason to do that, which currently I
don't see.Zeev
Den 2019-01-28 kl. 16:38, skrev Zeev Suraski:
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of updating this for
new major versions. I don't think the version information here is particularly useful to
anybody.
I don't mind that much, but I don't see any issue with keeping it the way it is either. It does look nicer the way it is now IMHO, and the cost associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from requiring a
yearly update, this line is actually complete misinformation, because the PHP group
does not hold the copyright for the PHP source code. This would require a copyright
assignment agreement on behalf of all contributors, which we do not collect.We could also just drop the header entirely, I'm just proposing these two changes as
the path of least resistance towards getting the "annoying" parts removed.
I'm no lawyer, but I do believe a case can be made for claiming that a person putting code into files with the header 'Copyright (c) XYZ', is in fact implicitly assigning copyright to XYZ. So while it's not as strong as an explicit copyright assignment, and while it was never tested in court (and hopefully never will be) - I do see value in keeping it. I certainly don't see a reason to change it after 20 years where it didn't seem to bother anybody, unless there's a strong reason to do that, which currently I don't see.Zeev
I think you have a very good point here. The license file also
refers to the PHP Group, so removing it in header files might
indirectly affect license statement.
r//Björn Larsson
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of
updating this for
new major versions. I don't think the version information here is
particularly useful to
anybody.I don't mind that much, but I don't see any issue with keeping it the way
it is either. It does look nicer the way it is now IMHO, and the cost
associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from
requiring a
yearly update, this line is actually complete misinformation, because
the PHP group
does not hold the copyright for the PHP source code. This would
require a copyright
assignment agreement on behalf of all contributors, which we do not
collect.We could also just drop the header entirely, I'm just proposing these
two changes as
the path of least resistance towards getting the "annoying" parts
removed.I'm no lawyer, but I do believe a case can be made for claiming that a
person putting code into files with the header 'Copyright (c) XYZ', is in
fact implicitly assigning copyright to XYZ. So while it's not as strong as
an explicit copyright assignment, and while it was never tested in court
(and hopefully never will be) - I do see value in keeping it. I certainly
don't see a reason to change it after 20 years where it didn't seem to
bother anybody, unless there's a strong reason to do that, which currently
I don't see.Zeev
No, this case cannot be made. You are likely mixing up licensing and
copyright here. Licensing (in the absence of a CLA) follows the
inbound=outbound principle, i.e., it is understood that inbound
contributions are made under the same terms as the outbound license.
However (in the absence of a copyright assignment agreement) each
contributor retains copyright for their contributions.
And while this may not bother you personally, this discussion comes up
every single year when the inevitable year increment PRs start rolling in.
The most recent one for 2019 is https://github.com/php/php-src/pull/3730,
which triggered this mail. I am rather predisposed against commits that
touch a large part of the codebase to make a change that is not just wholly
unnecessary, but also legally extremely dubious.
Nikita
No, this case cannot be made. You are likely mixing up licensing and copyright here. Licensing (in the absence of a CLA) follows the inbound=outbound principle, i.e., it is understood that inbound contributions are made under the same terms as the outbound license. However (in the absence of a copyright assignment agreement) each contributor retains copyright for their contributions.
I'm certainly not confusing licensing and copyright, Nikita, and with due respect - you don't know what you're saying for a fact, neither does anybody really, as I'm not aware it's ever been tested in court. We have purposely included the copyright notice on each and every file, and whether adding code to such files out of one's free will constitutes written consent or not is at the very least debatable (and potentially has different answers depending on the jurisdiction).
And while this may not bother you personally, this discussion comes up every single year when the inevitable year increment PRs start rolling in. The most recent one for 2019 is https://github.com/php/php-src/pull/3730, which triggered this mail. I am rather predisposed against commits that touch a large part of the codebase to make a change that is not just wholly unnecessary, but also legally extremely dubious.
If the yearly sed annoyance is the true source of the issue then let's go with one of the proposals made on that thread – i.e. use "-present" or just "(c) The PHP Group" without years.
Zeev
(sorry for the HTML email, there's a bit of a mess with my email client right now.)
No, this case cannot be made. You are likely mixing up licensing and
copyright here. Licensing (in the absence of a CLA) follows the
inbound=outbound principle, i.e., it is understood that inbound
contributions are made under the same terms as the outbound license.
However (in the absence of a copyright assignment agreement) each
contributor retains copyright for their contributions.I'm certainly not confusing licensing and copyright, Nikita, and with due
respect - you don't know what you're saying for a fact, neither does
anybody really, as I'm not aware it's ever been tested in court. We have
purposely included the copyright notice on each and every file, and whether
adding code to such files out of one's free will constitutes written
consent or not is at the very least debatable (and potentially has
different answers depending on the jurisdiction).And while this may not bother you personally, this discussion comes up
every single year when the inevitable year increment PRs start rolling in.
The most recent one for 2019 is https://github.com/php/php-src/pull/3730,
which triggered this mail. I am rather predisposed against commits that
touch a large part of the codebase to make a change that is not just wholly
unnecessary, but also legally extremely dubious.If the yearly sed annoyance is the true source of the issue then let's go
with one of the proposals made on that thread – i.e. use "-present" or just
"(c) The PHP Group" without years.
Okay, let's change it to "(c) The PHP Group" then. While that doesn't make
it right, it does remove my main annoyance.
Nikita
Okay, let's change it to "(c) The PHP Group" then. While that doesn't make it right, it does remove my main annoyance.
Done for master and the 7.4 branch. Thoughts on other versions?
Zeev
Okay, let's change it to "(c) The PHP Group" then. While that doesn't
make it right, it does remove my main annoyance.Done for master and the 7.4 branch. Thoughts on other versions?
Zeev
Thanks! I think either way is fine there. I'd probably just leave them as
is.
We should probably make the same change for Zend code as well, which uses a
different copyright line:
Copyright (c) 1998-2018 Zend Technologies Ltd. (http://www.zend.com)
Regards,
Nikita
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of updating this for
new major versions. I don't think the version information here is particularly useful to
anybody.I don't mind that much, but I don't see any issue with keeping it the way it is either. It does look nicer the way it is now IMHO, and the cost associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from requiring a
yearly update, this line is actually complete misinformation, because the PHP group
does not hold the copyright for the PHP source code. This would require a copyright
assignment agreement on behalf of all contributors, which we do not collect.We could also just drop the header entirely, I'm just proposing these two changes as
the path of least resistance towards getting the "annoying" parts removed.I'm no lawyer, but I do believe a case can be made for claiming that a
person putting code into files with the header 'Copyright (c) XYZ', is
in fact implicitly assigning copyright to XYZ. So while it's not as
strong as an explicit copyright assignment, and while it was never
tested in court (and hopefully never will be) - I do see value in
keeping it. I certainly don't see a reason to change it after 20
years where it didn't seem to bother anybody, unless there's a strong
reason to do that, which currently I don't see.
It could be changed to "1997-present" though, in which case it doesn't
need updating once a year (and messing up history in VCS).
cheers,
Derick
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity of updating this for
new major versions. I don't think the version information here is particularly useful to
anybody.I don't mind that much, but I don't see any issue with keeping it the way it is either. It does look nicer the way it is now IMHO, and the cost associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart from requiring a
yearly update, this line is actually complete misinformation, because the PHP group
does not hold the copyright for the PHP source code. This would require a copyright
assignment agreement on behalf of all contributors, which we do not collect.We could also just drop the header entirely, I'm just proposing these two changes as
the path of least resistance towards getting the "annoying" parts removed.I'm no lawyer, but I do believe a case can be made for claiming that a
person putting code into files with the header 'Copyright (c) XYZ', is
in fact implicitly assigning copyright to XYZ. So while it's not as
strong as an explicit copyright assignment, and while it was never
tested in court (and hopefully never will be) - I do see value in
keeping it. I certainly don't see a reason to change it after 20
years where it didn't seem to bother anybody, unless there's a strong
reason to do that, which currently I don't see.It could be changed to "1997-present" though, in which case it doesn't
need updating once a year (and messing up history in VCS).cheers,
Derick--
Hello,
I've prepared quick pull request [1] that fixes the missed headers in
source code files and additionally bumps or changes the year range on
other places.
Questions:
1.) What should "php -v" output regarding copyrights and year ranges?
2.) What should "man php" include under the COPYRIGHT section
regarding the year ranges?
3.) Similarly, should there be a common pattern for places like
phpinfo()
output?
Thanks.
[1] https://github.com/php/php-src/pull/3791
--
Peter Kokot
I would like to make two changes to this header:
- Change "PHP Version 7" line to just "PHP", to avoid the necessity
of updating this for
new major versions. I don't think the version information here is
particularly useful to
anybody.I don't mind that much, but I don't see any issue with keeping it the
way it is either. It does look nicer the way it is now IMHO, and the cost
associated with changing it twice a decade is, well, not very substantial.
- Remove the "Copyright (c) 1997-2018 The PHP Group" line. Apart
from requiring a
yearly update, this line is actually complete misinformation,
because the PHP group
does not hold the copyright for the PHP source code. This would
require a copyright
assignment agreement on behalf of all contributors, which we do not
collect.We could also just drop the header entirely, I'm just proposing
these two changes as
the path of least resistance towards getting the "annoying" parts
removed.I'm no lawyer, but I do believe a case can be made for claiming that a
person putting code into files with the header 'Copyright (c) XYZ', is
in fact implicitly assigning copyright to XYZ. So while it's not as
strong as an explicit copyright assignment, and while it was never
tested in court (and hopefully never will be) - I do see value in
keeping it. I certainly don't see a reason to change it after 20
years where it didn't seem to bother anybody, unless there's a strong
reason to do that, which currently I don't see.It could be changed to "1997-present" though, in which case it doesn't
need updating once a year (and messing up history in VCS).cheers,
Derick--
Hello,
I've prepared quick pull request [1] that fixes the missed headers in
source code files and additionally bumps or changes the year range on
other places.Questions:
1.) What should "php -v" output regarding copyrights and year ranges?
2.) What should "man php" include under the COPYRIGHT section
regarding the year ranges?
3.) Similarly, should there be a common pattern for places like
phpinfo()
output?Thanks.
[1] https://github.com/php/php-src/pull/3791
--
Peter Kokot
The pull request with a quickfix [1] to sync the year ranges will be merged
this weekend if everyone's ok with this... So now, only the LICENSE file
optionally gets bumped the year ranges and that simplifies managing files
significantly for the better. Thank you.