Bug 34520 - New Forms project fails to install to a PCL with dnxcore50 target
Summary: New Forms project fails to install to a PCL with dnxcore50 target
Status: RESOLVED ANSWERED
Alias: None
Product: Visual Studio Extensions
Classification: Xamarin
Component: Xamarin.Forms ()
Version: 3.11 (C5)
Hardware: PC Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
URL:
: 35259 ()
Depends on:
Blocks:
 
Reported: 2015-10-02 09:55 UTC by John Miller [MSFT]
Modified: 2016-01-12 12:11 UTC (History)
10 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED ANSWERED

Description John Miller [MSFT] 2015-10-02 09:55:32 UTC
**Overview:**

   When trying to create a new Forms project, VS throws an error that the nuget packages can't be installed. 

"Could not add all required packages to the project. The following packages failed to install from 'C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO 12.0\COMMON7\IDE\EXTENSIONS\XAMARIN\XAMARIN\3.11.1443.0\Packages':

Xamarin.Forms.13.3.6323 : Could not install package Xamarin.Forms 1.3.3.6323. You are trying to install this package into a project that targets `portable-net45+dnxcore50+win+wp80+MonoAndroid10+xamarinios10+MonoTouch10' but the package does not contain any assembly references or content files that are compatible with that farmework. For more information, contact the package author. 

**Steps to Reproduce:**

   The user is able to reproduce by just creating a new Forms portable project. 
   I was not able to reproduce this on my machine. 

**Actual Results:**

   http://screencast.com/t/NLGAww8Uqsu

**Expected Results:**

   No errors. 

**Build Date & Platform:**

   User originally had the issue with VS 2015. They uninstalled that and tried in VS 2013, but the issue remained:

Microsoft Visual Studio Premium 2013
Version 12.0.40629.00 Update 5
Microsoft .NET Framework
Version 4.6.00079

Installed Version: Premium

LightSwitch for Visual Studio 2013 06191-004-0454001-02335
Microsoft LightSwitch for Visual Studio 2013

Team Explorer for Visual Studio 2013 06191-004-0454001-02335
Microsoft Team Explorer for Visual Studio 2013

Visual Basic 2013 06191-004-0454001-02335
Microsoft Visual Basic 2013

Visual C# 2013 06191-004-0454001-02335
Microsoft Visual C# 2013

Visual C++ 2013 06191-004-0454001-02335
Microsoft Visual C++ 2013

Visual F# 2013 06191-004-0454001-02335
Microsoft Visual F# 2013

Visual Studio 2013 Code Analysis Spell Checker 06191-004-0454001-02335
Microsoft® Visual Studio® 2013 Code Analysis Spell Checker

Portions of International CorrectSpell™ spelling correction system © 1993 by Lernout & Hauspie Speech Products N.V. All rights reserved.

The American Heritage® Dictionary of the English Language, Third Edition Copyright © 1992 Houghton Mifflin Company. Electronic version licensed from Lernout & Hauspie Speech Products N.V. All rights reserved.

Windows Phone SDK 8.0 - ENU 06191-004-0454001-02335
Windows Phone SDK 8.0 - ENU

ASP.NET and Web Tools 12.5.60612.0
Microsoft Web Developer Tools contains the following components:
Support for creating and opening ASP.NET web projects
Browser Link: A communication channel between Visual Studio and browsers
Editor extensions for HTML, CSS, and JavaScript
Page Inspector: Inspection tool for ASP.NET web projects
Scaffolding: A framework for building and running code generators
Server Explorer extensions for Microsoft Azure Web Apps
Web publishing: Extensions for publishing ASP.NET web projects to hosting providers, on-premises servers, or Microsoft Azure

ASP.NET Web Frameworks and Tools 2012.2 4.1.21001.0
For additional information, visit http://go.microsoft.com/fwlink/?LinkID=309563

ASP.NET Web Frameworks and Tools 2013 5.2.30612.0
For additional information, visit http://www.asp.net/

Common Azure Tools 1.4
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.

Infragistics Reporting 14.1.0.9000
Visual Studio extension for Infragistics Reporting.

Infragistics Version Utility 1.0
This utility lets you set the Infragistics version that a specific project is using.

Infragistics.ColorTuner 1.0
Infragistics Color Tuner for Microsoft Visual Studio 2010. For more information visit http://www.infragistics.com

Infragistics.VSExtension 1.0
Infragistics Visual Studio Extension (AddIn) adds scheduled check for update functionality to your Visual Studio IDE. It also provides some fast shortcuts to infragistics products and online resources.

JustDecompile Tools 1.0
Makes JustDecompile functionality available in VIsual Studio. Requires JustDecompile installation.

Microsoft Advertising SDK for Windows Phone
Microsoft Advertising SDK for Windows Phone
Build

Microsoft Azure HDInsight HQL Service 2.0.1000.0
Language service for Hive query

Microsoft Azure HDInsight Tools for Visual Studio 2.0.1000.0
An integrated development environment for HDInsight application development.

Microsoft Azure Mobile Services Tools 1.4
Microsoft Azure Mobile Services Tools

Microsoft Azure Tools 2.6
Microsoft Azure Tools for Microsoft Visual Studio 2013 - v2.6.30508.1601

Microsoft Azure Tools 2.5
Microsoft Azure Tools for Microsoft Visual Studio 2013 - v2.5.30319.1603

NuGet Package Manager 2.8.60610.756
NuGet Package Manager in Visual Studio. For more information about NuGet, visit http://docs.nuget.org/.

Office Developer Tools for Visual Studio 2013 ENU 12.0.40429
Microsoft Office Developer Tools for Visual Studio 2013 ENU

PreEmptive Analytics Visualizer 1.2
Microsoft Visual Studio extension to visualize aggregated summaries from the PreEmptive Analytics product.

Release Management for Visual Studio Package 1.0
Release Management for Visual Studio

SQL Server Data Tools 12.0.50512.0
Microsoft SQL Server Data Tools

Telerik Data Access 2015.1.225.1
Telerik Data Access Copyright © 1996–2015 Telerik AD
Telerik Data Access is the ultimate data access layer solution for Microsoft .NET database applications.
www.telerik.com/orm

Telerik Windows Phone VSExtensions 2015.3.622.0
Telerik UI for Windows Phone VSExtensions

VSProject.Extension 1.0
Information about my package

Windows Installer XML Toolset 3.8.1128.0
Windows Installer XML Toolset version 3.8.1128.0
Copyright (c) Outercurve Foundation. All rights reserved.

Windows Phone 8.1 SDK Integration 1.0
This package integrates the tools for the Windows Phone 8.1 SDK into the menus and controls of Visual Studio.

Workflow Manager Tools 1.0 1.0
This package contains the necessary Visual Studio integration components for Workflow Manager.

Xamarin 3.11.1443.0 (39031d3)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.

Xamarin.Android 5.1.6.7 (58099c5358da3488b0e7fb0bb4af47aca7cc61d6)
Visual Studio plugin to enable development for Xamarin.Android.

Xamarin.Forms Intellisense 1.0
Provides intellisense for Xamarin.Forms in the XML editor.

Xamarin.iOS 9.0.1.0 (7eaf3bc2053ad0d4f720422bb3dc13504d61f7b5)
Visual Studio extension to enable development for Xamarin.iOS.

Xamarin.iOS Unified Migration 1.0
Automated migration for Xamarin iOS Classic projects to Unified

Xamarin.TestCloud.Integration 1.0
Early preview of Xamarin Test Cloud integration

Application Styling Configuration Dialog
For more information about Application Styling, please see the Infragistics, Inc., website at
http://www.infragistics.com
Copyright (c) 2007 Infragistics, Inc. All Rights Reserved.

Git Extensions
Git Extensions is a graphical interface for Git
For more information about Git Extensions, see the Git Extensions website at
http://sourceforge.net/projects/gitextensions/
Copyright © 2008-2014 Henk Westhuis

**Additional Information:**

   It is thought that Asp.net 5.0 might have something to do with the dnxcore50 target being part of profile 78 now, however I can't seem to reproduce this yet.
Comment 1 Matt Ward 2015-10-06 04:52:43 UTC
It looks like their PCL profiles are messed up. Possibly the ASP.NET 5 beta made some changes to their PCL profiles which are still there.

VS 2013 uses NuGet v2. The target frameworks for the PCL shown in `portable-net45+dnxcore50+win+wp80+MonoAndroid10+xamarinios10+MonoTouch10` are taken from the .xml files in the SupportedFrameworks directory inside one of the PCL profile directories inside:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable

I would look at the .csproj file and find the Profile defined there and then look in the corresponding directory. It looks Profile78 to me, apart from the dnxcore part. For Profile78 the directory would be:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\SupportedFrameworks

In this directory I would expect only the following .xml files:

.NET Framework 4.5.xml
Windows 8.xml
Windows Phone Silverlight 8.xml
Xamarin.Android.xml
Xamarin.iOS.Unified.xml
Xamarin.iOS.xml

With VS 2015 and ASP.NET 5 beta7 they seem to have added the dnxcore framework but only for PCL 5.0 projects (.NETPortable, Version=5.0). I do not see any ASP.NET Core 5.0.xml files anywhere else.
Comment 2 Matt Ward 2015-10-07 04:26:04 UTC
The same error was reported on the forums:

http://forums.xamarin.com/discussion/52846/cannot-create-new-xamarin-forms-project-pcl-in-xamarin-studio-win10-vs2015

So it looks like Visual Studio 2015 or ASP.NET 5 is adding ASP.NET Core 5.0.xml files to the PCL profiles. Although with the latest ASP.NET 5 beta 7 installed I do not have these .xml files.

I do not know why these are added. They are not required by NuGet 3 so these ASP.NET Core 5.0.xml files should be removed. NuGet 3 hard codes the PCL profile information and does not read the .xml files. They are only used by NuGet 2 which is not supported in Visual Studio 2015.
Comment 3 Thierry Fierens 2015-10-07 11:59:35 UTC
Hi,

This is still now working. Here is a quick screencast to highlight the problem.

http://screencast.com/t/imJg9iLaqdc

As you can see, when I create my new project/solution, the .net framework 4.0 is selected.

I still get the error but when I go check the PCL profile in the .csproj, you can see that it is set to 78 but also .net 4.5.

You can see when I go check the specific location in the 4.0 project, profile78 is missing which is technically not surprising as it is using the .net 4.5 framework and when I go in the .net 4.5 folder, Profile78 is there and you can see the asp.net 5.0 is also listed in the supported framework folder.

So I have few questions:

1. Can we deleted this .xml file from there?

2. Why is .net assigning the wrong framework to the Xamarin project when I clearly select .net 4.0 but it is somehow assigning .net 4.5. 

3. Where are the Xamarin project templates defined, more specifically the portable one since that's the one I want I'm using? Could there be a setting defined in there that tell the .net IDE to use another framework and/or sets it as a minimum requirement. I hope this is not the case. What settings if any, should I be looking for?

PS: Small typo in the original log. We never used .net 2015 with Xamarin. We just installed it but our project was always created as a .net 2013 and we have no problem opening an existing project in .net 2013, we just can't create them anymore.
Comment 4 Matt Ward 2015-10-07 12:21:14 UTC
1. Yes I would delete the ASP.NET Core 5.0.xml file from the Profile78\SupportedFrameworks directory. You can make a backup copy if you want to. From the screencast the PCL project created by the Xamarin.Forms template uses Profile78.

Not sure what installed this ASP.NET Core 5.0.xml file. Visual Studio 2013 does not support ASP.NET 5 so I think this .xml file should be removed.

The ASP.NET Core 5.0.xml file is causing the error. It is adding the dnxcore50 framework to set of frameworks for Profile78 which is causing NuGet to show the error. This would likely stop other NuGet packages that contain portable class library assemblies from being installed into a PCL project.

2. The PCL profiles used by Xamarin.Forms support .NET 4.5. Both Profile 78 and Profile 259 (which are the ones Xamarin recommends) support .NET 4.5 so the selection in the Project dialog would not affect the final project being created.

3. The Xamarin.Forms templates are defined in the Xamarin Visual Studio extension. Xamarin.Forms PCL assemblies target a profile that includes .NET 4.5 so you cannot change the PCL profile so it includes .NET 4.0 as part of its profile.
Comment 5 Thierry Fierens 2015-10-08 08:53:44 UTC
Hi Matt,

Thanks for the update. 

I deleted the ASP.NET Core 5.0.xml as suggested and it resolved the problem.

I still don't get why Microsoft added this xml file in the 4.5 framework profile!! Doesn't make sense!

As for the .NET 4.0 issue, it's strange as I was convinced that our working Xamarin solution was based on .net 4.0 but it doesn't appear to be the case. The portable library is set to 4.5, so no issue here again.

Many thanks for this valuable feedback!!

Take care,

Thierry
Comment 6 Matt Ward 2015-10-08 10:03:48 UTC
Going to mark this as resolved/answered. If Microsoft decide to install the  ASP.NET Core 5.0.xml file when ASP.NET 5 is finally released we may have to modify the Xamarin.Forms NuGet package to support dnxcore. However I suspect this will not be the case since the PCL profile information is hard coded for NuGet 3 and does not use the PCL .xml files.
Comment 7 Matt Ward 2015-10-15 08:31:33 UTC
It looks like one of the Microsoft teams introduced this new profile in VS 2015 update 1 or Windows Tools 1.1. There is a bug opened against NuGet for this problem. The NuGet team want the change reverted.

https://github.com/NuGet/Home/issues/1562
Comment 8 Matt Ward 2015-10-26 13:27:23 UTC
*** Bug 35259 has been marked as a duplicate of this bug. ***
Comment 9 Boolship 2015-11-18 15:50:12 UTC
I get same error today, even after removing ASP.NET Core 5.0.xml file.

Xamarin Studio Version 5.10 (build 871)
Operating System Windows 10.0.10240.0 (64 bit)

New, Xamarin Forms App, Next, App Name Test01, Next, Create

Adding Xamarin.Forms...
Installing 'Xamarin.Forms 1.3.5.6335'.
Added file 'Xamarin.Forms.Build.Tasks.dll' to folder 'Xamarin.Forms.1.3.5.6335\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'Xamarin.Forms.targets' to folder 'Xamarin.Forms.1.3.5.6335\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'FormsViewGroup.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Core.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Core.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Platform.Android.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Xaml.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Xaml.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10'.
Added file 'Xamarin.Forms.Core.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoTouch10'.
Added file 'Xamarin.Forms.Core.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoTouch10'.
Added file 'Xamarin.Forms.Platform.iOS.Classic.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoTouch10'.
Added file 'Xamarin.Forms.Xaml.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoTouch10'.
Added file 'Xamarin.Forms.Xaml.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\MonoTouch10'.
Added file 'Xamarin.Forms.Core.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'Xamarin.Forms.Core.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'Xamarin.Forms.Xaml.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'Xamarin.Forms.Xaml.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10'.
Added file 'Xamarin.Forms.Core.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\WP80'.
Added file 'Xamarin.Forms.Core.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\WP80'.
Added file 'Xamarin.Forms.Platform.WP8.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\WP80'.
Added file 'Xamarin.Forms.Xaml.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\WP80'.
Added file 'Xamarin.Forms.Xaml.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\WP80'.
Added file 'Xamarin.Forms.Core.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10'.
Added file 'Xamarin.Forms.Core.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10'.
Added file 'Xamarin.Forms.Platform.iOS.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10'.
Added file 'Xamarin.Forms.Xaml.dll' to folder 'Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10'.
Added file 'Xamarin.Forms.Xaml.xml' to folder 'Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10'.
Added file 'Xamarin.Forms.1.3.5.6335.nupkg' to folder 'Xamarin.Forms.1.3.5.6335'.
Successfully installed 'Xamarin.Forms 1.3.5.6335'.
Adding 'Xamarin.Forms 1.3.5.6335' to Test01.
Could not install package 'Xamarin.Forms 1.3.5.6335'. You are trying to install this package into a project that targets 'portable-net45+dnxcore50+win+wp80+MonoAndroid10+xamarinios10+MonoTouch10', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

This is not good. Please advise.
Comment 10 Matt Ward 2015-11-18 16:00:58 UTC
@boolship - NuGet is still finding the dnxcore50 PCL profile. If you have deleted the ASP.NET Core 5.0.xml file then you will need to restart Xamarin Studio since NuGet caches the PCL profile information.
Comment 11 Boolship 2015-11-18 16:46:03 UTC
I rebooted after deleting ASP.NET Core 5.0.xml file, and then reinstalled Xamarin Studio. The error was resolved.

During this process I disabled my trial license. Forms applications are not allowed with the Starter Edition. Uninstalling.

Thanks for your reply.
Comment 12 cola kamornik 2015-12-27 12:59:44 UTC
removing ASP.NET Core 5.0.xml worked magic for me!
Comment 13 mcadle 2016-01-02 21:46:42 UTC
I am having the same issue.  Brand new install of Xamarin Studio, never installed Visual Studio.  When I try to go to the paths listed above to delete the file, they don't exist.  I am on Windows 7.  

On a side, I see that XForms has been updated to 2.0.  How do we make it go there instead of attempting to install the package for Xamarin.Forms 1.3.5.6335?
Comment 14 Matt Ward 2016-01-12 12:11:33 UTC
@mcadle - The DNXCore profiles are installed by what Microsoft refers to as Win10Tools, which presumably means you can get them if you install the Windows 10 SDK, but normally you get them if you install Visual Studio 2015. 

Microsoft have removed the DNXCore PCL profiles with the latest version of the Win10Tools. I updated VS 2015 to update 1 and the ASP.NET Core 5.0.xml files were renamed so their extensions are .frameworkxml so NuGet v2 ignores them.

If they ASP.NET Core 5.0.xml files do not exist then you should not be getting an error message from NuGet refering to DNXCore50. What NuGet error are you seeing?

The Xamarin Studio project templates would need to be updated for them to install Xamarin.Forms v2 out of the box. Whilst it is possible to modify the templates yourself this is not recommended nor supported.