* build aarch64 version of protoc
* remove csharp artifact x86 build logic for unix systems
* build grpc_csharp_ext artifact for linux aarch64
* refactor platform detection
* add generated dllimports for arm64
* fix native library loading on arm64
* include arm64 artifacts in Grpc.Tools
* add Grpc.Tools codegen support for linux aarch64
* grpc.tools cleanup
* Implement the xDS Config Dump as CSDS in Core
* Revemp the logic of caching and constructing the CSDS response
* Unref created error
* Fix the clang tidy complains
* Resolve comments about symbol preload and Json ctor
* Improve readability
* Merge with new ADS logic && support latest CSDS
* Refactor the version/client_status logic
* Add support for error_state
* Add support for does_not_exist
* Add node information
* Fix the ProtoBuf segfault
* More test cases
* Refactor to use bytes as cache instead of JSON
* Apply clang_tidy's suggestion
* Resolve reviewer's requests
* Tiny stylish fixes && make sanity test happy
* WIP: still working on the matchers
* Update a bunch of matchers
* Improve readability a bit
* Resolve reviewer's suggestions
* Resolve reviewer's comments
* Make Unpack fail fast
This fixes a crash in the grpc_performance_profile_* and grpc_e2e_performance_* tests.
Example failure: https://source.cloud.google.com/results/invocations/2112f2d5-db91-4901-87cb-cc9865f351f1/targets
The daily performance test passes with this fixit branch:
http://sponge2/23d4df20-f4dd-48ee-8789-4cd96b078ed5.
Additional fixes:
reorder imports according to the google style guide
replace deprecated cgi.escape library method with html.escape
In case it comes up, with respect to upgrading from py2 to py3, the iter{items,keys,values} methods are intentionally replaced with the less-efficient-in-python2 non-iter versions. This is a recommended practice even when supporting both python versions, and this is not performance-critical code.
Additional note: there is no performance difference btw py2 and py3 (~80 minutes to finish)
Go v1.16 introduced module-aware commands by default. This version
upgrade broke our http2 interop tests (see #25660). Setting the go
environment variable `GO111MODULE` to "auto" makes go tools behave as
they did before the v1.16 change, but will not be compatible with v1.17.
This PR introduces a minimal go.mod file for the interop test to appease go
v1.16.
Docs on the flag: https://golang.org/ref/mod#mod-commands
Recent discussion on golang/go:
https://github.com/golang/go/issues/31997#issuecomment-782864390
This fix the following error when compiling:
error: #error C++11 or greater detected by the library. BENCHMARK_HAS_CXX11 is defined.
12 | #error C++11 or greater detected by the library. BENCHMARK_HAS_CXX11 is defined.
| ^~~~~
Signed-off-by: Clément Péron <peron.clem@gmail.com>
* Refactored with dynamic filters
* Error-tolerance tuned
* Fix leak of grpc_error and data race of canceller
* Adopt the latest xDS HTTP filter framework
* Fix fault injection tests' conflict with router filter
* Test alternative setup (override, no-override) without copy
* Refactor file strcutures of fault injection filter
* Rewrite the Json parsing/assembling logic again
* Added logic for aborting streaming RPC && resolve comments
* Migrate the bm_diff benchmarks to python3
Includes a requirements.txt pinned at ~2017 versions, when this script
was first written.
* Replace p2 with p3 scipy/numpy dependencies.
* py2->3 for benchmark setup scripts
* upgrade pip to resolve python3 cryptography/setuptools-rust problem
* re-add jobset import (accidentally removed)
* re-add six's urllib import. This file is still used in py2 tests
* force py3 in run_if_c_cpp_modified.sh
* Fix another instance of subprocess.check_output binary mode
* Use the requirements.txt for CI perf environment setup
* Try to upgrade PyJWT. (v2.0.0 was problematic, #25053)
v2.x makes encode return strs from jwt.encode in both py2 and py3.
Previously, py3 would return bytes, and py2 a str.
* upgate cryptography lib version requirements for jwt.
* Wrap pip requirements specifier in quotes '>=x,<y'
* Decode subprocess output once instead of for every line
* Revert "Decode subprocess output once instead of for every line"
This reverts commit 28d14026431622ac7afd3535a8d7118e5be96628.
py2 doesn't support the `text` argument to subprocess.check_output.
* Address reviewer requests
* Pin a valid scipy version
* Remove scipy and tabulate dependencies from macos tests
* [xDS Proto] Modernize buildgen scripts
* This PR only covers some buildgen scripts that will be used by xDS
proto
* This PR also improves the debuggability of some scripts
* Merge with master
* Adopt reviewer's advices
* [xDS Proto] Update Bazel dependencies
* Include transitive deps required by xDS proto libraries
* The Golang deps come from protoc-gen-validate project
* Adding a new submodule: opencensus-proto
* Add the new submodule to .bazelignore
* Update WORKSPACE file to initialize googleapis
* Remove WORKSPACE override
* Adopt reviewer's advice