30 Nov 2017 |
MTRNord | whuuut no way protobuf now does also json on their structs :O https://github.com/Nordgedanken/MatrixProtoFiles/blob/master/federation/server.pb.go#L94-L101 makes writing a proxy a million times easier | 20:37:11 |
MTRNord | (oh and these go files propably get moved in the future. I just have them to use that as a lib for dendrite currently as I am going to write a mockup dendrite fork with gRPC | 20:38:19 |
Github [@MTRNord:matrix.ffslfl.net] (deprecated) | [Nordgedanken/MatrixProtoFiles] MTRNord pushed to master: add missing gRPC code - https://github.com/Nordgedanken/MatrixProtoFiles/commit/1da9a86522ce6d1390c3f136c6951f434acc1356 | 20:40:55 |
MTRNord | working on the mockup dendrite here: https://github.com/MTRNord/dendrite/tree/grpc_federation I will use it for testing currently and after it write a clean version :) | 20:55:13 |
Ross Schulman | Cool! | 21:36:34 |
1 Dec 2017 |
MTRNord | I would even compile and run it but I cant compile on my server for some weird reason that my go is too new | 08:37:20 |
MTRNord | oh nvm now it works | 08:38:46 |
MTRNord | server running at https://riot.nordgedanken.de:8448/_matrix/federation/grpc | 08:40:28 |
MTRNord | (well the grpc one) | 08:40:35 |
MTRNord | But no endpoints yet | 09:12:42 |
MTRNord | Or well not endpoints but registered rpc Services | 09:12:59 |
4 Dec 2017 |
Github [@MTRNord:matrix.ffslfl.net] (deprecated) | [Nordgedanken/MatrixProtoFiles] web-flow pushed to master: Update server.proto - https://github.com/Nordgedanken/MatrixProtoFiles/commit/ac2314e45e956a582e03bdb73ba566ed2fcf3eb5 | 08:37:43 |
Ross Schulman | I should be able to figure this out, but what does PDU stand for? | 13:57:24 |
MTRNord (pls DM via @mtrnord:midnightthoughts.space) | Ross Schulman: https://matrix.org/docs/spec/server_server/unstable.html#pdus no idea what pdu exactly means | 13:58:04 |
MTRNord (pls DM via @mtrnord:midnightthoughts.space) | but thats where it is from | 13:58:11 |
Ross Schulman | Ah, apparently Persisted Data Units. | 14:06:53 |
Ross Schulman | From further up in that doc. | 14:07:02 |
MTRNord | hm learned another thing now :D | 14:09:46 |
Ross Schulman | Just thinking about how to upgrade to use protobufs/rpcs, maybe the first time your dendrite fork speaks to a new server it should make a request to an api endpoint like /api/v0/upgrade? | 14:11:35 |
Ross Schulman | If the other server responds with "true" then switch to protobufs, if you get a 404 then fall back to https? | 14:12:10 |
MTRNord | Ross Schulman: I will take a look what krombel does with the websocket implementation at synapse and maybe match that. It might make sense to have one way to upgrade instead 2. But I did think of just adding it as a new version. to /_matrix/federation/v1/version | 14:14:48 |
Ross Schulman | Oh, yeah, if there's already a method being used, definitely do that. | 14:15:42 |
MTRNord | but websockets are on the client api thats why I say it might make sense to do it that way. Also I think websockets have a official web spec for upgrading | 14:16:31 |
MTRNord | I might read about this issue: https://github.com/grpc/grpc-go/issues/75 it is about serving http/https and grpc on the same endpoint simustanly. Meaning it can use http upgrade for switching | 14:18:44 |
MTRNord | basicly using this to upgrade from http to a http2 connection https://developer.mozilla.org/en-US/docs/Web/HTTP/Protocol_upgrade_mechanism | 14:20:27 |
MTRNord | (thats what websockets do in synapse too) | 14:20:34 |
| Etherpad widget added by MTRNord | 14:27:58 |
| Etherpad widget added by MTRNord | 14:27:58 |
| Etherpad widget added by MTRNord | 14:27:58 |
| MTRNord changed the room topic to "Matrix Protobuf/gRPC Proxy Repo: https://github.com/MTRNord/MatrixProtoBuf --- Proto Files only repo at: https://github.com/Nordgedanken/MatrixProtoFiles - Etherpad Widget URL: https://demo.riot.im/etherpad/p/!PisumNCACkTdCduGyB:matrix.org" from "Matrix Protobuf/gRPC Proxy Repo: https://github.com/MTRNord/MatrixProtoBuf --- Proto Files only repo at: https://github.com/Nordgedanken/MatrixProtoFiles". | 14:28:35 |