Add existing to tracked
This commit is contained in:
+1
@@ -0,0 +1 @@
|
||||
pip
|
||||
+174
@@ -0,0 +1,174 @@
|
||||
Metadata-Version: 2.4
|
||||
Name: grpcio-tools
|
||||
Version: 1.80.0
|
||||
Summary: Protobuf code generator for gRPC
|
||||
Author-email: The gRPC Authors <grpc-io@googlegroups.com>
|
||||
License-Expression: Apache-2.0
|
||||
Project-URL: Homepage, https://grpc.io
|
||||
Project-URL: Source Code, https://github.com/grpc/grpc/tree/master/tools/distrib/python/grpcio_tools
|
||||
Project-URL: Bug Tracker, https://github.com/grpc/grpc/issues
|
||||
Classifier: Development Status :: 5 - Production/Stable
|
||||
Classifier: Programming Language :: Python
|
||||
Classifier: Programming Language :: Python :: 3
|
||||
Requires-Python: >=3.9
|
||||
Description-Content-Type: text/x-rst
|
||||
Requires-Dist: protobuf<7.0.0,>=6.31.1
|
||||
Requires-Dist: grpcio>=1.80.0
|
||||
Requires-Dist: setuptools>=77.0.1
|
||||
Dynamic: requires-dist
|
||||
Dynamic: requires-python
|
||||
|
||||
gRPC Python Tools
|
||||
=================
|
||||
|
||||
Package for gRPC Python tools.
|
||||
|
||||
Supported Python Versions
|
||||
-------------------------
|
||||
Python >= 3.6
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
The gRPC Python tools package is available for Linux, macOS, and Windows.
|
||||
|
||||
Installing From PyPI
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you are installing locally...
|
||||
|
||||
::
|
||||
|
||||
$ pip install grpcio-tools
|
||||
|
||||
Else system wide (on Ubuntu)...
|
||||
|
||||
::
|
||||
|
||||
$ sudo pip install grpcio-tools
|
||||
|
||||
If you're on Windows make sure that you installed the :code:`pip.exe` component
|
||||
when you installed Python (if not go back and install it!) then invoke:
|
||||
|
||||
::
|
||||
|
||||
$ pip.exe install grpcio-tools
|
||||
|
||||
Windows users may need to invoke :code:`pip.exe` from a command line ran as
|
||||
administrator.
|
||||
|
||||
n.b. On Windows and on macOS one *must* have a recent release of :code:`pip`
|
||||
to retrieve the proper wheel from PyPI. Be sure to upgrade to the latest
|
||||
version!
|
||||
|
||||
You might also need to install Cython to handle installation via the source
|
||||
distribution if gRPC Python's system coverage with wheels does not happen to
|
||||
include your system.
|
||||
|
||||
Installing From Source
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Building from source requires that you have the Python headers (usually a
|
||||
package named :code:`python-dev`) and Cython installed. It further requires a
|
||||
GCC-like compiler to go smoothly; you can probably get it to work without
|
||||
GCC-like stuff, but you may end up having a bad time.
|
||||
|
||||
::
|
||||
|
||||
$ export REPO_ROOT=grpc # REPO_ROOT can be any directory of your choice
|
||||
$ git clone -b RELEASE_TAG_HERE https://github.com/grpc/grpc $REPO_ROOT
|
||||
$ cd $REPO_ROOT
|
||||
$ git submodule update --init
|
||||
|
||||
$ cd tools/distrib/python/grpcio_tools
|
||||
$ python ../make_grpcio_tools.py
|
||||
|
||||
# For the next command do `sudo pip install` if you get permission-denied errors
|
||||
$ GRPC_PYTHON_BUILD_WITH_CYTHON=1 pip install .
|
||||
|
||||
You cannot currently install Python from source on Windows. Things might work
|
||||
out for you in MSYS2 (follow the Linux instructions), but it isn't officially
|
||||
supported at the moment.
|
||||
|
||||
Troubleshooting
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
Help, I ...
|
||||
|
||||
* **... see compiler errors on some platforms when either installing from source or from the source distribution**
|
||||
|
||||
If you see
|
||||
|
||||
::
|
||||
|
||||
/tmp/pip-build-U8pSsr/cython/Cython/Plex/Scanners.c:4:20: fatal error: Python.h: No such file or directory
|
||||
#include "Python.h"
|
||||
^
|
||||
compilation terminated.
|
||||
|
||||
You can fix it by installing `python-dev` package. i.e
|
||||
|
||||
::
|
||||
|
||||
sudo apt-get install python-dev
|
||||
|
||||
If you see something similar to:
|
||||
|
||||
::
|
||||
|
||||
third_party/protobuf/src/google/protobuf/stubs/mathlimits.h:173:31: note: in expansion of macro 'SIGNED_INT_MAX'
|
||||
static const Type kPosMax = SIGNED_INT_MAX(Type); \\
|
||||
^
|
||||
|
||||
And your toolchain is GCC (at the time of this writing, up through at least
|
||||
GCC 6.0), this is probably a bug where GCC chokes on constant expressions
|
||||
when the :code:`-fwrapv` flag is specified. You should consider setting your
|
||||
environment with :code:`CFLAGS=-fno-wrapv` or using clang (:code:`CC=clang`).
|
||||
|
||||
Usage
|
||||
-----
|
||||
|
||||
Given protobuf include directories :code:`$INCLUDE`, an output directory
|
||||
:code:`$OUTPUT`, and proto files :code:`$PROTO_FILES`, invoke as:
|
||||
|
||||
::
|
||||
|
||||
$ python -m grpc_tools.protoc -I$INCLUDE --python_out=$OUTPUT --grpc_python_out=$OUTPUT $PROTO_FILES
|
||||
|
||||
To use as a build step in setuptools-based projects, you may use the provided
|
||||
command class in your :code:`setup.py`:
|
||||
|
||||
::
|
||||
|
||||
setuptools.setup(
|
||||
# ...
|
||||
cmdclass={
|
||||
'build_proto_modules': grpc_tools.command.BuildPackageProtos,
|
||||
}
|
||||
# ...
|
||||
)
|
||||
|
||||
Invocation of the command will walk the project tree and transpile every
|
||||
:code:`.proto` file into a :code:`_pb2.py` file in the same directory.
|
||||
|
||||
Note that this particular approach requires :code:`grpcio-tools` to be
|
||||
installed on the machine before the setup script is invoked (i.e. no
|
||||
combination of :code:`setup_requires` or :code:`install_requires` will provide
|
||||
access to :code:`grpc_tools.command.BuildPackageProtos` if it isn't already
|
||||
installed). One way to work around this can be found in our
|
||||
:code:`grpcio-health-checking`
|
||||
`package <https://pypi.python.org/pypi/grpcio-health-checking>`_:
|
||||
|
||||
::
|
||||
|
||||
class BuildPackageProtos(setuptools.Command):
|
||||
"""Command to generate project *_pb2.py modules from proto files."""
|
||||
# ...
|
||||
def run(self):
|
||||
from grpc_tools import command
|
||||
command.build_package_protos(self.distribution.package_dir[''])
|
||||
|
||||
Now including :code:`grpcio-tools` in :code:`setup_requires` will provide the
|
||||
command on-setup as desired.
|
||||
|
||||
For more information on command classes, consult :code:`setuptools` documentation.
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
../../../../../../../Library/Caches/com.apple.python/Users/jay/testing/@sideCards/tools/.venv/lib/python3.9/site-packages/grpc_tools/__init__.cpython-39.pyc,,
|
||||
../../../../../../../Library/Caches/com.apple.python/Users/jay/testing/@sideCards/tools/.venv/lib/python3.9/site-packages/grpc_tools/command.cpython-39.pyc,,
|
||||
../../../../../../../Library/Caches/com.apple.python/Users/jay/testing/@sideCards/tools/.venv/lib/python3.9/site-packages/grpc_tools/grpc_version.cpython-39.pyc,,
|
||||
../../../../../../../Library/Caches/com.apple.python/Users/jay/testing/@sideCards/tools/.venv/lib/python3.9/site-packages/grpc_tools/protoc.cpython-39.pyc,,
|
||||
../../../../../../../Library/Caches/com.apple.python/Users/jay/testing/@sideCards/tools/.venv/lib/python3.9/site-packages/grpc_tools/python_version.cpython-39.pyc,,
|
||||
../../../bin/python-grpc-tools-protoc,sha256=HLNlJgVtwDQlVNSEZut6BmyZa-4vin8vbQ0UDlcIleo,265
|
||||
grpc_tools/__init__.py,sha256=SxD-ymrdM7hKoDGjCDjcA3TSaFadaSZ9kDtinr0Droo,577
|
||||
grpc_tools/_proto/google/protobuf/any.proto,sha256=vPXebORjsaOP92t3lVqn5YC07BKvNKknsdRcnvsPr2Y,6154
|
||||
grpc_tools/_proto/google/protobuf/api.proto,sha256=naqFihxSn0f51O0bwt8Nq2FUrUL5nPA1Gz2p1Nr_jrA,7729
|
||||
grpc_tools/_proto/google/protobuf/compiler/plugin.proto,sha256=fjnlljCh8BGNcVv9D-NIHBYN4hRP9ZUsXj7SCizk-oI,8556
|
||||
grpc_tools/_proto/google/protobuf/cpp_features.proto,sha256=wM9-hphZYrcNfiAeZGrRCXBxfyLI3TOK-0F95Dd0_5U,2185
|
||||
grpc_tools/_proto/google/protobuf/descriptor.proto,sha256=QovXz8dMTlPcqwbTcICqWJRSwvkzYLy6zNXR14pQ6LE,57489
|
||||
grpc_tools/_proto/google/protobuf/duration.proto,sha256=o_cwH_KVbsLjDCJB7OBxl-SobHUjSNVgciSBnUkhyf4,4892
|
||||
grpc_tools/_proto/google/protobuf/empty.proto,sha256=7O89VMyeB5ZzuYFsZ7rHcPfzv22totRZa6adcdqpceY,2363
|
||||
grpc_tools/_proto/google/protobuf/field_mask.proto,sha256=F7DzQsw6Ji4xfVaITz9XWvv6xRKtBXk0nMdFDkHyaJE,8185
|
||||
grpc_tools/_proto/google/protobuf/go_features.proto,sha256=LszrrwacFcejrI113S_c0PEwe_mUlp_NbRt9Y6WrVIU,2521
|
||||
grpc_tools/_proto/google/protobuf/java_features.proto,sha256=pkYTdwIlZ4HcTT8IpOCnjJMjcAknQH4ltsYNsv9j-kc,4835
|
||||
grpc_tools/_proto/google/protobuf/source_context.proto,sha256=N9NAHeia8dFJb8lJkkpfIBG9L6376w2hyqJ3FZqWd20,2341
|
||||
grpc_tools/_proto/google/protobuf/struct.proto,sha256=G_B7qLmiTjoDkN3aw60NtBxjKH0lJ4iwI5giC5q8kA8,3778
|
||||
grpc_tools/_proto/google/protobuf/timestamp.proto,sha256=FAUsYELB3S0LUCRfKBLqq26vgtsLbozkg-rlJ_c7bug,6449
|
||||
grpc_tools/_proto/google/protobuf/type.proto,sha256=4jDg5K64fJXp8casv8DHE9s_iAlPFJsVRxelHQIPdQs,6367
|
||||
grpc_tools/_proto/google/protobuf/wrappers.proto,sha256=aHjcdTTPmAXu5WNFzcOLXpyjneziRnEMZjxwB6Z_70k,5392
|
||||
grpc_tools/_protoc_compiler.cpython-39-darwin.so,sha256=a2y3CQtcUn-YBQ6_Vs5LTmRbQeDkkZMR0DN1Nam7ojk,21801728
|
||||
grpc_tools/command.py,sha256=ctTkpH7couQHO-ZPtB3-wEfS6BHUUXwA9Q88SW4xX-s,3022
|
||||
grpc_tools/grpc_version.py,sha256=hgd5LQUKIfcTffbk79Gdh4275XqvfS9DVyap7oczJL0,716
|
||||
grpc_tools/protoc.py,sha256=7guL4ZuNxxYJLP11RHWymXUm8v6HQ9hE8w3dYAkpb98,8043
|
||||
grpc_tools/python_version.py,sha256=Q5GPFKlWfl3dJwhnKI59vt8_CRq2SmGf-BBFZVVVwJc,822
|
||||
grpcio_tools-1.80.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
||||
grpcio_tools-1.80.0.dist-info/METADATA,sha256=MVZp2zHa_FmgH4DoAx_2i_QjCpFDPGNeG0GqEqBrO4Y,5315
|
||||
grpcio_tools-1.80.0.dist-info/RECORD,,
|
||||
grpcio_tools-1.80.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
grpcio_tools-1.80.0.dist-info/WHEEL,sha256=HAbxP-PwK8ruAjxCt4zkeKiDs85zKozwoNHglAKCG00,108
|
||||
grpcio_tools-1.80.0.dist-info/entry_points.txt,sha256=SUA-11aADRRasv7jBfguVtnoqPtQm3gf9vSaLuMhPZw,74
|
||||
grpcio_tools-1.80.0.dist-info/top_level.txt,sha256=87-PeMJ9gHMiRlUPAx2Yi7Bk14I34SOlTpgZsxhhz-c,11
|
||||
@@ -0,0 +1,5 @@
|
||||
Wheel-Version: 1.0
|
||||
Generator: setuptools (82.0.1)
|
||||
Root-Is-Purelib: false
|
||||
Tag: cp39-cp39-macosx_11_0_x86_64
|
||||
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
[console_scripts]
|
||||
python-grpc-tools-protoc = grpc_tools.protoc:entrypoint
|
||||
+1
@@ -0,0 +1 @@
|
||||
grpc_tools
|
||||
Reference in New Issue
Block a user