Commit Graph

3247 Commits

Author SHA1 Message Date
Craig Tiller f0555b3e1c Declare filegroups for chttp2 2016-03-28 10:19:24 -07:00
Craig Tiller c7762a8c24 Move chttp2 related files under ext/ 2016-03-28 10:13:08 -07:00
Craig Tiller f23078cbd3 Stage #1 of core breakup: move everything under lib 2016-03-25 17:07:29 -07:00
Masood Malekghassemi 7d8ac466d6 Don't allow precompiled binaries in tests
Before it was possible for precompiled binaries of the Cython layer to
be downloaded during a test run if the metadata of the host machine's
gRPC Python project matched the metadata of a file in cloud storage. Now
we disallow this, and fix a bug where the relevant environment variable
was ineffectual.
2016-03-24 12:48:47 -07:00
Leifur Halldor Asgeirsson ae2195667d fixes to tests for py2/3 syntax compatibility 2016-03-23 20:50:36 -04:00
Jan Tattermusch df7e4228df Merge pull request #5916 from leifurhauks/py3_str_bytes_in_links_service_and_beta_server
Python 3: fix a bytes/str runtime issue
2016-03-23 16:42:12 -07:00
Jan Tattermusch 8ce3b1ad89 Merge pull request #5383 from miselin/add_request_parsing
Add HTTP request parsing
2016-03-23 14:47:40 -07:00
Jan Tattermusch 68f5a3bd82 Merge pull request #5368 from leifurhauks/py3_test_compat
Python: py3 compatibility for test runner & loader
2016-03-23 14:43:35 -07:00
Jan Tattermusch f1050f6f4a Merge pull request #5755 from ahedberg/unix_sockets_optional
Make unix sockets optional
2016-03-23 08:47:12 -07:00
Jan Tattermusch e3af44e2e9 Merge pull request #5914 from thought-machine/fix_slow_string_read
Make grpc-python ByteBuffer.bytes() linear
2016-03-22 20:03:07 -07:00
Matthew Iselin 1824f0519f Add HTTP request parsing.
This extends the existing http parser to support requests as well as responses.

httpcli continues to exist and work as it has previously, though in the new
directory src/core/http (to reflect the fact the directory now contains code
relevant to parsing requests, which httpcli would not generally involve itself
in).
2016-03-23 13:22:32 +11:00
Leifur Halldor Asgeirsson b9501bcb0b Python 3: fix a bytes/str runtime issue
On python3, in grpc._links.service._Kernel._on_service_acceptance_event,
there is a runtime TypeError:

```
_on_service_acceptance_event
    group, method = service_acceptance.method.split('/')[1:3]
TypeError: 'str' does not support the buffer interface
```

It is fixed by using a bytes literal (`b'/'`) instead of a string literal.

This exposed another issue in grpc.beta._server where an exception was being
raised with a bytes literal for a message (a string should be used instead.)
2016-03-22 20:52:37 -04:00
Jan Tattermusch 39fd22193b Merge pull request #5899 from dgquintas/uchannels_kthxbai
removed uchannels
2016-03-22 14:03:45 -07:00
alex ce37938255 Make grpc-python ByteBuffer.bytes() linear cost.
Currently ByteBuffer.bytes() reads from the underlying grpc byte_buffer
a slice at a time, and appends each to a Python string (bytes). In
Python strings are immutable, so appending creates a new string by
copying the previous data.  This means the current implementation is
quadratic.

The effect is very noticeable when messages have repeated (or large)
string fields.  We traced execution between two services and observed
that when the payload size approached 600kb, the receiving service took
~10s at full CPU to read a response that had taken fractions of a second
the send over the network.

This commit changes ByteBuffer.bytes() to use an intermediate bytearray,
instead of strings, for the in-progress bytes.  Once all slices are
read, the buffer is converted to a string.
2016-03-22 17:49:56 +00:00
Nicolas Noble 62dcaa2635 Merge pull request #5650 from leifurhauks/py3_iteritems
replace uses of iteritems with six.iteritems
2016-03-21 16:25:29 -07:00
David Garcia Quintas fb349b9f71 removed uchannels 2016-03-21 15:37:20 -07:00
Craig Tiller c65ed870ed Merge github.com:grpc/grpc into idempotent 2016-03-21 10:49:14 -07:00
Jan Tattermusch b08ee7a260 Merge pull request #5653 from leifurhauks/py3_iterators
make iterators python3-compatible
2016-03-21 10:44:09 -07:00
Jan Tattermusch 20792927fe Merge pull request #5651 from leifurhauks/py3_metaclasses
specify metaclasses in a py3-compatible way
2016-03-21 10:43:48 -07:00
Craig Tiller 44654553de Merge github.com:grpc/grpc into idempotent 2016-03-21 09:04:06 -07:00
Craig Tiller c22781525c Merge branch 'cleaner-posix2' into cleaner-posix3 2016-03-21 08:59:54 -07:00
Craig Tiller 59743d6971 Merge github.com:grpc/grpc into cleaner-posix2 2016-03-21 08:56:25 -07:00
Craig Tiller 3448887c90 Merge github.com:grpc/grpc into filter-selection 2016-03-21 07:08:50 -07:00
Jan Tattermusch 68edc15796 Merge pull request #5679 from makdharma/master
Cleaned up installation/test requirement fetching
2016-03-20 15:54:03 -07:00
Christian Svensson ce2a2d041d ssl_channel_credentials to use None by default
Since the default behavior is quite sane, support just calling ssl_channel_credentials() without explicitly specifying ssl_channel_credentials(None, None, None).

This changes the pattern ssl_channel_credentials(server_crt, None, None) to ssl_channel_credentials(server_crt)

Signed-off-by: Christian Svensson <blue@cmd.nu>
2016-03-20 18:43:11 +01:00
Christian Svensson e73e9e1a98 Allow directly specifiying connection path
Make insecure_channel / secure_channel accept port=None and only use the
'host' argument. This enables using UNIX sockets without mangling the
path of the socket.

