diff --git a/.bazelci/presubmit.yml b/.bazelci/presubmit.yml new file mode 100644 index 000000000..1aded866e --- /dev/null +++ b/.bazelci/presubmit.yml @@ -0,0 +1,380 @@ +--- +tasks: + ubuntu1604: + environment: + CC: clang + test_targets: + - "//example/routeguide/..." + build_targets: + - "//android/..." + - "//closure/..." + - "//cpp/..." + - "//csharp/..." + - "//d/..." + - "//dart/..." + - "//go/..." + - "//java/..." + - "//node/..." + - "//objc/..." + - "//php/..." + - "//python/..." + - "//scala/..." + - "//github.com/gogo/protobuf/..." + - "//github.com/grpc-ecosystem/grpc-gateway/..." + - "//github.com/stackb/grpc.js/..." + - "//github.com/grpc/grpc-web/..." + android_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/android/android_proto_compile + android_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/android/android_grpc_compile + android_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/android/android_proto_library + android_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/android/android_grpc_library + closure_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/closure/closure_proto_compile + closure_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/closure/closure_proto_library + cpp_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/cpp/cpp_proto_compile + cpp_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/cpp/cpp_grpc_compile + cpp_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/cpp/cpp_proto_library + cpp_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/cpp/cpp_grpc_library + csharp_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/csharp/csharp_proto_compile + csharp_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/csharp/csharp_grpc_compile + csharp_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/csharp/csharp_proto_library + csharp_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/csharp/csharp_grpc_library + d_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/d/d_proto_compile + dart_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/dart/dart_proto_compile + dart_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/dart/dart_grpc_compile + dart_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/dart/dart_proto_library + dart_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/dart/dart_grpc_library + go_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/go/go_proto_compile + go_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/go/go_grpc_compile + go_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/go/go_proto_library + go_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/go/go_grpc_library + java_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/java/java_proto_compile + java_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/java/java_grpc_compile + java_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/java/java_proto_library + java_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/java/java_grpc_library + node_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/node/node_proto_compile + node_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/node/node_grpc_compile + node_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/node/node_proto_library + node_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/node/node_grpc_library + objc_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/objc/objc_proto_compile + objc_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/objc/objc_grpc_compile + php_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/php/php_proto_compile + php_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/php/php_grpc_compile + python_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/python/python_proto_compile + python_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/python/python_grpc_compile + python_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/python/python_proto_library + python_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/python/python_grpc_library + ruby_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/ruby/ruby_proto_compile + ruby_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/ruby/ruby_grpc_compile + ruby_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/ruby/ruby_proto_library + ruby_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/ruby/ruby_grpc_library + rust_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/rust/rust_proto_compile + rust_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/rust/rust_proto_library + scala_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/scala/scala_proto_compile + scala_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/scala/scala_grpc_compile + scala_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/scala/scala_proto_library + scala_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/scala/scala_grpc_library + gogo_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogo_proto_compile + gogo_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogo_grpc_compile + gogo_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogo_proto_library + gogo_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogo_grpc_library + gogofast_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofast_proto_compile + gogofast_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofast_grpc_compile + gogofast_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofast_proto_library + gogofast_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofast_grpc_library + gogofaster_proto_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofaster_proto_compile + gogofaster_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofaster_grpc_compile + gogofaster_proto_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofaster_proto_library + gogofaster_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/gogo/protobuf/gogofaster_grpc_library + gateway_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile + gateway_swagger_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile + gateway_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library + closure_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/stackb/grpc.js/closure_grpc_compile + closure_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/stackb/grpc.js/closure_grpc_library + closure_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc/grpc-web/closure_grpc_compile + commonjs_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc/grpc-web/commonjs_grpc_compile + commonjs_dts_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile + ts_grpc_compile: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc/grpc-web/ts_grpc_compile + closure_grpc_library: + platform: ubuntu1604 + build_targets: + - "..." + working_directory: example/github.com/grpc/grpc-web/closure_grpc_library diff --git a/.bazelrc b/.bazelrc index f24f54fe7..beccc5ef6 100644 --- a/.bazelrc +++ b/.bazelrc @@ -1,5 +1,21 @@ build --strategy=CoreCompile=standalone -build --incompatible_disallow_data_transition=false # needed for dart +build --strategy=SwiftCompile=standalone -# build --incompatible_disable_legacy_cpp_toolchain_skylark_api=false -# build --incompatible_disable_legacy_flags_cc_toolchain_api=true +build --all_incompatible_changes +#build --incompatible_no_rule_outputs_param=false + +build --incompatible_depset_is_not_iterable=false +build --incompatible_depset_union=false +build --incompatible_disable_deprecated_attr_params=false +build --incompatible_disable_legacy_proto_provider=false +build --incompatible_disallow_legacy_javainfo=false +build --incompatible_disallow_struct_provider_syntax=false +build --incompatible_enable_cc_toolchain_resolution=false +build --incompatible_new_actions_api=false +build --incompatible_no_transitive_loads=false +build --incompatible_require_ctx_in_configure_features=false +build --incompatible_use_jdk11_as_host_javabase=false +build --incompatible_use_toolchain_resolution_for_java_rules=false +build --incompatible_remove_native_maven_jar=false +build --incompatible_allow_python_version_transitions=false +build --incompatible_py3_is_default=false # grpc-python does not work with python3? \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 2909f8cdc..000000000 --- a/.travis.yml +++ /dev/null @@ -1,114 +0,0 @@ -dist: trusty -sudo: required -osx_image: xcode8 -language: android -android: - components: - - android-28 - - build-tools-28.0.3 - -os: - - linux - # - osx DISABLE FOR NOW UNTIL LINUX WORKING - -env: - - BAZEL=0.24.1 BAZEL_COMMAND=test BAZEL_TARGET='//example/routeguide:*' - - BAZEL=0.24.1 LANG=android RULE=android_proto_compile - - BAZEL=0.24.1 LANG=android RULE=android_grpc_compile - - BAZEL=0.24.1 LANG=android RULE=android_proto_library - - BAZEL=0.24.1 LANG=android RULE=android_grpc_library - - BAZEL=0.24.1 LANG=closure RULE=closure_proto_compile - - BAZEL=0.24.1 LANG=closure RULE=closure_proto_library - - BAZEL=0.24.1 LANG=cpp RULE=cpp_proto_compile - - BAZEL=0.24.1 LANG=cpp RULE=cpp_grpc_compile - - BAZEL=0.24.1 LANG=cpp RULE=cpp_proto_library - - BAZEL=0.24.1 LANG=cpp RULE=cpp_grpc_library - - BAZEL=0.24.1 LANG=csharp RULE=csharp_proto_compile - - BAZEL=0.24.1 LANG=csharp RULE=csharp_grpc_compile - - BAZEL=0.24.1 LANG=csharp RULE=csharp_proto_library - - BAZEL=0.24.1 LANG=csharp RULE=csharp_grpc_library - - BAZEL=0.24.1 LANG=d RULE=d_proto_compile - - BAZEL=0.24.1 LANG=dart RULE=dart_proto_compile - - BAZEL=0.24.1 LANG=dart RULE=dart_grpc_compile - - BAZEL=0.24.1 LANG=dart RULE=dart_proto_library - - BAZEL=0.24.1 LANG=dart RULE=dart_grpc_library - - BAZEL=0.24.1 LANG=go RULE=go_proto_compile - - BAZEL=0.24.1 LANG=go RULE=go_grpc_compile - - BAZEL=0.24.1 LANG=go RULE=go_proto_library - - BAZEL=0.24.1 LANG=go RULE=go_grpc_library - - BAZEL=0.24.1 LANG=java RULE=java_proto_compile - - BAZEL=0.24.1 LANG=java RULE=java_grpc_compile - - BAZEL=0.24.1 LANG=java RULE=java_proto_library - - BAZEL=0.24.1 LANG=java RULE=java_grpc_library - - BAZEL=0.24.1 LANG=node RULE=node_proto_compile - - BAZEL=0.24.1 LANG=node RULE=node_grpc_compile - - BAZEL=0.24.1 LANG=node RULE=node_proto_library - - BAZEL=0.24.1 LANG=node RULE=node_grpc_library - - BAZEL=0.24.1 LANG=objc RULE=objc_proto_compile - - BAZEL=0.24.1 LANG=objc RULE=objc_grpc_compile - - BAZEL=0.24.1 LANG=php RULE=php_proto_compile - - BAZEL=0.24.1 LANG=php RULE=php_grpc_compile - - BAZEL=0.24.1 LANG=python RULE=python_proto_compile - - BAZEL=0.24.1 LANG=python RULE=python_grpc_compile - - BAZEL=0.24.1 LANG=python RULE=python_proto_library - - BAZEL=0.24.1 LANG=python RULE=python_grpc_library - - BAZEL=0.24.1 LANG=ruby RULE=ruby_proto_compile - - BAZEL=0.24.1 LANG=ruby RULE=ruby_grpc_compile - - BAZEL=0.24.1 LANG=ruby RULE=ruby_proto_library - - BAZEL=0.24.1 LANG=ruby RULE=ruby_grpc_library - - BAZEL=0.24.1 LANG=rust RULE=rust_proto_compile - - BAZEL=0.24.1 LANG=rust RULE=rust_grpc_compile - - BAZEL=0.24.1 LANG=rust RULE=rust_proto_library - - BAZEL=0.24.1 LANG=rust RULE=rust_grpc_library - - BAZEL=0.24.1 LANG=scala RULE=scala_proto_compile - - BAZEL=0.24.1 LANG=scala RULE=scala_grpc_compile - - BAZEL=0.24.1 LANG=scala RULE=scala_proto_library - - BAZEL=0.24.1 LANG=scala RULE=scala_grpc_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogo_proto_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogo_grpc_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogo_proto_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogo_grpc_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofast_proto_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofast_grpc_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofast_proto_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofast_grpc_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofaster_proto_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofaster_grpc_compile - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofaster_proto_library - - BAZEL=0.24.1 LANG=github.com/gogo/protobuf RULE=gogofaster_grpc_library - - BAZEL=0.24.1 LANG=github.com/grpc-ecosystem/grpc-gateway RULE=gateway_grpc_compile - - BAZEL=0.24.1 LANG=github.com/grpc-ecosystem/grpc-gateway RULE=gateway_swagger_compile - - BAZEL=0.24.1 LANG=github.com/grpc-ecosystem/grpc-gateway RULE=gateway_grpc_library - - BAZEL=0.24.1 LANG=github.com/stackb/grpc.js RULE=closure_grpc_compile - - BAZEL=0.24.1 LANG=github.com/stackb/grpc.js RULE=closure_grpc_library - - BAZEL=0.24.1 LANG=github.com/grpc/grpc-web RULE=closure_grpc_compile - - BAZEL=0.24.1 LANG=github.com/grpc/grpc-web RULE=commonjs_grpc_compile - - BAZEL=0.24.1 LANG=github.com/grpc/grpc-web RULE=commonjs_dts_grpc_compile - - BAZEL=0.24.1 LANG=github.com/grpc/grpc-web RULE=ts_grpc_compile - - BAZEL=0.24.1 LANG=github.com/grpc/grpc-web RULE=closure_grpc_library - -before_install: - - | - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then - OS=darwin - else - sysctl kernel.unprivileged_userns_clone=1 - OS=linux - fi - wget -O install.sh "https://github.com/bazelbuild/bazel/releases/download/${BAZEL}/bazel-${BAZEL}-installer-${OS}-x86_64.sh" - chmod +x install.sh - ./install.sh --user - rm -f install.sh - -script: - - | - if [ "${BAZEL_COMMAND}" != "" ] - then - bazel "${BAZEL_COMMAND}" "${BAZEL_TARGET}" - else - cd "${LANG}/example/${RULE}" && bazel build //:* - fi - -notifications: - email: false - diff --git a/README.md b/README.md index f53084af9..c08681b74 100644 --- a/README.md +++ b/README.md @@ -18,83 +18,83 @@ Bazel skylark rules for building protocol buffers +/- gRPC :sparkles:. | Status | Lang | Rule | Description | --- | ---: | :--- | :--- | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [android](/android) | [android_proto_compile](/android#android_proto_compile) | Generates android protobuf artifacts ([example](/android/example/android_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [android](/android) | [android_grpc_compile](/android#android_grpc_compile) | Generates android protobuf+gRPC artifacts ([example](/android/example/android_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [android](/android) | [android_proto_library](/android#android_proto_library) | Generates android protobuf library ([example](/android/example/android_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [android](/android) | [android_grpc_library](/android#android_grpc_library) | Generates android protobuf+gRPC library ([example](/android/example/android_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [closure](/closure) | [closure_proto_compile](/closure#closure_proto_compile) | Generates closure *.js protobuf+gRPC files ([example](/closure/example/closure_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [closure](/closure) | [closure_proto_library](/closure#closure_proto_library) | Generates a closure_library with compiled protobuf *.js files ([example](/closure/example/closure_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [cpp](/cpp) | [cpp_proto_compile](/cpp#cpp_proto_compile) | Generates *.h,*.cc protobuf artifacts ([example](/cpp/example/cpp_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [cpp](/cpp) | [cpp_grpc_compile](/cpp#cpp_grpc_compile) | Generates *.h,*.cc protobuf+gRPC artifacts ([example](/cpp/example/cpp_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [cpp](/cpp) | [cpp_proto_library](/cpp#cpp_proto_library) | Generates *.h,*.cc protobuf library ([example](/cpp/example/cpp_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [cpp](/cpp) | [cpp_grpc_library](/cpp#cpp_grpc_library) | Generates *.h,*.cc protobuf+gRPC library ([example](/cpp/example/cpp_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [csharp](/csharp) | [csharp_proto_compile](/csharp#csharp_proto_compile) | Generates csharp protobuf artifacts ([example](/csharp/example/csharp_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [csharp](/csharp) | [csharp_grpc_compile](/csharp#csharp_grpc_compile) | Generates csharp protobuf+gRPC artifacts ([example](/csharp/example/csharp_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [csharp](/csharp) | [csharp_proto_library](/csharp#csharp_proto_library) | Generates csharp protobuf library ([example](/csharp/example/csharp_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [csharp](/csharp) | [csharp_grpc_library](/csharp#csharp_grpc_library) | Generates csharp protobuf+gRPC library ([example](/csharp/example/csharp_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [d](/d) | [d_proto_compile](/d#d_proto_compile) | Generates d protobuf artifacts ([example](/d/example/d_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [dart](/dart) | [dart_proto_compile](/dart#dart_proto_compile) | Generates dart protobuf artifacts ([example](/dart/example/dart_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [dart](/dart) | [dart_grpc_compile](/dart#dart_grpc_compile) | Generates dart protobuf+gRPC artifacts ([example](/dart/example/dart_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [dart](/dart) | [dart_proto_library](/dart#dart_proto_library) | Generates dart protobuf library ([example](/dart/example/dart_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [dart](/dart) | [dart_grpc_library](/dart#dart_grpc_library) | Generates dart protobuf+gRPC library ([example](/dart/example/dart_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [go](/go) | [go_proto_compile](/go#go_proto_compile) | Generates *.go protobuf artifacts ([example](/go/example/go_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [go](/go) | [go_grpc_compile](/go#go_grpc_compile) | Generates *.go protobuf+gRPC artifacts ([example](/go/example/go_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [go](/go) | [go_proto_library](/go#go_proto_library) | Generates *.go protobuf library ([example](/go/example/go_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [go](/go) | [go_grpc_library](/go#go_grpc_library) | Generates *.go protobuf+gRPC library ([example](/go/example/go_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [java](/java) | [java_proto_compile](/java#java_proto_compile) | Generates a srcjar with protobuf *.java files ([example](/java/example/java_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [java](/java) | [java_grpc_compile](/java#java_grpc_compile) | Generates a srcjar with protobuf+gRPC *.java files ([example](/java/example/java_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [java](/java) | [java_proto_library](/java#java_proto_library) | Generates a jar with compiled protobuf *.class files ([example](/java/example/java_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [java](/java) | [java_grpc_library](/java#java_grpc_library) | Generates a jar with compiled protobuf+gRPC *.class files ([example](/java/example/java_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [node](/node) | [node_proto_compile](/node#node_proto_compile) | Generates node *.js protobuf artifacts ([example](/node/example/node_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [node](/node) | [node_grpc_compile](/node#node_grpc_compile) | Generates node *.js protobuf+gRPC artifacts ([example](/node/example/node_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [node](/node) | [node_proto_library](/node#node_proto_library) | Generates node *.js protobuf library ([example](/node/example/node_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [node](/node) | [node_grpc_library](/node#node_grpc_library) | Generates node *.js protobuf+gRPC library ([example](/node/example/node_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [objc](/objc) | [objc_proto_compile](/objc#objc_proto_compile) | Generates objc protobuf artifacts ([example](/objc/example/objc_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [objc](/objc) | [objc_grpc_compile](/objc#objc_grpc_compile) | Generates objc protobuf+gRPC artifacts ([example](/objc/example/objc_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [php](/php) | [php_proto_compile](/php#php_proto_compile) | Generates php protobuf artifacts ([example](/php/example/php_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [php](/php) | [php_grpc_compile](/php#php_grpc_compile) | Generates php protobuf+gRPC artifacts ([example](/php/example/php_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [python](/python) | [python_proto_compile](/python#python_proto_compile) | Generates *.py protobuf artifacts ([example](/python/example/python_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [python](/python) | [python_grpc_compile](/python#python_grpc_compile) | Generates *.py protobuf+gRPC artifacts ([example](/python/example/python_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [python](/python) | [python_proto_library](/python#python_proto_library) | Generates *.py protobuf library ([example](/python/example/python_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [python](/python) | [python_grpc_library](/python#python_grpc_library) | Generates *.py protobuf+gRPC library ([example](/python/example/python_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [ruby](/ruby) | [ruby_proto_compile](/ruby#ruby_proto_compile) | Generates *.ruby protobuf artifacts ([example](/ruby/example/ruby_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [ruby](/ruby) | [ruby_grpc_compile](/ruby#ruby_grpc_compile) | Generates *.ruby protobuf+gRPC artifacts ([example](/ruby/example/ruby_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [ruby](/ruby) | [ruby_proto_library](/ruby#ruby_proto_library) | Generates *.rb protobuf library ([example](/ruby/example/ruby_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [ruby](/ruby) | [ruby_grpc_library](/ruby#ruby_grpc_library) | Generates *.rb protobuf+gRPC library ([example](/ruby/example/ruby_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [rust](/rust) | [rust_proto_compile](/rust#rust_proto_compile) | Generates rust protobuf artifacts ([example](/rust/example/rust_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [rust](/rust) | [rust_grpc_compile](/rust#rust_grpc_compile) | Generates rust protobuf+gRPC artifacts ([example](/rust/example/rust_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [rust](/rust) | [rust_proto_library](/rust#rust_proto_library) | Generates rust protobuf library ([example](/rust/example/rust_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [rust](/rust) | [rust_grpc_library](/rust#rust_grpc_library) | Generates rust protobuf+gRPC library ([example](/rust/example/rust_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [scala](/scala) | [scala_proto_compile](/scala#scala_proto_compile) | Generates *.scala protobuf artifacts ([example](/scala/example/scala_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [scala](/scala) | [scala_grpc_compile](/scala#scala_grpc_compile) | Generates *.scala protobuf+gRPC artifacts ([example](/scala/example/scala_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [scala](/scala) | [scala_proto_library](/scala#scala_proto_library) | Generates *.py protobuf library ([example](/scala/example/scala_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [scala](/scala) | [scala_grpc_library](/scala#scala_grpc_library) | Generates *.py protobuf+gRPC library ([example](/scala/example/scala_grpc_library)) | -| travis incompatible | [swift](/swift) | [swift_proto_compile](/swift#swift_proto_compile) | Generates swift protobuf artifacts ([example](/swift/example/swift_proto_compile)) | -| travis incompatible | [swift](/swift) | [swift_grpc_compile](/swift#swift_grpc_compile) | Generates swift protobuf+gRPC artifacts ([example](/swift/example/swift_grpc_compile)) | -| travis incompatible | [swift](/swift) | [swift_proto_library](/swift#swift_proto_library) | Generates swift protobuf library ([example](/swift/example/swift_proto_library)) | -| travis incompatible | [swift](/swift) | [swift_grpc_library](/swift#swift_grpc_library) | Generates swift protobuf+gRPC library ([example](/swift/example/swift_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogo_proto_compile](/github.com/gogo/protobuf#gogo_proto_compile) | Generates gogo protobuf artifacts ([example](/gogo/example/gogo_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogo_grpc_compile](/github.com/gogo/protobuf#gogo_grpc_compile) | Generates gogo protobuf+gRPC artifacts ([example](/gogo/example/gogo_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogo_proto_library](/github.com/gogo/protobuf#gogo_proto_library) | Generates gogo protobuf library ([example](/gogo/example/gogo_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogo_grpc_library](/github.com/gogo/protobuf#gogo_grpc_library) | Generates gogo protobuf+gRPC library ([example](/gogo/example/gogo_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_proto_compile](/github.com/gogo/protobuf#gogofast_proto_compile) | Generates gogofast protobuf artifacts ([example](/gogo/example/gogofast_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_grpc_compile](/github.com/gogo/protobuf#gogofast_grpc_compile) | Generates gogofast protobuf+gRPC artifacts ([example](/gogo/example/gogofast_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_proto_library](/github.com/gogo/protobuf#gogofast_proto_library) | Generates gogofast protobuf library ([example](/gogo/example/gogofast_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_grpc_library](/github.com/gogo/protobuf#gogofast_grpc_library) | Generates gogofast protobuf+gRPC library ([example](/gogo/example/gogofast_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_proto_compile](/github.com/gogo/protobuf#gogofaster_proto_compile) | Generates gogofaster protobuf artifacts ([example](/gogo/example/gogofaster_proto_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_grpc_compile](/github.com/gogo/protobuf#gogofaster_grpc_compile) | Generates gogofaster protobuf+gRPC artifacts ([example](/gogo/example/gogofaster_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_proto_library](/github.com/gogo/protobuf#gogofaster_proto_library) | Generates gogofaster protobuf library ([example](/gogo/example/gogofaster_proto_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_grpc_library](/github.com/gogo/protobuf#gogofaster_grpc_library) | Generates gogofaster protobuf+gRPC library ([example](/gogo/example/gogofaster_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_grpc_compile](/github.com/grpc-ecosystem/grpc-gateway#gateway_grpc_compile) | Generates grpc-gateway *.go files ([example](/grpc-gateway/example/gateway_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_swagger_compile](/github.com/grpc-ecosystem/grpc-gateway#gateway_swagger_compile) | Generates grpc-gateway swagger *.json files ([example](/grpc-gateway/example/gateway_swagger_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_grpc_library](/github.com/grpc-ecosystem/grpc-gateway#gateway_grpc_library) | Generates grpc-gateway library files ([example](/grpc-gateway/example/gateway_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc.js](/github.com/stackb/grpc.js) | [closure_grpc_compile](/github.com/stackb/grpc.js#closure_grpc_compile) | Generates protobuf closure grpc *.js files ([example](/grpc.js/example/closure_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc.js](/github.com/stackb/grpc.js) | [closure_grpc_library](/github.com/stackb/grpc.js#closure_grpc_library) | Generates protobuf closure library *.js files ([example](/grpc.js/example/closure_grpc_library)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-web](/github.com/grpc/grpc-web) | [closure_grpc_compile](/github.com/grpc/grpc-web#closure_grpc_compile) | Generates a closure *.js protobuf+gRPC files ([example](/grpc-web/example/closure_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-web](/github.com/grpc/grpc-web) | [commonjs_grpc_compile](/github.com/grpc/grpc-web#commonjs_grpc_compile) | Generates a commonjs *.js protobuf+gRPC files ([example](/grpc-web/example/commonjs_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-web](/github.com/grpc/grpc-web) | [commonjs_dts_grpc_compile](/github.com/grpc/grpc-web#commonjs_dts_grpc_compile) | Generates a commonjs_dts *.js protobuf+gRPC files ([example](/grpc-web/example/commonjs_dts_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-web](/github.com/grpc/grpc-web) | [ts_grpc_compile](/github.com/grpc/grpc-web#ts_grpc_compile) | Generates a commonjs *.ts protobuf+gRPC files ([example](/grpc-web/example/ts_grpc_compile)) | -| [![BAZEL=0.24.1](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto) | [grpc-web](/github.com/grpc/grpc-web) | [closure_grpc_library](/github.com/grpc/grpc-web#closure_grpc_library) | Generates protobuf closure library *.js files ([example](/grpc-web/example/closure_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [android](/android) | [android_proto_compile](/android#android_proto_compile) | Generates android protobuf artifacts ([example](/androidcexample/android_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [android](/android) | [android_grpc_compile](/android#android_grpc_compile) | Generates android protobuf+gRPC artifacts ([example](/androidcexample/android_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [android](/android) | [android_proto_library](/android#android_proto_library) | Generates android protobuf library ([example](/androidcexample/android_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [android](/android) | [android_grpc_library](/android#android_grpc_library) | Generates android protobuf+gRPC library ([example](/androidcexample/android_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [closure](/closure) | [closure_proto_compile](/closure#closure_proto_compile) | Generates closure *.js protobuf+gRPC files ([example](/closurecexample/closure_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [closure](/closure) | [closure_proto_library](/closure#closure_proto_library) | Generates a closure_library with compiled protobuf *.js files ([example](/closurecexample/closure_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [cpp](/cpp) | [cpp_proto_compile](/cpp#cpp_proto_compile) | Generates *.h,*.cc protobuf artifacts ([example](/cppcexample/cpp_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [cpp](/cpp) | [cpp_grpc_compile](/cpp#cpp_grpc_compile) | Generates *.h,*.cc protobuf+gRPC artifacts ([example](/cppcexample/cpp_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [cpp](/cpp) | [cpp_proto_library](/cpp#cpp_proto_library) | Generates *.h,*.cc protobuf library ([example](/cppcexample/cpp_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [cpp](/cpp) | [cpp_grpc_library](/cpp#cpp_grpc_library) | Generates *.h,*.cc protobuf+gRPC library ([example](/cppcexample/cpp_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [csharp](/csharp) | [csharp_proto_compile](/csharp#csharp_proto_compile) | Generates csharp protobuf artifacts ([example](/csharpcexample/csharp_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [csharp](/csharp) | [csharp_grpc_compile](/csharp#csharp_grpc_compile) | Generates csharp protobuf+gRPC artifacts ([example](/csharpcexample/csharp_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [csharp](/csharp) | [csharp_proto_library](/csharp#csharp_proto_library) | Generates csharp protobuf library ([example](/csharpcexample/csharp_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [csharp](/csharp) | [csharp_grpc_library](/csharp#csharp_grpc_library) | Generates csharp protobuf+gRPC library ([example](/csharpcexample/csharp_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [d](/d) | [d_proto_compile](/d#d_proto_compile) | Generates d protobuf artifacts ([example](/dcexample/d_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [dart](/dart) | [dart_proto_compile](/dart#dart_proto_compile) | Generates dart protobuf artifacts ([example](/dartcexample/dart_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [dart](/dart) | [dart_grpc_compile](/dart#dart_grpc_compile) | Generates dart protobuf+gRPC artifacts ([example](/dartcexample/dart_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [dart](/dart) | [dart_proto_library](/dart#dart_proto_library) | Generates dart protobuf library ([example](/dartcexample/dart_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [dart](/dart) | [dart_grpc_library](/dart#dart_grpc_library) | Generates dart protobuf+gRPC library ([example](/dartcexample/dart_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [go](/go) | [go_proto_compile](/go#go_proto_compile) | Generates *.go protobuf artifacts ([example](/gocexample/go_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [go](/go) | [go_grpc_compile](/go#go_grpc_compile) | Generates *.go protobuf+gRPC artifacts ([example](/gocexample/go_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [go](/go) | [go_proto_library](/go#go_proto_library) | Generates *.go protobuf library ([example](/gocexample/go_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [go](/go) | [go_grpc_library](/go#go_grpc_library) | Generates *.go protobuf+gRPC library ([example](/gocexample/go_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [java](/java) | [java_proto_compile](/java#java_proto_compile) | Generates a srcjar with protobuf *.java files ([example](/javacexample/java_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [java](/java) | [java_grpc_compile](/java#java_grpc_compile) | Generates a srcjar with protobuf+gRPC *.java files ([example](/javacexample/java_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [java](/java) | [java_proto_library](/java#java_proto_library) | Generates a jar with compiled protobuf *.class files ([example](/javacexample/java_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [java](/java) | [java_grpc_library](/java#java_grpc_library) | Generates a jar with compiled protobuf+gRPC *.class files ([example](/javacexample/java_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [node](/node) | [node_proto_compile](/node#node_proto_compile) | Generates node *.js protobuf artifacts ([example](/nodecexample/node_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [node](/node) | [node_grpc_compile](/node#node_grpc_compile) | Generates node *.js protobuf+gRPC artifacts ([example](/nodecexample/node_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [node](/node) | [node_proto_library](/node#node_proto_library) | Generates node *.js protobuf library ([example](/nodecexample/node_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [node](/node) | [node_grpc_library](/node#node_grpc_library) | Generates node *.js protobuf+gRPC library ([example](/nodecexample/node_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [objc](/objc) | [objc_proto_compile](/objc#objc_proto_compile) | Generates objc protobuf artifacts ([example](/objccexample/objc_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [objc](/objc) | [objc_grpc_compile](/objc#objc_grpc_compile) | Generates objc protobuf+gRPC artifacts ([example](/objccexample/objc_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [php](/php) | [php_proto_compile](/php#php_proto_compile) | Generates php protobuf artifacts ([example](/phpcexample/php_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [php](/php) | [php_grpc_compile](/php#php_grpc_compile) | Generates php protobuf+gRPC artifacts ([example](/phpcexample/php_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [python](/python) | [python_proto_compile](/python#python_proto_compile) | Generates *.py protobuf artifacts ([example](/pythoncexample/python_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [python](/python) | [python_grpc_compile](/python#python_grpc_compile) | Generates *.py protobuf+gRPC artifacts ([example](/pythoncexample/python_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [python](/python) | [python_proto_library](/python#python_proto_library) | Generates *.py protobuf library ([example](/pythoncexample/python_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [python](/python) | [python_grpc_library](/python#python_grpc_library) | Generates *.py protobuf+gRPC library ([example](/pythoncexample/python_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [ruby](/ruby) | [ruby_proto_compile](/ruby#ruby_proto_compile) | Generates *.ruby protobuf artifacts ([example](/rubycexample/ruby_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [ruby](/ruby) | [ruby_grpc_compile](/ruby#ruby_grpc_compile) | Generates *.ruby protobuf+gRPC artifacts ([example](/rubycexample/ruby_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [ruby](/ruby) | [ruby_proto_library](/ruby#ruby_proto_library) | Generates *.rb protobuf library ([example](/rubycexample/ruby_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [ruby](/ruby) | [ruby_grpc_library](/ruby#ruby_grpc_library) | Generates *.rb protobuf+gRPC library ([example](/rubycexample/ruby_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [rust](/rust) | [rust_proto_compile](/rust#rust_proto_compile) | Generates rust protobuf artifacts ([example](/rustcexample/rust_proto_compile)) | +| experimental | [rust](/rust) | [rust_grpc_compile](/rust#rust_grpc_compile) | Generates rust protobuf+gRPC artifacts ([example](/rustcexample/rust_grpc_compile)) | +| experimental | [rust](/rust) | [rust_proto_library](/rust#rust_proto_library) | Generates rust protobuf library ([example](/rustcexample/rust_proto_library)) | +| experimental | [rust](/rust) | [rust_grpc_library](/rust#rust_grpc_library) | Generates rust protobuf+gRPC library ([example](/rustcexample/rust_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [scala](/scala) | [scala_proto_compile](/scala#scala_proto_compile) | Generates *.scala protobuf artifacts ([example](/scalacexample/scala_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [scala](/scala) | [scala_grpc_compile](/scala#scala_grpc_compile) | Generates *.scala protobuf+gRPC artifacts ([example](/scalacexample/scala_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [scala](/scala) | [scala_proto_library](/scala#scala_proto_library) | Generates *.py protobuf library ([example](/scalacexample/scala_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [scala](/scala) | [scala_grpc_library](/scala#scala_grpc_library) | Generates *.py protobuf+gRPC library ([example](/scalacexample/scala_grpc_library)) | +| experimental | [swift](/swift) | [swift_proto_compile](/swift#swift_proto_compile) | Generates swift protobuf artifacts ([example](/swiftcexample/swift_proto_compile)) | +| experimental | [swift](/swift) | [swift_grpc_compile](/swift#swift_grpc_compile) | Generates swift protobuf+gRPC artifacts ([example](/swiftcexample/swift_grpc_compile)) | +| experimental | [swift](/swift) | [swift_proto_library](/swift#swift_proto_library) | Generates swift protobuf library ([example](/swiftcexample/swift_proto_library)) | +| experimental | [swift](/swift) | [swift_grpc_library](/swift#swift_grpc_library) | Generates swift protobuf+gRPC library ([example](/swiftcexample/swift_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogo_proto_compile](/github.com/gogo/protobuf#gogo_proto_compile) | Generates gogo protobuf artifacts ([example](/gogocexample/gogo_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogo_grpc_compile](/github.com/gogo/protobuf#gogo_grpc_compile) | Generates gogo protobuf+gRPC artifacts ([example](/gogocexample/gogo_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogo_proto_library](/github.com/gogo/protobuf#gogo_proto_library) | Generates gogo protobuf library ([example](/gogocexample/gogo_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogo_grpc_library](/github.com/gogo/protobuf#gogo_grpc_library) | Generates gogo protobuf+gRPC library ([example](/gogocexample/gogo_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_proto_compile](/github.com/gogo/protobuf#gogofast_proto_compile) | Generates gogofast protobuf artifacts ([example](/gogocexample/gogofast_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_grpc_compile](/github.com/gogo/protobuf#gogofast_grpc_compile) | Generates gogofast protobuf+gRPC artifacts ([example](/gogocexample/gogofast_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_proto_library](/github.com/gogo/protobuf#gogofast_proto_library) | Generates gogofast protobuf library ([example](/gogocexample/gogofast_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofast_grpc_library](/github.com/gogo/protobuf#gogofast_grpc_library) | Generates gogofast protobuf+gRPC library ([example](/gogocexample/gogofast_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_proto_compile](/github.com/gogo/protobuf#gogofaster_proto_compile) | Generates gogofaster protobuf artifacts ([example](/gogocexample/gogofaster_proto_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_grpc_compile](/github.com/gogo/protobuf#gogofaster_grpc_compile) | Generates gogofaster protobuf+gRPC artifacts ([example](/gogocexample/gogofaster_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_proto_library](/github.com/gogo/protobuf#gogofaster_proto_library) | Generates gogofaster protobuf library ([example](/gogocexample/gogofaster_proto_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [gogo](/github.com/gogo/protobuf) | [gogofaster_grpc_library](/github.com/gogo/protobuf#gogofaster_grpc_library) | Generates gogofaster protobuf+gRPC library ([example](/gogocexample/gogofaster_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_grpc_compile](/github.com/grpc-ecosystem/grpc-gateway#gateway_grpc_compile) | Generates grpc-gateway *.go files ([example](/grpc-gatewaycexample/gateway_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_swagger_compile](/github.com/grpc-ecosystem/grpc-gateway#gateway_swagger_compile) | Generates grpc-gateway swagger *.json files ([example](/grpc-gatewaycexample/gateway_swagger_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-gateway](/github.com/grpc-ecosystem/grpc-gateway) | [gateway_grpc_library](/github.com/grpc-ecosystem/grpc-gateway#gateway_grpc_library) | Generates grpc-gateway library files ([example](/grpc-gatewaycexample/gateway_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc.js](/github.com/stackb/grpc.js) | [closure_grpc_compile](/github.com/stackb/grpc.js#closure_grpc_compile) | Generates protobuf closure grpc *.js files ([example](/grpc.jscexample/closure_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc.js](/github.com/stackb/grpc.js) | [closure_grpc_library](/github.com/stackb/grpc.js#closure_grpc_library) | Generates protobuf closure library *.js files ([example](/grpc.jscexample/closure_grpc_library)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-web](/github.com/grpc/grpc-web) | [closure_grpc_compile](/github.com/grpc/grpc-web#closure_grpc_compile) | Generates a closure *.js protobuf+gRPC files ([example](/grpc-webcexample/closure_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-web](/github.com/grpc/grpc-web) | [commonjs_grpc_compile](/github.com/grpc/grpc-web#commonjs_grpc_compile) | Generates a commonjs *.js protobuf+gRPC files ([example](/grpc-webcexample/commonjs_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-web](/github.com/grpc/grpc-web) | [commonjs_dts_grpc_compile](/github.com/grpc/grpc-web#commonjs_dts_grpc_compile) | Generates a commonjs_dts *.js protobuf+gRPC files ([example](/grpc-webcexample/commonjs_dts_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-web](/github.com/grpc/grpc-web) | [ts_grpc_compile](/github.com/grpc/grpc-web#ts_grpc_compile) | Generates a commonjs *.ts protobuf+gRPC files ([example](/grpc-webcexample/ts_grpc_compile)) | +| [![BAZEL=0.24.1](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto) | [grpc-web](/github.com/grpc/grpc-web) | [closure_grpc_library](/github.com/grpc/grpc-web#closure_grpc_library) | Generates protobuf closure library *.js files ([example](/grpc-webcexample/closure_grpc_library)) | ## Overview @@ -147,7 +147,7 @@ message Thing { } ``` -**Step 2**: write a `BUILD.bazel` file with a native `proto_library` rule: +**Step 2**: write a `BAZEL.build` file with a native `proto_library` rule: ```python proto_library( @@ -333,3 +333,66 @@ Follow the pattern seen in the multiple examples in this repository. The basic Contributions welcome; please create Issues or GitHub pull requests. +## ProtoInfo provider + +A few notes about the 'proto' provider. Bazel initially implemented +[providers](https://docs.bazel.build/versions/master/skylark/lib/Provider.html) +using simple strings. For example, one could write a rule that depends on +`proto_library` rules as follows: + +```python +my_custom_rule = rule( + implementation = my_custom_rule_impl, + attrs = { + "deps": attr.label_list( + doc = "proto_library dependencies", + mandatory = True, + providers = ["proto"], + ), + } +) +``` + +We can then collect a list of the provided "info" objects as follows: + +```python +def my_custom_rule_impl(ctx): + # list A list of ProtoInfo values + deps = [ dep.proto for dep in ctx.attr.deps ] +``` + +This style of provider usage is now considered "legacy". As of bazel 0.22.0 +(Jan 2019) +[4817df](https://github.com/bazelbuild/bazel/commit/4817df1e862fe2de3b17905dbbc0c7badff6bb4b), +the +[ProtoInfo](https://docs.bazel.build/versions/master/skylark/lib/ProtoInfo.html) +provider was introduced. Rules using this provider should be changed to: + +```python +my_custom_rule = rule( + implementation = my_custom_rule_impl, + attrs = { + "deps": attr.label_list( + doc = "proto_library dependencies", + mandatory = True, + providers = [ProtoInfo], + ), + +``` + +```python +def my_custom_rule_impl(ctx): + # > A list of ProtoInfo + deps = [ dep[ProtoInfo] for dep in ctx.attr.deps ] +``` + +A flag to toggle availability of the "legacy" provider was introduced in +[e3f4ce](https://github.com/bazelbuild/bazel/commit/e3f4ce739f0dbe0fea2b5580655fc96012d162cd) +as `--incompatible_disable_legacy_proto_provider`. Therefore, if you still want +the legacy behavior specify +`--incompatible_disable_legacy_proto_provider=false`. + +Additional reading: + +- https://github.com/bazelbuild/bazel/issues/3701 +- https://github.com/bazelbuild/bazel/issues/6901 diff --git a/WORKSPACE b/WORKSPACE index f32ac2239..cfa5122ee 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -100,7 +100,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_library") go_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -251,21 +251,21 @@ apple_support_dependencies() # # ************************************************************** -load("//ruby:deps.bzl", "ruby_grpc_library") +# load("//ruby:deps.bzl", "ruby_grpc_library") -ruby_grpc_library() +# ruby_grpc_library() -load("@com_github_yugui_rules_ruby//ruby:def.bzl", "ruby_register_toolchains") +# load("@com_github_yugui_rules_ruby//ruby:def.bzl", "ruby_register_toolchains") -ruby_register_toolchains() +# ruby_register_toolchains() -load("@com_github_yugui_rules_ruby//ruby/private:bundle.bzl", "bundle_install") +# load("@com_github_yugui_rules_ruby//ruby/private:bundle.bzl", "bundle_install") -bundle_install( - name = "routeguide_gems_bundle", - gemfile = "//ruby:Gemfile", - gemfile_lock = "//ruby:Gemfile.lock", -) +# bundle_install( +# name = "routeguide_gems_bundle", +# gemfile = "//ruby:Gemfile", +# gemfile_lock = "//ruby:Gemfile.lock", +# ) # ************************************************************** # @@ -351,346 +351,73 @@ load("@io_bazel_rules_rust//proto/raze:crates.bzl", "raze_fetch_remote_crates") raze_fetch_remote_crates() -# ========================================= - -# PROTOBUF_VERSION = "3.6.1.3" - -# http_archive( -# name = "com_google_protobuf", -# sha256 = "73fdad358857e120fd0fa19e071a96e15c0f23bb25f85d3f7009abfd4f264a2a", -# strip_prefix = "protobuf-" + PROTOBUF_VERSION, -# url = "https://github.com/google/protobuf/archive/v%s.tar.gz" % PROTOBUF_VERSION, -# ) - -# ========================================= -# load("//:deps.bzl", "com_github_grpc_grpc") - -# com_github_grpc_grpc() - -# load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", com_github_grpc_grpc_bazel_grpc_deps = "grpc_deps") - -# com_github_grpc_grpc_bazel_grpc_deps() - -# # ========================================= -# load("//:deps.bzl", "io_grpc_grpc_java") - -# io_grpc_grpc_java() - -# load("@io_grpc_grpc_java//:repositories.bzl", "grpc_java_repositories") - -# grpc_java_repositories( -# omit_com_google_protobuf = True, -# ) - -# # ========================================= - -# load("//csharp:deps.bzl", "csharp_grpc_library") - -# csharp_grpc_library() - -# load("@io_bazel_rules_dotnet//dotnet:defs.bzl", -# "dotnet_register_toolchains", -# "core_register_sdk", -# "dotnet_repositories", -# ) - -# core_version = "v2.1.503" - -# dotnet_register_toolchains( -# core_version = core_version, -# ) - -# dotnet_register_toolchains( -# core_version = core_version, -# ) - -# core_register_sdk( -# name = "core_sdk", -# core_version = core_version -# ) - -# dotnet_repositories() - -# load("//csharp/nuget:packages.bzl", nuget_packages = "packages") - -# nuget_packages() - -# load("//csharp/nuget:nuget.bzl", "nuget_protobuf_packages") - -# nuget_protobuf_packages() - -# load("//csharp/nuget:nuget.bzl", "nuget_grpc_packages") - -# nuget_grpc_packages() - -# # ========================================= - -# load("//python:deps.bzl", "python_grpc_library") - -# python_grpc_library() - -# load("@io_bazel_rules_python//python:pip.bzl", "pip_import", "pip_repositories") - -# pip_repositories() - -# pip_import( -# name = "protobuf_py_deps", -# requirements = "@build_stack_rules_proto//python/requirements:protobuf.txt", -# ) - -# load("@protobuf_py_deps//:requirements.bzl", protobuf_pip_install = "pip_install") - -# protobuf_pip_install() - -# pip_import( -# name = "grpc_py_deps", -# requirements = "@build_stack_rules_proto//python:requirements.txt", -# ) - -# load("@grpc_py_deps//:requirements.bzl", grpc_pip_install = "pip_install") - -# grpc_pip_install() - -# # ========================================= - -# load("//java:deps.bzl", "java_grpc_library") - -# java_grpc_library() - -# # ========================================= - -# load("//scala:deps.bzl", "scala_grpc_library") - -# scala_grpc_library() - -# load("@io_bazel_rules_scala//scala:scala.bzl", "scala_repositories") - -# scala_repositories() - -# load("@io_bazel_rules_scala//scala:toolchains.bzl", "scala_register_toolchains") - -# scala_register_toolchains() - -# load("@io_bazel_rules_scala//scala_proto:scala_proto.bzl", "scala_proto_repositories") - -# scala_proto_repositories() - -# # See rules_scala WORKSPACE -# register_toolchains("@io_bazel_rules_scala//test/proto:scalapb_toolchain") - -# # =========== - -# load("//closure:deps.bzl", "closure_proto_library") - -# closure_proto_library() - -# load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") - -# closure_repositories( -# omit_com_google_protobuf = True, -# ) - -# # ========================================= - -# load("//node:deps.bzl", "node_grpc_library") - -# node_grpc_library() - -# load("@org_pubref_rules_node//node:rules.bzl", "node_repositories", "yarn_modules") - -# node_repositories() - -# yarn_modules( -# name = "proto_node_modules", -# deps = { -# "google-protobuf": "3.6.1", -# }, -# ) - -# yarn_modules( -# name = "grpc_node_modules", -# deps = { -# "grpc": "1.15.1", -# "async": "2.6.1", -# }, -# ) - -# # ========================================= - -# load("//go:deps.bzl", "go_grpc_library") - -# go_grpc_library() - -# load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") - -# go_rules_dependencies() - -# go_register_toolchains() - -# load("//:deps.bzl", "bazel_gazelle") - -# bazel_gazelle() - -# load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository") - -# gazelle_dependencies() - -# # gazelle:repo bazel_gazelle - -# # ========================================= - -# load("//dart:deps.bzl", "dart_grpc_library") - -# dart_grpc_library() - -# load("@io_bazel_rules_dart//dart/build_rules:repositories.bzl", "dart_repositories") - -# dart_repositories() - -# load("@dart_pub_deps_protoc_plugin//:deps.bzl", dart_protoc_plugin_deps = "pub_deps") - -# dart_protoc_plugin_deps() - -# load("@dart_pub_deps_grpc//:deps.bzl", dart_grpc_deps = "pub_deps") - -# dart_grpc_deps() - -# # ========================================= - -# load("//github.com/stackb/grpc.js:deps.bzl", "closure_grpc_library") - -# closure_grpc_library() - -# # ========================================= - -# load("//github.com/grpc/grpc-web:deps.bzl", "closure_grpc_library") - -# closure_grpc_library() - -# # ========================================= - -# load("//github.com/gogo/protobuf:deps.bzl", "gogo_grpc_library") - -# gogo_grpc_library() - -# # ========================================= - -# ## -# ## Must have swiftc on your system. To install on ubuntu 17.10, here's what I did: -# ## -# ## $ sudo apt install ubuntu-make; umake swift -# ## $ vi `/.bashrc` and update PATH to include ~/.local/share/umake/swift/swift-lang/usr/bin -# ## - -# # load("//swift:repositories.bzl", "swift_toolchain") - -# # # Default values work with linux, x86_64, /usr/local/bin/clang. -# # swift_toolchain( -# # root = "/home/pcj/.local/share/umake/swift/swift-lang/usr", -# # ) - -# load("//swift:deps.bzl", "swift_grpc_library") - -# swift_grpc_library() - -# load( -# "@build_bazel_rules_swift//swift:repositories.bzl", -# "swift_rules_dependencies", -# ) - -# swift_rules_dependencies() - -# load( -# "@build_bazel_apple_support//lib:repositories.bzl", -# "apple_support_dependencies", -# ) - -# apple_support_dependencies() - -# # ======================================= - -# # load("//ruby:deps.bzl", "ruby_grpc_library") - -# # ruby_grpc_library() - -# # load("@com_github_yugui_rules_ruby//ruby:def.bzl", "ruby_register_toolchains") - -# # ruby_register_toolchains() - -# # load("@com_github_yugui_rules_ruby//ruby/private:bundle.bzl", "bundle_install") - -# # bundle_install( -# # name = "routeguide_gems_bundle", -# # gemfile = "//ruby:Gemfile", -# # gemfile_lock = "//ruby:Gemfile.lock", -# # ) - -# # ======================================= - -# # load("//rust:deps.bzl", "rust_grpc_library") - -# # rust_grpc_library() - -# # load("@io_bazel_rules_rust//rust:repositories.bzl", "rust_repositories") - -# # rust_repositories() - -# # load("//rust/cargo:crates.bzl", "raze_fetch_remote_crates") - -# # raze_fetch_remote_crates() - -# # ======================================== +# ************************************************************** +# +# +# android +# +# ************************************************************** -# load("//android:deps.bzl", "android_grpc_library") +load("@build_stack_rules_proto//:deps.bzl", "rules_jvm_external") -# android_grpc_library() +rules_jvm_external() -# load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") +load("@rules_jvm_external//:defs.bzl", "maven_install") -# # -# # This version of android_sdk_repository uses the ANDROID_HOME env var. -# # -# # Why is this not a workspace rule? This is so painful. -# # $ curl -O -J -L https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -# # $ mkdir ~/android-sdk -# # $ unzip in that dir -# # $ tools/bin/sdkmanager --list -# # $ tools/bin/sdkmanager "platforms;android-28" "build-tools;28.0.3" -# # $ export ANDROID_HOME="/home/pcj/android-sdk/" -# # -# android_sdk_repository( -# name = "androidsdk", -# ) +maven_install( + name = "maven_android", + artifacts = [ + "com.android.support:appcompat-v7:28.0.0", + ], + repositories = [ + "https://maven.google.com", + "https://repo1.maven.org/maven2", + ], + # Fail if a checksum file for the artifact is missing in the repository. + # Falls through "SHA-1" and "MD5". Defaults to True. + fail_on_missing_checksum = False, +) -# load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") +load("@build_stack_rules_proto//android:deps.bzl", "android_grpc_library") -# gmaven_rules() +android_grpc_library() -# # ======================================= +load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") -# load("//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") +android_sdk_repository(name = "androidsdk") -# gateway_grpc_library() +# ************************************************************** +# +# +# grpc.js +# +# ************************************************************** -# # load("@grpc_ecosystem_grpc_gateway//:repositories.bzl", grpc_gateway_repositories = "repositories") +load("@build_stack_rules_proto//github.com/stackb/grpc.js:deps.bzl", "closure_grpc_library") -# # grpc_gateway_repositories() +closure_grpc_library() -# load("//tools/exgen:deps.bzl", "exgen_deps") +# ************************************************************** +# +# +# grpc-web +# +# ************************************************************** -# exgen_deps() +load("@build_stack_rules_proto//github.com/grpc/grpc-web:deps.bzl", grpcweb_closure_grpc_library = "closure_grpc_library") -# # ======================================= +grpcweb_closure_grpc_library() -# http_archive( -# name = "com_github_bazelbuild_buildtools", -# strip_prefix = "buildtools-41d89cd7c8328bb912f3b8f50d2dc970805d21f8", -# url = "https://github.com/bazelbuild/buildtools/archive/41d89cd7c8328bb912f3b8f50d2dc970805d21f8.zip", -# ) +# ************************************************************** +# +# +# grpc-gateway +# +# ************************************************************** -# load("@com_github_bazelbuild_buildtools//buildifier:deps.bzl", "buildifier_dependencies") +load("//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") -# buildifier_dependencies() +gateway_grpc_library() # ************************************************************** # diff --git a/android/README.md b/android/README.md index 479d9a684..6687246eb 100644 --- a/android/README.md +++ b/android/README.md @@ -133,10 +133,6 @@ android_proto_library() load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules() ``` ### `BUILD.bazel` @@ -150,6 +146,14 @@ android_proto_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_remove_native_maven_jar | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | @@ -196,10 +200,6 @@ android_grpc_library() load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules() ``` ### `BUILD.bazel` @@ -213,6 +213,14 @@ android_grpc_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_remove_native_maven_jar | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/android/deps.bzl b/android/deps.bzl index 1fa502a7f..323a32f51 100644 --- a/android/deps.bzl +++ b/android/deps.bzl @@ -4,7 +4,6 @@ load( "com_google_guava_guava_android", "com_google_protobuf", "com_google_protobuf_lite", - "gmaven_rules", "io_grpc_grpc_java", ) load( @@ -23,7 +22,6 @@ def android_grpc_compile(**kwargs): def android_proto_library(**kwargs): android_proto_compile(**kwargs) build_bazel_rules_android(**kwargs) - gmaven_rules(**kwargs) com_google_guava_guava_android(**kwargs) def android_grpc_library(**kwargs): diff --git a/android/example/android_grpc_library/.bazelrc b/android/example/android_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/android/example/android_proto_compile/.bazelrc b/android/example/android_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/android/example/android_proto_library/.bazelrc b/android/example/android_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/android/example/routeguide/BUILD.bazel b/android/example/routeguide/BUILD.bazel index e6b95a98b..213236821 100644 --- a/android/example/routeguide/BUILD.bazel +++ b/android/example/routeguide/BUILD.bazel @@ -1,5 +1,4 @@ load("//android:android_grpc_library.bzl", "android_grpc_library") -load("@gmaven_rules//:defs.bzl", "gmaven_artifact") android_grpc_library( name = "routeguide", @@ -10,7 +9,6 @@ android_grpc_library( # name = "clientlib", # manifest = "AndroidManifest.xml", # custom_package = "io.grpc.routeguideexample", - # ) # NOTE: at the moment this is not a routeguide client at all. Only testing that @@ -26,9 +24,6 @@ android_binary( resource_files = glob(["src/main/res/**"]), deps = [ ":routeguide", - "@com_android_support_appcompat_v7_28_0_0//aar", - #gmaven_artifact("com.android.support:appcompat-v7:28.0.0"), + "@maven_android//:com_android_support_appcompat_v7_28_0_0", ], - #'@com_android_support_design_27_0_1//aar', - #gmaven_artifact("com.google.android.gms:play-services:aar:12.0.0"), ) diff --git a/aspect.bzl b/aspect.bzl new file mode 100644 index 000000000..3bb5c99f4 --- /dev/null +++ b/aspect.bzl @@ -0,0 +1,716 @@ +load("//:plugin.bzl", "ProtoPluginInfo") +load("//:compile.bzl", "ProtoCompileInfo") +load( + "//:compile.bzl", + # "ProtoCompileInfo", + # "get_plugin_out_arg", + # "get_plugin_outputs", + "objc_upper_segments", + "rust_keywords", +) + +def proto_compile_impl(ctx): + files = [] + + for dep in ctx.attr.deps: + aspect = dep[ProtoLibraryAspectNodeInfo] + files += aspect.outputs + + return [ProtoCompileInfo( + label = ctx.label, + outputs = files, + files = files, + ), DefaultInfo(files = depset(files))] + +proto_compile_attrs = { + # "plugins": attr.label_list( + # doc = "List of protoc plugins to apply", + # providers = [ProtoPluginInfo], + # mandatory = True, + # ), + "plugin_options": attr.string_list( + doc = "List of additional 'global' options to add (applies to all plugins)", + ), + "plugin_options_string": attr.string( + doc = "(internal) List of additional 'global' options to add (applies to all plugins)", + ), + "outputs": attr.output_list( + doc = "Escape mechanism to explicitly declare files that will be generated", + ), + "has_services": attr.bool( + doc = "If the proto files(s) have a service rpc, generate grpc outputs", + ), + # "protoc": attr.label( + # doc = "The protoc tool", + # default = "@com_google_protobuf//:protoc", + # cfg = "host", + # executable = True, + # ), + "verbose": attr.int( + doc = "Increase verbose level for more debugging", + ), + "verbose_string": attr.string( + doc = "Increase verbose level for more debugging", + ), + # "include_imports": attr.bool( + # doc = "Pass the --include_imports argument to the protoc_plugin", + # default = True, + # ), + # "include_source_info": attr.bool( + # doc = "Pass the --include_source_info argument to the protoc_plugin", + # default = True, + # ), + "transitive": attr.bool( + doc = "Emit transitive artifacts", + ), + "transitivity": attr.string_dict( + doc = "Transitive rules. When the 'transitive' property is enabled, this string_dict can be used to exclude protos from the compilation list", + ), +} + +proto_compile_aspect_attrs = { + "verbose_string": attr.string( + doc = "Increase verbose level for more debugging", + values = ["", "None", "0", "1", "2", "3", "4"], + ), + # "plugin_options": attr.string_list( + # doc = "List of additional 'global' options to add (applies to all plugins)", + # ), + # "outputs": attr.output_list( + # doc = "Escape mechanism to explicitly declare files that will be generated", + # ), + # "transitive": attr.bool( + # doc = "Emit transitive artifacts", + # ), + # "transitivity": attr.string_dict( + # doc = "Transitive rules. When the 'transitive' property is enabled, this string_dict can be used to exclude protos from the compilation list", + # ), +} + +ProtoLibraryAspectNodeInfo = provider( + fields = { + "outputs": "the files generated by this aspect", + }, +) + +def describe(name, obj, exclude): + """Print the properties of the given struct obj + Args: + name: the name of the struct we are introspecting. + obj: the struct to introspect + exclude: a list of names *not* to print (function names) + """ + for k in dir(obj): + if hasattr(obj, k) and k not in exclude: + v = getattr(obj, k) + t = type(v) + print("%s.%s<%r> = %s" % (name, k, t, v)) + +def get_bool_attr(attr, name): + value = getattr(attr, name, "False") + return value == "True" + +def get_int_attr(attr, name): + value = getattr(attr, name) + if value == "": + return 0 + if value == "None": + return 0 + return int(value) + +def get_string_list_attr(attr, name): + value = getattr(attr, name, "") + if value == "": + return [] + return value.split(";") + +def proto_compile_aspect_impl(target, ctx): + # node - the proto_library rule node we're visiting + node = ctx.rule + + # Confirm the node is a proto_library otherwise return no providers. + if node.kind != "proto_library": + return [] + + ### + ### Part 1: setup variables used in scope + ### + + # verbose level + # verbose = ctx.attr.verbose + verbose = get_int_attr(ctx.attr, "verbose_string") # DIFFERENT + + # the protoc tool + # protoc = ctx.executable.protoc + protoc = node.executable._proto_compiler # DIFFERENT + + # for the output descriptor. Often used as the sibling in + # 'declare_file' actions. + # descriptor = ctx.outputs.descriptor + descriptor = target.files.to_list()[0] # DIFFERENT + + # The directory where that generated descriptor is. + outdir = descriptor.dirname # SAME + + # > A list of ProtoInfo + # deps = [dep.proto for dep in ctx.attr.deps] + deps = [dep[ProtoInfo] for dep in node.attr.deps] # DIFFERENT + + # > A list of PluginInfo + plugins = [plugin[ProtoPluginInfo] for plugin in ctx.attr._plugins] # ~~SAME~~ SLIGHTLY DIFFERENT + + # > The list of .proto files that will exist in the 'staging + # area'. We copy them from their source location into place such that a + # single '-I.' at the package root will satisfy all import paths. + # protos = [] + protos = node.files.srcs # DIFFERENT + + # > The set of .proto files to compile, used as the final + # list of arguments to protoc. This is a subset of the 'protos' list that + # are directly specified in the proto_library deps, but excluding other + # transitive .protos. For example, even though we might transitively depend + # on 'google/protobuf/any.proto', we don't necessarily want to actually + # generate artifacts for it when compiling 'foo.proto'. Maintained as a dict + # for set semantics. The key is the value from File.path. + targets = {} # NEW - ONLY IN compile.bzl + + # > A mapping from plugin name to the plugin tool. Used to + # generate the --plugin=protoc-gen-KEY=VALUE args + plugin_tools = {} # SAME DECL + + # A mapping from PluginInfo.name to File. In the case + # of plugins that specify a single output 'archive' (like java), we gather + # them in this dict. It is used to generate args like + # '--java_out=libjava.jar'. + plugin_outfiles = {} # SAME + + # > The list of srcjars that we're generating (like + # 'foo.srcjar'). + srcjars = [] + + # > The list of generated artifacts like 'foo_pb2.py' that we + # expect to be produced. + outputs = [] + + # Additional data files from plugin.data needed by plugin tools that are not + # single binaries. + data = [] + + ### + ### Part 2: gather plugin.out artifacts + ### + + # Some protoc plugins generate a set of output files (like python) while + # others generate a single 'archive' file that contains the individual + # outputs (like java). This first loop is for the latter type. In this + # scenario, the PluginInfo.out attribute will exist; the predicted file + # output location is relative to the package root, marked by the descriptor + # file. Jar outputs are gathered as a special case as we need to + # post-process them to have a 'srcjar' extension (java_library rules don't + # accept source jars with a 'jar' extension) + + # SAME + for plugin in plugins: + if plugin.executable: + plugin_tools[plugin.name] = plugin.executable + data += plugin.data + get_plugin_runfiles(plugin.tool) + + filename = _get_plugin_out(ctx, plugin) + if not filename: + continue + out = ctx.actions.declare_file(filename, sibling = descriptor) + outputs.append(out) + plugin_outfiles[plugin.name] = out + if out.path.endswith(".jar"): + srcjar = _copy_jar_to_srcjar(ctx, out) + srcjars.append(srcjar) + + # + # Parts 3a and 3b are skipped in the aspect impl + # + + ### + ### Part 3c: collect generated artifacts for all in the target list of protos to compile + ### + # for proto in protos: + # for plugin in plugins: + # outputs = get_plugin_outputs(ctx, descriptor, outputs, proto, plugin) + # DIFFERENT (similar but this uses targets.items) + # for src, proto in targets.items(): + # for plugin in plugins: + # outputs = get_plugin_outputs(ctx, descriptor, outputs, src, proto, plugin) + for proto in protos: + for plugin in plugins: + outputs = _get_plugin_outputs(ctx, descriptor, outputs, proto, plugin) + + # + # This is present only in the aspect impl. + # + descriptor_sets = depset( + direct = target.files.to_list(), + transitive = [d.transitive_descriptor_sets for d in deps], + ) + + # + # Only present in the aspect impl. + # + + import_files = depset( + direct = protos, + transitive = [d.transitive_imports for d in deps], + ) + + # By default we have a single 'proto_path' argument at the 'staging area' + # root. + # list argument list to construct + args = [] + + # This is commented out in the aspect impl but present in compile.bzl + # args = ["--descriptor_set_out=%s" % descriptor.path] + + # + # This part about using the descriptor set in is only present in the aspect + # impl. + # + pathsep = ctx.configuration.host_path_separator + args.append("--descriptor_set_in=%s" % pathsep.join( + [f.path for f in descriptor_sets.to_list()], + )) + + # + # plugin_options only present in aspect impl + # + plugin_options = get_string_list_attr(ctx.attr, "plugin_options_string") + + # for plugin in plugins: + # args += [get_plugin_out_arg(ctx, outdir, plugin, plugin_outfiles)] + + # DIFFERENT: aspect impl also passes in the plugin_options argument + for plugin in plugins: + args += [get_plugin_out_arg(ctx, outdir, plugin, plugin_outfiles, plugin_options)] + + args += ["--plugin=protoc-gen-%s=%s" % (k, v.path) for k, v in plugin_tools.items()] # SAME + + args += [_proto_path(f) for f in protos] + + mnemonic = "ProtoCompile" # SAME + + command = " ".join([protoc.path] + args) # SAME + + inputs = import_files.to_list() + descriptor_sets.to_list() + data + tools = [protoc] + plugin_tools.values() + + # SAME + if verbose > 0: + print("%s: %s" % (mnemonic, command)) + if verbose > 1: + command += " && echo '\n##### SANDBOX AFTER RUNNING PROTOC' && find . -type f " + if verbose > 2: + command = "echo '\n##### SANDBOX BEFORE RUNNING PROTOC' && find . -type l && " + command + if verbose > 3: + command = "env && " + command + for f in outputs: + print("EXPECTED OUTPUT:", f.path) + print("INPUTS:", inputs) + print("TOOLS:", tools) + print("COMMAND:", command) + for arg in args: + print("ARG:", arg) + + ctx.actions.run_shell( + mnemonic = mnemonic, # SAME + command = command, # SAME + + # This is different! + inputs = inputs, + tools = tools, + + # outputs = outputs + [descriptor] + ctx.outputs.outputs, # compile.bzl + outputs = outputs, + ) + + info = ProtoLibraryAspectNodeInfo( + outputs = outputs, + ) + + return struct( + proto_compile = info, + providers = [info], + ) + +def get_plugin_out_arg(ctx, outdir, plugin, plugin_outfiles, plugin_options): + """Build the --java_out argument + Args: + ctx: the object + output: the package output directory + plugin: the object. + plugin_outfiles: The >. For example, {closure: "library.js"} + Returns + for the protoc arg list. + """ + label_name = ctx.label.name + arg = "%s/%s" % (ctx.bin_dir.path, ctx.label.workspace_root) + + # Works for rust but not python! + # if ctx.label.package: + # arg += "/" + ctx.label.package + + # Graveyard of failed attempts (above).... + # arg = "%s/%s" % (ctx.bin_dir.path, ctx.label.package) + # arg = ctx.bin_dir.path + # arg = ctx.label.workspace_root + # arg = ctx.build_file_path + # arg = "." + + if plugin.outdir: + arg = plugin.outdir.replace("{name}", outdir) + elif plugin.out: + outfile = plugin_outfiles[plugin.name] + + #arg = "%s" % (outdir) + #arg = "%s/%s" % (outdir, outfile.short_path) + arg = outfile.path + + # Collate a list of options from the plugin itself PLUS options from the + # global plugin_options list (if they exist) + options = getattr(plugin, "options", []) + plugin_options + if options: + arg = "%s:%s" % (",".join(_get_plugin_options(label_name, options)), arg) + return "--%s_out=%s" % (plugin.name, arg) + +# Shamelessly taken from https://github.com/bazelbuild/rules_go +def _proto_path(proto): + """ + The proto path is not really a file path + It's the path to the proto that was seen when the descriptor file was generated. + """ + path = proto.path + root = proto.root.path + ws = proto.owner.workspace_root + if path.startswith(root): + path = path[len(root):] + if path.startswith("/"): + path = path[1:] + if path.startswith(ws): + path = path[len(ws):] + if path.startswith("/"): + path = path[1:] + return path + +def _get_plugin_outputs(ctx, descriptor, outputs, proto, plugin): + """Get the predicted generated outputs for a given plugin + + Args: + ctx: the object + descriptor: the descriptor + outputs: the list of outputs. + proto: the source .proto + plugin: the object. + Returns: + > the augmented list of files that will be generated + """ + for output in plugin.outputs: + filename = _get_output_filename(proto, plugin, output) + if not filename: + continue + + # sibling = _get_output_sibling_file(output, proto, descriptor) + sibling = proto + + # print("FILENAME: %s" % filename) + # output = ctx.actions.declare_file(filename, sibling = sibling) + output = ctx.actions.declare_file(filename) + # output = ctx.new_file(filename, root = descriptor) + + # print("Using sibling file '%s' for '%s' => '%s'" % (sibling.path, filename, output.path)) + outputs.append(output) + return outputs + +def _capitalize(s): + """Capitalize a string - only first letter + Args: + s (string): The input string to be capitalized. + Returns: + (string): The capitalized string. + """ + return s[0:1].upper() + s[1:] + +def _pascal_objc(s): + """Convert pascal_case -> PascalCase + + Objective C uses pascal case, but there are e exceptions that it uppercases + the entire segment: url, http, and https. + + https://github.com/protocolbuffers/protobuf/blob/54176b26a9be6c9903b375596b778f51f5947921/src/google/protobuf/compiler/objectivec/objectivec_helpers.cc#L91 + + Args: + s (string): The input string to be capitalized. + Returns: (string): The capitalized string. + """ + segments = [] + for segment in s.split("_"): + repl = objc_upper_segments.get(segment) + if repl: + segment = repl + else: + segment = _capitalize(segment) + segments.append(segment) + return "".join(segments) + +def _pascal_case(s): + """Convert pascal_case -> PascalCase + Args: + s (string): The input string to be capitalized. + Returns: + (string): The capitalized string. + """ + return "".join([_capitalize(part) for part in s.split("_")]) + +def _rust_keyword(s): + """Check if arg is a rust keyword and append '_pb' if true. + Args: + s (string): The input string to be capitalized. + Returns: + (string): The appended string. + """ + return s + "_pb" if rust_keywords.get(s) else s + +def _get_output_sibling_file(pattern, proto, descriptor): + """Get the correct place to output to. + + The ctx.actions.declare_file has a 'sibling = ' feature that allows + one to declare files in the same directory as the sibling. + + This function checks for the prefix special token '{package}' and, if true, + uses the descriptor as the sibling (which declares the output file will be + in the root of the generated tree). + + Args: + pattern: the input filename pattern + proto: the .proto (in the staging area) + descriptor: the descriptor that marks the staging root. + + Returns: + the to be used as the correct sibling. + """ + + if pattern.startswith("{package}/"): + return descriptor + return proto + +def _get_plugin_out(label_name, plugin): + if not plugin.out: + return None + filename = plugin.out + filename = filename.replace("{name}", label_name) + return filename + +def _get_output_filename(src, plugin, pattern): + """Build the predicted filename for file generated by the given plugin. + + A 'proto_plugin' rule allows one to define the predicted outputs. For + flexibility, we allow special tokens in the output filename that get + replaced here. The overall pattern is '{token}' mimicking the python + 'format' feature. + + Additionally, there are '|' characters like '{basename|pascal}' that can be + read as 'take the basename and pipe that through the pascal function'. + + Args: + src: the .proto + plugin: the object. + pattern: the input pattern string + + Returns: + the replaced string + """ + + # If output to srcjar, don't emit a per-proto output file. + if plugin.out: + return None + + # Slice off this prefix if it exists, we don't use it here. + if pattern.startswith("{package}/"): + pattern = pattern[len("{package}/"):] + basename = src.basename + if basename.endswith(".proto"): + basename = basename[:-6] + elif basename.endswith(".protodevel"): + basename = basename[:-11] + + filename = basename + + if pattern.find("{basename}") != -1: + filename = pattern.replace("{basename}", basename) + elif pattern.find("{basename|pascal}") != -1: + filename = pattern.replace("{basename|pascal}", _pascal_case(basename)) + elif pattern.find("{basename|pascal|objc}") != -1: + filename = pattern.replace("{basename|pascal|objc}", _pascal_objc(basename)) + elif pattern.find("{basename|rust_keyword}") != -1: + filename = pattern.replace("{basename|rust_keyword}", _rust_keyword(basename)) + else: + filename = basename + pattern + + return filename + +def _get_proto_filename(src): + """Assemble the filename for a proto + + Args: + src: the .proto + + Returns: + of the filename. + """ + parts = src.short_path.split("/") + if len(parts) > 1 and parts[0] == "..": + return "/".join(parts[2:]) + return src.short_path + +def _copy_jar_to_srcjar(ctx, jar): + """Copy .jar to .srcjar + + Args: + ctx: the object + jar: the of a jar containing source files. + + Returns: + for the renamed file + """ + srcjar = ctx.actions.declare_file("%s/%s.srcjar" % (ctx.label.name, ctx.label.name)) + ctx.actions.run_shell( + mnemonic = "CopySrcjar", + inputs = [jar], + outputs = [srcjar], + command = "mv %s %s" % (jar.path, srcjar.path), + ) + return srcjar + +def _get_plugin_option(label_name, option): + """Build a plugin option, doing plugin option template replacements if present + + Args: + label_name: the ctx.label.name + option: string from the + + Returns: + for the --plugin_out= arg + """ + + # TODO: use .format here and pass in a substitutions struct! + return option.replace("{name}", label_name) + +def _get_plugin_options(label_name, options): + """Build a plugin option list + + Args: + label_name: the ctx.label.name + options: list options from the + + Returns: + for the --plugin_out= arg + """ + return [_get_plugin_option(label_name, option) for option in options] + +def _apply_plugin_transitivity_rules(ctx, targets, plugin): + """Process the proto target list according to plugin transitivity rules + + Args: + ctx: the object + targets: the dict of .proto files that we intend to compile. + plugin: the object. + + Returns: + > the possibly filtered list of .proto s + """ + + # Iterate transitivity rules like '{ "google/protobuf": "exclude" }'. The + # only rule type implemented is "exclude", which checks if the pathname or + # dirname ends with the given pattern. If so, remove that item in the + # targets list. + # + # Why does this feature exist? Well, library rules like C# require all the + # proto files to be present during the compilation (collected via transitive + # sources). However, since the well-known types are already present in the + # library dependencies, we don't actually want to compile well-known types + # (but do want to compile everything else). + # + transitivity = plugin.transitivity + ctx.attr.transitivity + + for pattern, rule in transitivity.items(): + if rule == "exclude": + for key, target in targets.items(): + if ctx.attr.verbose > 2: + print("Checking '%s' endswith '%s'" % (target.short_path, pattern)) + if target.dirname.endswith(pattern) or target.path.endswith(pattern): + targets.pop(key) + if ctx.attr.verbose > 2: + print("Removing '%s' from the list of files to compile as plugin '%s' excluded it" % (target.short_path, plugin.name)) + elif ctx.attr.verbose > 2: + print("Keeping '%s' (not excluded)" % (target.short_path)) + elif rule == "include": + for key, target in targets.items(): + if target.dirname.endswith(pattern) or target.path.endswith(pattern): + if ctx.attr.verbose > 2: + print("Keeping '%s' (explicitly included)" % (target.short_path)) + else: + targets.pop(key) + if ctx.attr.verbose > 2: + print("Removing '%s' from the list of files to compile as plugin '%s' did not include it" % (target.short_path, plugin.name)) + else: + fail("Unknown transitivity rule '%s'" % rule) + return targets + +# def get_plugin_outputs(ctx, descriptor, outputs, proto, plugin): +# """Get the predicted generated outputs for a given plugin + +# Args: +# ctx: the object +# descriptor: the descriptor +# outputs: the list of outputs. +# proto: the source .proto +# plugin: the object. + +# Returns: +# > the augmented list of files that will be generated +# """ +# for output in plugin.outputs: +# filename = _get_output_filename(proto, plugin, output) +# if not filename: +# continue +# # sibling = _get_output_sibling_file(output, proto, descriptor) +# # sibling = proto +# # print("FILENAME: %s" % filename) +# # output = ctx.actions.declare_file(filename, sibling = sibling) +# output = ctx.actions.declare_file(filename) +# # output = ctx.new_file(filename, root = descriptor) + +# # print("Using sibling file '%s' for '%s' => '%s'" % (sibling.path, filename, output.path)) +# outputs.append(output) +# return outputs + +def get_plugin_runfiles(tool): + """Gather runfiles for a plugin. + """ + files = [] + if not tool: + return files + + info = tool[DefaultInfo] + if not info: + return files + + if info.files: + files += info.files.to_list() + + if info.default_runfiles: + runfiles = info.default_runfiles + if runfiles.files: + files += runfiles.files.to_list() + + if info.data_runfiles: + runfiles = info.data_runfiles + if runfiles.files: + files += runfiles.files.to_list() + + return files diff --git a/closure/README.md b/closure/README.md index 698b733e7..c760723e2 100644 --- a/closure/README.md +++ b/closure/README.md @@ -79,6 +79,13 @@ closure_proto_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disallow_struct_provider_syntax | false | | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/closure/example/closure_proto_compile/.bazelrc b/closure/example/closure_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/closure/example/closure_proto_library/.bazelrc b/closure/example/closure_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/closure/example/routeguide/main.js b/closure/example/routeguide/main.js new file mode 100644 index 000000000..6497efc10 --- /dev/null +++ b/closure/example/routeguide/main.js @@ -0,0 +1,16 @@ +goog.provide('my.jspb.test.main'); + +goog.require('jspb.Map'); + +/** + * Main entry point for the application. + * @export + */ +my.jspb.test.main = function() { + + // Increase stacktrace limit in chrome + Error['stackTraceLimit'] = 150; + + const protoMap = new jspb.Map([]); + console.log("ok", protoMap); +}; diff --git a/compile.bzl b/compile.bzl index a3bfb09eb..6c166bc45 100644 --- a/compile.bzl +++ b/compile.bzl @@ -55,10 +55,6 @@ objc_upper_segments = { "https": "HTTPS", } -# Hack - providers indexing is by int, but I have not idea how to get the actual -# provider object here. -ProtoInfoProvider = 0 - def _capitalize(s): """Capitalize a string - only first letter Args: @@ -268,7 +264,7 @@ def get_plugin_out_arg(ctx, outdir, plugin, plugin_outfiles): Args: ctx: the object - output: the package output directory + outdir: the package output directory plugin: the object. plugin_outfiles: The >. For example, {closure: "library.js"} @@ -281,14 +277,14 @@ def get_plugin_out_arg(ctx, outdir, plugin, plugin_outfiles): arg = plugin.outdir.replace("{name}", outdir) elif plugin.out: outfile = plugin_outfiles[plugin.name] - - #arg = "%s" % (outdir) - #arg = "%s/%s" % (outdir, outfile.short_path) arg = outfile.path # Collate a list of options from the plugin itself PLUS options from the # global plugin_options list (if they exist) - options = getattr(plugin, "options", []) + ctx.attr.plugin_options + options = [] + options += getattr(plugin, "options", []) + options += getattr(ctx.attr, "plugin_options", []) + if options: arg = "%s:%s" % (",".join(_get_plugin_options(ctx, options)), arg) return "--%s_out=%s" % (plugin.name, arg) @@ -344,7 +340,7 @@ def _apply_plugin_transitivity_rules(ctx, targets, plugin): fail("Unknown transitivity rule '%s'" % rule) return targets -def _get_plugin_outputs(ctx, descriptor, outputs, src, proto, plugin): +def get_plugin_outputs(ctx, descriptor, outputs, src, proto, plugin): """Get the predicted generated outputs for a given plugin Args: @@ -403,9 +399,6 @@ def proto_compile_impl(ctx): # the protoc tool protoc = ctx.executable.protoc - # if this is a gRPC compilation - has_services = ctx.attr.has_services - # for the output descriptor. Often used as the sibling in # 'declare_file' actions. descriptor = ctx.outputs.descriptor @@ -414,7 +407,7 @@ def proto_compile_impl(ctx): outdir = descriptor.dirname # > A list of ProtoInfo - deps = [dep.proto for dep in ctx.attr.deps] + deps = [dep[ProtoInfo] for dep in ctx.attr.deps] # > A list of PluginInfo plugins = [plugin[ProtoPluginInfo] for plugin in ctx.attr.plugins] @@ -513,7 +506,7 @@ def proto_compile_impl(ctx): targets[src] = proto ### - ### Part 3cb: apply transitivity rules + ### Part 3b: apply transitivity rules ### # If the 'transitive = true' was enabled, we collected all the protos into @@ -529,7 +522,7 @@ def proto_compile_impl(ctx): ### for src, proto in targets.items(): for plugin in plugins: - outputs = _get_plugin_outputs(ctx, descriptor, outputs, src, proto, plugin) + outputs = get_plugin_outputs(ctx, descriptor, outputs, src, proto, plugin) ### ### Part 4: build list of arguments for protoc @@ -617,7 +610,7 @@ proto_compile = rule( "deps": attr.label_list( doc = "proto_library dependencies", mandatory = True, - providers = ["proto"], + providers = [ProtoInfo], ), "plugins": attr.label_list( doc = "List of protoc plugins to apply", @@ -630,9 +623,6 @@ proto_compile = rule( "outputs": attr.output_list( doc = "Escape mechanism to explicitly declare files that will be generated", ), - "has_services": attr.bool( - doc = "If the proto files(s) have a service rpc, generate grpc outputs", - ), "protoc": attr.label( doc = "The protoc tool", default = "@com_google_protobuf//:protoc", @@ -657,6 +647,7 @@ proto_compile = rule( doc = "Transitive rules. When the 'transitive' property is enabled, this string_dict can be used to exclude protos from the compilation list", ), }, + # TODO(pcj) remove this outputs = { "descriptor": "%{name}/descriptor.source.bin", }, @@ -681,7 +672,6 @@ def invoke_transitive(proto_compile_rule, name_suffix, kwargs): """ deps = kwargs.get("deps") - has_services = kwargs.get("has_services") include_imports = kwargs.get("include_imports") include_source_info = kwargs.get("include_source_info") name = kwargs.get("name") @@ -698,7 +688,6 @@ def invoke_transitive(proto_compile_rule, name_suffix, kwargs): proto_compile_rule( name = rule_name, deps = deps, - has_services = has_services, include_imports = include_imports, include_source_info = include_source_info, outputs = outputs, diff --git a/cpp/README.md b/cpp/README.md index 16ba73197..5a55a1e54 100644 --- a/cpp/README.md +++ b/cpp/README.md @@ -175,6 +175,14 @@ cpp_grpc_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disable_legacy_proto_provider | false | grpc/gprc has not migrated to ProtoInfo provider | +| build | incompatible_depset_is_not_iterable | false | com_github_grpc_grpc/bazel/generate_cc.bzl line 10, in generate_cc_impl | +| build | incompatible_disallow_struct_provider_syntax | false | com_github_grpc_grpc/bazel/generate_cc.bzl: 81 | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/cpp/example/cpp_grpc_compile/.bazelrc b/cpp/example/cpp_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/cpp/example/cpp_grpc_library/.bazelrc b/cpp/example/cpp_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/cpp/example/cpp_proto_compile/.bazelrc b/cpp/example/cpp_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/cpp/example/cpp_proto_library/.bazelrc b/cpp/example/cpp_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/csharp/README.md b/csharp/README.md index 16d284376..2c39f6a4c 100644 --- a/csharp/README.md +++ b/csharp/README.md @@ -185,6 +185,7 @@ csharp_proto_library( | Category | Flag | Value | Description | | --- | --- | --- | --- | | build | strategy | CoreCompile=standalone | dotnet SDK desperately wants to find the HOME directory | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes @@ -272,6 +273,7 @@ csharp_grpc_library( | Category | Flag | Value | Description | | --- | --- | --- | --- | | build | strategy | CoreCompile=standalone | dotnet SDK desperately wants to find the HOME directory | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes diff --git a/csharp/example/csharp_grpc_compile/.bazelrc b/csharp/example/csharp_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/csharp/example/csharp_grpc_library/.bazelrc b/csharp/example/csharp_grpc_library/.bazelrc deleted file mode 100644 index 425cdb41e..000000000 --- a/csharp/example/csharp_grpc_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# dotnet SDK desperately wants to find the HOME directory -build --strategy=CoreCompile=standalone \ No newline at end of file diff --git a/csharp/example/csharp_proto_compile/.bazelrc b/csharp/example/csharp_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/csharp/example/csharp_proto_library/.bazelrc b/csharp/example/csharp_proto_library/.bazelrc deleted file mode 100644 index 425cdb41e..000000000 --- a/csharp/example/csharp_proto_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# dotnet SDK desperately wants to find the HOME directory -build --strategy=CoreCompile=standalone \ No newline at end of file diff --git a/d/README.md b/d/README.md index 746c49bf3..981646a96 100644 --- a/d/README.md +++ b/d/README.md @@ -33,6 +33,12 @@ d_proto_compile( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disallow_struct_provider_syntax | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/d/example/d_proto_compile/.bazelrc b/d/example/d_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/d/example/routeguide/BUILD.bazel b/d/example/routeguide/BUILD.bazel index f078ec3c3..fe1eeea06 100644 --- a/d/example/routeguide/BUILD.bazel +++ b/d/example/routeguide/BUILD.bazel @@ -1,4 +1,3 @@ -load("//d:d_proto_library.bzl", "d_proto_library") load("//d:d_proto_compile.bzl", "d_proto_compile") load("@io_bazel_rules_d//d:d.bzl", "d_library") diff --git a/dart/README.md b/dart/README.md index 7900aebea..a316815a8 100644 --- a/dart/README.md +++ b/dart/README.md @@ -21,7 +21,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_proto_compile") dart_proto_compile() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -51,7 +51,13 @@ dart_proto_compile( | Category | Flag | Value | Description | | --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | vm.bzl is still using cfg=data | +| build | incompatible_no_transitive_loads | false | | +| build | incompatible_disable_deprecated_attr_params | false | | +| build | incompatible_enable_cc_toolchain_resolution | false | | +| build | incompatible_require_ctx_in_configure_features | false | | +| build | incompatible_depset_is_not_iterable | false | | +| build | incompatible_depset_union | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes @@ -87,7 +93,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_grpc_compile") dart_grpc_compile() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -117,7 +123,13 @@ dart_grpc_compile( | Category | Flag | Value | Description | | --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | vm.bzl is still using cfg=data | +| build | incompatible_no_transitive_loads | false | | +| build | incompatible_disable_deprecated_attr_params | false | | +| build | incompatible_enable_cc_toolchain_resolution | false | | +| build | incompatible_require_ctx_in_configure_features | false | | +| build | incompatible_depset_is_not_iterable | false | | +| build | incompatible_depset_union | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes @@ -153,7 +165,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_proto_library") dart_proto_library() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -183,7 +195,13 @@ dart_proto_library( | Category | Flag | Value | Description | | --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | vm.bzl is still using cfg=data | +| build | incompatible_no_transitive_loads | false | | +| build | incompatible_disable_deprecated_attr_params | false | | +| build | incompatible_enable_cc_toolchain_resolution | false | | +| build | incompatible_require_ctx_in_configure_features | false | | +| build | incompatible_depset_is_not_iterable | false | | +| build | incompatible_depset_union | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes @@ -219,7 +237,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_grpc_library") dart_grpc_library() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -253,7 +271,13 @@ dart_grpc_library( | Category | Flag | Value | Description | | --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | vm.bzl is still using cfg=data | +| build | incompatible_no_transitive_loads | false | | +| build | incompatible_disable_deprecated_attr_params | false | | +| build | incompatible_enable_cc_toolchain_resolution | false | | +| build | incompatible_require_ctx_in_configure_features | false | | +| build | incompatible_depset_is_not_iterable | false | | +| build | incompatible_depset_union | false | | +| build | incompatible_disallow_struct_provider_syntax | false | | ### Mandatory Attributes diff --git a/dart/example/dart_grpc_compile/.bazelrc b/dart/example/dart_grpc_compile/.bazelrc deleted file mode 100644 index f01d350d7..000000000 --- a/dart/example/dart_grpc_compile/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# vm.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/dart/example/dart_grpc_library/.bazelrc b/dart/example/dart_grpc_library/.bazelrc deleted file mode 100644 index f01d350d7..000000000 --- a/dart/example/dart_grpc_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# vm.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/dart/example/dart_proto_compile/.bazelrc b/dart/example/dart_proto_compile/.bazelrc deleted file mode 100644 index f01d350d7..000000000 --- a/dart/example/dart_proto_compile/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# vm.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/dart/example/dart_proto_library/.bazelrc b/dart/example/dart_proto_library/.bazelrc deleted file mode 100644 index f01d350d7..000000000 --- a/dart/example/dart_proto_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# vm.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/deps.bzl b/deps.bzl index 39eaaf93b..8062db0d2 100644 --- a/deps.bzl +++ b/deps.bzl @@ -1,5 +1,5 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_jar") +# load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_jar") # https://raw.githubusercontent.com/grpc/grpc/master/third_party/zlib.BUILD ZLIB_BUILD = """ @@ -65,7 +65,7 @@ def jar(name, artifact, sha1): """Declare a maven_jar """ if name not in native.existing_rules(): - maven_jar( + native.maven_jar( name = name, artifact = artifact, sha1 = sha1, @@ -204,20 +204,20 @@ def io_bazel_rules_dotnet(**kwargs): def io_bazel_rules_scala(**kwargs): name = "io_bazel_rules_scala" - ref = get_ref(name, "6a9f81aa29563a07cc69a2555e54ac3cdfd396ed", kwargs) # Apr 14 2019 (merged #725) - sha256 = get_sha256(name, "d746ba9606bf05c5987e61cf02750ea12724341b3cfd1724bf9ab0bd03c47284", kwargs) + ref = get_ref(name, "14d9742496859faaf860b1adfc8126f3ed077921", kwargs) # May 3, 2019 + sha256 = get_sha256(name, "72fc4357b29ec93951d472ee22a4cc3f30e170234a4ec73ff678f43f7e276bd4", kwargs) github_archive(name, "bazelbuild", "rules_scala", ref, sha256) def io_bazel_rules_rust(**kwargs): name = "io_bazel_rules_rust" - ref = get_ref(name, "2215277a2be52263ca5cd4e547cc4a50e320b828", kwargs) - sha256 = get_sha256(name, "55d2ff891c25ebf589aff604c8f1b41afa3fe88dbc3b6f912cd44974111b413e", kwargs) + ref = get_ref(name, "d28b121396974a628b9cdb29b6ed7f4e370edb4e", kwargs) # May 8, 2019 + sha256 = get_sha256(name, "58b8786e00b3489ce127e001670fd991547bb7db315e8a214915a2fa0b83743f", kwargs) github_archive(name, "bazelbuild", "rules_rust", ref, sha256) def com_github_yugui_rules_ruby(**kwargs): name = "com_github_yugui_rules_ruby" - ref = get_ref(name, "933aa144b2683a37bd949bf9ec2ac532382770d8", kwargs) # PR#8, - sha256 = get_sha256(name, "c3177fd260fbf9434eec0183276cd3f37469ed120b8dd1f71be7b4af34725bed", kwargs) + ref = get_ref(name, "73479cdc6a34a8d940cc3c904badf7a2ae6bdc6d", kwargs) # PR#8, + sha256 = get_sha256(name, "bd88b1aa144f70bb3f069ff3ddc5ddba032311ce27fb40b7276db694dcb63490", kwargs) github_archive(name, "yugui", "rules_ruby", ref, sha256) def grpc_ecosystem_grpc_gateway(**kwargs): @@ -228,8 +228,8 @@ def grpc_ecosystem_grpc_gateway(**kwargs): def org_pubref_rules_node(**kwargs): name = "org_pubref_rules_node" - ref = get_ref(name, "c7b9ae3eb2fa75bec2fdd4d188b57ab431796f5d", kwargs) # PR#80 - sha256 = get_sha256(name, "b4a10f3325dd44ddabf9a75778cb7f183abe629815b8cd3a9c761490fcb6ba8b", kwargs) + ref = get_ref(name, "9ebfa90ca3283bb0f92ae5f337173a5a5a4d98aa", kwargs) + sha256 = get_sha256(name, "cb1bf3d64c0b323bc515748902df9fef9ecfcc37c7aa84253d7e99d876f1196a", kwargs) github_archive(name, "pubref", "rules_node", ref, sha256) def build_bazel_rules_android(**kwargs): @@ -263,8 +263,8 @@ def io_bazel_rules_go(**kwargs): """Go Rules """ name = "io_bazel_rules_go" - ref = get_ref(name, "2d792dea8d22c552f455623bb15eb4f61fcb2f1b", kwargs) # 0.16.5 - sha256 = get_sha256(name, "6afe04f13fd9a1ad8f02a44ebd0c61a825c01e8745cadb7db13ee7a68d9d492c", kwargs) + ref = get_ref(name, "4fec67d1fcefe7c80d6f4cc2ae0841c9d90e429a", kwargs) # post-18.3 + sha256 = get_sha256(name, "2ab9320c583b05b805a7f8f4005fd081606505a64308051008d32148d7f98e1f", kwargs) github_archive(name, "bazelbuild", "rules_go", ref, sha256) def io_bazel_rules_python(**kwargs): @@ -283,7 +283,7 @@ def six(**kwargs): build_file_content = """ genrule( name = "copy_six", - srcs = ["six-1.10.0/six.py"], + srcs = ["six-1.12.0/six.py"], outs = ["six.py"], cmd = "cp $< $(@)", ) @@ -295,17 +295,17 @@ py_library( visibility = ["//visibility:public"], ) """, - sha256 = "105f8d68616f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a", - urls = ["https://pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz#md5=34eed507548117b2ab523ab14b2f8b55"], + sha256 = "105f8d68613f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a", + urls = ["https://pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz"], ) def io_bazel_rules_dart(**kwargs): """Dart Rules """ name = "io_bazel_rules_dart" - ref = get_ref(name, "78a4e1ba257bbe9a9d7a064c8cde8c5317059e17", kwargs) # ~11/27/2018 - sha256 = get_sha256(name, "7e699c457f45151e5c61dce6bdcaf14e4cb840d95af86c13a9e7eecc49fd39a3", kwargs) - github_archive(name, "dart-lang", "rules_dart", ref, sha256) + ref = get_ref(name, "07aa5a42827f74d707ad3abcd3edbc14c7cad837", kwargs) # Mar 11 (fork of dart-lang/rules_dart) + sha256 = get_sha256(name, "836aa1908fda2c5f25f5a8dc298399d60252006c2953d170b95a33bfc5b5de14", kwargs) + github_archive(name, "FKint", "rules_dart", ref, sha256) def io_bazel_rules_d(**kwargs): """d Rules @@ -319,17 +319,17 @@ def com_google_protobuf_lite(**kwargs): """A different branch of google/protobuf that contains the protobuf_lite plugin """ name = "com_google_protobuf_lite" - ref = get_ref(name, "d5e9baa5841d501996ddacbba6ad6da1912e8eeb", kwargs) # ivuca #66 - sha256 = get_sha256(name, "c836a2046acb9635e259c3e639dc2ca50d4550d0350f1c98236fb203065e0359", kwargs) + ref = get_ref(name, "3cf3be9959928bf8a7133d323eaf6a5a8d5afdd7", kwargs) # latest as of Apr 9, 2019 + sha256 = get_sha256(name, "9f28fd96ccd1f87e0b2d23c622db2a87c87ff91dc30dd13a6dd3bff11738e608", kwargs) github_archive(name, "protocolbuffers", "protobuf", ref, sha256) -def gmaven_rules(**kwargs): - """A catalog of maven & android jars on google maven server +def rules_jvm_external(**kwargs): + """Fetch maven artifacts """ - name = "gmaven_rules" - ref = get_ref(name, "20180927-1", kwargs) - sha256 = get_sha256(name, "ddaa0f5811253e82f67ee637dc8caf3989e4517bac0368355215b0dcfa9844d6", kwargs) - github_archive(name, "bazelbuild", "gmaven_rules", ref, sha256) + name = "rules_jvm_external" + ref = get_ref(name, "e359007344bc53133e1e54c891670d08453d4827", kwargs) # May 7 2019 + sha256 = get_sha256(name, "150c8cd5a3abe8b2da09235ebe5aedd0a379440d9f6a15d1c99c2b1e560a09f9", kwargs) + github_archive(name, "bazelbuild", "rules_jvm_external", ref, sha256) def io_grpc_grpc_java(**kwargs): """grpc java plugin and jars @@ -348,7 +348,7 @@ def com_google_guava_guava(**kwargs): jar(name, artifact, sha1) def com_google_guava_guava_android(**kwargs): - """grpc java plugin and jars + """android-specific guava """ name = "com_google_guava_guava_android" artifact = get_artifact(name, "com.google.guava:guava:27.0.1-android", kwargs) diff --git a/example/android/android_grpc_compile/.bazelrc b/example/android/android_grpc_compile/.bazelrc new file mode 100644 index 000000000..f42972e75 --- /dev/null +++ b/example/android/android_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_disable_deprecated_attr_params=false \ No newline at end of file diff --git a/android/example/android_grpc_compile/BUILD.bazel b/example/android/android_grpc_compile/BUILD.bazel similarity index 100% rename from android/example/android_grpc_compile/BUILD.bazel rename to example/android/android_grpc_compile/BUILD.bazel diff --git a/android/example/android_grpc_compile/WORKSPACE b/example/android/android_grpc_compile/WORKSPACE similarity index 100% rename from android/example/android_grpc_compile/WORKSPACE rename to example/android/android_grpc_compile/WORKSPACE diff --git a/example/android/android_grpc_library/.bazelrc b/example/android/android_grpc_library/.bazelrc new file mode 100644 index 000000000..053d73401 --- /dev/null +++ b/example/android/android_grpc_library/.bazelrc @@ -0,0 +1,10 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_remove_native_maven_jar=false +# +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/android/example/android_grpc_library/BUILD.bazel b/example/android/android_grpc_library/BUILD.bazel similarity index 100% rename from android/example/android_grpc_library/BUILD.bazel rename to example/android/android_grpc_library/BUILD.bazel diff --git a/android/example/android_grpc_library/WORKSPACE b/example/android/android_grpc_library/WORKSPACE similarity index 89% rename from android/example/android_grpc_library/WORKSPACE rename to example/android/android_grpc_library/WORKSPACE index d26a22f90..f06266505 100644 --- a/android/example/android_grpc_library/WORKSPACE +++ b/example/android/android_grpc_library/WORKSPACE @@ -22,7 +22,3 @@ android_grpc_library() load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules() diff --git a/example/android/android_proto_compile/.bazelrc b/example/android/android_proto_compile/.bazelrc new file mode 100644 index 000000000..f42972e75 --- /dev/null +++ b/example/android/android_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_disable_deprecated_attr_params=false \ No newline at end of file diff --git a/android/example/android_proto_compile/BUILD.bazel b/example/android/android_proto_compile/BUILD.bazel similarity index 100% rename from android/example/android_proto_compile/BUILD.bazel rename to example/android/android_proto_compile/BUILD.bazel diff --git a/android/example/android_proto_compile/WORKSPACE b/example/android/android_proto_compile/WORKSPACE similarity index 100% rename from android/example/android_proto_compile/WORKSPACE rename to example/android/android_proto_compile/WORKSPACE diff --git a/example/android/android_proto_library/.bazelrc b/example/android/android_proto_library/.bazelrc new file mode 100644 index 000000000..053d73401 --- /dev/null +++ b/example/android/android_proto_library/.bazelrc @@ -0,0 +1,10 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_remove_native_maven_jar=false +# +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/android/example/android_proto_library/BUILD.bazel b/example/android/android_proto_library/BUILD.bazel similarity index 100% rename from android/example/android_proto_library/BUILD.bazel rename to example/android/android_proto_library/BUILD.bazel diff --git a/android/example/android_proto_library/WORKSPACE b/example/android/android_proto_library/WORKSPACE similarity index 91% rename from android/example/android_proto_library/WORKSPACE rename to example/android/android_proto_library/WORKSPACE index c70bc22fd..83d34054b 100644 --- a/android/example/android_proto_library/WORKSPACE +++ b/example/android/android_proto_library/WORKSPACE @@ -24,7 +24,3 @@ android_proto_library() load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules() diff --git a/example/closure/closure_proto_compile/.bazelrc b/example/closure/closure_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/closure/closure_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/closure/example/closure_proto_compile/BUILD.bazel b/example/closure/closure_proto_compile/BUILD.bazel similarity index 100% rename from closure/example/closure_proto_compile/BUILD.bazel rename to example/closure/closure_proto_compile/BUILD.bazel diff --git a/closure/example/closure_proto_compile/WORKSPACE b/example/closure/closure_proto_compile/WORKSPACE similarity index 100% rename from closure/example/closure_proto_compile/WORKSPACE rename to example/closure/closure_proto_compile/WORKSPACE diff --git a/example/closure/closure_proto_library/.bazelrc b/example/closure/closure_proto_library/.bazelrc new file mode 100644 index 000000000..7fa3a9260 --- /dev/null +++ b/example/closure/closure_proto_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/closure/example/closure_proto_library/BUILD.bazel b/example/closure/closure_proto_library/BUILD.bazel similarity index 100% rename from closure/example/closure_proto_library/BUILD.bazel rename to example/closure/closure_proto_library/BUILD.bazel diff --git a/closure/example/closure_proto_library/WORKSPACE b/example/closure/closure_proto_library/WORKSPACE similarity index 100% rename from closure/example/closure_proto_library/WORKSPACE rename to example/closure/closure_proto_library/WORKSPACE diff --git a/example/cpp/cpp_grpc_compile/.bazelrc b/example/cpp/cpp_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/cpp/cpp_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/cpp/example/cpp_grpc_compile/BUILD.bazel b/example/cpp/cpp_grpc_compile/BUILD.bazel similarity index 100% rename from cpp/example/cpp_grpc_compile/BUILD.bazel rename to example/cpp/cpp_grpc_compile/BUILD.bazel diff --git a/cpp/example/cpp_grpc_compile/WORKSPACE b/example/cpp/cpp_grpc_compile/WORKSPACE similarity index 100% rename from cpp/example/cpp_grpc_compile/WORKSPACE rename to example/cpp/cpp_grpc_compile/WORKSPACE diff --git a/example/cpp/cpp_grpc_library/.bazelrc b/example/cpp/cpp_grpc_library/.bazelrc new file mode 100644 index 000000000..d50eabefa --- /dev/null +++ b/example/cpp/cpp_grpc_library/.bazelrc @@ -0,0 +1,10 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# grpc/gprc has not migrated to ProtoInfo provider +build --incompatible_disable_legacy_proto_provider=false +# com_github_grpc_grpc/bazel/generate_cc.bzl line 10, in generate_cc_impl +build --incompatible_depset_is_not_iterable=false +# com_github_grpc_grpc/bazel/generate_cc.bzl: 81 +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/cpp/example/cpp_grpc_library/BUILD.bazel b/example/cpp/cpp_grpc_library/BUILD.bazel similarity index 100% rename from cpp/example/cpp_grpc_library/BUILD.bazel rename to example/cpp/cpp_grpc_library/BUILD.bazel diff --git a/cpp/example/cpp_grpc_library/WORKSPACE b/example/cpp/cpp_grpc_library/WORKSPACE similarity index 100% rename from cpp/example/cpp_grpc_library/WORKSPACE rename to example/cpp/cpp_grpc_library/WORKSPACE diff --git a/example/cpp/cpp_proto_compile/.bazelrc b/example/cpp/cpp_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/cpp/cpp_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/cpp/example/cpp_proto_compile/BUILD.bazel b/example/cpp/cpp_proto_compile/BUILD.bazel similarity index 100% rename from cpp/example/cpp_proto_compile/BUILD.bazel rename to example/cpp/cpp_proto_compile/BUILD.bazel diff --git a/cpp/example/cpp_proto_compile/WORKSPACE b/example/cpp/cpp_proto_compile/WORKSPACE similarity index 100% rename from cpp/example/cpp_proto_compile/WORKSPACE rename to example/cpp/cpp_proto_compile/WORKSPACE diff --git a/example/cpp/cpp_proto_library/.bazelrc b/example/cpp/cpp_proto_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/cpp/cpp_proto_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/cpp/example/cpp_proto_library/BUILD.bazel b/example/cpp/cpp_proto_library/BUILD.bazel similarity index 100% rename from cpp/example/cpp_proto_library/BUILD.bazel rename to example/cpp/cpp_proto_library/BUILD.bazel diff --git a/cpp/example/cpp_proto_library/WORKSPACE b/example/cpp/cpp_proto_library/WORKSPACE similarity index 100% rename from cpp/example/cpp_proto_library/WORKSPACE rename to example/cpp/cpp_proto_library/WORKSPACE diff --git a/example/csharp/csharp_grpc_compile/.bazelrc b/example/csharp/csharp_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/csharp/csharp_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/csharp/example/csharp_grpc_compile/BUILD.bazel b/example/csharp/csharp_grpc_compile/BUILD.bazel similarity index 100% rename from csharp/example/csharp_grpc_compile/BUILD.bazel rename to example/csharp/csharp_grpc_compile/BUILD.bazel diff --git a/csharp/example/csharp_grpc_compile/WORKSPACE b/example/csharp/csharp_grpc_compile/WORKSPACE similarity index 100% rename from csharp/example/csharp_grpc_compile/WORKSPACE rename to example/csharp/csharp_grpc_compile/WORKSPACE diff --git a/example/csharp/csharp_grpc_library/.bazelrc b/example/csharp/csharp_grpc_library/.bazelrc new file mode 100644 index 000000000..e9fc8dd86 --- /dev/null +++ b/example/csharp/csharp_grpc_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# dotnet SDK desperately wants to find the HOME directory +build --strategy=CoreCompile=standalone +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/csharp/example/csharp_grpc_library/BUILD.bazel b/example/csharp/csharp_grpc_library/BUILD.bazel similarity index 100% rename from csharp/example/csharp_grpc_library/BUILD.bazel rename to example/csharp/csharp_grpc_library/BUILD.bazel diff --git a/csharp/example/csharp_grpc_library/WORKSPACE b/example/csharp/csharp_grpc_library/WORKSPACE similarity index 100% rename from csharp/example/csharp_grpc_library/WORKSPACE rename to example/csharp/csharp_grpc_library/WORKSPACE diff --git a/example/csharp/csharp_proto_compile/.bazelrc b/example/csharp/csharp_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/csharp/csharp_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/csharp/example/csharp_proto_compile/BUILD.bazel b/example/csharp/csharp_proto_compile/BUILD.bazel similarity index 100% rename from csharp/example/csharp_proto_compile/BUILD.bazel rename to example/csharp/csharp_proto_compile/BUILD.bazel diff --git a/csharp/example/csharp_proto_compile/WORKSPACE b/example/csharp/csharp_proto_compile/WORKSPACE similarity index 100% rename from csharp/example/csharp_proto_compile/WORKSPACE rename to example/csharp/csharp_proto_compile/WORKSPACE diff --git a/example/csharp/csharp_proto_library/.bazelrc b/example/csharp/csharp_proto_library/.bazelrc new file mode 100644 index 000000000..e9fc8dd86 --- /dev/null +++ b/example/csharp/csharp_proto_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# dotnet SDK desperately wants to find the HOME directory +build --strategy=CoreCompile=standalone +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/csharp/example/csharp_proto_library/BUILD.bazel b/example/csharp/csharp_proto_library/BUILD.bazel similarity index 100% rename from csharp/example/csharp_proto_library/BUILD.bazel rename to example/csharp/csharp_proto_library/BUILD.bazel diff --git a/csharp/example/csharp_proto_library/WORKSPACE b/example/csharp/csharp_proto_library/WORKSPACE similarity index 100% rename from csharp/example/csharp_proto_library/WORKSPACE rename to example/csharp/csharp_proto_library/WORKSPACE diff --git a/example/d/d_proto_compile/.bazelrc b/example/d/d_proto_compile/.bazelrc new file mode 100644 index 000000000..2d232986c --- /dev/null +++ b/example/d/d_proto_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/d/example/d_proto_compile/BUILD.bazel b/example/d/d_proto_compile/BUILD.bazel similarity index 100% rename from d/example/d_proto_compile/BUILD.bazel rename to example/d/d_proto_compile/BUILD.bazel diff --git a/d/example/d_proto_compile/WORKSPACE b/example/d/d_proto_compile/WORKSPACE similarity index 100% rename from d/example/d_proto_compile/WORKSPACE rename to example/d/d_proto_compile/WORKSPACE diff --git a/example/dart/dart_grpc_compile/.bazelrc b/example/dart/dart_grpc_compile/.bazelrc new file mode 100644 index 000000000..4078451b1 --- /dev/null +++ b/example/dart/dart_grpc_compile/.bazelrc @@ -0,0 +1,18 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_no_transitive_loads=false +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --incompatible_depset_is_not_iterable=false +# +build --incompatible_depset_union=false +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/dart/example/dart_grpc_compile/BUILD.bazel b/example/dart/dart_grpc_compile/BUILD.bazel similarity index 100% rename from dart/example/dart_grpc_compile/BUILD.bazel rename to example/dart/dart_grpc_compile/BUILD.bazel diff --git a/dart/example/dart_grpc_compile/WORKSPACE b/example/dart/dart_grpc_compile/WORKSPACE similarity index 86% rename from dart/example/dart_grpc_compile/WORKSPACE rename to example/dart/dart_grpc_compile/WORKSPACE index 7d923702d..897f34beb 100644 --- a/dart/example/dart_grpc_compile/WORKSPACE +++ b/example/dart/dart_grpc_compile/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_grpc_compile") dart_grpc_compile() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/dart/dart_grpc_library/.bazelrc b/example/dart/dart_grpc_library/.bazelrc new file mode 100644 index 000000000..4078451b1 --- /dev/null +++ b/example/dart/dart_grpc_library/.bazelrc @@ -0,0 +1,18 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_no_transitive_loads=false +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --incompatible_depset_is_not_iterable=false +# +build --incompatible_depset_union=false +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/dart/example/dart_grpc_library/BUILD.bazel b/example/dart/dart_grpc_library/BUILD.bazel similarity index 100% rename from dart/example/dart_grpc_library/BUILD.bazel rename to example/dart/dart_grpc_library/BUILD.bazel diff --git a/dart/example/dart_grpc_library/WORKSPACE b/example/dart/dart_grpc_library/WORKSPACE similarity index 88% rename from dart/example/dart_grpc_library/WORKSPACE rename to example/dart/dart_grpc_library/WORKSPACE index 0ed3ecdd2..3f555544c 100644 --- a/dart/example/dart_grpc_library/WORKSPACE +++ b/example/dart/dart_grpc_library/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_grpc_library") dart_grpc_library() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/dart/dart_proto_compile/.bazelrc b/example/dart/dart_proto_compile/.bazelrc new file mode 100644 index 000000000..4078451b1 --- /dev/null +++ b/example/dart/dart_proto_compile/.bazelrc @@ -0,0 +1,18 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_no_transitive_loads=false +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --incompatible_depset_is_not_iterable=false +# +build --incompatible_depset_union=false +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/dart/example/dart_proto_compile/BUILD.bazel b/example/dart/dart_proto_compile/BUILD.bazel similarity index 100% rename from dart/example/dart_proto_compile/BUILD.bazel rename to example/dart/dart_proto_compile/BUILD.bazel diff --git a/dart/example/dart_proto_compile/WORKSPACE b/example/dart/dart_proto_compile/WORKSPACE similarity index 86% rename from dart/example/dart_proto_compile/WORKSPACE rename to example/dart/dart_proto_compile/WORKSPACE index 4bf208fac..36e3c5c1b 100644 --- a/dart/example/dart_proto_compile/WORKSPACE +++ b/example/dart/dart_proto_compile/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_proto_compile") dart_proto_compile() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/dart/dart_proto_library/.bazelrc b/example/dart/dart_proto_library/.bazelrc new file mode 100644 index 000000000..4078451b1 --- /dev/null +++ b/example/dart/dart_proto_library/.bazelrc @@ -0,0 +1,18 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_no_transitive_loads=false +# +build --incompatible_disable_deprecated_attr_params=false +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --incompatible_depset_is_not_iterable=false +# +build --incompatible_depset_union=false +# +build --incompatible_disallow_struct_provider_syntax=false \ No newline at end of file diff --git a/dart/example/dart_proto_library/BUILD.bazel b/example/dart/dart_proto_library/BUILD.bazel similarity index 100% rename from dart/example/dart_proto_library/BUILD.bazel rename to example/dart/dart_proto_library/BUILD.bazel diff --git a/dart/example/dart_proto_library/WORKSPACE b/example/dart/dart_proto_library/WORKSPACE similarity index 86% rename from dart/example/dart_proto_library/WORKSPACE rename to example/dart/dart_proto_library/WORKSPACE index 3083fd81e..3b717a9f9 100644 --- a/dart/example/dart_proto_library/WORKSPACE +++ b/example/dart/dart_proto_library/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//dart:deps.bzl", "dart_proto_library") dart_proto_library() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogo_grpc_compile/.bazelrc b/example/github.com/gogo/protobuf/gogo_grpc_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogo_grpc_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogo_grpc_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogo_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogo_grpc_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogo_grpc_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogo_grpc_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogo_grpc_compile/WORKSPACE similarity index 77% rename from github.com/gogo/protobuf/example/gogo_grpc_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogo_grpc_compile/WORKSPACE index cb722b922..0593e324a 100644 --- a/github.com/gogo/protobuf/example/gogo_grpc_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogo_grpc_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_grpc_c gogo_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogo_grpc_library/.bazelrc b/example/github.com/gogo/protobuf/gogo_grpc_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogo_grpc_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogo_grpc_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogo_grpc_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogo_grpc_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogo_grpc_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogo_grpc_library/WORKSPACE b/example/github.com/gogo/protobuf/gogo_grpc_library/WORKSPACE similarity index 77% rename from github.com/gogo/protobuf/example/gogo_grpc_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogo_grpc_library/WORKSPACE index 9233b09a8..967282667 100644 --- a/github.com/gogo/protobuf/example/gogo_grpc_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogo_grpc_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_grpc_l gogo_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogo_proto_compile/.bazelrc b/example/github.com/gogo/protobuf/gogo_proto_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogo_proto_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogo_proto_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogo_proto_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogo_proto_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogo_proto_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogo_proto_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogo_proto_compile/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogo_proto_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogo_proto_compile/WORKSPACE index 5ed41cb9b..09fcaf89c 100644 --- a/github.com/gogo/protobuf/example/gogo_proto_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogo_proto_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_proto_ gogo_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogo_proto_library/.bazelrc b/example/github.com/gogo/protobuf/gogo_proto_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogo_proto_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogo_proto_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogo_proto_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogo_proto_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogo_proto_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogo_proto_library/WORKSPACE b/example/github.com/gogo/protobuf/gogo_proto_library/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogo_proto_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogo_proto_library/WORKSPACE index 5c1c57ad7..6cad9b5ec 100644 --- a/github.com/gogo/protobuf/example/gogo_proto_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogo_proto_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_proto_ gogo_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofast_grpc_compile/.bazelrc b/example/github.com/gogo/protobuf/gogofast_grpc_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofast_grpc_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogofast_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofast_grpc_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofast_grpc_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogofast_grpc_compile/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofast_grpc_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogofast_grpc_compile/WORKSPACE index ac55e00d6..d9ceac59a 100644 --- a/github.com/gogo/protobuf/example/gogofast_grpc_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofast_grpc_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_gr gogofast_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofast_grpc_library/.bazelrc b/example/github.com/gogo/protobuf/gogofast_grpc_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofast_grpc_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogofast_grpc_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofast_grpc_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofast_grpc_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_library/WORKSPACE b/example/github.com/gogo/protobuf/gogofast_grpc_library/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofast_grpc_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogofast_grpc_library/WORKSPACE index 4a42375aa..00b326f70 100644 --- a/github.com/gogo/protobuf/example/gogofast_grpc_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofast_grpc_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_gr gogofast_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofast_proto_compile/.bazelrc b/example/github.com/gogo/protobuf/gogofast_proto_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofast_proto_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofast_proto_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogofast_proto_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofast_proto_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofast_proto_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofast_proto_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogofast_proto_compile/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofast_proto_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogofast_proto_compile/WORKSPACE index 2189ac459..d05cb1ac9 100644 --- a/github.com/gogo/protobuf/example/gogofast_proto_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofast_proto_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_pr gogofast_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofast_proto_library/.bazelrc b/example/github.com/gogo/protobuf/gogofast_proto_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofast_proto_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofast_proto_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogofast_proto_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofast_proto_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofast_proto_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofast_proto_library/WORKSPACE b/example/github.com/gogo/protobuf/gogofast_proto_library/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofast_proto_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogofast_proto_library/WORKSPACE index 616cca6b0..fee9eadc5 100644 --- a/github.com/gogo/protobuf/example/gogofast_proto_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofast_proto_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_pr gogofast_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofaster_grpc_compile/.bazelrc b/example/github.com/gogo/protobuf/gogofaster_grpc_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofaster_grpc_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogofaster_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofaster_grpc_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofaster_grpc_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogofaster_grpc_compile/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofaster_grpc_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogofaster_grpc_compile/WORKSPACE index 633988ea9..e02ed3945 100644 --- a/github.com/gogo/protobuf/example/gogofaster_grpc_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofaster_grpc_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofaster_grpc_library/.bazelrc b/example/github.com/gogo/protobuf/gogofaster_grpc_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofaster_grpc_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogofaster_grpc_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofaster_grpc_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofaster_grpc_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_library/WORKSPACE b/example/github.com/gogo/protobuf/gogofaster_grpc_library/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofaster_grpc_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogofaster_grpc_library/WORKSPACE index b190b13b3..25edeb156 100644 --- a/github.com/gogo/protobuf/example/gogofaster_grpc_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofaster_grpc_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofaster_proto_compile/.bazelrc b/example/github.com/gogo/protobuf/gogofaster_proto_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofaster_proto_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_compile/BUILD.bazel b/example/github.com/gogo/protobuf/gogofaster_proto_compile/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofaster_proto_compile/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofaster_proto_compile/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_compile/WORKSPACE b/example/github.com/gogo/protobuf/gogofaster_proto_compile/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofaster_proto_compile/WORKSPACE rename to example/github.com/gogo/protobuf/gogofaster_proto_compile/WORKSPACE index 47d5adfe7..ff433fc1d 100644 --- a/github.com/gogo/protobuf/example/gogofaster_proto_compile/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofaster_proto_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/gogo/protobuf/gogofaster_proto_library/.bazelrc b/example/github.com/gogo/protobuf/gogofaster_proto_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/gogo/protobuf/gogofaster_proto_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_library/BUILD.bazel b/example/github.com/gogo/protobuf/gogofaster_proto_library/BUILD.bazel similarity index 100% rename from github.com/gogo/protobuf/example/gogofaster_proto_library/BUILD.bazel rename to example/github.com/gogo/protobuf/gogofaster_proto_library/BUILD.bazel diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_library/WORKSPACE b/example/github.com/gogo/protobuf/gogofaster_proto_library/WORKSPACE similarity index 78% rename from github.com/gogo/protobuf/example/gogofaster_proto_library/WORKSPACE rename to example/github.com/gogo/protobuf/gogofaster_proto_library/WORKSPACE index 271134aaf..26f7d420a 100644 --- a/github.com/gogo/protobuf/example/gogofaster_proto_library/WORKSPACE +++ b/example/github.com/gogo/protobuf/gogofaster_proto_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/.bazelrc b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/BUILD.bazel b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/BUILD.bazel rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/BUILD.bazel diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/WORKSPACE b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/WORKSPACE similarity index 85% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/WORKSPACE rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/WORKSPACE index 293124a78..e22337465 100644 --- a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/WORKSPACE +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_compile/WORKSPACE @@ -9,17 +9,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_compile") +go_rules_dependencies() -gateway_grpc_compile() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_compile") -go_register_toolchains() +gateway_grpc_compile() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") diff --git a/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/.bazelrc b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/BUILD.bazel b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/BUILD.bazel similarity index 100% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/BUILD.bazel rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/BUILD.bazel diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/WORKSPACE b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/WORKSPACE similarity index 85% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/WORKSPACE rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/WORKSPACE index b43ed4a0c..f25fbd5ef 100644 --- a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/WORKSPACE +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_grpc_library/WORKSPACE @@ -9,17 +9,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") +go_rules_dependencies() -gateway_grpc_library() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") -go_register_toolchains() +gateway_grpc_library() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") diff --git a/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/.bazelrc b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/.bazelrc new file mode 100644 index 000000000..0400a3e54 --- /dev/null +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/BUILD.bazel b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/BUILD.bazel similarity index 100% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/BUILD.bazel rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/BUILD.bazel diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/WORKSPACE b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/WORKSPACE similarity index 85% rename from github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/WORKSPACE rename to example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/WORKSPACE index a11da3c1f..1789fbb07 100644 --- a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/WORKSPACE +++ b/example/github.com/grpc-ecosystem/grpc-gateway/gateway_swagger_compile/WORKSPACE @@ -9,17 +9,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_swagger_compile") +go_rules_dependencies() -gateway_swagger_compile() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_swagger_compile") -go_register_toolchains() +gateway_swagger_compile() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") diff --git a/example/github.com/grpc/grpc-web/closure_grpc_compile/.bazelrc b/example/github.com/grpc/grpc-web/closure_grpc_compile/.bazelrc new file mode 100644 index 000000000..e83e5cca5 --- /dev/null +++ b/example/github.com/grpc/grpc-web/closure_grpc_compile/.bazelrc @@ -0,0 +1,2 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes \ No newline at end of file diff --git a/github.com/grpc/grpc-web/example/closure_grpc_compile/BUILD.bazel b/example/github.com/grpc/grpc-web/closure_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/grpc/grpc-web/example/closure_grpc_compile/BUILD.bazel rename to example/github.com/grpc/grpc-web/closure_grpc_compile/BUILD.bazel diff --git a/github.com/grpc/grpc-web/example/closure_grpc_compile/WORKSPACE b/example/github.com/grpc/grpc-web/closure_grpc_compile/WORKSPACE similarity index 100% rename from github.com/grpc/grpc-web/example/closure_grpc_compile/WORKSPACE rename to example/github.com/grpc/grpc-web/closure_grpc_compile/WORKSPACE diff --git a/example/github.com/grpc/grpc-web/closure_grpc_library/.bazelrc b/example/github.com/grpc/grpc-web/closure_grpc_library/.bazelrc new file mode 100644 index 000000000..ecfc85370 --- /dev/null +++ b/example/github.com/grpc/grpc-web/closure_grpc_library/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/github.com/grpc/grpc-web/example/closure_grpc_library/BUILD.bazel b/example/github.com/grpc/grpc-web/closure_grpc_library/BUILD.bazel similarity index 100% rename from github.com/grpc/grpc-web/example/closure_grpc_library/BUILD.bazel rename to example/github.com/grpc/grpc-web/closure_grpc_library/BUILD.bazel diff --git a/github.com/grpc/grpc-web/example/closure_grpc_library/WORKSPACE b/example/github.com/grpc/grpc-web/closure_grpc_library/WORKSPACE similarity index 100% rename from github.com/grpc/grpc-web/example/closure_grpc_library/WORKSPACE rename to example/github.com/grpc/grpc-web/closure_grpc_library/WORKSPACE diff --git a/example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/.bazelrc b/example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/.bazelrc new file mode 100644 index 000000000..e83e5cca5 --- /dev/null +++ b/example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/.bazelrc @@ -0,0 +1,2 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes \ No newline at end of file diff --git a/github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/BUILD.bazel b/example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/BUILD.bazel rename to example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/BUILD.bazel diff --git a/github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/WORKSPACE b/example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/WORKSPACE similarity index 100% rename from github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/WORKSPACE rename to example/github.com/grpc/grpc-web/commonjs_dts_grpc_compile/WORKSPACE diff --git a/example/github.com/grpc/grpc-web/commonjs_grpc_compile/.bazelrc b/example/github.com/grpc/grpc-web/commonjs_grpc_compile/.bazelrc new file mode 100644 index 000000000..e83e5cca5 --- /dev/null +++ b/example/github.com/grpc/grpc-web/commonjs_grpc_compile/.bazelrc @@ -0,0 +1,2 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes \ No newline at end of file diff --git a/github.com/grpc/grpc-web/example/commonjs_grpc_compile/BUILD.bazel b/example/github.com/grpc/grpc-web/commonjs_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/grpc/grpc-web/example/commonjs_grpc_compile/BUILD.bazel rename to example/github.com/grpc/grpc-web/commonjs_grpc_compile/BUILD.bazel diff --git a/github.com/grpc/grpc-web/example/commonjs_grpc_compile/WORKSPACE b/example/github.com/grpc/grpc-web/commonjs_grpc_compile/WORKSPACE similarity index 100% rename from github.com/grpc/grpc-web/example/commonjs_grpc_compile/WORKSPACE rename to example/github.com/grpc/grpc-web/commonjs_grpc_compile/WORKSPACE diff --git a/example/github.com/grpc/grpc-web/ts_grpc_compile/.bazelrc b/example/github.com/grpc/grpc-web/ts_grpc_compile/.bazelrc new file mode 100644 index 000000000..e83e5cca5 --- /dev/null +++ b/example/github.com/grpc/grpc-web/ts_grpc_compile/.bazelrc @@ -0,0 +1,2 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes \ No newline at end of file diff --git a/github.com/grpc/grpc-web/example/ts_grpc_compile/BUILD.bazel b/example/github.com/grpc/grpc-web/ts_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/grpc/grpc-web/example/ts_grpc_compile/BUILD.bazel rename to example/github.com/grpc/grpc-web/ts_grpc_compile/BUILD.bazel diff --git a/github.com/grpc/grpc-web/example/ts_grpc_compile/WORKSPACE b/example/github.com/grpc/grpc-web/ts_grpc_compile/WORKSPACE similarity index 100% rename from github.com/grpc/grpc-web/example/ts_grpc_compile/WORKSPACE rename to example/github.com/grpc/grpc-web/ts_grpc_compile/WORKSPACE diff --git a/example/github.com/stackb/grpc.js/closure_grpc_compile/.bazelrc b/example/github.com/stackb/grpc.js/closure_grpc_compile/.bazelrc new file mode 100644 index 000000000..e83e5cca5 --- /dev/null +++ b/example/github.com/stackb/grpc.js/closure_grpc_compile/.bazelrc @@ -0,0 +1,2 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes \ No newline at end of file diff --git a/github.com/stackb/grpc.js/example/closure_grpc_compile/BUILD.bazel b/example/github.com/stackb/grpc.js/closure_grpc_compile/BUILD.bazel similarity index 100% rename from github.com/stackb/grpc.js/example/closure_grpc_compile/BUILD.bazel rename to example/github.com/stackb/grpc.js/closure_grpc_compile/BUILD.bazel diff --git a/github.com/stackb/grpc.js/example/closure_grpc_compile/WORKSPACE b/example/github.com/stackb/grpc.js/closure_grpc_compile/WORKSPACE similarity index 78% rename from github.com/stackb/grpc.js/example/closure_grpc_compile/WORKSPACE rename to example/github.com/stackb/grpc.js/closure_grpc_compile/WORKSPACE index 9a9bd65e8..42740ab32 100644 --- a/github.com/stackb/grpc.js/example/closure_grpc_compile/WORKSPACE +++ b/example/github.com/stackb/grpc.js/closure_grpc_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//github.com/stackb/grpc.js:deps.bzl", "closure_gr closure_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/github.com/stackb/grpc.js/closure_grpc_library/.bazelrc b/example/github.com/stackb/grpc.js/closure_grpc_library/.bazelrc new file mode 100644 index 000000000..77549c711 --- /dev/null +++ b/example/github.com/stackb/grpc.js/closure_grpc_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/github.com/stackb/grpc.js/example/closure_grpc_library/BUILD.bazel b/example/github.com/stackb/grpc.js/closure_grpc_library/BUILD.bazel similarity index 100% rename from github.com/stackb/grpc.js/example/closure_grpc_library/BUILD.bazel rename to example/github.com/stackb/grpc.js/closure_grpc_library/BUILD.bazel diff --git a/github.com/stackb/grpc.js/example/closure_grpc_library/WORKSPACE b/example/github.com/stackb/grpc.js/closure_grpc_library/WORKSPACE similarity index 83% rename from github.com/stackb/grpc.js/example/closure_grpc_library/WORKSPACE rename to example/github.com/stackb/grpc.js/closure_grpc_library/WORKSPACE index 353540194..7df185068 100644 --- a/github.com/stackb/grpc.js/example/closure_grpc_library/WORKSPACE +++ b/example/github.com/stackb/grpc.js/closure_grpc_library/WORKSPACE @@ -13,7 +13,7 @@ load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") closure_repositories(omit_com_google_protobuf = True) -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/go/go_grpc_compile/.bazelrc b/example/go/go_grpc_compile/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/go/go_grpc_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/go/example/go_grpc_compile/BUILD.bazel b/example/go/go_grpc_compile/BUILD.bazel similarity index 100% rename from go/example/go_grpc_compile/BUILD.bazel rename to example/go/go_grpc_compile/BUILD.bazel diff --git a/go/example/go_grpc_compile/WORKSPACE b/example/go/go_grpc_compile/WORKSPACE similarity index 76% rename from go/example/go_grpc_compile/WORKSPACE rename to example/go/go_grpc_compile/WORKSPACE index 1fbc89aa4..f135a208b 100644 --- a/go/example/go_grpc_compile/WORKSPACE +++ b/example/go/go_grpc_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_compile") go_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/go/go_grpc_library/.bazelrc b/example/go/go_grpc_library/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/go/go_grpc_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/go/example/go_grpc_library/BUILD.bazel b/example/go/go_grpc_library/BUILD.bazel similarity index 100% rename from go/example/go_grpc_library/BUILD.bazel rename to example/go/go_grpc_library/BUILD.bazel diff --git a/go/example/go_grpc_library/WORKSPACE b/example/go/go_grpc_library/WORKSPACE similarity index 76% rename from go/example/go_grpc_library/WORKSPACE rename to example/go/go_grpc_library/WORKSPACE index 8a7960e34..42568a025 100644 --- a/go/example/go_grpc_library/WORKSPACE +++ b/example/go/go_grpc_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_library") go_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/go/go_proto_compile/.bazelrc b/example/go/go_proto_compile/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/go/go_proto_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/go/example/go_proto_compile/BUILD.bazel b/example/go/go_proto_compile/BUILD.bazel similarity index 100% rename from go/example/go_proto_compile/BUILD.bazel rename to example/go/go_proto_compile/BUILD.bazel diff --git a/go/example/go_proto_compile/WORKSPACE b/example/go/go_proto_compile/WORKSPACE similarity index 76% rename from go/example/go_proto_compile/WORKSPACE rename to example/go/go_proto_compile/WORKSPACE index 66eb34073..81777f9bf 100644 --- a/go/example/go_proto_compile/WORKSPACE +++ b/example/go/go_proto_compile/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_proto_compile") go_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/go/go_proto_library/.bazelrc b/example/go/go_proto_library/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/go/go_proto_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/go/example/go_proto_library/BUILD.bazel b/example/go/go_proto_library/BUILD.bazel similarity index 100% rename from go/example/go_proto_library/BUILD.bazel rename to example/go/go_proto_library/BUILD.bazel diff --git a/go/example/go_proto_library/WORKSPACE b/example/go/go_proto_library/WORKSPACE similarity index 76% rename from go/example/go_proto_library/WORKSPACE rename to example/go/go_proto_library/WORKSPACE index 75dfb610c..12bbfc92e 100644 --- a/go/example/go_proto_library/WORKSPACE +++ b/example/go/go_proto_library/WORKSPACE @@ -9,7 +9,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_proto_library") go_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/java/java_grpc_compile/.bazelrc b/example/java/java_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/java/java_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/java/example/java_grpc_compile/BUILD.bazel b/example/java/java_grpc_compile/BUILD.bazel similarity index 100% rename from java/example/java_grpc_compile/BUILD.bazel rename to example/java/java_grpc_compile/BUILD.bazel diff --git a/java/example/java_grpc_compile/WORKSPACE b/example/java/java_grpc_compile/WORKSPACE similarity index 100% rename from java/example/java_grpc_compile/WORKSPACE rename to example/java/java_grpc_compile/WORKSPACE diff --git a/example/java/java_grpc_library/.bazelrc b/example/java/java_grpc_library/.bazelrc new file mode 100644 index 000000000..dfd0c65ed --- /dev/null +++ b/example/java/java_grpc_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# bazel_tools/tools/jdk/java_toolchain_alias.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/java/example/java_grpc_library/BUILD.bazel b/example/java/java_grpc_library/BUILD.bazel similarity index 100% rename from java/example/java_grpc_library/BUILD.bazel rename to example/java/java_grpc_library/BUILD.bazel diff --git a/java/example/java_grpc_library/WORKSPACE b/example/java/java_grpc_library/WORKSPACE similarity index 100% rename from java/example/java_grpc_library/WORKSPACE rename to example/java/java_grpc_library/WORKSPACE diff --git a/example/java/java_proto_compile/.bazelrc b/example/java/java_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/java/java_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/java/example/java_proto_compile/BUILD.bazel b/example/java/java_proto_compile/BUILD.bazel similarity index 100% rename from java/example/java_proto_compile/BUILD.bazel rename to example/java/java_proto_compile/BUILD.bazel diff --git a/java/example/java_proto_compile/WORKSPACE b/example/java/java_proto_compile/WORKSPACE similarity index 100% rename from java/example/java_proto_compile/WORKSPACE rename to example/java/java_proto_compile/WORKSPACE diff --git a/example/java/java_proto_library/.bazelrc b/example/java/java_proto_library/.bazelrc new file mode 100644 index 000000000..c14352c5f --- /dev/null +++ b/example/java/java_proto_library/.bazelrc @@ -0,0 +1,10 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# bazel_tools/tools/jdk/java_toolchain_alias.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_remove_native_maven_jar=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/java/example/java_proto_library/BUILD.bazel b/example/java/java_proto_library/BUILD.bazel similarity index 100% rename from java/example/java_proto_library/BUILD.bazel rename to example/java/java_proto_library/BUILD.bazel diff --git a/java/example/java_proto_library/WORKSPACE b/example/java/java_proto_library/WORKSPACE similarity index 100% rename from java/example/java_proto_library/WORKSPACE rename to example/java/java_proto_library/WORKSPACE diff --git a/example/node/node_grpc_compile/.bazelrc b/example/node/node_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/node/node_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/node/example/node_grpc_compile/BUILD.bazel b/example/node/node_grpc_compile/BUILD.bazel similarity index 100% rename from node/example/node_grpc_compile/BUILD.bazel rename to example/node/node_grpc_compile/BUILD.bazel diff --git a/node/example/node_grpc_compile/WORKSPACE b/example/node/node_grpc_compile/WORKSPACE similarity index 100% rename from node/example/node_grpc_compile/WORKSPACE rename to example/node/node_grpc_compile/WORKSPACE diff --git a/example/node/node_grpc_library/.bazelrc b/example/node/node_grpc_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/node/node_grpc_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/node/example/node_grpc_library/BUILD.bazel b/example/node/node_grpc_library/BUILD.bazel similarity index 100% rename from node/example/node_grpc_library/BUILD.bazel rename to example/node/node_grpc_library/BUILD.bazel diff --git a/node/example/node_grpc_library/WORKSPACE b/example/node/node_grpc_library/WORKSPACE similarity index 100% rename from node/example/node_grpc_library/WORKSPACE rename to example/node/node_grpc_library/WORKSPACE diff --git a/example/node/node_proto_compile/.bazelrc b/example/node/node_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/node/node_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/node/example/node_proto_compile/BUILD.bazel b/example/node/node_proto_compile/BUILD.bazel similarity index 100% rename from node/example/node_proto_compile/BUILD.bazel rename to example/node/node_proto_compile/BUILD.bazel diff --git a/node/example/node_proto_compile/WORKSPACE b/example/node/node_proto_compile/WORKSPACE similarity index 100% rename from node/example/node_proto_compile/WORKSPACE rename to example/node/node_proto_compile/WORKSPACE diff --git a/example/node/node_proto_library/.bazelrc b/example/node/node_proto_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/node/node_proto_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/node/example/node_proto_library/BUILD.bazel b/example/node/node_proto_library/BUILD.bazel similarity index 100% rename from node/example/node_proto_library/BUILD.bazel rename to example/node/node_proto_library/BUILD.bazel diff --git a/node/example/node_proto_library/WORKSPACE b/example/node/node_proto_library/WORKSPACE similarity index 100% rename from node/example/node_proto_library/WORKSPACE rename to example/node/node_proto_library/WORKSPACE diff --git a/example/objc/objc_grpc_compile/.bazelrc b/example/objc/objc_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/objc/objc_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/objc/example/objc_grpc_compile/BUILD.bazel b/example/objc/objc_grpc_compile/BUILD.bazel similarity index 100% rename from objc/example/objc_grpc_compile/BUILD.bazel rename to example/objc/objc_grpc_compile/BUILD.bazel diff --git a/objc/example/objc_grpc_compile/WORKSPACE b/example/objc/objc_grpc_compile/WORKSPACE similarity index 100% rename from objc/example/objc_grpc_compile/WORKSPACE rename to example/objc/objc_grpc_compile/WORKSPACE diff --git a/example/objc/objc_proto_compile/.bazelrc b/example/objc/objc_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/objc/objc_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/objc/example/objc_proto_compile/BUILD.bazel b/example/objc/objc_proto_compile/BUILD.bazel similarity index 100% rename from objc/example/objc_proto_compile/BUILD.bazel rename to example/objc/objc_proto_compile/BUILD.bazel diff --git a/objc/example/objc_proto_compile/WORKSPACE b/example/objc/objc_proto_compile/WORKSPACE similarity index 100% rename from objc/example/objc_proto_compile/WORKSPACE rename to example/objc/objc_proto_compile/WORKSPACE diff --git a/example/php/php_grpc_compile/.bazelrc b/example/php/php_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/php/php_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/php/example/php_grpc_compile/BUILD.bazel b/example/php/php_grpc_compile/BUILD.bazel similarity index 100% rename from php/example/php_grpc_compile/BUILD.bazel rename to example/php/php_grpc_compile/BUILD.bazel diff --git a/php/example/php_grpc_compile/WORKSPACE b/example/php/php_grpc_compile/WORKSPACE similarity index 100% rename from php/example/php_grpc_compile/WORKSPACE rename to example/php/php_grpc_compile/WORKSPACE diff --git a/example/php/php_proto_compile/.bazelrc b/example/php/php_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/php/php_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/php/example/php_proto_compile/BUILD.bazel b/example/php/php_proto_compile/BUILD.bazel similarity index 100% rename from php/example/php_proto_compile/BUILD.bazel rename to example/php/php_proto_compile/BUILD.bazel diff --git a/php/example/php_proto_compile/WORKSPACE b/example/php/php_proto_compile/WORKSPACE similarity index 100% rename from php/example/php_proto_compile/WORKSPACE rename to example/php/php_proto_compile/WORKSPACE diff --git a/example/python/python_grpc_compile/.bazelrc b/example/python/python_grpc_compile/.bazelrc new file mode 100644 index 000000000..7bd41a8db --- /dev/null +++ b/example/python/python_grpc_compile/.bazelrc @@ -0,0 +1,6 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/python/example/python_grpc_compile/BUILD.bazel b/example/python/python_grpc_compile/BUILD.bazel similarity index 100% rename from python/example/python_grpc_compile/BUILD.bazel rename to example/python/python_grpc_compile/BUILD.bazel diff --git a/python/example/python_grpc_compile/WORKSPACE b/example/python/python_grpc_compile/WORKSPACE similarity index 100% rename from python/example/python_grpc_compile/WORKSPACE rename to example/python/python_grpc_compile/WORKSPACE diff --git a/example/python/python_grpc_library/.bazelrc b/example/python/python_grpc_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/python/python_grpc_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/python/example/python_grpc_library/BUILD.bazel b/example/python/python_grpc_library/BUILD.bazel similarity index 100% rename from python/example/python_grpc_library/BUILD.bazel rename to example/python/python_grpc_library/BUILD.bazel diff --git a/python/example/python_grpc_library/WORKSPACE b/example/python/python_grpc_library/WORKSPACE similarity index 100% rename from python/example/python_grpc_library/WORKSPACE rename to example/python/python_grpc_library/WORKSPACE diff --git a/example/python/python_proto_compile/.bazelrc b/example/python/python_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/python/python_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/python/example/python_proto_compile/BUILD.bazel b/example/python/python_proto_compile/BUILD.bazel similarity index 100% rename from python/example/python_proto_compile/BUILD.bazel rename to example/python/python_proto_compile/BUILD.bazel diff --git a/python/example/python_proto_compile/WORKSPACE b/example/python/python_proto_compile/WORKSPACE similarity index 100% rename from python/example/python_proto_compile/WORKSPACE rename to example/python/python_proto_compile/WORKSPACE diff --git a/example/python/python_proto_library/.bazelrc b/example/python/python_proto_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/python/python_proto_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/python/example/python_proto_library/BUILD.bazel b/example/python/python_proto_library/BUILD.bazel similarity index 100% rename from python/example/python_proto_library/BUILD.bazel rename to example/python/python_proto_library/BUILD.bazel diff --git a/python/example/python_proto_library/WORKSPACE b/example/python/python_proto_library/WORKSPACE similarity index 100% rename from python/example/python_proto_library/WORKSPACE rename to example/python/python_proto_library/WORKSPACE diff --git a/example/routeguide/BUILD.bazel b/example/routeguide/BUILD.bazel index 1011d022a..b7d6a77a3 100644 --- a/example/routeguide/BUILD.bazel +++ b/example/routeguide/BUILD.bazel @@ -20,8 +20,8 @@ routeguide_test_matrix( "//node/example/routeguide:client", "//csharp/example/routeguide:client", "//scala/example/routeguide:client_deploy.jar", - "//ruby/example/routeguide:client", "//dart/example/routeguide:client", + # "//ruby/example/routeguide:client", ], servers = [ "//cpp/example/routeguide:server", @@ -30,8 +30,8 @@ routeguide_test_matrix( "//java/example/routeguide:server", "//python/example/routeguide:server", "//node/example/routeguide:server", - "//ruby/example/routeguide:server", "//dart/example/routeguide:server", + # "//ruby/example/routeguide:server", ], tagmap = { # no sandbox any csharp test diff --git a/example/ruby/ruby_grpc_compile/.bazelrc b/example/ruby/ruby_grpc_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/ruby/ruby_grpc_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/ruby/example/ruby_grpc_compile/BUILD.bazel b/example/ruby/ruby_grpc_compile/BUILD.bazel similarity index 100% rename from ruby/example/ruby_grpc_compile/BUILD.bazel rename to example/ruby/ruby_grpc_compile/BUILD.bazel diff --git a/ruby/example/ruby_grpc_compile/WORKSPACE b/example/ruby/ruby_grpc_compile/WORKSPACE similarity index 100% rename from ruby/example/ruby_grpc_compile/WORKSPACE rename to example/ruby/ruby_grpc_compile/WORKSPACE diff --git a/example/ruby/ruby_grpc_library/.bazelrc b/example/ruby/ruby_grpc_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/ruby/ruby_grpc_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/ruby/example/ruby_grpc_library/BUILD.bazel b/example/ruby/ruby_grpc_library/BUILD.bazel similarity index 100% rename from ruby/example/ruby_grpc_library/BUILD.bazel rename to example/ruby/ruby_grpc_library/BUILD.bazel diff --git a/ruby/example/ruby_grpc_library/WORKSPACE b/example/ruby/ruby_grpc_library/WORKSPACE similarity index 100% rename from ruby/example/ruby_grpc_library/WORKSPACE rename to example/ruby/ruby_grpc_library/WORKSPACE diff --git a/example/ruby/ruby_proto_compile/.bazelrc b/example/ruby/ruby_proto_compile/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/ruby/ruby_proto_compile/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/ruby/example/ruby_proto_compile/BUILD.bazel b/example/ruby/ruby_proto_compile/BUILD.bazel similarity index 100% rename from ruby/example/ruby_proto_compile/BUILD.bazel rename to example/ruby/ruby_proto_compile/BUILD.bazel diff --git a/ruby/example/ruby_proto_compile/WORKSPACE b/example/ruby/ruby_proto_compile/WORKSPACE similarity index 100% rename from ruby/example/ruby_proto_compile/WORKSPACE rename to example/ruby/ruby_proto_compile/WORKSPACE diff --git a/example/ruby/ruby_proto_library/.bazelrc b/example/ruby/ruby_proto_library/.bazelrc new file mode 100644 index 000000000..fc95c7f7f --- /dev/null +++ b/example/ruby/ruby_proto_library/.bazelrc @@ -0,0 +1,4 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false \ No newline at end of file diff --git a/ruby/example/ruby_proto_library/BUILD.bazel b/example/ruby/ruby_proto_library/BUILD.bazel similarity index 100% rename from ruby/example/ruby_proto_library/BUILD.bazel rename to example/ruby/ruby_proto_library/BUILD.bazel diff --git a/ruby/example/ruby_proto_library/WORKSPACE b/example/ruby/ruby_proto_library/WORKSPACE similarity index 100% rename from ruby/example/ruby_proto_library/WORKSPACE rename to example/ruby/ruby_proto_library/WORKSPACE diff --git a/example/rust/rust_grpc_compile/.bazelrc b/example/rust/rust_grpc_compile/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/rust/rust_grpc_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/rust/example/rust_grpc_compile/BUILD.bazel b/example/rust/rust_grpc_compile/BUILD.bazel similarity index 100% rename from rust/example/rust_grpc_compile/BUILD.bazel rename to example/rust/rust_grpc_compile/BUILD.bazel diff --git a/rust/example/rust_grpc_compile/WORKSPACE b/example/rust/rust_grpc_compile/WORKSPACE similarity index 100% rename from rust/example/rust_grpc_compile/WORKSPACE rename to example/rust/rust_grpc_compile/WORKSPACE diff --git a/example/rust/rust_grpc_library/.bazelrc b/example/rust/rust_grpc_library/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/rust/rust_grpc_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/rust/example/rust_grpc_library/BUILD.bazel b/example/rust/rust_grpc_library/BUILD.bazel similarity index 100% rename from rust/example/rust_grpc_library/BUILD.bazel rename to example/rust/rust_grpc_library/BUILD.bazel diff --git a/rust/example/rust_grpc_library/WORKSPACE b/example/rust/rust_grpc_library/WORKSPACE similarity index 100% rename from rust/example/rust_grpc_library/WORKSPACE rename to example/rust/rust_grpc_library/WORKSPACE diff --git a/example/rust/rust_proto_compile/.bazelrc b/example/rust/rust_proto_compile/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/rust/rust_proto_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/rust/example/rust_proto_compile/BUILD.bazel b/example/rust/rust_proto_compile/BUILD.bazel similarity index 100% rename from rust/example/rust_proto_compile/BUILD.bazel rename to example/rust/rust_proto_compile/BUILD.bazel diff --git a/rust/example/rust_proto_compile/WORKSPACE b/example/rust/rust_proto_compile/WORKSPACE similarity index 100% rename from rust/example/rust_proto_compile/WORKSPACE rename to example/rust/rust_proto_compile/WORKSPACE diff --git a/example/rust/rust_proto_library/.bazelrc b/example/rust/rust_proto_library/.bazelrc new file mode 100644 index 000000000..5ad24298a --- /dev/null +++ b/example/rust/rust_proto_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# /external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing +build --incompatible_require_ctx_in_configure_features=false \ No newline at end of file diff --git a/rust/example/rust_proto_library/BUILD.bazel b/example/rust/rust_proto_library/BUILD.bazel similarity index 100% rename from rust/example/rust_proto_library/BUILD.bazel rename to example/rust/rust_proto_library/BUILD.bazel diff --git a/rust/example/rust_proto_library/WORKSPACE b/example/rust/rust_proto_library/WORKSPACE similarity index 100% rename from rust/example/rust_proto_library/WORKSPACE rename to example/rust/rust_proto_library/WORKSPACE diff --git a/example/scala/scala_grpc_compile/.bazelrc b/example/scala/scala_grpc_compile/.bazelrc new file mode 100644 index 000000000..199b5c8ab --- /dev/null +++ b/example/scala/scala_grpc_compile/.bazelrc @@ -0,0 +1,14 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# /external/io_bazel_rules_scala/scala/scala_import.bzl", line 73, in _create_provider java_common.create_provider(use_ijar = False, compile_time_jar...]), <3 more arguments>) java_common.create_provider is deprecated and cannot be used when --incompatible_disallow_legacy_javainfo is set. Please migrate to the JavaInfo constructor. +build --incompatible_disallow_legacy_javainfo=false +# external/io_bazel_rules_scala/scala/scala_import.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/scala/example/scala_grpc_compile/BUILD.bazel b/example/scala/scala_grpc_compile/BUILD.bazel similarity index 100% rename from scala/example/scala_grpc_compile/BUILD.bazel rename to example/scala/scala_grpc_compile/BUILD.bazel diff --git a/scala/example/scala_grpc_compile/WORKSPACE b/example/scala/scala_grpc_compile/WORKSPACE similarity index 88% rename from scala/example/scala_grpc_compile/WORKSPACE rename to example/scala/scala_grpc_compile/WORKSPACE index 0bc735760..197cc2ecc 100644 --- a/scala/example/scala_grpc_compile/WORKSPACE +++ b/example/scala/scala_grpc_compile/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_grpc_compile") scala_grpc_compile() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/scala/scala_grpc_library/.bazelrc b/example/scala/scala_grpc_library/.bazelrc new file mode 100644 index 000000000..199b5c8ab --- /dev/null +++ b/example/scala/scala_grpc_library/.bazelrc @@ -0,0 +1,14 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# /external/io_bazel_rules_scala/scala/scala_import.bzl", line 73, in _create_provider java_common.create_provider(use_ijar = False, compile_time_jar...]), <3 more arguments>) java_common.create_provider is deprecated and cannot be used when --incompatible_disallow_legacy_javainfo is set. Please migrate to the JavaInfo constructor. +build --incompatible_disallow_legacy_javainfo=false +# external/io_bazel_rules_scala/scala/scala_import.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/scala/example/scala_grpc_library/BUILD.bazel b/example/scala/scala_grpc_library/BUILD.bazel similarity index 100% rename from scala/example/scala_grpc_library/BUILD.bazel rename to example/scala/scala_grpc_library/BUILD.bazel diff --git a/scala/example/scala_grpc_library/WORKSPACE b/example/scala/scala_grpc_library/WORKSPACE similarity index 88% rename from scala/example/scala_grpc_library/WORKSPACE rename to example/scala/scala_grpc_library/WORKSPACE index b1779c058..c27195127 100644 --- a/scala/example/scala_grpc_library/WORKSPACE +++ b/example/scala/scala_grpc_library/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_grpc_library") scala_grpc_library() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/scala/scala_proto_compile/.bazelrc b/example/scala/scala_proto_compile/.bazelrc new file mode 100644 index 000000000..199b5c8ab --- /dev/null +++ b/example/scala/scala_proto_compile/.bazelrc @@ -0,0 +1,14 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# /external/io_bazel_rules_scala/scala/scala_import.bzl", line 73, in _create_provider java_common.create_provider(use_ijar = False, compile_time_jar...]), <3 more arguments>) java_common.create_provider is deprecated and cannot be used when --incompatible_disallow_legacy_javainfo is set. Please migrate to the JavaInfo constructor. +build --incompatible_disallow_legacy_javainfo=false +# external/io_bazel_rules_scala/scala/scala_import.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/scala/example/scala_proto_compile/BUILD.bazel b/example/scala/scala_proto_compile/BUILD.bazel similarity index 100% rename from scala/example/scala_proto_compile/BUILD.bazel rename to example/scala/scala_proto_compile/BUILD.bazel diff --git a/scala/example/scala_proto_compile/WORKSPACE b/example/scala/scala_proto_compile/WORKSPACE similarity index 88% rename from scala/example/scala_proto_compile/WORKSPACE rename to example/scala/scala_proto_compile/WORKSPACE index 92a5af500..d99a9d988 100644 --- a/scala/example/scala_proto_compile/WORKSPACE +++ b/example/scala/scala_proto_compile/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_proto_compile") scala_proto_compile() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/scala/scala_proto_library/.bazelrc b/example/scala/scala_proto_library/.bazelrc new file mode 100644 index 000000000..199b5c8ab --- /dev/null +++ b/example/scala/scala_proto_library/.bazelrc @@ -0,0 +1,14 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule. +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# /external/io_bazel_rules_scala/scala/scala_import.bzl", line 73, in _create_provider java_common.create_provider(use_ijar = False, compile_time_jar...]), <3 more arguments>) java_common.create_provider is deprecated and cannot be used when --incompatible_disallow_legacy_javainfo is set. Please migrate to the JavaInfo constructor. +build --incompatible_disallow_legacy_javainfo=false +# external/io_bazel_rules_scala/scala/scala_import.bzl +build --incompatible_disallow_struct_provider_syntax=false +# +build --incompatible_use_toolchain_resolution_for_java_rules=false \ No newline at end of file diff --git a/scala/example/scala_proto_library/BUILD.bazel b/example/scala/scala_proto_library/BUILD.bazel similarity index 100% rename from scala/example/scala_proto_library/BUILD.bazel rename to example/scala/scala_proto_library/BUILD.bazel diff --git a/scala/example/scala_proto_library/WORKSPACE b/example/scala/scala_proto_library/WORKSPACE similarity index 88% rename from scala/example/scala_proto_library/WORKSPACE rename to example/scala/scala_proto_library/WORKSPACE index 3f23832af..4f1763092 100644 --- a/scala/example/scala_proto_library/WORKSPACE +++ b/example/scala/scala_proto_library/WORKSPACE @@ -10,7 +10,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_proto_library") scala_proto_library() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/example/swift/swift_grpc_compile/.bazelrc b/example/swift/swift_grpc_compile/.bazelrc new file mode 100644 index 000000000..e657e3756 --- /dev/null +++ b/example/swift/swift_grpc_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --strategy=SwiftCompile=standalone \ No newline at end of file diff --git a/swift/example/swift_grpc_compile/BUILD.bazel b/example/swift/swift_grpc_compile/BUILD.bazel similarity index 100% rename from swift/example/swift_grpc_compile/BUILD.bazel rename to example/swift/swift_grpc_compile/BUILD.bazel diff --git a/swift/example/swift_grpc_compile/WORKSPACE b/example/swift/swift_grpc_compile/WORKSPACE similarity index 100% rename from swift/example/swift_grpc_compile/WORKSPACE rename to example/swift/swift_grpc_compile/WORKSPACE diff --git a/example/swift/swift_grpc_library/.bazelrc b/example/swift/swift_grpc_library/.bazelrc new file mode 100644 index 000000000..e657e3756 --- /dev/null +++ b/example/swift/swift_grpc_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --strategy=SwiftCompile=standalone \ No newline at end of file diff --git a/swift/example/swift_grpc_library/BUILD.bazel b/example/swift/swift_grpc_library/BUILD.bazel similarity index 100% rename from swift/example/swift_grpc_library/BUILD.bazel rename to example/swift/swift_grpc_library/BUILD.bazel diff --git a/swift/example/swift_grpc_library/WORKSPACE b/example/swift/swift_grpc_library/WORKSPACE similarity index 100% rename from swift/example/swift_grpc_library/WORKSPACE rename to example/swift/swift_grpc_library/WORKSPACE diff --git a/example/swift/swift_proto_compile/.bazelrc b/example/swift/swift_proto_compile/.bazelrc new file mode 100644 index 000000000..e657e3756 --- /dev/null +++ b/example/swift/swift_proto_compile/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --strategy=SwiftCompile=standalone \ No newline at end of file diff --git a/swift/example/swift_proto_compile/BUILD.bazel b/example/swift/swift_proto_compile/BUILD.bazel similarity index 100% rename from swift/example/swift_proto_compile/BUILD.bazel rename to example/swift/swift_proto_compile/BUILD.bazel diff --git a/swift/example/swift_proto_compile/WORKSPACE b/example/swift/swift_proto_compile/WORKSPACE similarity index 100% rename from swift/example/swift_proto_compile/WORKSPACE rename to example/swift/swift_proto_compile/WORKSPACE diff --git a/example/swift/swift_proto_library/.bazelrc b/example/swift/swift_proto_library/.bazelrc new file mode 100644 index 000000000..e657e3756 --- /dev/null +++ b/example/swift/swift_proto_library/.bazelrc @@ -0,0 +1,8 @@ +# Start with --all_incompatible_changes by default +build --all_incompatible_changes +# +build --incompatible_enable_cc_toolchain_resolution=false +# +build --incompatible_require_ctx_in_configure_features=false +# +build --strategy=SwiftCompile=standalone \ No newline at end of file diff --git a/swift/example/swift_proto_library/BUILD.bazel b/example/swift/swift_proto_library/BUILD.bazel similarity index 100% rename from swift/example/swift_proto_library/BUILD.bazel rename to example/swift/swift_proto_library/BUILD.bazel diff --git a/swift/example/swift_proto_library/WORKSPACE b/example/swift/swift_proto_library/WORKSPACE similarity index 100% rename from swift/example/swift_proto_library/WORKSPACE rename to example/swift/swift_proto_library/WORKSPACE diff --git a/github.com/gogo/protobuf/README.md b/github.com/gogo/protobuf/README.md index bf80e9bb0..f69080c0d 100644 --- a/github.com/gogo/protobuf/README.md +++ b/github.com/gogo/protobuf/README.md @@ -28,7 +28,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_proto_ gogo_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -81,7 +81,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_grpc_c gogo_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -134,7 +134,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_proto_ gogo_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -192,7 +192,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogo_grpc_l gogo_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -249,7 +249,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_pr gogofast_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -302,7 +302,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_gr gogofast_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -355,7 +355,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_pr gogofast_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -413,7 +413,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofast_gr gogofast_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -470,7 +470,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -523,7 +523,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -576,7 +576,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -634,7 +634,7 @@ load("@build_stack_rules_proto//github.com/gogo/protobuf:deps.bzl", "gogofaster_ gogofaster_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/github.com/gogo/protobuf/example/gogo_grpc_compile/.bazelrc b/github.com/gogo/protobuf/example/gogo_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogo_grpc_library/.bazelrc b/github.com/gogo/protobuf/example/gogo_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogo_proto_compile/.bazelrc b/github.com/gogo/protobuf/example/gogo_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogo_proto_library/.bazelrc b/github.com/gogo/protobuf/example/gogo_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_compile/.bazelrc b/github.com/gogo/protobuf/example/gogofast_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofast_grpc_library/.bazelrc b/github.com/gogo/protobuf/example/gogofast_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofast_proto_compile/.bazelrc b/github.com/gogo/protobuf/example/gogofast_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofast_proto_library/.bazelrc b/github.com/gogo/protobuf/example/gogofast_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_compile/.bazelrc b/github.com/gogo/protobuf/example/gogofaster_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofaster_grpc_library/.bazelrc b/github.com/gogo/protobuf/example/gogofaster_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_compile/.bazelrc b/github.com/gogo/protobuf/example/gogofaster_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/gogo/protobuf/example/gogofaster_proto_library/.bazelrc b/github.com/gogo/protobuf/example/gogofaster_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc-ecosystem/grpc-gateway/README.md b/github.com/grpc-ecosystem/grpc-gateway/README.md index afbfc3401..731038c8f 100644 --- a/github.com/grpc-ecosystem/grpc-gateway/README.md +++ b/github.com/grpc-ecosystem/grpc-gateway/README.md @@ -19,17 +19,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_compile") +go_rules_dependencies() -gateway_grpc_compile() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_compile") -go_register_toolchains() +gateway_grpc_compile() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") @@ -80,17 +80,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_swagger_compile") +go_rules_dependencies() -gateway_swagger_compile() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_swagger_compile") -go_register_toolchains() +gateway_swagger_compile() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") @@ -141,17 +141,17 @@ load("@build_stack_rules_proto//:deps.bzl", "bazel_gazelle", "io_bazel_rules_go" io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") +go_rules_dependencies() -gateway_grpc_library() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//github.com/grpc-ecosystem/grpc-gateway:deps.bzl", "gateway_grpc_library") -go_register_toolchains() +gateway_grpc_library() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway/gateway.go b/github.com/grpc-ecosystem/grpc-gateway/example/gateway/gateway.go index e3a1dd5e6..df77133e0 100644 --- a/github.com/grpc-ecosystem/grpc-gateway/example/gateway/gateway.go +++ b/github.com/grpc-ecosystem/grpc-gateway/example/gateway/gateway.go @@ -8,7 +8,7 @@ import ( "time" gwruntime "github.com/grpc-ecosystem/grpc-gateway/runtime" - "github.com/stackb/rules_proto/github.com/grpc-ecosystem/grpc-gateway/examples/api" + api "github.com/stackb/rules_proto/github.com/grpc-ecosystem/grpc-gateway/examples/api" "google.golang.org/grpc" ) diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/.bazelrc b/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/.bazelrc b/github.com/grpc-ecosystem/grpc-gateway/example/gateway_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/.bazelrc b/github.com/grpc-ecosystem/grpc-gateway/example/gateway_swagger_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc/grpc-web/README.md b/github.com/grpc/grpc-web/README.md index 21677391f..12b92f4f0 100644 --- a/github.com/grpc/grpc-web/README.md +++ b/github.com/grpc/grpc-web/README.md @@ -243,6 +243,13 @@ closure_grpc_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disallow_struct_provider_syntax | false | | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/github.com/grpc/grpc-web/example/closure_grpc_compile/.bazelrc b/github.com/grpc/grpc-web/example/closure_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc/grpc-web/example/closure_grpc_library/.bazelrc b/github.com/grpc/grpc-web/example/closure_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/.bazelrc b/github.com/grpc/grpc-web/example/commonjs_dts_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc/grpc-web/example/commonjs_grpc_compile/.bazelrc b/github.com/grpc/grpc-web/example/commonjs_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/grpc/grpc-web/example/ts_grpc_compile/.bazelrc b/github.com/grpc/grpc-web/example/ts_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/stackb/grpc.js/README.md b/github.com/stackb/grpc.js/README.md index 5565c0b2b..ff6d49aa9 100644 --- a/github.com/stackb/grpc.js/README.md +++ b/github.com/stackb/grpc.js/README.md @@ -18,7 +18,7 @@ load("@build_stack_rules_proto//github.com/stackb/grpc.js:deps.bzl", "closure_gr closure_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -73,7 +73,7 @@ load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") closure_repositories(omit_com_google_protobuf = True) -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -91,6 +91,12 @@ closure_grpc_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/github.com/stackb/grpc.js/example/closure_grpc_compile/.bazelrc b/github.com/stackb/grpc.js/example/closure_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/github.com/stackb/grpc.js/example/closure_grpc_library/.bazelrc b/github.com/stackb/grpc.js/example/closure_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/go/README.md b/go/README.md index 9418dcedf..e522bf961 100644 --- a/go/README.md +++ b/go/README.md @@ -20,7 +20,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_proto_compile") go_proto_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -73,7 +73,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_compile") go_grpc_compile() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -126,7 +126,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_proto_library") go_proto_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -183,7 +183,7 @@ load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_library") go_grpc_library() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/go/example/go_grpc_compile/.bazelrc b/go/example/go_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/go/example/go_grpc_library/.bazelrc b/go/example/go_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/go/example/go_proto_compile/.bazelrc b/go/example/go_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/go/example/go_proto_library/.bazelrc b/go/example/go_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/java/README.md b/java/README.md index 561157f43..96ecfaaf1 100644 --- a/java/README.md +++ b/java/README.md @@ -122,6 +122,14 @@ java_proto_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disallow_struct_provider_syntax | false | bazel_tools/tools/jdk/java_toolchain_alias.bzl | +| build | incompatible_remove_native_maven_jar | false | | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | @@ -175,6 +183,13 @@ java_grpc_library( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_disallow_struct_provider_syntax | false | bazel_tools/tools/jdk/java_toolchain_alias.bzl | +| build | incompatible_use_toolchain_resolution_for_java_rules | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/java/example/java_grpc_compile/.bazelrc b/java/example/java_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/java/example/java_grpc_library/.bazelrc b/java/example/java_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/java/example/java_proto_compile/.bazelrc b/java/example/java_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/java/example/java_proto_library/.bazelrc b/java/example/java_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/node/example/node_grpc_compile/.bazelrc b/node/example/node_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/node/example/node_grpc_library/.bazelrc b/node/example/node_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/node/example/node_proto_compile/.bazelrc b/node/example/node_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/node/example/node_proto_library/.bazelrc b/node/example/node_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/objc/example/objc_grpc_compile/.bazelrc b/objc/example/objc_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/objc/example/objc_proto_compile/.bazelrc b/objc/example/objc_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/php/example/php_grpc_compile/.bazelrc b/php/example/php_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/php/example/php_proto_compile/.bazelrc b/php/example/php_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/python/README.md b/python/README.md index 9deff4d63..aad5b32f7 100644 --- a/python/README.md +++ b/python/README.md @@ -1,5 +1,7 @@ # `python` +"The python compile rules use an aspect-based implementation (aspect.bzl) rather than the traditional implementation (compile.bzl)" + | Rule | Description | | ---: | :--- | | [python_proto_compile](#python_proto_compile) | Generates *.py protobuf artifacts | @@ -81,6 +83,12 @@ python_grpc_compile( ) ``` +### `Flags` + +| Category | Flag | Value | Description | +| --- | --- | --- | --- | +| build | incompatible_enable_cc_toolchain_resolution | false | | + ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/python/example/python_grpc_compile/.bazelrc b/python/example/python_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/python/example/python_grpc_library/.bazelrc b/python/example/python_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/python/example/python_proto_compile/.bazelrc b/python/example/python_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/python/example/python_proto_library/.bazelrc b/python/example/python_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/python/example/routeguide/BUILD.bazel b/python/example/routeguide/BUILD.bazel index ccc0b0068..0bbea10bf 100644 --- a/python/example/routeguide/BUILD.bazel +++ b/python/example/routeguide/BUILD.bazel @@ -1,6 +1,13 @@ -load("//python:python_grpc_library.bzl", "py_grpc_library") +load("//python:python_grpc_library.bzl", "python_grpc_library") +load("//python:python_proto_compile.bzl", "python_proto_compile") -py_grpc_library( +python_proto_compile( + name = "person", + verbose = 0, + deps = ["//example/proto:person_proto"], +) + +python_grpc_library( name = "routeguide", deps = ["//example/proto:routeguide_proto"], ) diff --git a/python/example/routeguide/client.py b/python/example/routeguide/client.py index 06a314141..91ef63f48 100644 --- a/python/example/routeguide/client.py +++ b/python/example/routeguide/client.py @@ -21,8 +21,8 @@ # Recommend to the directory structure of client.runfiles to figure out the # correct import here. -from routeguide_pb.example.proto import routeguide_pb2 -from routeguide_pb.example.proto import routeguide_pb2_grpc +from example.proto import routeguide_pb2 +from example.proto import routeguide_pb2_grpc import resources @@ -106,8 +106,8 @@ def run(): # used in circumstances in which the with statement does not fit the needs # of the code. port = '50051' - if os.environ["SERVER_PORT"]: - port = os.environ["SERVER_PORT"] + if os.environ.get("SERVER_PORT"): + port = os.environ.get("SERVER_PORT") with grpc.insecure_channel('localhost:'+port) as channel: stub = routeguide_pb2_grpc.RouteGuideStub(channel) diff --git a/python/example/routeguide/resources.py b/python/example/routeguide/resources.py index 1da126339..7195af7a2 100644 --- a/python/example/routeguide/resources.py +++ b/python/example/routeguide/resources.py @@ -15,7 +15,7 @@ import json -from routeguide_pb.example.proto import routeguide_pb2 +from example.proto import routeguide_pb2 def read_route_guide_database(): """Reads the route guide database. diff --git a/python/example/routeguide/server.py b/python/example/routeguide/server.py index 719ec16d0..380f46beb 100644 --- a/python/example/routeguide/server.py +++ b/python/example/routeguide/server.py @@ -20,10 +20,8 @@ import grpc import logging -# Recommend to the directory structure of client.runfiles to figure out the -# correct import here. -from routeguide_pb.example.proto import routeguide_pb2 -from routeguide_pb.example.proto import routeguide_pb2_grpc +from example.proto import routeguide_pb2 +from example.proto import routeguide_pb2_grpc import resources @@ -121,8 +119,8 @@ def serve(): routeguide_pb2_grpc.add_RouteGuideServicer_to_server( RouteGuideServicer(), server) port = '50076' - if os.environ["SERVER_PORT"]: - port = os.environ["SERVER_PORT"] + if os.environ.get("SERVER_PORT"): + port = os.environ.get("SERVER_PORT") server.add_insecure_port('[::]:' + port) print("Python RouteGuide Server listing on :%s..." % port) server.start() diff --git a/python/python_grpc_compile.bzl b/python/python_grpc_compile.bzl index 5c01a8d60..d4ddda54e 100644 --- a/python/python_grpc_compile.bzl +++ b/python/python_grpc_compile.bzl @@ -1,10 +1,47 @@ -load("//:compile.bzl", "proto_compile") +load("//:plugin.bzl", "ProtoPluginInfo") +load( + "//:aspect.bzl", + "ProtoLibraryAspectNodeInfo", + "proto_compile_aspect_attrs", + "proto_compile_aspect_impl", + "proto_compile_attrs", + "proto_compile_impl", +) + +# "Aspects should be top-level values in extension files that define them." + +python_grpc_compile_aspect = aspect( + implementation = proto_compile_aspect_impl, + provides = ["proto_compile", ProtoLibraryAspectNodeInfo], + attr_aspects = ["deps"], + attrs = dict( + proto_compile_aspect_attrs, + _plugins = attr.label_list( + doc = "List of protoc plugins to apply", + providers = [ProtoPluginInfo], + default = [ + str(Label("//python:python")), + str(Label("//python:grpc_python")), + ], + ), + ), +) + +_rule = rule( + implementation = proto_compile_impl, + attrs = dict( + proto_compile_attrs, + deps = attr.label_list( + mandatory = True, + providers = [ProtoInfo, "proto_compile", ProtoLibraryAspectNodeInfo], + aspects = [python_grpc_compile_aspect], + ), + ), +) def python_grpc_compile(**kwargs): - proto_compile( - plugins = [ - str(Label("//python:python")), - str(Label("//python:grpc_python")), - ], + _rule( + verbose_string = "%s" % kwargs.get("verbose", 0), + plugin_options_string = ";".join(kwargs.get("plugin_options", [])), **kwargs ) diff --git a/python/python_proto_compile.bzl b/python/python_proto_compile.bzl index 6ca5650e1..5e2c00299 100644 --- a/python/python_proto_compile.bzl +++ b/python/python_proto_compile.bzl @@ -1,9 +1,46 @@ -load("//:compile.bzl", "proto_compile") +load("//:plugin.bzl", "ProtoPluginInfo") +load( + "//:aspect.bzl", + "ProtoLibraryAspectNodeInfo", + "proto_compile_aspect_attrs", + "proto_compile_aspect_impl", + "proto_compile_attrs", + "proto_compile_impl", +) + +# "Aspects should be top-level values in extension files that define them." + +python_proto_compile_aspect = aspect( + implementation = proto_compile_aspect_impl, + provides = ["proto_compile", ProtoLibraryAspectNodeInfo], + attr_aspects = ["deps"], + attrs = dict( + proto_compile_aspect_attrs, + _plugins = attr.label_list( + doc = "List of protoc plugins to apply", + providers = [ProtoPluginInfo], + default = [ + str(Label("//python:python")), + ], + ), + ), +) + +_rule = rule( + implementation = proto_compile_impl, + attrs = dict( + proto_compile_attrs, + deps = attr.label_list( + mandatory = True, + providers = [ProtoInfo, "proto_compile", ProtoLibraryAspectNodeInfo], + aspects = [python_proto_compile_aspect], + ), + ), +) def python_proto_compile(**kwargs): - proto_compile( - plugins = [ - str(Label("//python:python")), - ], + _rule( + verbose_string = "%s" % kwargs.get("verbose", 0), + plugin_options_string = ";".join(kwargs.get("plugin_options", [])), **kwargs ) diff --git a/python/requirements.txt b/python/requirements.txt index 3431d7874..f9767e531 100644 --- a/python/requirements.txt +++ b/python/requirements.txt @@ -1,2 +1,2 @@ -grpcio==1.15.0 -protobuf==3.6.1 +grpcio==1.20.0 +protobuf==3.7.1 \ No newline at end of file diff --git a/ruby/README.md b/ruby/README.md index 0230c8678..74afd5ec9 100644 --- a/ruby/README.md +++ b/ruby/README.md @@ -1,5 +1,7 @@ # `ruby` +"The ruby compile rules use an aspect-based implementation (aspect.bzl) rather than the traditional implementation (compile.bzl)" + | Rule | Description | | ---: | :--- | | [ruby_proto_compile](#ruby_proto_compile) | Generates *.ruby protobuf artifacts | @@ -138,12 +140,6 @@ ruby_proto_library( ) ``` -### `Flags` - -| Category | Flag | Value | Description | -| --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | ruby/binary.bzl is still using cfg=data | - ### Mandatory Attributes | Name | Type | Default | Description | @@ -205,12 +201,6 @@ ruby_grpc_library( ) ``` -### `Flags` - -| Category | Flag | Value | Description | -| --- | --- | --- | --- | -| build | incompatible_disallow_data_transition | false | ruby/binary.bzl is still using cfg=data | - ### Mandatory Attributes | Name | Type | Default | Description | diff --git a/ruby/example/routeguide/client.rb b/ruby/example/routeguide/client.rb index be083e95a..08686f5ab 100644 --- a/ruby/example/routeguide/client.rb +++ b/ruby/example/routeguide/client.rb @@ -14,10 +14,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -# Sample app that connects to a Route Guide service. -# -# Usage: $ path/to/route_guide_client.rb path/to/route_guide_db.json & - this_dir = File.expand_path(File.dirname(__FILE__)) lib_dir = File.join(File.dirname(this_dir), 'lib') $LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir) diff --git a/ruby/example/ruby_grpc_compile/.bazelrc b/ruby/example/ruby_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/ruby/example/ruby_grpc_library/.bazelrc b/ruby/example/ruby_grpc_library/.bazelrc deleted file mode 100644 index d4dbe1b1d..000000000 --- a/ruby/example/ruby_grpc_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# ruby/binary.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/ruby/example/ruby_proto_compile/.bazelrc b/ruby/example/ruby_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/ruby/example/ruby_proto_library/.bazelrc b/ruby/example/ruby_proto_library/.bazelrc deleted file mode 100644 index d4dbe1b1d..000000000 --- a/ruby/example/ruby_proto_library/.bazelrc +++ /dev/null @@ -1,2 +0,0 @@ -# ruby/binary.bzl is still using cfg=data -build --incompatible_disallow_data_transition=false \ No newline at end of file diff --git a/ruby/ruby_grpc_compile.bzl b/ruby/ruby_grpc_compile.bzl index 43987aecd..21aa18571 100644 --- a/ruby/ruby_grpc_compile.bzl +++ b/ruby/ruby_grpc_compile.bzl @@ -1,10 +1,47 @@ -load("//:compile.bzl", "proto_compile") +load("//:plugin.bzl", "ProtoPluginInfo") +load( + "//:aspect.bzl", + "ProtoLibraryAspectNodeInfo", + "proto_compile_aspect_attrs", + "proto_compile_aspect_impl", + "proto_compile_attrs", + "proto_compile_impl", +) + +# "Aspects should be top-level values in extension files that define them." + +ruby_grpc_compile_aspect = aspect( + implementation = proto_compile_aspect_impl, + provides = ["proto_compile", ProtoLibraryAspectNodeInfo], + attr_aspects = ["deps"], + attrs = dict( + proto_compile_aspect_attrs, + _plugins = attr.label_list( + doc = "List of protoc plugins to apply", + providers = [ProtoPluginInfo], + default = [ + str(Label("//ruby:ruby")), + str(Label("//ruby:grpc_ruby")), + ], + ), + ), +) + +_rule = rule( + implementation = proto_compile_impl, + attrs = dict( + proto_compile_attrs, + deps = attr.label_list( + mandatory = True, + providers = [ProtoInfo, "proto_compile", ProtoLibraryAspectNodeInfo], + aspects = [ruby_grpc_compile_aspect], + ), + ), +) def ruby_grpc_compile(**kwargs): - proto_compile( - plugins = [ - str(Label("//ruby:ruby")), - str(Label("//ruby:grpc_ruby")), - ], + _rule( + verbose_string = "%s" % kwargs.get("verbose", 0), + plugin_options_string = ";".join(kwargs.get("plugin_options", [])), **kwargs ) diff --git a/ruby/ruby_proto_compile.bzl b/ruby/ruby_proto_compile.bzl index c067dcedf..937bd5f78 100644 --- a/ruby/ruby_proto_compile.bzl +++ b/ruby/ruby_proto_compile.bzl @@ -1,9 +1,46 @@ -load("//:compile.bzl", "proto_compile") +load("//:plugin.bzl", "ProtoPluginInfo") +load( + "//:aspect.bzl", + "ProtoLibraryAspectNodeInfo", + "proto_compile_aspect_attrs", + "proto_compile_aspect_impl", + "proto_compile_attrs", + "proto_compile_impl", +) + +# "Aspects should be top-level values in extension files that define them." + +ruby_proto_compile_aspect = aspect( + implementation = proto_compile_aspect_impl, + provides = ["proto_compile", ProtoLibraryAspectNodeInfo], + attr_aspects = ["deps"], + attrs = dict( + proto_compile_aspect_attrs, + _plugins = attr.label_list( + doc = "List of protoc plugins to apply", + providers = [ProtoPluginInfo], + default = [ + str(Label("//ruby:ruby")), + ], + ), + ), +) + +_rule = rule( + implementation = proto_compile_impl, + attrs = dict( + proto_compile_attrs, + deps = attr.label_list( + mandatory = True, + providers = [ProtoInfo, "proto_compile", ProtoLibraryAspectNodeInfo], + aspects = [ruby_proto_compile_aspect], + ), + ), +) def ruby_proto_compile(**kwargs): - proto_compile( - plugins = [ - str(Label("//ruby:ruby")), - ], + _rule( + verbose_string = "%s" % kwargs.get("verbose", 0), + plugin_options_string = ";".join(kwargs.get("plugin_options", [])), **kwargs ) diff --git a/rust/cargo/BUILD b/rust/cargo/BUILD deleted file mode 100644 index 772a6c299..000000000 --- a/rust/cargo/BUILD +++ /dev/null @@ -1,46 +0,0 @@ -""" -cargo-raze workspace build file. - -DO NOT EDIT! Replaced on runs of cargo-raze -""" - -package(default_visibility = ["//visibility:public"]) - -licenses([ - "notice", # See individual crates for specific licenses -]) - -alias( - name = "futures", - actual = "@raze__futures__0_1_24//:futures", -) - -alias( - name = "grpc", - actual = "@raze__grpc__0_4_0//:grpc", -) - -alias( - name = "grpc_compiler", - actual = "@raze__grpc_compiler__0_4_0//:grpc_compiler", -) - -alias( - name = "protobuf", - actual = "@raze__protobuf__1_6_0//:protobuf", -) - -alias( - name = "protobuf_codegen", - actual = "@raze__protobuf_codegen__1_6_0//:protobuf_codegen", -) - -alias( - name = "tls_api", - actual = "@raze__tls_api__0_1_20//:tls_api", -) - -alias( - name = "tls_api_stub", - actual = "@raze__tls_api_stub__0_1_20//:tls_api_stub", -) diff --git a/rust/cargo/Cargo.lock b/rust/cargo/Cargo.lock deleted file mode 100644 index 5a65a46ce..000000000 --- a/rust/cargo/Cargo.lock +++ /dev/null @@ -1,915 +0,0 @@ -[[package]] -name = "arrayvec" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "autocfg" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "base64" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "bitflags" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "byteorder" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "bytes" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "cfg-if" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "cloudabi" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-deque" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-queue" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-utils" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "fake_lib" -version = "0.0.1" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "grpc 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "grpc-compiler 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf-codegen 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api-stub 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "fnv" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "fuchsia-cprng" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "fuchsia-zircon" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "fuchsia-zircon-sys" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "futures" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "futures-cpupool" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "grpc" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "httpbis 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api-stub 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "grpc-compiler" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "protobuf 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf-codegen 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "httpbis" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api-stub 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "unix_socket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "iovec" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "kernel32-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "lazy_static" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazycell" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "libc" -version = "0.2.51" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lock_api" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "log" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "log" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "memoffset" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "mio" -version = "0.6.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "mio-uds" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "miow" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "net2" -version = "0.2.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "nodrop" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "num_cpus" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "owning_ref" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot_core" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "protobuf" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "protobuf-codegen" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "protobuf 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_chacha" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_core" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "rand_hc" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_isaac" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_jitter" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_os" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_pcg" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_xorshift" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rdrand" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rustc_version" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "safemem" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "scoped-tls" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "scopeguard" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "semver" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "semver-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "slab" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "slab" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "smallvec" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "stable_deref_trait" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "tls-api" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tls-api-stub" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-codec" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-core" -version = "0.1.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-current-thread" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-executor" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-fs" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-io" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-reactor" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-sync" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-tcp" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-threadpool" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-timer" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-timer" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-tls-api" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-trace-core" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-udp" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-uds" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-uds" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "unix_socket" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "void" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "winapi-build" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "ws2_32-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[metadata] -"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" -"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" -"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" -"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" -"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" -"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" -"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71" -"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4" -"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b" -"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" -"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" -"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" -"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -"checksum futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "62941eff9507c8177d448bd83a44d9b9760856e184081d8cd79ba9f03dd24981" -"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" -"checksum grpc 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ec0a20eaa2682f7efe0ed9bf749a8264d1da9df9375ddfcec1643f21a4a5ec9" -"checksum grpc-compiler 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ae0ed7696fcbc435a4c7eb90573ea4211a2fb27d74b9a38f784bb0de025a1f18" -"checksum httpbis 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08dd97d857b9c194e7bff2e046f5711fa95f2532945497eca6913640eb664060" -"checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" -"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" -"checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)" = "bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917" -"checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" -"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" -"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" -"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" -"checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" -"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" -"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" -"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" -"checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" -"checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" -"checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" -"checksum protobuf 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "63af89a2e832acba65595d0fc9b8444f5b014356c2a7ad759d6b846c4fa52efb" -"checksum protobuf-codegen 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "89f7524bbb8c6796a164d29cbd8aae51ece80e4ae2040ffb2faa875b2f6823b4" -"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" -"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" -"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" -"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" -"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" -"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" -"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" -"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" -"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" -"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" -"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" -"checksum scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28" -"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" -"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum slab 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "17b4fcaed89ab08ef143da37bc52adbcc04d4a69014f4c1208d6b51f0c47bc23" -"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" -"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" -"checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" -"checksum tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "e452fe2fdf40a10715adb3a5f244c7411cdf2ecc887b07160310939785db9182" -"checksum tls-api-stub 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "25a2dcddd0fd52bdbedf9b4f0fd1cb884abfa0984e6a54121d4cefdf3d234e4c" -"checksum tokio 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "cec6c34409089be085de9403ba2010b80e36938c9ca992c4f67f407bb13db0b1" -"checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "aeeffbbb94209023feaef3c196a41cbcdafa06b4a6f893f68779bb5e53796f71" -"checksum tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443" -"checksum tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "83ea44c6c0773cc034771693711c35c677b4b5a4b21b9e7071704c54de7d555e" -"checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" -"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" -"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" -"checksum tokio-sync 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "5b2f843ffdf8d6e1f90bddd48da43f99ab071660cd92b7ec560ef3cdfd7a409a" -"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" -"checksum tokio-threadpool 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "72558af20be886ea124595ea0f806dd5703b8958e4705429dd58b3d8231f72f2" -"checksum tokio-timer 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6131e780037787ff1b3f8aad9da83bca02438b72277850dd6ad0d455e0e20efc" -"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" -"checksum tokio-tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "c7ac6ebb2f40e7e068cb43e1f3b09b40d7869bcc7e49e7f50610d4e0e75a18d7" -"checksum tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3" -"checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" -"checksum tokio-uds 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "65ae5d255ce739e8537221ed2942e0445f4b3b813daebac1c0050ddaaa3587f9" -"checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" -"checksum unix_socket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6aa2700417c405c38f5e6902d699345241c28c0b7ade4abaad71e35a87eb1564" -"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" -"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" -"checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770" -"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" -"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" diff --git a/rust/cargo/Cargo.toml b/rust/cargo/Cargo.toml deleted file mode 100644 index 39d0b71e2..000000000 --- a/rust/cargo/Cargo.toml +++ /dev/null @@ -1,24 +0,0 @@ -[package] -name = "fake_lib" -version = "0.0.1" - -[lib] -path = "lib.rs" - -[dependencies] -protobuf = { version = "1.6.0", features = ["with-bytes"] } -protobuf-codegen = "1.6.0" -grpc = "0.4.0" -grpc-compiler = "0.4.0" -tls-api = "0.1.19" -tls-api-stub = "0.1.19" -futures = "0.1.24" - -[raze] -genmode = "Remote" -workspace_path = "//rust/cargo" - -[raze.crates.lazy_static.'1.1.0'] -additional_flags = [ - "--cfg=lazy_static_heap_impl", -] diff --git a/rust/cargo/crates.bzl b/rust/cargo/crates.bzl deleted file mode 100644 index 5d61779d4..000000000 --- a/rust/cargo/crates.bzl +++ /dev/null @@ -1,622 +0,0 @@ -""" -cargo-raze crate workspace functions - -DO NOT EDIT! Replaced on runs of cargo-raze -""" - -def raze_fetch_remote_crates(): - native.new_http_archive( - name = "raze__arrayvec__0_4_7", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/arrayvec/arrayvec-0.4.7.crate", - type = "tar.gz", - strip_prefix = "arrayvec-0.4.7", - build_file = str(Label("//rust/cargo/remote:arrayvec-0.4.7.BUILD")), - ) - - native.new_http_archive( - name = "raze__base64__0_9_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/base64/base64-0.9.3.crate", - type = "tar.gz", - strip_prefix = "base64-0.9.3", - build_file = str(Label("//rust/cargo/remote:base64-0.9.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__bitflags__1_0_4", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/bitflags/bitflags-1.0.4.crate", - type = "tar.gz", - strip_prefix = "bitflags-1.0.4", - build_file = str(Label("//rust/cargo/remote:bitflags-1.0.4.BUILD")), - ) - - native.new_http_archive( - name = "raze__byteorder__1_2_6", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/byteorder/byteorder-1.2.6.crate", - type = "tar.gz", - strip_prefix = "byteorder-1.2.6", - build_file = str(Label("//rust/cargo/remote:byteorder-1.2.6.BUILD")), - ) - - native.new_http_archive( - name = "raze__bytes__0_4_10", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/bytes/bytes-0.4.10.crate", - type = "tar.gz", - strip_prefix = "bytes-0.4.10", - build_file = str(Label("//rust/cargo/remote:bytes-0.4.10.BUILD")), - ) - - native.new_http_archive( - name = "raze__cfg_if__0_1_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/cfg-if/cfg-if-0.1.5.crate", - type = "tar.gz", - strip_prefix = "cfg-if-0.1.5", - build_file = str(Label("//rust/cargo/remote:cfg-if-0.1.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__cloudabi__0_0_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/cloudabi/cloudabi-0.0.3.crate", - type = "tar.gz", - strip_prefix = "cloudabi-0.0.3", - build_file = str(Label("//rust/cargo/remote:cloudabi-0.0.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__crossbeam_deque__0_6_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/crossbeam-deque/crossbeam-deque-0.6.1.crate", - type = "tar.gz", - strip_prefix = "crossbeam-deque-0.6.1", - build_file = str(Label("//rust/cargo/remote:crossbeam-deque-0.6.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__crossbeam_epoch__0_5_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/crossbeam-epoch/crossbeam-epoch-0.5.2.crate", - type = "tar.gz", - strip_prefix = "crossbeam-epoch-0.5.2", - build_file = str(Label("//rust/cargo/remote:crossbeam-epoch-0.5.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__crossbeam_utils__0_5_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/crossbeam-utils/crossbeam-utils-0.5.0.crate", - type = "tar.gz", - strip_prefix = "crossbeam-utils-0.5.0", - build_file = str(Label("//rust/cargo/remote:crossbeam-utils-0.5.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__fuchsia_zircon__0_3_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/fuchsia-zircon/fuchsia-zircon-0.3.3.crate", - type = "tar.gz", - strip_prefix = "fuchsia-zircon-0.3.3", - build_file = str(Label("//rust/cargo/remote:fuchsia-zircon-0.3.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__fuchsia_zircon_sys__0_3_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/fuchsia-zircon-sys/fuchsia-zircon-sys-0.3.3.crate", - type = "tar.gz", - strip_prefix = "fuchsia-zircon-sys-0.3.3", - build_file = str(Label("//rust/cargo/remote:fuchsia-zircon-sys-0.3.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__futures__0_1_24", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/futures/futures-0.1.24.crate", - type = "tar.gz", - strip_prefix = "futures-0.1.24", - build_file = str(Label("//rust/cargo/remote:futures-0.1.24.BUILD")), - ) - - native.new_http_archive( - name = "raze__futures_cpupool__0_1_8", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-cpupool/futures-cpupool-0.1.8.crate", - type = "tar.gz", - strip_prefix = "futures-cpupool-0.1.8", - build_file = str(Label("//rust/cargo/remote:futures-cpupool-0.1.8.BUILD")), - ) - - native.new_http_archive( - name = "raze__grpc__0_4_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/grpc/grpc-0.4.0.crate", - type = "tar.gz", - strip_prefix = "grpc-0.4.0", - build_file = str(Label("//rust/cargo/remote:grpc-0.4.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__grpc_compiler__0_4_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/grpc-compiler/grpc-compiler-0.4.0.crate", - type = "tar.gz", - strip_prefix = "grpc-compiler-0.4.0", - build_file = str(Label("//rust/cargo/remote:grpc-compiler-0.4.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__httpbis__0_6_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/httpbis/httpbis-0.6.1.crate", - type = "tar.gz", - strip_prefix = "httpbis-0.6.1", - build_file = str(Label("//rust/cargo/remote:httpbis-0.6.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__iovec__0_1_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/iovec/iovec-0.1.2.crate", - type = "tar.gz", - strip_prefix = "iovec-0.1.2", - build_file = str(Label("//rust/cargo/remote:iovec-0.1.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__kernel32_sys__0_2_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/kernel32-sys/kernel32-sys-0.2.2.crate", - type = "tar.gz", - strip_prefix = "kernel32-sys-0.2.2", - build_file = str(Label("//rust/cargo/remote:kernel32-sys-0.2.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__lazy_static__1_1_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/lazy_static/lazy_static-1.1.0.crate", - type = "tar.gz", - strip_prefix = "lazy_static-1.1.0", - build_file = str(Label("//rust/cargo/remote:lazy_static-1.1.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__lazycell__1_2_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/lazycell/lazycell-1.2.0.crate", - type = "tar.gz", - strip_prefix = "lazycell-1.2.0", - build_file = str(Label("//rust/cargo/remote:lazycell-1.2.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__libc__0_2_43", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/libc/libc-0.2.43.crate", - type = "tar.gz", - strip_prefix = "libc-0.2.43", - build_file = str(Label("//rust/cargo/remote:libc-0.2.43.BUILD")), - ) - - native.new_http_archive( - name = "raze__lock_api__0_1_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/lock_api/lock_api-0.1.3.crate", - type = "tar.gz", - strip_prefix = "lock_api-0.1.3", - build_file = str(Label("//rust/cargo/remote:lock_api-0.1.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__log__0_3_9", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.3.9.crate", - type = "tar.gz", - strip_prefix = "log-0.3.9", - build_file = str(Label("//rust/cargo/remote:log-0.3.9.BUILD")), - ) - - native.new_http_archive( - name = "raze__log__0_4_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.5.crate", - type = "tar.gz", - strip_prefix = "log-0.4.5", - build_file = str(Label("//rust/cargo/remote:log-0.4.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__memoffset__0_2_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/memoffset/memoffset-0.2.1.crate", - type = "tar.gz", - strip_prefix = "memoffset-0.2.1", - build_file = str(Label("//rust/cargo/remote:memoffset-0.2.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__mio__0_6_16", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/mio/mio-0.6.16.crate", - type = "tar.gz", - strip_prefix = "mio-0.6.16", - build_file = str(Label("//rust/cargo/remote:mio-0.6.16.BUILD")), - ) - - native.new_http_archive( - name = "raze__mio_uds__0_6_7", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/mio-uds/mio-uds-0.6.7.crate", - type = "tar.gz", - strip_prefix = "mio-uds-0.6.7", - build_file = str(Label("//rust/cargo/remote:mio-uds-0.6.7.BUILD")), - ) - - native.new_http_archive( - name = "raze__miow__0_2_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/miow/miow-0.2.1.crate", - type = "tar.gz", - strip_prefix = "miow-0.2.1", - build_file = str(Label("//rust/cargo/remote:miow-0.2.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__net2__0_2_33", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/net2/net2-0.2.33.crate", - type = "tar.gz", - strip_prefix = "net2-0.2.33", - build_file = str(Label("//rust/cargo/remote:net2-0.2.33.BUILD")), - ) - - native.new_http_archive( - name = "raze__nodrop__0_1_12", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/nodrop/nodrop-0.1.12.crate", - type = "tar.gz", - strip_prefix = "nodrop-0.1.12", - build_file = str(Label("//rust/cargo/remote:nodrop-0.1.12.BUILD")), - ) - - native.new_http_archive( - name = "raze__num_cpus__1_8_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/num_cpus/num_cpus-1.8.0.crate", - type = "tar.gz", - strip_prefix = "num_cpus-1.8.0", - build_file = str(Label("//rust/cargo/remote:num_cpus-1.8.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__owning_ref__0_3_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/owning_ref/owning_ref-0.3.3.crate", - type = "tar.gz", - strip_prefix = "owning_ref-0.3.3", - build_file = str(Label("//rust/cargo/remote:owning_ref-0.3.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__parking_lot__0_6_4", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/parking_lot/parking_lot-0.6.4.crate", - type = "tar.gz", - strip_prefix = "parking_lot-0.6.4", - build_file = str(Label("//rust/cargo/remote:parking_lot-0.6.4.BUILD")), - ) - - native.new_http_archive( - name = "raze__parking_lot_core__0_3_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/parking_lot_core/parking_lot_core-0.3.1.crate", - type = "tar.gz", - strip_prefix = "parking_lot_core-0.3.1", - build_file = str(Label("//rust/cargo/remote:parking_lot_core-0.3.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__protobuf__1_6_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/protobuf/protobuf-1.6.0.crate", - type = "tar.gz", - strip_prefix = "protobuf-1.6.0", - build_file = str(Label("//rust/cargo/remote:protobuf-1.6.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__protobuf_codegen__1_6_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/protobuf-codegen/protobuf-codegen-1.6.0.crate", - type = "tar.gz", - strip_prefix = "protobuf-codegen-1.6.0", - build_file = str(Label("//rust/cargo/remote:protobuf-codegen-1.6.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__rand__0_5_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/rand/rand-0.5.5.crate", - type = "tar.gz", - strip_prefix = "rand-0.5.5", - build_file = str(Label("//rust/cargo/remote:rand-0.5.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__rand_core__0_2_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_core/rand_core-0.2.1.crate", - type = "tar.gz", - strip_prefix = "rand_core-0.2.1", - build_file = str(Label("//rust/cargo/remote:rand_core-0.2.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__rustc_version__0_2_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/rustc_version/rustc_version-0.2.3.crate", - type = "tar.gz", - strip_prefix = "rustc_version-0.2.3", - build_file = str(Label("//rust/cargo/remote:rustc_version-0.2.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__safemem__0_3_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/safemem/safemem-0.3.0.crate", - type = "tar.gz", - strip_prefix = "safemem-0.3.0", - build_file = str(Label("//rust/cargo/remote:safemem-0.3.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__scoped_tls__0_1_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/scoped-tls/scoped-tls-0.1.2.crate", - type = "tar.gz", - strip_prefix = "scoped-tls-0.1.2", - build_file = str(Label("//rust/cargo/remote:scoped-tls-0.1.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__scopeguard__0_3_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/scopeguard/scopeguard-0.3.3.crate", - type = "tar.gz", - strip_prefix = "scopeguard-0.3.3", - build_file = str(Label("//rust/cargo/remote:scopeguard-0.3.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__semver__0_9_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/semver/semver-0.9.0.crate", - type = "tar.gz", - strip_prefix = "semver-0.9.0", - build_file = str(Label("//rust/cargo/remote:semver-0.9.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__semver_parser__0_7_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/semver-parser/semver-parser-0.7.0.crate", - type = "tar.gz", - strip_prefix = "semver-parser-0.7.0", - build_file = str(Label("//rust/cargo/remote:semver-parser-0.7.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__slab__0_3_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/slab/slab-0.3.0.crate", - type = "tar.gz", - strip_prefix = "slab-0.3.0", - build_file = str(Label("//rust/cargo/remote:slab-0.3.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__slab__0_4_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/slab/slab-0.4.1.crate", - type = "tar.gz", - strip_prefix = "slab-0.4.1", - build_file = str(Label("//rust/cargo/remote:slab-0.4.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__smallvec__0_6_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/smallvec/smallvec-0.6.5.crate", - type = "tar.gz", - strip_prefix = "smallvec-0.6.5", - build_file = str(Label("//rust/cargo/remote:smallvec-0.6.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__stable_deref_trait__1_1_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/stable_deref_trait/stable_deref_trait-1.1.1.crate", - type = "tar.gz", - strip_prefix = "stable_deref_trait-1.1.1", - build_file = str(Label("//rust/cargo/remote:stable_deref_trait-1.1.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__tls_api__0_1_20", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tls-api/tls-api-0.1.20.crate", - type = "tar.gz", - strip_prefix = "tls-api-0.1.20", - build_file = str(Label("//rust/cargo/remote:tls-api-0.1.20.BUILD")), - ) - - native.new_http_archive( - name = "raze__tls_api_stub__0_1_20", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tls-api-stub/tls-api-stub-0.1.20.crate", - type = "tar.gz", - strip_prefix = "tls-api-stub-0.1.20", - build_file = str(Label("//rust/cargo/remote:tls-api-stub-0.1.20.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio__0_1_8", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio/tokio-0.1.8.crate", - type = "tar.gz", - strip_prefix = "tokio-0.1.8", - build_file = str(Label("//rust/cargo/remote:tokio-0.1.8.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_codec__0_1_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-codec/tokio-codec-0.1.0.crate", - type = "tar.gz", - strip_prefix = "tokio-codec-0.1.0", - build_file = str(Label("//rust/cargo/remote:tokio-codec-0.1.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_core__0_1_17", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-core/tokio-core-0.1.17.crate", - type = "tar.gz", - strip_prefix = "tokio-core-0.1.17", - build_file = str(Label("//rust/cargo/remote:tokio-core-0.1.17.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_current_thread__0_1_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-current-thread/tokio-current-thread-0.1.1.crate", - type = "tar.gz", - strip_prefix = "tokio-current-thread-0.1.1", - build_file = str(Label("//rust/cargo/remote:tokio-current-thread-0.1.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_executor__0_1_4", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-executor/tokio-executor-0.1.4.crate", - type = "tar.gz", - strip_prefix = "tokio-executor-0.1.4", - build_file = str(Label("//rust/cargo/remote:tokio-executor-0.1.4.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_fs__0_1_3", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-fs/tokio-fs-0.1.3.crate", - type = "tar.gz", - strip_prefix = "tokio-fs-0.1.3", - build_file = str(Label("//rust/cargo/remote:tokio-fs-0.1.3.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_io__0_1_8", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-io/tokio-io-0.1.8.crate", - type = "tar.gz", - strip_prefix = "tokio-io-0.1.8", - build_file = str(Label("//rust/cargo/remote:tokio-io-0.1.8.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_reactor__0_1_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-reactor/tokio-reactor-0.1.5.crate", - type = "tar.gz", - strip_prefix = "tokio-reactor-0.1.5", - build_file = str(Label("//rust/cargo/remote:tokio-reactor-0.1.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_tcp__0_1_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-tcp/tokio-tcp-0.1.1.crate", - type = "tar.gz", - strip_prefix = "tokio-tcp-0.1.1", - build_file = str(Label("//rust/cargo/remote:tokio-tcp-0.1.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_threadpool__0_1_6", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-threadpool/tokio-threadpool-0.1.6.crate", - type = "tar.gz", - strip_prefix = "tokio-threadpool-0.1.6", - build_file = str(Label("//rust/cargo/remote:tokio-threadpool-0.1.6.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_timer__0_1_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-timer/tokio-timer-0.1.2.crate", - type = "tar.gz", - strip_prefix = "tokio-timer-0.1.2", - build_file = str(Label("//rust/cargo/remote:tokio-timer-0.1.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_timer__0_2_6", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-timer/tokio-timer-0.2.6.crate", - type = "tar.gz", - strip_prefix = "tokio-timer-0.2.6", - build_file = str(Label("//rust/cargo/remote:tokio-timer-0.2.6.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_tls_api__0_1_20", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-tls-api/tokio-tls-api-0.1.20.crate", - type = "tar.gz", - strip_prefix = "tokio-tls-api-0.1.20", - build_file = str(Label("//rust/cargo/remote:tokio-tls-api-0.1.20.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_udp__0_1_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-udp/tokio-udp-0.1.2.crate", - type = "tar.gz", - strip_prefix = "tokio-udp-0.1.2", - build_file = str(Label("//rust/cargo/remote:tokio-udp-0.1.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_uds__0_1_7", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-uds/tokio-uds-0.1.7.crate", - type = "tar.gz", - strip_prefix = "tokio-uds-0.1.7", - build_file = str(Label("//rust/cargo/remote:tokio-uds-0.1.7.BUILD")), - ) - - native.new_http_archive( - name = "raze__tokio_uds__0_2_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/tokio-uds/tokio-uds-0.2.1.crate", - type = "tar.gz", - strip_prefix = "tokio-uds-0.2.1", - build_file = str(Label("//rust/cargo/remote:tokio-uds-0.2.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__unix_socket__0_5_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/unix_socket/unix_socket-0.5.0.crate", - type = "tar.gz", - strip_prefix = "unix_socket-0.5.0", - build_file = str(Label("//rust/cargo/remote:unix_socket-0.5.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__unreachable__1_0_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/unreachable/unreachable-1.0.0.crate", - type = "tar.gz", - strip_prefix = "unreachable-1.0.0", - build_file = str(Label("//rust/cargo/remote:unreachable-1.0.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__version_check__0_1_5", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/version_check/version_check-0.1.5.crate", - type = "tar.gz", - strip_prefix = "version_check-0.1.5", - build_file = str(Label("//rust/cargo/remote:version_check-0.1.5.BUILD")), - ) - - native.new_http_archive( - name = "raze__void__1_0_2", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/void/void-1.0.2.crate", - type = "tar.gz", - strip_prefix = "void-1.0.2", - build_file = str(Label("//rust/cargo/remote:void-1.0.2.BUILD")), - ) - - native.new_http_archive( - name = "raze__winapi__0_2_8", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi/winapi-0.2.8.crate", - type = "tar.gz", - strip_prefix = "winapi-0.2.8", - build_file = str(Label("//rust/cargo/remote:winapi-0.2.8.BUILD")), - ) - - native.new_http_archive( - name = "raze__winapi__0_3_6", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi/winapi-0.3.6.crate", - type = "tar.gz", - strip_prefix = "winapi-0.3.6", - build_file = str(Label("//rust/cargo/remote:winapi-0.3.6.BUILD")), - ) - - native.new_http_archive( - name = "raze__winapi_build__0_1_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-build/winapi-build-0.1.1.crate", - type = "tar.gz", - strip_prefix = "winapi-build-0.1.1", - build_file = str(Label("//rust/cargo/remote:winapi-build-0.1.1.BUILD")), - ) - - native.new_http_archive( - name = "raze__winapi_i686_pc_windows_gnu__0_4_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate", - type = "tar.gz", - strip_prefix = "winapi-i686-pc-windows-gnu-0.4.0", - build_file = str(Label("//rust/cargo/remote:winapi-i686-pc-windows-gnu-0.4.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__winapi_x86_64_pc_windows_gnu__0_4_0", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate", - type = "tar.gz", - strip_prefix = "winapi-x86_64-pc-windows-gnu-0.4.0", - build_file = str(Label("//rust/cargo/remote:winapi-x86_64-pc-windows-gnu-0.4.0.BUILD")), - ) - - native.new_http_archive( - name = "raze__ws2_32_sys__0_2_1", - url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/ws2_32-sys/ws2_32-sys-0.2.1.crate", - type = "tar.gz", - strip_prefix = "ws2_32-sys-0.2.1", - build_file = str(Label("//rust/cargo/remote:ws2_32-sys-0.2.1.BUILD")), - ) diff --git a/rust/cargo/regenerate_crates.sh b/rust/cargo/regenerate_crates.sh deleted file mode 100755 index 3468ff270..000000000 --- a/rust/cargo/regenerate_crates.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -set -eu -set -o pipefail - -if ! (which cargo &>/dev/null); then - echo "Cannot find cargo in PATH, please install Cargo." >&2 - exit 1 -fi - -if ! (which cargo-raze &>/dev/null); then - echo "Cannot find cargo-raze in PATH, please install cargo-raze (cargo install cargo-raze)." >&2 - exit 1 -fi - -cd "$(dirname "${BASH_SOURCE[0]}")" - -rm -fr remote -# Now run cargo generate-lockfile && cargo raze -cargo generate-lockfile && cargo raze - -# We need to update the build file path. -perl -p -e 's|("//rust[^"]+")|str(Label(\1))|g' "crates.bzl" -#rm crates.bzl.bak - -# Remove these outdated rust_bench_test references -find remote -name '*BUILD' | xargs sed -i.bak '/rust_bench_test/d' diff --git a/rust/example/routeguide/BUILD.bazel b/rust/example/routeguide/BUILD.bazel index 2c00d9ffe..97025d58e 100644 --- a/rust/example/routeguide/BUILD.bazel +++ b/rust/example/routeguide/BUILD.bazel @@ -4,6 +4,7 @@ load("@io_bazel_rules_rust//rust:rust.bzl", "rust_binary", "rust_library") rust_grpc_library( name = "routeguide", deps = ["//example/proto:routeguide_proto"], + verbose = 4, ) rust_binary( diff --git a/rust/example/routeguide/lib.rs b/rust/example/routeguide/lib.rs new file mode 100644 index 000000000..12a92bee3 --- /dev/null +++ b/rust/example/routeguide/lib.rs @@ -0,0 +1,10 @@ +extern crate futures; +extern crate grpc; +extern crate grpc_protobuf; +extern crate protobuf; + +pub mod routeguide; +pub mod routeguide_grpc; +pub mod server; + +pub const DEFAULT_PORT: u16 = 10000; diff --git a/rust/example/routeguide/server.rs b/rust/example/routeguide/server.rs index 2c25f17b4..b85a802b6 100644 --- a/rust/example/routeguide/server.rs +++ b/rust/example/routeguide/server.rs @@ -1,15 +1,9 @@ -extern crate routeguide; -extern crate grpc; -extern crate tls_api_stub; -extern crate futures; - -use crate::routeguide::routeguide_grpc::RouteGuide; -use crate::routeguide::routeguide::Point; -use crate::routeguide::routeguide::Feature; -use crate::routeguide::routeguide::RouteNote; -use crate::routeguide::routeguide::RouteSummary; -use crate::routeguide::routeguide::Rectangle; - +use crate::routeguide_grpc::RouteGuide; +use crate::routeguide::Point; +use crate::routeguide::Feature; +use crate::routeguide::RouteNote; +use crate::routeguide::RouteSummary; +use crate::routeguide::Rectangle; use grpc::ServerHandlerContext; use grpc::ServerRequestSingle; use grpc::ServerResponseUnarySink; @@ -31,7 +25,7 @@ use std::io::Read; use json::JsonValue; -// https://github.com/grpc/grpc-go/blob/master/examples/route_guide/server/server.go +// https://github.com/grpc/grpc-go/blob/master/examples/routeguide/server/server.go #[derive(Default)] pub struct RouteGuideImpl { saved_features: Vec, @@ -41,7 +35,7 @@ pub struct RouteGuideImpl { impl RouteGuideImpl { pub fn new_and_load_db() -> RouteGuideImpl { RouteGuideImpl { - saved_features: load_features(Path::new(ROUTE_GUIDE_DB_PATH)), + saved_features: load_features(Path::new(routeguide_DB_PATH)), route_notes: Default::default(), } } @@ -198,7 +192,7 @@ fn serialize(point: &Point) -> String { format!("{} {}", point.latitude, point.longitude) } -const ROUTE_GUIDE_DB_PATH: &str = "testdata/route_guide_db.json"; +const routeguide_DB_PATH: &str = "testdata/routeguide_db.json"; fn load_features(path: &Path) -> Vec { let mut file = fs::File::open(path).expect("open"); @@ -242,7 +236,7 @@ mod test { #[test] fn test_load_features() { - let features = load_features(Path::new(ROUTE_GUIDE_DB_PATH)); + let features = load_features(Path::new(routeguide_DB_PATH)); assert!(features.len() > 0); } -} +} \ No newline at end of file diff --git a/rust/example/rust_grpc_compile/.bazelrc b/rust/example/rust_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/rust/example/rust_grpc_library/.bazelrc b/rust/example/rust_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/rust/example/rust_proto_compile/.bazelrc b/rust/example/rust_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/rust/example/rust_proto_library/.bazelrc b/rust/example/rust_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/rust/rust_proto_lib.bzl b/rust/rust_proto_lib.bzl index 16894dded..99f8d2576 100644 --- a/rust/rust_proto_lib.bzl +++ b/rust/rust_proto_lib.bzl @@ -12,15 +12,15 @@ def _rust_proto_lib_impl(ctx): """Generate a lib.rs file for the crates.""" compilation = ctx.attr.compilation[ProtoCompileInfo] deps = ctx.attr.deps - srcs = compilation.files + srcs = compilation.outputs lib_rs = ctx.actions.declare_file("%s/lib.rs" % compilation.label.name) # Search in the plugin list for 'protoc_gen_rust_grpc' or similar. grpc = False - for plugin in compilation.plugins: - if plugin.executable.path.endswith("grpc"): - grpc = True - break + # for plugin in compilation.plugins: + # if plugin.executable.path.endswith("grpc"): + # grpc = True + # break content = ["extern crate protobuf;"] if grpc: @@ -31,6 +31,7 @@ def _rust_proto_lib_impl(ctx): # content.append("extern crate %s;" % dep.label.name) # content.append("pub use %s::*;" % dep.label.name) for f in srcs: + print("src: " + f.path) content.append("pub mod %s;" % _basename(f)) content.append("pub use %s::*;" % _basename(f)) diff --git a/scala/README.md b/scala/README.md index 8e7265096..aa1a814b6 100644 --- a/scala/README.md +++ b/scala/README.md @@ -23,7 +23,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_proto_compile") scala_proto_compile() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -89,7 +89,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_grpc_compile") scala_grpc_compile() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -153,7 +153,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_proto_library") scala_proto_library() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -219,7 +219,7 @@ load("@build_stack_rules_proto//scala:deps.bzl", "scala_grpc_library") scala_grpc_library() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() diff --git a/scala/example/scala_grpc_compile/.bazelrc b/scala/example/scala_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/scala/example/scala_grpc_library/.bazelrc b/scala/example/scala_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/scala/example/scala_proto_compile/.bazelrc b/scala/example/scala_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/scala/example/scala_proto_library/.bazelrc b/scala/example/scala_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/scala/protoc-gen-scala.go b/scala/protoc-gen-scala.go index acdc5be45..545c82d87 100644 --- a/scala/protoc-gen-scala.go +++ b/scala/protoc-gen-scala.go @@ -5,6 +5,7 @@ import ( "os" "os/exec" "path" + "path/filepath" "syscall" ) @@ -15,6 +16,8 @@ func main() { // ./bazel-out/host/bin/external/build_stack_rules_proto/scala/linux_amd64_stripped // ./bazel-out/host/bin/external/build_stack_rules_proto/scala/linux_amd64_stripped/protoc-gen-scala + // listFiles(".") + jar := mustFindInSandbox(path.Dir(os.Args[0]), "compiler_plugin_deploy.jar") err, exitCode := run("external/local_jdk/jre/bin/java", append([]string{"-jar", jar}, os.Args...), ".", nil) if err != nil { @@ -84,3 +87,16 @@ func run(entrypoint string, args []string, dir string, env []string) (error, int } return err, exitCode } + +// listFiles - convenience debugging function to log the files under a given dir +func listFiles(dir string) error { + log.Println("Listing files under " + dir) + return filepath.Walk(dir, func(path string, info os.FileInfo, err error) error { + if err != nil { + log.Printf("%v\n", err) + return err + } + log.Println(path) + return nil + }) +} diff --git a/swift/example/swift_grpc_compile/.bazelrc b/swift/example/swift_grpc_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/swift/example/swift_grpc_library/.bazelrc b/swift/example/swift_grpc_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/swift/example/swift_proto_compile/.bazelrc b/swift/example/swift_proto_compile/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/swift/example/swift_proto_library/.bazelrc b/swift/example/swift_proto_library/.bazelrc deleted file mode 100644 index e69de29bb..000000000 diff --git a/tools/rulegen/README.footer.md b/tools/rulegen/README.footer.md index 48212f639..9b7bd6f99 100644 --- a/tools/rulegen/README.footer.md +++ b/tools/rulegen/README.footer.md @@ -234,3 +234,67 @@ Follow the pattern seen in the multiple examples in this repository. The basic ## Contributing Contributions welcome; please create Issues or GitHub pull requests. + +## ProtoInfo provider + +A few notes about the 'proto' provider. Bazel initially implemented +[providers](https://docs.bazel.build/versions/master/skylark/lib/Provider.html) +using simple strings. For example, one could write a rule that depends on +`proto_library` rules as follows: + +```python +my_custom_rule = rule( + implementation = my_custom_rule_impl, + attrs = { + "deps": attr.label_list( + doc = "proto_library dependencies", + mandatory = True, + providers = ["proto"], + ), + } +) +``` + +We can then collect a list of the provided "info" objects as follows: + +```python +def my_custom_rule_impl(ctx): + # list A list of ProtoInfo values + deps = [ dep.proto for dep in ctx.attr.deps ] +``` + +This style of provider usage is now considered "legacy". As of bazel 0.22.0 +(Jan 2019) +[4817df](https://github.com/bazelbuild/bazel/commit/4817df1e862fe2de3b17905dbbc0c7badff6bb4b), +the +[ProtoInfo](https://docs.bazel.build/versions/master/skylark/lib/ProtoInfo.html) +provider was introduced. Rules using this provider should be changed to: + +```python +my_custom_rule = rule( + implementation = my_custom_rule_impl, + attrs = { + "deps": attr.label_list( + doc = "proto_library dependencies", + mandatory = True, + providers = [ProtoInfo], + ), + +``` + +```python +def my_custom_rule_impl(ctx): + # > A list of ProtoInfo + deps = [ dep[ProtoInfo] for dep in ctx.attr.deps ] +``` + +A flag to toggle availability of the "legacy" provider was introduced in +[e3f4ce](https://github.com/bazelbuild/bazel/commit/e3f4ce739f0dbe0fea2b5580655fc96012d162cd) +as `--incompatible_disable_legacy_proto_provider`. Therefore, if you still want +the legacy behavior specify +`--incompatible_disable_legacy_proto_provider=false`. + +Additional reading: + +- https://github.com/bazelbuild/bazel/issues/3701 +- https://github.com/bazelbuild/bazel/issues/6901 \ No newline at end of file diff --git a/tools/rulegen/android.go b/tools/rulegen/android.go index 6aba826ae..919cbf118 100644 --- a/tools/rulegen/android.go +++ b/tools/rulegen/android.go @@ -18,11 +18,7 @@ load("@build_stack_rules_proto//{{ .Lang.Dir }}:deps.bzl", "{{ .Rule.Name }}") load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") -android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules()`) +android_sdk_repository(name = "androidsdk")`) var androidGrpcLibraryUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//:deps.bzl", "io_grpc_grpc_java") @@ -40,11 +36,7 @@ load("@build_stack_rules_proto//{{ .Lang.Dir }}:deps.bzl", "{{ .Rule.Name }}") load("@build_bazel_rules_android//android:sdk_repository.bzl", "android_sdk_repository") -android_sdk_repository(name = "androidsdk") - -load("@gmaven_rules//:gmaven.bzl", "gmaven_rules") - -gmaven_rules()`) +android_sdk_repository(name = "androidsdk")`) var androidProtoLibraryRuleTemplate = mustTemplate(`load("//{{ .Lang.Dir }}:{{ .Rule.Base}}_{{ .Rule.Kind }}_compile.bzl", "{{ .Rule.Base }}_{{ .Rule.Kind }}_compile") load("@build_bazel_rules_android//android:rules.bzl", "android_library") @@ -112,6 +104,11 @@ func makeAndroid() *Language { return &Language{ Dir: "android", Name: "android", + Flags: append([]*Flag{}, &Flag{ + Category: "build", + Name: "incompatible_disable_deprecated_attr_params", + Value: "false", + }), Rules: []*Rule{ &Rule{ Name: "android_proto_compile", @@ -144,6 +141,23 @@ func makeAndroid() *Language { Implementation: androidProtoLibraryRuleTemplate, Doc: "Generates android protobuf library", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_remove_native_maven_jar", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, &Rule{ Name: "android_grpc_library", @@ -154,6 +168,23 @@ func makeAndroid() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates android protobuf+gRPC library", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_remove_native_maven_jar", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, }, } diff --git a/tools/rulegen/closure.go b/tools/rulegen/closure.go index e4c80b924..7e4069707 100644 --- a/tools/rulegen/closure.go +++ b/tools/rulegen/closure.go @@ -47,8 +47,9 @@ def {{ .Rule.Name }}(**kwargs): func makeClosure() *Language { return &Language{ - Dir: "closure", - Name: "closure", + Dir: "closure", + Name: "closure", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "closure_proto_compile", @@ -66,6 +67,18 @@ func makeClosure() *Language { Example: protoLibraryExampleTemplate, Doc: "Generates a closure_library with compiled protobuf *.js files", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, }, } diff --git a/tools/rulegen/cpp.go b/tools/rulegen/cpp.go index c2a5a27a5..e758ee99e 100644 --- a/tools/rulegen/cpp.go +++ b/tools/rulegen/cpp.go @@ -57,10 +57,19 @@ def {{ .Rule.Name }}(**kwargs): visibility = visibility, )`) +var commonLangFlags = []*Flag{ + { + Category: "build", + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + }, +} + func makeCpp() *Language { return &Language{ - Dir: "cpp", - Name: "cpp", + Dir: "cpp", + Name: "cpp", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "cpp_proto_compile", @@ -95,6 +104,26 @@ func makeCpp() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates *.h,*.cc protobuf+gRPC library", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disable_legacy_proto_provider", + Value: "false", + Description: "grpc/gprc has not migrated to ProtoInfo provider", + }, + { + Category: "build", + Name: "incompatible_depset_is_not_iterable", + Value: "false", + Description: "com_github_grpc_grpc/bazel/generate_cc.bzl line 10, in generate_cc_impl", + }, + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + Description: "com_github_grpc_grpc/bazel/generate_cc.bzl: 81", + }, + }, }, }, } diff --git a/tools/rulegen/csharp.go b/tools/rulegen/csharp.go index 15e206863..011291984 100644 --- a/tools/rulegen/csharp.go +++ b/tools/rulegen/csharp.go @@ -142,12 +142,18 @@ var csharpLibraryFlags = []*Flag{ Value: "CoreCompile=standalone", Description: "dotnet SDK desperately wants to find the HOME directory", }, + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, } func makeCsharp() *Language { return &Language{ - Dir: "csharp", - Name: "csharp", + Dir: "csharp", + Name: "csharp", + Flags: commonLangFlags, Notes: mustTemplate(`**NOTE 1**: the csharp_* rules currently don't play nicely with sandboxing. You may see errors like: ~~~python diff --git a/tools/rulegen/d.go b/tools/rulegen/d.go index da916203a..d7fb27336 100644 --- a/tools/rulegen/d.go +++ b/tools/rulegen/d.go @@ -108,8 +108,9 @@ def {{ .Rule.Name }}(**kwargs): func makeD() *Language { return &Language{ - Dir: "d", - Name: "d", + Dir: "d", + Name: "d", + Flags: commonLangFlags, Plugins: map[string]*Plugin{ "//d:d": &Plugin{ Tool: "@com_github_dcarp_protobuf_d//:protoc-gen-d", @@ -124,6 +125,13 @@ func makeD() *Language { Example: dProtoCompileExampleTemplate, Doc: "Generates d protobuf artifacts", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, + }, }, // &Rule{ // Name: "d_grpc_compile", diff --git a/tools/rulegen/dart.go b/tools/rulegen/dart.go index 30289eb24..3ddcbc592 100644 --- a/tools/rulegen/dart.go +++ b/tools/rulegen/dart.go @@ -5,7 +5,7 @@ var dartUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//{{ .Lang.D {{ .Rule.Name }}() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -24,7 +24,7 @@ var dartGrpcLibraryUsageTemplate = mustTemplate(`load("@build_stack_rules_proto/ {{ .Rule.Name }}() # rules_go used here to compile a wrapper around the protoc-gen-grpc plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -102,18 +102,54 @@ def {{ .Rule.Name }}(**kwargs): )`) var dartFlags = []*Flag{ + // { + // Category: "build", + // Name: "incompatible_disallow_data_transition", + // Value: "false", + // Description: "vm.bzl is still using cfg=data", + // }, { - Category: "build", - Name: "incompatible_disallow_data_transition", - Value: "false", - Description: "vm.bzl is still using cfg=data", + Category: "build", + Name: "incompatible_no_transitive_loads", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_disable_deprecated_attr_params", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_depset_is_not_iterable", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_depset_union", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", }, } func makeDart() *Language { return &Language{ - Dir: "dart", - Name: "dart", + Dir: "dart", + Name: "dart", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "dart_proto_compile", diff --git a/tools/rulegen/github_grpc_grpc_web.go b/tools/rulegen/github_grpc_grpc_web.go index 4e5beec2f..f860f5fdf 100644 --- a/tools/rulegen/github_grpc_grpc_web.go +++ b/tools/rulegen/github_grpc_grpc_web.go @@ -113,6 +113,18 @@ func makeGithubComGrpcGrpcWeb() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates protobuf closure library *.js files", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, }, } diff --git a/tools/rulegen/go.go b/tools/rulegen/go.go index 8f3afbf46..d57682095 100644 --- a/tools/rulegen/go.go +++ b/tools/rulegen/go.go @@ -4,7 +4,7 @@ var goUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//{{ .Lang.Dir {{ .Rule.Name }}() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -163,6 +163,22 @@ func makeGo() *Language { return &Language{ Dir: "go", Name: "go", + // incompatible_disable_legacy_flags_cc_toolchain_api + // incompatible_disable_tools_defaults_package + // incompatible_enable_cc_toolchain_resolution + // + // incompatible_enable_legacy_cpp_toolchain_skylark_api + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + Description: "In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule.", + }, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + Description: `/external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing`, + }), Plugins: map[string]*Plugin{ "//go:go": &Plugin{ Tool: "@com_github_golang_protobuf//protoc-gen-go", diff --git a/tools/rulegen/gogo.go b/tools/rulegen/gogo.go index 971fc59e6..3ed9b700c 100644 --- a/tools/rulegen/gogo.go +++ b/tools/rulegen/gogo.go @@ -103,6 +103,11 @@ func makeGogo() *Language { Dir: "github.com/gogo/protobuf", Name: "gogo", Plugins: make(map[string]*Plugin), + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + }), } addGogoRules(lang, "gogo") diff --git a/tools/rulegen/grpc_gateway.go b/tools/rulegen/grpc_gateway.go index ea9c170a0..84e1840cf 100644 --- a/tools/rulegen/grpc_gateway.go +++ b/tools/rulegen/grpc_gateway.go @@ -4,17 +4,17 @@ var grpcGatewayUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//:de io_bazel_rules_go() -bazel_gazelle() +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") -load("@build_stack_rules_proto//{{ .Lang.Dir }}:deps.bzl", "{{ .Rule.Name }}") +go_rules_dependencies() -{{ .Rule.Name }}() +go_register_toolchains() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +bazel_gazelle() -go_rules_dependencies() +load("@build_stack_rules_proto//{{ .Lang.Dir }}:deps.bzl", "{{ .Rule.Name }}") -go_register_toolchains() +{{ .Rule.Name }}() load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") @@ -65,6 +65,11 @@ func makeGrpcGateway() *Language { return &Language{ Dir: "github.com/grpc-ecosystem/grpc-gateway", Name: "grpc-gateway", + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + }), Rules: []*Rule{ &Rule{ Name: "gateway_grpc_compile", diff --git a/tools/rulegen/grpcjs.go b/tools/rulegen/grpcjs.go index e7fb81b7f..0293717b3 100644 --- a/tools/rulegen/grpcjs.go +++ b/tools/rulegen/grpcjs.go @@ -8,7 +8,7 @@ load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") closure_repositories(omit_com_google_protobuf = True) -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -18,7 +18,7 @@ var grpcjsUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//{{ .Lang {{ .Rule.Name }}() -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -100,6 +100,13 @@ func makeGrpcJs() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates protobuf closure library *.js files", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, }, } diff --git a/tools/rulegen/java.go b/tools/rulegen/java.go index 860ecb900..aa4868e3f 100644 --- a/tools/rulegen/java.go +++ b/tools/rulegen/java.go @@ -74,6 +74,7 @@ func makeJava() *Language { Name: "java", RouteGuideClient: "//java/example/routeguide:client", RouteGuideServer: "//java/example/routeguide:server", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "java_proto_compile", @@ -100,6 +101,24 @@ func makeJava() *Language { Example: protoLibraryExampleTemplate, Doc: "Generates a jar with compiled protobuf *.class files", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + Description: "bazel_tools/tools/jdk/java_toolchain_alias.bzl", + }, + { + Category: "build", + Name: "incompatible_remove_native_maven_jar", + Value: "false", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, &Rule{ Name: "java_grpc_library", @@ -108,6 +127,19 @@ func makeJava() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates a jar with compiled protobuf+gRPC *.class files", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + Description: "bazel_tools/tools/jdk/java_toolchain_alias.bzl", + }, + { + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }, + }, }, }, } diff --git a/tools/rulegen/main.go b/tools/rulegen/main.go index da40dbe8b..99f0e9154 100644 --- a/tools/rulegen/main.go +++ b/tools/rulegen/main.go @@ -38,6 +38,9 @@ type Language struct { // List of available plugins Plugins map[string]*Plugin + // Bazel build flags required / suggested + Flags []*Flag + // Does the langaguage has a routeguide server? If so, this is the bazel target to run it. RouteGuideServer, RouteGuideClient string @@ -46,7 +49,11 @@ type Language struct { TravisExclusionReason string // Additional travis-specific env vars in the form "K=V" - TravisEnvVars []string + PresubmitEnvVars map[string]string + + // If not the empty string, one-word reason why excluded from bazelci + // configuration + BazelCIExclusionReason string } type Rule struct { @@ -83,7 +90,7 @@ type Rule struct { // Not compatible with remote execution RemoteIncompatible bool - // Bazel build flags + // Bazel build flags required / suggested Flags []*Flag // If not the empty string, one-word reason why excluded from TravisCI @@ -91,7 +98,11 @@ type Rule struct { TravisExclusionReason string // Additional travis-specific env vars in the form "K=V" - TravisEnvVars []string + PresubmitEnvVars map[string]string + + // If not the empty string, one-word reason why excluded from bazelci + // configuration + BazelCIExclusionReason string } // Flag captures information about a bazel build flag. @@ -149,6 +160,16 @@ func main() { Usage: "Template for the travis footer", Value: "tools/rulegen/travis.footer.yml", }, + &cli.StringFlag{ + Name: "presubmit_header", + Usage: "Template for the bazelci presubmit header", + Value: "tools/rulegen/presubmit.header.yml", + }, + &cli.StringFlag{ + Name: "presubmit_footer", + Usage: "Template for the bazelci presubmit footer", + Value: "tools/rulegen/presubmit.footer.yml", + }, &cli.StringFlag{ Name: "ref", Usage: "Version ref to use for main readme", @@ -232,7 +253,14 @@ func action(c *cli.Context) error { Sha256: sha256, }, languages, bazelVersions) - mustWriteTravisYml(dir, c.String("travis_header"), c.String("travis_footer"), struct { + // mustWriteTravisYml(dir, c.String("travis_header"), c.String("travis_footer"), struct { + // Ref, Sha256 string + // }{ + // Ref: ref, + // Sha256: sha256, + // }, languages, bazelVersions) + + mustWriteBazelciPresubmitYml(dir, c.String("presubmit_header"), c.String("presubmit_footer"), struct { Ref, Sha256 string }{ Ref: ref, @@ -325,6 +353,53 @@ def {{ .Rule.Name }}(**kwargs): **kwargs )`) +var aspectRuleTemplate = mustTemplate(`load("//:plugin.bzl", "ProtoPluginInfo") +load( + "//:aspect.bzl", + "ProtoLibraryAspectNodeInfo", + "proto_compile_aspect_attrs", + "proto_compile_aspect_impl", + "proto_compile_attrs", + "proto_compile_impl", +) + +# "Aspects should be top-level values in extension files that define them." + +{{ .Rule.Name }}_aspect = aspect( + implementation = proto_compile_aspect_impl, + provides = ["proto_compile", ProtoLibraryAspectNodeInfo], + attr_aspects = ["deps"], + attrs = dict( + proto_compile_aspect_attrs, + _plugins = attr.label_list( + doc = "List of protoc plugins to apply", + providers = [ProtoPluginInfo], + default = [{{ range .Rule.Plugins }} + str(Label("{{ . }}")),{{ end }} + ], + ), + ), +) + +_rule = rule( + implementation = proto_compile_impl, + attrs = dict( + proto_compile_attrs, + deps = attr.label_list( + mandatory = True, + providers = [ProtoInfo, "proto_compile", ProtoLibraryAspectNodeInfo], + aspects = [{{ .Rule.Name }}_aspect], + ), + ), +) + +def {{ .Rule.Name }}(**kwargs): + _rule( + verbose_string = "%s" % kwargs.get("verbose", 0), + plugin_options_string = ";".join(kwargs.get("plugin_options", [])), + **kwargs + )`) + var usageTemplate = mustTemplate(`load("@build_stack_rules_proto//{{ .Lang.Dir }}:deps.bzl", "{{ .Rule.Name }}") {{ .Rule.Name }}()`) @@ -365,6 +440,8 @@ var grpcLibraryExampleTemplate = mustTemplate(`load("@build_stack_rules_proto//{ deps = ["@build_stack_rules_proto//example/proto:greeter_grpc"], )`) +var aspectLangNotes = mustTemplate(`"The {{ .Name }} compile rules use an aspect-based implementation (aspect.bzl) rather than the traditional implementation (compile.bzl)"`) + func mustWriteLanguageRules(dir string, lang *Language) { for _, rule := range lang.Rules { mustWriteLanguageRule(dir, lang, rule) @@ -380,7 +457,7 @@ func mustWriteLanguageRule(dir string, lang *Language, rule *Rule) { func mustWriteLanguageExamples(dir string, lang *Language) { for _, rule := range lang.Rules { - exampleDir := path.Join(dir, lang.Dir, "example", rule.Name) + exampleDir := path.Join(dir, "example", lang.Dir, rule.Name) os.MkdirAll(exampleDir, os.ModePerm) mustWriteLanguageExampleWorkspace(exampleDir, lang, rule) mustWriteLanguageExampleBuildFile(exampleDir, lang, rule) @@ -416,6 +493,12 @@ func mustWriteLanguageExampleBuildFile(dir string, lang *Language, rule *Rule) { func mustWriteLanguageExampleBazelrcFile(dir string, lang *Language, rule *Rule) { out := &LineWriter{} + out.w("# Start with --all_incompatible_changes by default") + out.w("build --all_incompatible_changes") + for _, f := range lang.Flags { + out.w("# %s", f.Description) + out.w("%s --%s=%s", f.Category, f.Name, f.Value) + } for _, f := range rule.Flags { out.w("# %s", f.Description) out.w("%s --%s=%s", f.Category, f.Name, f.Value) @@ -525,19 +608,19 @@ func mustWriteReadme(dir, header, footer string, data interface{}, languages []* out.w("| Status | Lang | Rule | Description") out.w("| --- | ---: | :--- | :--- |") for _, lang := range languages { - travisExclusionReason := lang.TravisExclusionReason + ciExclusionReason := lang.BazelCIExclusionReason for _, rule := range lang.Rules { - travisLink := fmt.Sprintf("[![%s](https://travis-ci.org/stackb/rules_proto.svg?branch=master)](https://travis-ci.org/stackb/rules_proto)", headVersion) - if travisExclusionReason == "" { - travisExclusionReason = rule.TravisExclusionReason + ciLink := fmt.Sprintf("[![%s](https://badge.buildkite.com/4eafd3b619b9febae679bac4ce75b6b74643d48384e7f36eeb.svg)](https://buildkite.com/bazel/rules-proto)", headVersion) + if ciExclusionReason == "" { + ciExclusionReason = rule.BazelCIExclusionReason } - if travisExclusionReason != "" { - travisLink = travisExclusionReason + if ciExclusionReason != "" { + ciLink = ciExclusionReason } dirLink := fmt.Sprintf("[%s](/%s)", lang.Name, lang.Dir) ruleLink := fmt.Sprintf("[%s](/%s#%s)", rule.Name, lang.Dir, rule.Name) - exampleLink := fmt.Sprintf("[example](/%s/example/%s)", lang.Name, rule.Name) - out.w("| %s | %s | %s | %s (%s) |", travisLink, dirLink, ruleLink, rule.Doc, exampleLink) + exampleLink := fmt.Sprintf("[example](/%scexample/%s)", lang.Name, rule.Name) + out.w("| %s | %s | %s | %s (%s) |", ciLink, dirLink, ruleLink, rule.Doc, exampleLink) } } out.ln() @@ -565,12 +648,6 @@ func mustWriteTravisYml(dir, header, footer string, data interface{}, languages for _, v := range envVars { env = append(env, v) } - for _, v := range lang.TravisEnvVars { - env = append(env, v) - } - for _, v := range rule.TravisEnvVars { - env = append(env, v) - } env = append(env, "LANG="+lang.Dir) env = append(env, "RULE="+rule.Name) @@ -585,6 +662,64 @@ func mustWriteTravisYml(dir, header, footer string, data interface{}, languages out.MustWrite(path.Join(dir, ".travis.yml")) } +func mustWriteBazelciPresubmitYml(dir, header, footer string, data interface{}, languages []*Language, envVars []string) { + out := &LineWriter{} + + out.tpl(header, data) + + // + // First time around for main code + // + out.w(" ubuntu1604:") + out.w(" environment:") + out.w(" CC: clang") + out.w(" test_targets:") + out.w(` - "//example/routeguide/..."`) + out.w(" build_targets:") + for _, lang := range languages { + if lang.BazelCIExclusionReason != "" || lang.Name == "rust" || lang.Name == "ruby" || lang.Name == "swift" { + continue + } + out.w(` - "//%s/..."`, lang.Dir) + } + + // + // Second time around for examples + // + for _, lang := range languages { + if lang.BazelCIExclusionReason != "" { + continue + } + for _, rule := range lang.Rules { + if rule.BazelCIExclusionReason != "" { + continue + } + + exampleDir := path.Join(dir, "example", lang.Dir, rule.Name) + + out.w(" %s:", rule.Name) + out.w(" platform: ubuntu1604") + out.w(" build_targets:") + out.w(` - "..."`) + out.w(" working_directory: %s", exampleDir) + + if len(lang.PresubmitEnvVars) > 0 || len(rule.PresubmitEnvVars) > 0 { + out.w(" environment:") + for k, v := range lang.PresubmitEnvVars { + out.w(" %s: %s", k, v) + } + for k, v := range rule.PresubmitEnvVars { + out.w(" %s: %s", k, v) + } + } + } + } + + out.tpl(footer, data) + + out.MustWrite(path.Join(dir, ".bazelci", "presubmit.yml")) +} + // ******************************** // Utility types // ******************************** diff --git a/tools/rulegen/node.go b/tools/rulegen/node.go index ff5e9f0df..ea5e00b90 100644 --- a/tools/rulegen/node.go +++ b/tools/rulegen/node.go @@ -124,8 +124,9 @@ def {{ .Rule.Name }}(**kwargs): func makeNode() *Language { return &Language{ - Dir: "node", - Name: "node", + Dir: "node", + Name: "node", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "node_proto_compile", diff --git a/tools/rulegen/objc.go b/tools/rulegen/objc.go index 5a6f7432e..2d3f83f7a 100644 --- a/tools/rulegen/objc.go +++ b/tools/rulegen/objc.go @@ -52,8 +52,9 @@ def {{ .Rule.Name }}(**kwargs): func makeObjc() *Language { return &Language{ - Dir: "objc", - Name: "objc", + Dir: "objc", + Name: "objc", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "objc_proto_compile", diff --git a/tools/rulegen/php.go b/tools/rulegen/php.go index 1dd1b3634..f9793fb0d 100644 --- a/tools/rulegen/php.go +++ b/tools/rulegen/php.go @@ -2,8 +2,9 @@ package main func makePhp() *Language { return &Language{ - Dir: "php", - Name: "php", + Dir: "php", + Name: "php", + Flags: commonLangFlags, Rules: []*Rule{ &Rule{ Name: "php_proto_compile", diff --git a/android/example/android_grpc_compile/.bazelrc b/tools/rulegen/presubmit.footer.yml similarity index 100% rename from android/example/android_grpc_compile/.bazelrc rename to tools/rulegen/presubmit.footer.yml diff --git a/tools/rulegen/presubmit.header.yml b/tools/rulegen/presubmit.header.yml new file mode 100644 index 000000000..110e766ab --- /dev/null +++ b/tools/rulegen/presubmit.header.yml @@ -0,0 +1,2 @@ +--- +tasks: \ No newline at end of file diff --git a/tools/rulegen/python.go b/tools/rulegen/python.go index 10fe6f605..540bcbadc 100644 --- a/tools/rulegen/python.go +++ b/tools/rulegen/python.go @@ -118,12 +118,14 @@ py_grpc_library = python_grpc_library`) func makePython() *Language { return &Language{ - Dir: "python", - Name: "python", + Dir: "python", + Name: "python", + Flags: commonLangFlags, + Notes: aspectLangNotes, Rules: []*Rule{ &Rule{ Name: "python_proto_compile", - Implementation: compileRuleTemplate, + Implementation: aspectRuleTemplate, Plugins: []string{"//python:python"}, Usage: usageTemplate, Example: protoCompileExampleTemplate, @@ -132,12 +134,19 @@ func makePython() *Language { }, &Rule{ Name: "python_grpc_compile", - Implementation: compileRuleTemplate, + Implementation: aspectRuleTemplate, Plugins: []string{"//python:python", "//python:grpc_python"}, Usage: pythonGrpcCompileUsageTemplate, Example: grpcCompileExampleTemplate, Doc: "Generates *.py protobuf+gRPC artifacts", Attrs: append(protoCompileAttrs, []*Attr{}...), + Flags: []*Flag{ + { + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + Category: "build", + }, + }, }, &Rule{ Name: "python_proto_library", diff --git a/tools/rulegen/ruby.go b/tools/rulegen/ruby.go index 586f68fd3..c32414970 100644 --- a/tools/rulegen/ruby.go +++ b/tools/rulegen/ruby.go @@ -88,23 +88,16 @@ def {{ .Rule.Name }}(**kwargs): visibility = visibility, )`) -var rubyFlags = []*Flag{ - { - Category: "build", - Name: "incompatible_disallow_data_transition", - Value: "false", - Description: "ruby/binary.bzl is still using cfg=data", - }, -} - func makeRuby() *Language { return &Language{ - Dir: "ruby", - Name: "ruby", + Dir: "ruby", + Name: "ruby", + Flags: commonLangFlags, + Notes: aspectLangNotes, Rules: []*Rule{ &Rule{ Name: "ruby_proto_compile", - Implementation: compileRuleTemplate, + Implementation: aspectRuleTemplate, Plugins: []string{"//ruby:ruby"}, Usage: usageTemplate, Example: protoCompileExampleTemplate, @@ -113,7 +106,7 @@ func makeRuby() *Language { }, &Rule{ Name: "ruby_grpc_compile", - Implementation: compileRuleTemplate, + Implementation: aspectRuleTemplate, Plugins: []string{"//ruby:ruby", "//ruby:grpc_ruby"}, Usage: grpcUsageTemplate, Example: grpcCompileExampleTemplate, @@ -127,7 +120,6 @@ func makeRuby() *Language { Example: protoLibraryExampleTemplate, Doc: "Generates *.rb protobuf library", Attrs: append(protoCompileAttrs, []*Attr{}...), - Flags: rubyFlags, }, &Rule{ Name: "ruby_grpc_library", @@ -136,7 +128,6 @@ func makeRuby() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates *.rb protobuf+gRPC library", Attrs: append(protoCompileAttrs, []*Attr{}...), - Flags: rubyFlags, }, }, } diff --git a/tools/rulegen/rust.go b/tools/rulegen/rust.go index c1aa22aeb..eccf22601 100644 --- a/tools/rulegen/rust.go +++ b/tools/rulegen/rust.go @@ -93,6 +93,17 @@ func makeRust() *Language { return &Language{ Dir: "rust", Name: "rust", + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + Description: "In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule.", + }, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + Description: `/external/io_bazel_rules_rust/rust/private/rustc.bzl", line 143, in _get_linker_and_args cc_common.configure_features(cc_toolchain = cc_toolchain, reque..., ...) Incompatible flag --incompatible_require_ctx_in_configure_features has been flipped, and the mandatory parameter 'ctx' of cc_common.configure_features is missing`, + }), Rules: []*Rule{ &Rule{ Name: "rust_proto_compile", @@ -111,6 +122,7 @@ func makeRust() *Language { Example: grpcCompileExampleTemplate, Doc: "Generates rust protobuf+gRPC artifacts", Attrs: append(protoCompileAttrs, []*Attr{}...), + BazelCIExclusionReason: "experimental", }, &Rule{ Name: "rust_proto_library", @@ -127,6 +139,7 @@ func makeRust() *Language { Example: grpcLibraryExampleTemplate, Doc: "Generates rust protobuf+gRPC library", Attrs: append(protoCompileAttrs, []*Attr{}...), + BazelCIExclusionReason: "experimental", }, }, } diff --git a/tools/rulegen/scala.go b/tools/rulegen/scala.go index 450f3ce55..360018e7a 100644 --- a/tools/rulegen/scala.go +++ b/tools/rulegen/scala.go @@ -5,7 +5,7 @@ var scalaUsageTemplate = mustTemplate(`load("@build_stack_rules_proto//{{ .Lang. {{ .Rule.Name }}() # rules_go used here to compile a wrapper around the protoc-gen-scala plugin -load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() @@ -86,6 +86,30 @@ func makeScala() *Language { Dir: "scala", Name: "scala", Notes: mustTemplate("Rules for `scala_grpc_{compile|library}` don't produce code that compiles! Use `@//io_bazel_rules_scala//scala_proto:scala_proto.bzl` instead"), + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_enable_cc_toolchain_resolution", + Value: "false", + Description: "In order to use find_cpp_toolchain, you must include the '@bazel_tools//tools/cpp:toolchain_type' in the toolchains argument to your rule.", + }, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + }, &Flag{ + Category: "build", + Name: "incompatible_disallow_legacy_javainfo", + Value: "false", + Description: `/external/io_bazel_rules_scala/scala/scala_import.bzl", line 73, in _create_provider java_common.create_provider(use_ijar = False, compile_time_jar...]), <3 more arguments>) java_common.create_provider is deprecated and cannot be used when --incompatible_disallow_legacy_javainfo is set. Please migrate to the JavaInfo constructor.`, + }, &Flag{ + Category: "build", + Name: "incompatible_disallow_struct_provider_syntax", + Value: "false", + Description: `external/io_bazel_rules_scala/scala/scala_import.bzl`, + }, &Flag{ + Category: "build", + Name: "incompatible_use_toolchain_resolution_for_java_rules", + Value: "false", + }), Rules: []*Rule{ &Rule{ Name: "scala_proto_compile", diff --git a/tools/rulegen/swift.go b/tools/rulegen/swift.go index c6131350f..d01bca8a2 100644 --- a/tools/rulegen/swift.go +++ b/tools/rulegen/swift.go @@ -38,7 +38,20 @@ func makeSwift() *Language { return &Language{ Dir: "swift", Name: "swift", - TravisExclusionReason: "travis incompatible", + // TravisExclusionReason: "travis incompatible", + BazelCIExclusionReason: "experimental", + PresubmitEnvVars: map[string]string{ + "CC": "clang", + }, + Flags: append(commonLangFlags, &Flag{ + Category: "build", + Name: "incompatible_require_ctx_in_configure_features", + Value: "false", + }, &Flag{ + Category: "build", + Name: "strategy=SwiftCompile", + Value: "standalone", + }), Rules: []*Rule{ &Rule{ Experimental: true,