Merge branch 'master' of https://github.com/grpc/grpc into yapf-tools

pull/13719/head
ncteisen 7 years ago
commit ca1548f612
  1. 2
      bazel/grpc_build_system.bzl
  2. 2
      src/core/lib/security/credentials/google_default/credentials_generic.cc
  3. 13
      src/objective-c/tests/run_tests.sh
  4. 29
      tools/run_tests/sanity/check_sources_and_headers.py

@ -98,7 +98,7 @@ def grpc_cc_test(name, srcs = [], deps = [], external_deps = [], args = [], data
args = [
poller,
'$(location %s)' % name
],
] + args['args'],
)
else:
native.cc_test(**args)

@ -29,7 +29,7 @@ char* grpc_get_well_known_google_credentials_file_path_impl(void) {
char* result = nullptr;
char* base = gpr_getenv(GRPC_GOOGLE_CREDENTIALS_PATH_ENV_VAR);
if (base == nullptr) {
gpr_log(GPR_ERROR, "Could not get " GRPC_GOOGLE_CREDENTIALS_ENV_VAR
gpr_log(GPR_ERROR, "Could not get " GRPC_GOOGLE_CREDENTIALS_PATH_ENV_VAR
" environment variable.");
return nullptr;
}

@ -34,6 +34,19 @@ $BINDIR/interop_server --port=5051 --max_send_message_size=8388608 --use_tls &
# Kill them when this script exits.
trap 'kill -9 `jobs -p` ; echo "EXIT TIME: $(date)"' EXIT
# Boot Xcode first with several retries since Xcode might fail due to a bug:
# http://www.openradar.me/29785686
xcrun simctl list | egrep 'iPhone 6 \('
udid=`xcrun simctl list | egrep 'iPhone 6 \(.*\) \(.*\)' | sed -E 's/ *iPhone 6 \(([^\)]*)\).*/\1/g' | head -n 1`
retries=0
while [ $retries -lt 3 ] && ! open -a Simulator --args -CurrentDeviceUDID $udid ; do
retries=$(($retries+1))
done
if [ $retries == 3 ]; then
echo "Xcode simulator failed to start after 3 retries."
exit 1
fi
# xcodebuild is very verbose. We filter its output and tell Bash to fail if any
# element of the pipe fails.
# TODO(jcanizales): Use xctool instead? Issue #2540.

@ -39,6 +39,35 @@ def get_target(name):
assert False, 'no target %s' % name
def get_headers_transitive():
"""Computes set of headers transitively provided by each target"""
target_headers_transitive = {}
for target in js:
target_name = target['name']
assert not target_headers_transitive.has_key(target_name)
target_headers_transitive[target_name] = set(target['headers'])
# Make sure each target's transitive headers contain those
# of their dependencies. If not, add them and continue doing
# so until we get a full pass over all targets without any updates.
closure_changed = True
while closure_changed:
closure_changed = False
for target in js:
target_name = target['name']
for dep in target['deps']:
headers = target_headers_transitive[target_name]
old_count = len(headers)
headers.update(target_headers_transitive[dep])
if old_count != len(headers):
closure_changed = True
return target_headers_transitive
# precompute transitive closure of headers provided by each target
target_headers_transitive = get_headers_transitive()
def target_has_header(target, name):
if name.startswith('absl/'): return True
# print target['name'], name

Loading…
Cancel
Save