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:

435,364

Downloads of v 29.3.0:

20,697

Last Update:

09 Jan 2025

Package Maintainer(s):

Software Author(s):

  • Google

Tags:

protoc protobuf foss cross-platform

Protocol Buffers

  • 1
  • 2
  • 3

29.3.0 | Updated: 09 Jan 2025

Downloads:

435,364

Downloads of v 29.3.0:

20,697

Software Author(s):

  • Google

Protocol Buffers 29.3.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: '29.3.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  '29.3.0'
end

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


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

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


package { 'protoc':
  ensure   => '29.3.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 09 Jan 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/v29.3/protoc-29.3-win32.zip>
  64-bit zip file: <https://github.com/protocolbuffers/protobuf/releases/download/v29.3/protoc-29.3-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: C7C8028C1C4D801C53602920F2C86892054086BD965B6B23A4BA95D211DCB1D4
  checksum64: 57EA59E9F551AD8D71FFAA9B5CFBE0CA1F4E720972A1DB7EC2D12AB44BFF9383

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-29.3-win32.zip"
  FileFullPath64 = "$toolsPath\protoc-29.3-win64.zip"
  Destination    = $toolsPath
}
Get-ChocolateyUnzip @packageArgs
Remove-Item $toolsPath\*.zip -ea 0
tools\protoc-29.3-win32.zip
md5: 080CAD3CD673EDB879944D5165FE3561 | sha1: BCA7074851ECA694B6B591B4C05F46ECD2F995FC | sha256: C7C8028C1C4D801C53602920F2C86892054086BD965B6B23A4BA95D211DCB1D4 | sha512: 245F8DD6D724DEFBD092D2496FA6557C04E9063607BD735263CF6AC7F66281EBCF2274A8BDB80EF897DA87EDBCA5F54C5B371B2622AC6414ABB6337924D19527
tools\protoc-29.3-win64.zip
md5: 54D859531E103A8B049C583CA1A27B28 | sha1: 99481A0B57CCFA122EC17AC75A2F9319BA0CB6A3 | sha256: 57EA59E9F551AD8D71FFAA9B5CFBE0CA1F4E720972A1DB7EC2D12AB44BFF9383 | sha512: CE69F69FDF04D0090A453AFB3256431FB35AB7D8084A7A0AC17333C901421C16732E5DA32CB11997FAC794AE159F88EEFC58162D1E01FDE9348ABF2E24D2DE35

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 29.2.0 5925 Wednesday, December 18, 2024 Approved
Protocol Buffers 29.1.0 4948 Wednesday, December 4, 2024 Approved
Protocol Buffers 29.0.0 2799 Thursday, November 28, 2024 Approved
Protocol Buffers 28.3.0 13753 Wednesday, October 23, 2024 Approved
Protocol Buffers 28.2.0 11430 Thursday, September 19, 2024 Approved
Protocol Buffers 28.1.0 1852 Wednesday, September 11, 2024 Approved
Protocol Buffers 28.0.0 4193 Thursday, August 29, 2024 Approved
Protocol Buffers 27.4.0 266 Wednesday, August 28, 2024 Approved
Protocol Buffers 27.3.0 9079 Wednesday, July 31, 2024 Approved
Protocol Buffers 27.2.0 10130 Wednesday, June 26, 2024 Approved
Protocol Buffers 27.1.0 9274 Thursday, June 6, 2024 Approved
Protocol Buffers 27.0.0 3545 Thursday, May 23, 2024 Approved
Protocol Buffers 26.1.0 17957 Thursday, March 28, 2024 Approved
Protocol Buffers 26.0.0 4014 Wednesday, March 13, 2024 Approved
Protocol Buffers 25.3.0 5771 Friday, February 16, 2024 Approved
Protocol Buffers 25.2.0 8647 Wednesday, January 10, 2024 Approved
Protocol Buffers 25.1.0 6562 Thursday, November 16, 2023 Approved
Protocol Buffers 25.0.0 4828 Thursday, November 2, 2023 Approved
Protocol Buffers 24.4.0 4551 Wednesday, October 4, 2023 Approved
Protocol Buffers 24.3.0 9735 Friday, September 8, 2023 Approved
Protocol Buffers 24.2.0 1827 Saturday, August 26, 2023 Approved
Protocol Buffers 24.1.0 1555 Saturday, August 19, 2023 Approved
Protocol Buffers 24.0.0 2026 Wednesday, August 9, 2023 Approved
Protocol Buffers 23.4.0 38888 Friday, July 7, 2023 Approved
Protocol Buffers 23.3.0 5418 Thursday, June 15, 2023 Approved
Protocol Buffers 23.2 3712 Friday, May 26, 2023 Approved
Protocol Buffers 23.1 1973 Wednesday, May 17, 2023 Approved
Protocol Buffers 23.0 1297 Tuesday, May 9, 2023 Approved
Protocol Buffers 22.4 1000 Friday, May 5, 2023 Approved
Protocol Buffers 22.3 3039 Thursday, April 13, 2023 Approved
Protocol Buffers 22.2 5411 Saturday, March 11, 2023 Approved
Protocol Buffers 22.1 736 Wednesday, March 8, 2023 Approved
Protocol Buffers 22.0 2682 Friday, February 17, 2023 Approved
Protocol Buffers 21.12 16697 Friday, December 16, 2022 Approved
Protocol Buffers 3.20.2 14141 Thursday, September 15, 2022 Approved
Protocol Buffers 3.20.1 15239 Friday, April 22, 2022 Approved
Protocol Buffers 3.20.0 1523 Saturday, March 26, 2022 Approved
Protocol Buffers 3.19.4 35065 Friday, January 28, 2022 Approved
Protocol Buffers 3.19.3 903 Tuesday, January 11, 2022 Approved
Protocol Buffers 3.19.2 536 Thursday, January 6, 2022 Approved
Protocol Buffers 3.19.1 2264 Friday, October 29, 2021 Approved
Protocol Buffers 3.19.0 658 Thursday, October 21, 2021 Approved
Protocol Buffers 3.18.1 933 Tuesday, October 5, 2021 Approved
Protocol Buffers 3.17.3 8485 Tuesday, June 8, 2021 Approved
Protocol Buffers 3.17.2 659 Thursday, June 3, 2021 Approved
Protocol Buffers 3.17.1 525 Monday, May 24, 2021 Approved
Protocol Buffers 3.17.0 562 Thursday, May 13, 2021 Approved
Protocol Buffers 3.16.0 506 Friday, May 7, 2021 Approved
Protocol Buffers 3.15.8 1100 Thursday, April 8, 2021 Approved
Protocol Buffers 3.15.7 341 Saturday, April 3, 2021 Approved
Protocol Buffers 3.15.6 14455 Friday, March 12, 2021 Approved
Protocol Buffers 3.15.5 516 Friday, March 5, 2021 Approved
Protocol Buffers 3.15.4 289 Thursday, March 4, 2021 Approved
Protocol Buffers 3.15.3 399 Friday, February 26, 2021 Approved
Protocol Buffers 3.15.2 279 Wednesday, February 24, 2021 Approved
Protocol Buffers 3.15.1 149 Saturday, February 20, 2021 Approved
Protocol Buffers 3.15.0 1465 Friday, February 19, 2021 Approved
Protocol Buffers 3.14.0 2166 Thursday, December 3, 2020 Approved
Protocol Buffers 3.12.3 15444 Wednesday, June 3, 2020 Approved
Protocol Buffers 3.12.2 901 Wednesday, May 27, 2020 Approved
Protocol Buffers 3.12.1 841 Thursday, May 21, 2020 Approved
Protocol Buffers 3.12.0 1158 Saturday, May 16, 2020 Approved
Protocol Buffers 3.12.0-rc-2 218 Wednesday, May 13, 2020 Approved
Protocol Buffers 3.12.0-rc-1 211 Monday, May 4, 2020 Approved
Protocol Buffers 3.11.4 17571 Saturday, February 15, 2020 Approved
Protocol Buffers 3.11.3 479 Monday, February 3, 2020 Approved
Protocol Buffers 3.11.2 832 Saturday, December 14, 2019 Approved
Protocol Buffers 3.11.1 419 Tuesday, December 3, 2019 Approved
Protocol Buffers 3.11.0 401 Tuesday, November 26, 2019 Approved
Protocol Buffers 3.11.0-rc-2 233 Saturday, November 23, 2019 Approved
Protocol Buffers 3.11.0-rc-1 259 Thursday, November 21, 2019 Approved
Protocol Buffers 3.10.1 600 Wednesday, October 30, 2019 Approved
Protocol Buffers 3.10.0 771 Thursday, October 3, 2019 Approved
Protocol Buffers 3.9.2 359 Monday, September 30, 2019 Approved
Protocol Buffers 3.8.0 2839 Friday, June 7, 2019 Approved
Protocol Buffers 3.6.1 14714 Monday, September 24, 2018 Approved
Protocol Buffers 3.6.0 9117 Wednesday, July 25, 2018 Approved
Protocol Buffers 3.5.1 3703 Monday, March 19, 2018 Approved
Protocol Buffers 3.2.0 11240 Monday, April 3, 2017 Approved
Protocol Buffers 3.1.0 1387 Thursday, November 3, 2016 Approved
Protocol Compiler 2.6.1 1592 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