Bazel: JavaInfo starlark constructor doesn't fill compilation_info member

Created on 5 Nov 2019  路  4Comments  路  Source: bazelbuild/bazel

Description of the problem / feature request:

JavaInfo instances created from starlark have a None value in compilation_info

Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

https://github.com/bazelbuild/rules_scala/pull/872

What's the output of bazel info release?

1.1.0

Any other information, logs, or outputs that you want to share?

Two important notes:

  1. This is blocking moving IntelliJ plugin to use JavaInfo provider instead of the scala attribute.
    https://github.com/bazelbuild/intellij/blob/master/aspect/intellij_info_impl.bzl#L505
    https://github.com/bazelbuild/intellij/blob/master/aspect/java_classpath.bzl#L22
  2. This also means https://github.com/bazelbuild/bazel/issues/9014 is blocked since we can't move to providers without IntelliJ support and I think they need the compilation_info member for that (but I might be wrong). cc @brendandouglas as an expert of whether or not IJ can use other data from the JavaInfo provider is compilation_info is None
P2 area-java-Starlark_API team-Rules-Java bug

Most helpful comment

+1 -- this is important for IntelliJ support (and for any non-native java rules). We'll workaround it in the short-term, but I think it's very important to fix this on the Bazel side.

All 4 comments

cc @iirina

I took a look and it's not actually blocking the move to attribute since IJ can just use target[JavaInfo].transitive_runtime_jars for now

+1 -- this is important for IntelliJ support (and for any non-native java rules). We'll workaround it in the short-term, but I think it's very important to fix this on the Bazel side.

@aiuto @iirina any ideas when this will be triaged?

Was this page helpful?
0 / 5 - 0 ratings