Use semantic versioning (X.Y.Z) so version numbers are meaningful, not arbitrary. Patch updates should fix bugs or improve logic/performance without changing visible behavior. Minor and major updates ...
For most Groovy scripts I use, I simply run the script from its Groovy source code as-is and allow the compilation to take place implicitly. However, it can be helpful at times to use groovyc to ...