Merge pull request #4622 from ctiller/dep_head

Add ability to update submodules before build
diff --git a/include/grpc++/support/async_stream.h b/include/grpc++/support/async_stream.h
index b4dae30..823fcd2 100644
--- a/include/grpc++/support/async_stream.h
+++ b/include/grpc++/support/async_stream.h
@@ -85,6 +85,10 @@
 
   /// Request the writing of \a msg with identifying tag \a tag.
   ///
+  /// Only one write may be outstanding at any given time. This means that
+  /// after calling Write, one must wait to receive \a tag from the completion
+  /// queue BEFORE calling Write again.
+  ///
   /// \param[in] msg The message to be written.
   /// \param[in] tag The tag identifying the operation.
   virtual void Write(const W& msg, void* tag) = 0;
diff --git a/src/boringssl/gen_build_yaml.py b/src/boringssl/gen_build_yaml.py
index 0d4ad0b..424912b 100755
--- a/src/boringssl/gen_build_yaml.py
+++ b/src/boringssl/gen_build_yaml.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python2.7
-# Copyright 2015, Google Inc.
+# Copyright 2015-2016, Google Inc.
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
diff --git a/src/core/compression/algorithm.c b/src/core/compression/algorithm.c
index 51cd54f..6f3a8eb 100644
--- a/src/core/compression/algorithm.c
+++ b/src/core/compression/algorithm.c
@@ -1,6 +1,6 @@
 /*
  *
- * Copyright 2015, Google Inc.
+ * Copyright 2015-2016, Google Inc.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff --git a/src/core/support/sync_posix.c b/src/core/support/sync_posix.c
index d6a0f7c..4d59a10 100644
--- a/src/core/support/sync_posix.c
+++ b/src/core/support/sync_posix.c
@@ -81,7 +81,7 @@
   } else {
     struct timespec abs_deadline_ts;
     abs_deadline = gpr_convert_clock_type(abs_deadline, GPR_CLOCK_REALTIME);
-    abs_deadline_ts.tv_sec = abs_deadline.tv_sec;
+    abs_deadline_ts.tv_sec = (time_t)abs_deadline.tv_sec;
     abs_deadline_ts.tv_nsec = abs_deadline.tv_nsec;
     err = pthread_cond_timedwait(cv, mu, &abs_deadline_ts);
   }
diff --git a/src/python/README.md b/src/python/README.md
index a3133b5..8b16765 100644
--- a/src/python/README.md
+++ b/src/python/README.md
@@ -52,6 +52,11 @@
 ---------------------
 - Clone this repository
 
+- Install tox
+```
+$ sudo pip install tox
+```
+
 - Initialize the git submodules
 ```
 $ git submodule update --init
@@ -64,7 +69,7 @@
 
 - Use build_python.sh to build the Python code and install it into a virtual environment
 ```
-$ CONFIG=opt tools/run_tests/build_python.sh 2.7
+$ CONFIG=opt tools/run_tests/build_python.sh
 ```
 
 TESTING
diff --git a/src/python/grpcio/setup.py b/src/python/grpcio/setup.py
index b8a98c3..366ebe3 100644
--- a/src/python/grpcio/setup.py
+++ b/src/python/grpcio/setup.py
@@ -146,7 +146,7 @@
 
 TESTS_REQUIRE = (
     'oauth2client>=1.4.7',
-    'protobuf==3.0.0a3',
+    'protobuf>=3.0.0a3',
     'coverage>=4.0',
 ) + INSTALL_REQUIRES
 
diff --git a/tools/distrib/check_copyright.py b/tools/distrib/check_copyright.py
index 2d46143..f54e5fa 100755
--- a/tools/distrib/check_copyright.py
+++ b/tools/distrib/check_copyright.py
@@ -72,9 +72,9 @@
   '.php':       r'\s*\*\s*',
   '.js':        r'\s*\*\s*',
   '.py':        r'#\s*',
-  '.pyx':       r'# %s',
-  '.pxd':       r'# %s',
-  '.pxi':       r'# %s',
+  '.pyx':       r'#\s*',
+  '.pxd':       r'#\s*',
+  '.pxi':       r'#\s*',
   '.rb':        r'#\s*',
   '.sh':        r'#\s*',
   '.proto':     r'//\s*',