Signed-off-by: Christian Svensson <blue@cmd.nu>
2016-03-20 18:41:51 +01:00
Craig Tiller de7edf83cc Merge github.com:grpc/grpc into backoff2
Reintroduce flakiness flag for tests: lb_policies_test is inherently flaky and I don't have time to deflake this week
2016-03-20 09:12:16 -07:00
Jan Tattermusch 8bce393aeb Merge pull request #5819 from dgquintas/compression_levels
Implemented compression level algorithms properly
2016-03-18 16:46:21 -07:00
Craig Tiller 58270d5461 Revert "Revert "Factor out backoff code into a separate library (to be re-used elsewhere)"" 2016-03-18 15:57:49 -07:00
Jan Tattermusch b41a1acfe3 Merge pull request #5814 from sreecha/grpc_fixit
DocFixit: Add more troubleshooting details
2016-03-18 15:44:26 -07:00
David G. Quintas 108cecb826 Revert "Factor out backoff code into a separate library (to be re-used elsewhere)" 2016-03-18 15:05:00 -07:00
Leifur Halldor Asgeirsson fbe766ad46 replace uses of iteritems with six.iteritems 2016-03-18 16:21:45 -04:00
Leifur Halldor Asgeirsson efdefce3a7 make iterators python3-compatible 2016-03-18 16:14:18 -04:00
Leifur Halldor Asgeirsson 554c7dd22f py3 compatibility for test runner & loader 2016-03-18 16:01:57 -04:00
Leifur Halldor Asgeirsson 1abda1f02b specify metaclasses in a py3-compatible way 2016-03-18 15:58:19 -04:00
David Garcia Quintas a36ec16de2 regenerated projects 2016-03-18 10:00:23 -07:00
Sree Kuchibhotla 3a0be4642f review comments 2016-03-18 09:10:35 -07:00
Jan Tattermusch 220986ea83 Merge pull request #5786 from soltanmm/this-is-not-a-pipe
Don't use a pipe for output capturing in Python's test runner
2016-03-18 08:49:17 -07:00
ahedberg 43df295528 add unix_sockets_posix module to build system and fix compilation errors 2016-03-18 10:46:38 -04:00
Sree Kuchibhotla ffa38f9671 Add troubleshooting details 2016-03-17 18:36:31 -07:00
Craig Tiller 6c59e16826 Merge github.com:grpc/grpc into filter-selection 2016-03-17 11:20:58 -07:00
Jan Tattermusch 921f4b0a6e Merge pull request #5791 from sreecha/grpc_fixit
DocFixit: Python README
2016-03-17 10:37:12 -07:00
Masood Malekghassemi fd5a3ef9d5 Don't use a pipe for capturing in test runner
Apparently Python can call arbitrarily deallocation code whenever its
allocator is invoked, which can cause output from gRPC core to stderr,
which can happen on the thread that is emptying the stderr pipe, thus
causing the stderr pipe to deadlock on itself.
2016-03-17 09:41:45 -07:00
Craig Tiller ec8eef42b8 Merge branch 'cleaner-posix2' into cleaner-posix3 2016-03-17 08:13:39 -07:00
Craig Tiller 40d34bf477 Merge github.com:grpc/grpc into filter-selection 2016-03-17 07:50:54 -07:00
Craig Tiller 0239ba8ebf Merge github.com:grpc/grpc into cleaner-posix2 2016-03-17 07:49:27 -07:00
Craig Tiller c65af4d784 Merge github.com:grpc/grpc into idempotent 2016-03-17 07:44:17 -07:00
Craig Tiller 36bf4d55e1 Merge github.com:grpc/grpc into backoff_lib 2016-03-17 07:43:22 -07:00
Sree Kuchibhotla 2f084ee39e DocFixit: Python README 2016-03-16 23:09:56 -07:00
Jan Tattermusch 0b3e515c96 Merge pull request #5767 from soltanmm/gil-not-nimble-gil-not-quick
Don't hold the GIL when calling anything in core
2016-03-16 17:10:10 -07:00
Craig Tiller 4f7ffa05a4 Merge github.com:grpc/grpc into idempotent 2016-03-16 07:58:20 -07:00
Craig Tiller 5ee157cd11 Merge github.com:grpc/grpc into backoff_lib 2016-03-16 07:56:37 -07:00
Craig Tiller 7cd6ed7da3 Merge github.com:grpc/grpc into cleaner-posix2 2016-03-16 07:53:26 -07:00
Craig Tiller 121e7a9645 Merge github.com:grpc/grpc into filter-selection 2016-03-16 07:50:18 -07:00
Masood Malekghassemi 3d2d5b9d27 Don't hold the GIL when calling anything in core 2016-03-15 17:59:32 -07:00
Masood Malekghassemi cbd1bce45a Fix two ways tests can hang
Both have to do with the test runner's handling of the tests. With one
it's the read thread somehow outliving the other threads (e.g. with
ctrl-C). The other is due to a filled OS-level pipe's buffer causing a
block while code is still holding the GIL in some gRPC core function. We
can't empty the buffer from Python because the GIL is held, and the OS
can't unblock because it's waiting for the buffer to get cleared:
deadlock.
2016-03-15 14:30:15 -07:00
Jan Tattermusch 2626dfd256 Merge pull request #5728 from jtattermusch/python_nuke_event_invocation
Remove tests for EventInvocation API that is going to be removed
2016-03-13 19:38:57 -07:00
Jan Tattermusch 8734e02f52 fix copyright 2016-03-11 15:52:53 -08:00
Jan Tattermusch afc59cbc88 remove tests for EventInvocation API that is going to be removed 2016-03-11 15:06:15 -08:00
Masood Malekghassemi 9ee163557b Remove unnecessary (potentially bad) safety-refs 2016-03-11 11:23:32 -08:00
Craig Tiller c72cc42238 Build out backoff as a library 2016-03-11 10:54:36 -08:00
Craig Tiller 7885ea5e31 Add a place for tests 2016-03-10 06:53:29 -08:00
Masood Malekghassemi 40ed554bc0 Merge pull request #5686 from soltanmm/gills
Release GIL in queue __dealloc__
2016-03-09 21:08:56 -08:00
Craig Tiller 6387add103 Merge pull request #5540 from soltanmm/upmerge
Merge release-0_13 into master
2016-03-09 20:02:08 -08:00
Masood Malekghassemi 1f646dc887 Release GIL in queue __dealloc__ 2016-03-09 14:46:45 -08:00
Masood Malekghassemi ec49e156fe Fix typo 2016-03-09 11:51:58 -08:00
Makarand Dharmapurikar aa212374ee Cleaned up installation/test requirement fetching 2016-03-09 11:15:35 -08:00
Craig Tiller 34edebc1f5 Merge branch 'cleaner-posix2' into cleaner-posix3 2016-03-08 07:46:20 -08:00
Craig Tiller 4560bda1da Merge github.com:grpc/grpc into cleaner-posix2 2016-03-07 20:17:10 -08:00
Craig Tiller 41cb61de8b Merge github.com:grpc/grpc into filter-selection 2016-03-07 20:08:24 -08:00
Jan Tattermusch 17908c168d Address comments and add a TODO. 2016-03-07 15:04:17 -08:00
Jan Tattermusch e6cc9c7a25 custom test target for parallel test running 2016-03-07 13:08:59 -08:00
Masood Malekghassemi 4aaf47469e Merge remote-tracking branch 'upstream/master' into upmerge 2016-03-03 13:26:50 -08:00
Jan Tattermusch 4473dd5b88 Merge pull request #5541 from jtattermusch/python_split_tests
Make python test suites run in parallel
2016-03-03 11:16:42 -08:00
Craig Tiller 0cb803d9ca Always ref writable streams
We suffered a bug whereby doing a follow-up write to another write could
resurrect a deleted stream, causing all sorts of crash.

