add more info for failure messages
Fix minor bug in no-empty rule