Skip to content

Conversation

@paulberg
Copy link
Contributor

I am an Open Source licensing compliance specialist. I was alerted to the issue here: #85

I looked into it and could find nothing in regards to their claims that would appear to be out of compliance with the MIT licensing.

However, I did find this. The terms of the MIT license say that the copyright notice that accompanies the license must be included in all copies of the software.

This commit by Satoshi removed his own copyright mark, which he is perfectly allowed to do since it's his. bitcoin/bitcoin@fc73ad6

However, this commit by Marius Kjærstad removes the stamp of each and every developer that was represented by that stamp. bitcoin/bitcoin@3b00e7c#diff-7116ef0705885343c9e1b2171a06be0e

It is conceivable that each and every developer that committed to the project prior 20 April 22, 2015 consented to removing their mark and replacing it with a more specific mark that could be interpreted to be a subset of the broader nomenclature or that those who did not consent had their code removed. I don't have access to the written agreements by these developers though, and I see no evidences that their contributions were removed, so I seriously doubt this was the case.

To avoid any claims by one of those developers, I recommend that we put their stamp back so that we are irrefutably in compliance with the license they contributed their code under.

I am an Open Source licensing compliance specialist. I was alerted to the issue here: Bitcoin-ABC#85

I looked into it and could find nothing in regards to their claims that would appear to be out of compliance with the MIT licensing.

However, I did find this. The terms of the MIT license say that the copyright notice that accompanies the license must be included in all copies of the software.

This commit by Satoshi removed his own copyright mark, which he is perfectly allowed to do since it's his. bitcoin/bitcoin@fc73ad6

However, this commit by Marius Kjærstad removes the stamp of each and every developer that was represented by that stamp. bitcoin/bitcoin@3b00e7c#diff-7116ef0705885343c9e1b2171a06be0e

It is conceivable that each and every developer that committed to the project prior 20 April 22, 2015 consented to removing their mark and replacing it with a more specific mark that could be interpreted to be a subset of the broader nomenclature or that those who did not consent had their code removed. I don't have access to the written agreements by these developers though, and I see no evidences that their contributions were removed, so I seriously doubt this was the case.

To avoid any claims by one of those developers, I recommend that we put their stamp back so that we are irrefutably in compliance with the license they contributed their code under.
@paulberg
Copy link
Contributor Author

Specifically, I'm not confident Satoshi would feel represented as a "Bitcoin Core Developer" and given his holdings, he can probably afford a lawyer.

@EchterAgo
Copy link
Contributor

EchterAgo commented Sep 13, 2017

I agree with this change. Although I am not sure if the core copyright should start at 2009. The core rebrand happened in 2013: https://bitcoin.org/en/release/v0.9.0

Also, I wonder if copyright by an entity that is not a legal entity, without copyright assignment agreements, is even a good way to do this. For example, Bitcoin Core is a different group now, they removed developers. The copyright of their contributed code still belongs to those developers, yet they are not credited. You seem to have knowledge about this, care to elaborate?

@paulberg
Copy link
Contributor Author

paulberg commented Sep 13, 2017

Whether it applies to a non-entity or not is a more esoteric question and I'm not a lawyer. However, regardless of the legal implications of a copyright stamp, The license says basically, "you can use my stuff as long as you keep that little thing up there." It does not say "as long as that little thing up there is legally sound". So the legality of the stamp and the requirements to keep it are completely separate concerns.

Satoshi appears to have called him a "Bitcoin Developer". That's what he wrote personally, and no one is allowed to change it. The core team called themselves "The Bitcoin Core Developers" and they claimed copyright from 2009 onwards, and no one is allowed to change it (if the 2009 is challenged in court and loses, doesn't matter... that's what they wrote and a condition of the license they gave us is that we don't change it.)

Now, your question DOES apply to the Bitcoin ABC developers, since we are editing this and we have copyright ownership of our contributions. However, EVERY person represented by that stamp (anyone who contributed to Bitcoin ABC under the current license) needs to sign off on a change (this is why CLAs are often nice). Of course, we could add another one... say, start a non-profit foundation and place the foundation's name there.

Personally, I would be proud to see the mark that Satoshi left representing himself put back on the code he wrote that we are using. I don't care what it says or whether it has any legal meaning. He had 1 freaking simple condition for us to be able to use his code and we couldn't even comply with that.

@EchterAgo
Copy link
Contributor

EchterAgo commented Sep 13, 2017

Thanks for the response, it does make sense and I agree.

There definitely should be some discussion about starting a non-profit foundation and having CLAs in place.

@Bitcoin-ABC Bitcoin-ABC deleted a comment from gmaxwell Sep 13, 2017
@deadalnix
Copy link
Member

Hi,

It looks like the change that is proposed here has been done before ABC forked away from core, and it would make sense to backport this patch to core. As to ABC, we only use github as a mirror, and actual development work is done at https://reviews.bitcoinabc.org/

@Bitcoin-ABC Bitcoin-ABC deleted a comment from mpatc Sep 13, 2017
@gmaxwell
Copy link
Contributor

Please set the end date to 2017. Many people who contributed under the original moniker, including myself, still contribute. I didn't agree with the renaming and prefer the original listing.

Otherwise the change sounds good to me. Is there a reason that my comment was deleted by deadalnix?

@deadalnix
Copy link
Member

deadalnix commented Sep 13, 2017

@gmaxwell Yes, and you know why. This comment it legit so it'll stay.

@deadalnix
Copy link
Member

