The two latest commits (at the branch tip -- not unfortunately in the order github shows) change the API, for both readdir and the JSON initializers. Use your own judgment before merging them. Both are in some sense cleanups following the previous commits to fix warnings, but are orthogonal to them. The benefits are arguable. readdir doesn't normally fail; the JSON String isn't usually mutated, etc. So I understand that these "improvements" may not be stellar. YMMV, HTH.
Tested:
on Linux with swift test, 3.0.2 and 3.1
on macOS with xcodebuild -scheme "Working Tests" test
Beware:
Tested: