Skip to content

Commit 798745e

Browse files
bcorsoDagger Team
authored andcommitted
Restructure dagger-spi sources
RELNOTES=N/A PiperOrigin-RevId: 730949440
1 parent c6d60f2 commit 798745e

File tree

80 files changed

+143
-125
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+143
-125
lines changed

BUILD

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,6 @@ java_library(
4545
],
4646
)
4747

48-
java_library(
49-
name = "spi",
50-
exports = ["//java/dagger/spi"],
51-
)
52-
5348
java_library(
5449
name = "compiler_internals",
5550
exports = [
@@ -109,13 +104,13 @@ javadoc_library(
109104
testonly = 1,
110105
srcs = [
111106
"//dagger-runtime/main/java/dagger:javadoc-srcs",
107+
"//dagger-spi:srcs",
112108
"//java/dagger/android:android-srcs",
113109
"//java/dagger/android/support:support-srcs",
114110
"//java/dagger/grpc/server:javadoc-srcs",
115111
"//java/dagger/grpc/server/processor:javadoc-srcs",
116112
"//java/dagger/hilt:javadoc-srcs",
117113
"//java/dagger/producers:producers-srcs",
118-
"//java/dagger/spi:spi-srcs",
119114
],
120115
android_api_level = 34,
121116
# TODO(ronshapiro): figure out how to specify the version number for release builds
@@ -130,13 +125,13 @@ javadoc_library(
130125
root_packages = ["dagger"],
131126
deps = [
132127
"//dagger-runtime/main/java/dagger:core",
128+
"//dagger-spi",
133129
"//java/dagger/android",
134130
"//java/dagger/android/support",
135131
"//java/dagger/grpc/server",
136132
"//java/dagger/grpc/server/processor",
137133
"//java/dagger/hilt/android:artifact-lib",
138134
"//java/dagger/hilt/android/testing:artifact-lib",
139135
"//java/dagger/producers",
140-
"//java/dagger/spi",
141136
],
142137
)
Lines changed: 31 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -16,51 +16,50 @@
1616
# The Service Provider Interface for Dagger's binding graph model
1717

1818
load("@rules_java//java:defs.bzl", "java_library")
19-
load(
20-
"//:build_defs.bzl",
21-
"DOCLINT_HTML_AND_SYNTAX",
22-
"DOCLINT_REFERENCES",
23-
"POM_VERSION",
24-
)
19+
load("//:build_defs.bzl", "POM_VERSION")
2520
load("//tools/maven:maven.bzl", "gen_maven_artifact")
2621

2722
package(default_visibility = ["//:src"])
2823

24+
package_group(
25+
name = "internal",
26+
packages = [
27+
"//dagger-spi/...",
28+
],
29+
)
30+
31+
ARTIFACT_COORDINATES = "com.google.dagger:dagger-spi:" + POM_VERSION
32+
33+
ARTIFACT_LIBS = [
34+
"//dagger-spi/main/java/dagger/internal/codegen/extension",
35+
"//dagger-spi/main/java/dagger/model",
36+
"//dagger-spi/main/java/dagger/spi",
37+
"//dagger-spi/main/java/dagger/spi/model",
38+
]
39+
2940
filegroup(
30-
name = "spi-srcs",
31-
srcs = glob(["*.java"]) + [
32-
"//java/dagger/model:model-srcs",
33-
"//java/dagger/spi/model:model-srcs",
41+
name = "srcs",
42+
srcs = [
43+
"//dagger-spi/main/java/dagger/model:srcs",
44+
"//dagger-spi/main/java/dagger/spi:srcs",
45+
"//dagger-spi/main/java/dagger/spi/model:srcs",
3446
],
3547
)
3648

49+
# Other artifacts should only depend on this target to ensure that their POM file includes the
50+
# dagger-spi dependency which is found via the maven_coordinates tag.
3751
java_library(
38-
name = "spi",
39-
srcs = glob(["*.java"]),
40-
javacopts = DOCLINT_HTML_AND_SYNTAX + DOCLINT_REFERENCES,
41-
tags = ["maven_coordinates=com.google.dagger:dagger-spi:" + POM_VERSION],
42-
exports = [
43-
"//java/dagger/model",
44-
"//java/dagger/spi/model",
45-
],
46-
deps = [
47-
"//dagger-runtime/main/java/dagger:core",
48-
"//java/dagger/model",
49-
"//third_party/java/auto:value",
50-
"//third_party/java/error_prone:annotations",
51-
],
52+
name = "dagger-spi",
53+
tags = ["maven_coordinates=" + ARTIFACT_COORDINATES],
54+
exports = ARTIFACT_LIBS,
5255
)
5356

5457
gen_maven_artifact(
5558
name = "artifact",
56-
artifact_coordinates = "com.google.dagger:dagger-spi:" + POM_VERSION,
59+
artifact_coordinates = ARTIFACT_COORDINATES,
5760
artifact_name = "Dagger SPI",
58-
artifact_target = ":spi",
59-
artifact_target_libs = [
60-
"//java/dagger/internal/codegen/extension",
61-
"//java/dagger/model",
62-
"//java/dagger/spi/model",
63-
],
61+
artifact_target = ":dagger-spi",
62+
artifact_target_libs = ARTIFACT_LIBS,
6463
artifact_target_maven_deps = [
6564
"com.google.code.findbugs:jsr305",
6665
"com.google.dagger:dagger",
@@ -74,7 +73,7 @@ gen_maven_artifact(
7473
"dagger.model",
7574
"dagger.spi",
7675
],
77-
javadoc_srcs = [":spi-srcs"],
76+
javadoc_srcs = [":srcs"],
7877
# The shaded deps are added using jarjar, but they won't be shaded until later
7978
# due to: https://github.com/google/dagger/issues/2765. For the shaded rules see
8079
# util/deploy-dagger.sh

java/dagger/internal/codegen/extension/BUILD renamed to dagger-spi/main/java/dagger/internal/codegen/extension/BUILD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
load("@rules_java//java:defs.bzl", "java_library")
2020

21-
package(default_visibility = ["//:src"])
21+
package(default_visibility = ["//dagger-spi:internal"])
2222

2323
java_library(
2424
name = "extension",

java/dagger/internal/codegen/extension/DaggerCollectors.java renamed to dagger-spi/main/java/dagger/internal/codegen/extension/DaggerCollectors.java

File renamed without changes.

java/dagger/internal/codegen/extension/DaggerGraphs.java renamed to dagger-spi/main/java/dagger/internal/codegen/extension/DaggerGraphs.java

File renamed without changes.

java/dagger/internal/codegen/extension/DaggerStreams.java renamed to dagger-spi/main/java/dagger/internal/codegen/extension/DaggerStreams.java

File renamed without changes.

java/dagger/internal/codegen/extension/Optionals.java renamed to dagger-spi/main/java/dagger/internal/codegen/extension/Optionals.java

File renamed without changes.
Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,28 +22,22 @@ load(
2222
"DOCLINT_REFERENCES",
2323
)
2424

25-
package(default_visibility = [
26-
# The dagger/spi should be the only direct dependent on this target.
27-
# If you need to depend on :model, depend on dagger/spi instead so
28-
# that pom files correctly pick up the spi maven dependency.
29-
# TODO(bcorso): Consider if :model should have its own maven coordinates.
30-
"//java/dagger/spi:__pkg__",
31-
])
25+
package(default_visibility = ["//dagger-spi:internal"])
3226

3327
filegroup(
34-
name = "model-srcs",
28+
name = "srcs",
3529
srcs = glob(
3630
["*.java"],
3731
),
3832
)
3933

4034
java_library(
4135
name = "model",
42-
srcs = [":model-srcs"],
36+
srcs = [":srcs"],
4337
javacopts = DOCLINT_HTML_AND_SYNTAX + DOCLINT_REFERENCES,
4438
deps = [
4539
"//dagger-runtime/main/java/dagger:core",
46-
"//java/dagger/internal/codegen/extension",
40+
"//dagger-spi/main/java/dagger/internal/codegen/extension",
4741
"//third_party/java/auto:common",
4842
"//third_party/java/auto:value",
4943
"//third_party/java/error_prone:annotations",
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)