update io promise