@@ -106,16 +106,15 @@ def get_json_dependencies(artifact) -> List[MavenCoordinates]:
106
106
data = json .load (file )
107
107
108
108
return (
109
- get_mavens_coordinates_from_json (dependency ["directDependencies" ])
110
- if any ((dependency := d )["coord" ] == artifact
111
- for d in data ["dependencies" ])
109
+ get_mavens_coordinates_from_json (dep ["directDependencies" ])
110
+ if any ((dep := d )["coord" ] == artifact for d in data ["dependencies" ])
112
111
else []
113
112
)
114
113
115
114
COORDINATE_GROUPS = [
116
115
set ([
117
116
"com.twitter" ,
118
- "javax.annotation"
117
+ "javax.annotation" ,
119
118
"org.scala-lang" ,
120
119
"org.scalactic" ,
121
120
"org.scalatest" ,
@@ -147,7 +146,7 @@ def get_label(coordinates) -> str:
147
146
group_label = group .replace ('.' , '_' ).replace ('-' , '_' )
148
147
artifact_label = coordinates .artifact .split ('_' )[0 ].replace ('-' , '_' )
149
148
150
- if group in COORDINATE_GROUPS [0 ]:
149
+ if group in COORDINATE_GROUPS [0 ] or group . startswith ( "org.scala-lang." ) :
151
150
return f'io_bazel_rules_scala_{ artifact_label } '
152
151
if group in COORDINATE_GROUPS [1 ]:
153
152
return f'io_bazel_rules_scala_{ group_label } _{ artifact_label } '
@@ -205,18 +204,17 @@ def to_rules_scala_compatible_dict(artifacts) -> Dict[str, Dict]:
205
204
.replace ('scala3_' , 'scala_' )
206
205
.replace ('scala_tasty_core' , 'scala_scala_tasty_core' )
207
206
)
208
- deps = [
207
+ deps = sorted ( [
209
208
f'@{ get_label (dep )} _2'
210
209
if "scala3-library_3" in a .coordinates .artifact
211
210
else f'@{ get_label (dep )} '
212
211
for dep in a .direct_dependencies
213
- ]
214
- result [label ] = metadata = {
212
+ ])
213
+ result [label ] = {
215
214
"artifact" : f"{ a .coordinates .coordinate } " ,
216
215
"sha256" : f"{ a .checksum } " ,
216
+ "deps" : deps ,
217
217
}
218
- if deps :
219
- metadata ["deps" ] = deps
220
218
221
219
return result
222
220
@@ -275,7 +273,7 @@ def create_file(version):
275
273
metadata ["artifact" ] = artifact
276
274
metadata ["sha256" ] = generated_metadata ["sha256" ]
277
275
dependencies = [
278
- d for d in generated_metadata . get ( "deps:" , []) if (
276
+ d for d in generated_metadata [ "deps" ] if (
279
277
d [1 :] in original_artifacts and
280
278
"runtime" not in d and
281
279
"runtime" not in artifact
0 commit comments