Skip to content

Commit 1ff3617

Browse files
davidomsohn
authored andcommitted
Bazel: align JGit with shared external_deps repository
Rename the JGit maven.install() repository from "jgit_deps" to "external_deps" so that it can contribute to the same Maven repository name used by Gerrit. Add known_contributing_modules = ["jgit"] to explicitly model JGit as a contributor to this repository under bzlmod. This makes cross-module contribution intentional rather than implicit. This change is part of evaluating an alternative to the current split library/standalone module setup. Instead of fully separating dependency universes, both JGit and Gerrit would define maven.install() for the same repository name, with the root module (Gerrit) enforcing deterministic resolution via: * conflict_resolution_strategy = "pinned" * force_version = True The goal is to determine whether this approach allows JGit to remain standalone-buildable while ensuring that, when consumed by Gerrit, a single effective dependency graph is used at both compile and runtime. No dependency versions are changed. Change-Id: Ic29775883d8e16af8f2bc76bea5f50b3cc549b79
1 parent 4a23a82 commit 1ff3617

File tree

3 files changed

+51
-50
lines changed

3 files changed

+51
-50
lines changed

MODULE.bazel

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ SSHD_VERSION = "2.17.1"
3737

3838
maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
3939
maven.install(
40-
name = "jgit_deps",
40+
name = "external_deps",
4141
artifacts = [
4242
"args4j:args4j:2.37",
4343
"com.google.code.gson:gson:2.13.2",
@@ -87,9 +87,10 @@ maven.install(
8787
duplicate_version_warning = "warn",
8888
fail_on_missing_checksum = True,
8989
fetch_sources = True,
90+
known_contributing_modules = ["jgit"],
9091
repositories = [
9192
"https://repo1.maven.org/maven2",
9293
],
9394
strict_visibility = True,
9495
)
95-
use_repo(maven, "jgit_deps")
96+
use_repo(maven, "external_deps")

lib/BUILD

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ java_library(
66
"//org.eclipse.jgit.pgm:__pkg__",
77
"//org.eclipse.jgit.pgm.test:__pkg__",
88
],
9-
exports = ["@jgit_deps//:args4j_args4j"],
9+
exports = ["@external_deps//:args4j_args4j"],
1010
)
1111

1212
java_library(
@@ -16,7 +16,7 @@ java_library(
1616
"//org.eclipse.jgit.pgm.test:__pkg__",
1717
"//org.eclipse.jgit.test:__pkg__",
1818
],
19-
exports = ["@jgit_deps//:org_apache_commons_commons_compress"],
19+
exports = ["@external_deps//:org_apache_commons_commons_compress"],
2020
)
2121

2222
java_library(
@@ -26,7 +26,7 @@ java_library(
2626
"//org.eclipse.jgit.pgm.test:__pkg__",
2727
"//org.eclipse.jgit.test:__pkg__",
2828
],
29-
exports = ["@jgit_deps//:org_apache_commons_commons_lang3"],
29+
exports = ["@external_deps//:org_apache_commons_commons_lang3"],
3030
)
3131

3232
java_library(
@@ -36,7 +36,7 @@ java_library(
3636
"//org.eclipse.jgit.pgm.test:__pkg__",
3737
"//org.eclipse.jgit.test:__pkg__",
3838
],
39-
exports = ["@jgit_deps//:commons_io_commons_io"],
39+
exports = ["@external_deps//:commons_io_commons_io"],
4040
)
4141

4242
java_library(
@@ -45,13 +45,13 @@ java_library(
4545
"//org.eclipse.jgit:__pkg__",
4646
"//org.eclipse.jgit.test:__pkg__",
4747
],
48-
exports = ["@jgit_deps//:commons_codec_commons_codec"],
48+
exports = ["@external_deps//:commons_codec_commons_codec"],
4949
)
5050

5151
java_library(
5252
name = "commons-logging",
5353
visibility = ["//visibility:public"],
54-
exports = ["@jgit_deps//:commons_logging_commons_logging"],
54+
exports = ["@external_deps//:commons_logging_commons_logging"],
5555
)
5656

5757
java_library(
@@ -60,7 +60,7 @@ java_library(
6060
"//org.eclipse.jgit.lfs:__pkg__",
6161
"//org.eclipse.jgit.lfs.server:__pkg__",
6262
],
63-
exports = ["@jgit_deps//:com_google_code_gson_gson"],
63+
exports = ["@external_deps//:com_google_code_gson_gson"],
6464
)
6565

6666
java_library(
@@ -70,7 +70,7 @@ java_library(
7070
"//org.eclipse.jgit.lfs.server.test:__pkg__",
7171
"//org.eclipse.jgit.pgm:__pkg__",
7272
],
73-
exports = ["@jgit_deps//:org_apache_httpcomponents_httpclient"],
73+
exports = ["@external_deps//:org_apache_httpcomponents_httpclient"],
7474
)
7575

7676
java_library(
@@ -82,7 +82,7 @@ java_library(
8282
"//org.eclipse.jgit.lfs.server.test:__pkg__",
8383
"//org.eclipse.jgit.pgm:__pkg__",
8484
],
85-
exports = ["@jgit_deps//:org_apache_httpcomponents_httpcore"],
85+
exports = ["@external_deps//:org_apache_httpcomponents_httpcore"],
8686
)
8787

8888
java_library(
@@ -94,7 +94,7 @@ java_library(
9494
"//org.eclipse.jgit.ssh.apache.test:__pkg__",
9595
"//org.eclipse.jgit.test:__pkg__",
9696
],
97-
exports = ["@jgit_deps//:org_apache_sshd_sshd_osgi"],
97+
exports = ["@external_deps//:org_apache_sshd_sshd_osgi"],
9898
)
9999

100100
java_library(
@@ -105,89 +105,89 @@ java_library(
105105
"//org.eclipse.jgit.ssh.apache.test:__pkg__",
106106
"//org.eclipse.jgit.test:__pkg__",
107107
],
108-
exports = ["@jgit_deps//:org_apache_sshd_sshd_sftp"],
108+
exports = ["@external_deps//:org_apache_sshd_sshd_sftp"],
109109
)
110110

111111
java_library(
112112
name = "jna",
113113
visibility = [
114114
"//org.eclipse.jgit.ssh.apache.agent:__pkg__",
115115
],
116-
exports = ["@jgit_deps//:net_java_dev_jna_jna"],
116+
exports = ["@external_deps//:net_java_dev_jna_jna"],
117117
)
118118

119119
java_library(
120120
name = "jna-platform",
121121
visibility = [
122122
"//org.eclipse.jgit.ssh.apache.agent:__pkg__",
123123
],
124-
exports = ["@jgit_deps//:net_java_dev_jna_jna_platform"],
124+
exports = ["@external_deps//:net_java_dev_jna_jna_platform"],
125125
)
126126

127127
java_library(
128128
name = "javaewah",
129129
visibility = ["//visibility:public"],
130-
exports = ["@jgit_deps//:com_googlecode_javaewah_JavaEWAH"],
130+
exports = ["@external_deps//:com_googlecode_javaewah_JavaEWAH"],
131131
)
132132

133133
java_library(
134134
name = "jetty-http",
135135
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
136136
visibility = ["//visibility:public"],
137-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_http"],
137+
exports = ["@external_deps//:org_eclipse_jetty_jetty_http"],
138138
runtime_deps = [":commons-codec"],
139139
)
140140

141141
java_library(
142142
name = "jetty-io",
143143
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
144144
visibility = ["//visibility:public"],
145-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_io"],
145+
exports = ["@external_deps//:org_eclipse_jetty_jetty_io"],
146146
)
147147

148148
java_library(
149149
name = "jetty-security",
150150
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
151151
visibility = ["//visibility:public"],
152-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_security"],
152+
exports = ["@external_deps//:org_eclipse_jetty_jetty_security"],
153153
)
154154

155155
java_library(
156156
name = "jetty-session",
157157
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
158158
visibility = ["//visibility:public"],
159-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_session"],
159+
exports = ["@external_deps//:org_eclipse_jetty_jetty_session"],
160160
)
161161

162162
java_library(
163163
name = "jetty-server",
164164
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
165165
visibility = ["//visibility:public"],
166-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_server"],
166+
exports = ["@external_deps//:org_eclipse_jetty_jetty_server"],
167167
)
168168

169169
java_library(
170170
name = "jetty-servlet",
171171
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
172172
visibility = ["//visibility:public"],
173173
exports = [
174-
"@jgit_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet",
175-
"@jgit_deps//:org_eclipse_jetty_jetty_util_ajax",
174+
"@external_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet",
175+
"@external_deps//:org_eclipse_jetty_jetty_util_ajax",
176176
],
177177
)
178178

179179
java_library(
180180
name = "jetty-util",
181181
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
182182
visibility = ["//visibility:public"],
183-
exports = ["@jgit_deps//:org_eclipse_jetty_jetty_util"],
183+
exports = ["@external_deps//:org_eclipse_jetty_jetty_util"],
184184
)
185185

186186
java_library(
187187
name = "jetty-ee10-servlet",
188188
# TODO: This should be testonly but org.eclipse.jgit.pgm depends on it.
189189
visibility = ["//visibility:public"],
190-
exports = ["@jgit_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet"],
190+
exports = ["@external_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet"],
191191
)
192192

193193
java_library(
@@ -197,7 +197,7 @@ java_library(
197197
"//org.eclipse.jgit.ssh.jsch:__pkg__",
198198
"//org.eclipse.jgit.ssh.jsch.test:__pkg__",
199199
],
200-
exports = ["@jgit_deps//:com_jcraft_jsch"],
200+
exports = ["@external_deps//:com_jcraft_jsch"],
201201
)
202202

203203
java_library(
@@ -209,7 +209,7 @@ java_library(
209209
"//org.eclipse.jgit.ssh.apache.test:__pkg__",
210210
"//org.eclipse.jgit.test:__pkg__",
211211
],
212-
exports = ["@jgit_deps//:org_bouncycastle_bcpg_jdk18on"],
212+
exports = ["@external_deps//:org_bouncycastle_bcpg_jdk18on"],
213213
)
214214

215215
java_library(
@@ -222,7 +222,7 @@ java_library(
222222
"//org.eclipse.jgit.ssh.jsch.test:__pkg__",
223223
"//org.eclipse.jgit.test:__pkg__",
224224
],
225-
exports = ["@jgit_deps//:org_bouncycastle_bcprov_jdk18on"],
225+
exports = ["@external_deps//:org_bouncycastle_bcprov_jdk18on"],
226226
)
227227

228228
java_library(
@@ -235,7 +235,7 @@ java_library(
235235
"//org.eclipse.jgit.ssh.jsch.test:__pkg__",
236236
"//org.eclipse.jgit.test:__pkg__",
237237
],
238-
exports = ["@jgit_deps//:org_bouncycastle_bcutil_jdk18on"],
238+
exports = ["@external_deps//:org_bouncycastle_bcutil_jdk18on"],
239239
)
240240

241241
java_library(
@@ -247,7 +247,7 @@ java_library(
247247
"//org.eclipse.jgit.ssh.jsch.test:__pkg__",
248248
"//org.eclipse.jgit.test:__pkg__",
249249
],
250-
exports = ["@jgit_deps//:org_bouncycastle_bcpkix_jdk18on"],
250+
exports = ["@external_deps//:org_bouncycastle_bcpkix_jdk18on"],
251251
)
252252

253253
java_library(
@@ -256,20 +256,20 @@ java_library(
256256
"//org.eclipse.jgit.ssh.jsch:__pkg__",
257257
"//org.eclipse.jgit.test:__pkg__",
258258
],
259-
exports = ["@jgit_deps//:com_jcraft_jzlib"],
259+
exports = ["@external_deps//:com_jcraft_jzlib"],
260260
)
261261

262262
java_library(
263263
name = "junit",
264264
testonly = 1,
265265
visibility = ["//visibility:public"],
266266
exports = [
267-
"@jgit_deps//:net_bytebuddy_byte_buddy_agent",
268-
"@jgit_deps//:net_bytebuddy_byte_buddy",
269-
"@jgit_deps//:org_hamcrest_hamcrest",
270-
"@jgit_deps//:junit_junit",
271-
"@jgit_deps//:org_mockito_mockito_core",
272-
"@jgit_deps//:org_objenesis_objenesis",
267+
"@external_deps//:net_bytebuddy_byte_buddy_agent",
268+
"@external_deps//:net_bytebuddy_byte_buddy",
269+
"@external_deps//:org_hamcrest_hamcrest",
270+
"@external_deps//:junit_junit",
271+
"@external_deps//:org_mockito_mockito_core",
272+
"@external_deps//:org_objenesis_objenesis",
273273
],
274274
)
275275

@@ -278,10 +278,10 @@ java_library(
278278
testonly = 1,
279279
visibility = ["//visibility:public"],
280280
exports = [
281-
"@jgit_deps//:net_bytebuddy_byte_buddy_agent",
282-
"@jgit_deps//:net_bytebuddy_byte_buddy",
283-
"@jgit_deps//:org_mockito_mockito_core",
284-
"@jgit_deps//:org_objenesis_objenesis",
281+
"@external_deps//:net_bytebuddy_byte_buddy_agent",
282+
"@external_deps//:net_bytebuddy_byte_buddy",
283+
"@external_deps//:org_mockito_mockito_core",
284+
"@external_deps//:org_objenesis_objenesis",
285285
],
286286
)
287287

@@ -290,7 +290,7 @@ java_library(
290290
testonly = 1,
291291
visibility = ["//visibility:public"],
292292
exports = [
293-
"@jgit_deps//:org_assertj_assertj_core",
293+
"@external_deps//:org_assertj_assertj_core",
294294
],
295295
)
296296

@@ -305,24 +305,24 @@ java_library(
305305
"//org.eclipse.jgit.lfs.server.test:__pkg__",
306306
"//org.eclipse.jgit.pgm:__pkg__",
307307
],
308-
exports = ["@jgit_deps//:jakarta_servlet_jakarta_servlet_api_6_1_0"],
308+
exports = ["@external_deps//:jakarta_servlet_jakarta_servlet_api_6_1_0"],
309309
)
310310

