serby/versionator — pull request #19 by ehmicky (2014-10-28 11:09:38+00:00)
Title: Fix crashes when calculating hash of dir symlinks

`createMapFromPath(dir)` crashes when dir contains (or is) a symlink to a directory. The crash is the result of trying to calculate the hash of a directory.
The reason is: while file walking, directories are filtered but not symlinks to directories. This pull request add the extra check and associated unit tests. It also filters other non-regular files (FIFO, character devices, etc.).

Reproducing the problem:

mkdir dir
ln -s dir symlink

Then

var versionator = require("versionator");
versionator,createMapFromPath("dir", function(){}); //No problem
versionator,createMapFromPath("symlink", function(){}); //Problem
events.js:72
throw er; // Unhandled 'error' event
^
Error: EISDIR, read