Releases: webmd-health-services/Whiskey
Releases · webmd-health-services/Whiskey
0.40.0
- You can now use the Environment class's static properties as Whiskey variables. Using these variables are now recommended over environment variables, since the existence of some environment variables varies between operating systems.
- Added
WHISKEY_TEMP_DIRECTORY
built-in variable to get the path to the global/system temporary directory. This uses the value returned by the .NET [Path.GetTempPath()] method. - Added
WHISKEY_TASK_TEMP_DIRECTORY
built-in variable to get the path to the currently executing task's temporary directory, which Whiskey creates/deletes as each task runs. - Created
ConvertFrom-WhiskeyContext
andConvertTo-WhiskeyContext
functions for securely serializing/deserializing Whiskey's context object into background jobs. PowerShell on Linux/MacOS can't serializeSecureString
objects. Created these functions to work around that limitation. Used by Whiskey'sParallel
andPowerShell
tasks. - Added support for tasks to define what platform/operating system they can run on with a new
Platform
property on the task attribute. If a task can only run on a specific platform, set thePlatform
property to the platform is supports, e.g.[Whiskey.TaskAttribute('SomeTask',Platform=([Whiskey.Platform]::Windows))]
. Valid platforms areWindows
,Linux
, andMacOS
. The default platform isAll
. - Added
OnlyOnPlatform
andExceptOnPlatform
common task properties that control the platforms on which a task will or will not be run. Valid platforms areWindows
,Linux
, andMacOS
. - Fixed:
ProGetUniversalPackage
task doesn''t fail the build if there were errors when adding files to the package. - Updated all tasks that use the ProGetAutomation module to default to using version 0.9.* (from 0.8.*).
0.39.0
- Whiskey can now run under PowerShell Core.
- Updated ProGet tasks to depend on ProGetAutomation 0.8.*.
- Switched
ProGetUniversalPackage
task to use native .NET compression libraries instead of 7-Zip. ProGetUniversalPackage
task should now be faster. It no longer copies files into a temporary directory before creating its package. It now adds files to the package in-place.- Created new
Zip
task for creating ZIP archives. - Whiskey no longer ships with a copy of 7-Zip. Instead, if 7-Zip is needed to install a local version of Node (only applicable on Windows due to path length restrictions), 7-Zip is downloaded from nuget.org. If you were using the version of 7-Zip in Whiskey to create ZIP archives during your build, please use the new
Zip
task instead. - Now uses robocopy.exe only on Windows to delete some files/directories. Robocopy is used to work-around Windows path restrictions when deleting items with long paths. Other platforms don't have that restriction.
- Created
Resolve-WhiskeyNodePath
function to resolve/get the path to the Node executable in a cross-platform manner. - Created
Resolve-WhiskeyNodeModulePath
function to resolve/get the path to a Node module's directory in a cross-platform manner. - Fixed: Whiskey variables fail to be resolved when specified in the key portion of a key:value property in whiskey.yml.
0.38.5
- Fixed:
GetPowerShellModule
task assumes that a module is already installed if an empty directory for that module exists in thePSModules
directory. - Fixed:
PSModules
directory isn't removed removed duringClean
mode after all contained modules have been deleted.
0.38.4
- Updating to YAML.NET 5.2.1 (from 4.2.2) because of security vulnerabilities in the old version.
- Switched to .NET Core version of YAML.NET. Whiskey now requires .NET Framework 4.6.
0.38.3
- Fixed:
ExceptBy
common task property was documented but never implemented. - Updated 7-Zip binaries to 18.05 (from 16.04) to resolve vulnerability CVE-2018-10115.
0.38.2
- Fixed:
Install-WhiskeyPowerShellModule
andResolve-WhiskeyPowerShellModule
functions may fail when NuGet package provider is not initialized.
0.38.1
- Fixed:
NUnit3
task fails to findReportGenerator
executable when usingReportGenerator-4.0.0
.
0.38.0
Version
task now supports pulling a version number from a Chef Cookbookmetadata.rb
file.- Fixed: Detecting versions of installed MSBuild fails if expected registry keys exist but expected values don't exist.
- Created
Import-WhiskeyPowerShellModule
function for importing a PowerShell module installed by Whiskey into the global scope. - Added support for PowerShell modules to the RequiresTool attribute.
- Whiskey tasks that use PowerShell modules now use Whiskey's auto-download feature to download required modules during the build.
- Fixed: publishing to the PowerShell Gallery released in September 2018 is failing. Updating to PowerShellGet 2.0.0 and PackageManagement 1.1.7.2.
- Created
Npm
task for running NPM commands. - Deprecated the
NpmConfig
,NpmInstall
,NpmPrune
, andNpmRunScript
tasks. They will be removed in a future version of Whiskey. Use the newNpm
task instead. - The
NodeNspCheck
task is obsolete (and will actually stop working when the NSP project shuts down on 30 September 2018). Migrate to theNpm
task and use it to run thenpm audit
command. - Created
DotNet
task for running dotnet.exe commands. - Deprecated the
DotNetBuild
,DotNetPack
,DotNetPublish
, andDotNetTest
tasks. They will be removed in a future version of Whiskey. Use the newDotNet
task instead. - Fixed: Pester output is duplicated.
0.37.1
- Fixed: Detecting versions of installed MSBuild fails if expected registry keys exist but expected values don't exist.
0.37.0
- Created
Get-WhiskeyMSBuildConfiguration
andSet-WhiskeyMSBuildConfiguration
functions to allow for customizing the configuration to use when running MSBuild tasks/tools. PublishProGetUniversalPackage
task can now exclude items from being published. Set theExclude
property to a list of path wildcards. Any path from thePath
property that match any wildcards will not be published.- Fixed:
MSBuild
task fails when givenVersion
property and multiple installs of that version of MSBuild exist on the system.