|  | @@ -6,7 +6,7 @@
 | 
	
		
			
				|  |  |    <head>
 | 
	
		
			
				|  |  |      <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
 | 
	
		
			
				|  |  |      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 | 
	
		
			
				|  |  | -    <title>grpc — gRPC Python 1.24.3 documentation</title>
 | 
	
		
			
				|  |  | +    <title>grpc — gRPC Python 1.26.0 documentation</title>
 | 
	
		
			
				|  |  |      <link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
 | 
	
		
			
				|  |  |      <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
 | 
	
		
			
				|  |  |      <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
 | 
	
	
		
			
				|  | @@ -31,7 +31,7 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<p class="blurb">1.24.3</p>
 | 
	
		
			
				|  |  | +<p class="blurb">1.26.0</p>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -110,13 +110,13 @@
 | 
	
		
			
				|  |  |  <span class="kn">import</span> <span class="nn">sys</span>
 | 
	
		
			
				|  |  |  <span class="kn">import</span> <span class="nn">six</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="kn">from</span> <span class="nn">grpc._cython</span> <span class="k">import</span> <span class="n">cygrpc</span> <span class="k">as</span> <span class="n">_cygrpc</span>
 | 
	
		
			
				|  |  | -<span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_compression</span>
 | 
	
		
			
				|  |  | +<span class="kn">from</span> <span class="nn">grpc._cython</span> <span class="kn">import</span> <span class="n">cygrpc</span> <span class="k">as</span> <span class="n">_cygrpc</span>
 | 
	
		
			
				|  |  | +<span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_compression</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="n">logging</span><span class="o">.</span><span class="n">getLogger</span><span class="p">(</span><span class="vm">__name__</span><span class="p">)</span><span class="o">.</span><span class="n">addHandler</span><span class="p">(</span><span class="n">logging</span><span class="o">.</span><span class="n">NullHandler</span><span class="p">())</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="k">try</span><span class="p">:</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc._grpcio_metadata</span> <span class="k">import</span> <span class="n">__version__</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc._grpcio_metadata</span> <span class="kn">import</span> <span class="n">__version__</span>
 | 
	
		
			
				|  |  |  <span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span>
 | 
	
		
			
				|  |  |      <span class="n">__version__</span> <span class="o">=</span> <span class="s2">"dev0"</span>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -669,7 +669,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    secure_channel requires an instance of this class.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="bp">self</span><span class="o">.</span><span class="n">_credentials</span> <span class="o">=</span> <span class="n">credentials</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -686,7 +686,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    instances and its instances exist to be passed to other functions.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="bp">self</span><span class="o">.</span><span class="n">_credentials</span> <span class="o">=</span> <span class="n">credentials</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -702,7 +702,7 @@
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="AuthMetadataPluginCallback"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPluginCallback">[docs]</a><span class="k">class</span> <span class="nc">AuthMetadataPluginCallback</span><span class="p">(</span><span class="n">six</span><span class="o">.</span><span class="n">with_metaclass</span><span class="p">(</span><span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span><span class="p">)):</span>
 | 
	
		
			
				|  |  |      <span class="sd">"""Callback object received by a metadata plugin."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<div class="viewcode-block" id="AuthMetadataPluginCallback.__call__"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPluginCallback.__call__">[docs]</a>    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">error</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +<div class="viewcode-block" id="AuthMetadataPluginCallback.__call__"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPluginCallback.__call__">[docs]</a>    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">error</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="sd">"""Passes to the gRPC runtime authentication metadata for an RPC.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">        Args:</span>
 | 
	
	
		
			
				|  | @@ -715,7 +715,7 @@
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="AuthMetadataPlugin"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPlugin">[docs]</a><span class="k">class</span> <span class="nc">AuthMetadataPlugin</span><span class="p">(</span><span class="n">six</span><span class="o">.</span><span class="n">with_metaclass</span><span class="p">(</span><span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span><span class="p">)):</span>
 | 
	
		
			
				|  |  |      <span class="sd">"""A specification for custom authentication."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<div class="viewcode-block" id="AuthMetadataPlugin.__call__"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPlugin.__call__">[docs]</a>    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">callback</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +<div class="viewcode-block" id="AuthMetadataPlugin.__call__"><a class="viewcode-back" href="../grpc.html#grpc.AuthMetadataPlugin.__call__">[docs]</a>    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">callback</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="sd">"""Implements authentication by passing metadata to a callback.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">        Implementations of this method must not block.</span>
 | 
	
	
		
			
				|  | @@ -736,7 +736,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    instances and its instances exist to be passed to other functions.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="bp">self</span><span class="o">.</span><span class="n">_credentials</span> <span class="o">=</span> <span class="n">credentials</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -751,7 +751,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    other functions.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">certificate_configuration</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">certificate_configuration</span><span class="p">):</span>
 | 
	
		
			
				|  |  |          <span class="bp">self</span><span class="o">.</span><span class="n">_certificate_configuration</span> <span class="o">=</span> <span class="n">certificate_configuration</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -762,7 +762,7 @@
 | 
	
		
			
				|  |  |      <span class="sd">"""Affords invoking a unary-unary RPC from client-side."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="UnaryUnaryMultiCallable.__call__"><a class="viewcode-back" href="../grpc.html#grpc.UnaryUnaryMultiCallable.__call__">[docs]</a>    <span class="nd">@abc</span><span class="o">.</span><span class="n">abstractmethod</span>
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">request</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">timeout</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">metadata</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
	
		
			
				|  | @@ -864,7 +864,7 @@
 | 
	
		
			
				|  |  |      <span class="sd">"""Affords invoking a unary-stream RPC from client-side."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="UnaryStreamMultiCallable.__call__"><a class="viewcode-back" href="../grpc.html#grpc.UnaryStreamMultiCallable.__call__">[docs]</a>    <span class="nd">@abc</span><span class="o">.</span><span class="n">abstractmethod</span>
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">request</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">timeout</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">metadata</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
	
		
			
				|  | @@ -899,7 +899,7 @@
 | 
	
		
			
				|  |  |      <span class="sd">"""Affords invoking a stream-unary RPC from client-side."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="StreamUnaryMultiCallable.__call__"><a class="viewcode-back" href="../grpc.html#grpc.StreamUnaryMultiCallable.__call__">[docs]</a>    <span class="nd">@abc</span><span class="o">.</span><span class="n">abstractmethod</span>
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">request_iterator</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">timeout</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">metadata</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
	
		
			
				|  | @@ -1003,7 +1003,7 @@
 | 
	
		
			
				|  |  |      <span class="sd">"""Affords invoking a stream-stream RPC on client-side."""</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="StreamStreamMultiCallable.__call__"><a class="viewcode-back" href="../grpc.html#grpc.StreamStreamMultiCallable.__call__">[docs]</a>    <span class="nd">@abc</span><span class="o">.</span><span class="n">abstractmethod</span>
 | 
	
		
			
				|  |  | -    <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  | +    <span class="k">def</span> <span class="fm">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">request_iterator</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">timeout</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                   <span class="n">metadata</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
 | 
	
	
		
			
				|  | @@ -1578,7 +1578,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      An RpcMethodHandler object that is typically used by grpc.Server.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">RpcMethodHandler</span><span class="p">(</span><span class="kc">False</span><span class="p">,</span> <span class="kc">False</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">response_serializer</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span></div>
 | 
	
	
		
			
				|  | @@ -1598,7 +1598,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      An RpcMethodHandler object that is typically used by grpc.Server.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">RpcMethodHandler</span><span class="p">(</span><span class="kc">False</span><span class="p">,</span> <span class="kc">True</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">response_serializer</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span></div>
 | 
	
	
		
			
				|  | @@ -1618,7 +1618,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      An RpcMethodHandler object that is typically used by grpc.Server.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">RpcMethodHandler</span><span class="p">(</span><span class="kc">True</span><span class="p">,</span> <span class="kc">False</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">response_serializer</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">behavior</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span></div>
 | 
	
	
		
			
				|  | @@ -1638,7 +1638,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      An RpcMethodHandler object that is typically used by grpc.Server.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">RpcMethodHandler</span><span class="p">(</span><span class="kc">True</span><span class="p">,</span> <span class="kc">True</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">response_serializer</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                                         <span class="n">behavior</span><span class="p">)</span></div>
 | 
	
	
		
			
				|  | @@ -1657,7 +1657,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">      A GenericRpcHandler. This is typically added to the grpc.Server object</span>
 | 
	
		
			
				|  |  |  <span class="sd">      with add_generic_rpc_handlers() before starting the server.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">DictionaryGenericHandler</span><span class="p">(</span><span class="n">service</span><span class="p">,</span> <span class="n">method_handlers</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1693,7 +1693,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      A CallCredentials.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_plugin_wrapping</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_plugin_wrapping</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_plugin_wrapping</span><span class="o">.</span><span class="n">metadata_plugin_call_credentials</span><span class="p">(</span>
 | 
	
		
			
				|  |  |          <span class="n">metadata_plugin</span><span class="p">,</span> <span class="n">name</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1709,8 +1709,8 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      A CallCredentials.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_auth</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_plugin_wrapping</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_auth</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_plugin_wrapping</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_plugin_wrapping</span><span class="o">.</span><span class="n">metadata_plugin_call_credentials</span><span class="p">(</span>
 | 
	
		
			
				|  |  |          <span class="n">_auth</span><span class="o">.</span><span class="n">AccessTokenAuthMetadataPlugin</span><span class="p">(</span><span class="n">access_token</span><span class="p">),</span> <span class="kc">None</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1837,7 +1837,7 @@
 | 
	
		
			
				|  |  |              <span class="n">certificate_configuration_fetcher</span><span class="p">,</span> <span class="n">require_client_authentication</span><span class="p">))</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="nd">@enum</span><span class="o">.</span><span class="n">unique</span>
 | 
	
		
			
				|  |  | +<div class="viewcode-block" id="LocalConnectionType"><a class="viewcode-back" href="../grpc.html#grpc.LocalConnectionType">[docs]</a><span class="nd">@enum</span><span class="o">.</span><span class="n">unique</span>
 | 
	
		
			
				|  |  |  <span class="k">class</span> <span class="nc">LocalConnectionType</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
 | 
	
		
			
				|  |  |      <span class="sd">"""Types of local connection for local credential creation.</span>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1846,20 +1846,27 @@
 | 
	
		
			
				|  |  |  <span class="sd">      LOCAL_TCP: Local TCP connections.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |      <span class="n">UDS</span> <span class="o">=</span> <span class="n">_cygrpc</span><span class="o">.</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">uds</span>
 | 
	
		
			
				|  |  | -    <span class="n">LOCAL_TCP</span> <span class="o">=</span> <span class="n">_cygrpc</span><span class="o">.</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">local_tcp</span>
 | 
	
		
			
				|  |  | +    <span class="n">LOCAL_TCP</span> <span class="o">=</span> <span class="n">_cygrpc</span><span class="o">.</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">local_tcp</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="k">def</span> <span class="nf">local_channel_credentials</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">=</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">LOCAL_TCP</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +<div class="viewcode-block" id="local_channel_credentials"><a class="viewcode-back" href="../grpc.html#grpc.local_channel_credentials">[docs]</a><span class="k">def</span> <span class="nf">local_channel_credentials</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">=</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">LOCAL_TCP</span><span class="p">):</span>
 | 
	
		
			
				|  |  |      <span class="sd">"""Creates a local ChannelCredentials used for local connections.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    This is an EXPERIMENTAL API.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    Local credentials are used by local TCP endpoints (e.g. localhost:10000)</span>
 | 
	
		
			
				|  |  | -<span class="sd">    also UDS connections. It allows them to create secure channel, hence</span>
 | 
	
		
			
				|  |  | -<span class="sd">    transmitting call credentials become possible.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    also UDS connections.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="sd">    It is useful for 1) eliminating insecure_channel usage; 2) enable unit</span>
 | 
	
		
			
				|  |  | -<span class="sd">    testing for call credentials without setting up secrets.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    The connections created by local channel credentials are not</span>
 | 
	
		
			
				|  |  | +<span class="sd">    encrypted, but will be checked if they are local or not.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    The UDS connections are considered secure by providing peer authentication</span>
 | 
	
		
			
				|  |  | +<span class="sd">    and data confidentiality while TCP connections are considered insecure.</span>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<span class="sd">    It is allowed to transmit call credentials over connections created by</span>
 | 
	
		
			
				|  |  | +<span class="sd">    local channel credentials.</span>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<span class="sd">    Local channel credentials are useful for 1) eliminating insecure_channel usage;</span>
 | 
	
		
			
				|  |  | +<span class="sd">    2) enable unit testing for call credentials without setting up secrets.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    Args:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      local_connect_type: Local connection type (either</span>
 | 
	
	
		
			
				|  | @@ -1869,20 +1876,27 @@
 | 
	
		
			
				|  |  |  <span class="sd">      A ChannelCredentials for use with a local Channel</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">ChannelCredentials</span><span class="p">(</span>
 | 
	
		
			
				|  |  | -        <span class="n">_cygrpc</span><span class="o">.</span><span class="n">channel_credentials_local</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">.</span><span class="n">value</span><span class="p">))</span>
 | 
	
		
			
				|  |  | +        <span class="n">_cygrpc</span><span class="o">.</span><span class="n">channel_credentials_local</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">.</span><span class="n">value</span><span class="p">))</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="k">def</span> <span class="nf">local_server_credentials</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">=</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">LOCAL_TCP</span><span class="p">):</span>
 | 
	
		
			
				|  |  | +<div class="viewcode-block" id="local_server_credentials"><a class="viewcode-back" href="../grpc.html#grpc.local_server_credentials">[docs]</a><span class="k">def</span> <span class="nf">local_server_credentials</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">=</span><span class="n">LocalConnectionType</span><span class="o">.</span><span class="n">LOCAL_TCP</span><span class="p">):</span>
 | 
	
		
			
				|  |  |      <span class="sd">"""Creates a local ServerCredentials used for local connections.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    This is an EXPERIMENTAL API.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    Local credentials are used by local TCP endpoints (e.g. localhost:10000)</span>
 | 
	
		
			
				|  |  | -<span class="sd">    also UDS connections. It allows them to create secure channel, hence</span>
 | 
	
		
			
				|  |  | -<span class="sd">    transmitting call credentials become possible.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    also UDS connections.</span>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<span class="sd">    The connections created by local server credentials are not</span>
 | 
	
		
			
				|  |  | +<span class="sd">    encrypted, but will be checked if they are local or not.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    The UDS connections are considered secure by providing peer authentication</span>
 | 
	
		
			
				|  |  | +<span class="sd">    and data confidentiality while TCP connections are considered insecure.</span>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<span class="sd">    It is allowed to transmit call credentials over connections created by local</span>
 | 
	
		
			
				|  |  | +<span class="sd">    server credentials.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -<span class="sd">    It is useful for 1) eliminating insecure_channel usage; 2) enable unit</span>
 | 
	
		
			
				|  |  | -<span class="sd">    testing for call credentials without setting up secrets.</span>
 | 
	
		
			
				|  |  | +<span class="sd">    Local server credentials are useful for 1) eliminating insecure_channel usage;</span>
 | 
	
		
			
				|  |  | +<span class="sd">    2) enable unit testing for call credentials without setting up secrets.</span>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="sd">    Args:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      local_connect_type: Local connection type (either</span>
 | 
	
	
		
			
				|  | @@ -1892,7 +1906,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">      A ServerCredentials for use with a local Server</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">ServerCredentials</span><span class="p">(</span>
 | 
	
		
			
				|  |  | -        <span class="n">_cygrpc</span><span class="o">.</span><span class="n">server_credentials_local</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">.</span><span class="n">value</span><span class="p">))</span>
 | 
	
		
			
				|  |  | +        <span class="n">_cygrpc</span><span class="o">.</span><span class="n">server_credentials_local</span><span class="p">(</span><span class="n">local_connect_type</span><span class="o">.</span><span class="n">value</span><span class="p">))</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <div class="viewcode-block" id="channel_ready_future"><a class="viewcode-back" href="../grpc.html#grpc.channel_ready_future">[docs]</a><span class="k">def</span> <span class="nf">channel_ready_future</span><span class="p">(</span><span class="n">channel</span><span class="p">):</span>
 | 
	
	
		
			
				|  | @@ -1908,7 +1922,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">      A Future object that matures when the channel connectivity is</span>
 | 
	
		
			
				|  |  |  <span class="sd">      ChannelConnectivity.READY.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_utilities</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_utilities</span><span class="o">.</span><span class="n">channel_ready_future</span><span class="p">(</span><span class="n">channel</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1927,7 +1941,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      A Channel.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_channel</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_channel</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_channel</span><span class="o">.</span><span class="n">Channel</span><span class="p">(</span><span class="n">target</span><span class="p">,</span> <span class="p">()</span>
 | 
	
		
			
				|  |  |                              <span class="k">if</span> <span class="n">options</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">options</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="n">compression</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1948,7 +1962,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      A Channel.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_channel</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_channel</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_channel</span><span class="o">.</span><span class="n">Channel</span><span class="p">(</span><span class="n">target</span><span class="p">,</span> <span class="p">()</span> <span class="k">if</span> <span class="n">options</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">options</span><span class="p">,</span>
 | 
	
		
			
				|  |  |                              <span class="n">credentials</span><span class="o">.</span><span class="n">_credentials</span><span class="p">,</span> <span class="n">compression</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1977,7 +1991,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">        StreamUnaryClientInterceptor, or</span>
 | 
	
		
			
				|  |  |  <span class="sd">        StreamStreamClientInterceptor.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_interceptor</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_interceptor</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_interceptor</span><span class="o">.</span><span class="n">intercept_channel</span><span class="p">(</span><span class="n">channel</span><span class="p">,</span> <span class="o">*</span><span class="n">interceptors</span><span class="p">)</span></div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -2011,7 +2025,7 @@
 | 
	
		
			
				|  |  |  <span class="sd">    Returns:</span>
 | 
	
		
			
				|  |  |  <span class="sd">      A Server object.</span>
 | 
	
		
			
				|  |  |  <span class="sd">    """</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_server</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_server</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="k">return</span> <span class="n">_server</span><span class="o">.</span><span class="n">create_server</span><span class="p">(</span><span class="n">thread_pool</span><span class="p">,</span> <span class="p">()</span>
 | 
	
		
			
				|  |  |                                   <span class="k">if</span> <span class="n">handlers</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">handlers</span><span class="p">,</span> <span class="p">()</span>
 | 
	
		
			
				|  |  |                                   <span class="k">if</span> <span class="n">interceptors</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">interceptors</span><span class="p">,</span> <span class="p">()</span>
 | 
	
	
		
			
				|  | @@ -2021,7 +2035,7 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <span class="nd">@contextlib</span><span class="o">.</span><span class="n">contextmanager</span>
 | 
	
		
			
				|  |  |  <span class="k">def</span> <span class="nf">_create_servicer_context</span><span class="p">(</span><span class="n">rpc_event</span><span class="p">,</span> <span class="n">state</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">):</span>
 | 
	
		
			
				|  |  | -    <span class="kn">from</span> <span class="nn">grpc</span> <span class="k">import</span> <span class="n">_server</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  | +    <span class="kn">from</span> <span class="nn">grpc</span> <span class="kn">import</span> <span class="n">_server</span>  <span class="c1"># pylint: disable=cyclic-import</span>
 | 
	
		
			
				|  |  |      <span class="n">context</span> <span class="o">=</span> <span class="n">_server</span><span class="o">.</span><span class="n">_Context</span><span class="p">(</span><span class="n">rpc_event</span><span class="p">,</span> <span class="n">state</span><span class="p">,</span> <span class="n">request_deserializer</span><span class="p">)</span>
 | 
	
		
			
				|  |  |      <span class="k">yield</span> <span class="n">context</span>
 | 
	
		
			
				|  |  |      <span class="n">context</span><span class="o">.</span><span class="n">_finalize_state</span><span class="p">()</span>  <span class="c1"># pylint: disable=protected-access</span>
 |