This patch allows multiple filenames to be passed to the Rhino CLI. When checking multiple files, you end up starting up and tearing down a JVM for every single file, which adds a significant amount of time to the overall linting process. By allowing the Rhino CLI to process multiple files, you can dramatically reduce the total amount of time for processing a large number of files.
When I made this change to the CSSLint JSHint task, it went from taking 45s to check the entire source tree to 3s.
I tried to ensure backwards compatibility with the current CLI, and believe everything still works the same way. The only difference is that any value passed on the command line without an = sign is considered to be a filename.
Added missing Rhino options
Allow multiple filenames to be passed in to Rhino CLI