Advantages of going to 3.6+:
- f strings
- the
__aiter__ mess goes away
- native async generators → slightly nicer tracebacks
- idempotent call_soon becomes guaranteed FIFO (not sure anyone cares but hey)
Disadvantages:
- 3.6 final won't be in any ubuntu release until 17.04
- there's no pypy 3.6 (but pypy 3.5 does have f-string support at least)
- some complications on RTD
My feeling is that it's not quite time to drop 3.5 support, but it wouldn't be too bad to start allowing f-strings in the medium term. And beyond that pypy becomes the gating factor.