matrix-org / complement-crypto

Apache License 2.0
6 stars 4 forks source link

Add target for mautrix #56

Open kegsay opened 2 months ago

kegsay commented 2 months ago

We have an entire ecosystem relying on https://github.com/mautrix/go for cryptography for bridges. It does not use rust SDK FFI or JS SDK, instead rolling its own SDK layer.

As a result, we lack confidence it doesn't have bugs which can cause UTDs. We should add a new m target which will drive mautrix, similar to how we have j for js-sdk and r for rust SDK FFI.

xref https://github.com/element-hq/element-meta/issues/2387

tulir commented 2 months ago

Looks like most of the bugs are just NSE on iOS, but we'd be happy to help with adding mautrix-go as a test target anyway since Beeper is going to be leaning heavily on Go. All Beeper clients will switch to mautrix-go in the near-ish future and the remaining Python bridges are going to be rewritten in Go as well.

tulir commented 2 months ago

Also, mautrix-go has a pure Go implementation of Olm, having tests would be useful for finding bugs in that. Right now go-olm is definitely not production-ready, but eventually we want to make it good and get it audited to drop the libolm dependency (cgo isn't nice)

cvwright commented 2 weeks ago

Very cool! What would it look like to add something similar for https://github.com/futo-org/matrix.swift ?