small-ish update to our progress so far: The refactor of go-muxrpc using the luigi interfaces @keks specified is looking great! We tagged v2 today as a first shot.
We got async, source, stream and duplex calls functional and also found some bugs using interop testing against node using muxrpc@6. I'm sure there are more corner cases we need to handle more careful but this already feels great! @keks is currently working on convienence tools to make server handler and client caller stubs from a manifest. Previously we only had a semi-solid interface to make client calls but the server handler api was a mess.
Once we had some good interop test coverage, I couldn't wait and made a dystfunctional but verbose test sbot that just logs incoming method calls with arguments. It was quite educational to see the call history from different clients. I tested git-ssb, patchfoo and patchbay so far. Check out gossipgopher-log.txt for method names and their arguments.
I'm quite eager now to implement the blobs interface (has, createWants, etc) and gossip.ping since they are small but very usefull. A bigger roadblack we need to tackle soon is the message verification code. Once we are passed that we can plug margaret in and start syncing feeds! By then we should also talk about plugins and indicies... cc @dominic @Aljoscha
- go-muxrpc: %8L9AKN2...
- gossipgopher on github (also on %D/fT3SG... but seems like blobs are missing.. :S)