I have started a small research concerning asyncio frameworks, trying to find something that could help us write more robust code than e.g. using twisted, which we have used in some of our apps before. From my point of view, twisted code tends to be very hard to read because of all the callbacks flying around, and error handling is hard to get right, as you can easily miss some exceptions that bubble up to the reactor loop.
As I had heard of asyncio, which has found its way into the python standard library, I was curious how this compares; but reading some tutorials I was not so happy when I discovered that the error handling problem is still unsolved.
I am very impressed after reading some documentation, that trio has found an elegant way to overcome these fundamental shortcomings. Now I am wondering if it is an option for us, to use trio in production code. My company offers products with a very long lifespan (>10 years) and it is fundamental for us, that we can keep everything up-to-date during this time.
Can anyone comment upon long-term availability of trio and the stability of trio’s basic API? Might trio be already in use of some of the major organizations yet, which might guarantee some long-term perspective?