PyPI packaged Protocol Buffers Compiler
Project description
Python Protoc Executable
PyPI packaged Protocol Buffers Compiler
A PyPI package providing a pip-installable protoc executable.
This package does not provide any Python code, it provides just the unaltered
protoc
executable. The versioning thus also follows the official versioning
of protoc
, and is different to the versioning of the protobuf runtime.
The difference of this package to protoc-wheel and protoc-wheel-0 is that
those packages wrap the protoc
in Python. Whereas this package provides just
the protoc
executable, without anything else. As a consequence you can
directly call protoc
after installing this package in your environment. This
makes it perfect for providing the protoc
executable wherever you need the
actual thing to be available in your PATH
, e.g. together with buf (if you do
you might want to check out buf-exe as well).
Note that this project is not affiliated with or endorsed by Google or the Protobuf team. The
-exe
suffix in the name was chosen to ensure that theprotoc
name stays available, just in case there ever is going to be an official package.
Warning the redistribution process is not yet fully automated, as I am in the process of building the tooling. Currently only the latest
protoc
release is available, and it was created semi-manually with the scripts you currently see in the repository. The plan is to fully automate everything, and provide newprotoc
releases with 24 hours.
Usage
Simply use protoc
as the executable in whatever process abstraction you are
using, regardless of your operating system. The only requirement is that your
PATH
is set correctly so that the protoc
(or protoc.exe
on Windows) is
found. For instance, you could use pip
and a basic virtual environment:
# example.py
import subprocess
subprocess.check_call(["command", "-v", "protoc"])
subprocess.check_call(["protoc", "--version"])
cd /tmp
python -m venv venv
source venv/bin/activate
pip install protoc-exe
command -v protoc # /tmp/venv/bin/protoc
protoc --version # libprotoc x.y[.z]
python example.py
# /tmp/venv/bin/protoc
# libprotoc x.y[.z]
rm -fr venv/
Note that the example uses a POSIX compliant shell, but it works on non-POSIX systems as well. Have a look at the GitHub Actions.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-win_amd64.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-win_amd64.whl
- Upload date:
- Size: 2.7 MB
- Tags: Python 2, Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc404005d362faae5f2fb13544594eae18074f1aa8a375e97380d15d2ee77c2b |
|
MD5 | 825181cb401aa2128678f1807543538e |
|
BLAKE2b-256 | aed9da1c43a2e7e86a0ca8fda702d26ad25237cf460f7558bc284929788af34d |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-win32.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-win32.whl
- Upload date:
- Size: 2.7 MB
- Tags: Python 2, Python 3, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d66eb3d0e2968be070616185b6255fc85183511ab4b599739ac8565689b6234 |
|
MD5 | 955697f9829f4fab493c84cd39456602 |
|
BLAKE2b-256 | f834fe060554b893ce822ba23a1a9730ebdab4747e0e3bc9d8905a54f2c399af |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 2.8 MB
- Tags: Python 2, Python 3, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28c92f2e2f55041acd964535ec7dc826c1076c8aab65b15a75095d09dfea9e21 |
|
MD5 | 9a9212de128634b7e092d8be2ba8a65d |
|
BLAKE2b-256 | 07ffbbce9a8c6c2f55d7290aa5d928eeadc38a72aab07b4f5f527303fd1cea1f |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 2.1 MB
- Tags: Python 2, Python 3, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70dcf4b806add8abbf979ddac3add317a1a963f7581a9ebfad05c69ed4d86c78 |
|
MD5 | 21bcd485f2dee9034e5d2c6df9360124 |
|
BLAKE2b-256 | 0840887d15548d27c6f3d99a1d10b2eb85a96ed304035bf596f37fab55dae1c6 |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 2, Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a3cebb43dbd648a15919704fb33daf0b851d862e7f33cbbe15cd07a9322ad52 |
|
MD5 | dd416d5603329136828288b958c4f489 |
|
BLAKE2b-256 | f7823d5d9523e7497c25411e379744cf4cb60f08e4cbf2ae6e595a729f4a9da2 |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 2, Python 3, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29fc83969958ec0e9f4802d8fb2f36e788174aaf00f5506d0cc32e11226ea24c |
|
MD5 | c7d3b881ca5d3e328983895bec480555 |
|
BLAKE2b-256 | 010d71d5c0c8f03ed8a5965b32ee890fe9d5efb1e1090a5500039c251342f9ef |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-manylinux_2_5_i686.manylinux1_i686.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 2.2 MB
- Tags: Python 2, Python 3, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e578d938aea08faf1fec8cb19f798ba129b0897caed91bd923d85a4a4aab0d37 |
|
MD5 | 3c3626de2105a042b370aaadda10643e |
|
BLAKE2b-256 | 917e6d8601b986b23832aa0c0851d862f0ff2086338bd8be2770eef8aa0641d4 |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-macosx_11_0_arm64.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 2, Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d7dc89b1693209cb0c5071765f4d5c346b2628cbba2f7966f135959599ec093 |
|
MD5 | 19870561dbf548915bd11eee5088312f |
|
BLAKE2b-256 | 0c8493606755d983124dd77bde5feba1e6900c2fc1f99b0a3a599137ab75f0bf |
File details
Details for the file protoc_exe-22.0rc1-py2.py3-none-macosx_10_4_x86_64.whl
.
File metadata
- Download URL: protoc_exe-22.0rc1-py2.py3-none-macosx_10_4_x86_64.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 2, Python 3, macOS 10.4+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f01764d1d4e572e7d55e831e437ca1df66de94a53c235b7fd22a44e0ae1a8b0 |
|
MD5 | 0798150eb18d7b7eb659cefba1aba09e |
|
BLAKE2b-256 | 49a8d59f68327d928e288d5d8db2aec0b9f60c4bf6961f62be5b24c4ca1f5570 |