@@ -119,7 +119,7 @@ go_deps.from_file(go_mod = "//:go.mod")
119
119
120
120
use_repo (go_deps , "com_github_google_go_cmp" )
121
121
122
- bazel_dep (name = "rules_java" , version = "7.6.5 " )
122
+ bazel_dep (name = "rules_java" , version = "7.9.1 " )
123
123
124
124
# https://github.com/bazelbuild/rules_jvm_external/blob/master/docs/bzlmod.md
125
125
bazel_dep (name = "rules_jvm_external" , version = "6.2" )
@@ -203,11 +203,12 @@ use_repo(rules_ts_ext, "npm_typescript")
203
203
#
204
204
# - MODULE.bazel loads the rules_scala archive as @io_bazel_rules_scala.
205
205
#
206
- # - The //scala:config.bzl extension defines @io_bazel_rules_scala_config, which
207
- # depends on @io_bazel_rules_scala.
206
+ # - The //scala/extensions :config.bzl extension defines
207
+ # @io_bazel_rules_scala_config, which depends on @io_bazel_rules_scala.
208
208
#
209
- # - The //scala:deps.bzl extension defines the repos needed by the Scala rules,
210
- # which depend on @io_bazel_rules_scala and @io_bazel_rules_scala_config.
209
+ # - The //scala/extensions:deps.bzl extension defines the repos needed by the
210
+ # Scala rules, which depend on @io_bazel_rules_scala and
211
+ # @io_bazel_rules_scala_config.
211
212
#
212
213
# The following problems occur when trying to import everything directly in
213
214
# MODULE.bazel, or in fewer extension files.
@@ -266,22 +267,28 @@ use_repo(rules_ts_ext, "npm_typescript")
266
267
267
268
http_archive (
268
269
name = "io_bazel_rules_scala" ,
269
- sha256 = "3b00fa0b243b04565abb17d3839a5f4fa6cc2cac571f6db9f83c1982ba1e19e5 " ,
270
- strip_prefix = "rules_scala-6.5 .0" ,
271
- url = "https://github.com/bazelbuild/rules_scala/releases/download/v6.5 .0/rules_scala-v6.5 .0.tar.gz" ,
272
- patches = ["//scala:rules_scala-6.5 .0.patch" ],
270
+ sha256 = "e734eef95cf26c0171566bdc24d83bd82bdaf8ca7873bec6ce9b0d524bdaf05d " ,
271
+ strip_prefix = "rules_scala-6.6 .0" ,
272
+ url = "https://github.com/bazelbuild/rules_scala/releases/download/v6.6 .0/rules_scala-v6.6 .0.tar.gz" ,
273
+ patches = ["//scala:rules_scala-6.6 .0.patch" ],
273
274
patch_args = ["-p1" ],
274
275
)
275
276
276
- scala_config = use_extension ("//scala:config.bzl" , "scala_config" )
277
+ # This constant matches the default Scala version from rules_scala for now.
278
+ SCALA_VERSION = "2.13.12"
279
+ SCALA_VERSIONS = [SCALA_VERSION ]
280
+
281
+ scala_config = use_extension ("//scala/extensions:config.bzl" , "scala_config" )
282
+ scala_config .settings (
283
+ scala_version = SCALA_VERSION ,
284
+ scala_versions = SCALA_VERSIONS ,
285
+ )
277
286
use_repo (
278
287
scala_config ,
279
288
"io_bazel_rules_scala_config" ,
280
289
)
281
290
282
- scala_deps = use_extension ("//scala:deps.bzl" , "scala_deps" )
283
- use_repo (
284
- scala_deps ,
291
+ repos = [
285
292
"io_bazel_rules_scala_scala_compiler" ,
286
293
"io_bazel_rules_scala_scala_library" ,
287
294
"io_bazel_rules_scala_scala_parser_combinators" ,
@@ -299,11 +306,20 @@ use_repo(
299
306
"io_bazel_rules_scala_scalatest_matchers_core" ,
300
307
"io_bazel_rules_scala_scalatest_mustmatchers" ,
301
308
"io_bazel_rules_scala_scalatest_shouldmatchers" ,
302
- )
303
-
304
- # Extracted from scala_register_toolchains() and scalatest_toolchain(), since
305
- # other bazel rules modules suggest similar usage.
306
- register_toolchains (
307
- "@io_bazel_rules_scala//scala:default_toolchain" ,
308
- "@io_bazel_rules_scala//testing:scalatest_toolchain"
309
- )
309
+ ]
310
+
311
+ toolchains = [
312
+ "@io_bazel_rules_scala//scala:toolchain" ,
313
+ "@io_bazel_rules_scala//testing:scalatest_toolchain" ,
314
+ ]
315
+
316
+ scala_deps = use_extension ("//scala/extensions:deps.bzl" , "scala_deps" )
317
+ [
318
+ (
319
+ [use_repo (scala_deps , repo + suffix ) for repo in repos ],
320
+ [register_toolchains (toolchain + suffix ) for toolchain in toolchains ],
321
+ )
322
+ # The v.replace() expression mimics the logic to generate version specific
323
+ # repo suffixes from rules_scala.
324
+ for suffix in ["_" + v .replace ("." , "_" ) for v in SCALA_VERSIONS ]
325
+ ]
0 commit comments