blob: f45046812b2df65d469a6789243225dbb75977e4 [file] [log] [blame]
Simon Horlick6d9e1492017-06-23 04:06:49 +08001"""External dependencies for grpc-java."""
2
3def grpc_java_repositories(
Carl Mastrangelob1c461f2018-07-23 17:03:46 -07004 omit_com_google_api_grpc_google_common_protos = False,
5 omit_com_google_auth_google_auth_library_credentials = False,
6 omit_com_google_code_findbugs_jsr305 = False,
7 omit_com_google_code_gson = False,
8 omit_com_google_errorprone_error_prone_annotations = False,
9 omit_com_google_guava = False,
10 omit_com_google_protobuf = False,
11 omit_com_google_protobuf_java = False,
12 omit_com_google_protobuf_javalite = False,
13 omit_com_google_protobuf_nano_protobuf_javanano = False,
14 omit_com_google_re2j = False,
15 omit_com_google_truth_truth = False,
16 omit_com_squareup_okhttp = False,
17 omit_com_squareup_okio = False,
18 omit_io_netty_buffer = False,
19 omit_io_netty_common = False,
20 omit_io_netty_transport = False,
21 omit_io_netty_codec = False,
22 omit_io_netty_codec_socks = False,
23 omit_io_netty_codec_http = False,
24 omit_io_netty_codec_http2 = False,
25 omit_io_netty_handler = False,
26 omit_io_netty_handler_proxy = False,
27 omit_io_netty_resolver = False,
28 omit_io_netty_tcnative_boringssl_static = False,
29 omit_io_opencensus_api = False,
30 omit_io_opencensus_grpc_metrics = False,
31 omit_javax_annotation = False,
32 omit_junit_junit = False,
Eric Gribkoff79b24702018-08-09 09:09:21 -070033 omit_org_apache_commons_lang3 = False,
34 omit_org_codehaus_mojo_animal_sniffer_annotations = False):
Carl Mastrangelob1c461f2018-07-23 17:03:46 -070035 """Imports dependencies for grpc-java."""
36 if not omit_com_google_api_grpc_google_common_protos:
37 com_google_api_grpc_google_common_protos()
38 if not omit_com_google_auth_google_auth_library_credentials:
39 com_google_auth_google_auth_library_credentials()
40 if not omit_com_google_code_findbugs_jsr305:
41 com_google_code_findbugs_jsr305()
42 if not omit_com_google_code_gson:
43 com_google_code_gson()
44 if not omit_com_google_errorprone_error_prone_annotations:
45 com_google_errorprone_error_prone_annotations()
46 if not omit_com_google_guava:
47 com_google_guava()
48 if not omit_com_google_protobuf:
49 com_google_protobuf()
50 if omit_com_google_protobuf_java:
51 fail("omit_com_google_protobuf_java is no longer supported and must be not be passed to grpc_java_repositories()")
52 if not omit_com_google_protobuf_javalite:
53 com_google_protobuf_javalite()
54 if not omit_com_google_protobuf_nano_protobuf_javanano:
55 com_google_protobuf_nano_protobuf_javanano()
56 if not omit_com_google_re2j:
57 com_google_re2j()
58 if not omit_com_google_truth_truth:
59 com_google_truth_truth()
60 if not omit_com_squareup_okhttp:
61 com_squareup_okhttp()
62 if not omit_com_squareup_okio:
63 com_squareup_okio()
64 if not omit_io_netty_buffer:
65 io_netty_buffer()
66 if not omit_io_netty_common:
67 io_netty_common()
68 if not omit_io_netty_transport:
69 io_netty_transport()
70 if not omit_io_netty_codec:
71 io_netty_codec()
72 if not omit_io_netty_codec_socks:
73 io_netty_codec_socks()
74 if not omit_io_netty_codec_http:
75 io_netty_codec_http()
76 if not omit_io_netty_codec_http2:
77 io_netty_codec_http2()
78 if not omit_io_netty_handler:
79 io_netty_handler()
80 if not omit_io_netty_handler_proxy:
81 io_netty_handler_proxy()
82 if not omit_io_netty_resolver:
83 io_netty_resolver()
84 if not omit_io_netty_tcnative_boringssl_static:
85 io_netty_tcnative_boringssl_static()
86 if not omit_io_opencensus_api:
87 io_opencensus_api()
88 if not omit_io_opencensus_grpc_metrics:
89 io_opencensus_grpc_metrics()
90 if not omit_javax_annotation:
91 javax_annotation()
92 if not omit_junit_junit:
93 junit_junit()
94 if not omit_org_apache_commons_lang3:
95 org_apache_commons_lang3()
Eric Gribkoff79b24702018-08-09 09:09:21 -070096 if not omit_org_codehaus_mojo_animal_sniffer_annotations:
97 org_codehaus_mojo_animal_sniffer_annotations()
Steve Conover16702962017-11-20 19:48:57 +010098
Carl Mastrangelob1c461f2018-07-23 17:03:46 -070099 native.bind(
100 name = "guava",
101 actual = "@com_google_guava_guava//jar",
102 )
103 native.bind(
104 name = "gson",
105 actual = "@com_google_code_gson_gson//jar",
106 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800107
108def com_google_api_grpc_google_common_protos():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700109 native.maven_jar(
110 name = "com_google_api_grpc_proto_google_common_protos",
111 artifact = "com.google.api.grpc:proto-google-common-protos:1.0.0",
112 sha1 = "86f070507e28b930e50d218ee5b6788ef0dd05e6",
113 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800114
jyane015b2ff2018-01-05 00:45:13 +0900115def com_google_auth_google_auth_library_credentials():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700116 native.maven_jar(
117 name = "com_google_auth_google_auth_library_credentials",
118 artifact = "com.google.auth:google-auth-library-credentials:0.9.0",
119 sha1 = "8e2b181feff6005c9cbc6f5c1c1e2d3ec9138d46",
120 )
jyane015b2ff2018-01-05 00:45:13 +0900121
Simon Horlick6d9e1492017-06-23 04:06:49 +0800122def com_google_code_findbugs_jsr305():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700123 native.maven_jar(
124 name = "com_google_code_findbugs_jsr305",
125 artifact = "com.google.code.findbugs:jsr305:3.0.0",
126 sha1 = "5871fb60dc68d67da54a663c3fd636a10a532948",
127 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800128
129def com_google_code_gson():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700130 native.maven_jar(
131 name = "com_google_code_gson_gson",
132 artifact = "com.google.code.gson:gson:jar:2.7",
133 sha1 = "751f548c85fa49f330cecbb1875893f971b33c4e",
134 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800135
136def com_google_errorprone_error_prone_annotations():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700137 native.maven_jar(
138 name = "com_google_errorprone_error_prone_annotations",
139 artifact = "com.google.errorprone:error_prone_annotations:2.2.0",
140 sha1 = "88e3c593e9b3586e1c6177f89267da6fc6986f0c",
141 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800142
143def com_google_guava():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700144 native.maven_jar(
145 name = "com_google_guava_guava",
146 artifact = "com.google.guava:guava:20.0",
147 sha1 = "89507701249388e1ed5ddcf8c41f4ce1be7831ef",
148 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800149
Simon Horlick6d9e1492017-06-23 04:06:49 +0800150def com_google_protobuf():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700151 # proto_library rules implicitly depend on @com_google_protobuf//:protoc,
152 # which is the proto-compiler.
153 # This statement defines the @com_google_protobuf repo.
154 native.http_archive(
155 name = "com_google_protobuf",
156 sha256 = "1f8b9b202e9a4e467ff0b0f25facb1642727cdf5e69092038f15b37c75b99e45",
157 strip_prefix = "protobuf-3.5.1",
158 urls = ["https://github.com/google/protobuf/archive/v3.5.1.zip"],
159 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800160
Eric Andersonbace06f2018-04-03 15:22:55 -0700161def com_google_protobuf_javalite():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700162 # java_lite_proto_library rules implicitly depend on @com_google_protobuf_javalite
163 native.http_archive(
164 name = "com_google_protobuf_javalite",
165 sha256 = "d8a2fed3708781196f92e1e7e7e713cf66804bd2944894401057214aff4f468e",
166 strip_prefix = "protobuf-5e8916e881c573c5d83980197a6f783c132d4276",
167 urls = ["https://github.com/google/protobuf/archive/5e8916e881c573c5d83980197a6f783c132d4276.zip"],
168 )
Eric Andersonbace06f2018-04-03 15:22:55 -0700169
Simon Horlick6d9e1492017-06-23 04:06:49 +0800170def com_google_protobuf_nano_protobuf_javanano():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700171 native.maven_jar(
172 name = "com_google_protobuf_nano_protobuf_javanano",
173 artifact = "com.google.protobuf.nano:protobuf-javanano:3.0.0-alpha-5",
174 sha1 = "357e60f95cebb87c72151e49ba1f570d899734f8",
175 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800176
Nathan Herring8db84972018-05-30 21:26:02 +0200177def com_google_re2j():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700178 native.maven_jar(
179 name = "com_google_re2j",
180 artifact = "com.google.re2j:re2j:1.2",
181 sha1 = "499d5e041f962fefd0f245a9325e8125608ebb54",
182 )
Nathan Herring8db84972018-05-30 21:26:02 +0200183
Steve Conover16702962017-11-20 19:48:57 +0100184def com_google_truth_truth():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700185 native.maven_jar(
186 name = "com_google_truth_truth",
Eric Andersone393b4a2018-07-30 09:44:56 -0700187 artifact = "com.google.truth:truth:0.42",
188 sha1 = "b5768f644b114e6cf5c3962c2ebcb072f788dcbb",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700189 )
Steve Conover16702962017-11-20 19:48:57 +0100190
Simon Horlick6d9e1492017-06-23 04:06:49 +0800191def com_squareup_okhttp():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700192 native.maven_jar(
193 name = "com_squareup_okhttp_okhttp",
194 artifact = "com.squareup.okhttp:okhttp:2.5.0",
195 sha1 = "4de2b4ed3445c37ec1720a7d214712e845a24636",
196 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800197
198def com_squareup_okio():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700199 native.maven_jar(
200 name = "com_squareup_okio_okio",
201 artifact = "com.squareup.okio:okio:1.13.0",
202 sha1 = "a9283170b7305c8d92d25aff02a6ab7e45d06cbe",
203 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800204
205def io_netty_codec_http2():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700206 native.maven_jar(
207 name = "io_netty_netty_codec_http2",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700208 artifact = "io.netty:netty-codec-http2:4.1.27.Final",
209 sha1 = "3769790a2033667d663f9a526d5b63cfecdbdf4e",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700210 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800211
212def io_netty_buffer():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700213 native.maven_jar(
214 name = "io_netty_netty_buffer",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700215 artifact = "io.netty:netty-buffer:4.1.27.Final",
216 sha1 = "aafe2b9fb0d8f3b200cf10b9fd6486c6a722d7a1",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700217 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800218
219def io_netty_common():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700220 native.maven_jar(
221 name = "io_netty_netty_common",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700222 artifact = "io.netty:netty-common:4.1.27.Final",
223 sha1 = "6a12a969c27fb37b230c4bde5a67bd822fa6b7a4",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700224 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800225
226def io_netty_transport():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700227 native.maven_jar(
228 name = "io_netty_netty_transport",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700229 artifact = "io.netty:netty-transport:4.1.27.Final",
230 sha1 = "b5c2da3ea89dd67320925f1504c9eb3615241b7c",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700231 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800232
233def io_netty_codec():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700234 native.maven_jar(
235 name = "io_netty_netty_codec",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700236 artifact = "io.netty:netty-codec:4.1.27.Final",
237 sha1 = "d2653d78ebaa650064768fb26b10051f5c8efb2c",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700238 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800239
240def io_netty_codec_socks():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700241 native.maven_jar(
242 name = "io_netty_netty_codec_socks",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700243 artifact = "io.netty:netty-codec-socks:4.1.27.Final",
244 sha1 = "285b09af98764cf02e4b77b3d95af188469a7133",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700245 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800246
247def io_netty_codec_http():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700248 native.maven_jar(
249 name = "io_netty_netty_codec_http",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700250 artifact = "io.netty:netty-codec-http:4.1.27.Final",
251 sha1 = "a1722d6bcbbef1c4c7877e8bf38b07a3db5ed07f",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700252 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800253
254def io_netty_handler():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700255 native.maven_jar(
256 name = "io_netty_netty_handler",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700257 artifact = "io.netty:netty-handler:4.1.27.Final",
258 sha1 = "21bd9cf565390a8d72579b8664303e3c175dfc6a",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700259 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800260
261def io_netty_handler_proxy():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700262 native.maven_jar(
263 name = "io_netty_netty_handler_proxy",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700264 artifact = "io.netty:netty-handler-proxy:4.1.27.Final",
265 sha1 = "1a822ce7760bc6eb4937b7e448c9e081fedcc807",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700266 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800267
268def io_netty_resolver():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700269 native.maven_jar(
270 name = "io_netty_netty_resolver",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700271 artifact = "io.netty:netty-resolver:4.1.27.Final",
272 sha1 = "2536447ef9605ccb2b5203aa22392c6514484ea9",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700273 )
Simon Horlick6d9e1492017-06-23 04:06:49 +0800274
275def io_netty_tcnative_boringssl_static():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700276 native.maven_jar(
277 name = "io_netty_netty_tcnative_boringssl_static",
Carl Mastrangelo948439d2018-07-30 12:42:33 -0700278 artifact = "io.netty:netty-tcnative-boringssl-static:2.0.12.Final",
279 sha1 = "b884be1450a7fd0854b98743836b8ccb0dfd75a4",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700280 )
Bogdan Drutu482b6512017-07-11 10:13:23 -0700281
282def io_opencensus_api():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700283 native.maven_jar(
284 name = "io_opencensus_opencensus_api",
285 artifact = "io.opencensus:opencensus-api:0.12.3",
286 sha1 = "743f074095f29aa985517299545e72cc99c87de0",
287 )
Eric Andersonbd32d6f2017-11-08 17:17:26 -0800288
289def io_opencensus_grpc_metrics():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700290 native.maven_jar(
291 name = "io_opencensus_opencensus_contrib_grpc_metrics",
292 artifact = "io.opencensus:opencensus-contrib-grpc-metrics:0.12.3",
293 sha1 = "a4c7ff238a91b901c8b459889b6d0d7a9d889b4d",
294 )
Steve Conover16702962017-11-20 19:48:57 +0100295
David Ostrovsky23fcedf2018-04-26 23:37:57 +0200296def javax_annotation():
Eric Anderson989bc872018-05-15 10:57:03 -0700297 # Use //stub:javax_annotation for neverlink=1 support.
298 native.maven_jar(
299 name = "javax_annotation_javax_annotation_api",
300 artifact = "javax.annotation:javax.annotation-api:1.2",
301 sha1 = "479c1e06db31c432330183f5cae684163f186146",
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700302 )
David Ostrovsky23fcedf2018-04-26 23:37:57 +0200303
Steve Conover16702962017-11-20 19:48:57 +0100304def junit_junit():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700305 native.maven_jar(
306 name = "junit_junit",
307 artifact = "junit:junit:4.12",
308 sha1 = "2973d150c0dc1fefe998f834810d68f278ea58ec",
309 )
Jiangtao Lie7f2f1d2018-02-15 09:28:00 -0800310
311def org_apache_commons_lang3():
Carl Mastrangelob1c461f2018-07-23 17:03:46 -0700312 native.maven_jar(
313 name = "org_apache_commons_commons_lang3",
314 artifact = "org.apache.commons:commons-lang3:3.5",
315 sha1 = "6c6c702c89bfff3cd9e80b04d668c5e190d588c6",
316 )
Eric Gribkoff79b24702018-08-09 09:09:21 -0700317
318def org_codehaus_mojo_animal_sniffer_annotations():
319 native.maven_jar(
320 name = "org_codehaus_mojo_animal_sniffer_annotations",
321 artifact = "org.codehaus.mojo:animal-sniffer-annotations:1.17",
322 sha1 = "f97ce6decaea32b36101e37979f8b647f00681fb",
323 )