You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
gcloud happybase port violates happybase license #1762
however, i don't see my name, the required notice, or even a small "thanks" or whatever, anywhere, neither in the gcloud docs, nor in the distributed software package itself.
the happybase port that is distributed with hbase contains considerable amounts of code written by me (for instance the whole api, and the implementation of connection pooling and other features is the same). and even though various docstrings have been partially adapted, proper attribution is in order here as well.
We fully intended gcloud.bigtable.happybase to be a drop-in replacement for happybase, hence the interface matching ("for instance the whole api"). It is a quite good abstraction for a somewhat contrived HBase / Thrift / Google Cloud Bigtable API. I assure the majority of the code (beyond the interface) is novel to this library, though as you mentioned connection pooling (and some string helpers) are quite similar.
@jgeewax Can we put license info directly in modules or should it go in the project or maybe something else?
btw, regardless of the number of lines of code that are shared, the simple fact that this library tries to be a drop-in replacement (on top of a different technology stack), and even (re)uses the original name, obviously makes this part of gcloud libs a derivative work of happybase, and hence the original work deserves mentioning, as prescribed by its license.
btw, i'm totally fine with this library existing. i encourage derivative works. i open-source my work so that others can benefit from it. and it's good to see that exactly that is what's happening.
happybase's license is very permissive exactly for this reason, so please adhere to it. :)
@wbolster : First -- huge apology if we didn't go about this the right way. IANAL but we certainly didn't intend to violate the MIT license. Second, thanks so much for being understanding here. I was out on vacation otherwise I would've replied much more quickly... Sorry about that.
Again, IANAL, but it sounds like we should...
Make sure there's proper attribution in the docs for the gcloud.bigtable.happybase module (along with a pointer to the Happybase library)
Add the Happybase license to the repo
@tseaver / @dhermes : Is it acceptable to do as @wbolster did where we say that gcloud-python is Apache 2.0 licensed, and implements the Happybase API surface which is MIT licensed in our LICENSE file?
The easiest way to get everything solved is to simply include a snippet like this in a "license" page of the docs, alongside other licenses, including gcloud-python's own license, and be done with it:
That way everything is covered. You don't need to get into specifics about whether APIs are copied, (parts of the) code is reused, docs are (partially) rewritten, and you don't have to worry about that either from a legal perspective since the original license allows you to do whatever you want with it, as long as you put the above notice somewhere.
A PR would be great, but before we merge let's let our open-source people review and make sure we're doing the right thing for everyone. I've reached out to them.
<sarcasm>
i am very happy to see that google has taken appropriate steps to resolve this issue in such a timely manner. that "fix asap" label really helped. </sarcasm>
to be clear: google is violating my software's license, and it can be fixed by JUST COPYING AND PASTING SOME TEXT INTO YOUR DOCS as i mentioned before in #1762 (comment)
@jonparrott I see you have accepted the invite, but I don't seem to have the ability to give you anything other than "Collaborator" access (no "Teams" on personal repos).
@wbolster : Again, apologies for the lag on getting this done, and thank you for the patience. Can you let us know if this fixes things?
Thanks all (@tseaver, @jonparrott , @daspecster , and everyone else) who helped to resolve this. Let's try to speed up next time so it doesn't take so long...
yeah, as i said numerous times before, just include the license and point out that your package is an emulation of my happybase package. i think both are covered now in the new repo's README.
Activity
dhermes commentedon Apr 28, 2016
@wbolster This is totally my fault. Sorry for the mess up. It's something I had planned to do but the implementation process / porting over from https://github.com/dhermes/gcloud-python-bigtable took quite some time.
We fully intended
gcloud.bigtable.happybaseto be a drop-in replacement forhappybase, hence the interface matching ("for instance the whole api"). It is a quite good abstraction for a somewhat contrived HBase / Thrift / Google Cloud Bigtable API. I assure the majority of the code (beyond the interface) is novel to this library, though as you mentioned connection pooling (and some string helpers) are quite similar.@jgeewax Can we put license info directly in modules or should it go in the project or maybe something else?
wbolster commentedon Apr 28, 2016
ok, thank your for acknowledging my objections.
please keep me posted about the resolution.
btw, regardless of the number of lines of code that are shared, the simple fact that this library tries to be a drop-in replacement (on top of a different technology stack), and even (re)uses the original name, obviously makes this part of
gcloudlibs a derivative work of happybase, and hence the original work deserves mentioning, as prescribed by its license.wbolster commentedon Apr 28, 2016
btw, i'm totally fine with this library existing. i encourage derivative works. i open-source my work so that others can benefit from it. and it's good to see that exactly that is what's happening.
happybase's license is very permissive exactly for this reason, so please adhere to it. :)
dhermes commentedon Apr 29, 2016
Thanks for the clarification.
@jgeewax PTAL
jgeewax commentedon May 3, 2016
@wbolster : First -- huge apology if we didn't go about this the right way. IANAL but we certainly didn't intend to violate the MIT license. Second, thanks so much for being understanding here. I was out on vacation otherwise I would've replied much more quickly... Sorry about that.
Again, IANAL, but it sounds like we should...
gcloud.bigtable.happybasemodule (along with a pointer to the Happybase library)@tseaver / @dhermes : Is it acceptable to do as @wbolster did where we say that gcloud-python is Apache 2.0 licensed, and implements the Happybase API surface which is MIT licensed in our LICENSE file?
wbolster commentedon May 3, 2016
Thanks for getting back to me.
The easiest way to get everything solved is to simply include a snippet like this in a "license" page of the docs, alongside other licenses, including
gcloud-python's own license, and be done with it:That way everything is covered. You don't need to get into specifics about whether APIs are copied, (parts of the) code is reused, docs are (partially) rewritten, and you don't have to worry about that either from a legal perspective since the original license allows you to do whatever you want with it, as long as you put the above notice somewhere.
jgeewax commentedon May 3, 2016
That sounds great. Thanks again @wbolster for being so accommodating -- I really really appreciate it.
@dhermes : Does this look good to you guys? Can you toss up a PR and CC everyone?
theacodes commentedon May 3, 2016
A PR would be great, but before we merge let's let our open-source people review and make sure we're doing the right thing for everyone. I've reached out to them.
wbolster commentedon Aug 12, 2016
<sarcasm>i am very happy to see that google has taken appropriate steps to resolve this issue in such a timely manner. that "fix asap" label really helped.
</sarcasm>to be clear: google is violating my software's license, and it can be fixed by JUST COPYING AND PASTING SOME TEXT INTO YOUR DOCS as i mentioned before in #1762 (comment)
very professional. great work. kudos.
wbolster commentedon Aug 12, 2016
ping @jgeewax @dhermes @jonparrott
31 remaining items
omaray commentedon Aug 17, 2016
... for future reference I don't have permissions on the org to create repos... but we know who does.
tseaver commentedon Aug 17, 2016
@jonparrott I've sent invites to the two of you, and will make you admins as soon as they are completed.
tseaver commentedon Aug 17, 2016
@jonparrott I see you have accepted the invite, but I don't seem to have the ability to give you anything other than "Collaborator" access (no "Teams" on personal repos).
theacodes commentedon Aug 17, 2016
@tseaver yeah hang tight.
tseaver commentedon Aug 17, 2016
If I have push access to the new "canonical" repo, I can just push there and delete my repo.
theacodes commentedon Aug 17, 2016
Canonical repo is setup at https://github.com/GoogleCloudPlatform/google-cloud-python-happybase
All admins here should have admin there.
I synced the canonical one with yours, so feel free to go ahead and delete yours.
Thanks everyone!
tseaver commentedon Aug 17, 2016
PR #2109 removes the Happybase-related code from this repository.
I also created an issue in the new repo for the one open Happybase-releated issue here (#1546).
theacodes commentedon Aug 17, 2016
@wbolster thank you for your patience. Is everything acceptable to you? Please let us know if there's anything else you feel we should do.
jgeewax commentedon Aug 22, 2016
@wbolster : Again, apologies for the lag on getting this done, and thank you for the patience. Can you let us know if this fixes things?
Thanks all (@tseaver, @jonparrott , @daspecster , and everyone else) who helped to resolve this. Let's try to speed up next time so it doesn't take so long...
wbolster commentedon Sep 7, 2016
yeah, as i said numerous times before, just include the license and point out that your package is an emulation of my happybase package. i think both are covered now in the new repo's README.
fix: add detailed message in job error (#1762)
deps: avoid `gcsfs==2025.5.0` (#1762)