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
diff --git a/MODULE.bazel b/MODULE.bazel index f020a51..7b70fa2 100644 --- a/MODULE.bazel +++ b/MODULE.bazel
@@ -37,7 +37,7 @@ maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") maven.install( - name = "jgit_deps", + name = "external_deps", artifacts = [ "args4j:args4j:2.37", "com.google.code.gson:gson:2.13.2", @@ -87,9 +87,10 @@ duplicate_version_warning = "warn", fail_on_missing_checksum = True, fetch_sources = True, + known_contributing_modules = ["jgit"], repositories = [ "https://repo1.maven.org/maven2", ], strict_visibility = True, ) -use_repo(maven, "jgit_deps") +use_repo(maven, "external_deps")
diff --git a/lib/BUILD b/lib/BUILD index 0e798ff..20b85da 100644 --- a/lib/BUILD +++ b/lib/BUILD
@@ -6,7 +6,7 @@ "//org.eclipse.jgit.pgm:__pkg__", "//org.eclipse.jgit.pgm.test:__pkg__", ], - exports = ["@jgit_deps//:args4j_args4j"], + exports = ["@external_deps//:args4j_args4j"], ) java_library( @@ -16,7 +16,7 @@ "//org.eclipse.jgit.pgm.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_apache_commons_commons_compress"], + exports = ["@external_deps//:org_apache_commons_commons_compress"], ) java_library( @@ -26,7 +26,7 @@ "//org.eclipse.jgit.pgm.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_apache_commons_commons_lang3"], + exports = ["@external_deps//:org_apache_commons_commons_lang3"], ) java_library( @@ -36,7 +36,7 @@ "//org.eclipse.jgit.pgm.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:commons_io_commons_io"], + exports = ["@external_deps//:commons_io_commons_io"], ) java_library( @@ -45,13 +45,13 @@ "//org.eclipse.jgit:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:commons_codec_commons_codec"], + exports = ["@external_deps//:commons_codec_commons_codec"], ) java_library( name = "commons-logging", visibility = ["//visibility:public"], - exports = ["@jgit_deps//:commons_logging_commons_logging"], + exports = ["@external_deps//:commons_logging_commons_logging"], ) java_library( @@ -60,7 +60,7 @@ "//org.eclipse.jgit.lfs:__pkg__", "//org.eclipse.jgit.lfs.server:__pkg__", ], - exports = ["@jgit_deps//:com_google_code_gson_gson"], + exports = ["@external_deps//:com_google_code_gson_gson"], ) java_library( @@ -70,7 +70,7 @@ "//org.eclipse.jgit.lfs.server.test:__pkg__", "//org.eclipse.jgit.pgm:__pkg__", ], - exports = ["@jgit_deps//:org_apache_httpcomponents_httpclient"], + exports = ["@external_deps//:org_apache_httpcomponents_httpclient"], ) java_library( @@ -82,7 +82,7 @@ "//org.eclipse.jgit.lfs.server.test:__pkg__", "//org.eclipse.jgit.pgm:__pkg__", ], - exports = ["@jgit_deps//:org_apache_httpcomponents_httpcore"], + exports = ["@external_deps//:org_apache_httpcomponents_httpcore"], ) java_library( @@ -94,7 +94,7 @@ "//org.eclipse.jgit.ssh.apache.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_apache_sshd_sshd_osgi"], + exports = ["@external_deps//:org_apache_sshd_sshd_osgi"], ) java_library( @@ -105,7 +105,7 @@ "//org.eclipse.jgit.ssh.apache.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_apache_sshd_sshd_sftp"], + exports = ["@external_deps//:org_apache_sshd_sshd_sftp"], ) java_library( @@ -113,7 +113,7 @@ visibility = [ "//org.eclipse.jgit.ssh.apache.agent:__pkg__", ], - exports = ["@jgit_deps//:net_java_dev_jna_jna"], + exports = ["@external_deps//:net_java_dev_jna_jna"], ) java_library( @@ -121,20 +121,20 @@ visibility = [ "//org.eclipse.jgit.ssh.apache.agent:__pkg__", ], - exports = ["@jgit_deps//:net_java_dev_jna_jna_platform"], + exports = ["@external_deps//:net_java_dev_jna_jna_platform"], ) java_library( name = "javaewah", visibility = ["//visibility:public"], - exports = ["@jgit_deps//:com_googlecode_javaewah_JavaEWAH"], + exports = ["@external_deps//:com_googlecode_javaewah_JavaEWAH"], ) java_library( name = "jetty-http", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_http"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_http"], runtime_deps = [":commons-codec"], ) @@ -142,28 +142,28 @@ name = "jetty-io", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_io"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_io"], ) java_library( name = "jetty-security", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_security"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_security"], ) java_library( name = "jetty-session", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_session"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_session"], ) java_library( name = "jetty-server", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_server"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_server"], ) java_library( @@ -171,8 +171,8 @@ # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], exports = [ - "@jgit_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet", - "@jgit_deps//:org_eclipse_jetty_jetty_util_ajax", + "@external_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet", + "@external_deps//:org_eclipse_jetty_jetty_util_ajax", ], ) @@ -180,14 +180,14 @@ name = "jetty-util", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_jetty_util"], + exports = ["@external_deps//:org_eclipse_jetty_jetty_util"], ) java_library( name = "jetty-ee10-servlet", # TODO: This should be testonly but org.eclipse.jgit.pgm depends on it. visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet"], + exports = ["@external_deps//:org_eclipse_jetty_ee10_jetty_ee10_servlet"], ) java_library( @@ -197,7 +197,7 @@ "//org.eclipse.jgit.ssh.jsch:__pkg__", "//org.eclipse.jgit.ssh.jsch.test:__pkg__", ], - exports = ["@jgit_deps//:com_jcraft_jsch"], + exports = ["@external_deps//:com_jcraft_jsch"], ) java_library( @@ -209,7 +209,7 @@ "//org.eclipse.jgit.ssh.apache.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_bouncycastle_bcpg_jdk18on"], + exports = ["@external_deps//:org_bouncycastle_bcpg_jdk18on"], ) java_library( @@ -222,7 +222,7 @@ "//org.eclipse.jgit.ssh.jsch.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_bouncycastle_bcprov_jdk18on"], + exports = ["@external_deps//:org_bouncycastle_bcprov_jdk18on"], ) java_library( @@ -235,7 +235,7 @@ "//org.eclipse.jgit.ssh.jsch.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_bouncycastle_bcutil_jdk18on"], + exports = ["@external_deps//:org_bouncycastle_bcutil_jdk18on"], ) java_library( @@ -247,7 +247,7 @@ "//org.eclipse.jgit.ssh.jsch.test:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:org_bouncycastle_bcpkix_jdk18on"], + exports = ["@external_deps//:org_bouncycastle_bcpkix_jdk18on"], ) java_library( @@ -256,7 +256,7 @@ "//org.eclipse.jgit.ssh.jsch:__pkg__", "//org.eclipse.jgit.test:__pkg__", ], - exports = ["@jgit_deps//:com_jcraft_jzlib"], + exports = ["@external_deps//:com_jcraft_jzlib"], ) java_library( @@ -264,12 +264,12 @@ testonly = 1, visibility = ["//visibility:public"], exports = [ - "@jgit_deps//:net_bytebuddy_byte_buddy_agent", - "@jgit_deps//:net_bytebuddy_byte_buddy", - "@jgit_deps//:org_hamcrest_hamcrest", - "@jgit_deps//:junit_junit", - "@jgit_deps//:org_mockito_mockito_core", - "@jgit_deps//:org_objenesis_objenesis", + "@external_deps//:net_bytebuddy_byte_buddy_agent", + "@external_deps//:net_bytebuddy_byte_buddy", + "@external_deps//:org_hamcrest_hamcrest", + "@external_deps//:junit_junit", + "@external_deps//:org_mockito_mockito_core", + "@external_deps//:org_objenesis_objenesis", ], ) @@ -278,10 +278,10 @@ testonly = 1, visibility = ["//visibility:public"], exports = [ - "@jgit_deps//:net_bytebuddy_byte_buddy_agent", - "@jgit_deps//:net_bytebuddy_byte_buddy", - "@jgit_deps//:org_mockito_mockito_core", - "@jgit_deps//:org_objenesis_objenesis", + "@external_deps//:net_bytebuddy_byte_buddy_agent", + "@external_deps//:net_bytebuddy_byte_buddy", + "@external_deps//:org_mockito_mockito_core", + "@external_deps//:org_objenesis_objenesis", ], ) @@ -290,7 +290,7 @@ testonly = 1, visibility = ["//visibility:public"], exports = [ - "@jgit_deps//:org_assertj_assertj_core", + "@external_deps//:org_assertj_assertj_core", ], ) @@ -305,24 +305,24 @@ "//org.eclipse.jgit.lfs.server.test:__pkg__", "//org.eclipse.jgit.pgm:__pkg__", ], - exports = ["@jgit_deps//:jakarta_servlet_jakarta_servlet_api_6_1_0"], + exports = ["@external_deps//:jakarta_servlet_jakarta_servlet_api_6_1_0"], ) java_library( name = "slf4j-api", visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_slf4j_slf4j_api"], + exports = ["@external_deps//:org_slf4j_slf4j_api"], ) java_library( name = "slf4j-simple", visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_slf4j_slf4j_simple"], + exports = ["@external_deps//:org_slf4j_slf4j_simple"], ) java_library( name = "xz", testonly = 1, visibility = ["//visibility:public"], - exports = ["@jgit_deps//:org_tukaani_xz"], + exports = ["@external_deps//:org_tukaani_xz"], )
diff --git a/lib/jmh/BUILD b/lib/jmh/BUILD index 1bba1a5..2b15300 100644 --- a/lib/jmh/BUILD +++ b/lib/jmh/BUILD
@@ -4,9 +4,9 @@ name = "jmh", visibility = ["//visibility:public"], exports = [ - "@jgit_deps//:org_openjdk_jmh_jmh_generator_annprocess", - "@jgit_deps//:org_openjdk_jmh_jmh_core", - "@jgit_deps//:net_sf_jopt_simple_jopt_simple", - "@jgit_deps//:org_apache_commons_commons_math3", + "@external_deps//:org_openjdk_jmh_jmh_generator_annprocess", + "@external_deps//:org_openjdk_jmh_jmh_core", + "@external_deps//:net_sf_jopt_simple_jopt_simple", + "@external_deps//:org_apache_commons_commons_math3", ], )