Groovy 加入 Apache 基金会发布 2.4.4 版本

jopen 9年前

Groovy 发布了 2.4.4 版本,这是 Groovy 加入 Apache 基金会,处于孵化阶段时发布的首个版本。

该版本改进内容包括:

Bug

  • [GROOVY-7018] - GroovyClassLoader addClasspath RegexPattern issue

  • [GROOVY-7022] - invoking scripts using full path broken in cygwin

  • [GROOVY-7097] - ScriptBase class can't be resolved if not in current directory even if CompilerConf classpath is set

  • [GROOVY-7127] - Dates.isJsonDate only recognizes Javascript Date's toJSON() Format

  • [GROOVY-7159] - STC claims non-existent Diamond in Anonymous Inner Class with Generics

  • [GROOVY-7338] - URL getText(requestProperties) Map doesn't accept a GString

  • [GROOVY-7365] - Compiler crash in the static type checker

  • [GROOVY-7366] - Static imports are missing in generated stubs

  • [GROOVY-7377] - Interpolated variable followed by asterisk in slashy-string causes compiler error

  • [GROOVY-7381] - Setters with non-void return type fail at runtime when statically compiled

  • [GROOVY-7386] - Packed Maven pom.xml reference commons-cli instead of groovy-all

  • [GROOVY-7391] - Indy ignores custom invoker in meta class

  • [GROOVY-7392] - JsonSlurper Fails on Valid JSON

  • [GROOVY-7416] - Problem With CompileStatic And Interface Methods In Abstract Subclass

  • [GROOVY-7424] - NPE in SecureASTCustomizer for interface method declarations

  • [GROOVY-7448] - AbstractConcurrentMap performing rehash() on every insert

  • [GROOVY-7453] - CompileStatic annotation should not support package target

  • [GROOVY-7456] - Builders don't work in Traits

  • [GROOVY-7461] - Groovy doesn't write BOM if UTF-16 alias is used

  • [GROOVY-7462] - groovy.json.internal.Dates instantiates objects without explicitly specifying the miliseconds parameter

  • [GROOVY-7474] - Difference between junit3 and junit 4 shouldFail {...} not described in docs

  • [GROOVY-7476] - JsonSlurper sometimes does not parse escaped double quotes on parsing with JsonParsingUsingCharacterSource

  • [GROOVY-7477] - CompileStatic-related "BUG! exception in phase 'instruction selection'"

  • [GROOVY-7485] - BUG! exception in phase 'semantic analysis'... when trying to call instance method as default for a constructor parameter

  • [GROOVY-7495] - Diamond inheritance of interfaces makes method return type incompatible

  • [GROOVY-7504] - [CVE-2015-3253] Potential remote code execution

Improvement

  • [GROOVY-7425] - Add 'getBytes(Map parameters)' method to the URL class

Sub-task

  • [GROOVY-4421] - Casts should have higher precedence than mathematical operators

  • [GROOVY-5185] - Cast operator precedence is incorrect

Task

Groovy 加入 Apache 基金会发布 2.4.4 版本

Groovy是一种基于JVM的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性。

Groovy 主要的特点包括:

  • 是一个基于Java虚拟机的敏捷动态语言

  • 构建在强大的Java语言之上 并添加了从Python,Ruby和Smalltalk等语言中学到的诸多特征

  • 为Java开发者提供了现代最流行的编程语言特性,而且学习成本很低(几乎为零)。

  • 支持DSL(Domain Specific Languages领域定义语言)和其它简洁的语法,让你的代码变得易于阅读和维护。

  • Goovy拥有处理原生类型,面向对象以及一个Ant DSL,使得创建Shell Scripts变的非常简单。

  • 在开发Web,GUI,数据库或控制台程序时 通过减少框架性代码 大大提高了开发者的效率。

  • 支持单元测试和模拟(对象),可以简化测试

  • 无缝集成 所有已经存在的 Java对象和类库

  • 直接编译成Java字节码,这样可以在任何使用Java的地方 使用Groovy。