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

Composition of clients and servers #32

Open
rnett opened this issue Oct 24, 2021 · 1 comment
Open

Composition of clients and servers #32

rnett opened this issue Oct 24, 2021 · 1 comment

Comments

@rnett
Copy link
Owner

rnett commented Oct 24, 2021

Consider a situation where you have two separate servers, but some logic and endpoints are shared. This should be supported by creating the shared components on a Krosstalk object, then including said object in the other ones.

Open questions:

  • What is included? Just endpoints? Scopes (almost definitely, but it's more complicated than that)? Serialization? Probably don't want to actually create the included krosstalk objects.
  • Include, but under a prefix? This is pretty common for components.

A common enough use case would be for the shared krosstalk to define an Auth scope, that then is implemented by any includers. How to do this? Implies shared scope is an interface, implemented by includers' scopes. But that doesn't work very well if the shared scope is non-abstract. Maybe differentiate between abstract and non-abstract, only allow including abstract? Also could clarify question 1.

This also needs to work across module boundaries

@rnett
Copy link
Owner Author

rnett commented Oct 24, 2021

I am also going to need to ensure that all included krosstalks come from the same version of Krosstalk.

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

1 participant