Fix: when a stream becomes writable (vs when we start writing) take a
ref on the stream, and only relinquish it once we're done writing.
2016-03-02 22:34:23 -08:00
Jan Tattermusch 072ebaa153 make python test suites run in parallel 2016-03-02 17:46:18 -08:00
Nathaniel Manista 8c5be78eb9 Merge pull request #5542 from soltanmm/over-troubled-water
Add troubleshooting section to Python package description.
2016-03-02 16:07:42 -08:00
Masood Malekghassemi 7bee07555a Add troubleshooting section to package description 2016-03-02 14:41:01 -08:00
Masood Malekghassemi 357871fd34 Merge remote-tracking branch 'upstream/release-0_13' 2016-03-02 13:56:49 -08:00
Masood Malekghassemi 18720fff2f Maintain correct queue invariants against core 2016-03-02 13:24:16 -08:00
Nicolas "Pixel" Noble 68291709f4 Fixing copyrights. 2016-03-01 02:55:18 +01:00
Masood Malekghassemi 6a5e1d7e19 Merge pull request #5478 from soltanmm/catatonic
Address some memory hazards in Cython code
2016-02-29 16:54:58 -08:00
Bogdan Drutu f0ca4d5c5c Merge pull request #5441 from a-veitch/no_binary_tags
Remove binary tags, restrict tag characters to ASCII
2016-02-29 16:42:00 -08:00
Masood Malekghassemi 334e0ee370 Address some memory hazards in Cython code
Some __dealloc__ methods were calling Python methods, and some
references were being dropped on the floor instead of threaded through
gRPC core.
2016-02-29 14:48:33 -08:00
Alistair Veitch 0cc824275d regenerate imports 2016-02-26 10:54:20 -08:00
Craig Tiller ac04b7f537 Merge branch 'cleaner-posix2' into cleaner-posix3 2016-02-26 08:36:44 -08:00
Craig Tiller 5a9d7d2dcc Merge github.com:grpc/grpc into filter-selection 2016-02-25 16:03:11 -08:00
Craig Tiller 8be2278403 Merge branch 'hide-the-pollset-set' into cleaner-posix2 2016-02-25 15:34:55 -08:00
Craig Tiller 7ac6bf07a9 Finish porting rough implementation of poll() event strategy 2016-02-25 12:54:59 -08:00
Jan Tattermusch 7620649134 Merge pull request #5359 from nicolasnoble/upmerge
Upmerge from 0.13
2016-02-25 09:40:23 -08:00
Craig Tiller 07eb5b0ccd Remove pollset_set_posix.c 2016-02-25 07:18:34 -08:00
Craig Tiller cf999dd336 Merge github.com:grpc/grpc into cleaner-posix2 2016-02-25 07:16:40 -08:00
Craig Tiller a3f3442010 Merge branch 'hide-the-pollset-set' into cleaner-posix2 2016-02-25 07:16:24 -08:00
Craig Tiller 4ea4599a50 Merge github.com:grpc/grpc into naming-crisis 2016-02-23 17:13:38 -08:00
Craig Tiller 70ab4c5cef Merge github.com:grpc/grpc into fix-proto-docker 2016-02-22 22:29:51 -08:00
Craig Tiller 521423c8cf Regenerate files, fix bugs 2016-02-22 22:22:22 -08:00
Craig Tiller 6895168e0a Merge github.com:grpc/grpc into filter-selection 2016-02-22 21:41:31 -08:00
Nathaniel Manista 22648b7f7c Merge pull request #5283 from soltanmm/abi-fu
Add more information to precompiled name.
2016-02-22 18:54:24 -08:00
Masood Malekghassemi 3ee1f9b778 Update Python docgen 2016-02-22 18:37:51 -08:00
Masood Malekghassemi fe8ad714d4 Update Python doc w.r.t. Windows availability 2016-02-22 17:55:24 -08:00
Nathaniel Manista 88b0d52018 Merge pull request #5360 from soltanmm/doc-notes
Update Python doc with pip version notes.
2016-02-22 17:53:52 -08:00
Masood Malekghassemi c0a97a9cfe Update Python doc with pip version notes 2016-02-22 17:51:02 -08:00
Nicolas Noble 88966ab145 Merge pull request #5348 from nicolasnoble/backport-merge
Backport merge.
2016-02-23 02:19:44 +01:00
Nicolas "Pixel" Noble 1dda992697 Merge branch 'master' into backport-merge 2016-02-23 00:44:41 +01:00
Alistair Veitch 7771544111 rename census log files to avoid build breakage on MacOS 2016-02-22 14:20:25 -08:00
Nicolas "Pixel" Noble 1280fdb574 Merge branch 'master' into backport-merge 2016-02-22 21:30:14 +01:00
Craig Tiller 1a969c86f4 Start migrating code into ev_XXX 2016-02-22 12:13:16 -08:00
Masood Malekghassemi 9f79159590 Merge pull request #5302 from nicolasnoble/python-windows
Enabling python artifact building for Windows.
2016-02-22 11:37:22 -08:00
Nicolas "Pixel" Noble 2e8fdbac77 Building the dlls. 2016-02-19 05:39:15 +01:00
Masood Malekghassemi 736173487c Exclude cygrpc.so from the Python package 2016-02-18 15:54:18 -08:00
Craig Tiller 8d8246ecc6 Merge branch 'cleaner-posix' into cleaner-posix2 2016-02-18 07:40:26 -08:00
Craig Tiller 16f6826ffd Merge github.com:grpc/grpc into fix-proto-docker 2016-02-18 07:14:37 -08:00
Craig Tiller 178edfae2b Decouple filter selection from channel construction
Allow plugins to extend the set of filters used by gRPC core:
- plugins at construction time can register against the 'channel_init' system to be allowed to mutate a new channel_stack_builder type
- channel_stack_builder provides a central and rather dynamic place to construct the list of filters required by a channel stack
- ultimately we construct the channel stack in the fashion we always have

This is also a prerequisite step to allowing filters to be implemented from wrapped languages.
2016-02-17 20:54:46 -08:00
Sree Kuchibhotla 3cce2ecb12 Merge pull request #4859 from ctiller/sceq
Subchannel Sharing  [The interop tests failures and Basic test failures are unrelated to this change. Merging]
2016-02-17 16:03:52 -08:00
Nicolas "Pixel" Noble 639766023e Flagging the missing API entries. 2016-02-17 23:43:55 +01:00
Craig Tiller c0ce00fd16 Merge github.com:grpc/grpc into sceq 2016-02-17 14:25:12 -08:00
Masood Malekghassemi e5e0131c8d Add more information to precompiled name 2016-02-17 14:02:07 -08:00
Bogdan Drutu a3d33b93c4 Merge pull request #5277 from soltanmm/abimerp
Extern "C" Python DLL support
2016-02-17 12:03:14 -08:00
Masood Malekghassemi d01391233a Extern "C" Python DLL support 2016-02-17 12:00:49 -08:00
Bogdan Drutu 399d34bef4 Fix pygrpc_load_core in pxi to match with the C definition 2016-02-16 19:37:15 -08:00
Bogdan Drutu 43f6311c58 Merge pull request #5098 from a-veitch/base_log
Add Census base log
2016-02-16 09:54:31 -08:00
Craig Tiller 5a6644602e Moving fd code into ev code 2016-02-16 08:07:17 -08:00
Nicolas "Pixel" Noble f083013bd7 Merge remote-tracking branch 'google/release-0_13' into upmerge-from-0.13
Conflicts:
	Makefile
	build.yaml
	package.json
	setup.py
	src/core/surface/version.c
	src/csharp/Grpc.Core/VersionInfo.cs
	src/csharp/build_packages.bat
	src/python/grpcio/grpc_version.py
	src/ruby/lib/grpc/version.rb
	tools/doxygen/Doxyfile.c++
	tools/doxygen/Doxyfile.c++.internal
	tools/doxygen/Doxyfile.core
	tools/doxygen/Doxyfile.core.internal
2016-02-13 04:38:20 +01:00
Masood Malekghassemi 44753c39e1 Merge pull request #5237 from nicolasnoble/flagging-release-as-0_13_1-pre1
Flagging 0.13.1-pre1.
2016-02-12 18:51:47 -08:00
Masood Malekghassemi 99a4e9e867 Merge pull request #5230 from soltanmm/doc
Update Python doc
2016-02-12 16:47:15 -08:00
Nicolas "Pixel" Noble 6910ce8e01 Flagging 0.13.1-pre1. 2016-02-13 01:03:26 +01:00
Nicolas "Pixel" Noble 7a925f7f5e Flagging the release. 2016-02-13 00:39:12 +01:00
Masood Malekghassemi dfab11919e Update Python doc 2016-02-12 15:20:34 -08:00
Masood Malekghassemi f747409f6f Use precompiled extensions only 2016-02-12 13:45:37 -08:00
Masood Malekghassemi cd4358460d Bump Python version 2016-02-11 20:12:48 -08:00
Masood Malekghassemi dd6ee7af7e Truncate Python target triple 2016-02-11 20:08:49 -08:00
Craig Tiller eb841e2010 Revert "Revert "Proto API for LB request/responses"" 2016-02-11 15:49:16 -08:00
Craig Tiller c35e2c582f Revert "Proto API for LB request/responses" 2016-02-11 15:45:03 -08:00
Masood Malekghassemi b6d3a8238d Paper over custom command limitations
The custom gRPC bdist command depends on numerous undocumented and
private behaviors of setuptools, wheel, distutils, etc. One such is the
ordering of generated distribution targets. We paper over this under the
assumption that the command will only be useful for gRPC devs, and
document with a command description a contractual obligation of users of
the command.
2016-02-11 14:08:11 -08:00
Masood Malekghassemi 334e9e6fa2 Use wheels instead for custom bdists 2016-02-11 12:00:55 -08:00
Alistair Veitch 749250f6a0 merge to HEAD 2016-02-11 09:23:20 -08:00
David Garcia Quintas 742a783c0d Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-02-11 01:04:28 -08:00
Nicolas Noble 9c7961a014 Merge pull request #5165 from ctiller/bring_back_gpr
Bring back gpr
2016-02-10 17:39:45 -08:00
Craig Tiller f73429901a Merge github.com:grpc/grpc into sceq 2016-02-09 16:32:51 -08:00
Nathaniel Manista ecf8327b3d Merge pull request #5100 from nathanielmanistaatgoogle/python-grpc_set_ssl_roots_override_callback
grpc_set_ssl_roots_override_callback for Python.
2016-02-09 13:26:56 -08:00
Craig Tiller 1298afd10e Get compilation working again 2016-02-09 12:29:17 -08:00
Craig Tiller da179ce598 Rollback gpr deletion 2016-02-09 12:01:53 -08:00
Nathaniel Manista fa6cad701c grpc_set_ssl_roots_override_callback for Python 2016-02-09 19:02:56 +00:00
David Garcia Quintas 7e46618897 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-02-08 20:07:19 -08:00
Nicolas "Pixel" Noble 1935c3655c Flagging master as 0.14.0-dev. 2016-02-09 01:54:56 +01:00
Nicolas "Pixel" Noble cda4bad582 Flagging 0.13 as pre1. 2016-02-09 00:44:23 +01:00
Nicolas Noble 824a0903a5 Merge pull request #5129 from ctiller/version_number
build.yaml centric versioning
2016-02-08 15:12:47 -08:00
Nathaniel Manista 757c157d86 Merge pull request #5134 from soltanmm/cleaners
Clean-up Python linux-binary installation.
2016-02-08 14:57:59 -08:00
Masood Malekghassemi 35afe4afaf Fall back to building if GCS cannot be reached 2016-02-08 14:51:31 -08:00
Masood Malekghassemi 6598ce16db Move os.environ to module-level 2016-02-08 14:51:04 -08:00
Alistair Veitch e28e426af5 Merge branch 'master' into base_log 2016-02-08 13:08:24 -08:00
Craig Tiller f008f067f8 build.yaml centric versioning 2016-02-08 12:48:03 -08:00
Masood Malekghassemi 064d37d380 Fix GCS URL for Python 2016-02-08 12:19:24 -08:00
Craig Tiller 55e813f946 Merge pull request #5088 from murgatroid99/core_long_int64_t
Replace 'long' with 'int64_t' in public core headers
2016-02-08 10:22:42 -08:00
Nicolas "Pixel" Noble 1be92658ef Versionning Ruby from build.yaml, and regenerating broken files after census merge. 2016-02-06 09:30:19 +01:00
Craig Tiller 5c04760d46 Change default on Python install option 2016-02-05 14:25:56 -08:00
Alistair Veitch ba6065f016 merge 2016-02-05 13:27:42 -08:00
murgatroid99 7a55684a13 Clang format and fix copyrights 2016-02-05 11:33:30 -08:00
murgatroid99 309830f6b8 Replace 'long' with 'int64_t' in public core headers 2016-02-05 11:30:00 -08:00
Masood Malekghassemi a7a50785be Don't die on missing win32 resources on non-win32 2016-02-04 14:21:09 -08:00
Masood Malekghassemi f751b0b549 Use envvar for binary repository 2016-02-04 14:21:09 -08:00
Bogdan Drutu e4fdcd9242 Merge pull request #5013 from a-veitch/tag_set_to_context
Change all instances of census_tag_set to census_context
2016-02-04 12:42:35 -08:00
Craig Tiller 411da52f1d Merge pull request #5064 from nicolasnoble/win32-python
Win32 python
2016-02-04 10:39:38 -08:00
Masood Malekghassemi 5260670e00 Merge pull request #4944 from soltanmm/patch
Clean up custom gRPC Python binaries for Linux
2016-02-04 10:30:24 -08:00
Masood Malekghassemi 10509a28c7 Fix Python Windows build 2016-02-04 17:18:18 +01:00
Masood Malekghassemi ab7055a0e7 Format a line 2016-02-04 17:18:18 +01:00
Nicolas "Pixel" Noble 7dc4b7099a Dirty hack to get 32 bits loading in the cython core. 2016-02-04 17:18:17 +01:00
Nicolas "Pixel" Noble e018f9f2e8 Almost there. 2016-02-04 17:18:17 +01:00
Masood Malekghassemi c9c53eeba5 Sundry fixes 2016-02-04 17:18:17 +01:00
Masood Malekghassemi df1e07e5c1 Add shim for Python's gRPC core on Windows 2016-02-04 17:18:11 +01:00
Alistair Veitch 6f2b8993fd merge 2016-02-03 09:02:46 -08:00
Alistair Veitch 85afe71d4c initial commit 2016-02-02 17:58:15 -08:00
Nicolas "Pixel" Noble 89d8ed1b91 Merge branch 'master' of github.com:grpc/grpc into make-ruby-installable
Conflicts:
	BUILD
	Makefile
	binding.gyp
	build.yaml
	gRPC.podspec
	grpc.gemspec
	package.json
	src/python/grpcio/grpc_core_dependencies.py
	templates/Makefile.template
	tools/doxygen/Doxyfile.core.internal
	tools/run_tests/sources_and_headers.json
	vsprojects/vcxproj/gpr/gpr.vcxproj
	vsprojects/vcxproj/gpr/gpr.vcxproj.filters
2016-02-03 01:27:46 +01:00
Alistair Veitch 75d5c0f024 post merge 2016-02-02 09:43:02 -08:00
Craig Tiller 841c726140 Merge github.com:grpc/grpc into sceq 2016-02-02 09:23:22 -08:00
Craig Tiller 4bef7cebe6 Use old memcpy for wrappers 2016-02-02 08:38:43 -08:00
Nicolas "Pixel" Noble 8382829f30 Merge branch 'master' of github.com:grpc/grpc into make-ruby-installable 2016-02-01 20:18:59 +01:00
Craig Tiller f09fb7e4b0 Merge pull request #4979 from nicolasnoble/win32_subprocess
Adding windows support for gpr subprocesses.
2016-02-01 07:35:10 -08:00
Craig Tiller cbc4629c52 Merge pull request #4978 from nicolasnoble/alarming
Fixing, using and testing alarm code.
2016-01-31 18:11:03 -08:00
Craig Tiller 9734b9c355 Merge pull request #4982 from nicolasnoble/census-placeholders
Creating placeholders for missing census functions.
2016-01-31 18:09:47 -08:00
Nicolas "Pixel" Noble cf37cb9f9e Merge branch 'census-placeholders' into make-ruby-installable
Conflicts:
	package.json
	tools/doxygen/Doxyfile.core.internal
2016-01-31 09:34:46 +01:00
Nicolas "Pixel" Noble fa132c2f56 Actually moving this to the proper place. 2016-01-31 09:31:15 +01:00
Nicolas "Pixel" Noble 78825caeeb Merge branch 'win32_subprocess' into make-ruby-installable
Conflicts:
	BUILD
	Makefile
	binding.gyp
	build.yaml
	gRPC.podspec
	grpc.gemspec
	src/python/grpcio/grpc_core_dependencies.py
	tools/run_tests/sources_and_headers.json
	vsprojects/vcxproj/gpr/gpr.vcxproj
	vsprojects/vcxproj/gpr/gpr.vcxproj.filters
2016-01-31 07:08:20 +01:00
Nicolas "Pixel" Noble 4fba286e4d Adding windows support for gpr subprocesses. 2016-01-31 07:00:53 +01:00
Nicolas "Pixel" Noble bf192eff56 Merge branch 'alarming' into make-ruby-installable
Conflicts:
	tools/run_tests/sources_and_headers.json
2016-01-31 06:25:39 +01:00
Nicolas "Pixel" Noble d5d83aa33f Fixing, using and testing alarm code. 2016-01-31 06:21:49 +01:00
Masood Malekghassemi 5080909b4c Pass undiagnosed errors to the user unadulterated 2016-01-30 14:27:28 -08:00
Masood Malekghassemi 097070fe20 Diagnose missing Cython-generated files 2016-01-30 14:26:49 -08:00
Nicolas "Pixel" Noble 9d476392b7 Merge branch 'master' of github.com:grpc/grpc into make-ruby-installable 2016-01-30 21:43:00 +01:00
Nicolas "Pixel" Noble 09121799b0 Removing gpr as a separated library. 2016-01-30 09:34:22 +01:00
Masood Malekghassemi 62cc911188 Fix Python diagnostics dying on bad diagnosis 2016-01-28 14:56:40 -08:00
David Garcia Quintas fb01883859 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-28 14:39:54 -08:00
Craig Tiller 8c50db09b9 Merge github.com:grpc/grpc into sceq 2016-01-28 11:38:21 -08:00
Masood Malekghassemi ece40b263d Clean up custom gRPC Python binaries for Linux
Adds doc-string to EggNameMixin, renames the custom install flag to make
it a bit clearer that the mechanism isn't necessarily limited to linux
(though certainly we'd like it to be; but that's a decision to be made
at the level of the build system and what is made available on GCS, not
here).
2016-01-28 11:01:19 -08:00
Masood Malekghassemi 86363e540e Merge pull request #4884 from soltanmm/deal-with-it
Enable binary linux distributions for Python
2016-01-27 15:43:43 -08:00
Masood Malekghassemi 154b0eeaa9 Enable binary linux distributions for Python 2016-01-27 14:42:08 -08:00
Nathaniel Manista c1739ea842 Implement three missing face test methods 2016-01-27 18:50:40 +00:00
Nathaniel Manista 6e1dd9ad06 Fix reporting unexpected abortions in event tests
Writing "<format string containing one directive> % <expression>"
instead of "<format string containing one directive> % (<expression>,)"
is always a problem; the particular problem in this case came from
face.Abortion being a subclass of a class created with
collections.namedtuple.
2016-01-27 18:25:36 +00:00
Nathaniel Manista 8fff90d3a9 Drop use of functools.wrap in logging_pool
functools.wrap is only warranted to work with functions and methods but
logging_pool is warranted to work with callable behaviors, so using
functools.wrap has been wrong all along.

The particular incompatibility motivating this correction is that
callable objects do not have a "__name__" attribute.
2016-01-26 21:39:24 +00:00
Nathaniel Manista a847f51c94 Move parallel RPC code to correct test method
In 4a9b1c6988 I mistakenly added statements to test
test_constants.PARALLELISM RPCs made in parallel to the
testSequentialInvocations test method rather than the
testParallelInvocations test method. How embarrassing!
2016-01-26 21:20:58 +00:00
Masood Malekghassemi 5fec8b333a Add missing import
I have no idea how this mistake got through.
2016-01-25 16:16:50 -08:00
Masood Malekghassemi caf164ac54 Merge pull request #4821 from soltanmm/install-doctor
Add compiler error diagnostics to Python setup
2016-01-25 13:04:30 -08:00
Craig Tiller 8b052112f2 Merge github.com:grpc/grpc into sceq 2016-01-25 08:09:23 -08:00
Craig Tiller d8e6f8d4f5 Merge github.com:grpc/grpc into sceq 2016-01-22 19:24:23 -08:00
Masood Malekghassemi 0cc27920f8 Integrate zlib into Python distribution 2016-01-22 16:39:24 -08:00
Masood Malekghassemi 58a1dc2bb3 Add compiler error diagnostics to Python setup 2016-01-22 16:11:33 -08:00
Bogdan Drutu fc65bf07e6 Merge pull request #4750 from a-veitch/tag_set
Census Tag Set API and implementation
2016-01-22 15:34:34 -08:00
Nathaniel Manista ac9e1cbe3d Merge pull request #4830 from soltanmm/going-slightly-mad
Fix broken Python package builds.
2016-01-22 11:44:40 -08:00
Masood Malekghassemi 14a0a93c79 Fix broken Python package builds
I'd been incorrectly using indirection against Cython's build_ext
module.
2016-01-21 20:13:24 -08:00
Nathaniel Manista 4a9b1c6988 Fix a defect in RPC Framework Core
On the service-side, an operation isn't successfully completed with
just the conclusion of transmission to the other side; local ingestion
of the status and code must be completed as well before termination
callbacks are called.
2016-01-21 22:26:05 +00:00
David Garcia Quintas 12fc53f21f Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-20 15:42:17 -08:00
Nathaniel Manista be31d46865 A test of the Cython Channel
This exposes a bug somewhere in how channel connectivity events get
published on completion queues. Investigation remains active.
2016-01-20 00:01:34 +00:00
Craig Tiller b22aeae462 Merge github.com:grpc/grpc into sceq 2016-01-15 21:13:52 -08:00
Craig Tiller 694cf8b0d2 Shared subchannel sketch 2016-01-15 21:13:25 -08:00
Alistair Veitch 0923126cf8 Merge branch 'master' into tag_set 2016-01-15 17:57:56 -08:00
David Garcia Quintas aa9b01c7c0 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-15 14:19:17 -08:00
Craig Tiller 21c0ebf6d4 Merge pull request #4653 from murgatroid99/release-0_12_master_merge
Release 0 12 master merge
2016-01-14 12:47:37 -08:00
David Garcia Quintas 88447cbbad Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-14 11:38:21 -08:00
Masood Malekghassemi 1d17781795 Check compiler versions at Python setup time 2016-01-14 06:55:06 -08:00
Masood Malekghassemi 59994bcc3e Warn on Python proto module build failure 2016-01-14 06:55:06 -08:00
murgatroid99 a97b531d0f Generated projects again 2016-01-13 11:43:01 -08:00
Alistair Veitch 0f690721bd Move encode/decode API into census.h 2016-01-13 09:08:38 -08:00
David Garcia Quintas 23f28a9b2c Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-12 15:41:59 -08:00
David Garcia Quintas bcc6d0118b Updated grpc_core_dependencies.py 2016-01-12 10:49:43 -08:00
murgatroid99 3466c4b55d Updated copyrights 2016-01-12 10:26:04 -08:00
Nathaniel Manista 4cdb6247a6 Merge pull request #4457 from soltanmm/plate-tectonics
Include core in Python distribution.
2016-01-12 08:26:52 -08:00
Masood Malekghassemi 387e116fd6 Use BoringSSL for Python gRPC 2016-01-11 11:32:42 -08:00
Masood Malekghassemi 6d2ef17f30 Use default gRPC roots.pem if none provided 2016-01-11 11:32:42 -08:00
Hyunjun Kim 34206222f0 Fix docstring typos in python grpc interfaces 2016-01-08 12:21:18 +09:00
Masood Malekghassemi 0467295ee6 Fail test build if protoc can't be found 2016-01-07 09:43:42 -08:00
Masood Malekghassemi 116982ea89 Include core in Python distribution 2016-01-07 09:43:42 -08:00
jboeuf bbb94bd6fc Merge pull request #4562 from ctiller/ints
Switch to using C99 types for fixed size integers
2016-01-06 12:50:53 -08:00
Masood Malekghassemi 8525354f4f Use stdint for Cython code 2016-01-04 15:46:08 -08:00
Nathaniel Manista 27f62432f5 Remove ceiling on required protobuf version
This is possible now that https://github.com/google/protobuf/issues/855
is fixed (or at least appears to be fixed).
2016-01-04 19:17:09 +00:00
Masood Malekghassemi f872c6aa9f Fix Python test timeouts
We've been assuming that the server upon invoking start was started.
This has been false; invoking start means that the server will
eventually be started, and to make this reliably observable requires
passing control to core.
2015-12-21 13:07:39 -08:00
Masood Malekghassemi 6b09780f1a Fix typo in Python test harness 2015-12-16 23:27:01 -08:00
Masood Malekghassemi b5a1806029 Python version bump 2015-12-14 18:42:26 -08:00
Craig Tiller 46ab778aa0 Merge pull request #4397 from jtattermusch/tv_sec_64bit
Make gpr_timespec platform agnostic.
2015-12-11 13:11:52 -08:00
Jan Tattermusch a6b2c4ce46 Get rid of SSL_CERT_FILE env entirely 2015-12-10 17:09:06 -08:00
Jan Tattermusch 88086373db make gpr_timespec platform agnostic 2015-12-10 15:04:59 -08:00
Masood Malekghassemi 0f1bf32387 Add metadata auth plugin API support 2015-12-07 17:10:55 -08:00
Masood Malekghassemi 25ef5c8fad Unskip cygrpc tests 2015-12-07 17:10:55 -08:00
Masood Malekghassemi ae873a60f5 Remove unnecessary adapter files 2015-12-07 17:10:55 -08:00
Masood Malekghassemi f21dc7edfb Migrate to Cython 2015-12-07 17:10:55 -08:00
Masood Malekghassemi aed42a895e Update Cython gRPC code 2015-12-07 17:10:55 -08:00
Masood Malekghassemi 13ee18261a Use value equality for status codes 2015-12-07 17:10:55 -08:00
Masood Malekghassemi eaa7d203b5 Fix interop Python test invocation
The ideal fix would be to have a tox test command for running the
interop server and client.
2015-12-07 15:52:46 -08:00
Masood Malekghassemi 070b91c3f2 Generate coverage HTML reports for Jenkins 2015-12-04 17:26:07 -08:00
Masood Malekghassemi d00241e65c Use tox 2015-12-04 17:26:07 -08:00
Masood Malekghassemi 7566c9a85d Make Python testing predictable again
This reorganizes the Python code, scraps the current testing
infrastructure, and implements a simple test discovery and run script
based on the standard Python unittest library so we can trust that our
tests are running.
2015-12-03 16:59:14 -08:00
Nathaniel Manista 2533365bf4 Fixes to stub and server lifecycle
Context management is implemented.

