rules_scala
rules_scala copied to clipboard
Scala rules for Bazel
We noticed an issue here #245 where the arguments bazel passes are different in worker vs non-worker mode. Our arg parsing required empty strings to be respected. Since we had...
This would look like using: https://github.com/scoverage/scalac-scoverage-plugin to get the scala test rules to emit code coverage reports, then aggregating them across the repo. It is related to https://github.com/bazelbuild/bazel/issues/1118 but I...
https://github.com/twitter/scrooge/blob/develop/scrooge-generator/src/main/scala/com/twitter/scrooge/frontend/Importer.scala#L56 makes it appear that we can import jars, but some quick tests didn't work. Still, would further simplify our code
https://github.com/bazelbuild/rules_scala/blob/master/src/scala/scripts/TwitterScroogeGenerator.scala#L163
Does the `scalafmt` integration include support for `scalafmt_native`? My understanding is no, since it relies on the persistent workers scheme. In our experience, `scalafmt_native` has significantly better memory usage when...
### Problem Some of the targets in `test/src/main/scala/scalarules/test/twitter_scrooge/` depend on `scrooge_scala_import` rule which takes `thrift_jars` and `scala_jars` as input and provides `[ThriftInfo, JavaInfo, ScroogeImport]`. For example`test/src/main/scala/scalarules/test/twitter_scrooge:scrooge2_b_imp` depends on the `thrift3_import`...
I want to customize the `scalafmt` phase. I don't understand how to actually customize configuration settings, such as the `scalafmt` config. The current definition [is this](https://github.com/bazelbuild/rules_scala/blob/72c27ef603fc8b771fa80e3398c3fe7701af1515/scala/scalafmt/phase_scalafmt_ext.bzl): ``` ext_scalafmt = {...
We want to improve the current state of the dependency analyzer compiler plugin for [strict deps](https://github.com/bazelbuild/rules_scala/issues/235), Currently the plugin looks at which jars were loaded by the compiler, in order...
proposed solution: add an E2E test that will be to used the command line flags and see that we don't have the dependency analyzer. But we'll need to wait for...