I opened a diff on phabricator ( https://reviews.bitcoinabc.org/D538 ). Closing that one. Thanks @paulberg this looks like a good change.

@deadalnix deadalnix closed this Sep 13, 2017
@Bitcoin-ABC Bitcoin-ABC deleted a comment from gmaxwell Sep 13, 2017
cculianu pushed a commit to cculianu/bitcoin-abc that referenced this pull request Sep 14, 2017
Summary:
Verbatim from paulbarg on github: Bitcoin-ABC#89

I am an Open Source licensing compliance specialist. I was alerted to the issue here: Bitcoin-ABC#85

I looked into it and could find nothing in regards to their claims that would appear to be out of compliance with the MIT licensing.

However, I did find this. The terms of the MIT license say that the copyright notice that accompanies the license must be included in all copies of the software.

This commit by Satoshi removed his own copyright mark, which he is perfectly allowed to do since it's his. bitcoin/bitcoin@fc73ad6

However, this commit by Marius Kjærstad removes the stamp of each and every developer that was represented by that stamp. bitcoin/bitcoin@3b00e7c#diff-7116ef0705885343c9e1b2171a06be0e

It is conceivable that each and every developer that committed to the project prior 20 April 22, 2015 consented to removing their mark and replacing it with a more specific mark that could be interpreted to be a subset of the broader nomenclature or that those who did not consent had their code removed. I don't have access to the written agreements by these developers though, and I see no evidences that their contributions were removed, so I seriously doubt this was the case.

To avoid any claims by one of those developers, I recommend that we put their stamp back so that we are irrefutably in compliance with the license they contributed their code under.

Test Plan:
  make check

Reviewers: freetrader, CCulianu, #bitcoin_abc, Mengerian

Reviewed By: #bitcoin_abc, Mengerian

Subscribers: Mengerian

Differential Revision: https://reviews.bitcoinabc.org/D538
protonn pushed a commit to argentumproject/argentum that referenced this pull request Jan 11, 2018
Summary:
Verbatim from paulbarg on github: Bitcoin-ABC/bitcoin-abc#89

I am an Open Source licensing compliance specialist. I was alerted to the issue here: Bitcoin-ABC/bitcoin-abc#85

I looked into it and could find nothing in regards to their claims that would appear to be out of compliance with the MIT licensing.

However, I did find this. The terms of the MIT license say that the copyright notice that accompanies the license must be included in all copies of the software.

This commit by Satoshi removed his own copyright mark, which he is perfectly allowed to do since it's his. bitcoin@fc73ad6

However, this commit by Marius Kjærstad removes the stamp of each and every developer that was represented by that stamp. bitcoin@3b00e7c#diff-7116ef0705885343c9e1b2171a06be0e

It is conceivable that each and every developer that committed to the project prior 20 April 22, 2015 consented to removing their mark and replacing it with a more specific mark that could be interpreted to be a subset of the broader nomenclature or that those who did not consent had their code removed. I don't have access to the written agreements by these developers though, and I see no evidences that their contributions were removed, so I seriously doubt this was the case.

To avoid any claims by one of those developers, I recommend that we put their stamp back so that we are irrefutably in compliance with the license they contributed their code under.

Test Plan:
  make check

Reviewers: freetrader, CCulianu, #bitcoin_abc, Mengerian

Reviewed By: #bitcoin_abc, Mengerian

Subscribers: Mengerian

Differential Revision: https://reviews.bitcoinabc.org/D538
Mengerian pushed a commit to Mengerian/bitcoin-abc that referenced this pull request Oct 31, 2019
ftrader pushed a commit to bitcoin-cash-node/bitcoin-cash-node that referenced this pull request Apr 14, 2021
Brings `core_write.cpp` in line with latest Bitcoin-ABC#51 tech.

Some refactoring occurred:

* `ScriptToUniv`, `ScriptPubKeyToUniv`, and `TxToUniv` now return a new
`UniValue::Object`, instead of modifying an existing container. For
convenience, the `in_active_chain` key is moved from the beginning to
the end of the object resulting from the `getrawtransaction` RPC (this
should not break any API client, since no client should rely on the
order of key-value pairs in dictionaries).
* `ScriptToUniv`, `ScriptPubKeyToUniv`, and `TxToUniv` are extended with
a `const Config&` argument. This is inserted at the front of the
argument list, so optional arguments at the end remain possible.
* Prepares fixing Bitcoin-ABC#89. In the future, `bitcoin-tx` can easily switch to
its own configuration object when removing `GetConfig()`.
* The JSON/RPC benchmarks now make use of `GetConfig()`, like other
existing benchmarks. The entire benchmark suite can be upgraded similar
to `bitcoin-tx` at a later time.
* An optional arugment `fIncludeP2SH` was added to `ScriptPubKeyToUniv`.
This is used by the `decodescript` RPC, so that it no longer needs to
reverse-engineer the result of `ScriptPubKeyToUniv`, which I declare
considered harmful.
* The `hex` field was removed from the RPC help text of `decodescript`,
because this is actually not part of the output (it's intentionally
omitted since it would be a copy of the input).
* `core_read.cpp` and `core_write.cpp` no longer include `univalue.h`,
because it is already included in `core_io.h` now (needed for
`UniValue::Object`).
* A SegWit reference was removed from a comment in `script/standard.h`.

Test plan: `ninja bench_bitcoin check check-functional;
src/bench/bench_bitcoin -evals=1`
ftrader pushed a commit to bitcoin-cash-node/bitcoin-cash-node that referenced this pull request Apr 14, 2021
Upgrade UniValue code in core_write.cpp (Bitcoin-ABC#51, Bitcoin-ABC#89)

Closes Bitcoin-ABC#89

See merge request bitcoin-cash-node/bitcoin-cash-node!885
ftrader pushed a commit to bitcoin-cash-node/bitcoin-cash-node that referenced this pull request Apr 14, 2021
Upgrade UniValue code in rest.cpp (Bitcoin-ABC#51)

Closes Bitcoin-ABC#89

See merge request bitcoin-cash-node/bitcoin-cash-node!902
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants