I was trying to use surf on tokio 1.0 executor. It seems the tokio library family needs to be upgraded to 1.0, including hyper 0.14 for this library.