ros-perception / openslam_gmapping

218 stars 206 forks source link

update License to BSD3 #20

Closed k-okada closed 5 years ago

k-okada commented 6 years ago

@vrabaud @mikaelarguedas I have noticed that the license of gmapping has been changed from Creative Commons to BSD-3 around August 2016. (and also have confirmed that with original copyright holder , prof Grisetti )

https://web.archive.org/web/20160814180046/http://www.openslam.org/gmapping.html https://web.archive.org/web/20160712185247/http://www.openslam.org/gmapping.html

  1. Can we change the license of this package?
  2. If so, how can we proceed?
git log --format='%an %ae' 79ef0b0^1...HEAD | sort | uniq
$ git log --format='%an %ae' 79ef0b0^1...HEAD | sort | uniq
grisetti grisetti@e621fd74-1227-0410-9a7b-a4db01ea4bbc
Isaac IY Saito 130s@lateeye.net
Michael Ferguson fergs@unboundedrobotics.com
Mike Ferguson mike@vanadiumlabs.com
Vincent Rabaud vincent.rabaud@gmail.com
Vincent Rabaud vrabaud@willowgarage.com
William Woodall william@osrfoundation.org
William Woodall wjwwood@gmail.com
mikeferguson commented 6 years ago

If they have actually re-released under a BSD license, that's great news! This has been one of those few packages that everyone uses, but the NC license was a major problem for commercial users.

In theory, you would probably need approval from all copyright holders (which may be different from contributors -- for instance, if someone did the work for a company/institution, that company/institution probably holds the copyright to their work). in practice, I doubt any of the contributors/organizations would fuss, since they all have a history of extreme open source.

Since we did not use GMapping at Unbounded (since the current license prohibits commercial use), I can say fairly confidently that my contributions were done on my own time. I consent to, and highly approve of, the change to BSD-3!

k-okada commented 6 years ago

@grisetti, @130s, @vrabaud, @wjwwood Could you approve the change to BSD?

130s commented 6 years ago

Great news! I'm fully supportive for this change.

Although this repo is originally a fork, there has been own commit history, thus own (though minor) changes. I'm just not sure what's the license practice for such a case like this.

esteve commented 5 years ago

@k-okada given that the original author (@grisetti) is the one who re-released gmapping as BSD and @130s and @mikeferguson already stated they agree with their changes being relicensed, we only need approval from @vrabaud and @wjwwood . Do you guys agree with relicensing your contributions as BSD? Thanks.

wjwwood commented 5 years ago

I'm fine with my contributions being relicensed as BSD.

esteve commented 5 years ago

@vrabaud are you ok with the switch to BSD? I can help with making a new release.

k-okada commented 5 years ago

Hi all, since we can not hear from @vrabaud , how can we proceed?

If I look the commit history carefully, I have noticed that his main contribution (88140c1) is catkinize and update the directory structure (move header files under include/ directory) , and the big difference between original gmapping and this repository is ac43472 (Mike Ferguson apply missing patches) and 6435fc7 (Michael Ferguson update for NANs, comply with REP117)

so one idea is to rewrite his contribution by others. And apply MikeFerguson patches, for example replace current HEAD by https://github.com/k-okada/openslam_gmapping/commits/remove_vrabaud and release them.

My contribution in remove_vrabaud branch consists of four patches, first one is catkinize, and I think this is complely different approtch than @vrabaud one, second and third patches are update cpp header location. I used sed script to change this. The last one is fix compile error,

a91e670 catkinize package CMakeLists.txt package.xml a40d6f1 update cpp header location in #include directive 66586ec move cpp header fiels to include directory, by e71e496 remove compile error

I have confirmed this is identical to current openslam_gmapping except 0b893e4 (GUI back in shape), 012ec4e (use srand instead of srand48), and a1f451b (better Windows compilation),

If you still care about copyrithgt issues, for example e71e4969a28db8fc025f311db801d4466ea65c84, we can use ' black-box reverse engineering ' approach, by asking someone who never seen this repository for catkinize, move header files, fix compile error.

c716f01 Vincent Rabaud 0.1.2 be2aa2d Vincent Rabaud update changelog a1f451b Vincent Rabaud better Windows compilation This is taken from #9 which can now be closed. 24ebb35 Vincent Rabaud disable GUI It should not have been enable in the first place bb1b839 Vincent Rabaud fix a few more graphics stuff for Qt5 0b893e4 Vincent Rabaud get GUI back in shape 012ec4e Vincent Rabaud use srand instead of srand48 srand48 is non-standard and we are using a seed that is an unsigned int so we might as well use srand 0bc100b Vincent Rabaud 0.1.1 6bf6865 Vincent Rabaud update changelogs 551f45d Vincent Rabaud fix cppcheck warnings This was mentioned in https://github.com/ros-perception/slam_gmapping/issues/10 4ccb303 Vincent Rabaud Merge pull request #8 from 130s/fix/license 07b0c7e Isaac IY Saito Correct license 89290fe William Woodall 0.1.0 c8cdb4c William Woodall updating description 29ac098 William Woodall Fix name in CHANGELOG.rst 920ebaa William Woodall Merge pull request #4 from ros-perception/issue_9 7ada28c William Woodall Merge pull request #3 from mikeferguson/master 0618e40 William Woodall Adding changelog b26f6c9 William Woodall Cleanup of cmake and package.xml 06bf02e William Woodall File cleanup 5939851 William Woodall Install headers 13f3b7d William Woodall Fix linking problems a404cf9 William Woodall Cleanup warnings from the code 6435fc7 Michael Ferguson update for NANs, comply with REP117 f44ca7e William Woodall Merge pull request #2 from mikeferguson/master ac43472 Mike Ferguson apply missing patches d3a8691 William Woodall Merge pull request #1 from mikeferguson/master a9b288d Mike Ferguson rename to openslam_gmapping 88140c1 Vincent Rabaud catkinize the package 36c5526 Vincent Rabaud add a .gitignore file f2eec22 Vincent Rabaud fix compile error on gcc 4.7 354a718 Vincent Rabaud add a readme file 79ef0b0 grisetti patches to compile on ubuntu 10.10

k-okada commented 5 years ago

released BSD version as 0.2.0 -> https://github.com/ros-perception/openslam_gmapping/pull/29