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:

13,575

Downloads of v 0.64-alpha1:

1,245

Last Update:

02 Dec 2016

Package Maintainer(s):

Software Author(s):

  • Ben Gardner
  • Guy Maurel
  • Dirk Thomas
  • Dženan Zukić
  • Jakub Schmidtke
  • Joergen Ibsen
  • Mihai Popescu
  • Scott Bilas
  • Alan Fineberg
  • André Berg
  • Anirban Pramanick
  • B. Kevin Hardman
  • Ben Gardner
  • Ben Iofel
  • Beren Minor
  • Corentin Noël
  • Daniel Chumak
  • Dave Lee
  • David Catmull
  • David Schaefgen
  • Dirk Thomas
  • Dittrich
  • Rico
  • Dženan Zukić
  • Emmanuel Christophe
  • Florin Pop
  • Gary Ash
  • Ger Hobbelt
  • Gilles
  • Guy Maurel
  • Hackerpilot
  • Hannes Schmidt
  • Huang-Ming Huang
  • Ilya Lyubimov
  • Ingo Brückl
  • Ivan Nazarenko
  • Jakub Schmidtke
  • Jan Weiß
  • Jason
  • Jim Meyering
  • Joergen Ibsen
  • Jonas Hurrelmann
  • Joshua Gross
  • Julian Picht
  • Keepun
  • Lauri Kasanen
  • Leon Breedt
  • Lorenz Haas
  • Lykurg
  • Marek Fort
  • Marius Zwicker
  • Markus Geimer
  • Martin Simonovsky
  • Matthew McDole
  • MeXx
  • Mihai Popescu
  • Mike
  • Mirko König
  • Nate
  • Nico Decker
  • Oleg Smolsky
  • Owen Rudge
  • Pat Notz
  • Paul Smith
  • PerfectCarl
  • Peter Hartley
  • Peter Waller
  • RaveTheTadpole
  • Roland Schulz
  • Ryan Maxwell
  • S. Gilles
  • Scott Bilas
  • Shazron Abdullah
  • Siddharth Kannan
  • Stephen Gilles
  • Tim Hütz
  • Timotheus Pokorra
  • Todd Richmond
  • Twigz
  • Vadim Zeitlin
  • Vincent Rouillé
  • Vyacheslav Shegai

Tags:

uncrustify beautify beautifier c# c c++ objectivec d java pawn vala

Uncrustify

This is a prerelease version of Uncrustify.

  • 1
  • 2
  • 3

0.64-alpha1 | Updated: 02 Dec 2016

Downloads:

13,575

Downloads of v 0.64-alpha1:

1,245

Software Author(s):

  • Ben Gardner
  • Guy Maurel
  • Dirk Thomas
  • Dženan Zukić
  • Jakub Schmidtke
  • Joergen Ibsen
  • Mihai Popescu
  • Scott Bilas
  • Alan Fineberg
  • André Berg
  • Anirban Pramanick
  • B. Kevin Hardman
  • Ben Gardner
  • Ben Iofel
  • Beren Minor
  • Corentin Noël
  • Daniel Chumak
  • Dave Lee
  • David Catmull
  • David Schaefgen
  • Dirk Thomas
  • Dittrich
  • Rico
  • Dženan Zukić
  • Emmanuel Christophe
  • Florin Pop
  • Gary Ash
  • Ger Hobbelt
  • Gilles
  • Guy Maurel
  • Hackerpilot
  • Hannes Schmidt
  • Huang-Ming Huang
  • Ilya Lyubimov
  • Ingo Brückl
  • Ivan Nazarenko
  • Jakub Schmidtke
  • Jan Weiß
  • Jason
  • Jim Meyering
  • Joergen Ibsen
  • Jonas Hurrelmann
  • Joshua Gross
  • Julian Picht
  • Keepun
  • Lauri Kasanen
  • Leon Breedt
  • Lorenz Haas
  • Lykurg
  • Marek Fort
  • Marius Zwicker
  • Markus Geimer
  • Martin Simonovsky
  • Matthew McDole
  • MeXx
  • Mihai Popescu
  • Mike
  • Mirko König
  • Nate
  • Nico Decker
  • Oleg Smolsky
  • Owen Rudge
  • Pat Notz
  • Paul Smith
  • PerfectCarl
  • Peter Hartley
  • Peter Waller
  • RaveTheTadpole
  • Roland Schulz
  • Ryan Maxwell
  • S. Gilles
  • Scott Bilas
  • Shazron Abdullah
  • Siddharth Kannan
  • Stephen Gilles
  • Tim Hütz
  • Timotheus Pokorra
  • Todd Richmond
  • Twigz
  • Vadim Zeitlin
  • Vincent Rouillé
  • Vyacheslav Shegai

Uncrustify 0.64-alpha1

This is a prerelease version of Uncrustify.

  • 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 Uncrustify, run the following command from the command line or from PowerShell:

>

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

>

To uninstall Uncrustify, 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 uncrustify -y --source="'INTERNAL REPO URL'" --version="'0.64-alpha1'" --prerelease [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 uncrustify -y --source="'INTERNAL REPO URL'" --version="'0.64-alpha1'" --prerelease
$exitCode = $LASTEXITCODE

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

Exit $exitCode

- name: Install uncrustify
  win_chocolatey:
    name: uncrustify
    version: '0.64-alpha1'
    source: INTERNAL REPO URL
    state: present
    allow_prerelease: yes

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


chocolatey_package 'uncrustify' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '0.64-alpha1'
  options  '--prerelease'
end

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


cChocoPackageInstaller uncrustify
{
    Name        = "uncrustify"
    Version     = "0.64-alpha1"
    Source      = "INTERNAL REPO URL"
    chocoParams = "--prerelease"
}

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


package { 'uncrustify':
  ensure          => '0.64-alpha1',
  install_options => ['--prerelease'],
  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.

NOTE

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

WARNING

This package is exempt from moderation. While it is likely safe for you, there is more risk involved.

Description

Banish crusty code with the Uncrustify C/C++/C#/D/Java/Pawn source code beautifier. It indents, adds newlines, aligns, etc, and is highly configurable.


tools\chocolateybeforemodify.ps1
# This runs in 0.9.10+ before upgrade and uninstall.
# Use this file to do things like stop services prior to upgrade or uninstall.
# NOTE: It is an anti-pattern to call chocolateyUninstall.ps1 from here. If you
#  need to uninstall an MSI prior to upgrade, put the functionality in this
#  file without calling the uninstall script. Make it idempotent in the
#  uninstall script so that it doesn't fail when it is already uninstalled.
# NOTE: For upgrades - like the uninstall script, this script always runs from 
#  the currently installed version, not from the new upgraded package version.

tools\chocolateyinstall.ps1

$ErrorActionPreference = 'Stop';

$packageName= 'uncrustify'
$toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
$url        = 'https://sourceforge.net/projects/uncrustify/files/uncrustify/uncrustify-0.64/uncrustify-0.64-win32.zip/download'
$url64      = 'https://sourceforge.net/projects/uncrustify/files/uncrustify/uncrustify-0.64/uncrustify-0.64-win64.zip/download'

$packageArgs = @{
  packageName   = $packageName
  unzipLocation = $toolsDir
  fileType      = 'exe'
  url           = $url
  url64bit      = $url64

  softwareName  = 'uncrustify*'

  checksum      = '3a76aa568eb3c5fefeb9e726133c8c2c48d4e0f7'
  checksumType  = 'sha1'
  checksum64    = '1dcddc67c87d50e58d0147a60b8b8b430ad2f360'
  checksumType64= 'sha1'

  silentArgs    = "/qn /norestart /l*v `"$($env:TEMP)\$($packageName).$($env:chocolateyPackageVersion).MsiInstall.log`""
  validExitCodes= @(0, 3010, 1641)
}

Install-ChocolateyZipPackage @packageArgs
tools\chocolateyuninstall.ps1
# IMPORTANT: Before releasing this package, copy/paste the next 2 lines into PowerShell to remove all comments from this file:
#   $f='c:\path\to\thisFile.ps1'
#   gc $f | ? {$_ -notmatch "^\s*#"} | % {$_ -replace '(^.*?)\s*?[^``]#.*','$1'} | Out-File $f+".~" -en utf8; mv -fo $f+".~" $f

## NOTE: In 80-90% of the cases (95% with licensed versions due to Package Synchronizer and other enhancements), you may
## not need this file due to AutoUninstaller. See https://chocolatey.org/docs/commands-uninstall

## If this is an MSI, cleaning up comments is all you need.
## If this is an exe, change installerType and silentArgs
## Auto Uninstaller should be able to detect and handle registry uninstalls (if it is turned on, it is in preview for 0.9.9).
## - https://chocolatey.org/docs/helpers-uninstall-chocolatey-package

$ErrorActionPreference = 'Stop'; # stop on all errors

$packageName = 'uncrustify'
$softwareName = 'uncrustify*' #part or all of the Display Name as you see it in Programs and Features. It should be enough to be unique
$installerType = 'EXE'

$silentArgs = '/qn /norestart'
# https://msdn.microsoft.com/en-us/library/aa376931(v=vs.85).aspx
$validExitCodes = @(0, 3010, 1605, 1614, 1641)
if ($installerType -ne 'MSI') {
  # The below is somewhat naive and built for EXE installers
  # Uncomment matching EXE type (sorted by most to least common)
  #$silentArgs = '/S'           # NSIS
  #$silentArgs = '/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-' # Inno Setup
  #$silentArgs = '/s'           # InstallShield
  #$silentArgs = '/s /v"/qn"' # InstallShield with MSI
  #$silentArgs = '/s'           # Wise InstallMaster
  #$silentArgs = '-s'           # Squirrel
  #$silentArgs = '-q'           # Install4j
  #$silentArgs = '-s -u'        # Ghost
  # Note that some installers, in addition to the silentArgs above, may also need assistance of AHK to achieve silence.
  #$silentArgs = ''             # none; make silent with input macro script like AutoHotKey (AHK)
                                #       https://chocolatey.org/packages/autohotkey.portable
  $validExitCodes = @(0)
}

$uninstalled = $false
# Get-UninstallRegistryKey is new to 0.9.10, if supporting 0.9.9.x and below,
# take a dependency on "chocolatey-uninstall.extension" in your nuspec file.
# This is only a fuzzy search if $softwareName includes '*'. Otherwise it is
# exact. In the case of versions in key names, we recommend removing the version
# and using '*'.
[array]$key = Get-UninstallRegistryKey -SoftwareName $softwareName

if ($key.Count -eq 1) {
  $key | % {
    $file = "$($_.UninstallString)"

    if ($installerType -eq 'MSI') {
      # The Product Code GUID is all that should be passed for MSI, and very
      # FIRST, because it comes directly after /x, which is already set in the
      # Uninstall-ChocolateyPackage msiargs (facepalm).
      $silentArgs = "$($_.PSChildName) $silentArgs"

      # Don't pass anything for file, it is ignored for msi (facepalm number 2)
      # Alternatively if you need to pass a path to an msi, determine that and
      # use it instead of the above in silentArgs, still very first
      $file = ''
    }

    Uninstall-ChocolateyPackage -PackageName $packageName `
                                -FileType $installerType `
                                -SilentArgs "$silentArgs" `
                                -ValidExitCodes $validExitCodes `
                                -File "$file"
  }
} elseif ($key.Count -eq 0) {
  Write-Warning "$packageName has already been uninstalled by other means."
} elseif ($key.Count -gt 1) {
  Write-Warning "$key.Count matches found!"
  Write-Warning "To prevent accidental data loss, no programs will be uninstalled."
  Write-Warning "Please alert package maintainer the following keys were matched:"
  $key | % {Write-Warning "- $_.DisplayName"}
}


## OTHER HELPERS
## https://chocolatey.org/docs/helpers-reference
#Uninstall-ChocolateyZipPackage $packageName # Only necessary if you did not unpack to package directory - see https://chocolatey.org/docs/helpers-uninstall-chocolatey-zip-package
#Uninstall-ChocolateyEnvironmentVariable # 0.9.10+ - https://chocolatey.org/docs/helpers-uninstall-chocolatey-environment-variable
#Uninstall-BinFile # Only needed if you used Install-BinFile - see https://chocolatey.org/docs/helpers-uninstall-bin-file
## Remove any shortcuts you added
tools\LICENSE.txt

Note: Include this file if including binaries you have the right to distribute. 
Otherwise delete. this file.

===DELETE ABOVE THIS LINE AND THIS LINE===

From: <insert applicable license url here>

LICENSE

<Insert License Here>
tools\VERIFICATION.txt

Note: Include this file if including binaries you have the right to distribute. 
Otherwise delete. this file.

===DELETE ABOVE THIS LINE AND THIS LINE===

VERIFICATION
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.
 
<Include details of how to verify checksum contents>

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
Uncrustify Code Beautifier 077.0 51 Friday, May 12, 2023 Approved
Uncrustify Code Beautifier 0.76.0 222 Wednesday, November 30, 2022 Approved
Uncrustify Code Beautifier 0.75.1 254 Sunday, May 15, 2022 Approved
Uncrustify Code Beautifier 0.75.0 82 Friday, May 6, 2022 Approved
Uncrustify Code Beautifier 0.74.0 4211 Monday, November 22, 2021 Approved
Uncrustify Code Beautifier 0.73.0 436 Friday, May 14, 2021 Approved
Uncrustify Code Beautifier 0.72.0 1668 Friday, February 5, 2021 Approved
Uncrustify Code Beautifier 0.71.0 554 Tuesday, May 12, 2020 Approved
Uncrustify Code Beautifier 0.70.1 428 Wednesday, December 11, 2019 Approved
Uncrustify Code Beautifier 0.69.0 3394 Thursday, May 23, 2019 Approved
Uncrustify Code Beautifier 0.68.1.20190512 173 Sunday, May 12, 2019 Approved
Uncrustify Code Beautifier 0.68.1 220 Thursday, April 25, 2019 Approved
Uncrustify 0.64-alpha1 1245 Friday, December 2, 2016 Exempted
Uncrustify 0.64-alpha0 301 Friday, December 2, 2016 Exempted

Change highlights in uncrustify-0.64 (October 2016)
-------------------------------------------------------------------------------

New:
- Support for new C#6 language elements. (Bug #672)
Expression filter with the keyword 'when' in try/catch is now supported.
Null conditional operator (?.) is now supported.

New options:
- align_var_class_span Aug 23
- align_var_class_thresh Aug 23
- align_var_class_gap Aug 23
- pos_enum_comma Aug 14
- indent_token_after_brace Aug 3
- cmt_multi_first_len_minimum Aug 2
- nl_enum_own_lines Aug 1
- nl_func_class_scope Jul 26
- nl_squeeze_ifdef_top_level Jul 24
- sp_super_paren Jul 21
- sp_this_paren Jul 21
- sp_angle_paren_empty Jul 21
- sp_after_operator_sym_empty Jul 20
- sp_skip_vbrace_tokens Jul 13
- indent_cs_delegate_brace Jul 9
- cmt_insert_before_inlines Jun 29
- cmt_insert_before_ctor_dtor Jun 29
- mod_full_brace_if_chain_only Jun 28
- nl_func_decl_start_multi_line Jun 28
- nl_func_def_start_multi_line Jun 28
- nl_func_decl_args_multi_line Jun 28
- nl_func_def_args_multi_line Jun 28
- nl_func_decl_end_multi_line Jun 28
- nl_func_def_end_multi_line Jun 28
- nl_func_call_start_multi_line Jun 28
- nl_func_call_args_multi_line Jun 28
- nl_func_call_end_multi_line Jun 28
- use_options_overriding_for_qt_macros Jun 16
- sp_func_def_paren_empty Jun 15
- sp_func_proto_paren_empty Jun 15
- sp_func_class_paren_empty Jun 15
- nl_oc_block_brace May 26
- nl_split_if_one_liner May 26
- nl_split_for_one_line May 24
- nl_split_while_one_liner May 24
- nl_after_func_class_proto May 12
- nl_after_func_class_proto_group May 12 2016

Bugfix:
- Bugs #620, #651, #654, #662, #663, #664, #670, #671, #672, #674 are fixed
- Issues #322, #323, #359, #405, #408, #412, #478, #481, #495, #503, #509, #512, #513, #514,
#518, #519, #520, #521, #522, #524, #529, #530, #533, #536, #539, #542,
#543, #544, #546, #568 are fixed
- Proposals #409, #477 are implemented
- Issue #411 is partialy fixed


This package has no dependencies.

Discussion for the Uncrustify Package

Ground Rules:

  • This discussion is only about Uncrustify and the Uncrustify 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 Uncrustify, 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