Before this change, running Python tests individually required
building a tox environment via the run_tests script and then specifying
long environment variables to filter out just the test we wanted to run
(and then we wouldn't be able to get the output on interrupt, nor would
we have an easy way of determining the PID of the process for debugger
attachment). Now invoking the build_python.sh script creates a workable
python virtual environment that includes all necessary libraries and
tests (s.t. running a single test is now possible by just knowing the
module name). This does not change existing supported means of running
tests (e.g. through run_tests.py).
An additional way of running individual tests has been introduced.
Following invocation of `./tools/run_tests/build_python.sh` (or
run_tests.py), one may invoke
./$VENV/bin/python -m $TEST_MODULE_NAME
and acquire a single running process that *is* the test process (rather
than a parent of the process). $VENV is the virtual environment name
specified to `build_python.sh` (defaults to `py27`) and
$TEST_MODULE_NAME is what it says on the tin.
The default compiler for Python c extensions is VS2008
or VS2010 depending on the Python version. Since c-core
moved onto the c99 standard, these compilers are not
compatible.
Previously grpc++_base was dependning on grpc what caused a transitive
dependency on ssl for grpc++_unsecure. Removing the grpc dependency
shouldn't cause any issue as grpc++_base is a filegroup and all library
using it already depends on grpc directly.
This fixes https://github.com/grpc/grpc/issues/6784