Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Protobuf Protoc Bin

PyPI - Version Auto monitoring of protobuf Build status

This Python package is an installer for protobuf's protoc compiler.

Use this package to install a specific version of protoc in your project, without having to figure out the installation externally.

This package is not maintained by or affiliated with the official protobuf group!

This repository does not host any binaries on itself. Instead, the binaries are downloaded from the official protobuf Github during package built or during source installation.

How to install

The package is hosted on PyPi at https://pypi.org/project/protobuf-protoc-bin.
It can be installed via PIP as normal with:

pip install protobuf-protoc-bin

The wheels hosted on PyPi do contain a copy of the protoc releases. You can also install this package directly from the Github source. During an installation from source, protoc will be downloaded fresh from the official Protobuf releases:

pip install "git+https://github.com/RobertoRoos/protobuf-protoc-bin.git@<tag>"

(Replacing <tag> with a version like v27.3.)

How to require

To require protoc only during a build script, include it in your pyproject.toml with:

[build-system]
requires = [..., "protobuf-protoc-bin==27.3"]
# ...

Or make it part of an additional install group in your regular environment (with the Poetry backend):

[tool.poetry.group.dev.dependencies]
protobuf-protoc-bin = "27.3"

How to develop

The following concerns only contributors to this package.

Adding a release

Each protobuf-protoc-bin release must correspond one-to-one to a Protobuf release.

To trigger a new release, simply push a new tag to the tip of the main branch that matches the protobuf release, including the leading 'v'. An example of a valid tag is v27.3.

This means multiple package releases are made from the same commit. However, the reference that triggers the CI build will affect the version assigned by setuptools_scm and therefor the protobuf release that's being packaged.

CI

A nightly workflow runs a script that looks for new Protoc releases and copies the tags into here, at the tip of the main branch. So future releases should show up fully automatically.

Platform Tags

Relevant for a binary wheel release is the platform tag, to indicate to a client which wheel should be downloaded. Separate from that is downloading the correct archive from the protoc release page. Below is a table showing known examples and their correct values. In setup.py there is logic to determine these values dynamically.

Ubuntu (arm64) Ubuntu (x64) Windows (x64) MacOS (x64)
Github runner ubuntu-24.04-arm ubuntu-latest windows-latest macos-latest
sysconfig.get_platform() linux-aarch64 linux-x86_64 win-amd64 macosx-10.13-universal2
platform.system() Linux Linux Windows Darwin
platform.architecture() ('64bit', 'ELF') ('64bit', 'ELF') ('64bit', 'WindowsPE') ('64bit', '')
Wheel platform tag manylinux_2_24_aarch64 manylinux_2_24_x86_64 win_amd64 macosx_10_13_universal2
Protoc archive name protoc-vvv-linux-aarch_64.zip protoc-vvv-linux-x86_64.zip protoc-vvv-win64.zip protoc-vvv-osx-x86_64.zip

Testing

You can locally override the version that setuptools-scm detects by writing the environment variable SETUPTOOLS_SCM_PRETEND_VERSION. This way you can easily mimic specific releases.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

