{"push_id":3078423993,"size":10,"distinct_size":10,"ref":"refs/heads/master","head":"60c362762f2112b4366edc7eeea79ea3122bbae2","before":"4a9d0e0b6c66f1e98d15cbd3cccc8100a0454fc9","commits":[{"sha":"4188d27804c46f4b1cbfb9352e0f859afe3ea490","author":{"name":"Marco Farrugia","email":"70f3d798c99379f98b9d5eca6ac712ba4b350903@gmail.com"},"message":"Replace usages of `ctx.action` with `ctx.actions.{run, run_shell}` (#151)\n\n* refactor rustc_compile_action to use ctx.actions.run\r\n\r\n* refactor rustdoc_test to use ctx.actions.run and simplify setup_deps\r\n\r\n* Add DepInfo provider instead of struct.\r\n- Required making all imports absolute to work around https://github.com/bazelbuild/bazel/issues/3493\r\n\r\n* Use zipper instead of /usr/bin/zip\r\n\r\n* split rustdoc_test into its own file\r\n\r\n* delete last %s","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/4188d27804c46f4b1cbfb9352e0f859afe3ea490"},{"sha":"9a3de26b92e8f4e050d21bc126fc6c373e0acc35","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"STATIC_RUST_URL sets the static.rust-lang.org URL (#143)\n\n* STATIC_RUST_URL sets the static.rust-lang.org URL\r\n\r\nThis change add the STATIC_RUST_URL environment variable to overwrite\r\nthe URL to https://static.rust-lang.org when downloading the rust\r\ntoolchain. This let the user specify using --action_env a mirror of\r\nstatic.rust-lang.org instead.\r\n\r\nThis is particularly useful in China where https://static.rust-lang.org\r\nis really slow. For chinese user, the best way to proceed after this\r\nchange is to add the following line in your ~/.bazelrc:\r\n\r\n```\r\nbuild --action_env STATIC_RUST_URL=http://mirrors.ustc.edu.cn/rust-static\r\n```\r\n\r\n* Adapted comment to reflect the existence of RUST_STATIC_URL","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/9a3de26b92e8f4e050d21bc126fc6c373e0acc35"},{"sha":"a672892f524d9bba5a746f69bef42f88ec9fd409","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"Test rustc flag and feature flags (#153)\n\n* Add flags and features to the default library\r\n\r\nIn order to test those flags, PR #151 broke some usage of those flags that\r\nmake `cargo raze` build file not work any more.\r\n\r\n* Having 2 flags in the same string in rustc is no longer allowed and that's fine\r\n\r\nI'll send a PR to cargo-raze to fix it on cargo raze side rather.\r\n\r\n* Fix the feature passing\r\n\r\nFeatures needs to be quoted on the command line apparently.\r\n\r\n* readability: use single quote to avoid escaping double quotes","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/a672892f524d9bba5a746f69bef42f88ec9fd409"},{"sha":"78fc36d22e69a5113af63d59210a28c7ea55fbb8","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"fix: corner case in indirect crate dependencies (#154)\n\nIf a crate mod2 depends on a crate mod1, that a third crate mod3 depends\r\non mod2 and mod1 (an declare the extern crate in that order) then mod1\r\nis not yet loaded when loading mod2 for compiling mod3 and since neither\r\nare in the list of dependency directory, the compilation fails horribly.","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/78fc36d22e69a5113af63d59210a28c7ea55fbb8"},{"sha":"82a7bc075703ee0b80cb42b65368521dc47791b1","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"Update known_shas to recent versions (#156)\n\nAdd all stable rust version and set the beta and nightly to the last 3\r\navailable.","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/82a7bc075703ee0b80cb42b65368521dc47791b1"},{"sha":"e008ebe9a5462a6cab0618016a233d4ccbd0b832","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"Protobuf support (#92)\n\n* Also add the dependencies in /examples/WORKSPACE\r\n\r\nThis allow to runs the tests in examples as a remote repository\r\nand as a local repository.\r\n\r\n* Add a dummy Cargo craze to use cargo raze on it.\r\n\r\nWith this craze, and cargo raze, we can simply use raze generated repositories\r\nto add the necessary dependencies.\r\n\r\n* Add generated files for the raze package of protobuf\r\n\r\n* Add rust_(proto|grpc)_library\r\n\r\nThose library add protobuf / gRPC support to Rust language in Bazel\r\nusing the native proto_library. It generates one crate per proto_library\r\nwhich is efficient for incrementality but can lead to naming collisions.\r\n\r\nWe expose a bit of rust_library internal to re-use it in rust_proto_library\r\nand create a new provider \"rust_libs\" that will declare a group of rust libraries.\r\n\r\n* Add a gRPC client/server example\r\n\r\nAnd a test with it.\r\n\r\n* Add documentation for the rust_(proto|grpc)_library\r\n\r\n* Use the new runfiles library in the test rather than a custom algorithm\r\n\r\n* Add the missing dependencies to examples/WORKSPACE\r\n\r\nThis new dependency is quite unfortunate, it make using rules_rust\r\nmore complex since it needs to import a bzl file from skylib to be\r\nable to use rules_rust, that adds 10 lines in the WORKSPACE without\r\nmuch improvement. I guess this cannot be better until recursive\r\nworkspace are a thing.\r\n\r\n* Generates cargo raze files compatible with macOS and Linux\r\n\r\nAlso to keep the same lockfile, check in the Cargo.lock and have\r\na lever to not re-run cargo generate-lockfile.\r\n\r\n* Compile all proto stubs in one library\r\n\r\nThis a workaround a bug in Bazel that prevent the toolchain from being\r\nloaded with the target transition (see\r\nhttps://github.com/bazelbuild/bazel/pull/5650).\r\n\r\nThis is not ideal because it recompiles several time the same\r\nproto if you depends on it from several dependency path\r\nand can lead to seeing two compilation of the same proto\r\nas different type. This is also terrible for incremental build\r\nand contrary to the (protobuf blog\r\nentry)[https://blog.bazel.build/2017/02/27/protocol-buffers.html].\r\n\r\n* Force set the lazy_static implementation configuration.\r\n\r\nThe lazy_static crates now set a configuration from the build.rs, ideally we would be\r\nable to handle that but that is not the case with the current cargo raze method.\r\n\r\n* Final touch: documenting and simplifying toolchain creation\r\n\r\n  - Documents how to create your custom toolchain when you need to import\r\n    your own crates (or to use a different protobuf/grpc stubs compiler).\r\n  - Add extra_aliased_targets to simply the cargo-raze generation\r\n  - Use skylark http_archive to import protobuf.\r\n  - Regenerate crates with google/cargo-raze#77 so that we don't need to\r\n    have custom rewriting policy. Hence, deleted the wrapper around\r\n    cargo raze, an update to the build file should simply be\r\n    `cargo genrate-lockfiles && cargo raze` now.\r\n\r\n* Fix nits suggested by @mfarrugi\r\n\r\n* Remove usage of CrateInfos\r\n\r\nThis was a leftover from compiling the crates in the proto aspect.\r\n\r\n* Use python for the optional_output_wrapper\r\n\r\nAlso move the optional_output_wrapper from the toolchain to the library\r\nitself.\r\nFor some reason the runfiles where not shipped to the actions with the\r\nold way which wasn't important for Bash that did not had any runfiles\r\nbut it is important for python.\r\n\r\n* fix: README format\r\n\r\n* Second pass of nits from @mfarrugi\r\n\r\n* fix: add back the list of grpc stubs to create if not created","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/e008ebe9a5462a6cab0618016a233d4ccbd0b832"},{"sha":"7b47f55998b096f93ebfdcbb7b77b119868583e8","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"Fix rust_doc_test with transitive dependencies and add tests for it (#155)\n\n* Test for failure to import crate in rust_doc_test.\r\n\r\nThis test fails with:\r\nerror[E0463]: can't find crate for\r\n --> test/chained_direct_deps/mod3.rs:4:1\r\n  |\r\n4 | extern crate mod1;\r\n  | ^^^^^^^^^^^^^^^^^^ can't find crate\r\n\r\nA git bisect indicate that #122 is the culprit change.\r\n\r\n* fix: doc_test\r\n\r\nBefore #122 the test was wrongly passing.\r\n\r\n* Fix rustdoc_test by using the dependency's providers\r\n\r\nInstead of trying to recreate the DepInfo provider, use directly\r\nthe dep's DepInfo. It allows to correctly add all the direct\r\ndeps to the command line.\r\n\r\n* Exclude rust_doc_test from RBE\r\n\r\nAll other rust_doc_test are already excluded.","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/7b47f55998b096f93ebfdcbb7b77b119868583e8"},{"sha":"3cc196de6b493c0f4641183e6da1d23dae7361ac","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"doc: change reference to proto_compile into proto_library (#158)\n\nproto_compile was the name from rules_proto and proto_library is the\r\nactual correct name for native proto support in Bazel.","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/3cc196de6b493c0f4641183e6da1d23dae7361ac"},{"sha":"a04407d0af63af35d73c6bda407005a6dd2a6227","author":{"name":"Damien Martin-Guillerez","email":"a2bdd1a3dee7b2b127c01213fe2dd65dd6f701e5@users.noreply.github.com"},"message":"Clean-up the output directory before creating it(#159)\n\nFixes bazelbuild/continuous-integration#379","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/a04407d0af63af35d73c6bda407005a6dd2a6227"},{"sha":"60c362762f2112b4366edc7eeea79ea3122bbae2","author":{"name":"Laurent Le Brun","email":"7522206e23e880d0649aec7a195d2d4f59c2ce1a@gmail.com"},"message":"Cleanups for compatibility with future Bazel releases (#162)\n\n* Cleanups for compatibility with future Bazel releases\r\n\r\nMany of the changes were made using Buildifier (which is why the files\r\nare reformatted).\r\n\r\nAlso, update some of the dependencies\r\n\r\n* Add TODO for depsets","distinct":true,"url":"https://api.github.com/repos/dforsyth/rules_rust/commits/60c362762f2112b4366edc7eeea79ea3122bbae2"}]}
{"actor":{"display_login":"dforsyth"}}