Commit Graph

31 Commits

Author SHA1 Message Date
Richard Belleville e609ad88c9
Update protobuf to v21.6 (#31015)
* Update third_party/protobuf

* run tools/distrib/python/make_grpcio_tools.py

* update build_handwritten.yaml

* regenerate projects

* Update Python version floor
2022-09-16 17:50:52 -07:00
Richard Belleville 2297249e47
Support Python 3.11 (#30818)
* Support Python 3.11

* Update build images for 3.11

* Whoopsie

* The architecture of this thing is garbage

* Silence ownership warning

* Account for change in git behavior

* Fix directory

* I am in great pain

* Update Windows and arm linux

* Agh

* Clean up
2022-09-12 11:53:44 -07:00
Richard Belleville 38b0c2f446
Update protobuf on ancillary packages (#30795) 2022-08-30 12:15:56 -07:00
Lidi Zheng 0f60be8e8a
Increase the Python protobuf requirement to >=3.12.0 (#28604) 2022-01-18 13:32:54 -08:00
Lidi Zheng 9978223a26
Add python_requires field to grpcio-* packages (#27495)
- Update the run_tests.py and distrib tests
- Update the Dockerfiles
2021-09-28 16:01:15 -07:00
Lidi Zheng 4729f6fdcc
Add Python 3.10 drop 3.5 (#26074)
* Add Python 3.10.0rc1 binary wheels

* Drop Python 3.5 artifacts

* Document the drop of 3.5

* Fix the wrong pip pointer

* Update manylinux2014 to a newer version, remove 3.5 distribtest

* Update manylinux aarch64 to see if the absl error go away

* Use the preferred alias

* Allow different wheel library to produce different tag order

* Remove unused shell var and log produced wheels

* Use copy instead of move

* Make bash happy about the wildcard

* Upgrade the debian image to use 3.5+ Python

* Polish the comments for the Dockerfiles
2021-09-02 14:02:53 -07:00
Lidi Zheng 2231c2ba77
Introduce Python import sorting to our sanity test suite (#26768)
* Add isort_code.sh to sanity tests

* Run tools/distrib/isort_code.sh

* Fine tune the import order for relative imports

* Make pylint and project generation happy

* Fix a few corner cases

* Use --check instead of --diff

* The import order impacts test result somehow

* Make isort print diff and check output at the same time

* Let tools/run_tests/python_utils be firstparty library

* Run isort against latest HEAD
2021-07-26 12:31:21 -07:00
Lidi Zheng 5820e152cd
Remove Python 2.7 binary wheel generations (#26691)
* Remove Python 2.7 binary wheels

* Make sure pip won't pick-up newer versions

* Attempt to fix the distribtest

* Fallback to virtualenv==16.7.9 for 34 and 35

* Remove 34 from binary wheel distribtests
2021-07-23 08:20:39 -07:00
Lidi Zheng 4fa90f42ce Support pre-compiled Python 3.9 wheels 2020-10-07 12:43:45 -07:00
Esun Kim 7be821ac47 Yapf all target python sources 2020-01-03 09:25:10 -08:00
Lidi Zheng 8ab1672c88 Release 3.8 wheels 2019-10-15 15:59:06 -07:00
Richard Belleville 5d95bf037d Actually include README.rst in all packages 2019-05-20 14:21:25 -07:00
Lidi Zheng 5584d58e6c Add LICENSE to grpcio-* packages
* Using the proprocess command to copy the LICENSE
2018-12-05 15:25:48 -08:00
Jan Tattermusch bc8495da7a upgrade python to protobuf 3.6.0 2018-08-07 14:28:40 +02:00
Mehrdad Afshari 8e9baf35bd Bump protobuf runtime dependency versions 2018-04-19 02:07:59 -04:00
Mehrdad Afshari 87cd994b04 Upgrade yapf to 0.20.0
Upgrade yapf version to 0.20.0 and reformat Python files.
2018-01-02 14:40:00 -08:00
Mehrdad Afshari 0df9c8acdc Update Python dependency to protobuf v3.5.0.post1 2017-11-27 12:52:41 -08:00
Mehrdad Afshari 90dbd2b670 Alter health/reflection packages' build criterion
Using the presence of the `*_pb2_grpc` module, as opposed to the absence
of the build script (`*_commands` module) is a problematic choice,
because even if a generated file is present, the test infrastructure may
want to regenerate it under a different environment (e.g. different
Python/proto package version).  This will ensure the protos always get
recompiled if we have a `*_commands` module present, signaling we are in
a build environment, thereby making the process hermetic.
2017-11-20 18:37:34 -08:00
Mehrdad Afshari 9d1ba2efd9 Fix grpcio_{health_checking,reflection} packaging
The previous packaging structure exhibited strange behavior of
slowness when trying to use pip to install grpcio-reflection
or grpcio-health-checking in a single line with grpcio-tools.

The root cause seems to be the complicated interaction between
pip and setuptools and the fact that we ship a single .tar.gz
"source" archive for `grpcio_reflection` and
`grpcio_health_checking` packages.  `pip` tries to build this
"source" package, and our build process wants to generate
code for the `.proto` files in the package.  However, we have
already processed the `.proto` files into `_pb2.py` files in
our artifact build process, and installing `grpcio_tools`
to get `grpcio_{reflection,health_checking}` seems excessive.
The behavior gets worse since `setuptools`, while building
the package from source, tries to fetch `grpcio_tools` from
source and build that too.  This takes a while, since it
involves compiling a bunch of native code from `protobuf` and
`grpc` and requires a C compiler to boot.

This commit modifies the Python artifact for the two packages
so that they will not include the raw `.proto` files in the
distribution uploaded to PyPI, nor would they contain the
Python module that does the preprocessing code generation
from the respective .proto files.  Instead, a specific code
path is taken when the generated `_pb2_grpc` Python module is
not present in the package to provide such functionality
when built from the gRPC git repository (and hence when built
from our CI infrastructure.)
2017-11-15 16:36:25 -08:00
Ken Payson f5f5ed0305 Fix syntax error on classifiers 2017-08-24 11:46:03 -07:00
Ken Payson 9c420447fa Add classifiers to package details 2017-07-25 12:06:46 -07:00
Mehrdad Afshari bb3d95b643 Use https://grpc.io consistently as the canonical URL 2017-07-10 22:24:28 +00:00
Jan Tattermusch 4d5c3102a1 fix remaining license notices 2017-06-08 11:22:41 +02:00
Jan Tattermusch 7897ae9308 auto-fix most of licenses 2017-06-08 11:22:41 +02:00
Ken Payson 029090628d Upgrade protobuf to 3.3.0 2017-05-08 12:18:12 -07:00
Ken Payson 78354300bf Add package details to gRPC Packages 2017-03-10 10:47:45 -08:00
Mehrdad Afshari 9b3c73d1cd Updated protobuf dependency for python to 3.2.0 2017-03-07 22:10:15 +00:00
Ken Payson 2fa5f2f978 Re-run yapf code, and pin version 2017-02-06 10:27:09 -08:00
Masood Malekghassemi cc793703bf Run Python formatting 2017-01-17 10:55:33 -08:00
Masood Malekghassemi fb261bf748 Un-namespace Python packages
Setuptools was updated and our hacky namespace-package-chickens came
back to roost. This removes the unsupported namespace package hacks.
2016-12-12 15:04:30 -08:00
Masood Malekghassemi aff6936cf7 Partially implement gRPC Python server reflection
Some features relating to proto2 extension querying are missing due to
missing upstream features required to support them (see
https://github.com/google/protobuf/issues/2248).
2016-10-20 12:47:06 -07:00