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

RFC: upstream this into rules_nodejs repo #141

Closed
alexeagle opened this issue Jan 29, 2021 · 9 comments
Closed

RFC: upstream this into rules_nodejs repo #141

alexeagle opened this issue Jan 29, 2021 · 9 comments

Comments

@alexeagle
Copy link

Heya @Dig-Doug

I appreciate so much how you stepped up here to maintain a proto/grpc solution for Bazel/JS users. I know we dropped the ball on supporting this in rules_nodejs and the @bazel/labs package has been incomplete and fragmented.

I'd like to fix this for real by upstreaming. Maybe this is actually history-preserving: slurping in all your commits to a packages/protoc folder (like we did for rules_typescript itself). Or maybe we just do a clean-room implementation and borrow bits from here as needed.

A couple things I'd like to see while we port:

I think the benefit is that a bunch of infra and release engineering will come for free - for example #5 would be easily solved since we have executable examples running on CI already.

WDYT? I guess my main questions are whether you're okay with this plan, and if so whether you'd like to be involved in doing it :)

@Dig-Doug
Copy link
Owner

Hi @alexeagle,

I'm 100% onboard with this and happy to help upstream it. Let me know what the next steps should be.

@alexeagle
Copy link
Author

I'm considering a couple other places rather than rules_nodejs - maybe we should contribute to rules_proto_grpc (I'm trying that out in rules-proto-grpc/rules_proto_grpc#103 ) or maybe even work with Bazel team to have the bazelbuild/rules_proto give some of the language generation features (though they don't want to have grpc there, since from their perspective that's just one of several transport layers atop proto Services)

So I think my next step is to understand what users can do with this ruleset that they can't do with rules_proto_grpc

@alexeagle
Copy link
Author

Just discussed with @pcj and @mattem - we think it probably does make more sense for the proto/grpc rules to live in the language repo, with sth like bazelbuild/rules_proto giving utilities like Providers.

@Dig-Doug
Copy link
Owner

Dig-Doug commented Feb 3, 2021

So the plan is still to upstream these into rules_nodejs?

@alexeagle
Copy link
Author

yeah I think that's correct, though perhaps we want to base on top of the proto_plugin model that @pcj wrote in rules-proto-grpc. Still thinking it through a bit.
How much time do you have for OSS stuff? Maybe we can find a way to get paid for this work...

@Dig-Doug
Copy link
Owner

Dig-Doug commented Feb 5, 2021

I see, so would you put the proto_plugin within rules_proto and then have each language repo use it as needed?

Work keeps me pretty busy during the week, but I can devote some time on the weekends. No need to get paid for this.

@alexeagle
Copy link
Author

hey @Dig-Doug sorry for the long silence. We've decided to reduce scope in rules_nodejs rather than increase it. So I'm planning to remove our labs package in the next major (5.x this winter). I'll point users here as one alternative. The Bazel ecosystem still really needs a proto+grpc champion because the options are so confusing.

Also if you'd rather work on this during the week, we are hiring!

@Dig-Doug
Copy link
Owner

Dig-Doug commented Nov 9, 2021

No problem, that's fine. Thanks for closing the loop.

@Dig-Doug Dig-Doug closed this as completed Nov 9, 2021
@alexeagle
Copy link
Author

Could we talk a bit about proto and Bazel in general? If you have a few minutes - alex@aspect.dev

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

2 participants