scalaxb 0.6.1

sbaz から conscript へ

scalaxb をインストールするのに、sbaz には今までお世話になりましたが、scala のバージョンに依存してたり、REPL のクラスパスを汚染したりなど問題も多いものだった。
0.6.1 より scalaxb は sbaz のサポートを打ち切り、全ユーザに conscript に移行して scalaxb をインストールすることを推奨する。

$ sudo sbaz remove scalaxb
$ cs eed3si9n/scalaxb

Array

  • xs:base64BinaryArray[Byte] ではなく、scalaxb.Base64Binary にマッピングするようにした。
  • scalaxb.HexBinaryscalaxb.Base64Binary の両方とも内部では Vector[Byte] を使う。
  • 他の組み込み型で以前に Array[String] にマッピングされていたものは Seq[String] マッピングするようにした。

mvn-scalaxb

@martiell氏により scalaxb plugin for Maven が提供された。

sbt-scalaxb for sbt 0.10

sbt 0.10 から scalaxb を呼び出すには、以下を project/plugins/build.sbt に加え:

libraryDependencies += "org.scalaxb" %% "sbt-scalaxb" % "0.6.1"

以下を build.sbt に加える:

sourceGenerators in Compile <+= scalaxb.identity

バグフィクスおよび細かな機能改善点

  • リストの派生型を修正した。 (#54 reported by @ikwzm)
  • 空のシーケンスの処理を修正した。(#55)
  • 名前と構造が一致するローカル要素の命名を修正した。(#56)
  • @implicitNotFound 属性を fromXML その他に加えた。
  • scalaxb.scala の生成を省くための --no-runtime オプションを加えた。(#45 requested by @martiell)
  • wdl オペレーション名のキャメルケース化を実装した。 (#52 requested by @timperrett)
  • wsdl より生成されるメッセージ case class に付けていた X プレフィックスを取り除いた。(#51 requested by @timperrett)
  • 200+ パラメータを処理するために --chunk-size オプションを加えた。(#58 reported by @ecin)