Skip to content

Paket 4.0 Conver from nuget with wildcard version #2185

Closed

Description

@vilinski

Description

paket convert-from-nuget, can't recognize the FSharp.Core (and other) version with wildcards

Repro steps

At first, thank you very much for new fsproj support! Very sorry not tried as it was in alpha.
The repro steps with actual .NET CLI:

dotnet new sln
dotnet new console -lang f# -o src/TheProgram
dotnet new console -lang f# -o src/TheProgram.Test
dotnet sln add src/**/*.fsproj
dotnet restore
dotnet build
dotnet run --project src/TheProgram/TheProgram.fsproj
# download paket 4.0 release to ./.paket/
.paket/paket.exe convert-from-nuget

Expected behavior

Naive imagination it converts the core projects from nuget to paket.

Actual behavior

error: input string has wrong format (german)

Paket version 4.0.0
Paket failed with:
        Can't parse "4.1.*".
Die Eingabezeichenfolge hat das falsche Format.

Known workarounds

Use versions without wildcards.

  • FShar.Core version 4.1.* -> 4.1.0.2
  • FSharp.NET.Sdk to 1.0.* -> 1.0.1
  • Same with other packages, if any
.paket/paket.exe convert-from-nuget
Paket version 4.0.0
Adding package FSharp.Core to C:\git\gitlocal\coremongo\src\TheProgram\paket.references into group Main
Adding package FSharp.NET.Sdk to C:\git\gitlocal\coremongo\src\TheProgram\paket.references into group Main
Adding package FSharp.Core to C:\git\gitlocal\coremongo\src\TheProgram.Test\paket.references into group Main
Adding package FSharp.NET.Sdk to C:\git\gitlocal\coremongo\src\TheProgram.Test\paket.references into group Main
Dependencies files saved to C:\git\gitlocal\coremongo\paket.dependencies
References file saved to C:\git\gitlocal\coremongo\src\TheProgram\paket.references
References file saved to C:\git\gitlocal\coremongo\src\TheProgram.Test\paket.references
Resolving packages for group Main:
 - FSharp.Core is pinned to 4.1.0.2
 - FSharp.NET.Sdk is pinned to 1.0.1
 - System.ValueTuple 4.3.0
 - FSharp.Compiler.Tools 4.1.0
 - System.IO 4.3.0
 - System.Linq 4.3.0
 - System.Linq.Expressions 4.3.0
 - System.Reflection 4.3.0
 - System.Runtime 4.3.0
 ...

In this case it starts to convert, but does it veeeery slow, which may be another related issue.
It still runs..... Has not yet created the paket.lock file, only the paket.references and paket.dependencies:

source https://dotnet.myget.org/F/dotnet-core/api/v3/index.json
source https://dotnet.myget.org/F/cli-deps/api/v3/index.json
source https://api.nuget.org/v3/index.json

nuget FSharp.Core 4.1.0.2
nuget FSharp.NET.Sdk 1.0.1

Activity

  1. forki commented on Mar 15, 2017

    @forki
    Member

    /cc @theimowski do we already support convert for MSBuild 15?

  2. theimowski commented on Mar 15, 2017

    @theimowski
    Member

    Sorry, I've lately been and will be for a while off, not catching up to the latest stories from dotnet world.
    Convert should deal with new PackageReference, but probably can't handle wildcards, no.
    So how the wildcards work? Can you think of 4.1.* as of ~> 4.1 in Paket ?

  3. forki commented on Mar 16, 2017

    @forki
    Member

    can you please add a zip with the repo exactly before paket convert?

  4. vilinski commented on Mar 16, 2017

    @vilinski
    Author
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions