sbtのinThisBuildについて

0
Kenji Yoshida @xuwei_k

sbtさん、 inThisBuild 内で scalacOptions in (Compile, doc) ++= github.com/xuwei-k/giter8… みたいにしても無視(or 上書き?)される感あるのだけれど、バグか仕様かどちらなのか…?

2017-01-03 23:49:55
Kenji Yoshida @xuwei_k

多少書き直したドキュメント内でinThisBuild紹介されてるが、少なくともこの挙動により使いたくないというか、Seq[Setting] を全てのサブprojectに足す、昔ながら(?)の方法の代替にならない場合がありそうというか twitter.com/eed3si9n_ja/st…

2017-01-03 23:58:04
∃ugene 🥙yokot∀ @eed3si9n_ja

明けましておめでとうございます。年末年始にコミュニティーの皆さんと sbt Getting Started の書き替えを行ったので、その結果を和訳しました。ビルド定義とタスク・グラフのページとか新しい内容多めです。 - scala-sbt.org/0.13/docs/ja/G…

2017-01-03 19:07:32
Toshiyuki Takahashi @tototoshi

@xuwei_k それハマったことある気がする。バグじゃないとしたら仕様としてはそれぞれのスコープ軸(project/config/task)が直交しているわけじゃないってことかなと思ってました。前にscalajpのgitterで質問したけどうやむやになってしまった。

2017-01-04 00:28:35
∃ugene 🥙yokot∀ @eed3si9n_ja

@xuwei_k 仕様ですね。`> inspect compile:doc::scalacOptions` すると sbt 0.13.11 の compilerPluginConfig で定義されてると出てます。

2017-01-04 00:56:24
∃ugene 🥙yokot∀ @eed3si9n_ja

@xuwei_k inThisBuild(...) はキーが既にプロジェクト内で定義されてないことが必要なので、どのキーが Defaults.scala でプロジェクトスコープ付けされてないかを知る必要があります。ファイル絡みはたいていアウト。

2017-01-04 00:58:46
∃ugene 🥙yokot∀ @eed3si9n_ja

@tototoshi スコープ軸は直行してますが、inThisBuild はサブプロジェクト軸の弱い値なので、結構簡単にやられてしまう特性があります。

2017-01-04 01:00:09