diff --git a/WORKSPACE b/WORKSPACE index 92ffdee023..67c7f5117c 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -12,6 +12,10 @@ load("@rules_rust//bindgen:repositories.bzl", "rust_bindgen_repositories") rust_bindgen_repositories() +load("@rules_rust//tools/rust_analyzer/raze:crates.bzl", "rules_rust_tools_rust_analyzer_fetch_remote_crates") + +rules_rust_tools_rust_analyzer_fetch_remote_crates() + load("@rules_rust//wasm_bindgen:repositories.bzl", "rust_wasm_bindgen_repositories") rust_wasm_bindgen_repositories() diff --git a/docs/BUILD b/docs/BUILD index b4c4702bec..945d56605b 100644 --- a/docs/BUILD +++ b/docs/BUILD @@ -37,12 +37,20 @@ PAGES = { "rust_benchmark", "rust_test", ], + "rust_analyzer": [ + "rust_analyzer", + "rust_analyzer_aspect", + ], "rust_bindgen": [ "rust_bindgen_library", "rust_bindgen_repositories", "rust_bindgen_toolchain", "rust_bindgen", ], + "rust_clippy": [ + "rust_clippy", + "rust_clippy_aspect", + ], "rust_doc": [ "rust_doc", "rust_doc_test", diff --git a/docs/all.bzl b/docs/all.bzl index 855026aec5..15b2569988 100644 --- a/docs/all.bzl +++ b/docs/all.bzl @@ -38,8 +38,10 @@ load( ) load( "@rules_rust//rust:rust.bzl", + _rust_analyzer = "rust_analyzer", _rust_benchmark = "rust_benchmark", _rust_binary = "rust_binary", + _rust_clippy = "rust_clippy", _rust_doc = "rust_doc", _rust_doc_test = "rust_doc_test", _rust_library = "rust_library", @@ -88,3 +90,6 @@ rust_repositories = _rust_repositories rust_repository_set = _rust_repository_set rust_toolchain_repository = _rust_toolchain_repository rust_toolchain_repository_proxy = _rust_toolchain_repository_proxy + +rust_clippy = _rust_clippy +rust_analyzer = _rust_analyzer diff --git a/docs/flatten.md b/docs/flatten.md index 990c4f03be..20509d9722 100644 --- a/docs/flatten.md +++ b/docs/flatten.md @@ -1,12 +1,16 @@ # Rust rules * [cargo_build_script](#cargo_build_script) +* [rust_analyzer](#rust_analyzer) +* [rust_analyzer_aspect](#rust_analyzer_aspect) * [rust_benchmark](#rust_benchmark) * [rust_binary](#rust_binary) * [rust_bindgen](#rust_bindgen) * [rust_bindgen_library](#rust_bindgen_library) * [rust_bindgen_repositories](#rust_bindgen_repositories) * [rust_bindgen_toolchain](#rust_bindgen_toolchain) +* [rust_clippy](#rust_clippy) +* [rust_clippy_aspect](#rust_clippy_aspect) * [rust_doc](#rust_doc) * [rust_doc_test](#rust_doc_test) * [rust_grpc_library](#rust_grpc_library) @@ -25,6 +29,25 @@ * [rust_wasm_bindgen_toolchain](#rust_wasm_bindgen_toolchain) + + +## rust_analyzer + +
+rust_analyzer(name, targets)
+
+ +Produces a rust-project.json for the given targets. Configure rust-analyzer to load the generated file via the linked projects mechanism. + +**ATTRIBUTES** + + +| Name | Description | Type | Mandatory | Default | +| :------------- | :------------- | :------------- | :------------- | :------------- | +| name | A unique name for this target. | Name | required | | +| targets | List of all targets to be included in the index | List of labels | optional | [] | + + ## rust_benchmark @@ -294,6 +317,60 @@ The tools required for the `rust_bindgen` rule. | rustfmt | The label of a rustfmt executable. If this is provided, generated sources will be formatted. | Label | optional | None | + + +## rust_clippy + +
+rust_clippy(name, deps)
+
+ +Executes the clippy checker on a specific target. + +Similar to `rust_clippy_aspect`, but allows specifying a list of dependencies within the build system. + +For example, given the following example targets: + +```python +package(default_visibility = ["//visibility:public"]) + +load("@rules_rust//rust:rust.bzl", "rust_library", "rust_test") + +rust_library( + name = "hello_lib", + srcs = ["src/lib.rs"], +) + +rust_test( + name = "greeting_test", + srcs = ["tests/greeting.rs"], + deps = [":hello_lib"], +) +``` + +Rust clippy can be set as a build target with the following: + +```python +rust_clippy( + name = "hello_library_clippy", + testonly = True, + deps = [ + ":hello_lib", + ":greeting_test", + ], +) +``` + + +**ATTRIBUTES** + + +| Name | Description | Type | Mandatory | Default | +| :------------- | :------------- | :------------- | :------------- | :------------- | +| name | A unique name for this target. | Name | required | | +| deps | - | List of labels | optional | [] | + + ## rust_doc @@ -811,7 +888,7 @@ Run the test with `bazel build //hello_lib:hello_lib_test`.
 rust_toolchain(name, binary_ext, cargo, clippy_driver, debug_info, default_edition, dylib_ext,
-               exec_triple, opt_level, os, rust_doc, rust_lib, rustc, rustc_lib, rustfmt,
+               exec_triple, opt_level, os, rust_doc, rust_lib, rustc, rustc_lib, rustc_src, rustfmt,
                staticlib_ext, stdlib_linkflags, target_triple)
 
@@ -875,6 +952,7 @@ See @rules_rust//rust:repositories.bzl for examples of defining the @rust_cpuX r | rust_lib | The rust standard library. | Label | optional | None | | rustc | The location of the rustc binary. Can be a direct source or a filegroup containing one item. | Label | optional | None | | rustc_lib | The libraries used by rustc during compilation. | Label | optional | None | +| rustc_src | The source code of rustc. | Label | optional | None | | rustfmt | The location of the rustfmt binary. Can be a direct source or a filegroup containing one item. | Label | optional | None | | staticlib_ext | The extension for static libraries created from rustc. | String | required | | | stdlib_linkflags | Additional linker libs used when std lib is linked, see https://github.com/rust-lang/rust/blob/master/src/libstd/build.rs | List of strings | required | | diff --git a/docs/rust_analyzer.md b/docs/rust_analyzer.md new file mode 100644 index 0000000000..c632956bdb --- /dev/null +++ b/docs/rust_analyzer.md @@ -0,0 +1,23 @@ +# Rust rules +* [rust_analyzer](#rust_analyzer) +* [rust_analyzer_aspect](#rust_analyzer_aspect) + + + +## rust_analyzer + +
+rust_analyzer(name, targets)
+
+ +Produces a rust-project.json for the given targets. Configure rust-analyzer to load the generated file via the linked projects mechanism. + +**ATTRIBUTES** + + +| Name | Description | Type | Mandatory | Default | +| :------------- | :------------- | :------------- | :------------- | :------------- | +| name | A unique name for this target. | Name | required | | +| targets | List of all targets to be included in the index | List of labels | optional | [] | + + diff --git a/docs/rust_clippy.md b/docs/rust_clippy.md new file mode 100644 index 0000000000..8841f0c799 --- /dev/null +++ b/docs/rust_clippy.md @@ -0,0 +1,58 @@ +# Rust rules +* [rust_clippy](#rust_clippy) +* [rust_clippy_aspect](#rust_clippy_aspect) + + + +## rust_clippy + +
+rust_clippy(name, deps)
+
+ +Executes the clippy checker on a specific target. + +Similar to `rust_clippy_aspect`, but allows specifying a list of dependencies within the build system. + +For example, given the following example targets: + +```python +package(default_visibility = ["//visibility:public"]) + +load("@rules_rust//rust:rust.bzl", "rust_library", "rust_test") + +rust_library( + name = "hello_lib", + srcs = ["src/lib.rs"], +) + +rust_test( + name = "greeting_test", + srcs = ["tests/greeting.rs"], + deps = [":hello_lib"], +) +``` + +Rust clippy can be set as a build target with the following: + +```python +rust_clippy( + name = "hello_library_clippy", + testonly = True, + deps = [ + ":hello_lib", + ":greeting_test", + ], +) +``` + + +**ATTRIBUTES** + + +| Name | Description | Type | Mandatory | Default | +| :------------- | :------------- | :------------- | :------------- | :------------- | +| name | A unique name for this target. | Name | required | | +| deps | - | List of labels | optional | [] | + + diff --git a/docs/rust_repositories.md b/docs/rust_repositories.md index 645d5f294e..e5577e0f8d 100644 --- a/docs/rust_repositories.md +++ b/docs/rust_repositories.md @@ -11,7 +11,7 @@
 rust_toolchain(name, binary_ext, cargo, clippy_driver, debug_info, default_edition, dylib_ext,
-               exec_triple, opt_level, os, rust_doc, rust_lib, rustc, rustc_lib, rustfmt,
+               exec_triple, opt_level, os, rust_doc, rust_lib, rustc, rustc_lib, rustc_src, rustfmt,
                staticlib_ext, stdlib_linkflags, target_triple)
 
@@ -75,6 +75,7 @@ See @rules_rust//rust:repositories.bzl for examples of defining the @rust_cpuX r | rust_lib | The rust standard library. | Label | optional | None | | rustc | The location of the rustc binary. Can be a direct source or a filegroup containing one item. | Label | optional | None | | rustc_lib | The libraries used by rustc during compilation. | Label | optional | None | +| rustc_src | The source code of rustc. | Label | optional | None | | rustfmt | The location of the rustfmt binary. Can be a direct source or a filegroup containing one item. | Label | optional | None | | staticlib_ext | The extension for static libraries created from rustc. | String | required | | | stdlib_linkflags | Additional linker libs used when std lib is linked, see https://github.com/rust-lang/rust/blob/master/src/libstd/build.rs | List of strings | required | | diff --git a/examples/hello_lib/BUILD b/examples/hello_lib/BUILD index 0eb7127487..489dd7cf15 100644 --- a/examples/hello_lib/BUILD +++ b/examples/hello_lib/BUILD @@ -1,5 +1,6 @@ load( "@rules_rust//rust:rust.bzl", + "rust_analyzer", "rust_doc", "rust_doc_test", "rust_library", @@ -85,3 +86,8 @@ rust_doc_test( name = "hello_lib_doc_test", dep = ":hello_lib", ) + +rust_analyzer( + name = "hello_rust_analyzer", + targets = [":hello_lib"], +) diff --git a/rust/known_shas.bzl b/rust/known_shas.bzl index 0908df4c5d..d571603970 100644 --- a/rust/known_shas.bzl +++ b/rust/known_shas.bzl @@ -21,6 +21,7 @@ FILE_KEY_TO_SHA = { "2018-10-30/rust-std-beta-x86_64-unknown-freebsd": "5aef62464a5580ab6b38c9e54203db12f90ad42de538b7a5eefc7778b55b6497", "2018-10-30/rust-std-beta-x86_64-unknown-linux-gnu": "34996a688d6a4c3587f873b0a8c86fe1d2fee2a269b6e669b1cb8c6908fb77b8", "2018-10-30/rustc-beta-aarch64-unknown-linux-gnu": "e6bb89261baa494ef98239bde9821b66671de5cd78352a9c100abce3a18ca250", + "2018-10-30/rustc-beta-src": "4dfc6db5f3cbe760c089d498b4190e49e778ac677c72f6bfc9325fc140f12483", "2018-10-30/rustc-beta-x86_64-apple-darwin": "22153f359b8b98341aa0349233112fff2b9f092988f9d678626207ba29666b5b", "2018-10-30/rustc-beta-x86_64-pc-windows-msvc": "9cd8225f1307aab95b439dbecd70aaa35e03c913ba0897dc7fe3a04755fc15b1", "2018-10-30/rustc-beta-x86_64-unknown-freebsd": "e207562cd5e3a17497e029bcb1cab56d9fa474d788906f13e389a3cb804ea4d6", @@ -47,6 +48,7 @@ FILE_KEY_TO_SHA = { "2018-11-01/rust-std-beta-x86_64-unknown-freebsd": "eed13a5c36c0731b01b8926f26be5b054c341a0487628fca688e8e99f33b200b", "2018-11-01/rust-std-beta-x86_64-unknown-linux-gnu": "f38a224bccfc89bd0d598764363271985d0b2696123ea10de6399c4cc7dd8adb", "2018-11-01/rustc-beta-aarch64-unknown-linux-gnu": "acf359a4cecfc827f5ca4255c0492d46223d09d535444f0b303678918944c87c", + "2018-11-01/rustc-beta-src": "b2723ad2ca3c643b60a7ea1f1f1184aa8af9f7c2570f199ff5971d47791b4145", "2018-11-01/rustc-beta-x86_64-apple-darwin": "64b5a5fc8b3dc348395137df2c422adbf483168c58af5cd9acc8522dd9b4392b", "2018-11-01/rustc-beta-x86_64-pc-windows-msvc": "71cbfd2793f6b55653f5ef4bdf0350dfe6d9b0952d518a3a355044ec7caa03c2", "2018-11-01/rustc-beta-x86_64-unknown-freebsd": "51a5370f1776229bede506e5ab05da7cfeb5bd21a5374561acb4b7138c75d508", @@ -73,6 +75,7 @@ FILE_KEY_TO_SHA = { "2018-11-02/rust-std-beta-x86_64-unknown-freebsd": "4661fdd15b5cee0fafd4c9cb085d0614abab0b2b1d62a55540b3d4d2634c4ba7", "2018-11-02/rust-std-beta-x86_64-unknown-linux-gnu": "3e2f68697620e501a9439bb7923f5676c82f7a4b4aaf822a141188c92619fe13", "2018-11-02/rustc-beta-aarch64-unknown-linux-gnu": "d703f1cdecd77aba85024db5e94f13e50c74e66af21091107c7cd67a3179da15", + "2018-11-02/rustc-beta-src": "a0610ac06b0d9655e5d46794cc9b5e6479e2f2f8a8aeb86472760b66b81b0366", "2018-11-02/rustc-beta-x86_64-apple-darwin": "199a0776ad4f1406b8b6f477d12c58858816f07246d52842384e1084d8c9000e", "2018-11-02/rustc-beta-x86_64-pc-windows-msvc": "a4fd3838f4459a151e83d540784953cd80c5a1a68fe3bf965399c1f07f6476bb", "2018-11-02/rustc-beta-x86_64-unknown-freebsd": "f931cb44b892dc3899c9379238d8f51d35c9503db9e93ce5700f3121712c9b62", @@ -99,6 +102,7 @@ FILE_KEY_TO_SHA = { "2018-11-07/rust-std-nightly-x86_64-unknown-freebsd": "ca648e7eb243cec32dc5a1b4e2fe6d67c2a00be56326e4d7aec9f2bbeb4dc138", "2018-11-07/rust-std-nightly-x86_64-unknown-linux-gnu": "bd8daba5c2d36e261da6f0ea8b5893e7fe94252eca7478d581c036fc1acb7c36", "2018-11-07/rustc-nightly-aarch64-unknown-linux-gnu": "11caf45fef229d85efb36cdbcf955d95fae648c27ca4ffd153bad316eb58793a", + "2018-11-07/rustc-nightly-src": "0b048ce086ce939964333aef3917de0f51a6dfb81b3b4ce846f98b439651f129", "2018-11-07/rustc-nightly-x86_64-apple-darwin": "cddecdb0d595cb8b944bf70b2284f557743f5637536f2181ad0036806cf56217", "2018-11-07/rustc-nightly-x86_64-pc-windows-msvc": "479f58f34616b83c003fa29e68ee84c91ee5521038f255a7cd3b597a2f5082d0", "2018-11-07/rustc-nightly-x86_64-unknown-freebsd": "47f81ec8c4ebbcd4e948033b5db72c1e9bec6f284fdaa5bdf59bcc92b075333f", @@ -125,6 +129,7 @@ FILE_KEY_TO_SHA = { "2018-11-08/rust-std-nightly-x86_64-unknown-freebsd": "64aabfec15a2b773c27892e58514161cb05ab370e3291beb1cafc7d270772389", "2018-11-08/rust-std-nightly-x86_64-unknown-linux-gnu": "efb8f6f6aa2c5a3f1c069e05b74fde6a85985837054faf3bc565d839902efedc", "2018-11-08/rustc-nightly-aarch64-unknown-linux-gnu": "494173aa705efeef4df2d88278608bd71b477183d85a670a577051c76c5ee99c", + "2018-11-08/rustc-nightly-src": "e95ffea78eb6e37a420ac14c50b5d6877af7005b181f5a05cca3d8c642325c64", "2018-11-08/rustc-nightly-x86_64-apple-darwin": "316e7727a136a82a20832a69b18f74add335e9b659fa7e0d8c7d12c0d11224b7", "2018-11-08/rustc-nightly-x86_64-pc-windows-msvc": "489cb54446374eccc78eca18aa86b4159d47fdfa7bab0ea9a20cb68fa4d80071", "2018-11-08/rustc-nightly-x86_64-unknown-freebsd": "874b7055e0cb609ce34d38456bda888865c63fcbc7abac5aad147f2a21a7d147", @@ -151,6 +156,7 @@ FILE_KEY_TO_SHA = { "2018-11-09/rust-std-nightly-x86_64-unknown-freebsd": "ab8a32d8efb0ab4686526c6cf1380161e87a89015464f5d5f5438c99723675c7", "2018-11-09/rust-std-nightly-x86_64-unknown-linux-gnu": "1418ba09f97c6ba91e2df5ba0b11cf1c53498710bc6a147fe8f4be455a96c4d8", "2018-11-09/rustc-nightly-aarch64-unknown-linux-gnu": "167fec713804d8af1fa4f543e79ca5cee259f1b966b8e04c99efba75901f4c8e", + "2018-11-09/rustc-nightly-src": "9341a72e1616ed0c7b81036f388cf4e87d49f748a09467f9366ab8d7e6d3e664", "2018-11-09/rustc-nightly-x86_64-apple-darwin": "55ca5ad85b0afd61a419e374f8e6320b4f4fe30f8092005cdec9e63103812ea7", "2018-11-09/rustc-nightly-x86_64-pc-windows-msvc": "dd19c5a4b209a9f46dd2f99eb7ec0898bd00accf1c6e8a97222c580bcf62e32a", "2018-11-09/rustc-nightly-x86_64-unknown-freebsd": "bd6bb0228aeab01f425cb2ad55b2e0409b43e79450c2830183a6878cc2d2bdc4", @@ -178,6 +184,7 @@ FILE_KEY_TO_SHA = { "2020-02-16/rust-std-nightly-x86_64-unknown-freebsd": "6575eabdfaed4b0490cdfffcbb5860036dcc36bebdabc58d839c088ff5556a6f", "2020-02-16/rust-std-nightly-x86_64-unknown-linux-gnu": "28a169e9b0f0986a50254caf14be863cf6f1ed3aec8342a7fa756dc1af76f38b", "2020-02-16/rustc-nightly-aarch64-unknown-linux-gnu": "e9cf265820f69331abc9a7c4da0c26febffd4017cf4e6d0840d4ed22b3dd332b", + "2020-02-16/rustc-nightly-src": "605e6753e606a23ce85bbf44566e9c66e8de5df492e3bab1029ea3c4c3c11c10", "2020-02-16/rustc-nightly-x86_64-apple-darwin": "db0338b3e1934147dce0bf6420d9c147caa6aef2db1aca44ca8fef47b7247615", "2020-02-16/rustc-nightly-x86_64-pc-windows-msvc": "d51440d4004e49670c5cf803f96aa222c68f09348bfca46f6e0d4c8728908065", "2020-02-16/rustc-nightly-x86_64-unknown-freebsd": "c76fa125e6d17b16a96b01a875d826f20849b09970b49ed1183601a0e7803f6f", @@ -209,6 +216,7 @@ FILE_KEY_TO_SHA = { "2020-11-10/rust-std-nightly-x86_64-unknown-linux-gnu": "367c14b7fbe98e264b0e4b5a9ddaf3f78ce3ce09bbef4c7be33a3f2abade9ad9", "2020-11-10/rustc-nightly-aarch64-apple-darwin": "a461f2486013b5cec450c8f79230e83878689b803a38df7304adea27b025ef1b", "2020-11-10/rustc-nightly-aarch64-unknown-linux-gnu": "900170006c4c2d88cadc0d915d410588cb80150817e53aa7fca41a459a5ec500", + "2020-11-10/rustc-nightly-src": "c8fb001c1e44e40cae30b7f098b069b7a65343dfa0159a224dc5329266bc59fd", "2020-11-10/rustc-nightly-x86_64-apple-darwin": "7a443dfb068bb7e3854dd6475564da33a57d3f225ce03ad8bc973e8900960b69", "2020-11-10/rustc-nightly-x86_64-pc-windows-msvc": "e7b325e55d372aaf4be400273673711fe78271b655c0b710d62a972b8044b9ef", "2020-11-10/rustc-nightly-x86_64-unknown-freebsd": "3ef55f82aefad5eac4398977d34b1963feb05b1cd654005d385da26624cb2f7e", @@ -261,12 +269,14 @@ FILE_KEY_TO_SHA = { "2020-12-30/rust-std-nightly-x86_64-unknown-linux-gnu": "5b1bd5fa31b9190c66b3446629c155d4896cffc8fb1f9f603a2e949162b7f791", "2020-12-30/rustc-beta-aarch64-apple-darwin": "20107f4541be8822d428c402e010333f2f00aaf086d03b4e35ce8d1bd5c33d5a", "2020-12-30/rustc-beta-aarch64-unknown-linux-gnu": "29e2808cadf8da481a0ace30bf107372dd108b0475706cbe2b9cdd4ff27e2315", + "2020-12-30/rustc-beta-src": "1da2252009705f728e5ff62329b9500884368a3805e3d75079aa45ba0bd42892", "2020-12-30/rustc-beta-x86_64-apple-darwin": "d65df5791d79e13037672d22055ec24583195554cdf7c3c2992cbcafa497e98f", "2020-12-30/rustc-beta-x86_64-pc-windows-msvc": "7f934dd412207c0d776fb4e8ec4c5f4426e92b2a1854416a8ce7bbc2dc7f5908", "2020-12-30/rustc-beta-x86_64-unknown-freebsd": "19818ab53bbd94c6d1723a52809bf1c3a271e258664ea2b3b7d00161965e058c", "2020-12-30/rustc-beta-x86_64-unknown-linux-gnu": "4f5ac3311c913b79dca1a02cf42fd7326c63d53ee252447b61f113c043a82b5f", "2020-12-30/rustc-nightly-aarch64-apple-darwin": "4610961ab77e1bb54bda95474b1c1f25f1fc5c1c103bc4f54758e5b2a5454d8b", "2020-12-30/rustc-nightly-aarch64-unknown-linux-gnu": "c9997c01769a6371200e20639fcae99e6dec3d9062f65b2928429e04d4cb7930", + "2020-12-30/rustc-nightly-src": "e5e00eb7c58ad1a94dbb67b07f400a73faf8bf852bb2a31bd118155bf24a9f6d", "2020-12-30/rustc-nightly-x86_64-apple-darwin": "cf2f06d6c8d784a469561f6323b8b923fb6ad3a7c55c7ac90d5619b9d443ae9f", "2020-12-30/rustc-nightly-x86_64-pc-windows-msvc": "8df3729f3b09cb39fc4b0ecfd90551625941d508f7e776ae4e16fcf02b0af4f3", "2020-12-30/rustc-nightly-x86_64-unknown-freebsd": "f3818645265c3a08cb9fa04d1c2d42be72116974c9c34515feb7d5788e86ac41", @@ -743,168 +753,201 @@ FILE_KEY_TO_SHA = { "rust-std-1.50.0-x86_64-unknown-freebsd": "b9b543a310adef1e8432f7edea63b684369b30dad1c30aa12a57ccdaf8ae0224", "rust-std-1.50.0-x86_64-unknown-linux-gnu": "2aaf284a204d605f6685d2000cf83c25d0e1c789093009801ca16e1c659ae8c6", "rustc-1.26.0-aarch64-unknown-linux-gnu": "ddddaddb585b95d81854171ac4e02d07790505853cee3034f199c8b7897f32e2", + "rustc-1.26.0-src": "4fb09bc4e233b71dcbe08a37a3f38cabc32219745ec6a628b18a55a1232281dd", "rustc-1.26.0-x86_64-apple-darwin": "5cb67314656d16cf2a1bdc84213aaaf6afdb5811825c7afba916e2d42d3d641f", "rustc-1.26.0-x86_64-pc-windows-msvc": "427ae4a43a901be288ff3a4dc85d3a14f7e95108cfdaae63e8dbb4a227e07cdd", "rustc-1.26.0-x86_64-unknown-freebsd": "9499ce5b68d631f8345c387e1f59b21892d97e0acb5650deb61a34719310bd38", "rustc-1.26.0-x86_64-unknown-linux-gnu": "7ca9a30010602aaf2244c376a3cc5baa89429d54da17b8ba1cb0cdfdc846cc61", "rustc-1.26.1-aarch64-unknown-linux-gnu": "7a06bd5312cbe8bb19e526b4c9ab04de1628019815a566ce0ff9401515bc2c04", + "rustc-1.26.1-src": "70a7961bd8ec43b2c01e9896e90b0a06804a7fbe0a5c05acc7fd6fed19500df0", "rustc-1.26.1-x86_64-apple-darwin": "e5f4291c3709b170fbeb17fab7fae50fe0c626dbdc5c42ddb1f342ea03acbad4", "rustc-1.26.1-x86_64-pc-windows-msvc": "e84dca395837aa24b4ea87d46d06a333c2e87d0be5fc5259476a95fbcb05accc", "rustc-1.26.1-x86_64-unknown-freebsd": "dc3dc36010d73349152e6158522e82830fda173007b9299b0a947c90769c54ff", "rustc-1.26.1-x86_64-unknown-linux-gnu": "45bc1c30e0c473c42889f22b182ec6f0b0fc3be0825e1607c64933592486eb2a", "rustc-1.26.2-aarch64-unknown-linux-gnu": "b09fea72e259811fcbc6aade942329bc4588356470765987ee37d6108a82f7b6", + "rustc-1.26.2-src": "fb9ecf304488c9b56600ab20cfd1937482057f7e5db7899fddb86e0774548700", "rustc-1.26.2-x86_64-apple-darwin": "5b0a3d94a4fa76ed28859123e35c09a91d7eb8ff65f40ec4c50dfa56ffed8ae5", "rustc-1.26.2-x86_64-pc-windows-msvc": "15eb657747a86a4481501bb21e2dbcf56a06c0beea00e8677c86ef74b8812576", "rustc-1.26.2-x86_64-unknown-freebsd": "48f20a8dc6bc54c90aae685d0c3fa2caf3677f1c4a4d0c53aee9d15588bd0735", "rustc-1.26.2-x86_64-unknown-linux-gnu": "1ebdafe52b581a63cea217a036fd6e77706d2715ae9cfe10a8c715d753326004", "rustc-1.27.0-aarch64-unknown-linux-gnu": "b58c0373df43623adcc990d36190ee157f46f6fba650d0242632f3df2dfbc425", + "rustc-1.27.0-src": "2cb9803f690349c9fd429564d909ddd4676c68dc48b670b8ddf797c2613e2d21", "rustc-1.27.0-x86_64-apple-darwin": "0b00c6971ef524f68b911f621d199e60c339c390b18e12700d55e012b62aa90c", "rustc-1.27.0-x86_64-pc-windows-msvc": "22eeac4f4b4d91c28cf18c6a4a8b477091e6661e3e827c0b32355d52e634a517", "rustc-1.27.0-x86_64-unknown-freebsd": "24c193213450ffacffebdd1413d77fc3c1ed00049cf1ede2d0f3f370dd86b462", "rustc-1.27.0-x86_64-unknown-linux-gnu": "29f399a1a208ea3f27f21e57f2d832e9d801c397a986aaea17e3a2ddeded6c3c", "rustc-1.27.1-aarch64-unknown-linux-gnu": "c48d19ff5474ce75ebbb97e1b26ca8dc23d38f635ae7a3e21b8a4139df5cfb8e", + "rustc-1.27.1-src": "2133beb01ddc3aa09eebc769dd884533c6cfb08ce684f042497e097068d733d1", "rustc-1.27.1-x86_64-apple-darwin": "747f616e07e5da9323a21c1cf9d76b53bb46094a68223d461a7333f26c714f19", "rustc-1.27.1-x86_64-pc-windows-msvc": "76abfd523f876516e589f62a83eaaa6e55496745e32f2e9f3f87aca55da3e8b8", "rustc-1.27.1-x86_64-unknown-freebsd": "9b199c21094f996fd9d4b620a5ff2c4bc5b8dab13e96bdf7c113291f601ec944", "rustc-1.27.1-x86_64-unknown-linux-gnu": "a6bf6205b345b854d705d0028a4e7161a0f5b209e464130e7d135fa01a296dc1", "rustc-1.27.2-aarch64-unknown-linux-gnu": "c1a5ddc6e40be5eef7afad8c126c6f426d07eb1a297902c7ef871279fdbeea49", + "rustc-1.27.2-src": "9a818c50cdb7880abeaa68b3d97792711e6c64c1cdfb6efdc23f75b8ced0e15d", "rustc-1.27.2-x86_64-apple-darwin": "b5c5edd2094afd0a92ad776dbd12cb6ee37800b940437dece10229ccacd1f561", "rustc-1.27.2-x86_64-pc-windows-msvc": "c00dde7df7475340f5574b09c86d0e19f6707f838bf95d2ff463a8f4d4d76d33", "rustc-1.27.2-x86_64-unknown-freebsd": "66d739632574fa52e82b40aca0eb4cef7a38047ed67cd6a240d8798a3cf9b6a6", "rustc-1.27.2-x86_64-unknown-linux-gnu": "ec3efc17ddbe6625840957049e15ebae960f447c8e8feb7da40c28dd6adf655f", "rustc-1.28.0-aarch64-unknown-linux-gnu": "09d1fa08d7403495ca07565eaabfcbe6703e842b765a68d5110cf4e64e988476", + "rustc-1.28.0-src": "1d5a81729c6f23a0a23b584dd249e35abe9c6f7569cee967cc42b1758ecd6486", "rustc-1.28.0-x86_64-apple-darwin": "10a5bf35177508c72050149663ff679a770eafa8557c6be0052603ca1267ae4d", "rustc-1.28.0-x86_64-pc-windows-msvc": "39871017768fe779dbffaaff8696baf0788bb9c4d6c4caa3d2564e1153ab2199", "rustc-1.28.0-x86_64-unknown-freebsd": "5eeaa17844f87e59aab821dc98dd15a920df0d1d7da3ef5808d2c586331c92a7", "rustc-1.28.0-x86_64-unknown-linux-gnu": "008bb3d714544bc991594b29a98a154441914c4771007130361bbadfb54143d0", "rustc-1.29.0-aarch64-unknown-linux-gnu": "c7480c0b98ae84151ffa8cadcb06d1ed2a11a755b6619ac1b89e7c886e98b7ff", + "rustc-1.29.0-src": "a4eb34ffd47f76afe2abd813f398512d5a19ef00989d37306217c9c9ec2f61e9", "rustc-1.29.0-x86_64-apple-darwin": "3462ba7e841485f93251762ce0b36a3922830a1249e5d79d6d010ceb43e4ee3f", "rustc-1.29.0-x86_64-pc-windows-msvc": "b27c38cb60092e9cac8afc4ad760349821e6b068d986e13ad46233b9676ab35e", "rustc-1.29.0-x86_64-unknown-freebsd": "38f30c96f0fa7ebfe94cd2db57e9b99961feca0a09045dbc1e955404b5d7f40a", "rustc-1.29.0-x86_64-unknown-linux-gnu": "229c51d51efc239e6eb9b428795bb7f57309f11287705dcba4877d5e220102a0", "rustc-1.29.1-aarch64-unknown-linux-gnu": "784ea61ff852225be622141600c79621456f1ad9f9becdf7070eb0217b8635aa", + "rustc-1.29.1-src": "f1b0728b66ce6bce6d72bbe5ea9e3a24ea22a045665da2ed8fcdfad14f61a349", "rustc-1.29.1-x86_64-apple-darwin": "64b86c923786dfafe8bbb5fcbef0d854132f29f0bf635830cd2d95ff225d2317", "rustc-1.29.1-x86_64-pc-windows-msvc": "2675bf444df8fe900b84098917db3e765c87ad3c812ef2a818c7e622d77db457", "rustc-1.29.1-x86_64-unknown-freebsd": "ed9b2ccbfc6028ce2c73105cebebdb9f2e2332018c687951639176358bfed9a2", "rustc-1.29.1-x86_64-unknown-linux-gnu": "b99324394ba20bd12efa9d30dad72b10747bd075f97c7a9fd0ce3f9394383fa7", "rustc-1.29.2-aarch64-unknown-linux-gnu": "54a8c54f04dec72d7f8655ce1c3037dc23ded2f9ada26e7ea77aa45fc8b0d0c5", + "rustc-1.29.2-src": "5088e796aa2e47478cdf41e7243fc5443fafab0a7c70a11423e57c80c04167c9", "rustc-1.29.2-x86_64-apple-darwin": "d9c0dd8127ed632e27d751f051bca933578317ffe891e39155ae721bc1d3ec05", "rustc-1.29.2-x86_64-pc-windows-msvc": "53dcf97ed9461784d713c5a413df7e8e5aa4c9158a4d5921a038b77b17120a17", "rustc-1.29.2-x86_64-unknown-freebsd": "94fba7a7b88ca86c037a48376b7e09bb4ca66e1268fc8d664796cdbdee97c0fa", "rustc-1.29.2-x86_64-unknown-linux-gnu": "b04146b09edc4bad0de7c8fa1a5a2aa4416d365c03c5962b8a5b26c7047b7cc9", "rustc-1.30.0-aarch64-unknown-linux-gnu": "ccff6c6d8386655955265f586862314dd3b646bbeccd1369877f4343b1960a53", + "rustc-1.30.0-src": "cd0ba83fcca55b64c0c9f23130fe731dfc1882b73ae21bef96be8f2362c108ee", "rustc-1.30.0-x86_64-apple-darwin": "d4fcbc61c7323e6fa1001ae268c5db1693ff07e5ef1ac25907138a2ee7bd8faf", "rustc-1.30.0-x86_64-pc-windows-msvc": "2d2d1a51bb15794920a2f0cccf7fd2c8bfb037d00975e799ff4a4ac3b83032ce", "rustc-1.30.0-x86_64-unknown-freebsd": "68a74949e34118406673cf8cc0098b011907c840890e0640aa3b145ce91c521d", "rustc-1.30.0-x86_64-unknown-linux-gnu": "cc45058e9963d33ca28220e752d9e360b7e05f17e34284f5f8197738c3a88444", "rustc-1.30.1-aarch64-unknown-linux-gnu": "f3569c0a74f07aa2e56bf93c9f2aaddf7434ce17f85d6d6ff854fb9245888bcf", + "rustc-1.30.1-src": "36a38902dbd9a3e1240d46ab0f2ca40d2fd07c2ab6508ed7970c6c4c036b5b29", "rustc-1.30.1-x86_64-apple-darwin": "fd8ca09595e9d686aef9e3b94259500b482cf7a01de167a8c72a4f8d19a604f3", "rustc-1.30.1-x86_64-pc-windows-msvc": "8ad1551132de8c766d2d7c66d9bb93a959ebbfa7d86c47f196227fea914583dd", "rustc-1.30.1-x86_64-unknown-freebsd": "2f79e386bed201eb9b6ffa58240742617ec6006accb559dab7b6424f33b65b5f", "rustc-1.30.1-x86_64-unknown-linux-gnu": "d84de208499b59e4a3c074f9f3f2fcbb26fb20d6bfd19262e6d5f4181ddbe34d", "rustc-1.31.0-aarch64-unknown-linux-gnu": "1e480d8cadceff39ad39d30fe874bfd485386c98842f16423310cb2ada1923c0", + "rustc-1.31.0-src": "9ad54dc0baf1db5fc6a79d54e71c439c82aff85cd96778978456f2958211ef06", "rustc-1.31.0-x86_64-apple-darwin": "250fd3f3aba7d38c4af9682a12a37c733dbd6dde127665b0f493551e6c4aea8b", "rustc-1.31.0-x86_64-pc-windows-msvc": "418abc285870ab4d85d53769eac229cd66b7fc7cdaa6e73699530e88ee5dfaf4", "rustc-1.31.0-x86_64-unknown-freebsd": "9ec40454e22e3494b9859c03e37e8851077f897845bcf838d69d4393900e7b33", "rustc-1.31.0-x86_64-unknown-linux-gnu": "5c4581f0fc05f0f5076db6231b0c1a4d27eb61c0b36bfb42d97243ad8f4e43a0", "rustc-1.31.1-aarch64-unknown-linux-gnu": "315ea9c981e4320a557f6c75b58242c0598a90316f610b4dfef5d06e82b927f2", + "rustc-1.31.1-src": "91d2fc22f08d986adab7a54eb3a6a9b99e490f677d2d092e5b9e4e069c23686a", "rustc-1.31.1-x86_64-apple-darwin": "e3f9c5ccd0e6e09da8012f30ee9a1880efebc0c039cc1f3866cf50c984be16a7", "rustc-1.31.1-x86_64-pc-windows-msvc": "0320b7544de463d4444c6445fd2e23044e28fde1173f614145a72a4bcfc6ccd9", "rustc-1.31.1-x86_64-unknown-freebsd": "fb38ad94976c273c0fb95d0b5ba2d1ce90684e58fa06fafc9f8050ba00559f50", "rustc-1.31.1-x86_64-unknown-linux-gnu": "77d47ce7e27a146e4301f11befd43f3fc5ac195ace0dfc07ac8154f130b057ea", "rustc-1.32.0-aarch64-unknown-linux-gnu": "193cbe67161e20a0bf4eeb8bafeb302f3e61a59ca939a0454fc3fbc76e9524cc", + "rustc-1.32.0-src": "4c594c7712a0e7e8eae6526c464bf6ea1d82f77b4f61717c3fc28fb27ba2224a", "rustc-1.32.0-x86_64-apple-darwin": "0334c4568f09cae984e53e4a3f4ff207e2bcc50fce13ad32b8eca89f014e5e61", "rustc-1.32.0-x86_64-pc-windows-msvc": "a7799495d3032c5ad6b5f712f7d7a9538f695c6d8d2e5258c0f7aadac8cea1d4", "rustc-1.32.0-x86_64-unknown-freebsd": "a14a0e288be8ce894a85810151a2eb70fc86afa36e4a5fae4e903c744b888687", "rustc-1.32.0-x86_64-unknown-linux-gnu": "75c31f32e19548c1608611d08b82b87560e02f15caac7b2663a8189a4609977c", "rustc-1.33.0-aarch64-unknown-linux-gnu": "e23141cc65d1d8e3957a96f3a601bdb7a9d09026ac20396aeaebd2613ea0d08e", + "rustc-1.33.0-src": "5a01a8d7e65126f6079042831385e77485fa5c014bf217e9f3e4aff36a485d94", "rustc-1.33.0-x86_64-apple-darwin": "ea1f0a95015bbefba9eac5890b12ee2887f464822ab579c8bbc2db3023c6dd08", "rustc-1.33.0-x86_64-pc-windows-msvc": "b935a78d072b9ae91ff8ddf9155df95d77fd8a1c6293e39df3c65b18d860320e", "rustc-1.33.0-x86_64-unknown-freebsd": "8bfc7fc50c50294cf4ded35360b41b590180401a0d2e84256f5931c7c1ff35cd", "rustc-1.33.0-x86_64-unknown-linux-gnu": "54a342f718b712d8a17fd7878ebd37d22a82ebc70b59c421168cd4153fd04c2b", "rustc-1.34.0-aarch64-unknown-linux-gnu": "364328a40c7aa5749be80b13a14466149a559205e34aef3d8823dc2580f55921", + "rustc-1.34.0-src": "7ac85acffd79dd3a7c44305d9eaabd1f1e7116e2e6e11e770e4bf5f92c0f1f59", "rustc-1.34.0-x86_64-apple-darwin": "2044d44f01a8aa7fb3382f35fc839facfde4fc1eb6f951ead42aef954e317088", "rustc-1.34.0-x86_64-pc-windows-msvc": "371f9abd2bc615b339dfd606d93e6b4892594fd86084d513e07a9f80ff21a828", "rustc-1.34.0-x86_64-unknown-freebsd": "522662f147d0550e4f4f49026b4ebcc5e05a0935fa88acc9b99da5d7435755aa", "rustc-1.34.0-x86_64-unknown-linux-gnu": "5852e84dd30e4a552a7cd4d7c0172648d7ffb4d9ac7078871adbb902c183ffc2", "rustc-1.35.0-aarch64-unknown-linux-gnu": "dc06d77e6cdc06693d3b87ce473f151c96bda2c1e5dbba8c0354c54990c64fc2", + "rustc-1.35.0-src": "5a4d637a716bac18d085f44dd87ef48b32195f71b967d872d80280b38cff712d", "rustc-1.35.0-x86_64-apple-darwin": "5b2fb7581332f349c041860479ffdbfec0eebf87fc3016146836b8868afc3ae5", "rustc-1.35.0-x86_64-pc-windows-msvc": "df4f94d29d10fde2486d9fac3247a566d99a2b7f97fa6ebd416f308b804f7693", "rustc-1.35.0-x86_64-unknown-freebsd": "d3b5a6cfa41264e1873287bdb89892a7edc40333d581f468890c68336f50a601", "rustc-1.35.0-x86_64-unknown-linux-gnu": "bb3a07a1f2fdc3eeeee25fc40131d3f05494e3838dfd4e9275475ffc500d7a9e", "rustc-1.36.0-aarch64-unknown-linux-gnu": "62e40e0677032ae0cd91a7f8b4450dbaaf5223050a05b28a9174802d09691da6", + "rustc-1.36.0-src": "04c4e4d7213d036d6aaed392841496d272146312c0290f728b7400fccd15bb1b", "rustc-1.36.0-x86_64-apple-darwin": "97568272717ffa62dbf4459dff6086e69c808df252a912146e28468412667013", "rustc-1.36.0-x86_64-pc-windows-msvc": "4c131f68eac74bc20315eda097578c43de2b695445739462a4b273f90a131ffc", "rustc-1.36.0-x86_64-unknown-freebsd": "c2dd0cec49b054ed9439762fb31555b8df9a3d81747b194f7d3afbc6d8adb8de", "rustc-1.36.0-x86_64-unknown-linux-gnu": "7c149fa1695b41e8e1edcb95dca199522889f119be99f922741084d50470a9e5", "rustc-1.37.0-aarch64-unknown-linux-gnu": "721ba21dbe9b350a8c50a4c783c76ba3f6926525480518851dd6ba92ecdb042c", + "rustc-1.37.0-src": "120e7020d065499cc6b28759ff04153bfdc2ac9b5adeb252331a4eb87cbe38c3", "rustc-1.37.0-x86_64-apple-darwin": "00d4d15b4d9a4d188e0db8bbc17cd5f0c3c3a87ad681e80ef15580c0d5bd4ff3", "rustc-1.37.0-x86_64-pc-windows-msvc": "790bdb5b57f397d7481151ad8715f7ac3f32b343efaf2922650f4fc6e374d7d7", "rustc-1.37.0-x86_64-unknown-freebsd": "a4dd357a0b39abf1ebbe8a0f64973c3b0c5bc527e374c12afe51266279fc1ca6", "rustc-1.37.0-x86_64-unknown-linux-gnu": "c759b318f333639a45f29c1551ca7ce55b1bf64e0fc3a3357d6b9356885d1626", "rustc-1.38.0-aarch64-unknown-linux-gnu": "0c787eaf01b5779b5a0c12bd0573901cf1b58e5e484ad44c3530b7ed51754d15", + "rustc-1.38.0-src": "644263ca7c7106f8ee8fcde6bb16910d246b30668a74be20b8c7e0e9f4a52d80", "rustc-1.38.0-x86_64-apple-darwin": "ac34aee5a5f67003b8f7f857ddb1fa68f89a32680a591ab77561282721b75256", "rustc-1.38.0-x86_64-pc-windows-msvc": "6e00ee5f34c552c1b9fafec3b7a1330140c820a2ae4bd4213d2c4f135341a88d", "rustc-1.38.0-x86_64-unknown-freebsd": "1d99318bbdc947c6dc375215f0eddcd767348c309811cd141e5d18e17d5aaaa4", "rustc-1.38.0-x86_64-unknown-linux-gnu": "790a611695fabd12c3a141efa58b3dc5913d749947c1a95d3f5b6eb5476ee612", "rustc-1.39.0-aarch64-unknown-linux-gnu": "c64fc482404277fdb160a4b593b0be5a1b0c32d985464595015295321d111621", + "rustc-1.39.0-src": "b4a1f6b6a93931f270691aba4fc85eee032fecda973e6b9c774cd06857609357", "rustc-1.39.0-x86_64-apple-darwin": "9347ffb47e936fb44666ada525f8bfb86758a719e7c0330e93e17bbd5f3623be", "rustc-1.39.0-x86_64-pc-windows-msvc": "9a94785fdb473079d02f32bded6691322688001dcc16f5bfb582c1d181d3ef67", "rustc-1.39.0-x86_64-unknown-freebsd": "3714bf7bd4163a3bfe18291d49acaeda02f4bf2beb9fe36c520d2ecdc29ca031", "rustc-1.39.0-x86_64-unknown-linux-gnu": "333399dbf96dd6b8a9dc9cc56b1cb5d8aac2296b4e4aa857bd59d906d6df6fa1", "rustc-1.40.0-aarch64-unknown-linux-gnu": "8981d500261ecfec93c4b52e8f96a81c705b56ff9317d63e0363d11a72ee09a0", + "rustc-1.40.0-src": "dd97005578defc10a482bff3e4e728350d2099c60ffcf1f5e189540c39a549ad", "rustc-1.40.0-x86_64-apple-darwin": "f45bb00a9a59ca819a8266e9de77f7232f4b704d64f1c45d3870e2db4f646a77", "rustc-1.40.0-x86_64-pc-windows-msvc": "16299638792b7bffb63ca20674a7196a33d1fb25e91083b90f8015be010eec19", "rustc-1.40.0-x86_64-unknown-freebsd": "65810804d3e4cf8f845978c6226f8e23d77a7ccf35ebafdd5f8dac027627f396", "rustc-1.40.0-x86_64-unknown-linux-gnu": "5085a26abdc932fd9339aab2078084f9ab654f8298ad9f301611ac41ba8eca19", "rustc-1.41.0-aarch64-unknown-linux-gnu": "9d994935f92088c968f520f558a88b140bb7d60e917fc4ad69019e2b830b1db7", + "rustc-1.41.0-src": "5546822c09944c4d847968e9b7b3d0e299f143f307c00fa40e84a99fabf8d74b", "rustc-1.41.0-x86_64-apple-darwin": "25ee8865e21007c282cd1f3457c3bf932591337c3044e55ba574fc988bead3ad", "rustc-1.41.0-x86_64-pc-windows-msvc": "b338afb534be113f179252f8de29195e201dcd8bf4053b1d5e8eef928c457ca3", "rustc-1.41.0-x86_64-unknown-freebsd": "de3386f79a0e261b8f6133dc0d5a7d51b70ad73dba5a14dd30204ac285d04f3a", "rustc-1.41.0-x86_64-unknown-linux-gnu": "531b4cc77cc25e960aafa2ebaee073c137fceb0004447c6b7274557281c62a6d", "rustc-1.42.0-aarch64-unknown-linux-gnu": "612c10793852fd0c2e52b30f3d50dd6aef6f8181032b820eddefc93e3bf4d97b", + "rustc-1.42.0-src": "d2e8f931d16a0539faaaacd801e0d92c58df190269014b2360c6ab2a90ee3475", "rustc-1.42.0-x86_64-apple-darwin": "778dea93d7e46261e2c06cadec35b68f9857604f279ce6fbd1b37c1a89634625", "rustc-1.42.0-x86_64-pc-windows-msvc": "d132f99df49cb0d421f6d8948a268d4eddb1ae23e0af2641272438998503708b", "rustc-1.42.0-x86_64-unknown-freebsd": "e6e36a7df9886b18cce32752f5ac7a8da6977c6a1878fae696340f3843176fe5", "rustc-1.42.0-x86_64-unknown-linux-gnu": "4242a728b850bf6e74db9a95c68e8ed316fa4813b38e6b8bc296396b5f47ea5a", "rustc-1.43.0-aarch64-unknown-linux-gnu": "99f26a2b4376fc08203d129d65e15f01b2630db40dd2d4d6a7b917df8d512e72", + "rustc-1.43.0-src": "75f6ac6c9da9f897f4634d5a07be4084692f7ccc2d2bb89337be86cfc18453a1", "rustc-1.43.0-x86_64-apple-darwin": "3723b8194e38d7238262b4cc49762a22037f53f58ab1df199c1d710dad5728a5", "rustc-1.43.0-x86_64-pc-windows-msvc": "c6d1aa60cf2056c4fb35a5a197fb4e1a42887eb4ad1615b00398524ff78ce74c", "rustc-1.43.0-x86_64-unknown-freebsd": "69d572e80e13da85599557f662ce71909823194c874eea0fe91f82da0958fa68", "rustc-1.43.0-x86_64-unknown-linux-gnu": "950b323044ae9a7932b697a2e4f4f62b59248f58faa320e22dc20f8ad9521f6b", "rustc-1.44.0-aarch64-unknown-linux-gnu": "b0fc4cee7119c10f79fe2701ca0d19ab738bd20954352ae5b1dcc4c6f432779a", + "rustc-1.44.0-src": "bf2df62317e533e84167c5bc7d4351a99fdab1f9cd6e6ba09f51996ad8561100", "rustc-1.44.0-x86_64-apple-darwin": "4fd09afcae85f656d4a545ee415e19546e03e34f1ca23be5eaa68c489e3186ab", "rustc-1.44.0-x86_64-pc-windows-msvc": "0b3aec27d86034cbadf4adbaf36308bcf98d97c0979d162ffccf4328fb4f96cd", "rustc-1.44.0-x86_64-unknown-freebsd": "6f3c4e16bbda8719e5c07dc687e84a7236e097da55c4fabea13ef1cbd6a30c40", "rustc-1.44.0-x86_64-unknown-linux-gnu": "52671652e7045df0702d8f2e8af60bf6f20da3e3a5db1aa6022bf9545e914449", "rustc-1.45.0-aarch64-unknown-linux-gnu": "b1ef2ea19142d851f2ee6936cd46a30ec8f157ba53048bc2748279d1e9e0ad17", + "rustc-1.45.0-src": "ba0495f12c7d4e8735f3fa9e036bfafd1ae58c26910393201e95b9d13c80cd7c", "rustc-1.45.0-x86_64-apple-darwin": "fd17d99c3e827f0b4f01b9122d4bf2fca0f1144827300a1eda93718d8642b39f", "rustc-1.45.0-x86_64-pc-windows-msvc": "f65fb383f2c6f979a19acbd4e099e6eea8addc0e76f1fd988582dfc0daa4a121", "rustc-1.45.0-x86_64-unknown-freebsd": "b5d263c53320f8a5dd5daceac1e60da172fd21614ada67f584565430d9d1c9c6", "rustc-1.45.0-x86_64-unknown-linux-gnu": "3ef2fcf818c133c3e9957441917b23ea536805efd0ff9ac6ee0bea349d703a90", "rustc-1.46.0-aarch64-unknown-linux-gnu": "41239ece19c79250a205e5b2fae60b242bba4bf72b687bccc88f011e66a872b6", + "rustc-1.46.0-src": "2d6a3b7196db474ba3f37b8f5d50a1ecedff00738d7846840605b42bfc922728", "rustc-1.46.0-x86_64-apple-darwin": "f690b375df7b1399e5baa69b64932e3e4a3f2b651e5ef2ebc85509bee777a9d9", "rustc-1.46.0-x86_64-pc-windows-msvc": "56badce580b65f59d676b20b4e5f138969e5039182b7f6052ac7da9d38bd0aca", "rustc-1.46.0-x86_64-unknown-freebsd": "e76d3e18d1826753395d881bc37be3d43e9ff8d2d34d49d7ed6105f228d56284", "rustc-1.46.0-x86_64-unknown-linux-gnu": "4c0c740cfb86047ae8131019597f26382a9b8c289eab2f21069f74a5a4976a26", "rustc-1.47.0-aarch64-unknown-linux-gnu": "2e143bfa59eca5c3f3e995c5997ae55c7defe824fb4dbe7e77896e132f42c24b", + "rustc-1.47.0-src": "3185df064c4747f2c8b9bb8c4468edd58ff4ad6d07880c879ac1b173b768d81d", "rustc-1.47.0-x86_64-apple-darwin": "4773ad46b912c859984f1e4466e506dd8102603d1ffcd8b63cfe7522f49e5987", "rustc-1.47.0-x86_64-pc-windows-msvc": "f2010e4500602d0efc431c0853692733415bedb58652376023d7d6ac204f8c7c", "rustc-1.47.0-x86_64-unknown-freebsd": "811f298c07fb32a6a01f9960f2d7dc403f6f288a3f475ed9806648e2cc5938ca", "rustc-1.47.0-x86_64-unknown-linux-gnu": "d96be0ae1deada01f41372ab2c2f485a9f8625069aeaff33c5b513061e9706d4", "rustc-1.48.0-aarch64-unknown-linux-gnu": "9c83a5d18f6ca913eeffd78c53913da288b171ff245137b646a8fd280fe72340", + "rustc-1.48.0-src": "0e763e6db47d5d6f91583284d2f989eacc49b84794d1443355b85c58d67ae43b", "rustc-1.48.0-x86_64-apple-darwin": "846f45f9bd6676e9d1f6758279b48e32564ba23773e69aa89692dbc123dbea5a", "rustc-1.48.0-x86_64-pc-windows-msvc": "395b2a8e6824b3e56a8a9b4598273be5410b4ea64e92c8aeaf900d9ff21f470f", "rustc-1.48.0-x86_64-unknown-freebsd": "fbaff313c2423f1ababc9792332560ca0e3749abf3749e7eb5289bc6515d9424", "rustc-1.48.0-x86_64-unknown-linux-gnu": "aa4a96b010e0d4573e6a1fec230beaadaae6cdce2bb4befeee7b1c081ee9ef8c", "rustc-1.49.0-aarch64-apple-darwin": "3e8c0c9101f27623f7607f2d8acef5f28dcb2bdfcded56f210d9d370cf9a9c06", "rustc-1.49.0-aarch64-unknown-linux-gnu": "b72699cdf74c03ccc0aabab937a69807f2ceb5861f3508593e1c222190c4efc7", + "rustc-1.49.0-src": "b50aefa8df1fdfc9bccafdbf37aee611c8dfe81bf5648d5f43699c50289dc779", "rustc-1.49.0-x86_64-apple-darwin": "09333f9aacb9c5959e2a2798d7e283cae674255f063a35ea28f91595caa0a78b", "rustc-1.49.0-x86_64-pc-windows-msvc": "800b7571438850074aeb0fb9a0e7d890c6785f9f4823b3052b9b0b098bb9ddd4", "rustc-1.49.0-x86_64-unknown-freebsd": "66427837606aba2cda99d4f52161bee1086e98b226a5cb99be8e9a7bf896495f", "rustc-1.49.0-x86_64-unknown-linux-gnu": "42300556b987934e5e4677972c1dfc57eb07731dc62fa9f4f561935a1c84ed0e", "rustc-1.50.0-aarch64-apple-darwin": "3abc090591fb7fd0a292eeff4cc6a029841d39b0a768eaf1f0b9e4e06cba8ed7", "rustc-1.50.0-aarch64-unknown-linux-gnu": "9afe0e968da845981b463beb75f91d6da0d4de5443d1abb6002b75a8cf066ea7", + "rustc-1.50.0-src": "95978f8d02bb6175ae3238930baf03563c240aedf9a70bebdc3eaa2a8c3c5a5e", "rustc-1.50.0-x86_64-apple-darwin": "3637ee8d8bc0f8e922b1f9ec7b6fc00b6efcceae97c337d205a3bc472be7b936", "rustc-1.50.0-x86_64-pc-windows-msvc": "d7f7607c9cd3e137a335904e1186345f4328a971588ee8a54838e32a35a38e3a", "rustc-1.50.0-x86_64-unknown-freebsd": "916e616188638738ff217a047b3fbe372d9ad3734bb466d0e56d2fcefd1da5c6", diff --git a/rust/private/rust_analyzer.bzl b/rust/private/rust_analyzer.bzl new file mode 100644 index 0000000000..545f248236 --- /dev/null +++ b/rust/private/rust_analyzer.bzl @@ -0,0 +1,220 @@ +# Copyright 2020 Google +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +Rust Analyzer Bazel rules. + +rust_analyzer will generate a rust-project.json file for the +given targets. This file can be consumed by rust-analyzer as an alternative +to Cargo.toml files. +""" + +load("//rust/platform:triple_mappings.bzl", "system_to_dylib_ext", "triple_to_system") +load("//rust/private:common.bzl", "rust_common") +load("//rust/private:rustc.bzl", "BuildInfo") +load("//rust/private:utils.bzl", "find_toolchain") + +# We support only these rule kinds. +_rust_rules = [ + "rust_library", + "rust_binary", +] + +RustAnalyzerInfo = provider( + doc = "RustAnalyzerInfo holds rust crate metadata for targets", + fields = { + "build_info": "BuildInfo: build info for this crate if present", + "cfgs": "List[String]: features or other compilation --cfg settings", + "crate": "rust_common.crate_info", + "deps": "List[RustAnalyzerInfo]: direct dependencies", + "env": "Dict{String: String}: Environment variables, used for the `env!` macro", + "proc_macro_dylib_path": "File: compiled shared library output of proc-macro rule", + "transitive_deps": "List[RustAnalyzerInfo]: transitive closure of dependencies", + }, +) + +def _rust_analyzer_aspect_impl(target, ctx): + if rust_common.crate_info not in target: + return [] + + toolchain = find_toolchain(ctx) + + # Always add test & debug_assertions (like here: https://github.com/rust-analyzer/rust-analyzer/blob/505ff4070a3de962dbde66f08b6550cda2eb4eab/crates/project_model/src/lib.rs#L379-L381) + cfgs = ["test", "debug_assertions"] + if hasattr(ctx.rule.attr, "crate_features"): + cfgs += ['feature="{}"'.format(f) for f in ctx.rule.attr.crate_features] + if hasattr(ctx.rule.attr, "rustc_flags"): + cfgs += [f[6:] for f in ctx.rule.attr.rustc_flags if f.startswith("--cfg ") or f.startswith("--cfg=")] + + # Save BuildInfo if we find any (for build script output) + build_info = None + for dep in ctx.rule.attr.deps: + if BuildInfo in dep: + build_info = dep[BuildInfo] + + dep_infos = [dep[RustAnalyzerInfo] for dep in ctx.rule.attr.deps if RustAnalyzerInfo in dep] + if hasattr(ctx.rule.attr, "proc_macro_deps"): + dep_infos += [dep[RustAnalyzerInfo] for dep in ctx.rule.attr.proc_macro_deps if RustAnalyzerInfo in dep] + transitive_deps = depset(direct = dep_infos, order = "postorder", transitive = [dep.transitive_deps for dep in dep_infos]) + + crate_info = target[rust_common.crate_info] + return [RustAnalyzerInfo( + crate = crate_info, + cfgs = cfgs, + env = getattr(ctx.rule.attr, "rustc_env", {}), + deps = dep_infos, + transitive_deps = transitive_deps, + proc_macro_dylib_path = find_proc_macro_dylib_path(toolchain, target), + build_info = build_info, + )] + +def find_proc_macro_dylib_path(toolchain, target): + """Find the proc_macro_dylib_path of target. Returns None if target crate is not type proc-macro. + + Args: + toolchain: The current rust toolchain. + target: The current target. + Returns: + (path): The path to the proc macro dylib, or None if this crate is not a proc-macro. + """ + if target[rust_common.crate_info].type != "proc-macro": + return None + + dylib_ext = system_to_dylib_ext(triple_to_system(toolchain.target_triple)) + for action in target.actions: + for output in action.outputs.to_list(): + if output.extension == dylib_ext[1:]: + return output.path + + # Failed to find the dylib path inside a proc-macro crate. + # TODO: Should this be an error? + return None + +rust_analyzer_aspect = aspect( + attr_aspects = ["deps", "proc_macro_deps"], + implementation = _rust_analyzer_aspect_impl, + toolchains = [str(Label("//rust:toolchain"))], + doc = "Annotates rust rules with RustAnalyzerInfo later used to build a rust-project.json", +) + +_exec_root_tmpl = "__EXEC_ROOT__/" + +def _crate_id(crate_info): + """Returns a unique stable identifier for a crate + + Returns: + (string): This crate's unique stable id. + """ + return "ID-" + crate_info.root.path + +def create_crate(ctx, info, crate_mapping): + """Creates a crate in the rust-project.json format + + Args: + ctx (ctx): The rule context + info (RustAnalyzerInfo): The crate RustAnalyzerInfo for the current crate + crate_mapping (dict): A dict of {String:Int} that memoizes crates for deps. + + Returns: + (dict) The crate rust-project.json representation + """ + crate = dict() + crate["display_name"] = info.crate.name + crate["edition"] = info.crate.edition + crate["env"] = {} + + # Switch on external/ to determine if crates are in the workspace or remote. + # TODO: Some folks may want to override this for vendored dependencies. + if info.crate.root.path.startswith("external/"): + crate["is_workspace_member"] = False + crate["root_module"] = _exec_root_tmpl + info.crate.root.path + crate_root = _exec_root_tmpl + info.crate.root.dirname + else: + crate["is_workspace_member"] = True + crate["root_module"] = info.crate.root.path + crate_root = info.crate.root.dirname + + if info.build_info != None: + crate["env"].update({"OUT_DIR": _exec_root_tmpl + info.build_info.out_dir.path}) + crate["source"] = { + # We have to tell rust-analyzer about our out_dir since it's not under the crate root. + "exclude_dirs": [], + "include_dirs": [crate_root, _exec_root_tmpl + info.build_info.out_dir.path], + } + crate["env"].update(info.env) + + deps = [ + {"crate": crate_mapping[_crate_id(d.crate)], "name": d.crate.name} + for d in info.deps + ] + crate["deps"] = deps + crate["cfg"] = info.cfgs + crate["target"] = find_toolchain(ctx).target_triple + if info.proc_macro_dylib_path != None: + crate["proc_macro_dylib_path"] = _exec_root_tmpl + info.proc_macro_dylib_path + return crate + +# This implementation is incomplete because in order to get rustc env vars we +# would need to actually execute the build graph and gather the output of +# cargo_build_script rules. This would require a genrule to actually construct +# the JSON, rather than being able to build it completly in starlark. +# TODO(djmarcin): Run the cargo_build_scripts to gather env vars correctly. +def _rust_project_impl(ctx): + rust_toolchain = find_toolchain(ctx) + sysroot_src = _exec_root_tmpl + rust_toolchain.rust_lib.label.workspace_root + "/lib/rustlib/src/library" + + # Gather all crates and their dependencies into an array. + # Dependencies are referenced by index, so leaves should come first. + crates = [] + crate_mapping = dict() + idx = 0 + for target in ctx.attr.targets: + if RustAnalyzerInfo not in target: + continue + + # Add this crate's transitive deps to the crate mapping and output. + for dep_info in target[RustAnalyzerInfo].transitive_deps.to_list(): + crate_id = _crate_id(dep_info.crate) + if crate_id not in crate_mapping: + crate_mapping[crate_id] = idx + idx += 1 + crates.append(create_crate(ctx, dep_info, crate_mapping)) + + # Add this crate to the crate mapping and output. + crate_id = _crate_id(target[RustAnalyzerInfo].crate) + if crate_id not in crate_mapping: + crate_mapping[crate_id] = idx + idx += 1 + crates.append(create_crate(ctx, target[RustAnalyzerInfo], crate_mapping)) + + # TODO(djmarcin): Use json module once bazel 4.0 is released. + ctx.actions.write(output = ctx.outputs.filename, content = struct( + sysroot_src = sysroot_src, + crates = crates, + ).to_json()) + +rust_analyzer = rule( + attrs = { + "targets": attr.label_list( + aspects = [rust_analyzer_aspect], + doc = "List of all targets to be included in the index", + ), + }, + outputs = { + "filename": "rust-project.json", + }, + implementation = _rust_project_impl, + toolchains = [str(Label("//rust:toolchain"))], + doc = "Produces a rust-project.json for the given targets. Configure rust-analyzer to load the generated file via the linked projects mechanism.", +) diff --git a/rust/private/rustc.bzl b/rust/private/rustc.bzl index 7318f034ff..8eee5d51b3 100644 --- a/rust/private/rustc.bzl +++ b/rust/private/rustc.bzl @@ -48,7 +48,7 @@ AliasableDepInfo = provider( ) DepInfo = provider( - doc = "A provider contianing information about a Crate's dependencies.", + doc = "A provider containing information about a Crate's dependencies.", fields = { "dep_env": "File: File with environment variables direct dependencies build scripts rely upon.", "direct_crates": "depset[CrateInfo]", diff --git a/rust/repositories.bzl b/rust/repositories.bzl index 9ba98d01f3..99c9cd4b9a 100644 --- a/rust/repositories.bzl +++ b/rust/repositories.bzl @@ -265,6 +265,26 @@ def BUILD_for_rustfmt(target_triple): binary_ext = system_to_binary_ext(system), ) +_build_file_for_rustc_src = """\ +load("@rules_rust//rust:toolchain.bzl", "rust_toolchain") + +filegroup( + name = "rustc_src", + srcs = glob( + [ + "lib/rustlib/src/**/*.rs", + ], + ), + visibility = ["//visibility:public"], +) +""" + +def BUILD_for_rustc_src(): + """Emits a BUILD file for the rustc src extracted files.""" + + return _build_file_for_rustc_src + + _build_file_for_clippy_template = """\ load("@rules_rust//rust:toolchain.bzl", "rust_toolchain") @@ -318,6 +338,7 @@ rust_toolchain( cargo = "@{workspace_name}//:cargo", clippy_driver = "@{workspace_name}//:clippy_driver_bin", rustc_lib = "@{workspace_name}//:rustc_lib", + rustc_src = "@{workspace_name}//:rustc_src", binary_ext = "{binary_ext}", staticlib_ext = "{staticlib_ext}", dylib_ext = "{dylib_ext}", @@ -512,6 +533,32 @@ def _load_rust_compiler(ctx): return compiler_build_file +def _load_rust_src(ctx): + """Loads the rust source code. Used by the rust-analyzer rust-project.json generator. + + Args: + ctx (ctx): A repository_ctx. + Returns: + string: The BUILD file contents for the rust source code + """ + tool_suburl = produce_tool_suburl("rustc", "src", ctx.attr.version, ctx.attr.iso_date) + static_rust = ctx.os.environ.get("STATIC_RUST_URL", "https://static.rust-lang.org") + url = "{}/dist/{}.tar.gz".format(static_rust, tool_suburl) + + tool_path = produce_tool_path("rustc", "src", ctx.attr.version) + archive_path = tool_path + ".tar.gz" + ctx.download( + url, + output = archive_path, + sha256 = ctx.attr.sha256s.get(tool_suburl) or FILE_KEY_TO_SHA.get(tool_suburl) or "", + ) + ctx.extract( + archive_path, + output = "lib/rustlib/src", + stripPrefix = tool_path, + ) + return BUILD_for_rustc_src() + def _load_rust_stdlib(ctx, target_triple): """Loads a rust standard library and yields corresponding BUILD for it @@ -594,7 +641,7 @@ def _rust_toolchain_repository_impl(ctx): _check_version_valid(ctx.attr.version, ctx.attr.iso_date) - build_components = [_load_rust_compiler(ctx)] + build_components = [_load_rust_compiler(ctx), _load_rust_src(ctx)] if ctx.attr.rustfmt_version: build_components.append(_load_rustfmt(ctx)) diff --git a/rust/rust.bzl b/rust/rust.bzl index bf6b881e61..1562635820 100644 --- a/rust/rust.bzl +++ b/rust/rust.bzl @@ -28,6 +28,11 @@ load( _rust_test = "rust_test", _rust_test_binary = "rust_test_binary", ) +load( + "//rust/private:rust_analyzer.bzl", + _rust_analyzer = "rust_analyzer", + _rust_analyzer_aspect = "rust_analyzer_aspect", +) load( "//rust/private:rustc.bzl", _error_format = "error_format", @@ -66,7 +71,13 @@ rust_clippy_aspect = _rust_clippy_aspect # See @rules_rust//rust/private:clippy.bzl for a complete description. rust_clippy = _rust_clippy -# See @rules_rust//rust/private:clippy.bzl for a complete description. +# See @rules_rust//rust:private/clippy.bzl for a complete description. + +rust_analyzer_aspect = _rust_analyzer_aspect +# See @rules_rust//rust:private/rust_analyzer.bzl for a complete description. + +rust_analyzer = _rust_analyzer +# See @rules_rust//rust:private/rust_analyzer.bzl for a complete description. error_format = _error_format # See @rules_rust//rust/private:rustc.bzl for a complete description. diff --git a/rust/toolchain.bzl b/rust/toolchain.bzl index 213c021512..359d0fb74c 100644 --- a/rust/toolchain.bzl +++ b/rust/toolchain.bzl @@ -25,6 +25,7 @@ def _rust_toolchain_impl(ctx): cargo = ctx.file.cargo, clippy_driver = ctx.file.clippy_driver, rustc_lib = ctx.attr.rustc_lib, + rustc_src = ctx.attr.rustc_src, rust_lib = ctx.attr.rust_lib, binary_ext = ctx.attr.binary_ext, staticlib_ext = ctx.attr.staticlib_ext, @@ -103,6 +104,9 @@ rust_toolchain = rule( "rustc_lib": attr.label( doc = "The libraries used by rustc during compilation.", ), + "rustc_src": attr.label( + doc = "The source code of rustc.", + ), "rustfmt": attr.label( doc = "The location of the `rustfmt` binary. Can be a direct source or a filegroup containing one item.", allow_single_file = True, diff --git a/tools/rust_analyzer/BUILD b/tools/rust_analyzer/BUILD new file mode 100644 index 0000000000..0e0fe9f3f0 --- /dev/null +++ b/tools/rust_analyzer/BUILD @@ -0,0 +1,15 @@ +load( + "//rust:rust.bzl", + "rust_binary", +) + +rust_binary( + name = "gen_rust_project", + srcs = ["main.rs"], + edition = "2018", + visibility = ["//visibility:public"], + deps = [ + "//tools/rust_analyzer/raze:anyhow", + "//tools/rust_analyzer/raze:structopt", + ], +) diff --git a/tools/rust_analyzer/deps.bzl b/tools/rust_analyzer/deps.bzl new file mode 100644 index 0000000000..322588488b --- /dev/null +++ b/tools/rust_analyzer/deps.bzl @@ -0,0 +1,8 @@ +""" +The dependencies for running the gen_rust_project binary. +""" + +load("//tools/rust_analyzer/raze:crates.bzl", "rules_rust_tools_rust_analyzer_fetch_remote_crates") + +def gen_rust_project_dependencies(): + rules_rust_tools_rust_analyzer_fetch_remote_crates() \ No newline at end of file diff --git a/tools/rust_analyzer/main.rs b/tools/rust_analyzer/main.rs new file mode 100644 index 0000000000..73d64440e2 --- /dev/null +++ b/tools/rust_analyzer/main.rs @@ -0,0 +1,133 @@ +use anyhow::anyhow; +use std::collections::HashMap; +use std::env; +use std::fs; +use std::io::ErrorKind; +use std::path::PathBuf; +use std::process::Command; +use structopt::StructOpt; + +// TODO(david): This shells out to an expected rule in the workspace root //:rust_analyzer that the user must define. +// It would be more convenient if it could automatically discover all the rust code in the workspace if this target does not exist. +fn main() -> anyhow::Result<()> { + let config = parse_config()?; + + let workspace_root = config + .workspace + .as_ref() + .expect("failed to find workspace root, set with --workspace"); + let execution_root = config + .execution_root + .as_ref() + .expect("failed to find execution root, is --workspace set correctly?"); + + build_rust_project_target(&config); + let generated_rust_project = workspace_root.join("bazel-bin").join("rust-project.json"); + let workspace_rust_project = workspace_root.join("rust-project.json"); + + // The generated_rust_project has a template string we must replace with the workspace name. + let generated_json = fs::read_to_string(&generated_rust_project) + .expect("failed to read generated rust-project.json"); + + // Try to remove the existing rust-project.json. It's OK if the file doesn't exist. + match fs::remove_file(&workspace_rust_project) { + Ok(_) => {} + Err(err) if err.kind() == ErrorKind::NotFound => {} + Err(err) => panic!("Unexpected error removing old rust-project.json: {}", err), + } + + // Write the new rust-project.json file. + fs::write( + workspace_rust_project, + generated_json.replace("__EXEC_ROOT__", &execution_root.to_string_lossy()), + ) + .expect("failed to write workspace rust-project.json"); + + Ok(()) +} + +fn build_rust_project_target(config: &Config) { + let output = Command::new(&config.bazel) + .current_dir(config.workspace.as_ref().unwrap()) + .arg("build") + .arg(&config.bazel_analyzer_target) + .output() + .expect("failed to execute bazel process"); + if !output.status.success() { + panic!( + "bazel build failed:({}) of {:?}:\n{}", + output.status, + &config.bazel_analyzer_target, + String::from_utf8_lossy(&output.stderr) + ); + } +} + +// Parse the configuration flags and supplement with bazel info as needed. +fn parse_config() -> anyhow::Result { + let mut config = Config::from_args(); + + // Ensure we know the workspace. If we are under `bazel run`, the + // BUILD_WORKSPACE_DIR environment variable will be present. + if config.workspace.is_none() { + if let Some(ws_dir) = env::var_os("BUILD_WORKSPACE_DIRECTORY") { + config.workspace = Some(PathBuf::from(ws_dir)); + } + } + + if config.workspace.is_some() && config.execution_root.is_some() { + return Ok(config); + } + + // We need some info from `bazel info`. Fetch it now. + let mut bazel_info_command = Command::new(&config.bazel); + bazel_info_command.arg("info"); + if let Some(workspace) = &config.workspace { + bazel_info_command.current_dir(workspace); + } + + // Execute bazel info. + let output = bazel_info_command.output()?; + if !output.status.success() { + return Err(anyhow!( + "Failed to run `bazel info` ({:?}): {}", + output.status, + String::from_utf8_lossy(&output.stderr) + )); + } + + // Extract the output. + let output = String::from_utf8_lossy(&output.stdout.as_slice()); + let bazel_info = output + .trim() + .split("\n") + .map(|line| line.split_at(line.find(":").expect("missing `:` in bazel info output"))) + .map(|(k, v)| (k, (&v[1..]).trim())) + .collect::>(); + + if config.workspace.is_none() { + config.workspace = bazel_info.get("workspace").map(Into::into); + } + if config.execution_root.is_none() { + config.execution_root = bazel_info.get("execution_root").map(Into::into); + } + + Ok(config) +} + +#[derive(Debug, StructOpt)] +struct Config { + // If not specified, uses the result of `bazel info workspace`. + #[structopt(long)] + workspace: Option, + + // If not specified, uses the result of `bazel info execution_root`. + #[structopt(long)] + execution_root: Option, + + #[structopt(long, default_value = "bazel")] + bazel: PathBuf, + + #[structopt(long, default_value = "//:rust_analyzer")] + bazel_analyzer_target: String, +} diff --git a/tools/rust_analyzer/raze/BUILD.bazel b/tools/rust_analyzer/raze/BUILD.bazel new file mode 100644 index 0000000000..b071f0c294 --- /dev/null +++ b/tools/rust_analyzer/raze/BUILD.bazel @@ -0,0 +1,39 @@ +""" +@generated +cargo-raze generated Bazel file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +package(default_visibility = ["//visibility:public"]) + +licenses([ + "notice", # See individual crates for specific licenses +]) + +# Aliased targets +alias( + name = "anyhow", + actual = "@rules_rust_tools_rust_analyzer__anyhow__1_0_38//:anyhow", + tags = [ + "cargo-raze", + "manual", + ], +) + +alias( + name = "structopt", + actual = "@rules_rust_tools_rust_analyzer__structopt__0_3_21//:structopt", + tags = [ + "cargo-raze", + "manual", + ], +) + +# Export file for Stardoc support +exports_files( + [ + "crates.bzl", + ], + visibility = ["//visibility:public"], +) diff --git a/tools/rust_analyzer/raze/Cargo.raze.lock b/tools/rust_analyzer/raze/Cargo.raze.lock new file mode 100644 index 0000000000..1f42f80163 --- /dev/null +++ b/tools/rust_analyzer/raze/Cargo.raze.lock @@ -0,0 +1,230 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +[[package]] +name = "ansi_term" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" +dependencies = [ + "winapi", +] + +[[package]] +name = "anyhow" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afddf7f520a80dbf76e6f50a35bca42a2331ef227a28b3b6dc5c2e2338d114b1" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi", + "libc", + "winapi", +] + +[[package]] +name = "bitflags" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" + +[[package]] +name = "clap" +version = "2.33.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" +dependencies = [ + "ansi_term", + "atty", + "bitflags", + "strsim", + "textwrap", + "unicode-width", + "vec_map", +] + +[[package]] +name = "compile_with_bazel" +version = "0.0.0" +dependencies = [ + "anyhow", + "structopt", +] + +[[package]] +name = "heck" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "hermit-abi" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" +dependencies = [ + "libc", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7282d924be3275cec7f6756ff4121987bc6481325397dde6ba3e7802b1a8b1c" + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" +dependencies = [ + "unicode-xid", +] + +[[package]] +name = "quote" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "strsim" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" + +[[package]] +name = "structopt" +version = "0.3.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c" +dependencies = [ + "clap", + "lazy_static", + "structopt-derive", +] + +[[package]] +name = "structopt-derive" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90" +dependencies = [ + "heck", + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "syn" +version = "1.0.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "textwrap" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" +dependencies = [ + "unicode-width", +] + +[[package]] +name = "unicode-segmentation" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796" + +[[package]] +name = "unicode-width" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" + +[[package]] +name = "unicode-xid" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" + +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + +[[package]] +name = "version_check" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" diff --git a/tools/rust_analyzer/raze/Cargo.toml b/tools/rust_analyzer/raze/Cargo.toml new file mode 100644 index 0000000000..8f3fb7ef27 --- /dev/null +++ b/tools/rust_analyzer/raze/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "compile_with_bazel" +version = "0.0.0" +edition="2018" + +[lib] +path = "fake_lib.rs" + +[dependencies] +anyhow = "1.0" +structopt = "0.3" + +[package.metadata.raze] +genmode = "Remote" +workspace_path = "//tools/rust_analyzer/raze" +gen_workspace_prefix = "rules_rust_tools_rust_analyzer" +rust_rules_workspace_name = "rules_rust" +package_aliases_dir = "." +default_gen_buildrs = true diff --git a/tools/rust_analyzer/raze/crates.bzl b/tools/rust_analyzer/raze/crates.bzl new file mode 100644 index 0000000000..5088704270 --- /dev/null +++ b/tools/rust_analyzer/raze/crates.bzl @@ -0,0 +1,272 @@ +""" +@generated +cargo-raze generated Bazel file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +load("@bazel_tools//tools/build_defs/repo:git.bzl", "new_git_repository") # buildifier: disable=load +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") # buildifier: disable=load +load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe") # buildifier: disable=load + +def rules_rust_tools_rust_analyzer_fetch_remote_crates(): + """This function defines a collection of repos and should be called in a WORKSPACE file""" + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__ansi_term__0_11_0", + url = "https://crates.io/api/v1/crates/ansi_term/0.11.0/download", + type = "tar.gz", + sha256 = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b", + strip_prefix = "ansi_term-0.11.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.ansi_term-0.11.0.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__anyhow__1_0_38", + url = "https://crates.io/api/v1/crates/anyhow/1.0.38/download", + type = "tar.gz", + sha256 = "afddf7f520a80dbf76e6f50a35bca42a2331ef227a28b3b6dc5c2e2338d114b1", + strip_prefix = "anyhow-1.0.38", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.anyhow-1.0.38.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__atty__0_2_14", + url = "https://crates.io/api/v1/crates/atty/0.2.14/download", + type = "tar.gz", + sha256 = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8", + strip_prefix = "atty-0.2.14", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.atty-0.2.14.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__bitflags__1_2_1", + url = "https://crates.io/api/v1/crates/bitflags/1.2.1/download", + type = "tar.gz", + sha256 = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693", + strip_prefix = "bitflags-1.2.1", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.bitflags-1.2.1.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__clap__2_33_3", + url = "https://crates.io/api/v1/crates/clap/2.33.3/download", + type = "tar.gz", + sha256 = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002", + strip_prefix = "clap-2.33.3", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.clap-2.33.3.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__heck__0_3_2", + url = "https://crates.io/api/v1/crates/heck/0.3.2/download", + type = "tar.gz", + sha256 = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac", + strip_prefix = "heck-0.3.2", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.heck-0.3.2.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__hermit_abi__0_1_18", + url = "https://crates.io/api/v1/crates/hermit-abi/0.1.18/download", + type = "tar.gz", + sha256 = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c", + strip_prefix = "hermit-abi-0.1.18", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.hermit-abi-0.1.18.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__lazy_static__1_4_0", + url = "https://crates.io/api/v1/crates/lazy_static/1.4.0/download", + type = "tar.gz", + sha256 = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646", + strip_prefix = "lazy_static-1.4.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.lazy_static-1.4.0.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__libc__0_2_86", + url = "https://crates.io/api/v1/crates/libc/0.2.86/download", + type = "tar.gz", + sha256 = "b7282d924be3275cec7f6756ff4121987bc6481325397dde6ba3e7802b1a8b1c", + strip_prefix = "libc-0.2.86", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.libc-0.2.86.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__proc_macro_error__1_0_4", + url = "https://crates.io/api/v1/crates/proc-macro-error/1.0.4/download", + type = "tar.gz", + sha256 = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c", + strip_prefix = "proc-macro-error-1.0.4", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.proc-macro-error-1.0.4.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__proc_macro_error_attr__1_0_4", + url = "https://crates.io/api/v1/crates/proc-macro-error-attr/1.0.4/download", + type = "tar.gz", + sha256 = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869", + strip_prefix = "proc-macro-error-attr-1.0.4", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.proc-macro-error-attr-1.0.4.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__proc_macro2__1_0_24", + url = "https://crates.io/api/v1/crates/proc-macro2/1.0.24/download", + type = "tar.gz", + sha256 = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71", + strip_prefix = "proc-macro2-1.0.24", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.proc-macro2-1.0.24.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__quote__1_0_9", + url = "https://crates.io/api/v1/crates/quote/1.0.9/download", + type = "tar.gz", + sha256 = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7", + strip_prefix = "quote-1.0.9", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.quote-1.0.9.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__strsim__0_8_0", + url = "https://crates.io/api/v1/crates/strsim/0.8.0/download", + type = "tar.gz", + sha256 = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a", + strip_prefix = "strsim-0.8.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.strsim-0.8.0.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__structopt__0_3_21", + url = "https://crates.io/api/v1/crates/structopt/0.3.21/download", + type = "tar.gz", + sha256 = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c", + strip_prefix = "structopt-0.3.21", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.structopt-0.3.21.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__structopt_derive__0_4_14", + url = "https://crates.io/api/v1/crates/structopt-derive/0.4.14/download", + type = "tar.gz", + sha256 = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90", + strip_prefix = "structopt-derive-0.4.14", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.structopt-derive-0.4.14.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__syn__1_0_60", + url = "https://crates.io/api/v1/crates/syn/1.0.60/download", + type = "tar.gz", + sha256 = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081", + strip_prefix = "syn-1.0.60", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.syn-1.0.60.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__textwrap__0_11_0", + url = "https://crates.io/api/v1/crates/textwrap/0.11.0/download", + type = "tar.gz", + sha256 = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060", + strip_prefix = "textwrap-0.11.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.textwrap-0.11.0.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__unicode_segmentation__1_7_1", + url = "https://crates.io/api/v1/crates/unicode-segmentation/1.7.1/download", + type = "tar.gz", + sha256 = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796", + strip_prefix = "unicode-segmentation-1.7.1", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.unicode-segmentation-1.7.1.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__unicode_width__0_1_8", + url = "https://crates.io/api/v1/crates/unicode-width/0.1.8/download", + type = "tar.gz", + sha256 = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3", + strip_prefix = "unicode-width-0.1.8", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.unicode-width-0.1.8.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__unicode_xid__0_2_1", + url = "https://crates.io/api/v1/crates/unicode-xid/0.2.1/download", + type = "tar.gz", + sha256 = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564", + strip_prefix = "unicode-xid-0.2.1", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.unicode-xid-0.2.1.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__vec_map__0_8_2", + url = "https://crates.io/api/v1/crates/vec_map/0.8.2/download", + type = "tar.gz", + sha256 = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191", + strip_prefix = "vec_map-0.8.2", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.vec_map-0.8.2.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__version_check__0_9_2", + url = "https://crates.io/api/v1/crates/version_check/0.9.2/download", + type = "tar.gz", + sha256 = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed", + strip_prefix = "version_check-0.9.2", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.version_check-0.9.2.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__winapi__0_3_9", + url = "https://crates.io/api/v1/crates/winapi/0.3.9/download", + type = "tar.gz", + sha256 = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419", + strip_prefix = "winapi-0.3.9", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.winapi-0.3.9.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__winapi_i686_pc_windows_gnu__0_4_0", + url = "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download", + type = "tar.gz", + sha256 = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6", + strip_prefix = "winapi-i686-pc-windows-gnu-0.4.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"), + ) + + maybe( + http_archive, + name = "rules_rust_tools_rust_analyzer__winapi_x86_64_pc_windows_gnu__0_4_0", + url = "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download", + type = "tar.gz", + sha256 = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f", + strip_prefix = "winapi-x86_64-pc-windows-gnu-0.4.0", + build_file = Label("//tools/rust_analyzer/raze/remote:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"), + ) diff --git a/tools/rust_analyzer/raze/remote/BUILD.ansi_term-0.11.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.ansi_term-0.11.0.bazel new file mode 100644 index 0000000000..f491d8ad4e --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.ansi_term-0.11.0.bazel @@ -0,0 +1,66 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT" +]) + +# Generated Targets + +# Unsupported target "colours" with type "example" omitted + +rust_library( + name = "ansi_term", + srcs = glob(["**/*.rs"]), + aliases = { + }, + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.11.0", + # buildifier: leave-alone + deps = [ + ] + selects.with_or({ + # cfg(target_os = "windows") + ( + "@rules_rust//rust/platform:i686-pc-windows-msvc", + "@rules_rust//rust/platform:x86_64-pc-windows-msvc", + ): [ + "@rules_rust_tools_rust_analyzer__winapi__0_3_9//:winapi", + ], + "//conditions:default": [], + }), +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.anyhow-1.0.38.bazel b/tools/rust_analyzer/raze/remote/BUILD.anyhow-1.0.38.bazel new file mode 100644 index 0000000000..d40717d2bf --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.anyhow-1.0.38.bazel @@ -0,0 +1,112 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "anyhow_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "default", + "std", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.38", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "anyhow", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + "std", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.38", + # buildifier: leave-alone + deps = [ + ":anyhow_build_script", + ], +) + +# Unsupported target "compiletest" with type "test" omitted + +# Unsupported target "test_autotrait" with type "test" omitted + +# Unsupported target "test_backtrace" with type "test" omitted + +# Unsupported target "test_boxed" with type "test" omitted + +# Unsupported target "test_chain" with type "test" omitted + +# Unsupported target "test_context" with type "test" omitted + +# Unsupported target "test_convert" with type "test" omitted + +# Unsupported target "test_downcast" with type "test" omitted + +# Unsupported target "test_ffi" with type "test" omitted + +# Unsupported target "test_fmt" with type "test" omitted + +# Unsupported target "test_macros" with type "test" omitted + +# Unsupported target "test_repr" with type "test" omitted + +# Unsupported target "test_source" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.atty-0.2.14.bazel b/tools/rust_analyzer/raze/remote/BUILD.atty-0.2.14.bazel new file mode 100644 index 0000000000..01f65c43d0 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.atty-0.2.14.bazel @@ -0,0 +1,89 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT" +]) + +# Generated Targets + +# Unsupported target "atty" with type "example" omitted + +rust_library( + name = "atty", + srcs = glob(["**/*.rs"]), + aliases = { + }, + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.2.14", + # buildifier: leave-alone + deps = [ + ] + selects.with_or({ + # cfg(unix) + ( + "@rules_rust//rust/platform:aarch64-apple-darwin", + "@rules_rust//rust/platform:aarch64-apple-ios", + "@rules_rust//rust/platform:aarch64-linux-android", + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu", + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi", + "@rules_rust//rust/platform:i686-apple-darwin", + "@rules_rust//rust/platform:i686-linux-android", + "@rules_rust//rust/platform:i686-unknown-freebsd", + "@rules_rust//rust/platform:i686-unknown-linux-gnu", + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu", + "@rules_rust//rust/platform:s390x-unknown-linux-gnu", + "@rules_rust//rust/platform:x86_64-apple-darwin", + "@rules_rust//rust/platform:x86_64-apple-ios", + "@rules_rust//rust/platform:x86_64-linux-android", + "@rules_rust//rust/platform:x86_64-unknown-freebsd", + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu", + ): [ + "@rules_rust_tools_rust_analyzer__libc__0_2_86//:libc", + ], + "//conditions:default": [], + }) + selects.with_or({ + # cfg(windows) + ( + "@rules_rust//rust/platform:i686-pc-windows-msvc", + "@rules_rust//rust/platform:x86_64-pc-windows-msvc", + ): [ + "@rules_rust_tools_rust_analyzer__winapi__0_3_9//:winapi", + ], + "//conditions:default": [], + }), +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.bazel b/tools/rust_analyzer/raze/remote/BUILD.bazel new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tools/rust_analyzer/raze/remote/BUILD.bitflags-1.2.1.bazel b/tools/rust_analyzer/raze/remote/BUILD.bitflags-1.2.1.bazel new file mode 100644 index 0000000000..d60959397b --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.bitflags-1.2.1.bazel @@ -0,0 +1,84 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "bitflags_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "default", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.2.1", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "bitflags", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.2.1", + # buildifier: leave-alone + deps = [ + ":bitflags_build_script", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.clap-2.33.3.bazel b/tools/rust_analyzer/raze/remote/BUILD.clap-2.33.3.bazel new file mode 100644 index 0000000000..569965fdf0 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.clap-2.33.3.bazel @@ -0,0 +1,93 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT" +]) + +# Generated Targets + +rust_library( + name = "clap", + srcs = glob(["**/*.rs"]), + aliases = { + }, + crate_features = [ + "ansi_term", + "atty", + "color", + "default", + "strsim", + "suggestions", + "vec_map", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "2.33.3", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__atty__0_2_14//:atty", + "@rules_rust_tools_rust_analyzer__bitflags__1_2_1//:bitflags", + "@rules_rust_tools_rust_analyzer__strsim__0_8_0//:strsim", + "@rules_rust_tools_rust_analyzer__textwrap__0_11_0//:textwrap", + "@rules_rust_tools_rust_analyzer__unicode_width__0_1_8//:unicode_width", + "@rules_rust_tools_rust_analyzer__vec_map__0_8_2//:vec_map", + ] + selects.with_or({ + # cfg(not(windows)) + ( + "@rules_rust//rust/platform:aarch64-apple-darwin", + "@rules_rust//rust/platform:aarch64-apple-ios", + "@rules_rust//rust/platform:aarch64-linux-android", + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu", + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi", + "@rules_rust//rust/platform:i686-apple-darwin", + "@rules_rust//rust/platform:i686-linux-android", + "@rules_rust//rust/platform:i686-unknown-freebsd", + "@rules_rust//rust/platform:i686-unknown-linux-gnu", + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu", + "@rules_rust//rust/platform:s390x-unknown-linux-gnu", + "@rules_rust//rust/platform:wasm32-unknown-unknown", + "@rules_rust//rust/platform:wasm32-wasi", + "@rules_rust//rust/platform:x86_64-apple-darwin", + "@rules_rust//rust/platform:x86_64-apple-ios", + "@rules_rust//rust/platform:x86_64-linux-android", + "@rules_rust//rust/platform:x86_64-unknown-freebsd", + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu", + ): [ + "@rules_rust_tools_rust_analyzer__ansi_term__0_11_0//:ansi_term", + ], + "//conditions:default": [], + }), +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.heck-0.3.2.bazel b/tools/rust_analyzer/raze/remote/BUILD.heck-0.3.2.bazel new file mode 100644 index 0000000000..5526ff36c7 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.heck-0.3.2.bazel @@ -0,0 +1,54 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "heck", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.3.2", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__unicode_segmentation__1_7_1//:unicode_segmentation", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.hermit-abi-0.1.18.bazel b/tools/rust_analyzer/raze/remote/BUILD.hermit-abi-0.1.18.bazel new file mode 100644 index 0000000000..c9123ef065 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.hermit-abi-0.1.18.bazel @@ -0,0 +1,55 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "hermit_abi", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.1.18", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__libc__0_2_86//:libc", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.lazy_static-1.4.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.lazy_static-1.4.0.bazel new file mode 100644 index 0000000000..7fd9b6586f --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.lazy_static-1.4.0.bazel @@ -0,0 +1,57 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "lazy_static", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.4.0", + # buildifier: leave-alone + deps = [ + ], +) + +# Unsupported target "no_std" with type "test" omitted + +# Unsupported target "test" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.libc-0.2.86.bazel b/tools/rust_analyzer/raze/remote/BUILD.libc-0.2.86.bazel new file mode 100644 index 0000000000..8200c0f190 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.libc-0.2.86.bazel @@ -0,0 +1,84 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "libc_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.2.86", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "libc", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.2.86", + # buildifier: leave-alone + deps = [ + ":libc_build_script", + ], +) + +# Unsupported target "const_fn" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-1.0.4.bazel b/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-1.0.4.bazel new file mode 100644 index 0000000000..8db102c667 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-1.0.4.bazel @@ -0,0 +1,101 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "proc_macro_error_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "default", + "syn", + "syn-error", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.4", + visibility = ["//visibility:private"], + deps = [ + "@rules_rust_tools_rust_analyzer__version_check__0_9_2//:version_check", + ], +) + +rust_library( + name = "proc_macro_error", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + "syn", + "syn-error", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + proc_macro_deps = [ + "@rules_rust_tools_rust_analyzer__proc_macro_error_attr__1_0_4//:proc_macro_error_attr", + ], + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.4", + # buildifier: leave-alone + deps = [ + ":proc_macro_error_build_script", + "@rules_rust_tools_rust_analyzer__proc_macro2__1_0_24//:proc_macro2", + "@rules_rust_tools_rust_analyzer__quote__1_0_9//:quote", + "@rules_rust_tools_rust_analyzer__syn__1_0_60//:syn", + ], +) + +# Unsupported target "macro-errors" with type "test" omitted + +# Unsupported target "ok" with type "test" omitted + +# Unsupported target "runtime-errors" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-attr-1.0.4.bazel b/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-attr-1.0.4.bazel new file mode 100644 index 0000000000..eb3834dfdb --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.proc-macro-error-attr-1.0.4.bazel @@ -0,0 +1,85 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "proc_macro_error_attr_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.4", + visibility = ["//visibility:private"], + deps = [ + "@rules_rust_tools_rust_analyzer__version_check__0_9_2//:version_check", + ], +) + +rust_library( + name = "proc_macro_error_attr", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "proc-macro", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.4", + # buildifier: leave-alone + deps = [ + ":proc_macro_error_attr_build_script", + "@rules_rust_tools_rust_analyzer__proc_macro2__1_0_24//:proc_macro2", + "@rules_rust_tools_rust_analyzer__quote__1_0_9//:quote", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.proc-macro2-1.0.24.bazel b/tools/rust_analyzer/raze/remote/BUILD.proc-macro2-1.0.24.bazel new file mode 100644 index 0000000000..c7ec2d701b --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.proc-macro2-1.0.24.bazel @@ -0,0 +1,97 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "proc_macro2_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "default", + "proc-macro", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.24", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "proc_macro2", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + "proc-macro", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.24", + # buildifier: leave-alone + deps = [ + ":proc_macro2_build_script", + "@rules_rust_tools_rust_analyzer__unicode_xid__0_2_1//:unicode_xid", + ], +) + +# Unsupported target "comments" with type "test" omitted + +# Unsupported target "features" with type "test" omitted + +# Unsupported target "marker" with type "test" omitted + +# Unsupported target "test" with type "test" omitted + +# Unsupported target "test_fmt" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.quote-1.0.9.bazel b/tools/rust_analyzer/raze/remote/BUILD.quote-1.0.9.bazel new file mode 100644 index 0000000000..2fd419e14f --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.quote-1.0.9.bazel @@ -0,0 +1,60 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "quote", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + "proc-macro", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.9", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__proc_macro2__1_0_24//:proc_macro2", + ], +) + +# Unsupported target "compiletest" with type "test" omitted + +# Unsupported target "test" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.strsim-0.8.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.strsim-0.8.0.bazel new file mode 100644 index 0000000000..7ee8a5c454 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.strsim-0.8.0.bazel @@ -0,0 +1,57 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT" +]) + +# Generated Targets + +# Unsupported target "benches" with type "bench" omitted + +rust_library( + name = "strsim", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.8.0", + # buildifier: leave-alone + deps = [ + ], +) + +# Unsupported target "lib" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.structopt-0.3.21.bazel b/tools/rust_analyzer/raze/remote/BUILD.structopt-0.3.21.bazel new file mode 100644 index 0000000000..85c4bbaba4 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.structopt-0.3.21.bazel @@ -0,0 +1,151 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # Apache-2.0 from expression "Apache-2.0 OR MIT" +]) + +# Generated Targets + +# Unsupported target "after_help" with type "example" omitted + +# Unsupported target "at_least_two" with type "example" omitted + +# Unsupported target "basic" with type "example" omitted + +# Unsupported target "deny_missing_docs" with type "example" omitted + +# Unsupported target "doc_comments" with type "example" omitted + +# Unsupported target "enum_in_args" with type "example" omitted + +# Unsupported target "enum_tuple" with type "example" omitted + +# Unsupported target "env" with type "example" omitted + +# Unsupported target "example" with type "example" omitted + +# Unsupported target "flatten" with type "example" omitted + +# Unsupported target "gen_completions" with type "example" omitted + +# Unsupported target "git" with type "example" omitted + +# Unsupported target "group" with type "example" omitted + +# Unsupported target "keyvalue" with type "example" omitted + +# Unsupported target "negative_flag" with type "example" omitted + +# Unsupported target "no_version" with type "example" omitted + +# Unsupported target "rename_all" with type "example" omitted + +# Unsupported target "required_if" with type "example" omitted + +# Unsupported target "skip" with type "example" omitted + +# Unsupported target "subcommand_aliases" with type "example" omitted + +# Unsupported target "true_or_false" with type "example" omitted + +rust_library( + name = "structopt", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + proc_macro_deps = [ + "@rules_rust_tools_rust_analyzer__structopt_derive__0_4_14//:structopt_derive", + ], + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.3.21", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__clap__2_33_3//:clap", + "@rules_rust_tools_rust_analyzer__lazy_static__1_4_0//:lazy_static", + ], +) + +# Unsupported target "argument_naming" with type "test" omitted + +# Unsupported target "arguments" with type "test" omitted + +# Unsupported target "author_version_about" with type "test" omitted + +# Unsupported target "custom-string-parsers" with type "test" omitted + +# Unsupported target "default_value" with type "test" omitted + +# Unsupported target "deny-warnings" with type "test" omitted + +# Unsupported target "doc-comments-help" with type "test" omitted + +# Unsupported target "explicit_name_no_renaming" with type "test" omitted + +# Unsupported target "flags" with type "test" omitted + +# Unsupported target "flatten" with type "test" omitted + +# Unsupported target "issues" with type "test" omitted + +# Unsupported target "macro-errors" with type "test" omitted + +# Unsupported target "nested-subcommands" with type "test" omitted + +# Unsupported target "non_literal_attributes" with type "test" omitted + +# Unsupported target "options" with type "test" omitted + +# Unsupported target "privacy" with type "test" omitted + +# Unsupported target "raw_bool_literal" with type "test" omitted + +# Unsupported target "raw_idents" with type "test" omitted + +# Unsupported target "regressions" with type "test" omitted + +# Unsupported target "rename_all_env" with type "test" omitted + +# Unsupported target "skip" with type "test" omitted + +# Unsupported target "special_types" with type "test" omitted + +# Unsupported target "subcommands" with type "test" omitted + +# Unsupported target "utils" with type "test" omitted + +# Unsupported target "we_need_syn_full" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.structopt-derive-0.4.14.bazel b/tools/rust_analyzer/raze/remote/BUILD.structopt-derive-0.4.14.bazel new file mode 100644 index 0000000000..3de6f7ff68 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.structopt-derive-0.4.14.bazel @@ -0,0 +1,58 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # Apache-2.0 from expression "Apache-2.0 OR MIT" +]) + +# Generated Targets + +rust_library( + name = "structopt_derive", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "proc-macro", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.4.14", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__heck__0_3_2//:heck", + "@rules_rust_tools_rust_analyzer__proc_macro2__1_0_24//:proc_macro2", + "@rules_rust_tools_rust_analyzer__proc_macro_error__1_0_4//:proc_macro_error", + "@rules_rust_tools_rust_analyzer__quote__1_0_9//:quote", + "@rules_rust_tools_rust_analyzer__syn__1_0_60//:syn", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.syn-1.0.60.bazel b/tools/rust_analyzer/raze/remote/BUILD.syn-1.0.60.bazel new file mode 100644 index 0000000000..581a6ab1c1 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.syn-1.0.60.bazel @@ -0,0 +1,157 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "syn_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "clone-impls", + "default", + "derive", + "full", + "parsing", + "printing", + "proc-macro", + "quote", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.60", + visibility = ["//visibility:private"], + deps = [ + ], +) + +# Unsupported target "file" with type "bench" omitted + +# Unsupported target "rust" with type "bench" omitted + +rust_library( + name = "syn", + srcs = glob(["**/*.rs"]), + crate_features = [ + "clone-impls", + "default", + "derive", + "full", + "parsing", + "printing", + "proc-macro", + "quote", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.0.60", + # buildifier: leave-alone + deps = [ + ":syn_build_script", + "@rules_rust_tools_rust_analyzer__proc_macro2__1_0_24//:proc_macro2", + "@rules_rust_tools_rust_analyzer__quote__1_0_9//:quote", + "@rules_rust_tools_rust_analyzer__unicode_xid__0_2_1//:unicode_xid", + ], +) + +# Unsupported target "test_asyncness" with type "test" omitted + +# Unsupported target "test_attribute" with type "test" omitted + +# Unsupported target "test_derive_input" with type "test" omitted + +# Unsupported target "test_expr" with type "test" omitted + +# Unsupported target "test_generics" with type "test" omitted + +# Unsupported target "test_grouping" with type "test" omitted + +# Unsupported target "test_ident" with type "test" omitted + +# Unsupported target "test_item" with type "test" omitted + +# Unsupported target "test_iterators" with type "test" omitted + +# Unsupported target "test_lit" with type "test" omitted + +# Unsupported target "test_meta" with type "test" omitted + +# Unsupported target "test_parse_buffer" with type "test" omitted + +# Unsupported target "test_parse_stream" with type "test" omitted + +# Unsupported target "test_pat" with type "test" omitted + +# Unsupported target "test_path" with type "test" omitted + +# Unsupported target "test_precedence" with type "test" omitted + +# Unsupported target "test_receiver" with type "test" omitted + +# Unsupported target "test_round_trip" with type "test" omitted + +# Unsupported target "test_shebang" with type "test" omitted + +# Unsupported target "test_should_parse" with type "test" omitted + +# Unsupported target "test_size" with type "test" omitted + +# Unsupported target "test_stmt" with type "test" omitted + +# Unsupported target "test_token_trees" with type "test" omitted + +# Unsupported target "test_ty" with type "test" omitted + +# Unsupported target "test_visibility" with type "test" omitted + +# Unsupported target "zzz_stable" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.textwrap-0.11.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.textwrap-0.11.0.bazel new file mode 100644 index 0000000000..d63ad5a1ce --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.textwrap-0.11.0.bazel @@ -0,0 +1,62 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT" +]) + +# Generated Targets + +# Unsupported target "linear" with type "bench" omitted + +# Unsupported target "layout" with type "example" omitted + +# Unsupported target "termwidth" with type "example" omitted + +rust_library( + name = "textwrap", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.11.0", + # buildifier: leave-alone + deps = [ + "@rules_rust_tools_rust_analyzer__unicode_width__0_1_8//:unicode_width", + ], +) + +# Unsupported target "version-numbers" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.unicode-segmentation-1.7.1.bazel b/tools/rust_analyzer/raze/remote/BUILD.unicode-segmentation-1.7.1.bazel new file mode 100644 index 0000000000..2b761bdd2d --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.unicode-segmentation-1.7.1.bazel @@ -0,0 +1,55 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +# Unsupported target "graphemes" with type "bench" omitted + +rust_library( + name = "unicode_segmentation", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "1.7.1", + # buildifier: leave-alone + deps = [ + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.unicode-width-0.1.8.bazel b/tools/rust_analyzer/raze/remote/BUILD.unicode-width-0.1.8.bazel new file mode 100644 index 0000000000..d981d0bbb3 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.unicode-width-0.1.8.bazel @@ -0,0 +1,54 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "unicode_width", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.1.8", + # buildifier: leave-alone + deps = [ + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.unicode-xid-0.2.1.bazel b/tools/rust_analyzer/raze/remote/BUILD.unicode-xid-0.2.1.bazel new file mode 100644 index 0000000000..c5185455cd --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.unicode-xid-0.2.1.bazel @@ -0,0 +1,56 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "unicode_xid", + srcs = glob(["**/*.rs"]), + crate_features = [ + "default", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.2.1", + # buildifier: leave-alone + deps = [ + ], +) + +# Unsupported target "exhaustive_tests" with type "test" omitted diff --git a/tools/rust_analyzer/raze/remote/BUILD.vec_map-0.8.2.bazel b/tools/rust_analyzer/raze/remote/BUILD.vec_map-0.8.2.bazel new file mode 100644 index 0000000000..274966f06a --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.vec_map-0.8.2.bazel @@ -0,0 +1,53 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "vec_map", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.8.2", + # buildifier: leave-alone + deps = [ + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.version_check-0.9.2.bazel b/tools/rust_analyzer/raze/remote/BUILD.version_check-0.9.2.bazel new file mode 100644 index 0000000000..d1f1747268 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.version_check-0.9.2.bazel @@ -0,0 +1,53 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets + +rust_library( + name = "version_check", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.9.2", + # buildifier: leave-alone + deps = [ + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.winapi-0.3.9.bazel b/tools/rust_analyzer/raze/remote/BUILD.winapi-0.3.9.bazel new file mode 100644 index 0000000000..b64b7bdbcb --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.winapi-0.3.9.bazel @@ -0,0 +1,94 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "winapi_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + "consoleapi", + "errhandlingapi", + "minwinbase", + "minwindef", + "processenv", + "winbase", + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.3.9", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "winapi", + srcs = glob(["**/*.rs"]), + crate_features = [ + "consoleapi", + "errhandlingapi", + "minwinbase", + "minwindef", + "processenv", + "winbase", + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.3.9", + # buildifier: leave-alone + deps = [ + ":winapi_build_script", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel new file mode 100644 index 0000000000..2d0f24a9e8 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel @@ -0,0 +1,82 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "winapi_i686_pc_windows_gnu_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.4.0", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "winapi_i686_pc_windows_gnu", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.4.0", + # buildifier: leave-alone + deps = [ + ":winapi_i686_pc_windows_gnu_build_script", + ], +) diff --git a/tools/rust_analyzer/raze/remote/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/tools/rust_analyzer/raze/remote/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel new file mode 100644 index 0000000000..08ff48c5d4 --- /dev/null +++ b/tools/rust_analyzer/raze/remote/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel @@ -0,0 +1,82 @@ +""" +@generated +cargo-raze crate build file. + +DO NOT EDIT! Replaced on runs of cargo-raze +""" + +# buildifier: disable=load +load( + "@rules_rust//rust:rust.bzl", + "rust_binary", + "rust_library", + "rust_test", +) + +# buildifier: disable=load +load("@bazel_skylib//lib:selects.bzl", "selects") + +package(default_visibility = [ + # Public for visibility by "@raze__crate__version//" targets. + # + # Prefer access through "//tools/rust_analyzer/raze", which limits external + # visibility to explicit Cargo.toml dependencies. + "//visibility:public", +]) + +licenses([ + "notice", # MIT from expression "MIT OR Apache-2.0" +]) + +# Generated Targets +# buildifier: disable=load-on-top +load( + "@rules_rust//cargo:cargo_build_script.bzl", + "cargo_build_script", +) + +cargo_build_script( + name = "winapi_x86_64_pc_windows_gnu_build_script", + srcs = glob(["**/*.rs"]), + build_script_env = { + }, + crate_features = [ + ], + crate_root = "build.rs", + data = glob(["**"]), + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.4.0", + visibility = ["//visibility:private"], + deps = [ + ], +) + +rust_library( + name = "winapi_x86_64_pc_windows_gnu", + srcs = glob(["**/*.rs"]), + crate_features = [ + ], + crate_root = "src/lib.rs", + crate_type = "lib", + data = [], + edition = "2015", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-raze", + "manual", + ], + version = "0.4.0", + # buildifier: leave-alone + deps = [ + ":winapi_x86_64_pc_windows_gnu_build_script", + ], +) diff --git a/util/fetch_shas_TARGETS.txt b/util/fetch_shas_TARGETS.txt index 4e900e63b4..4d2de81229 100644 --- a/util/fetch_shas_TARGETS.txt +++ b/util/fetch_shas_TARGETS.txt @@ -1,5 +1,6 @@ aarch64-apple-darwin aarch64-unknown-linux-gnu +src wasm32-unknown-unknown wasm32-wasi x86_64-apple-darwin