All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- FullCLR versions of PowerShell (5.1 and below) now invoke Chocolatey through the native API instead of the Choco.exe CLI by default
- Initial handling of Choco.exe path after installation
- Prevent install of Choco.exe from contaminating the pipeline
- Set first use of Native API to use same install path as Choco.exe default, even if not already installed
- Support for invoking Chocolatey through the native API on FullClR (PowerShell 5.1 and below)
- Automatic packaging and deployment via CI/CD
- Support for CoreCLR-based PowerShell (7.0.1 or higher) (#8)
- Support for CoreCLR-based PowerShell (7.1 or higher) (#8)
- Availability via PSGallery on CoreCLR-based PowerShell (7.1 or higher)
- Uninstall behavior to also remove all unnecessary dependencies
- Suppress Choco prompts during uninstall and upgrade actions
- Package and Choco.exe installation can run without confirmation prompts by passing the
-AcceptLicense
flag (#4)
- Choco.exe once again installs automatically after TLS 1.2 changes to chocolatey.org (#3)
- Thanks to @kendr1ck for help with this
- Choco.exe installed automatically without any user prompts if -Force flag is passed (#1)
- Searching/installing/managing multiple Chocolatey sources
- DSC Compatibility, including additional package arguments
- 'Upgrade' packages using the 'latest' required version keyword
- Thanks to @matthewprenger for help with this
- 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 choco.exe
- Common logic, such as building commands, sending them to choco.exe, and parsing results, are consolidated across multiple PackageManagement cmdlets into a single set of helper functions
- Get-Package no longer lists 'chocolatey' twice
- Improved performance when downloading large packages with embedded installers
- 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