As raised via #46 the documentation does not make it clear that the caller is assumed to be responsible for closing any InputStreams that they open and pass to Nanite. The provided examples are problematic because they don't do this properly and rely on the JVM closing things when it shuts down.
Note that, if possible, users should always use the File-based version if they can. The InputStream version is intended for cases where there isn't a filesystem, and may well blow up on large files in some cases.
As raised via #46 the documentation does not make it clear that the caller is assumed to be responsible for closing any InputStreams that they open and pass to Nanite. The provided examples are problematic because they don't do this properly and rely on the JVM closing things when it shuts down.
Note that, if possible, users should always use the File-based version if they can. The InputStream version is intended for cases where there isn't a filesystem, and may well blow up on large files in some cases.