The idea behind the package is that bad whitespace is highlighted, not automatically cleaned up. So if the file doesn't have a final newline when it is first loaded, no final newline will be added without explicit user action -- instead a red "eof" marker is placed where the final newline ought to be.
require-final-newline obviously interferes with this. ethan-wspace could therefore set it to nil when it is operating, unconditionally. However, I added functionality to complain if require-final-newline was set -- not because *users* set it, but because *modes* do, and I wanted to get notice when that happened. So if you really think ruby-mode should unconditionally set require-final-newline, it's easy to remove the warning, make it optional, override require-final-newline on a buffer-local basis, etc.