Description
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 exampletest/src/main/scala/scalarules/test/twitter_scrooge:scrooge2_b_imp
depends on the thrift3_import
target in test/src/main/scala/scalarules/test/twitter_scrooge/thrift/thrift2/thrift3/BUILD
.
thrift3_import
target as input has thrift3_scrooge.jar
and libthrift3.jar
. There is no documentation or comment in the code how these jars were created and how to keep them up-to-date.
As a result, changes related to scrooge may break tests and it takes a lot of time to figure out how to fix them.
Example here.
Solution
scrooge_scala_import
rule consumes jars as outputs of source targets, or at least have a readme describing how to "fix" the tests for a next Scrooge update.