Hi Louis, This is somewhat embarrassing, but there is no level 3 implementation of Cap'n Proto today, in any language. It's likely that when I get around to implementing it in C++, the protocol spec will change to solve unanticipated problems. As such, trying to implement the spec as-written in Go today might be frustrating, as it may be hard to tell the difference between the spec having a bug vs. the spec doing something weird intentionally, and there's no reference implementation to test against. :/
As for level 2, yes, we eventually realized that level 2 doesn't really belong in the core spec at all, so you can pretty much ignore the level 2 interfaces. Maybe I should actually delete them... -Kenton On Wed, Sep 23, 2020 at 11:02 AM lthibault <[email protected]> wrote: > Hello everyone, > > I'm currently using the Go implementation > <https://github.com/capnproto/go-capnproto2> of Cap'n Proto, which > features Level 1 support for the RPC protocol, and I'm discovering that my > use case would benefit greatly from Level 3 support. Since Ross is no > longer actively maintaining the project, I'm investigating the possibility > of implementing Level 3 support myself, and possibly volunteering to > maintain the project. > > I've read through the Cap'n Proto spec (i.e. the .capnp files in the > github repository, especially the network interface sketch > <https://github.com/capnproto/capnproto/blob/cf34b937f08af618b4dc057a0f5dd47acbf4e615/c%2B%2B/src/capnp/rpc.capnp#L1375-L1476>), > perused conversations in this Google Group, and even tried to scavenge from > the E language website/wiki, but I'm still struggling to get a "big > picture" idea of how the 3-way introduction protocol works. > > As such, I'm you kind folks might be able to point me in the right > direction, starting with two very general questions: > > 1. How does the 3-way introduction protocol work? Is it specified > anywhere (e.g. in an RFC?) > 2. What does the roadmap look like from Leve 1 to Level 3? > 3. My understanding from reading the source is that Level 2 can > largely be ignored. Does Level 3 depend on level 2 in any way? The > numbering suggests so... > > Many thanks in advance, > Louis > > -- > You received this message because you are subscribed to the Google Groups > "Cap'n Proto" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/capnproto/e9ad3f6d-a78c-4991-a3de-9a0fc071b906n%40googlegroups.com > <https://groups.google.com/d/msgid/capnproto/e9ad3f6d-a78c-4991-a3de-9a0fc071b906n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Cap'n Proto" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/capnproto/CAJouXQnAGjqqv7BTGt8Pi9qCxr%2Bu4n1wiEma-xo3bDbgSzqhjQ%40mail.gmail.com.
