1
1
load (
2
2
"//scala:scala_cross_version.bzl" ,
3
+ "extract_major_version" ,
3
4
_default_maven_server_urls = "default_maven_server_urls" ,
4
5
)
5
6
load ("//third_party/repositories:repositories.bzl" , "repositories" )
6
- load ("@io_bazel_rules_scala_config//:config.bzl" , "SCALA_MAJOR_VERSION" , "SCALA_VERSION " )
7
+ load ("@io_bazel_rules_scala_config//:config.bzl" , "SCALA_VERSIONS " )
7
8
8
9
def scalafmt_default_config (path = ".scalafmt.conf" ):
9
10
build = []
@@ -14,42 +15,44 @@ def scalafmt_default_config(path = ".scalafmt.conf"):
14
15
build .append (")" )
15
16
native .new_local_repository (name = "scalafmt_default" , build_file_content = "\n " .join (build ), path = "" )
16
17
18
+ _SCALAFMT_DEPS = [
19
+ "org_scalameta_common" ,
20
+ "org_scalameta_fastparse" ,
21
+ "org_scalameta_fastparse_utils" ,
22
+ "org_scalameta_parsers" ,
23
+ "org_scalameta_scalafmt_core" ,
24
+ "org_scalameta_scalameta" ,
25
+ "org_scalameta_trees" ,
26
+ "org_typelevel_paiges_core" ,
27
+ "com_typesafe_config" ,
28
+ "org_scala_lang_scalap" ,
29
+ "com_thesamet_scalapb_lenses" ,
30
+ "com_thesamet_scalapb_scalapb_runtime" ,
31
+ "com_lihaoyi_fansi" ,
32
+ "com_lihaoyi_fastparse" ,
33
+ "org_scalameta_fastparse_utils" ,
34
+ "org_scala_lang_modules_scala_collection_compat" ,
35
+ "com_lihaoyi_pprint" ,
36
+ "com_lihaoyi_sourcecode" ,
37
+ "com_google_protobuf_protobuf_java" ,
38
+ "com_geirsson_metaconfig_core" ,
39
+ "com_geirsson_metaconfig_typesafe_config" ,
40
+ ]
41
+
42
+ def _artifact_ids (scala_version ):
43
+ major_version = extract_major_version (scala_version )
44
+ geny = ["com_lihaoyi_geny" ] if major_version != "2.11" else []
45
+ parallel_collections = ["io_bazel_rules_scala_scala_parallel_collections" ] if major_version == "2.13" or major_version .startswith ("3" ) else []
46
+ return _SCALAFMT_DEPS + geny + parallel_collections
47
+
17
48
def scalafmt_repositories (
18
49
maven_servers = _default_maven_server_urls (),
19
50
overriden_artifacts = {}):
20
- artifact_ids = [
21
- "org_scalameta_common" ,
22
- "org_scalameta_fastparse" ,
23
- "org_scalameta_fastparse_utils" ,
24
- "org_scalameta_parsers" ,
25
- "org_scalameta_scalafmt_core" ,
26
- "org_scalameta_scalameta" ,
27
- "org_scalameta_trees" ,
28
- "org_typelevel_paiges_core" ,
29
- "com_typesafe_config" ,
30
- "org_scala_lang_scalap" ,
31
- "com_thesamet_scalapb_lenses" ,
32
- "com_thesamet_scalapb_scalapb_runtime" ,
33
- "com_lihaoyi_fansi" ,
34
- "com_lihaoyi_fastparse" ,
35
- "org_scalameta_fastparse_utils" ,
36
- "org_scala_lang_modules_scala_collection_compat" ,
37
- "com_lihaoyi_pprint" ,
38
- "com_lihaoyi_sourcecode" ,
39
- "com_google_protobuf_protobuf_java" ,
40
- "com_geirsson_metaconfig_core" ,
41
- "com_geirsson_metaconfig_typesafe_config" ,
42
- ]
43
- if SCALA_MAJOR_VERSION != "2.11" :
44
- artifact_ids .append ("com_lihaoyi_geny" )
45
- if SCALA_MAJOR_VERSION == "2.13" or SCALA_MAJOR_VERSION .startswith ("3" ):
46
- artifact_ids .append ("io_bazel_rules_scala_scala_parallel_collections" )
47
-
48
- repositories (
49
- scala_version = SCALA_VERSION ,
50
- for_artifact_ids = artifact_ids ,
51
- maven_servers = maven_servers ,
52
- fetch_sources = True ,
53
- overriden_artifacts = overriden_artifacts ,
54
- )
51
+ for scala_version in SCALA_VERSIONS :
52
+ repositories (
53
+ scala_version = scala_version ,
54
+ for_artifact_ids = _artifact_ids (scala_version ),
55
+ maven_servers = maven_servers ,
56
+ overriden_artifacts = overriden_artifacts ,
57
+ )
55
58
native .register_toolchains ("@io_bazel_rules_scala//scala/scalafmt:scalafmt_toolchain" )
0 commit comments