Hi folks,

On 03/03/2021 08:07, Glyph wrote:
Finally: let's not develop an aversion to new tooling and change because it might create problems; experience over the last few years has shown me that Mypy can catch tons of real bugs and it's well worth getting the codebase to type check.  If we want to prevent breakages like this in the future, the answer is not to stop trying to get linters and typecheckers to run cleanly with arbitrary changes, but to figure out some kind of continuous integration solution that's actually continuous with our downstream dependencies

If dependencies could start testing against Twisted trunk in some capacity, we could get notified close to when unintentionally breaking changes occur, and dependencies can let us know well before the release happens, and we can either revert or they can fix things if the error is on their end.  If initially, say, crossbar and matrix would like to work with us to set up some kind of repeatable pattern we can suggest to others, that would be great.

Just to let you know, that I have (not before time) set up a Github Actions run which runs a subset of Synapse's CI against Twisted trunk. If it fails, it opens an issue against our repo, where it'll be triaged via our normal process. Hopefully this will bring benefits to everyone by giving early warning of any potential regressions!

If you're interested, the GHA config is at https://github.com/matrix-org/synapse/blob/develop/.github/workflows/twisted_trunk.yml.

Cheers

Richard