Closed selsta closed 6 years ago
If I'm not mistaken, the line: "# Copyright (c) 2017, edollar project (fork from Monero)"
In all files sourced from Monero should be changed to: "# Copyright (c) 2017-2018 The Edollar Project." "# Copyright (c) 2014-2017 The Monero Project."
I've seen several different repos taken down for not doing so.
This is the correct way to do it: https://gitlab.com/Sumoprojects/sumokoin/commit/70d76e70d581e4fdb75049bd1fd97c26302b9d5c
As Sumokoin forked Monero v0.10.1, most copyright notices reverted to 'Copyright (c) 2014-2016, The Monero Project'
Some codes merged from upstream in 2017 were marked as 'Copyright (c) 2014-2017'
Sumokoin retained copyright at only a few places where we improved or largely modified code logic like emission scheme, different calculation algo etc.
Gotcha. Shouldn't be too hard to compare the Monero fork at edollar-project/monero with the current files. I just happen to have some spare time.
Right... So this process is more time consuming than anything else. I'm working on a Pull Request for this, but it will take some time. I'm not extremely familiar with this project, but it seems like as good a way as any to familiarize myself with the differences between Edollar and Monero.
How about this quick and dirty script to begin with:
https://github.com/block202612/utils/blob/master/changelicense.py
Hmm... I've been trying to make a script to do this for me for a bit... Unfortunately this task seems to be more akin to manual labor. You have to actually go in to each file, compare it to the source Monero fork, determine if any changes were made, then determine if the changes warrant a separate edollar mark.
I'm still working on it, but I still have 500 or so files to comb through in the scr and tests folders.
Here is the list of files that still need to be looked though... list.txt
Ok, got it . I made the pull request anyway. In case I can close it. I can see two other possibilities:
Any feedback is welcome
The problem with that method is that it doesn't factor context into account. For example, if one line is changed in a file, that could either be a comment edit or a proprietary algorithm. A single line change in one large file could be way more relevant than multiple line changes in a small file, but the smaller one would have a much lower similarity score.
@VincentVespa you are right. At this point I'd like to give a try adding a scoring mechanism based not just on the whole source file content , but splitting by blocks of lines. In this way if I'm confident to pick up the source files that are actually the same, and I can still tweak the thresholds in a way that the ones with few changes are also showed as file of interest . Let's see.
@VincentVespa sounds to me you changed pretty much the same number of files of the script I wrote for this which has produced https://github.com/edollar-project/edollar/pull/7. Anyway a double check is not bad at all for a task like this one and I'd like to have the GUI based tool mostly because I'm completely not familiar with UI tools. Below, some stats of interest:
Please note: the following stats are based on filename only with the purpose to show an initial difference in terms of file to look at:
[i] - code base [monero] - total number of files: 1532
[i] - code base [edollar] - total number of files: 1470
------------------------------------------------------------
[i] - target code base [monero] contains 76 unique file names
[i] - source code base [edollar] contains 14 unique file names
------------------------------------------------------------
[i] - number of common file names: 1456
@block202612 Yessir. Same idea, just kind of a different route. :-) I filtered the two repositories in the following order before I determined the copyright determinations:
After that I made a function that would read the file from both code bases, then remove all lines that were identical. If the only remaining line was the Edollar copy, I knew that would have to be changed to the Monero copyright without the Edollar copyright. Batch edited those and removed them from my file list.
After that, I incorporated the same function into a GUI so I could see the differences an manually edit it. Unforunately, I would edit that GUI as I went for whatever I needed it to do, and I trashed the input code when I changed the functions to my output (text edit) code. The base GUI outline is still there, though, if that helps you get an idea of what I was working with.
@VincentVespa great work anyway
Merge pull request from @@VincentVespa
See https://github.com/github/dmca/blob/master/2018/2018-01-25-Monero.md for more details.