Skip to content

Commit b9f5a23

Browse files
tetrominocopybara-github
authored andcommitted
Split out devtools/build/lib/packages:provider out of packages into its own target
This significantly reduces the transitive dependencies of the Starlark json module, and, transitively, of Bazel's Starlark interpreter. Also take the opportunity to remove unused build dependencies in affected targets. PiperOrigin-RevId: 792415905 Change-Id: Ic9b6a67d1dc7591c6daac6e5369ccea6e4d08c3f
1 parent 85e6cff commit b9f5a23

File tree

43 files changed

+150
-67
lines changed

Some content is hidden

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

43 files changed

+150
-67
lines changed

src/main/java/com/google/devtools/build/lib/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -431,6 +431,7 @@ java_library(
431431
"//src/main/java/com/google/devtools/build/lib/metrics/criticalpath",
432432
"//src/main/java/com/google/devtools/build/lib/packages",
433433
"//src/main/java/com/google/devtools/build/lib/packages:package_piece_identifier",
434+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
434435
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
435436
"//src/main/java/com/google/devtools/build/lib/pkgcache",
436437
"//src/main/java/com/google/devtools/build/lib/pkgcache:package_options",

src/main/java/com/google/devtools/build/lib/analysis/BUILD

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,9 @@ java_library(
270270
"//src/main/java/com/google/devtools/build/lib/packages:configured_attribute_mapper",
271271
"//src/main/java/com/google/devtools/build/lib/packages:declared_exec_group",
272272
"//src/main/java/com/google/devtools/build/lib/packages:package_specification",
273+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
273274
"//src/main/java/com/google/devtools/build/lib/packages:rule_visibility",
275+
"//src/main/java/com/google/devtools/build/lib/packages:starlark_exportable",
274276
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
275277
"//src/main/java/com/google/devtools/build/lib/profiler",
276278
"//src/main/java/com/google/devtools/build/lib/profiler:google-auto-profiler-utils",
@@ -336,7 +338,7 @@ java_library(
336338
deps = [
337339
"//src/main/java/com/google/devtools/build/lib/actions",
338340
"//src/main/java/com/google/devtools/build/lib/actions:artifacts",
339-
"//src/main/java/com/google/devtools/build/lib/packages",
341+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
340342
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi",
341343
"//src/main/java/net/starlark/java/eval",
342344
"//src/main/java/net/starlark/java/syntax",
@@ -689,12 +691,10 @@ java_library(
689691
":configured_target",
690692
"//src/main/java/com/google/devtools/build/lib/analysis/platform",
691693
"//src/main/java/com/google/devtools/build/lib/cmdline",
692-
"//src/main/java/com/google/devtools/build/lib/concurrent",
693694
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
694-
"//src/main/java/com/google/devtools/build/lib/packages",
695+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
695696
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
696697
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/platform",
697-
"//third_party:auto_value",
698698
"//third_party:guava",
699699
"//third_party:jsr305",
700700
],
@@ -847,6 +847,7 @@ java_library(
847847
deps = [
848848
":transitive_info_provider",
849849
"//src/main/java/com/google/devtools/build/lib/packages",
850+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
850851
"//third_party:jsr305",
851852
],
852853
)
@@ -959,9 +960,8 @@ java_library(
959960
name = "run_environment_info",
960961
srcs = ["RunEnvironmentInfo.java"],
961962
deps = [
962-
"//src/main/java/com/google/devtools/build/lib/concurrent",
963963
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
964-
"//src/main/java/com/google/devtools/build/lib/packages",
964+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
965965
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi",
966966
"//src/main/java/net/starlark/java/eval",
967967
"//third_party:guava",
@@ -1040,10 +1040,8 @@ java_library(
10401040
name = "template_variable_info",
10411041
srcs = ["TemplateVariableInfo.java"],
10421042
deps = [
1043-
"//src/main/java/com/google/devtools/build/lib/concurrent",
10441043
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
1045-
"//src/main/java/com/google/devtools/build/lib/packages",
1046-
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
1044+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
10471045
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant",
10481046
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi",
10491047
"//src/main/java/net/starlark/java/eval",
@@ -1134,7 +1132,7 @@ java_library(
11341132
":transitive_info_provider_effective_class_helper",
11351133
":transitive_info_provider_map",
11361134
":transitive_info_provider_map_impl",
1137-
"//src/main/java/com/google/devtools/build/lib/packages",
1135+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
11381136
"//third_party:guava",
11391137
"//third_party:jsr305",
11401138
],
@@ -1148,7 +1146,7 @@ java_library(
11481146
":transitive_info_provider_effective_class_helper",
11491147
":transitive_info_provider_map",
11501148
"//src/main/java/com/google/devtools/build/lib/collect:immutable_shared_key_map",
1151-
"//src/main/java/com/google/devtools/build/lib/packages",
1149+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
11521150
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:visible-for-serialization",
11531151
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
11541152
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant",
@@ -1756,7 +1754,7 @@ java_library(
17561754
"//src/main/java/com/google/devtools/build/lib/analysis/config/transitions:configuration_transition",
17571755
"//src/main/java/com/google/devtools/build/lib/cmdline",
17581756
"//src/main/java/com/google/devtools/build/lib/events",
1759-
"//src/main/java/com/google/devtools/build/lib/packages",
1757+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
17601758
"//src/main/java/com/google/devtools/common/options",
17611759
"//src/main/java/net/starlark/java/eval",
17621760
"//third_party:guava",
@@ -1923,7 +1921,7 @@ java_library(
19231921
deps = [
19241922
":test/analysis_failure",
19251923
"//src/main/java/com/google/devtools/build/lib/collect/nestedset",
1926-
"//src/main/java/com/google/devtools/build/lib/packages",
1924+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
19271925
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/test",
19281926
],
19291927
)
@@ -1944,7 +1942,7 @@ java_library(
19441942
name = "test/analysis_test_result_info",
19451943
srcs = ["test/AnalysisTestResultInfo.java"],
19461944
deps = [
1947-
"//src/main/java/com/google/devtools/build/lib/packages",
1945+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
19481946
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/test",
19491947
],
19501948
)
@@ -1999,9 +1997,9 @@ java_library(
19991997
name = "test/execution_info",
20001998
srcs = ["test/ExecutionInfo.java"],
20011999
deps = [
2002-
"//src/main/java/com/google/devtools/build/lib/concurrent",
20032000
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
20042001
"//src/main/java/com/google/devtools/build/lib/packages",
2002+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
20052003
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/test",
20062004
"//src/main/java/net/starlark/java/eval",
20072005
"//third_party:guava",
@@ -2014,7 +2012,7 @@ java_library(
20142012
deps = [
20152013
"//src/main/java/com/google/devtools/build/lib/actions:artifacts",
20162014
"//src/main/java/com/google/devtools/build/lib/collect/nestedset",
2017-
"//src/main/java/com/google/devtools/build/lib/packages",
2015+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
20182016
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/test",
20192017
"//src/main/java/net/starlark/java/eval",
20202018
"//third_party:guava",

src/main/java/com/google/devtools/build/lib/analysis/config/BUILD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -432,13 +432,13 @@ java_library(
432432
name = "starlark_defined_config_transition",
433433
srcs = ["StarlarkDefinedConfigTransition.java"],
434434
deps = [
435-
":core_options",
436435
":optioninfo",
437436
"//src/main/java/com/google/devtools/build/lib/analysis/config/transitions:configuration_transition",
438437
"//src/main/java/com/google/devtools/build/lib/analysis/config/transitions:patch_transition",
439438
"//src/main/java/com/google/devtools/build/lib/cmdline",
440439
"//src/main/java/com/google/devtools/build/lib/events",
441440
"//src/main/java/com/google/devtools/build/lib/packages",
441+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
442442
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/config:configuration_transition_api",
443443
"//src/main/java/com/google/devtools/build/lib/util",
444444
"//src/main/java/com/google/devtools/build/lib/util:hash_codes",

src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ java_library(
4242
"//src/main/java/com/google/devtools/build/lib/cmdline",
4343
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
4444
"//src/main/java/com/google/devtools/build/lib/packages",
45+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
4546
"//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions",
4647
"//src/main/java/com/google/devtools/build/lib/skyframe/config",
4748
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:visible-for-serialization",

src/main/java/com/google/devtools/build/lib/bazel/bzlmod/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,7 @@ java_library(
185185
"//src/main/java/com/google/devtools/build/lib/cmdline",
186186
"//src/main/java/com/google/devtools/build/lib/events",
187187
"//src/main/java/com/google/devtools/build/lib/packages",
188+
"//src/main/java/com/google/devtools/build/lib/packages:starlark_exportable",
188189
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
189190
"//src/main/java/com/google/devtools/build/lib/rules:repository/repo_recorded_input",
190191
"//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions",
@@ -277,6 +278,7 @@ java_library(
277278
"//src/main/java/com/google/devtools/build/lib/cmdline",
278279
"//src/main/java/com/google/devtools/build/lib/events",
279280
"//src/main/java/com/google/devtools/build/lib/packages",
281+
"//src/main/java/com/google/devtools/build/lib/packages:starlark_exportable",
280282
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
281283
"//src/main/java/com/google/devtools/build/lib/profiler",
282284
"//src/main/java/com/google/devtools/build/lib/rules:repository/repository_directory_value",

src/main/java/com/google/devtools/build/lib/bazel/repository/starlark/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ java_library(
3333
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
3434
"//src/main/java/com/google/devtools/build/lib/events",
3535
"//src/main/java/com/google/devtools/build/lib/packages",
36+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
37+
"//src/main/java/com/google/devtools/build/lib/packages:starlark_exportable",
3638
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
3739
"//src/main/java/com/google/devtools/build/lib/pkgcache",
3840
"//src/main/java/com/google/devtools/build/lib/profiler",

src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ java_library(
3939
"//src/main/java/com/google/devtools/build/lib/analysis/config:build_configuration",
4040
"//src/main/java/com/google/devtools/build/lib/cmdline",
4141
"//src/main/java/com/google/devtools/build/lib/packages",
42+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
4243
"//src/main/java/com/google/devtools/build/lib/rules/cpp",
4344
"//src/main/java/com/google/devtools/build/lib/skyframe:bzl_load_value",
4445
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",

src/main/java/com/google/devtools/build/lib/packages/BUILD

Lines changed: 67 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,30 @@ java_library(
4848
exclude = [
4949
"AutoloadSymbols.java",
5050
"BuilderFactoryForTesting.java", # see builder_factory_for_testing
51+
"BuiltinProvider.java",
5152
"BzlVisibility.java",
5253
"ConfiguredAttributeMapper.java",
5354
"DeclaredExecGroup.java",
5455
"Globber.java",
5556
"GlobberUtils.java",
57+
"Info.java",
5658
"LabelPrinter.java",
59+
"NativeInfo.java",
5760
"PackageGroupsRuleVisibility.java",
5861
"PackagePieceIdentifier.java",
5962
"PackageSpecification.java",
63+
"Provider.java",
6064
"RuleClassUtils.java",
6165
"RuleVisibility.java",
66+
"StarlarkExportable.java",
67+
"StarlarkInfo.java",
68+
"StarlarkInfoNoSchema.java",
69+
"StarlarkInfoWithMessage.java",
70+
"StarlarkInfoWithSchema.java",
71+
"StarlarkProvider.java",
72+
"StarlarkProviderIdentifier.java",
73+
"StructImpl.java",
74+
"StructProvider.java",
6275
],
6376
),
6477
deps = [
@@ -69,7 +82,9 @@ java_library(
6982
":label_printer",
7083
":package_piece_identifier",
7184
":package_specification",
85+
":provider",
7286
":rule_visibility",
87+
":starlark_exportable",
7388
"//src/main/java/com/google/devtools/build/docgen/annot",
7489
"//src/main/java/com/google/devtools/build/lib/actions:execution_requirements",
7590
"//src/main/java/com/google/devtools/build/lib/actions:thread_state_receiver",
@@ -97,17 +112,14 @@ java_library(
97112
"//src/main/java/com/google/devtools/build/lib/profiler",
98113
"//src/main/java/com/google/devtools/build/lib/skyframe:bzl_load_value",
99114
"//src/main/java/com/google/devtools/build/lib/skyframe:detailed_exceptions",
100-
"//src/main/java/com/google/devtools/build/lib/skyframe:starlark_builtins_value",
101115
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization",
102116
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:abstract-exported-starlark-symbol-codec",
103117
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:visible-for-serialization",
104118
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
105119
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant",
106120
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi",
107121
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/config",
108-
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/core",
109122
"//src/main/java/com/google/devtools/build/lib/util",
110-
"//src/main/java/com/google/devtools/build/lib/util:TestType",
111123
"//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code",
112124
"//src/main/java/com/google/devtools/build/lib/util:filetype",
113125
"//src/main/java/com/google/devtools/build/lib/util:hash_codes",
@@ -138,17 +150,13 @@ java_library(
138150
"//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:common",
139151
"//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution",
140152
"//src/main/java/com/google/devtools/build/lib/cmdline",
141-
"//src/main/java/com/google/devtools/build/lib/events",
142153
"//src/main/java/com/google/devtools/build/lib/packages",
154+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
143155
"//src/main/java/com/google/devtools/build/lib/packages/semantics",
144-
"//src/main/java/com/google/devtools/build/lib/rules:repository/repository_directory_value",
145156
"//src/main/java/com/google/devtools/build/lib/skyframe:bzl_load_value",
146157
"//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value",
147-
"//src/main/java/com/google/devtools/build/lib/skyframe:repository_mapping_value",
148158
"//src/main/java/com/google/devtools/build/skyframe:skyframe-objects",
149159
"//src/main/java/net/starlark/java/eval",
150-
"//third_party:auto_value",
151-
"//third_party:error_prone_annotations",
152160
"//third_party:guava",
153161
"//third_party:jsr305",
154162
],
@@ -228,6 +236,46 @@ java_library(
228236
],
229237
)
230238

239+
java_library(
240+
name = "provider",
241+
srcs = [
242+
"BuiltinProvider.java",
243+
"Info.java",
244+
"NativeInfo.java",
245+
"Provider.java",
246+
"StarlarkInfo.java",
247+
"StarlarkInfoNoSchema.java",
248+
"StarlarkInfoWithMessage.java",
249+
"StarlarkInfoWithSchema.java",
250+
"StarlarkProvider.java",
251+
"StarlarkProviderIdentifier.java",
252+
"StructImpl.java",
253+
"StructProvider.java",
254+
],
255+
deps = [
256+
":starlark_exportable",
257+
"//src/main/java/com/google/devtools/build/lib/bugreport",
258+
"//src/main/java/com/google/devtools/build/lib/cmdline",
259+
"//src/main/java/com/google/devtools/build/lib/collect/nestedset",
260+
"//src/main/java/com/google/devtools/build/lib/concurrent",
261+
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
262+
"//src/main/java/com/google/devtools/build/lib/events",
263+
"//src/main/java/com/google/devtools/build/lib/skyframe:bzl_load_value",
264+
"//src/main/java/com/google/devtools/build/lib/skyframe:starlark_builtins_value",
265+
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:visible-for-serialization",
266+
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
267+
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/core",
268+
"//src/main/java/com/google/devtools/build/lib/util",
269+
"//src/main/java/com/google/devtools/build/lib/util:TestType",
270+
"//src/main/java/com/google/devtools/build/lib/util:hash_codes",
271+
"//src/main/java/net/starlark/java/eval",
272+
"//src/main/java/net/starlark/java/syntax",
273+
"//third_party:error_prone_annotations",
274+
"//third_party:guava",
275+
"//third_party:jsr305",
276+
],
277+
)
278+
231279
java_library(
232280
name = "rule_class_id",
233281
srcs = ["RuleClassId.java"],
@@ -266,3 +314,14 @@ java_library(
266314
"//third_party:jsr305",
267315
],
268316
)
317+
318+
java_library(
319+
name = "starlark_exportable",
320+
srcs = ["StarlarkExportable.java"],
321+
deps = [
322+
"//src/main/java/com/google/devtools/build/lib/cmdline",
323+
"//src/main/java/com/google/devtools/build/lib/events",
324+
"//src/main/java/net/starlark/java/eval",
325+
"//src/main/java/net/starlark/java/syntax",
326+
],
327+
)

src/main/java/com/google/devtools/build/lib/rules/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ java_library(
6868
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
6969
"//src/main/java/com/google/devtools/build/lib/packages",
7070
"//src/main/java/com/google/devtools/build/lib/packages:package_specification",
71+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
7172
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization:visible-for-serialization",
7273
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
7374
"//src/main/java/com/google/devtools/build/lib/util:filetype",

src/main/java/com/google/devtools/build/lib/rules/apple/BUILD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ java_library(
2525
"//src/main/java/com/google/devtools/build/lib/analysis/starlark/annotations",
2626
"//src/main/java/com/google/devtools/build/lib/cmdline",
2727
"//src/main/java/com/google/devtools/build/lib/concurrent:thread_safety",
28-
"//src/main/java/com/google/devtools/build/lib/packages",
28+
"//src/main/java/com/google/devtools/build/lib/packages:provider",
2929
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple",
3030
"//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/core",
3131
"//src/main/java/com/google/devtools/build/lib/util",

0 commit comments

Comments
 (0)