311311
java_library(
312312
name = "slf4j-api",
313313
visibility = ["//visibility:public"],
314-
exports = ["@jgit_deps//:org_slf4j_slf4j_api"],
314+
exports = ["@external_deps//:org_slf4j_slf4j_api"],
315315
)
316316

317317
java_library(
318318
name = "slf4j-simple",
319319
visibility = ["//visibility:public"],
320-
exports = ["@jgit_deps//:org_slf4j_slf4j_simple"],
320+
exports = ["@external_deps//:org_slf4j_slf4j_simple"],
321321
)
322322

323323
java_library(
324324
name = "xz",
325325
testonly = 1,
326326
visibility = ["//visibility:public"],
327-
exports = ["@jgit_deps//:org_tukaani_xz"],
327+
exports = ["@external_deps//:org_tukaani_xz"],
328328
)

lib/jmh/BUILD

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ java_library(
44
name = "jmh",
55
visibility = ["//visibility:public"],
66
exports = [
7-
"@jgit_deps//:org_openjdk_jmh_jmh_generator_annprocess",
8-
"@jgit_deps//:org_openjdk_jmh_jmh_core",
9-
"@jgit_deps//:net_sf_jopt_simple_jopt_simple",
10-
"@jgit_deps//:org_apache_commons_commons_math3",
7+
"@external_deps//:org_openjdk_jmh_jmh_generator_annprocess",
8+
"@external_deps//:org_openjdk_jmh_jmh_core",
9+
"@external_deps//:net_sf_jopt_simple_jopt_simple",
10+
"@external_deps//:org_apache_commons_commons_math3",
1111
],
1212
)

0 commit comments

Comments
 (0)