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

Authorization to refactor this library #68

Closed
Tochemey opened this issue Feb 20, 2024 · 10 comments
Closed

Authorization to refactor this library #68

Tochemey opened this issue Feb 20, 2024 · 10 comments

Comments

@Tochemey
Copy link

Hello @thrawn01,

Thanks for the great piece of work of cloning the original version and enhancing it. I would like to know whether I can copy this library, refactor it and publish using the same license, however under a different module name.

@Tochemey Tochemey changed the title Auhtorization to refactor this library Authorization to refactor this library Feb 20, 2024
@Tochemey
Copy link
Author

Tochemey commented Feb 20, 2024

@thrawn01, These are some of the refactoring I am planning to add:

  • Service Discovery Provider that can help integrate with tools like k8, NATs, mSDN and co
  • Upgrade the protocol buffer API
  • Hide the HTTPPool and make use of a Cluster engine where a discovery provider will be required.

I am glad to open a PR in that respect if these changes seem necessary. Otherwise I can move them into a particular repo given I have the right permission.

@Tochemey
Copy link
Author

@thrawn01 I have pushed the modifications I am talking about here https://github.com/Tochemey/groupcache.

@thrawn01
Copy link
Contributor

These changes look very nice! A few points though.

  • I'm no longer with mailgun so I no longer have ownership of this repo.
  • I had hoped to put discovery code in separate repo since it's needed in other libraries like mailgun/gubernator. See mailgun/holster/discovery
  • If it is agreeable, perhaps we can fork this repo to a different organization and continue development there.
  • I'm planning on moving mailgun/gubernator to gubernator-io/gubernator as I wish to continue working on that project also.

@Baliedge @Jvb182

@Tochemey
Copy link
Author

@thrawn01 Thanks for the reply. I really appreciate it.

@Tochemey Tochemey reopened this Feb 23, 2024
@Tochemey
Copy link
Author

@thrawn01 I am open to any option. I am here to contribute.

@udhos
Copy link
Contributor

udhos commented Feb 26, 2024

Hi guys

I am also interested in efforts to improve this lib.

@udhos
Copy link
Contributor

udhos commented Feb 27, 2024

I am interested in a healthy groupcache ecosystem since I am currently using these:

https://github.com/modernprogram/groupcache - fork from mailgun groupcache with support for user-controlled explicit state

https://github.com/udhos/kubegroup - groupcache peer autodiscovery for k8s

https://github.com/udhos/groupcache_exporter - export groupcache stats as prometheus metrics

https://github.com/udhos/groupcache_oauth2 - store oauth2 client_credentials tokens in groupcache

@Tochemey
Copy link
Author

Huh. This is interesting. I think it is time there is some cleanup in the ecosystem.
@udhos, @thrawn01 can we figure out a plan for this?

@thrawn01
Copy link
Contributor

I've created a fork of this repo here https://github.com/groupcache/groupcache-go. I added the -go suffix to the repo name as I would eventually like to write a rust version of this library.

I would love to remove all the globals from the library in V3 such that we can run multiple instances of groupcache easily in testing. Here is what I'm thinking.
https://gist.github.com/thrawn01/45131e4c225a13774de6c80618ddd5a8

I'm traveling for the next 2 weeks, and I don't always have access to internet/laptop so my responses might be delayed.

I've created a new issue on the new repo where we can continue this conversation.
groupcache/groupcache-go#1

cc: @udhos @Tochemey

@Tochemey
Copy link
Author

@thrawn01 and @udhos closing this convo since we have a discussion on the other repo.

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

No branches or pull requests

3 participants