Upstream changes from groovy_dev merged