fsprojects / Paket

A dependency manager for .NET with support for NuGet packages and Git repositories.
https://fsprojects.github.io/Paket/
MIT License
1.99k stars 520 forks source link

find-packages command fails when using UNC paths #4243

Open vincentremond opened 5 months ago

vincentremond commented 5 months ago

find-packages command fails when using UNC paths

Description

The find-packages command fails when using UNC paths.

Here is a copy of my paket.dependencies file:

source ~/nuget
source https://api.nuget.org/v3/index.json

storage: none
nuget FSharp.Core

When I run this command:

dotnet paket find-packages FSharp.Core

I get this error:

Paket version 8.0.3+75b30cdcb8859e8d129f139444d9b9b600bfff07
Total time taken: 211 milliseconds
Paket failed with
-> DirectoryNotFoundException: Could not find a part of the path 'C:\Users\remond\perso\github\NugetHelper\~\nuget'.

But if I run this command:

dotnet paket add FSharp.Core

It works fine.

Repro steps

Steps to reproduce the problem

  1. dotnet new tool-manifest

  2. dotnet tool install paket

  3. dotnet paket init

  4. Modify paket.dependencies to add a source with a UNC path

    source https://api.nuget.org/v3/index.json
    source ~/nuget
    
    storage: none
  5. Run dotnet paket find-packages FSharp.Core

Expected behavior

The find-packages command should work with UNC paths and include the packages from the UNC path in the results.

Actual behavior

The find-packages command fails with a DirectoryNotFoundException.

Known workarounds

Add the --source <source URL> option to the find-packages command when you know the package is in a specific source.