What I find slightly dishonest is bits like
This way of using select in a loop could potentially cause issues regarding cancellation of futures (although in this case it’s fine)
The select example is pretty straightforward and comparable to such in other languages, even to Go's switching on channels. But rust hides an extra bit of complexity with the cancellation concerns that people don’t want to talk about unless absolutely necessary, and it is necessary in so many cases!