-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement bazel Java sandwich #2614
Comments
Is this going to be powerful enough? If I'm reading the proposal right this will work for custom rules that transpile to Java, but it won't work for (say) Scala and similar because they will need a custom compilation action. To implement that, it seems you'd have to be able to construct a java provider manually by feeding it the resulting jars from any compilation action. Is that part of this, or does that belong with another tracking issue? |
It's mentioned in phase 2 of the doc. The second example also explicitly
gives scala as an example.
…On Thu, Mar 2, 2017 at 9:50 PM tomlu ***@***.***> wrote:
Is this going to be powerful enough? If I'm reading the proposal right
this will work for custom rules that transpile to Java, but it won't work
for (say) Scala and similar because they will need a custom compilation
action.
To implement that, it seems you'd have to be able to construct a java
provider manually by feeding it the resulting jars from any compilation
action. Is that part of this, or does that belong with another tracking
issue?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#2614 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABUIFyuaAWNKmELl6l9LZ4R3GOF7rv8Rks5rhx2IgaJpZM4MP8z1>
.
|
from already compiled jars. Progress on #2614. -- PiperOrigin-RevId: 149750579 MOS_MIGRATED_REVID=149750579
from already compiled jars. Progress on #2614. -- PiperOrigin-RevId: 149750579 MOS_MIGRATED_REVID=149750579
Progress on the java sandwich #2614 in an effort to make the Java compilation exposed to Skylark as similar as possible to java_library's API. PiperOrigin-RevId: 155861145
This is a step forward to having the same semantics for java_library and custom Skylark rules that use java_common.compile, facilitating the migration from native Java rules to Skylark. Progress on #2614 PiperOrigin-RevId: 160513771
This is a step forward to having the same semantics for java_library and custom Skylark rules that use java_common.compile, facilitating the migration from native Java rules to Skylark. Progress on #2614 PiperOrigin-RevId: 160644961
Progress on #2614. PiperOrigin-RevId: 160649080
and expose transitive source jars to Skylark. Slightly refactor java classes to take in specific host javabase inputs and host java executable for creating the source jar, instead of always relying on fetching them from native java rules specific attributes. Creating the output source jar in java_common.compile makes the behavior more similar to java_library. Exposing the transitive_source_jars to Skylark helps with the Skylark migration from the old 'java' provider to JavaInfo. Progress on #2614. RELNOTES: transitive_source_jars is now exposed on JavaInfo. PiperOrigin-RevId: 176844750
from already compiled jars. Progress on bazelbuild#2614. -- PiperOrigin-RevId: 149750579 MOS_MIGRATED_REVID=149750579
and expose transitive source jars to Skylark. Initial change was rolled back (unknown commit). java_common.compile wouldn't fill the JavaRuleOutputJarsProvider when there was only one input source jar. Fixed that and added test (there was one before, but didn't check this particular provider). Slightly refactor java classes to take in specific host javabase inputs and host java executable for creating the source jar, instead of always relying on fetching them from native java rules specific attributes. Creating the output source jar in java_common.compile makes the behavior more similar to java_library. Exposing the transitive_source_jars to Skylark helps with the Skylark migration from the old 'java' provider to JavaInfo. Progress on #2614. RELNOTES: transitive_source_jars is now exposed on JavaInfo. PiperOrigin-RevId: 177311138
can this be closed? |
I think there is a latent question on making sure native dependencies are propagated in the non-java part of the sandwich (as exposed via https://docs.bazel.build/versions/master/be/java.html#java_binary.launcher). However, that might be better as a separate issue? |
I think we can close it.
There are still missing bits (strict deps for example) but they’re not
tracked here
…On Wed, 28 Mar 2018 at 1:56 Stephen Twigg ***@***.***> wrote:
I think there is a latent question on making sure native dependencies are
propagated in the non-java part of the sandwich (as exposed via
https://docs.bazel.build/versions/master/be/java.html#java_binary.launcher
).
However, that might be better as a separate issue?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#2614 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABUIF1i5ZrgEQh4AJQuHdQC6YVdPosSTks5tisOogaJpZM4MP8z1>
.
|
bazel Java sandwich allows Skylark rules to depend on Java rules and the other way around. It allows the users to do Java compilation inside a Skylark rule.
This is a document that explains in more details the purpose of the sandwich, but it is only informative and does NOT contain the latest API and implementation details. An updated documentation will be added soon.
The current status of the sandwich:
Some examples can be found in these tests (look for tests ending in java_sandwich).
The purpose of this issue is to track progress on Java sandwich. Reporting of bugs/feature requests should be done in new issues. Questions are welcomed.
The text was updated successfully, but these errors were encountered: