Skip to content

Rewrite

Compare
Choose a tag to compare
@ethanbergstrom ethanbergstrom released this 23 Oct 14:00
· 42 commits to master since this release
9e66867

Refactor of the module with several feature additions

Added

  • Searching/installing/managing multiple Chocolatey sources (#5)
  • DSC Compatibility, including additional package arguments
  • 'Upgrade' packages using the 'latest' required version keyword (#14)
  • Package and Choco.exe installation can run without confirmation prompts by passing the -AcceptLicense flag (#17)
  • Support for CoreCLR-based PowerShell (7.0.1 or higher) (#18)
  • Availability via PSGallery on CoreCLR-based PowerShell (#18)

Changed

  • To facilitate readability, broke up main module file into several function files
  • Grouped by 'public' functions used by PackageManagement vs 'private' functions that contain much of the shared logic for interacting with Chocolatey
  • Common logic, such as building commands, sending them to Chocolatey, and parsing results, are consolidated across multiple PackageManagement cmdlets into a single set of helper functions
  • Choco.exe installed automatically without any user prompts if -Force flag is passed
  • Uninstall behavior to also remove all unnecessary dependencies
  • Invokes Chocolatey via native API by default under PowerShell 5.1 and below for significant performance gains

Fixed

  • Get-Package no longer lists 'chocolatey' twice (#12)
  • Improved performance when downloading large packages with embedded installers
  • Choco.exe once again installs automatically after TLS 1.2 changes to chocolatey.org (#16)
  • Suppress Choco prompts during uninstall and upgrade actions

Removed

  • With Chocolatey-managed upgrades via the provider now available, the package provider no longer unilaterally upgrades Chocolatey on invocation if already installed
  • No longer displays progress bars in order to simplify passing data between functions via the pipeline in a way that's idiomatic to PowerShell