Commit Graph

2089 Commits

Author SHA1 Message Date
Mehrdad Afshari 6c44fd6e25 Fix useless-super-delegation pylint warnings 2018-06-07 23:22:19 -07:00
Mehrdad Afshari ebb176780b Implement abstract methods _LocalFailure inherits 2018-06-07 23:17:27 -07:00
Mehrdad Afshari a99945d500 Fix arguments-differ pylint warning 2018-06-07 23:12:10 -07:00
Mehrdad Afshari 4b7223d334 Remove unnecessary pylint suppressions 2018-06-07 22:52:51 -07:00
Mehrdad Afshari 0aaeedcbd4 Fix inconsistent-return-statements pylint warnings 2018-06-07 22:50:23 -07:00
Mehrdad Afshari c48acb86fd Fix code to pass len-as-condition pylint test 2018-06-07 22:39:42 -07:00
Nathaniel Manista 06e1683c7c
Merge pull request #14557 from ghostwriternr/py-custom-logger
Update logging in Python to use module-level logger.
2018-06-07 19:31:46 -07:00
Santosh Ananthakrishnan fd4c5dd031 TLS session resumption support for Python clients
This change adds an experimental ssl_session_cache_lru function to the
Python API that returns an encapsulated grpc_ssl_session_cache (#14483).
Python clients may use this object as an argument for the
grpc.ssl_session_cache channel option if they wish to cache and resume
TLS sessions with a server.
2018-06-07 22:20:31 +00:00
Nathaniel Manista b441dbbc2c
Merge pull request #15666 from nathanielmanistaatgoogle/15662
Retain references to channel arguments.
2018-06-07 13:14:03 -07:00
Nathaniel Manista 9c86b20bac Retain references to channel arguments
This works around issue 15662 which is not as easy to implement as I
would prefer it to be.
2018-06-06 21:57:39 +00:00
ncteisen c3c6e064b3 Add basic support for GetChannel 2018-06-05 16:59:25 -07:00
kpayson64 f423280a90
Merge pull request #15607 from kpayson64/upmerge_changes
Upmerge changes
2018-06-04 13:19:27 -07:00
kpayson64 b26b2af1db Merge remote-tracking branch 'upstream/v1.12.x' into upmerge_changes 2018-06-01 10:42:08 -07:00
kpayson64 0647b03296 Use gevent greenlets for metadata callbacks 2018-05-31 17:35:48 -07:00
Augie Fackler 38689e6587 Python: wordsmith documentation on Server.stop()
@nathanielmanistaatgoogle and I just had a good session helping me
figure out how to use this API correctly, and this rewording of the
documentation was the result.
2018-05-31 17:25:58 -04:00
Naresh 2e113ca6b2 Update logging in Python to use module-level logger
All logging in Python so far was done with the root logger, resulting
in logs like: `ERROR:Exception calling application:`. With module-level
loggers, the logs will instead include the module in which the
exception is raised: `ERROR:grpc._server:Exception calling application:`
2018-05-31 08:08:25 +00:00
kpayson64 deebcfea01 Use the correct proto for benchmark_serivce 2018-05-29 14:21:21 -07:00
Vizerai e501a3d3fd Merge branch 'master' of https://github.com/Vizerai/grpc into filter_port 2018-05-29 10:45:32 -07:00
Jan Tattermusch 272cdca728 regenerate projects 2018-05-24 14:46:33 -07:00
Noah Eisen 654ecedd03
Merge pull request #15341 from ncteisen/registry++
C++-ify the ChannelzRegistry, Adds Generic Object Support
2018-05-17 19:34:15 -07:00
ncteisen bba8840a4b Change filename to channelz 2018-05-17 15:07:51 -07:00
Noah Eisen 0b8b9a08e2 Surfaces debug_error_string to Python API
In case of error, the user can access call.debug_error_string()
which contains a string representation of error from the c core.
2018-05-17 07:42:02 -07:00
kpayson64 5fc081acd1
Merge pull request #14647 from kpayson64/fork_exec_ctx_check
Add exec_ctx check to fork handlers
2018-05-15 13:52:28 -07:00
Mehrdad Afshari 4ecc5d8225 Regenerate projects 2018-05-14 22:42:39 -07:00
Mehrdad Afshari 97c2932260 Install futures package only on Python 2 2018-05-14 19:08:31 -07:00
Mehrdad Afshari ac6aaa3f0b Install futures package only on Python 2 2018-05-14 17:02:03 -07:00
kpayson64 4fad281ce8 Merge remote-tracking branch 'upstream/master' into fork_exec_ctx_check 2018-05-11 12:20:11 -07:00
Vizerai 41e4cedb70 Adding opencensus grpc plugin.
Rebasing to merge commits.
2018-05-10 11:41:15 -07:00
jiangtaoli2016 274840e4d3 Migrate SSL_transport_security TSI to new TSI handshaker API 2018-05-09 14:42:48 -07:00
kpayson64 6d6c780ffc Merge remote-tracking branch 'upstream/master' into remove_cleanup_thread 2018-05-03 15:50:56 -07:00
Mehrdad Afshari 2d43a45ad1 Regenerate projects 2018-05-02 22:49:52 -07:00
Mehrdad Afshari e388cdfb63 Regenerate projects 2018-05-02 22:38:37 -07:00
Nathaniel Manista 72a85b1b2d
Merge pull request #15254 from nathanielmanistaatgoogle/12531
Add grpc.Channel.close.
2018-05-02 18:36:46 -07:00
Nathaniel Manista bccd32dafa Add grpc.Channel.close 2018-05-02 23:59:15 +00:00
Nathaniel Manista c955125c32
Merge pull request #15132 from nathanielmanistaatgoogle/12531
Keep Core memory inside cygrpc.Channel objects.
2018-05-02 13:30:05 -07:00
Nathaniel Manista ca7ba4d0ac Keep Core memory inside cygrpc.Channel objects
This removes invocation-side completion queues from the _cygrpc API.
Invocation-side calls are changed to no longer share the same lifetime
as Core calls.

Illegal metadata is now detected on invocation rather than at the start
of a batch (so passing illegal metadata to a response-streaming method
will now raise an exception immediately rather than later on when
attempting to read the first response message).

It is no longer possible to create a call without immediately starting
at least one batch of operations on it. Only tests are affected by this
change; there are no real use cases in which one wants to start a call
but wait a little while before learning that the server has rejected
it.

It is now required that code above cygrpc.Channel spend threads on
next_event whenever events are pending. A cygrpc.Channel.close method
is introduced, but it merely blocks until the cygrpc.Channel's
completion queues are drained; it does not itself drain them.

Noteworthy here is that we drop the cygrpc.Channel.__dealloc__ method.
It is not the same as __del__ (which is not something that can be added
to cygrpc.Channel) and there is no guarantee that __dealloc__ will be
called at all or that it will be called while the cygrpc.Channel
instance's Python attributes are intact (in testing, I saw both in
different environments). This commit does not knowingly break any
garbage-collection-based memory management working (or "happening to
appear to work in some circumstances"), though if it does, the proper
remedy is to call grpc.Channel.close... which is the objective towards
which this commit builds.
2018-05-02 18:24:47 +00:00
kpayson64 701e70da07 c++ify 2018-04-30 17:40:59 -07:00
kpayson64 a0bc0ac169 Remove CleanupThread
This is no longer needed with the addition of a close() API that allows
clean shutdown.
2018-04-30 14:03:47 -07:00
Mark D. Roth 2230d60942 Merge remote-tracking branch 'upstream/master' into c++_subchannel_list 2018-04-20 10:46:03 -07:00
Mehrdad Afshari b3069b095d
Merge pull request #15113 from mehrdada/pylint-tests-1
Eliminate some of the more esoteric pylint suppressions for tests
2018-04-19 11:23:49 -07:00
Mehrdad Afshari 1d74fa6748
Merge pull request #15114 from mehrdada/bump-protobuf-submodule-to-3.5.2
Bump protobuf submodule to 3.5.2
2018-04-19 10:50:44 -07:00
Mehrdad Afshari dd9697fef8 Eliminate broad-except suppression 2018-04-19 10:39:39 -07:00
Mehrdad Afshari 1611946161 Eliminate bare-except suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari 4cc8ea9be1 Eliminate old-style-class suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari fc3bb7c1f9 Eliminate wildcard-import suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari 86d04c2e34 Eliminate function-redefined suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari bc947ada75 Eliminate unnecessary-lambda suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari 4c87620da2 Eliminate undefined-variable suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari a6bf3ccac8 Eliminate non-iterator-returned suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari a7926f9a4c Eliminate undefined-loop-variable suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari 327b3fb6f8 Eliminate raising-bad-type suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari ce8e2fcd16 Eliminate unreachable suppression 2018-04-19 10:39:38 -07:00
Mehrdad Afshari 35c7e8c833 Eliminate bad-continuation suppression 2018-04-19 10:39:37 -07:00
Mehrdad Afshari 8e9baf35bd Bump protobuf runtime dependency versions 2018-04-19 02:07:59 -04:00
kpayson64 7a20c962df Break out qps services into seperate protos 2018-04-18 22:13:09 -07:00
Nathaniel Manista 4d647cf9c1 Fix a use of nonexistent .received_cancelled
.received_cancelled was changed to .cancelled() in
81edf5ff9af2d90813773acb9c2793e1a4cd1057; this change should have been
a part of that change.
2018-04-17 18:58:11 +00:00
Mark D. Roth a63aa993e0 Merge remote-tracking branch 'upstream/master' into c++_subchannel_list 2018-04-10 14:02:26 -07:00
Mehrdad Afshari 90cfc8ed57 Regenerate projects 2018-04-04 14:04:11 -07:00
Nicolas "Pixel" Noble 7d6d2e8bce Removing setsockopt completely actually. 2018-04-04 01:42:00 +02:00
Nicolas "Pixel" Noble 5426183de0 Taking care of gevent. 2018-04-04 00:56:07 +02:00
Mark D. Roth eef0cf6416 Merge remote-tracking branch 'upstream/master' into c++_subchannel_list 2018-04-03 14:55:42 -07:00
kpayson64 51d710273f Fix gevent test flakes 2018-04-02 11:10:31 -07:00
Mark D. Roth 7c1b5db3bb Convert subchannel_list code to C++. 2018-03-30 13:28:56 -07:00
David G. Quintas 07e75a02a0
Merge pull request #14615 from dgquintas/authority_header
Secure channels: use the right authority
2018-03-28 15:44:52 -07:00
kpayson64 c39496540c
Merge pull request #14561 from kpayson64/gevent_2
Initial Gevent Compatibility
2018-03-28 10:04:12 -07:00
kpayson64 1bfff8eec0 Initial gevent support
Because some cpp code ends up leaking into cython, we change
the cython generator to generate cpp code.
2018-03-27 19:44:43 -07:00
kpayson64 0bb2fe946e Explicitly stop servers in unit tests.
Relying on garbage collection to stop servers breaks with gevent.
2018-03-27 19:44:43 -07:00
David Garcia Quintas 158375a440 Merge branch 'master' of github.com:grpc/grpc into authority_header 2018-03-27 14:46:18 -07:00
David Garcia Quintas 49f625f232 more comments 2018-03-27 11:23:49 -07:00
David Garcia Quintas e44efe099d rest of pr comments 2018-03-26 16:23:07 -07:00
apolcyn bd6bdf9327
Merge pull request #13290 from apolcyn/cares_address_sorting_master_c
Add address sorting submodule for use in c-ares wrapper
2018-03-26 14:34:57 -07:00
David Garcia Quintas 811169d62f Merge branch 'master' of github.com:grpc/grpc into authority_header 2018-03-23 22:39:35 -07:00
David Garcia Quintas fa460dcf1d Factor out grpc_add_default_authority_if_not_present 2018-03-23 14:51:41 -07:00
Feng Li 7b2f5775d8 Release the GIL when calling grpc_call_start_batch. 2018-03-23 09:23:51 -07:00
David Garcia Quintas 8824a137b8 Merge branch 'master' of github.com:grpc/grpc into authority_header 2018-03-21 18:27:23 -07:00
Noah Eisen e21c7bfd80
Merge pull request #14765 from grpc/revert-14687-early-ok
Revert "Verify early OK behavior"
2018-03-21 17:39:29 -07:00
David Garcia Quintas 0abc077d45 Merge branch 'master' of github.com:grpc/grpc into authority_header 2018-03-21 17:10:15 -07:00
Noah Eisen dc93b71e53
Merge pull request #14751 from ncteisen/channel-tracing
[Fix Forward]: Channel Tracing Implementation; Part 1
2018-03-21 16:49:12 -07:00
David Garcia Quintas a10634cadc Merge branch 'master' of github.com:grpc/grpc into authority_header 2018-03-21 16:35:36 -07:00
Alexander Polcyn 690dde672a Add address sorting submodule for use in c-ares wrapper 2018-03-20 23:51:19 -07:00
Noah Eisen d2bc0c2609
Revert "Verify early OK behavior" 2018-03-20 15:59:47 -07:00
Ruslan Nigmatullin 99d0cee31b regenerate projects 2018-03-20 09:18:29 -07:00
Ruslan Nigmatullin 7ae3733cab [grpc] Add SSL session client cache support 2018-03-20 09:17:28 -07:00
ncteisen 3b42f83068 Revert "Revert "Channel Tracing Implementation; Part 1""
This reverts commit f2bea3725f.
2018-03-19 13:22:35 -07:00
Noah Eisen f2bea3725f
Revert "Channel Tracing Implementation; Part 1" 2018-03-19 12:05:18 -07:00
ncteisen b93a006d64 Merge branch 'master' of https://github.com/grpc/grpc into channel-tracing 2018-03-15 13:46:28 -10:00
David Garcia Quintas 961353ab6d moved filter to ext 2018-03-15 16:11:05 -07:00
kpayson64 2401c93e07
Merge pull request #14657 from ghostwriternr/reflection-readme
Create README for gRPC Python reflection package
2018-03-15 11:06:29 -07:00
Nathaniel Manista 62170372a7 Remove _face_interface_test
The Beta API has an execution date and RPC Framework is but a distant
memory.

This test is flaky with Python 3.5 on Windows! Some mysteries will just
have to remain unsolved...
2018-03-13 23:50:25 +00:00
Nathaniel Manista f7a8f8ba7c
Merge pull request #14687 from nathanielmanistaatgoogle/early-ok
Verify early OK behavior.
2018-03-13 16:44:11 -07:00
Nathaniel Manista 7726c303a6 Verify early OK behavior
Looks like early OK support was implemented in
https://github.com/grpc/grpc/pull/14080 but
https://github.com/grpc/grpc/issues/7032 was not marked fixed at the
time.

Good thing it was just an idea on our Google Summer of Code ideas
page...
2018-03-13 21:59:54 +00:00
Naresh c6e4372f8a Create README for gRPC Python reflection package
Currently, `warning: sdist: standard file not found` warning is always
printed when creating source distribution for gRPC python reflection
package. This should stop that.
2018-03-13 19:43:43 +00:00
David Garcia Quintas aa843f2bfc Testing making the authority filter a plugin, for cronet 2018-03-13 12:37:11 -07:00
kpayson64 539f5068bd Abstract libuv implementation
Structures the libuv implementation to allow for a plugable
BSD style socket implementation to allow for other IO Managers
2018-03-13 01:21:42 -07:00
David Garcia Quintas c7c0d69d8b Secure channels: use the right authority 2018-03-10 21:32:57 -08:00
Yihua Zhang 04fb58efbd Add ALTS code to grpc/core 2018-03-08 06:49:24 -08:00
Jan Tattermusch a5935917c5
Merge pull request #14629 from jtattermusch/bump_boringssl
Update third_party/boringssl to the latest chromium-stable
2018-03-08 10:44:02 +01:00
Sree Kuchibhotla ae277dd000
Revert "Add ALTS C stack to gRPC core" 2018-03-07 14:35:36 -08:00
kpayson64 b243732f3f
Merge pull request #14448 from kpayson64/remove_poller
Remove Python background poller thread
2018-03-07 14:06:20 -08:00
Jan Tattermusch d606e36061 regenerate projects 2018-03-07 21:21:38 +01:00