Stub deletion now cancels all RPCs immediately.
2015-12-03 00:55:25 +00:00
Nathaniel Manista e0abeeaa6d Migrate _termination_action into _End
For a termination action to properly mark an _End as having stopped it
must clear the _End's _cycle attribute. To be able to do that the
termination action must hold a reference to the _End instance.
Migrating the _termination_action behavior that creates termination
actions into the scope of the _End instance is the best way to afford
the needed instance reference.
2015-12-03 00:45:56 +00:00
Julien Boeuf 232d625a84 Merge branch 'master' of github.com:grpc/grpc into core_creds_api_change 2015-11-17 20:55:13 -08:00
Jan Tattermusch 7fc77e06ba Merge pull request #4139 from grpc/release-0_11
Merge release-0_11 into master
2015-11-18 00:22:04 +00:00
Julien Boeuf 675b5ce861 Merge branch 'master' of github.com:grpc/grpc into core_creds_api_change 2015-11-17 15:05:45 -08:00
Masood Malekghassemi 7fdfe1afd8 Bandaid over differences in the C API for Python credentials 2015-11-17 13:49:33 -08:00
Masood Malekghassemi 36297accb6 Update Python C wrapping layers to new credentials API 2015-11-04 15:17:31 -08:00
Nathaniel Manista 51741d20e3 Add a useful __str__ method to face exceptions 2015-11-04 21:47:31 +00:00
Masood Malekghassemi d292131093 Remove alpha tests
Warnings will be emitted when trying to import through alpha packages.
2015-10-26 13:51:33 -07:00
Masood Malekghassemi 5a65bcd48c Bring Cython tests back online 2015-10-07 16:19:45 -07:00
Nathaniel Manista d57411e2a5 Merge pull request #3414 from soltanmm/relup
Update Python release number to 0.11.0b1.
2015-09-22 15:24:43 -07:00
Masood Malekghassemi 6ee0bb1e74 Update Python release to 0.11.0b1 2015-09-22 13:54:22 -07:00
Masood Malekghassemi 2449d312ee Merge pull request #3323 from nathanielmanistaatgoogle/dependencies
Further maintenance of Python dependencies
2015-09-22 11:43:46 -07:00
Nathaniel Manista 8c2c44b5c6 Fix erroneous attribute name.
This defect was introduced in 9e4d0610ea. I had thought that
this code was exercised in tests but it is bypassed by the use of
grpc_test.beta.test_utilities.not_really_secure_channel. :-(
2015-09-22 18:19:02 +00:00
Nathaniel Manista a1880228aa Further maintenance of Python dependencies
These changes probably should have been in 3b0fefb246 but
were overlooked.
2015-09-10 22:16:04 +00:00
Masood Malekghassemi 38fc0bb3d5 Fix Python docgen
The old package directory handling was stale in grpcio's setup.py
command support module and docgen had a typo.
2015-09-10 08:57:40 -07:00
Masood Malekghassemi 6c99ad0b76 Python version set to 0.11.0b0 2015-09-10 08:30:51 -07:00
Masood Malekghassemi 46ac611f1d Merge pull request #3279 from nathanielmanistaatgoogle/context-management
Make servers and stubs context managers
2015-09-09 00:18:25 -04:00
Nathaniel Manista 3b0fefb246 Beta maintenance of Python dependencies
(1) Move dependency on protobuf from grpcio to grpcio_test. While the
most-commonly-foreseen use case of grpcio makes use of protobuf,
technically protobuf is not strictly needed and there's no actual
in-code relationship between grpcio and protobuf.

(2) Loosen the dependency on protobuf from ==3.0.0a3 to >=3.0.0a3.

(3) Update all references to 0.10.0* to 0.11.0.

(4) Alphabetize the grpcio_test dependencies.
2015-09-08 19:13:22 +00:00
Nathaniel Manista c824eb4e90 Make servers and stubs context managers
Servers and stubs were context managers in the Alpha API; they may not
need to be in the Beta API but it's easy enough to do, eases migration,
and probably helps some use cases.

For now the stub is given empty __enter__ and __exit__ methods; we can
always come back and implement the actual work of context management in
a later change.
2015-09-08 19:03:18 +00:00
Nathaniel Manista f65d3c1102 Beta API clean-ups
(1) Renamed the "beta" module "implementations" because it hasn't been
monolithic since "interfaces" was factored out of it a few changes
back.

(2) Moved ChannelConnectivity from grpc.beta.beta to
grpc.beta.interfaces since it is constants that don't depend on the
beta implementation.

(3) Moved the Server interface definition from grpc.beta.beta to
grpc.beta.interfaces since it is an interface.

(4) Dropped the "create_" prefix from "create_<...>_channel" functions
to better match the other creation functions throughout the codebase.
2015-09-05 03:55:19 +00:00
Nathaniel Manista 41abb052b8 gRPC protocol objects 2015-09-05 02:46:43 +00:00
Nathaniel Manista 13db8e517d Plumb protocol objects through RPC Framework core 2015-09-04 23:44:27 +00:00
Nathaniel Manista d2aa1cf0ba Initial work on protocol objects 2015-09-03 20:31:16 +00:00
Masood Malekghassemi bfe8719e78 Merge pull request #3205 from nathanielmanistaatgoogle/method-not-found
Respond with UNIMPLEMENTED when a requested method is not found
2015-09-02 19:37:57 -04:00
Nathaniel Manista 1d750d6ca2 UNIMPLEMENTED status for methods not found 2015-09-02 21:10:48 +00:00
Nathaniel Manista 69210e598b Add code and details to base.Outcome
It may seem weird that code and details would travel along two paths
now instead of one but it makes sense after considering that sometimes
the code and details are application data from the remote application
and sometimes they are transport data from the transport between the
local and remote applications.
2015-09-02 21:10:44 +00:00
Masood Malekghassemi d45d55c39b Expose per-call credentials to Python 2015-09-02 09:40:15 -07:00
Nathaniel Manista 2402078be3 Bump Python version to 0.11 and status to Beta 2015-09-01 15:13:59 +00:00
Nathaniel Manista 65ad41f53b Fixes for bugs found during manual use
(1) In _ingestion, it's the "details" attribute of a
NoSuchMethodException that we want. The "message" is inherited from the
base Exception class.

(2) In _transmission, use a proper sum type for representing operation
abortion. Trying to overload the existing _completion value for
status-and-details-when-aborting was trying to be too clever.

(3) In _calls... oof. Just look. Oof. Test coverage for this code path
is added.

(4) In _service, the application-provided
face.MultiMethodImplementation isn't directly callable, but rather
exposes a method named "service".

(5) In crust.implementations, the wrapping that we've put around the
application-provided face.MultiMethodImplementation *is* directly
callable, and *does not* expose a method named "service".

(6) Also in crust.implementations, base.NoSuchMethodError's constructor
takes a code value and a details value.

(7) Again in crust.implementations, the application-provided
face.MultiMethodImplementation may be None, and if it is None, we
shouldn't wrap it with an adaptation function that would only raise a
TypeError at a later time.
2015-08-31 21:29:12 +00:00
Nathaniel Manista 99355ce1cc Metadata plumbing and serialization tweaks
(1) Plumb the metadata transformer given at the Beta API through to the
InvocationLink where it will be used.

(2) In both InvocationLink and ServiceLink, if there isn't a registered
serializer or deserializer, just pass the payload through rather than
ignoring the entire RPC.
2015-08-31 09:26:13 +00:00
Nathaniel Manista 9e4d0610ea The rest of the Python Beta API 2015-08-31 08:54:06 +00:00
Nathaniel Manista 154e762ae8 Fix gRPC links lifecycle tracking 2015-08-30 18:44:56 +00:00
Nathaniel Manista 1d14618a0e Fix grace period bug in _end.accept_ticket
Tickets should not be ignored if the end is in a grace period; rather
they should be ignored if they are for an unrecognized (likely new)
operation and the end is in a grace period.
2015-08-29 19:18:22 +00:00
Yang Gao 036bf58b28 Merge pull request #3075 from jboeuf/credentials_naming_and_cleanup
Credentials naming and cleanup
2015-08-28 15:48:22 -07:00
Nathaniel Manista cf08a881fb Merge pull request #3126 from nathanielmanistaatgoogle/servicelink-shut-down
Made ServiceLink shut-down a two step process.
2015-08-28 14:44:05 -07:00
Julien Boeuf 6c7185d350 Merge branch 'master' of github.com:grpc/grpc into credentials_naming_and_cleanup 2015-08-28 14:33:17 -07:00
Nathaniel Manista 4354f3e680 Make ServiceLink shut-down a two step process 2015-08-28 21:08:25 +00:00
Masood Malekghassemi 42188d21ec Merge pull request #3128 from nathanielmanistaatgoogle/add_port
Accept addresses rather than ports in add_port
2015-08-28 16:24:58 -04:00
Nathaniel Manista 6e6ddbec91 Accept addresses rather than ports in add_port 2015-08-28 16:37:38 +00:00
Nathaniel Manista 4b41ba249d Two fixes in grpc.framework.core._end
(1) Call "cancel" on each future, not on the list of futures.

(2) If and when futures mature their actions should simply abort all
outstanding operations and cancel any other futures. They should not
shut down the _End's internal thread pool; only the termination action
of the last operation to terminate should shut down the pool (in the
case of their having been active operations at the time at which the
_End's stop(grace) method was called).
2015-08-28 15:48:23 +00:00
Nathaniel Manista 0908c23c44 Expand force_client_auth to old ServerCredentials 2015-08-28 03:04:04 +00:00
Julien Boeuf 63720d4ecf Python service account cleanup. 2015-08-27 17:22:16 -07:00
Julien Boeuf fe4bacb641 Merge branch 'credentials_naming_and_cleanup' of github.com:jboeuf/grpc into credentials_naming_and_cleanup 2015-08-27 15:49:27 -07:00
Nathaniel Manista 7dc25d3ca6 Add force_client_auth to _low.ServerCredentials 2015-08-27 20:08:42 +00:00
Craig Tiller 08348334e5 Merge pull request #2947 from jboeuf/grpc_security_abi
First draft at addressing #1799 for grpc_security.
2015-08-27 12:43:25 -07:00
Masood Malekghassemi 41d2b291eb Merge pull request #3093 from nathanielmanistaatgoogle/channel
The Beta API Channel
2015-08-27 12:33:20 -04:00
Masood Malekghassemi 967caaada0 Merge pull request #3052 from nathanielmanistaatgoogle/crust
The RPC Framework crust package
2015-08-27 00:17:05 -04:00
Nathaniel Manista 8e3dc00d93 The Beta API Channel 2015-08-27 03:15:06 +00:00
Masood Malekghassemi f61897df57 Merge pull request #3044 from nathanielmanistaatgoogle/no-such-method-code-and-message
Add code and message to base.NoSuchMethodError
2015-08-26 14:47:48 -04:00
Julien Boeuf 510a920c75 Credentials cleanup:
- Removing service_accounts credentials. These credentials just have
  drawbacks compared to service_account_jwt_access credentials, notably
  in terms for security.
- Renaming Google specific credentials with a Google prefix for C and
  C++. This should be done as well for wrapped languages.
2015-08-25 21:51:07 -07:00
Julien Boeuf c5b570f97e Adding void* at then end of security related method in order to have a stable ABI. 2015-08-25 17:47:55 -07:00
Nathaniel Manista 4c8288ec01 The RPC Framework crust package 2015-08-25 22:17:59 +00:00
Masood Malekghassemi 62597fdf96 Merge pull request #3047 from nathanielmanistaatgoogle/status
Status code conformance in grpc._links
2015-08-25 12:34:52 -04:00
Nathaniel Manista 815604fdcd Add code and message to base.NoSuchMethodError
This is part of support for applications being able to respond to RPCs
with unrecognized names with specific codes and messages.
2015-08-25 05:01:01 +00:00
Masood Malekghassemi e289e52436 Merge pull request #3038 from nathanielmanistaatgoogle/four-fixes
Four small Python bugfixes
2015-08-24 18:50:07 -07:00
Masood Malekghassemi 7c70bc2673 Merge pull request #3045 from nathanielmanistaatgoogle/parameter-reassignment
Fix parameter reassignment defect
2015-08-24 18:45:43 -07:00
Nathaniel Manista 7b92bae20e Status code conformance in grpc._links 2015-08-25 00:56:25 +00:00
Masood Malekghassemi 8c4549aec7 Merge pull request #3039 from nathanielmanistaatgoogle/transport-objects
Add a "transport" field to links.Ticket
2015-08-24 15:07:55 -07:00
Nathaniel Manista c9dc74b2cd Fix parameter reassignment defect
This defect was introduced in 515b0a9352.
2015-08-24 21:59:03 +00:00
Nathaniel Manista e75ee388e1 Merge pull request #2969 from soltanmm/gravity-well
Add cancel_all_calls to Python server.
2015-08-24 13:40:35 -07:00
Nathaniel Manista 2432c224d9 Add a "transport" field to links.Ticket
This will be used for communication of transport-specific values and
objects up to applications.
2015-08-24 18:49:45 +00:00
Nathaniel Manista 9faff0e2b1 Four small bugfixes
(1) In grpc._links.service._Kernel.add_ticket, premetadata() the call
if it has not already been premetadataed for any non-None ticket
termination, not just links.Ticket.Termination.COMPLETION.

(2) In grpc.framework.core._reception, add an entry to
_REMOTE_TICKET_TERMINATION_TO_LOCAL_OUTCOME for REMOTE_FAILURE.
REMOTE_FAILURE on a received ticket indicates the remote side of the
operation blaming the local side for operation abortion.

(3) In grpc.framework.core._reception.ReceptionManager._abort, only
abort the operation's other managers if the operation has not already
terminated, as indicated by the "outcome" attribute of the
TerminationManager.

(4) In grpc.framework.core._reception.ReceptionManager._abort, don't
transmit the outcome to the other side of the operation. Either it came
from the other side in the first place and to send it back would be
telling the other side something it already knows, or it arose from a
network failure and there's no confidence that it would reach the other
side.
2015-08-24 18:10:55 +00:00
Nathaniel Manista 79c9b358d9 The face interface of RPC Framework.
This is the public API of the old face package of RPC Framework
extracted into a first-class interface and adapted to metadata, status,
and flow control.
2015-08-24 16:59:09 +00:00
Masood Malekghassemi 03d281ab1b Merge pull request #2968 from nathanielmanistaatgoogle/nathaniel-core
The RPC Framework core package.
2015-08-23 15:14:36 -07:00
Nathaniel Manista f36e1b74b5 The RPC Framework core package.
This is the second generation of the old base package (framework.base)
and implements the translation between the new links and base
interfaces.
2015-08-21 18:33:02 +00:00
Masood Malekghassemi 41a166f97b Add cancel_all_calls to Python server
Also format _low_test.py to fit within the 80 character fill-limit and
re-style test assertions.
2015-08-20 15:26:09 -07:00
Stanley Cheung dbeb1cd90c update debian install instructions 2015-08-19 14:39:05 -07:00
Yang Gao 4836492061 Merge pull request #2972 from ctiller/get-reserved-things-right
Add some reserved checks that need to be present
2015-08-19 09:59:48 -07:00
Mikołaj Siedlarek c3134bc955 Allow customization of thread pool size in Python. 2015-08-19 15:24:07 +02:00
Craig Tiller 4275899297 Sprinkle reserved = NULL around 2015-08-18 10:34:32 -07:00
Nathaniel Manista 9df83ab9e2 The base interface of RPC Framework
This is the public API of the old base package of RPC Framework
extracted into a first-class interface and adapted to metadata, status,
and flow control.
2015-08-17 19:49:53 +00:00
Nicolas "Pixel" Noble f123443aa5 Merge branch 'master' of github.com:grpc/grpc into the-ultimate-showdown 2015-08-13 23:40:04 +02:00
Nathaniel Manista 515b0a9352 Service-side read without allowance
This compensates for the abstraction mismatch described in issue 2916.
2015-08-13 17:22:21 +00:00
Nicolas "Pixel" Noble d9745cab08 Merge branch 'master' of github.com:grpc/grpc into the-ultimate-showdown
Conflicts:
	src/ruby/ext/grpc/rb_channel.c
2015-08-13 02:07:12 +02:00
Nathaniel Manista 52988afdc8 Merge pull request #2878 from soltanmm/expose
Expose new core functionality to Python.
2015-08-12 13:35:57 -07:00
Masood Malekghassemi be55ca770d Expose new core functionality to Python 2015-08-12 11:59:55 -07:00
Nicolas "Pixel" Noble 9b6248fc6d Merge branch 'master' of github.com:grpc/grpc into the-ultimate-showdown
Conflicts:
	src/node/ext/call.cc
	src/node/ext/channel.cc
2015-08-12 19:53:03 +02:00
Nathaniel Manista 2bd1fe82f9 Merge pull request #2826 from soltanmm/typo-fix
Fix debug annotation typo in Python.
2015-08-12 08:23:52 -07:00
Nicolas "Pixel" Noble b457cd831a Merge remote-tracking branch 'google/master' into the-ultimate-showdown
Conflicts:
	src/csharp/ext/grpc_csharp_ext.c
2015-08-12 01:14:17 +02:00
Nicolas "Pixel" Noble faddd3c3f9 Fixing Python after the merge. 2015-08-08 02:20:43 +02:00
Nicolas "Pixel" Noble 9d72b149a9 Merge branch 'master' of github.com:grpc/grpc into the-ultimate-showdown
Conflicts:
	include/grpc/grpc.h
	src/core/surface/channel.c
	src/core/surface/channel_create.c
	src/core/surface/completion_queue.c
	src/cpp/client/channel.cc
	src/cpp/client/insecure_credentials.cc
	src/csharp/ext/grpc_csharp_ext.c
	src/node/ext/call.cc
	src/node/ext/channel.cc
	src/php/ext/grpc/call.c
	src/php/ext/grpc/channel.c
	src/python/grpcio/grpc/_adapter/_c/types/channel.c
	src/ruby/ext/grpc/rb_channel.c
	test/core/end2end/dualstack_socket_test.c
	test/core/end2end/fixtures/chttp2_fullstack.c
	test/core/end2end/fixtures/chttp2_fullstack_compression.c
	test/core/end2end/fixtures/chttp2_fullstack_uds_posix.c
	test/core/end2end/fixtures/chttp2_fullstack_with_poll.c
	test/core/end2end/multiple_server_queues_test.c
	test/core/end2end/no_server_test.c
	test/core/end2end/tests/bad_hostname.c
	test/core/end2end/tests/cancel_after_accept.c
	test/core/end2end/tests/cancel_after_accept_and_writes_closed.c
	test/core/end2end/tests/cancel_after_invoke.c
	test/core/end2end/tests/cancel_before_invoke.c
	test/core/end2end/tests/cancel_in_a_vacuum.c
	test/core/end2end/tests/census_simple_request.c
	test/core/end2end/tests/disappearing_server.c
	test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls.c
	test/core/end2end/tests/empty_batch.c
	test/core/end2end/tests/graceful_server_shutdown.c
	test/core/end2end/tests/invoke_large_request.c
	test/core/end2end/tests/max_concurrent_streams.c
	test/core/end2end/tests/max_message_length.c
	test/core/end2end/tests/ping_pong_streaming.c
	test/core/end2end/tests/registered_call.c
	test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c
	test/core/end2end/tests/request_response_with_metadata_and_payload.c
	test/core/end2end/tests/request_response_with_payload.c
	test/core/end2end/tests/request_response_with_payload_and_call_creds.c
	test/core/end2end/tests/request_response_with_trailing_metadata_and_payload.c
	test/core/end2end/tests/request_with_compressed_payload.c
	test/core/end2end/tests/request_with_flags.c
	test/core/end2end/tests/request_with_large_metadata.c
	test/core/end2end/tests/request_with_payload.c
	test/core/end2end/tests/server_finishes_request.c
	test/core/end2end/tests/simple_delayed_request.c
	test/core/end2end/tests/simple_request.c
	test/core/end2end/tests/simple_request_with_high_initial_sequence_number.c
	test/core/fling/client.c
	test/core/fling/server.c
	test/core/surface/lame_client_test.c
2015-08-08 01:45:38 +02:00
Masood Malekghassemi 6107bf457a Set Python user-agent string 2015-08-06 13:33:07 -07:00
Masood Malekghassemi 1116b0b4fb Fix debug annotation typo in Python 2015-08-06 12:37:05 -07:00
Yang Gao e5b0459299 Merge pull request #2750 from ctiller/propagate
Core-supported context propagation
2015-08-06 09:39:51 -07:00
Nathaniel Manista 7098b1ba64 Merge pull request #2746 from soltanmm/user-agent
Add project metadata generation to Python.
2015-08-05 17:48:46 -07:00
Masood Malekghassemi 5c147631d3 Add project metadata generation to Python 2015-08-05 16:08:05 -07:00
Craig Tiller a600d58551 Merge github.com:grpc/grpc into propagate 2015-08-05 10:44:45 -07:00
Craig Tiller c5ae3eb8d6 Rename grpc_server_add_http2_port to grpc_server_add_insecure_http2_port 2015-08-03 10:42:22 -07:00
Craig Tiller 6728bef3b1 Merge branch 'propagate' of github.com:ctiller/grpc into propagate
Conflicts:
	src/core/surface/channel.c
2015-08-01 16:12:04 -07:00
Craig Tiller fa44f18516 Merge github.com:grpc/grpc into propagate
Conflicts:
	src/core/surface/channel.c
2015-08-01 16:11:03 -07:00
Craig Tiller e1b0e6ee12 s/inherit/propagate/g 2015-07-31 17:07:31 -07:00
Craig Tiller 99e61645ce Update wrappers, tests to new create_call() 2015-07-31 17:01:47 -07:00
Masood Malekghassemi 2b84162bd4 Use py.test from run_tests.py
Also updates the version of grpcio_test. Now that grpcio and its tests
are in different project packages, the version numbers should be kept in
sync.
2015-07-31 14:13:11 -07:00
Masood Malekghassemi 791cc31a49 Enable Python testing and coverage 2015-07-31 14:11:06 -07:00
Masood Malekghassemi 623b7aee4a Reorganize Python tests 2015-07-30 16:40:00 -07:00
Masood Malekghassemi fe8dc883d0 Reorganize Python packages
This is in preparation of moving all tests into a separate package to
enable ease of coverage checking and testing.
2015-07-30 16:25:55 -07:00