Using scala.sys.process results in file descriptor leaks in the form of pipes used internally by the library. For most usages, there's no workaround possible.
The issue is that the streams associated with each SimpleProcesss are not closed, and the user can't get at them. This issue has been fixed on SBT, but that fix results in another bug. I'm investigating the issue.