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

Support for GRPC #414

Closed
tusharmath opened this issue Oct 4, 2023 · 25 comments
Closed

Support for GRPC #414

tusharmath opened this issue Oct 4, 2023 · 25 comments

Comments

@tusharmath
Copy link
Contributor

tusharmath commented Oct 4, 2023

Tailcall currently supports HTTP as it's only data-source. Being a generic GraphQL proxy, it should be able to load data over GRPC also.

The user experience should match that of @http as much as possible.

schema @grpc(host: "grpc.service.com", port: 8080) {
  query: Query
  mutation: Mutation
}

type Query {
  user(id: ID!): User @grpc(
    service: "UserService", 
    method: "GetUser", 
    request: {user_id: "{{args.id}}"}
  )
}

Technical Requirements

  • All mustache templates should work like in Http.
  • Batching via data-loader should be supported.

Additional Notes

@algora-pbc
Copy link

algora-pbc bot commented Oct 4, 2023

💎 $350 bounty created by tailcallhq
🙋 If you'd like to work on this issue, comment below to get assigned
👉 To claim this bounty, submit a pull request that includes the text /claim #414 somewhere in its body
📝 Before proceeding, please make sure you can receive payouts in your country
💵 Payment arrives in your account 2-5 days after the bounty is rewarded
💯 You keep 100% of the bounty award
🙏 Thank you for contributing to tailcallhq/tailcall!
🙋‍♂️ Join our discord channel if you need help.

@ologbonowiwi
Copy link
Contributor

I found hyperium/tonic; likely, we can use it.

@deepakdinesh1123
Copy link

@tusharmath Is this issue still available for work?

@tusharmath
Copy link
Contributor Author

@deepakdinesh1123 Yes, all tickets are available until closed ;)

@deepakdinesh1123
Copy link

@tusharmath I have added a specification for GRPC support in #530 please take a look at it

@thaodt
Copy link

thaodt commented Oct 25, 2023

/attempt #414

Options

@algora-pbc
Copy link

algora-pbc bot commented Oct 26, 2023

The bounty is up for grabs! Everyone is welcome to /attempt #414 🙌

@thaodt
Copy link

thaodt commented Nov 13, 2023

because I'm engaging with another issue, so no time for working on this one.
Anyone feel free to pick it, I will be here to help on guidance and code review if you want.

@ssddOnTop
Copy link
Member

ssddOnTop commented Nov 14, 2023

@tusharmath I think I am done with #441 (review pending) Can you assign this one to me

/attempt #414

Copy link

algora-pbc bot commented Nov 14, 2023

@ssddOnTop: The Tailcall Inc. team prefers to assign a single contributor to the issue rather than let anyone attempt it right away. We recommend waiting for a confirmation from a member before getting started.

@A-N-uraag
Copy link
Contributor

@tusharmath throwing my 🎩 in since there was no activity since 4 days. Can I get assigned?

@tusharmath
Copy link
Contributor Author

@ssddOnTop Are you working on this?

@ssddOnTop
Copy link
Member

@ssddOnTop Are you working on this?

Yes

@ssddOnTop
Copy link
Member

Still stuck on a few things, I'll make a PR in a few days

@ssddOnTop
Copy link
Member

@tusharmath sorry I won't be able to do grpc integration

@AayushMohan
Copy link

Hey @tusharmath, can you please assign this to me?

@tusharmath
Copy link
Contributor Author

This issue has been attempted multiple times before and never reached completion. I would recommend only folk who have a good understanding of the project and grpc in general to attempt it. @A-N-uraag @AayushMohan let me know if you feel confident about implementing this feature.
Alternatively working as a team with split bounty could also work.

@Rutik7066
Copy link
Contributor

Hi @tusharmath i can. And would like to work on this issue.

@amitksingh1490
Copy link
Collaborator

@Rutik7066 Please Go ahead assigning this to you

@Rutik7066
Copy link
Contributor

Thank you @amitksingh1490

@algora-pbc algora-pbc bot removed the 💎 Bounty label Dec 12, 2023
@tusharmath
Copy link
Contributor Author

We are removing bounty from this PR. It's going to be taken up internally for now. Thank you everyone for trying 🙏

@Rutik7066
Copy link
Contributor

No problem @tusharmath. I have researched and started learning package call tonic for grpc. And was looking to complete the work by this weekend.

@Rutik7066
Copy link
Contributor

Here is the doc https://docs.rs/tonic/latest/tonic/ it may help you.

@tusharmath
Copy link
Contributor Author

Feel free to connect with @amitksingh1490 who has made a lot of progress in his PR.

@tusharmath
Copy link
Contributor Author

fixed in #730

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

9 participants