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.0rc1.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.0rc1-py2.py3-none-win_arm64.whl (3.6 MB view details)

Uploaded Python 2Python 3Windows ARM64

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

Uploaded Python 2Python 3Windows x86-64

protobuf_protoc_bin-36.0rc1-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.0rc1-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.0rc1-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.0rc1.tar.gz.

File metadata

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

File hashes

Hashes for protobuf_protoc_bin-36.0rc1.tar.gz
Algorithm Hash digest
SHA256 d1f9716d2c48d0e22c5ba7cabaf75c69d05a54c150bc80c3ef1fd251b0ef4c39
MD5 46a6a5db41a0d362cef2b2bade6c1f53
BLAKE2b-256 0a8bfb88494b5f049e467ee52aec74d0968536722b3de83b71a748751057c4cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc1-py2.py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 664eea222cfc60d321a89408507941cadad552bb044fb8e33646ffe1799ed7e6
MD5 be6a22efba162f2e978e1ec719af01b3
BLAKE2b-256 af9d3881ae800e9bc4ead4456d942daa4387aaa48d0cedd382ce3fca8753b4e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc1-py2.py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 74585c843202c1014186286ecd91c459400a3c79963905805e810f5785e44414
MD5 ca9093104b72e14a2c5a3e779c5d3703
BLAKE2b-256 8259169176cb75c583f3cbee8f13f65767b077e4edac64dbc5884d95d3bef448

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc1-py2.py3-none-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 fd64404263609893ba8ee7e96818173c1dc14da227dd65f07bc706d723497d76
MD5 e128c3d310af8d1cea21acc9eb08685f
BLAKE2b-256 2d2d2e3e1ce6cce10e9172d89431b4d7f70644eee9d32d6862c32d5d621c8d06

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc1-py2.py3-none-manylinux_2_24_aarch64.whl
Algorithm Hash digest
SHA256 3d47760999cf46f190ee2980d8ae9d3c421b4d4519d9cbda12058cdd5156c146
MD5 7530afdb9b76927511394bca190e33b5
BLAKE2b-256 3363d14dc56118c3e2dafe1c2996331d17bce1a2624ee321be51425f44db96e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for protobuf_protoc_bin-36.0rc1-py2.py3-none-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 f6ae9ff79d7b65dbaf00419c6538912bed5063a61c9227bd032ecaf10099e0f0
MD5 f9eed0237c1693b6b1b373065bba24b0
BLAKE2b-256 05d64241d1f95063909c7d53d7cd587a2ab0eedd0845e1471ee70547138efe0d

See more details on using hashes here.

Release history Release notifications | RSS feed

36.1

6 files

36.0

6 files

This release

36.0rc1 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