Closed cdrnet closed 8 years ago
I assume artifactory is giving different OData results. We need to reproduce that. Or maybe you can find the downloaded OData in paket's cache
On Jul 20, 2016 10:56 AM, "Christoph Ruegg" notifications@github.com wrote:
Description
I get weird different behavior on framework restrictions when resolving a package from the NuGet feed directly vs from an Artifactory feed (which caches the NuGet feed). The NuGet feed works as expected, while the Artifactory feed causes extra dependencies to be added.
The package in question, Newtonsoft.Json, has an empty dependency group for net45 and a non-empty one of netstandard1.0. I'm restricting to net45, so expect the netstandard1.0 ones to be ignored (no matter whether they may technically be compatible).
Repros on versions:
- v3.8.1
- v3.6.0
- v3.0.0
Errors by other means on versions:
- v2.9.0 - "Couldn't get package details for package System.Diagnostics.Contracts 4.0.1 on ...."
- v2.6.0 - "Couldn't get package details for package System.Diagnostics.Contracts 4.0.1 on ...."
Repro steps
A paket.dependencies:
source http://www.nuget.org/api/v2 framework: net45 nuget Newtonsoft.Json
B paket.dependencies:
source https://artifactory/feed framework: net45 nuget Newtonsoft.Json
Run paket.exe install Expected behavior
A paket.lock:
FRAMEWORK: NET45 NUGET remote: http://www.nuget.org/api/v2 Newtonsoft.Json (9.0.1)
Actual behavior
B paket.lock:
FRAMEWORK: NET45 NUGET remote: https://artifactory/feed Microsoft.CSharp (4.0.1) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Dynamic.Runtime (>= 4.0.11) System.Globalization (>= 4.0.11) System.Linq (>= 4.1) System.Linq.Expressions (>= 4.1) System.ObjectModel (>= 4.0.12) System.Reflection (>= 4.1) System.Reflection.Extensions (>= 4.0.1) System.Reflection.Primitives (>= 4.0.1) System.Reflection.TypeExtensions (>= 4.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Runtime.InteropServices (>= 4.1) System.Threading (>= 4.0.11) Microsoft.NETCore.Platforms (1.0.1) Microsoft.NETCore.Targets (1.0.1) Newtonsoft.Json (9.0.1) Microsoft.CSharp (>= 4.0.1) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Dynamic.Runtime (>= 4.0.11) System.Globalization (>= 4.0.11) System.IO (>= 4.1) System.Linq (>= 4.1) System.Linq.Expressions (>= 4.1) System.ObjectModel (>= 4.0.12) System.Reflection (>= 4.1) System.Reflection.Extensions (>= 4.0.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Runtime.Serialization.Primitives (>= 4.1.1) System.Text.Encoding (>= 4.0.11) System.Text.Encoding.Extensions (>= 4.0.11) System.Text.RegularExpressions (>= 4.1) System.Threading (>= 4.0.11) System.Threading.Tasks (>= 4.0.11) System.Xml.ReaderWriter (>= 4.0.11) System.Xml.XDocument (>= 4.0.11) System.Collections (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Diagnostics.Debug (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Diagnostics.Tools (4.0.1) System.Dynamic.Runtime (4.0.11) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Globalization (>= 4.0.11) System.Linq (>= 4.1) System.Linq.Expressions (>= 4.1) System.ObjectModel (>= 4.0.12) System.Reflection (>= 4.1) System.Reflection.Emit (>= 4.0.1) System.Reflection.Emit.ILGeneration (>= 4.0.1) System.Reflection.Primitives (>= 4.0.1) System.Reflection.TypeExtensions (>= 4.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Threading (>= 4.0.11) System.Globalization (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.IO (4.1.0) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Text.Encoding (>= 4.0.11) System.Threading.Tasks (>= 4.0.11) System.IO.FileSystem (4.0.1) System.IO.FileSystem.Primitives (4.0.1) System.Linq (4.1.0) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Linq.Expressions (4.1.0) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Globalization (>= 4.0.11) System.IO (>= 4.1) System.Linq (>= 4.1) System.ObjectModel (>= 4.0.12) System.Reflection (>= 4.1) System.Reflection.Emit (>= 4.0.1) System.Reflection.Emit.ILGeneration (>= 4.0.1) System.Reflection.Emit.Lightweight (>= 4.0.1) System.Reflection.Extensions (>= 4.0.1) System.Reflection.Primitives (>= 4.0.1) System.Reflection.TypeExtensions (>= 4.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Threading (>= 4.0.11) System.ObjectModel (4.0.12) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Threading (>= 4.0.11) System.Reflection (4.1.0) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.IO (>= 4.1) System.Reflection.Primitives (>= 4.0.1) System.Runtime (>= 4.1) System.Reflection.Emit (4.0.1) System.Reflection.Emit.ILGeneration (4.0.1) System.Reflection.Emit.Lightweight (4.0.1) System.Reflection.Extensions (4.0.1) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Reflection (>= 4.1) System.Runtime (>= 4.1) System.Reflection.Primitives (4.0.1) System.Reflection.TypeExtensions (4.1.0) System.Resources.ResourceManager (4.0.1) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Globalization (>= 4.0.11) System.Reflection (>= 4.1) System.Runtime (>= 4.1) System.Runtime (4.1.0) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime.Extensions (4.1.0) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Runtime.InteropServices (4.1.0) System.Runtime.Serialization.Primitives (4.1.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Text.Encoding (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Text.Encoding.Extensions (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Text.Encoding (>= 4.0.11) System.Text.RegularExpressions (4.1.0) System.Collections (>= 4.0.11) System.Globalization (>= 4.0.11) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Threading (>= 4.0.11) System.Threading (4.0.11) System.Runtime (>= 4.1) System.Threading.Tasks (>= 4.0.11) System.Threading.Tasks (4.0.11) Microsoft.NETCore.Platforms (>= 1.0.1) Microsoft.NETCore.Targets (>= 1.0.1) System.Runtime (>= 4.1) System.Threading.Tasks.Extensions (4.0.0) System.Xml.ReaderWriter (4.0.11) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Globalization (>= 4.0.11) System.IO (>= 4.1) System.IO.FileSystem (>= 4.0.1) System.IO.FileSystem.Primitives (>= 4.0.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Runtime.InteropServices (>= 4.1) System.Text.Encoding (>= 4.0.11) System.Text.Encoding.Extensions (>= 4.0.11) System.Text.RegularExpressions (>= 4.1) System.Threading.Tasks (>= 4.0.11) System.Threading.Tasks.Extensions (>= 4.0) System.Xml.XDocument (4.0.11) System.Collections (>= 4.0.11) System.Diagnostics.Debug (>= 4.0.11) System.Diagnostics.Tools (>= 4.0.1) System.Globalization (>= 4.0.11) System.IO (>= 4.1) System.Reflection (>= 4.1) System.Resources.ResourceManager (>= 4.0.1) System.Runtime (>= 4.1) System.Runtime.Extensions (>= 4.1) System.Text.Encoding (>= 4.0.11) System.Threading (>= 4.0.11) System.Xml.ReaderWriter (>= 4.0.11)
Related information
- Paket v3.8.0.0
- Win7, .Net latest
Additional Information
I'll try to compare what actually goes over the wire. For the record, this is the verbose output of paket install with v3.8.1:
B:
Paket version 3.8.1.0 Resolving packages for group Main:
- Newtonsoft.Json 9.0.1
- System.Runtime.Serialization.Primitives 4.1.1
- System.IO 4.1.0
- System.Linq 4.1.0
- System.Linq.Expressions 4.1.0
- System.Reflection 4.1.0
- System.Runtime 4.1.0
- System.Runtime.Extensions 4.1.0
- System.Text.RegularExpressions 4.1.0
- System.ObjectModel 4.0.12
- System.Collections 4.0.11
- System.Diagnostics.Debug 4.0.11
- System.Dynamic.Runtime 4.0.11
- System.Globalization 4.0.11
- System.Text.Encoding 4.0.11
- System.Text.Encoding.Extensions 4.0.11
- System.Threading 4.0.11
- System.Threading.Tasks 4.0.11
- System.Xml.ReaderWriter 4.0.11
- System.Xml.XDocument 4.0.11
- Microsoft.CSharp 4.0.1
- System.Reflection.Extensions 4.0.1
- System.Resources.ResourceManager 4.0.1
- System.Reflection.TypeExtensions 4.1.0
- System.Runtime.InteropServices 4.1.0
- System.Reflection.Primitives 4.0.1
- System.Reflection.Emit 4.0.1
- System.Reflection.Emit.ILGeneration 4.0.1
- System.Reflection.Emit.Lightweight 4.0.1
- System.IO.FileSystem 4.0.1
- System.IO.FileSystem.Primitives 4.0.1
- System.Diagnostics.Tools 4.0.1
- System.Threading.Tasks.Extensions 4.0.0
- Microsoft.NETCore.Platforms 1.0.1
- Microsoft.NETCore.Targets 1.0.2
- Microsoft.NETCore.Targets 1.0.1
- System.Diagnostics.Contracts 4.0.1
- System.Runtime.Handles 4.0.1 Locked version resolution written to C:...\paket.lock 25 seconds - ready.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/fsprojects/Paket/issues/1826, or mute the thread https://github.com/notifications/unsubscribe-auth/AADgNAh-SMArhG-nMMO48LTo4whq4eo3ks5qXeLIgaJpZM4JQkEY .
Indeed, artifactory provides empty FrameworkRestrictionList lists.
Result from Artifactory (B):
{
"Dependencies": [
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Linq.Expressions", "system.linq.expressions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.Encoding.Extensions", "system.text.encoding.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "Microsoft.CSharp", "microsoft.csharp" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Globalization", "system.globalization" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime", "system.runtime" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Threading", "system.threading" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Collections", "system.collections" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Dynamic.Runtime", "system.dynamic.runtime" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Reflection.Extensions", "system.reflection.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Diagnostics.Debug", "system.diagnostics.debug" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime.Extensions", "system.runtime.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.IO", "system.io" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Linq", "system.linq" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime.Serialization.Primitives", "system.runtime.serialization.primitives" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.1" ]
},
"AsString": "4.1.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Xml.XDocument", "system.xml.xdocument" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Reflection", "system.reflection" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Resources.ResourceManager", "system.resources.resourcemanager" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Xml.ReaderWriter", "system.xml.readerwriter" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.RegularExpressions", "system.text.regularexpressions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.Encoding", "system.text.encoding" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Threading.Tasks", "system.threading.tasks" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.ObjectModel", "system.objectmodel" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 12,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.12" ]
},
"AsString": "4.0.12"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [ [] ]
}
}
],
"PackageName": "Newtonsoft.Json",
"SourceUrl": "http://artifactory.xy/artifactory/api/nuget/components-production",
"Unlisted": false,
"DownloadUrl": "https://artifactory.xy/artifactory/api/nuget/components-production/Download/Newtonsoft.Json/9.0.1",
"LicenseUrl": "https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md",
"Version": "9.0.1",
"CacheVersion": "2.5"
}
Result from NuGet Gallery (A):
{
"Dependencies": [
{
"Item1": {
"Case": "PackageName",
"Fields": [ "Microsoft.CSharp", "microsoft.csharp" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Collections", "system.collections" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Diagnostics.Debug", "system.diagnostics.debug" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Dynamic.Runtime", "system.dynamic.runtime" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Globalization", "system.globalization" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.IO", "system.io" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Linq", "system.linq" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Linq.Expressions", "system.linq.expressions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.ObjectModel", "system.objectmodel" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 12,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.12" ]
},
"AsString": "4.0.12"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Reflection", "system.reflection" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Reflection.Extensions", "system.reflection.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Resources.ResourceManager", "system.resources.resourcemanager" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.1" ]
},
"AsString": "4.0.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime", "system.runtime" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime.Extensions", "system.runtime.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Runtime.Serialization.Primitives", "system.runtime.serialization.primitives" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 1,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.1" ]
},
"AsString": "4.1.1"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.Encoding", "system.text.encoding" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.Encoding.Extensions", "system.text.encoding.extensions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Text.RegularExpressions", "system.text.regularexpressions" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 1,
"Patch": 0,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.1.0" ]
},
"AsString": "4.1.0"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Threading", "system.threading" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Threading.Tasks", "system.threading.tasks" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Xml.ReaderWriter", "system.xml.readerwriter" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
},
{
"Item1": {
"Case": "PackageName",
"Fields": [ "System.Xml.XDocument", "system.xml.xdocument" ]
},
"Item2": {
"Case": "VersionRequirement",
"Fields": [
{
"Case": "Minimum",
"Fields": [
{
"Major": 4,
"Minor": 0,
"Patch": 11,
"PreRelease": null,
"Build": "0",
"BuildMetaData": "",
"Original": {
"Case": "Some",
"Fields": [ "4.0.11" ]
},
"AsString": "4.0.11"
}
]
},
{ "Case": "No" }
]
},
"Item3": {
"Case": "FrameworkRestrictionList",
"Fields": [
[
{
"Case": "AtLeast",
"Fields": [
{
"Case": "DotNetStandard",
"Fields": [ { "Case": "V1_0" } ]
}
]
}
]
]
}
}
],
"PackageName": "Newtonsoft.Json",
"SourceUrl": "http://www.nuget.org/api/v2",
"Unlisted": false,
"DownloadUrl": "http://www.nuget.org/api/v2/package/Newtonsoft.Json/9.0.1",
"LicenseUrl": "https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md",
"Version": "9.0.1",
"CacheVersion": "2.5"
}
This is obviously an Artifactory bug. I assume it is not actually possible to work around this (as we'd have to download the package in order to get the missing information) at least at the lock file level.
For the record, this is Artifactory 4.7.1
Paket actually generates the references in the project file correctly. Maybe this is actually a non-issue.
I think the resolver bases decision on artifactory response (you should open issue there), but IIRC install bases decision on nuspec. So this means project files are ok, but restore will download way too much crap.
From the release notes of Artifactory 4.7.5:
This may be related. We'll upgrade to a newer version and verify.
Confirmed this is fixed by upgrading to Artifactory 4.10.0. Great to see all the crap being garbage collected :).
Description
I get weird different behavior on framework restrictions when resolving a package from the NuGet feed directly vs from an Artifactory feed (which caches the NuGet feed). The NuGet feed works as expected, while the Artifactory feed causes extra dependencies to be added.
The package in question,
Newtonsoft.Json
, has an empty dependency group for net45 and a non-empty one of netstandard1.0. I'm restricting to net45, so expect the netstandard1.0 ones to be ignored (no matter whether they may technically be compatible).Repros on versions:
Errors by other means on versions:
Repro steps
A paket.dependencies:
B paket.dependencies:
Run
paket.exe install
Expected behavior
A paket.lock:
Actual behavior
B paket.lock:
Related information
Additional Information
paket.exe clear-cache
had no effect.I'll try to compare what actually goes over the wire. For the record, this is the verbose output of paket install with v3.8.1:
B: