Skip to content
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

add license mit #13

Merged
merged 7 commits into from
Nov 7, 2019
Merged

add license mit #13

merged 7 commits into from
Nov 7, 2019

Conversation

oxarbitrage
Copy link
Member

@oxarbitrage oxarbitrage commented Feb 18, 2018

- [ ] Need to add licensing info for include/fc/stacktrace.hpp.

@ryanRfox
Copy link

I'm not sure the proper entity to assign the copyright to either. I agree "bitshares-fc" does not seem the proper entity. bitshares-core introduces a stub for CONTRIBUTORS (yet remains blank). Looking at the fork hierarchy, none of the FC repositories contain a LICENSE file. My intent will always be to honor all prior copyright holders and aim to offer all code committed to the BitShares organization under MIT license (bitsharaes-core, bitshares-ui, bitshares-fc, etc.). I am keen to hear from @xeroc what the BBF may recommend based on their ongoing legal work toward rewriting the whitepaper(s).

@pmconrad
Copy link

Regarding history - the library is public domain, according to this post from BM: https://bitsharestalk.org/index.php?topic=8571.msg142379#msg142379

Stuff we write has no restrictions except those imposed on it by 3rd party dependencies.

Regarding 3rd party dependencies - please do not merge this PR before libreadline has been replaced.

@xeroc
Copy link
Member

xeroc commented Feb 20, 2018

Given the nature of the MIT license, does it actually matter who is written next to "copyright"?

@abitmore
Copy link
Member

Given the nature of the MIT license, does it actually matter who is written next to "copyright"?

Sure. The MIT license says:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

@abitmore
Copy link
Member

FYI Steem just moved fc into the main repo: steemit/steem#2145 (comment). EOS has already done so long before. Perhaps we can do the same.

@abitmore
Copy link
Member

Regarding history - the library is public domain, according to this post from BM: https://bitsharestalk.org/index.php?topic=8571.msg142379#msg142379

Stuff we write has no restrictions except those imposed on it by 3rd party dependencies.

IANAL, strictly speaking, I don't think BM's post was appropriate, nor implicitly included fc.

  1. the post was posted on 2014-10-31, at that time, according to the Bitshares Social Consensus associated with AGS, AGS "holders" and PTS holders would receive at least 10% share-drop if the code is used to launch a new chain. That said, there may be no restriction about how to distribute the code or binary built from it, but there was at least a restriction about how to use it. Licensing the software under public domain was not of the AGS holders' interest, although strictly speaking BM has the right to do so since "AGS is donation with no strings attached".

  2. in regards to fc, in the post BM used a word "we" may be referring to the team, and a word "write" which was present tense, both are ambiguous. Latest commit of BM's fc library is on Aug 19, 2013, which is clearly a product of his own but not the team. When he was saying "we write", it's not clear whether his own product (fc) was implicitly included, since it (fc) may be one of the "3rd party dependencies".

Of course, we can argue that since fc used readline so fc should be licensed under AGPL. However, that means the product using fc (e.g. bitshares-core) should also be licensed under AGPL, which is perhaps not what we want.

Personally I still prefer that BM clearly license the bm/fc repository under MIT, it's just a few clicks if he really wants to do so.

@pmconrad
Copy link

IMO the social consensus is irrelevant here, since it never was a legally binding agreement.

The AGPL code was removed some time after that thread. The only remaining "problem" is the readline dependency. Yes, the transitive nature of GPL means that fc and in turn bitshares-core (as well as all the other graphene chains) have to be licensed under the GPL as well. I think we do not want to do that, that's why we should replace readline.

The rest of the fc code either has its own license (BSD or MIT mostly), or was created by BM/Invictus/Cryptonomex. The latter part is what we must be concerned about.

Steem just moved fc into the main repo. EOS has already done so long before.

This opens another argument: If the code has been moved into the main repo, it is now also covered by the license of that repo. Not sure about Steem, but BM's current involvement in EOS means he probably has the authority to make that move. EOS is MIT-licensed as well, right? We can then either try to move to the current EOS version of fc and use the EOS license, or we take that move as an indication that a wide interpretation of BM's statement from 2014 is in order and that our fc version is indeed public domain.

@abitmore
Copy link
Member

According to https://github.com/EOSIO/eos/blob/master/LICENSE.txt, EOS will be licensed under MIT after June 1, 2018, aka the scheduled launch date, but not before. By the way, the change was made on Jun 21, 2017, before that date, it's MIT.

@abitmore
Copy link
Member

Steem is now MIT licensed. However, there was a drama when changing to MIT, which I guess is related to FC. It's clearly written in https://github.com/steemit/steem/blob/master/LICENSE.md:

The following license applies to code contained within this repository that is created by Steemit, Inc. Other copy right holders have licensed dependencies such as Graphene, FC, and Boost under their own individual licenses.

The MIT License
...

So even if the main repo is MIT licensed, FC is not included.

@pmconrad
Copy link

Hm, so steem did their due diligence...

There's a significant delta between the pre-2017-06 version of EOS-fc and ours. In particular, the threading stuff has been ripped out. Using this is not an option.

We should merge #14 once @jmjatlanta has pushed his latest changes, then contact BM and

  1. offer Replace Readline, bitshares-core issue 673 #14 so he can get rid of the GPL problem he has with eos-fc, and
  2. ask him to confirm that we can re-license bitshares-fc as MIT.

@xeroc
Copy link
Member

xeroc commented Feb 25, 2018

I did asked BM to confirm/allow tagging bitshares-fc with MIT. His answer was 'sure' ..

@pmconrad
Copy link

Excellent!

@abitmore
Copy link
Member

#14 (comment) quoted here:

Note: The new editline library has a liberal license, but still requires documentation changes. See the license at https://github.com/troglobit/editline/blob/master/LICENSE

@abitmore
Copy link
Member

abitmore commented Mar 1, 2018

Thank you @pmconrad. Now we only need to finalize the main license file.

@abitmore
Copy link
Member

abitmore commented Mar 7, 2018

Specifically, in the main license file, I think we need to mention the files in the licenses directory.

@abitmore
Copy link
Member

abitmore commented Mar 8, 2018

About the Bloom Filter Library included in this repository:

/*
 *********************************************************************
 *                                                                   *
 *                           Open Bloom Filter                       *
 *                                                                   *
 * Author: Arash Partow - 2000                                       *
 * URL: http://www.partow.net                                        *
 * URL: http://www.partow.net/programming/hashfunctions/index.html   *
 *                                                                   *
 * Copyright notice:                                                 *
 * Free use of the Open Bloom Filter Library is permitted under the  *
 * guidelines and in accordance with the most current version of the *
 * Common Public License.                                            *
 * http://www.opensource.org/licenses/cpl1.0.php                     *
 *                                                                   *
 *********************************************************************
*/

@abitmore abitmore mentioned this pull request Mar 22, 2018
oxarbitrage pushed a commit to oxarbitrage/bitshares-fc that referenced this pull request Mar 23, 2018
@clockworkgr
Copy link
Member

Original FC library MIT licensed -> https://github.com/bytemaster/fc/blob/phoenix/LICENSE.md

@abitmore
Copy link
Member

abitmore commented Apr 26, 2018

Need to add licensing info for include/fc/stacktrace.hpp . OP updated.

@pmconrad
Copy link

pmconrad commented Nov 2, 2019

Did some more research.

  • The license in BM's repo is more or less useless to us:
    • Copyright says 2010, but earliest commit is 2012
    • Only a small number of files in BM's repo is identical to ours
  • The license in Steem is also useless, it explicitly does not cover fc.
  • The license in EOS repo covers more of our files, BUT I'm very sure that the original authors (including myself) were not asked to re-license their code.

Our history crosses several organizations: BitShares -> Steem -> Cryptonomex -> Bytemaster, and somewhere in between there was also Invictus Innovations who created BitShares-1.

IMO it is close to impossible to straighten this out. Our best bet might be to

  • Add a license file that covers our own code plus all future contributions
  • Get rid of as much fc code as possible (see Clean up FC bitshares-core#1584)
  • Replace code that we can't remove with our own improvements under the given license

@pmconrad pmconrad force-pushed the oxarbitrage-patch-2 branch from 90c1d2e to 2fc0740 Compare November 2, 2019 19:26
@pmconrad
Copy link

pmconrad commented Nov 2, 2019

  • Rebased
  • merged LICENSE and README.LICENSE into LICENSE.md
  • fixed the stacktrace license header because it bears no resemblance to either the original nor the steem version, since it was essentially redesigned around boost::stacktrace by @jmjatlanta

@abitmore
Copy link
Member

abitmore commented Nov 3, 2019

Thank you @pmconrad for the efforts. I'd suggest that we move the changes about bloom filter and cmake files to new pull requests, only leave license related changes in this pull request.

@pmconrad pmconrad force-pushed the oxarbitrage-patch-2 branch from 2fc0740 to ca43b6c Compare November 6, 2019 17:40
@pmconrad
Copy link

pmconrad commented Nov 6, 2019

Done and rebased.

@abitmore
Copy link
Member

abitmore commented Nov 6, 2019

Looks good to me. Thanks!

@abitmore abitmore added this to the core release 4.1.0 milestone Nov 6, 2019
@pmconrad
Copy link

pmconrad commented Nov 7, 2019

Other opinions? @jmjatlanta @xeroc @oxarbitrage ?

@oxarbitrage
Copy link
Member Author

Looks good to me but i don't have permissions to approve.

@oxarbitrage
Copy link
Member Author

Looks good to me but i don't have permissions to approve.

The original PR was opened by me on Feb 2018. @pmconrad used the same PR and modified recently. That is why i cant approve, not a permission issue.

Sorry for the misunderstanding.

@pmconrad pmconrad merged commit ad3c881 into master Nov 7, 2019
@pmconrad pmconrad deleted the oxarbitrage-patch-2 branch November 7, 2019 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants