Skip to content

Can't install tool with version containing a capital letter on Linux #33580

Open
@svick

Description

@svick

Describe the bug

If you try to install a .Net tool with version number that contains a capital on Linux, it fails with:

The settings file in the tool's NuGet package is invalid: Failed to retrieve tool configuration: Could not find a part of the path '/home/petro/.dotnet/tools/.store/dotnetsay/2.1.8-capital/dotnetsay/2.1.8-Capital/tools/netcoreapp2.1/any/DotnetToolSettings.xml'.
Tool 'dotnetsay' failed to install. Contact the tool author for assistance.

To Reproduce

  1. Be on Linux.

  2. Clone dotnetsay.

  3. Change the version in .csproj to (it's important that VersionSuffix contains a capital letter):

    <VersionPrefix>2.1.8</VersionPrefix>
    <VersionSuffix>Capital</VersionSuffix>
  4. Run dotnet pack /p:ContinuousIntegrationBuild=true.

  5. Run dotnet tool install -g dotnetsay --prerelease --add-source bin/Debug/.

Further technical details

This behavior happens on the dotnet/sdk:7.0 Docker image, and also on Ubuntu 22.04 with .Net SDK 7.0.305 installed

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions