XAMLTools
XAMLTools copied to clipboard
Bump CliWrap from 3.6.0 to 3.6.1
Bumps CliWrap from 3.6.0 to 3.6.1.
Changelog
Sourced from CliWrap's changelog.
v3.6.1 (27-Apr-2023)
- Improved support for older target frameworks via polyfills.
v3.6 (21-Dec-2022)
- Added support for graceful cancellation via interrupt signals. The new functionality is accessible using an overload of
ExecuteAsync()(as well asExecuteBufferedAsync(),ListenAsync(), andObserve()) that accepts an additional cancellation token. The first cancellation token parameter corresponds to a forceful cancellation request that results in immediate process termination (same as the previously available behavior), while the second cancellation token parameter corresponds to a graceful cancellation request that manifests in an interrupt signal. The underlying process may handle the interrupt signal to perform last-minute critical work before finally exiting on its own terms. Please refer to the updated Timeout and cancellation section in the readme for more details.- Changed how the
CommandExecutionExceptionis thrown inExecuteBufferedAsync()when the process exits with a non-zero exit code. Now, instead of replacing the underlying exception, the exception contains the standard error data as part of the message and also includes the underlying exception (thrown inExecuteAsync()) as inner exception.- Fixed an issue where the command events from the
Observe()execution model sometimes arrived out of order.v3.5 (25-Aug-2022)
- Added
LoadUserProfileoption toCredentialsand the correspondingLoadUserProfile()method toCredentialsBuilder. Setting this option totruewill load the user profile when starting the process. Only supported on Windows.- Improved wording in some exception messages.
v3.4.4 (24-Apr-2022)
- Improved cancellation handling in all execution models by attaching the triggered
CancellationTokento producedOperationCanceledExceptions.- Fixed an issue where using
PipeSource.FromFile(...)with a non-existing file did not throw an exception.v3.4.3 (18-Apr-2022)
- Added
PipeSource.Create(...)andPipeTarget.Create(...)factory methods that can be used to create anonymous instances ofPipeSourceandPipeTarget. This approach can be convenient if you need to implement a customPipeSourceorPipeTargetbut don't want to define a new class. (Thanks@Cédric Luthi)- Updated inline documentation for
PipeTarget.Nullwith additional information clarifying the difference in behavior between that target andPipeTarget.ToStream(Stream.Null).v3.4.2 (14-Mar-2022)
- Improved process execution performance by not setting
CreateNoWindowtofalsewhen running inside a console application. This change reduces performance overhead by up to 60% in some cases. (Thanks@Retik)- Improved overall performance by making use of
IAsyncDisposableon streams where it is available.- Marked configuration methods on
Commandwith thePureattribute. The compiler will now produce a warning if you call any of these methods without using the returned value.v3.4.1 (30-Jan-2022)
- Fixed an issue where calling
Cli.Wrap(...).ExecuteAsync()returned an invalidCommandTask(withProcessIdequal to0) when the process failed to start. It happened because the associated exception was thrown in an asynchronous context instead of getting propagated immediately. This issue caused event stream execution models (Observe()andListenAsync()) to incorrectly yieldStartedCommandEventeven if the process has not actually been able to start.v3.4 (07-Jan-2022)
- Added automatic resolving of script files on Windows (i.e.
.batand.cmdfiles). Previously, if you didCli.Wrap("foo"), the underlying implementation ofSystem.Diagnostic.Processwould try to findfooin several locations, including directories listed in the PATH environment variable. On Windows, however, this only worked for.exefiles, meaning that it wouldn't findfoo.cmdorfoo.bateven if they existed on the PATH. This was an issue withCli.Wrap("npm")andCli.Wrap("az")because those CLI tools are implemented as.cmdscripts on Windows. CliWrap now attempts to resolve those paths itself. (Thanks@AliReZa Sabouri)- Improved exception thrown when the underlying process fails to start. It now contains the target file path, which can be helpful to identify the exact command that failed. (Thanks
@Mohamed Hassan)v3.3.3 (31-Aug-2021)
- Added an overload of
EnvironmentVariablesBuilder.Set(...)that takes a dictionary parameter. This lets you set multiple environment variables at once by passing a dictionary when callingCli.Wrap("foo").WithEnvironmentVariables(env => ...).- Added an overload of pipe operator for configuring a byte array as a pipe source.
v3.3.2 (01-Apr-2021)
- Added the ability to remove an inherited environment variable by setting its value to
null. (Thanks@Ville Penttinen)v3.3.1 (21-Feb-2021)
... (truncated)
Commits
196feb8Update version4c0a8b6Update NuGet packagesd13af03Update NuGet packagescbddf96Update NuGet packagescfaded8Update readme6e9e533Use named tuples in pipe operators65807a5Update NuGet packages733e0b6Replace polyfills with PolyShima9c29f7Use Polyfill instead of PolySharp (#198)19388fdUpdate readme- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)