netaddr icon indicating copy to clipboard operation
netaddr copied to clipboard

Audit Go CLA compliance

Open bradfitz opened this issue 3 years ago • 15 comments

We'd like to start exploring getting netaddr into the Go standard library.

As part of that, I started looking whose code might not be able to get upstream into Go.

Almost all the code is authored by Go contributors, but there are a few people who would need to submit the Google CLA if they want their code included: (perhaps some of these 6 are also Go contributors, but it's not easy for me to check)

  • [x] @majst01 for https://github.com/inetaf/netaddr/commit/7c56f6473744756bae3c625d8191091189d45732
  • [x] @terinjokes for https://github.com/inetaf/netaddr/commit/d984316da637f1105dc7234f10d9a0d668f03c3f
  • [x] @mmlb for https://github.com/inetaf/netaddr/commit/787f13e36cbe8ef4029d3b447363b7f4a54efa48

Less of a concern:

  • [x] @nwt for https://github.com/inetaf/netaddr/commit/e5237cdf40526448fb5cc05435bd0a924bef5839 but perhaps not needed to be included upstream, as error handling would likely change to conform to Go style anyway(?)
  • [x] @jawnsy for https://github.com/inetaf/netaddr/commit/21243a5487d43456ba9c22bef75fba6c5f26888b (worst case we could remove those test cases for upstream)
  • [x] @moreati for https://github.com/inetaf/netaddr/commit/d57edf19c51753b7d583a5f5054d7d1d2d3cb1ad (but worst case we remove those comments)

Not a concern:

  • @dshynkev for https://github.com/inetaf/netaddr/commit/99321d6ad24c4b7fd4ccce3bec64cb0e8d6323c8 but Tailscale legally owns that code, and Tailscale's done the corporate CLA.
  • @elmeyer for https://github.com/inetaf/netaddr/commit/0326f649e067dd38b3f5427e9b6402738e8ed9c8 (but not applicable for upstream)
  • @x-way for https://github.com/inetaf/netaddr/commit/2d42ec05f8a12fdf75b6ded1dca8febd2c5240b4 (not applicable for upstream)

bradfitz avatar May 24 '21 19:05 bradfitz

I should have a CLA on file. https://github.com/golang/go/blob/b83610699a4ea7da22a146c0eefe0ae4d5ac4610/AUTHORS#L1333

terinjokes avatar May 24 '21 19:05 terinjokes

I think @terinjokes is fine, due to working at CloudFlare and "CloudFlare Inc." is in https://golang.org/AUTHORS ...

You beat me replying. :)

bradfitz avatar May 24 '21 19:05 bradfitz

And @mmlb is in https://golang.org/AUTHORS too.

bradfitz avatar May 24 '21 19:05 bradfitz

So just @majst01 remains, but worst case the Go standard library doesn't necessarily need (*IPSet).RemoveFreePrefix, at least in the first round.

bradfitz avatar May 24 '21 19:05 bradfitz

I might have signed it for Kubernetes-related contributions when I was at Red Hat some years ago, but I have also just signed it as an individual. Please let me know what else I need to do, if anything!

jawnsy avatar May 24 '21 20:05 jawnsy

I just signed the individual CLA

moreati avatar May 24 '21 21:05 moreati

@jawnsy, @moreati, thanks!

bradfitz avatar May 24 '21 21:05 bradfitz

I've signed the individual CLA.

nwt avatar May 24 '21 21:05 nwt

Hi, i signed the google/cadvisor CLA back in 2018, https://github.com/google/cadvisor/pull/1780, don't know if this counts. But i am happy to sign the CLA for go as well, any pointers where this can be done ?

majst01 avatar May 25 '21 05:05 majst01

FYI: I've signed a CLA back in 2018 (for contributions to google/gopacket), happy to sign a new one if needed.

x-way avatar May 25 '21 11:05 x-way

@majst01, @x-way, thank you! We're all good.

bradfitz avatar May 25 '21 19:05 bradfitz

Is there a proposal open for upstreaming netaddr?

mdlayher avatar May 26 '21 18:05 mdlayher

Nope. Brad, Dave, and I had a live chat yesterday about some of the outstanding API questions and inconsistencies. Dave is doing a bit of legwork to decide whether our tentative decisions make sense.

(IIRC, those decisions were roughly: Only support zones for IP and IPPort. For all other types: If the method/func return errors, return an error when zones are present. If the method/func doesn't return errors, silently strip input zones. When comparing against IPs/IPPorts with zones, e.g. IPPrefix.Contains, if the IP/IPPort has a zone, fail closed. Add an error return to IPSetBuilder.IPSet, but not other methods.)

Once we're all (including you) happy with all the API edges, then we'll put together a proposal for upstreaming. Hopefully very, very soon.

josharian avatar May 26 '21 18:05 josharian

And for the record, @AlexanderYastrebov's commit 900fa71d6f3e1c9b74e62f549c79b34e8114821f (from https://github.com/inetaf/netaddr/pull/92) has a typo in the email address. [email protected] is missing an r. The typo exists in the original git commit.

The correct email address is listed at https://github.com/AlexanderYastrebov

bradfitz avatar Nov 01 '21 20:11 bradfitz

@bradfitz Yes, correct, sorry for the confusion.

AlexanderYastrebov avatar Nov 01 '21 22:11 AlexanderYastrebov