Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand

Downloads:

543,508

Downloads of v 31.1.0:

42,064

Last Update:

29 May 2025

Package Maintainer(s):

Software Author(s):

  • Google

Tags:

Protocol Buffers

  • 1
  • 2
  • 3

31.1.0 | Updated: 29 May 2025

Downloads:

543,508

Downloads of v 31.1.0:

42,064

Software Author(s):

  • Google

Protocol Buffers 31.1.0

Legal Disclaimer: Neither this package nor Chocolatey Software, Inc. are affiliated with or endorsed by Google. The inclusion of Google trademark(s), if any, upon this webpage is solely to identify Google goods or services and not for commercial purposes.

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Successful:

No detections found in any package files

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Protocol Buffers, run the following command from the command line or from PowerShell:

>

To upgrade Protocol Buffers, run the following command from the command line or from PowerShell:

>

To uninstall Protocol Buffers, run the following command from the command line or from PowerShell:

>

Deployment Method:

NOTE

This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade protoc -y --source="'INTERNAL REPO URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade protoc -y --source="'INTERNAL REPO URL'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install protoc
  win_chocolatey:
    name: protoc
    version: '31.1.0'
    source: INTERNAL REPO URL
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'protoc' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '31.1.0'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller protoc
{
    Name     = "protoc"
    Version  = "31.1.0"
    Source   = "INTERNAL REPO URL"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'protoc':
  ensure   => '31.1.0',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 29 May 2025.

Description

Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.

This is chocolatey package for the prebuilt Protocol Buffers Compiler.

Features

  • Flexible, efficient, automated mechanism for serializing structured data – think XML, but smaller, faster, and simpler.
  • Define how you want your data to be structured once, then use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages.
  • Update your data structure without breaking deployed programs that are compiled against the "old" format.

legal\LICENSE.txt
Copyright 2008 Google Inc.  All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
    * Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Code generated by the Protocol Buffer compiler is owned by the owner
of the input file used when generating it.  This code is not
standalone and requires a support library to be linked with it.  This
support library is itself covered by the above license.
legal\VERIFICATION.txt
VERIFICATION
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

The zip file have been downloaded from the github release page on <https://github.com/protocolbuffers/protobuf/releases>
and can be verified like this:

1. Download the following:
  32-bit zip file: <https://github.com/protocolbuffers/protobuf/releases/download/v31.1/protoc-31.1-win32.zip>
  64-bit zip file: <https://github.com/protocolbuffers/protobuf/releases/download/v31.1/protoc-31.1-win64.zip>
2. You can use one of the following methods to obtain the checksum
  - Use powershell function 'Get-Filehash'
  - Use chocolatey utility 'checksum.exe'

  checksum type: sha256
  checksum32: 74C4E34A41C654934A1F4C7D5E3F831A7B216D867717CDF730F82E1E10C1D0E2
  checksum64: 70381B116AB0D71CB6A5177D9B17C7C13415866603A0FD40D513DAFE32D56C35

File 'LICENSE' is obtained from <https://github.com/protocolbuffers/protobuf/blob/master/LICENSE>
tools\chocolateyinstall.ps1
$ErrorActionPreference = 'Stop'

$toolsPath = Split-Path $MyInvocation.MyCommand.Definition

$packageArgs = @{
  PackageName    = $Env:ChocolateyPackageName
  FileFullPath   = "$toolsPath\protoc-31.1-win32.zip"
  FileFullPath64 = "$toolsPath\protoc-31.1-win64.zip"
  Destination    = $toolsPath
}
Get-ChocolateyUnzip @packageArgs
Remove-Item $toolsPath\*.zip -ea 0
tools\protoc-31.1-win32.zip
md5: B5F53DB438F18C01033B8C0F3E569C3A | sha1: 663EF766FB24F19495700437AC7EF14E365AC357 | sha256: 74C4E34A41C654934A1F4C7D5E3F831A7B216D867717CDF730F82E1E10C1D0E2 | sha512: 300D00D6B7ACADA4DB5997F55B12950122D19EBF2107B28C253494C118285F542D4D3CF3B74CEABEFDF381E667824239D18D46A41E7014377EA4B587CB4D19CC
tools\protoc-31.1-win64.zip
md5: 6DD245EF3A2E065FDC41FBD0D0DE72D9 | sha1: 2F16A4F6E9A54F366A0CB034C3E40BA4CD73D5B9 | sha256: 70381B116AB0D71CB6A5177D9B17C7C13415866603A0FD40D513DAFE32D56C35 | sha512: 06B56F45D4C3ABECE97518D1702DAE7618096314BA1AD76538DF9F8EB7D39A9038478057F7766DDA46B248042BA133204019F191C5A513EC04AF1250EAE6B5F7

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
Protocol Buffers 31.0.0 6346 Wednesday, May 14, 2025 Approved
Protocol Buffers 30.2.0 22803 Thursday, March 27, 2025 Approved
Protocol Buffers 30.1.0 5847 Friday, March 14, 2025 Approved
Protocol Buffers 30.0.0 3825 Wednesday, March 5, 2025 Approved
Protocol Buffers 29.3.0 21396 Thursday, January 9, 2025 Approved
Protocol Buffers 29.2.0 6112 Wednesday, December 18, 2024 Approved
Protocol Buffers 29.1.0 5015 Wednesday, December 4, 2024 Approved
Protocol Buffers 29.0.0 2816 Thursday, November 28, 2024 Approved
Protocol Buffers 28.3.0 13785 Wednesday, October 23, 2024 Approved
Protocol Buffers 28.2.0 11446 Thursday, September 19, 2024 Approved
Protocol Buffers 28.1.0 1862 Wednesday, September 11, 2024 Approved
Protocol Buffers 28.0.0 4213 Thursday, August 29, 2024 Approved
Protocol Buffers 27.4.0 285 Wednesday, August 28, 2024 Approved
Protocol Buffers 27.3.0 9096 Wednesday, July 31, 2024 Approved
Protocol Buffers 27.2.0 10148 Wednesday, June 26, 2024 Approved
Protocol Buffers 27.1.0 21606 Thursday, June 6, 2024 Approved
Protocol Buffers 27.0.0 3562 Thursday, May 23, 2024 Approved
Protocol Buffers 26.1.0 17988 Thursday, March 28, 2024 Approved
Protocol Buffers 26.0.0 4028 Wednesday, March 13, 2024 Approved
Protocol Buffers 25.3.0 5803 Friday, February 16, 2024 Approved
Protocol Buffers 25.2.0 9037 Wednesday, January 10, 2024 Approved
Protocol Buffers 25.1.0 6585 Thursday, November 16, 2023 Approved
Protocol Buffers 25.0.0 4847 Thursday, November 2, 2023 Approved
Protocol Buffers 24.4.0 4572 Wednesday, October 4, 2023 Approved
Protocol Buffers 24.3.0 11414 Friday, September 8, 2023 Approved
Protocol Buffers 24.2.0 1862 Saturday, August 26, 2023 Approved
Protocol Buffers 24.1.0 1578 Saturday, August 19, 2023 Approved
Protocol Buffers 24.0.0 2048 Wednesday, August 9, 2023 Approved
Protocol Buffers 23.4.0 45151 Friday, July 7, 2023 Approved
Protocol Buffers 23.3.0 5463 Thursday, June 15, 2023 Approved
Protocol Buffers 23.2 3734 Friday, May 26, 2023 Approved
Protocol Buffers 23.1 2013 Wednesday, May 17, 2023 Approved
Protocol Buffers 23.0 1312 Tuesday, May 9, 2023 Approved
Protocol Buffers 22.4 1027 Friday, May 5, 2023 Approved
Protocol Buffers 22.3 3058 Thursday, April 13, 2023 Approved
Protocol Buffers 22.2 5432 Saturday, March 11, 2023 Approved
Protocol Buffers 22.1 755 Wednesday, March 8, 2023 Approved
Protocol Buffers 22.0 2701 Friday, February 17, 2023 Approved
Protocol Buffers 21.12 19379 Friday, December 16, 2022 Approved
Protocol Buffers 3.20.2 14188 Thursday, September 15, 2022 Approved
Protocol Buffers 3.20.1 15278 Friday, April 22, 2022 Approved
Protocol Buffers 3.20.0 1556 Saturday, March 26, 2022 Approved
Protocol Buffers 3.19.4 35101 Friday, January 28, 2022 Approved
Protocol Buffers 3.19.3 918 Tuesday, January 11, 2022 Approved
Protocol Buffers 3.19.2 560 Thursday, January 6, 2022 Approved
Protocol Buffers 3.19.1 2287 Friday, October 29, 2021 Approved
Protocol Buffers 3.19.0 682 Thursday, October 21, 2021 Approved
Protocol Buffers 3.18.1 952 Tuesday, October 5, 2021 Approved
Protocol Buffers 3.17.3 8512 Tuesday, June 8, 2021 Approved
Protocol Buffers 3.17.2 680 Thursday, June 3, 2021 Approved
Protocol Buffers 3.17.1 544 Monday, May 24, 2021 Approved
Protocol Buffers 3.17.0 579 Thursday, May 13, 2021 Approved
Protocol Buffers 3.16.0 518 Friday, May 7, 2021 Approved
Protocol Buffers 3.15.8 1121 Thursday, April 8, 2021 Approved
Protocol Buffers 3.15.7 362 Saturday, April 3, 2021 Approved
Protocol Buffers 3.15.6 14471 Friday, March 12, 2021 Approved
Protocol Buffers 3.15.5 535 Friday, March 5, 2021 Approved
Protocol Buffers 3.15.4 306 Thursday, March 4, 2021 Approved
Protocol Buffers 3.15.3 415 Friday, February 26, 2021 Approved
Protocol Buffers 3.15.2 296 Wednesday, February 24, 2021 Approved
Protocol Buffers 3.15.1 164 Saturday, February 20, 2021 Approved
Protocol Buffers 3.15.0 1558 Friday, February 19, 2021 Approved
Protocol Buffers 3.14.0 2207 Thursday, December 3, 2020 Approved
Protocol Buffers 3.12.3 15736 Wednesday, June 3, 2020 Approved
Protocol Buffers 3.12.2 922 Wednesday, May 27, 2020 Approved
Protocol Buffers 3.12.1 864 Thursday, May 21, 2020 Approved
Protocol Buffers 3.12.0 1186 Saturday, May 16, 2020 Approved
Protocol Buffers 3.12.0-rc-2 253 Wednesday, May 13, 2020 Approved
Protocol Buffers 3.12.0-rc-1 230 Monday, May 4, 2020 Approved
Protocol Buffers 3.11.4 17597 Saturday, February 15, 2020 Approved
Protocol Buffers 3.11.3 493 Monday, February 3, 2020 Approved
Protocol Buffers 3.11.2 857 Saturday, December 14, 2019 Approved
Protocol Buffers 3.11.1 436 Tuesday, December 3, 2019 Approved
Protocol Buffers 3.11.0 420 Tuesday, November 26, 2019 Approved
Protocol Buffers 3.11.0-rc-2 248 Saturday, November 23, 2019 Approved
Protocol Buffers 3.11.0-rc-1 276 Thursday, November 21, 2019 Approved
Protocol Buffers 3.10.1 618 Wednesday, October 30, 2019 Approved
Protocol Buffers 3.10.0 791 Thursday, October 3, 2019 Approved
Protocol Buffers 3.9.2 372 Monday, September 30, 2019 Approved
Protocol Buffers 3.8.0 2853 Friday, June 7, 2019 Approved
Protocol Buffers 3.6.1 15434 Monday, September 24, 2018 Approved
Protocol Buffers 3.6.0 9140 Wednesday, July 25, 2018 Approved
Protocol Buffers 3.5.1 3720 Monday, March 19, 2018 Approved
Protocol Buffers 3.2.0 11302 Monday, April 3, 2017 Approved
Protocol Buffers 3.1.0 1406 Thursday, November 3, 2016 Approved
Protocol Compiler 2.6.1 1846 Friday, April 17, 2015 Approved
Discussion for the Protocol Buffers Package

Ground Rules:

  • This discussion is only about Protocol Buffers and the Protocol Buffers package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Protocol Buffers, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus