use temp module to create temp download dir, which solves the concurrency issue