protobuf_protoc_bin-36.0rc2.tar.gz (11.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

protobuf_protoc_bin-36.0rc2-py2.py3-none-win_arm64.whl (3.6 MB view details)

Uploaded Python 2Python 3Windows ARM64

protobuf_protoc_bin-36.0rc2-py2.py3-none-win_amd64.whl (3.6 MB view details)

Uploaded Python 2Python 3Windows x86-64

protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_x86_64.whl (3.7 MB view details)

Uploaded Python 2Python 3manylinux: glibc 2.24+ x86-64

protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_aarch64.whl (3.6 MB view details)

Uploaded Python 2Python 3manylinux: glibc 2.24+ ARM64

protobuf_protoc_bin-36.0rc2-py2.py3-none-macosx_10_13_universal2.whl (2.8 MB view details)

Uploaded Python 2Python 3macOS 10.13+ universal2 (ARM64, x86-64)

File details

Details for the file protobuf_protoc_bin-36.0rc2.tar.gz.

File metadata

  • Download URL: protobuf_protoc_bin-36.0rc2.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for protobuf_protoc_bin-36.0rc2.tar.gz
Algorithm Hash digest
SHA256 c323adae675aa76e60bc6201a2c79110434ead121f2f075d97067fa5fb454a88
MD5 f65921980e602bc9461bbd766a31420f
BLAKE2b-256 9cdaf5013ba24071006f4d4ed074a7a7db23b2270ce221bf26fda9f673fc5754

See more details on using hashes here.

File details

Details for the file protobuf_protoc_bin-36.0rc2-py2.py3-none-win_arm64.whl.

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc2-py2.py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 0e775b2e48a65f38a356b40146a5f25a126857797ab3aaa2a82a8f75aaff522c
MD5 57a1c08f55cfc1d4903aad38443830cf
BLAKE2b-256 ad8c754fea5871407e45ea5e58bf9773cf01903b690d01e7adeffc21336d88e7

See more details on using hashes here.

File details

Details for the file protobuf_protoc_bin-36.0rc2-py2.py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc2-py2.py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 7bc48370b8736dfc91d82477d8ac24efff10b7b83d61d98888a1e8861f9c9818
MD5 c9b4850e81b60965bee334a1c56f9256
BLAKE2b-256 7402e39f297ace8343b10218584cf05949040037796c4d500d6c34c19a4406df

See more details on using hashes here.

File details

Details for the file protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 8923eb96dcc9c01a9e3b2720f9f04d0b9fc671047cb8727c79a6d4385d95f199
MD5 29766f0c37f3f167ff15120022c6b39f
BLAKE2b-256 890a94e14e5569e2607edbe6f7ade8823852977714bca9a61ef4da9d1407b89d

See more details on using hashes here.

File details

Details for the file protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_aarch64.whl.

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc2-py2.py3-none-manylinux_2_24_aarch64.whl
Algorithm Hash digest
SHA256 472d677f0596934f6ca0209d747c15a626c1ba7f211b9f60c77026cf3a92f62c
MD5 4f3882ff27970b343614ef4c3d7d2c82
BLAKE2b-256 a17a52601d555e055badd5c4083cd71d230828aaf806a3cd429312a81818ed29

See more details on using hashes here.

File details

Details for the file protobuf_protoc_bin-36.0rc2-py2.py3-none-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc2-py2.py3-none-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 a2157968f134c61f824d55fcfb17e54b4902253026f4305df321eb504cbb3167
MD5 c30abd55b726c5419514b6c6ff88427b
BLAKE2b-256 b35f55c10861169f5c225f43ad202840fa915d9ef2a4fbf8fee1327c755cd27d

See more details on using hashes here.

Release history Release notifications | RSS feed

36.1

6 files

36.0

6 files

This release

36.0rc2 This release

6 files

35.1

6 files

35.0

6 files

34.2

6 files

34.1

6 files

34.0

6 files

33.6

6 files

33.5

6 files

33.4

5 files

33.3

5 files

33.2

5 files

33.1

4 files

33.0

4 files

32.1

4 files

32.0

4 files

31.1

4 files

31.0

4 files

30.2

4 files

30.1

4 files

30.0

4 files

29.6

6 files

29.5

4 files

29.4

4 files

29.3

4 files

29.2

4 files

29.1

4 files

29.0

4 files

28.3

4 files

28.2

4 files

28.1

4 files

28.0

4 files

27.5

4 files

27.4

4 files

27.3

4 files

27.2

4 files

27.1

4 files

27.0

4 files

26.1

4 files

26.0

4 files

25.9

6 files

25.8

4 files

25.7

4 files

25.6

4 files

25.5

4 files

25.4

4 files

25.3

4 files

25.2

4 files

24.4

4 files

22.0

4 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page