command-line-api icon indicating copy to clipboard operation
command-line-api copied to clipboard

Publish updated `dotnet-suggest` NuGet package targeting .NET 8+

Open ralish opened this issue 11 months ago • 2 comments

The latest version of the dotnet-suggest package published to NuGet targets .NET 7.0: dotnet-suggest 1.1.415701.

That's problematic as it means the .NET 7.0 runtime, which is end of life since May 2024 and no longer receiving security updates, must be installed for the dotnet-suggest tool to function. Without the dotnet-suggest tool CLI applications using the System.CommandLine library cannot benefit from command-line completion.

ralish avatar Dec 11 '24 01:12 ralish

Agree here! I also get the following error when opening up PowerShell.

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Try the new cross-platform PowerShell https://aka.ms/pscore6

You must install or update .NET to run this application.

App: C:\Users\XXXXX\.dotnet\tools\dotnet-suggest.exe
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '7.0.0' (x64)
.NET location: C:\Program Files\dotnet\

The following frameworks were found:
  8.0.0-rc.2.23479.6 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  8.0.11 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  9.0.0-rc.2.24473.5 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  9.0.0 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

Learn more:
https://aka.ms/dotnet/app-launch-failed

To install missing framework, download:
https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=7.0.0&arch=x64&rid=win-x64&os=win10
Register-ArgumentCompleter : Cannot bind argument to parameter 'CommandName' because it is an empty array.
At C:\Users\XXXXXXXXXXXXXXXX\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1:7 char:53
+ ... umentCompleter -Native -CommandName $availableToCompleteArray -Script ...
+                                         ~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Register-ArgumentCompleter], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyArrayNotAllowed,System.Management.Automation.RegisterArgumentCompleterCommand

JoshStrauss avatar Dec 11 '24 13:12 JoshStrauss

If you install with dotnet tool install --global --allow-roll-forward dotnet-suggest, then dotnet-suggest 1.1.415701 will run on .NET 8 or 9 too.

KalleOlaviNiemitalo avatar Dec 11 '24 14:12 KalleOlaviNiemitalo

This was fixed in https://www.nuget.org/packages/dotnet-suggest/1.1.630601, which now targets net8.0 only.

KalleOlaviNiemitalo avatar Jun 21 '25 14:06 KalleOlaviNiemitalo