Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Latest RC2 packages do not install in latest UWP builds #4802

Closed
rowanmiller opened this issue Mar 15, 2016 · 24 comments
Closed

Latest RC2 packages do not install in latest UWP builds #4802

rowanmiller opened this issue Mar 15, 2016 · 24 comments
Assignees
Labels
closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. type-bug
Milestone

Comments

@rowanmiller
Copy link
Contributor

The errors are currently in our dependencies, so there is likely nothing to do on our side other than test and report issues to the appropriate teams. I've reported the current issue with the System.AppContext package to .NET Core folks.

System.AppContext 4.1.0-rc2-23826 provides a compile-time reference assembly for System.AppContext on UAP,Version=v10.0, but there is no run-time assembly compatible with win10-arm.
At line:1 char:1
install-package Microsoft.EntityFrameworkCore.Sqlite -pre

CategoryInfo : NotSpecified: (:) [Install-Package], Exception
FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand
@davidfowl
Copy link
Member

/cc @ericstj is doing some work in this area

@ericstj
Copy link
Member

ericstj commented Mar 15, 2016

Yeah, we know latest is broken. UWP should only be using the stable meta-package until that work is done.

@rowanmiller
Copy link
Contributor Author

Figured as much, just opened this to track making sure everything works on our side once things stabilize - the last few releases we've had to do additional work in our packages once everything under us is working.

@natemcmaster
Copy link
Contributor

UWP should only be using the stable meta-package until that work is done.

EF doesn't even work against the stable meta-package either. @ericstj What version of Ms.NETCore.UWP should we ensure works for RC2?

@natemcmaster
Copy link
Contributor

No update yet. Still blocked on packaging issues in .NET Core (using rc2 build 23931).

@natemcmaster
Copy link
Contributor

Can install EF.SQLite now with Ms.NetCore.UWP 5.2.0-rc2-*, but UWP is still broken. Blocked on https://github.com/dotnet/corefx/issues/7582

Still cannot install with Ns.NetCore.UWP 5.1.0

@natemcmaster
Copy link
Contributor

Are we intentionally leaving out runtime assemblies for UWP in RC2 from these BCL libraries? Or is this nuget installer error?

Using rc2-23931, the following BCL nupkgs are missing runtime assemblies for UWP, which causes installing EF to fail against UWP 5.1.0

System.AppContext
System.Collections
System.Diagnostics.Debug
System.Diagnostics.Tracing
System.Globalization
System.IO
System.IO.FileSystem
System.Reflection
System.Reflection.Emit.ILGeneration
System.Reflection.Extensions
System.Reflection.Primitives
System.Resources.ResourceManager
System.Runtime
System.Runtime.Extensions
System.Runtime.Handles
System.Runtime.InteropServices
System.Text.Encoding
System.Threading.Tasks

@ericstj
Copy link
Member

ericstj commented Apr 7, 2016

That's happening because you're upgrading all those packages which have been split between ref/lib without bringing in the lineup that pulls in the lib packages. I'd expect the latest 5.2.0 rc3 UWP meta-package to work.

@ericstj
Copy link
Member

ericstj commented Apr 7, 2016

Alternatively, just bringing in the MS.NETCore.Platforms latest may solve the problem, but I believe you'll hit a couple other issues in the RC2 packages for UWP that have only been fixed in the RC3 branch (eg: AppContext, Linq.Expressions).

@natemcmaster
Copy link
Contributor

I believe you'll hit a couple other issues in the RC2 packages for UWP that have only been fixed in the RC3 branch (eg: AppContext, Linq.Expressions).

So, then for the sake of our RC2 release, we should make sure we pull in stable packages in UWP 5.1.0. I believe this implies we will need to cross-compile, as we did for RC1.

@ericstj
Copy link
Member

ericstj commented Apr 7, 2016

I think that's still the safest thing to do. As before you don't actually need to cross compile but just have a separate dependency set but if you're using project.json > pack you have to cross compile.

@natemcmaster
Copy link
Contributor

you'll hit a couple other issues in the RC2 packages for UWP that have only been fixed in the RC3 branch (eg: AppContext, Linq.Expressions).

What would it take to get these in RC2?

cc @Eilon @davidfowl

@Eilon
Copy link
Member

Eilon commented Apr 8, 2016

@natemcmaster I think at this point I'd do the cross compilation, because we know it will work.

@natemcmaster
Copy link
Contributor

we know it will work.

I'm not so sure it will. It did for RC1, but I've not yet been able to craft the right project.json's to make dotnet-restore, dotnet-pack, UWP, and EF happy together.

@natemcmaster
Copy link
Contributor

I'm beginning to fear we may not be able to get this working for RC2 💀. I found the magic project.json a user needs to get packages to install AND to get build working.

Nota bene: order matters

Install-Package Microsoft.NETCore.UniversalWindowsPlatform -Version 5.1.0
Install-Package System.Reflection.Emit.ILGeneration -Version 4.0.0
Install-Package Microsoft.NETCore.Platforms -Pre
Install-Package Microsoft.Win32.Primitives -Pre
Install-Package System.Diagnostics.Tools -Pre
Install-Package System.Globalization.Calendars -Pre
Install-Package System.Net.Sockets -Pre
Install-Package System.Threading.Timer -Pre
Install-Package Microsoft.EntityFrameworeCore.Sqlite -Pre

Result json:

{
  "dependencies": {
    "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0-rc2-20507",
    "Microsoft.NETCore.Platforms": "1.0.1-rc2-23931",
    "Microsoft.NETCore.UniversalWindowsPLatform": "5.1.0",
    "Microsoft.Win32.Primitives": "4.0.1-rc2-23931",
    "System.Diagnostics.Tools": "4.0.1-rc2-23931",
    "System.Globalization.Calendars": "4.0.1-rc2-23931",
    "System.Net.Sockets": "4.1.0-rc2-23931",
    "System.Reflection.Emit.ILGeneration": "4.0.0",
    "System.Threading.Timer": "4.0.1-rc2-23931"
  },
  "frameworks": {
    "uap10.0": {}
  },
  "runtimes": {
    "win10-arm": {},
    "win10-arm-aot": {},
    "win10-x86": {},
    "win10-x86-aot": {},
    "win10-x64": {},
    "win10-x64-aot": {}
  }
}

⚠️ Here's the kicker. After all that, the app will build and run and then crash on launch with this bug: https://github.com/dotnet/corefx/issues/7582 which was closed with "will fix in RC3".

@ericstj
Copy link
Member

ericstj commented Apr 8, 2016

Why are you updating the following?
"Microsoft.NETCore.Platforms": "1.0.1-rc2-23931",
"System.Threading.Timer": "4.0.1-rc2-23931"
"Microsoft.Win32.Primitives": "4.0.1-rc2-23931",
"System.Diagnostics.Tools": "4.0.1-rc2-23931",
"System.Globalization.Calendars": "4.0.1-rc2-23931",
"System.Net.Sockets": "4.1.0-rc2-23931",

@natemcmaster
Copy link
Contributor

Platforms: #4802 (comment)

The others:
image

@ericstj
Copy link
Member

ericstj commented Apr 8, 2016

That previous comment was about trying to use the latest packages in UWP. I thought we had switched gears to use stable dependencies for UWP.

I would have expected you to do something like the following, like was done in RC1:
dependencyGroup TFM=uap10.0
...stable dependencies...
dependencyGroup TFM=netstandardX.Y
...rc2 dependencies...

@natemcmaster
Copy link
Contributor

Yes good point. I should have been more clear. Allow me to clarify.

Approach 1: get EF working with RC2 .NET Core. I think it's clear at this point that approach isn't going to work. My comment here #4802 (comment) was regarding that first approach.

Approach 2: cross-compile to lower dependencies for UWP. My comment #4802 (comment) was regarding cross-compiling to stable packages.

Going forward: I'm working on approach 2 now. Status: cross-compiling isn't working (yet).

@natemcmaster
Copy link
Contributor

Cross compiling to fix this issue. See PR #5021

@natemcmaster
Copy link
Contributor

Fixed #5021

@divega
Copy link
Contributor

divega commented Apr 12, 2016

🎉

@Eilon
Copy link
Member

Eilon commented Apr 12, 2016

Mark as Done?

@natemcmaster
Copy link
Contributor

Marked.

@ajcvickers ajcvickers modified the milestones: 1.0.0-rc2, 1.0.0 Oct 15, 2022
@ajcvickers ajcvickers added the closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. label Oct 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. type-bug
Projects
None yet
Development

No branches or pull requests

7 participants