Hi Kenton, Wow -- thanks for the prompt reply! :) This makes sense, thanks for clarifying.
I'd be more than happy to get involved in making the Level 3 spec *and* implementation a reality, and I have the bandwidth to dedicate to such a project. Any chance we might be able to work together on this? Again, I'm quite eager to push this forward as 3-way introductions are a killer feature for a project I'm working on. Let me know! Louis On Wednesday, September 23, 2020 at 12:10:15 PM UTC-4 [email protected] wrote: > 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/1eaff9b1-c74f-47de-9f8f-35eb4edc73c2n%40googlegroups.com.
