-
Notifications
You must be signed in to change notification settings - Fork 58
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gazelle: Generate exports for non-private return types (#158)
Return values which are used by calling code require the return type to be on the classpath in order to compile uses of that value. Accordingly, we should export those dependencies, to make sure the depender has them on the classpath while compiling, to avoid strict deps issues. We don't do this for private functions, but all other visibilities may be called from other targets, so may need exporting.
- Loading branch information
1 parent
9586f4e
commit e082409
Showing
25 changed files
with
258 additions
and
43 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
build --java_runtime_version=remotejdk_11 | ||
build --java_language_version=11 | ||
build --tool_java_runtime_version=remotejdk_11 | ||
build --tool_java_language_version=11 |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
[90m12:00AM[0m [31mWRN[0m [1mjava/gazelle/private/maven/resolver.go:XXX[0m[36m >[0m not loading maven dependencies [36merror=[0m[31m"open %WORKSPACEPATH%/maven_install.json: no such file or directory"[0m [36m_c=[0mmaven-resolver |
8 changes: 8 additions & 0 deletions
8
java/gazelle/testdata/interface_exports/src/main/java/com/example/consumer/BUILD.out
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
load("@rules_java//java:defs.bzl", "java_library") | ||
|
||
java_library( | ||
name = "consumer", | ||
srcs = ["Consumer.java"], | ||
visibility = ["//:__subpackages__"], | ||
deps = ["//src/main/java/com/example/iface"], | ||
) |
10 changes: 10 additions & 0 deletions
10
java/gazelle/testdata/interface_exports/src/main/java/com/example/consumer/Consumer.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
package com.example.consumer; | ||
|
||
import com.example.iface.Interface; | ||
|
||
public class Consumer { | ||
public void useInterface(Interface i) { | ||
var t = i.get(); | ||
System.out.println(t.stringify() + "hello"); | ||
} | ||
} |
9 changes: 9 additions & 0 deletions
9
java/gazelle/testdata/interface_exports/src/main/java/com/example/iface/BUILD.out
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
load("@rules_java//java:defs.bzl", "java_library") | ||
|
||
java_library( | ||
name = "iface", | ||
srcs = ["Interface.java"], | ||
visibility = ["//:__subpackages__"], | ||
exports = ["//src/main/java/com/example/types"], | ||
deps = ["//src/main/java/com/example/types"], | ||
) |
7 changes: 7 additions & 0 deletions
7
java/gazelle/testdata/interface_exports/src/main/java/com/example/iface/Interface.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
package com.example.iface; | ||
|
||
import com.example.types.Type; | ||
|
||
public interface Interface { | ||
public Type get(); | ||
} |
7 changes: 7 additions & 0 deletions
7
java/gazelle/testdata/interface_exports/src/main/java/com/example/types/BUILD.out
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
load("@rules_java//java:defs.bzl", "java_library") | ||
|
||
java_library( | ||
name = "types", | ||
srcs = ["Type.java"], | ||
visibility = ["//:__subpackages__"], | ||
) |
7 changes: 7 additions & 0 deletions
7
java/gazelle/testdata/interface_exports/src/main/java/com/example/types/Type.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
package com.example.types; | ||
|
||
public class Type { | ||
public String stringify() { | ||
return "I am Type"; | ||
} | ||
} |
Oops, something went wrong.