{"action":"opened","issue":{"url":"https://api.github.com/repos/fsprojects/Paket/issues/1232","labels_url":"https://api.github.com/repos/fsprojects/Paket/issues/1232/labels{/name}","comments_url":"https://api.github.com/repos/fsprojects/Paket/issues/1232/comments","events_url":"https://api.github.com/repos/fsprojects/Paket/issues/1232/events","html_url":"https://github.com/fsprojects/Paket/issues/1232","id":117293629,"number":1232,"title":"SQLite dependency not resolved for some .net versions with current version","user":{"login":"WebDucer","id":761881,"avatar_url":"https://avatars.githubusercontent.com/u/761881?v=3","gravatar_id":"","url":"https://api.github.com/users/WebDucer","html_url":"https://github.com/WebDucer","followers_url":"https://api.github.com/users/WebDucer/followers","following_url":"https://api.github.com/users/WebDucer/following{/other_user}","gists_url":"https://api.github.com/users/WebDucer/gists{/gist_id}","starred_url":"https://api.github.com/users/WebDucer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WebDucer/subscriptions","organizations_url":"https://api.github.com/users/WebDucer/orgs","repos_url":"https://api.github.com/users/WebDucer/repos","events_url":"https://api.github.com/users/WebDucer/events{/privacy}","received_events_url":"https://api.github.com/users/WebDucer/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-11-17T06:38:12Z","updated_at":"2015-11-17T06:38:12Z","closed_at":null,"body":"I use in my project paket in version 2.11.1. With this the project works fine. Today I wanted to update to the current paket version. After `paket update` I don't see SQLite library in my project anymore.\r\n\r\n**paket.dependencies**\r\n\r\n```\r\nsource https://nuget.org/api/v2\r\nsource https://intranet/nuget\r\n\r\nframework: >=net40\r\n\r\nnuget A2LParser\r\nnuget Prism.Wpf\r\nnuget System.Data.SQLite content: none\r\nnuget Unity\r\nnuget GT.A2L.Base\r\n\r\n# Tests\r\nnuget NUnit\r\nnuget Moq\r\nnuget FluentAssertions\r\n```\r\n\r\nWith paket version 2.11.1 the resolution in lock file:\r\n\r\n```\r\n...\r\n    System.Data.SQLite (1.0.98.1) - content: none\r\n      System.Data.SQLite.Core (>= 1.0.98.1) - framework: net20, net40, net45, net451, >= net46\r\n      System.Data.SQLite.EF6 (>= 1.0.98.1) - framework: net40, net45, net451, >= net46\r\n      System.Data.SQLite.Linq (>= 1.0.98.1) - framework: net20, net40, net45, net451, >= net46\r\n    System.Data.SQLite.Core (1.0.98.1) - content: none, framework: net20, net40, net45, net451, >= net46\r\n    System.Data.SQLite.EF6 (1.0.98.1) - content: none, framework: net40, net45, net451, >= net46\r\n      EntityFramework (>= 6.0.0.0) - framework: net40, net45, net451, >= net46\r\n    System.Data.SQLite.Linq (1.0.98.1) - content: none, framework: net20, net40, net45, net451, >= net46\r\n...\r\n```\r\n\r\nWith current paket version (2.25.6) I got a lot of error on the first `paket update`run:\r\n\r\n```\r\n...\r\n - CommonServiceLocator 1.3.0\r\n - System.Data.SQLite.Core 1.0.98.1\r\n - System.Data.SQLite.Linq 1.0.98.1\r\n - System.Data.SQLite.EF6 1.0.98.1\r\nError loading from cache for package 'System.Data.SQLite.EF6.1.0.98.1':\r\nNewtonsoft.Json.JsonSerializationException: The number of field values does not match the number of properties definied by union 'PackageName'. Path 'Dependencies[0].Item1', line 1, position 77.\r\n   bei Newtonsoft.Json.Converters.DiscriminatedUnionConverter.ReadJson(JsonReader reader, Type objectType, Object existingValue, JsonSerializer serializer)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable(JsonConverter converter, JsonReader reader, Type objectType, Object existingValue)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndCreatorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType, IDictionary`2& extensionData)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectUsingCreatorWithParameters(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ObjectConstructor`1 creator, String id)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndCreatorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType, IDictionary`2& extensionData)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectUsingCreatorWithParameters(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ObjectConstructor`1 creator, String id)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)\r\n   bei Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)\r\n   bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)\r\n   bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)\r\n   bei Paket.NuGet.getDetailsFromCacheOr$cont@50(PackageName packageName, SemVerInfo version, FSharpFunc`2 get, FileInfo cacheFile, Unit unitVar)\r\n...\r\n```\r\n\r\nAnd second run is without errors.\r\nThe resolution in lock file:\r\n\r\n```\r\n...\r\n    System.Data.SQLite (1.0.98.1) - content: none\r\n      System.Data.SQLite.Core (>= 1.0.98.1) - framework: net20, >= net451\r\n      System.Data.SQLite.EF6 (>= 1.0.98.1) - framework: >= net451\r\n      System.Data.SQLite.Linq (>= 1.0.98.1) - framework: net20, >= net451\r\n    System.Data.SQLite.Core (1.0.98.1) - content: none, framework: net20, >= net451\r\n    System.Data.SQLite.EF6 (1.0.98.1) - content: none, framework: >= net451\r\n      EntityFramework (>= 6.0.0.0) - framework: >= net451\r\n    System.Data.SQLite.Linq (1.0.98.1) - content: none, framework: net20, >= net451\r\n...\r\n```\r\n\r\nAll projects are .Net 4.0 or 4.5. The project that uses SQLite libraries is .Net 4.5 project.\r\n\r\nThe project file is updated to the following for SQLite:\r\n\r\n```xml\r\n  <Choose>\r\n    <When Condition=\"$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v2.0'\">\r\n      <ItemGroup>\r\n        <Reference Include=\"System.Data.SQLite\">\r\n          <HintPath>..\\packages\\System.Data.SQLite.Core\\lib\\net20\\System.Data.SQLite.dll</HintPath>\r\n          <Private>True</Private>\r\n          <Paket>True</Paket>\r\n        </Reference>\r\n      </ItemGroup>\r\n    </When>\r\n    <When Condition=\"$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.6'\">\r\n      <ItemGroup>\r\n        <Reference Include=\"System.Data.SQLite\">\r\n          <HintPath>..\\packages\\System.Data.SQLite.Core\\lib\\net46\\System.Data.SQLite.dll</HintPath>\r\n          <Private>True</Private>\r\n          <Paket>True</Paket>\r\n        </Reference>\r\n      </ItemGroup>\r\n    </When>\r\n    <When Condition=\"$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3')\">\r\n      <ItemGroup>\r\n        <Reference Include=\"System.Data.SQLite\">\r\n          <HintPath>..\\packages\\System.Data.SQLite.Core\\lib\\net451\\System.Data.SQLite.dll</HintPath>\r\n          <Private>True</Private>\r\n          <Paket>True</Paket>\r\n        </Reference>\r\n      </ItemGroup>\r\n    </When>\r\n  </Choose>\r\n```\r\n"}}