It's option 1.  Adding a streaming readdir() is a low-prio TODO.  If you want, you can open an issue for it.