getDirectoryContents package:tar
Recursively list all the files and directories in a directory and all
subdirectories.
The directory structure is traversed depth-first.
The result is generated lazily so is not well defined if the source
directory structure changes before the list is fully consumed.
Symlinks within directory structure may cause result to be infinitely
long.