Subject: | open directory handles cause failures |
Path::Extended::Dir keeps an open directory handle in $self->{handle}
after such operations as $self->children().
This is almost never the desired behavior.
If a P::E::Dir is passed to any external utilities for deletion/removal,
rather than relying on the native rmtree() call which calls close() first,
the removal will fail on certain platforms such as Win32 since the cached
open handle will cause a permission denied error.
I recommend the directory class never keeping the open handle around; all
operations should implicitly close()when complete.