From c8bb32c7f17eb622299729151b83532d55b71faa Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 20 Jun 2016 14:41:45 -0700 Subject: [PATCH 01/32] Separated SDK localized/core packages --- setup/FSharp.SDK/FSharp.SDK.wixproj | 10 +- setup/FSharp.SDK/FSharp.SDK.wxs | 26 +-- .../component-groups/Compiler_LangPack.wxs | 45 +++++ .../component-groups/Compiler_Redist.wxs | 108 ++++++++++ .../component-groups/Compiler_SDK.wxs | 144 -------------- .../Langpack_ManagedFiles.wxs | 171 ---------------- .../component-groups/Redist_ManagedFiles.wxs | 187 ------------------ .../component-groups/Runtime_LangPack.wxs | 166 ++++++++++++++++ .../component-groups/Runtime_Redist.wxs | 183 +++++++++++++++++ 9 files changed, 521 insertions(+), 519 deletions(-) create mode 100644 setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs create mode 100644 setup/FSharp.SDK/component-groups/Compiler_Redist.wxs delete mode 100644 setup/FSharp.SDK/component-groups/Compiler_SDK.wxs delete mode 100644 setup/FSharp.SDK/component-groups/Langpack_ManagedFiles.wxs delete mode 100644 setup/FSharp.SDK/component-groups/Redist_ManagedFiles.wxs create mode 100644 setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs create mode 100644 setup/FSharp.SDK/component-groups/Runtime_Redist.wxs diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 668e4592800..f6995577ddd 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -43,10 +43,12 @@ - - - - + + + + + + diff --git a/setup/FSharp.SDK/FSharp.SDK.wxs b/setup/FSharp.SDK/FSharp.SDK.wxs index 4967656f0bf..ed48de5d937 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wxs +++ b/setup/FSharp.SDK/FSharp.SDK.wxs @@ -14,29 +14,29 @@ - - - - - - + + + + + - - + + + + + \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs b/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs new file mode 100644 index 00000000000..bec627f2e4a --- /dev/null +++ b/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs new file mode 100644 index 00000000000..bf50e425a9d --- /dev/null +++ b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Compiler_SDK.wxs b/setup/FSharp.SDK/component-groups/Compiler_SDK.wxs deleted file mode 100644 index 0c3ca0f90e8..00000000000 --- a/setup/FSharp.SDK/component-groups/Compiler_SDK.wxs +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Langpack_ManagedFiles.wxs b/setup/FSharp.SDK/component-groups/Langpack_ManagedFiles.wxs deleted file mode 100644 index 756e492a514..00000000000 --- a/setup/FSharp.SDK/component-groups/Langpack_ManagedFiles.wxs +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Redist_ManagedFiles.wxs b/setup/FSharp.SDK/component-groups/Redist_ManagedFiles.wxs deleted file mode 100644 index 73e8b104e7e..00000000000 --- a/setup/FSharp.SDK/component-groups/Redist_ManagedFiles.wxs +++ /dev/null @@ -1,187 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs new file mode 100644 index 00000000000..b3feda634ea --- /dev/null +++ b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs @@ -0,0 +1,166 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs new file mode 100644 index 00000000000..b79275fedf6 --- /dev/null +++ b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 1be26efcefeb1e5fc977b1816fa03dbcead3ebdb Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 20 Jun 2016 16:05:32 -0700 Subject: [PATCH 02/32] Moved locales properties to msbuild --- setup/FSharp.SDK/Common.Wix.Properties.wxs | 46 +++--- setup/FSharp.SDK/FSharp.SDK.wixproj | 25 ++-- setup/FSharp.SDK/FSharp.SDK.wxs | 16 +-- .../component-groups/Compiler_LangPack.wxs | 38 ++--- .../Compiler_OtherResources.wxs | 12 +- .../component-groups/Compiler_Redist.wxs | 26 ++-- .../component-groups/Runtime_LangPack.wxs | 136 +++++++++--------- .../component-groups/Runtime_Redist.wxs | 34 ++--- setup/FSharp.Setup.props | 128 ++++++++++++++--- .../FSharpPreprocessorExtension.cs | 51 ------- setup/fsharp-setup-build.proj | 23 ++- 11 files changed, 293 insertions(+), 242 deletions(-) diff --git a/setup/FSharp.SDK/Common.Wix.Properties.wxs b/setup/FSharp.SDK/Common.Wix.Properties.wxs index 65166a349dd..6f947532403 100644 --- a/setup/FSharp.SDK/Common.Wix.Properties.wxs +++ b/setup/FSharp.SDK/Common.Wix.Properties.wxs @@ -2,12 +2,6 @@ - - - - - - @@ -18,64 +12,64 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -86,12 +80,14 @@ - + + + - + diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index f6995577ddd..7d412ac9803 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -21,7 +21,11 @@ - $(DefineConstants);Lang=$(Lang) + $(DefineConstants);LocaleCode=$(LocaleCode) + $(DefineConstants);LocaleId=$(LocaleId) + $(DefineConstants);LocaleRegion=$(LocaleRegion) + $(DefineConstants);IsLangPack=$(IsLangPack) + $(DefineConstants);BinariesDir=$(BinariesDir) $(DefineConstants);FSharpTreeRoot=$(FSharpTreeRoot) $(DefineConstants);FSharpCoreRedistDir=$(FSharpCoreRedistDir) @@ -43,12 +47,12 @@ - - - + + + - - + + @@ -60,8 +64,11 @@ - - + + + + + @@ -69,6 +76,6 @@ - + \ No newline at end of file diff --git a/setup/FSharp.SDK/FSharp.SDK.wxs b/setup/FSharp.SDK/FSharp.SDK.wxs index ed48de5d937..1a1f9247d42 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wxs +++ b/setup/FSharp.SDK/FSharp.SDK.wxs @@ -6,9 +6,9 @@ - + - + @@ -19,11 +19,11 @@ Description="Installs the Visual F# programming language and all associated components." Title="Visual F#"> - + + + - - @@ -32,10 +32,10 @@ Description="Runtime components for F# compiled binaries." Display="hidden"> - - - + + + diff --git a/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs b/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs index bec627f2e4a..82e467a8dc4 100644 --- a/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs +++ b/setup/FSharp.SDK/component-groups/Compiler_LangPack.wxs @@ -5,39 +5,39 @@ - - - - - - + + + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs b/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs index 20fad81b1d1..f60d1589306 100644 --- a/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs +++ b/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs @@ -7,25 +7,25 @@ - + - + - + - - - + + + diff --git a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs index bf50e425a9d..751877540ba 100644 --- a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs +++ b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs @@ -23,7 +23,7 @@ - + @@ -31,67 +31,67 @@ - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs index b3feda634ea..d0c41709743 100644 --- a/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs +++ b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs @@ -3,8 +3,8 @@ - - + + @@ -39,124 +39,124 @@ - + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + diff --git a/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs index b79275fedf6..0cd71f534fd 100644 --- a/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs +++ b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs @@ -35,7 +35,7 @@ - + @@ -43,7 +43,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -59,7 +59,7 @@ - + @@ -67,7 +67,7 @@ - + @@ -78,7 +78,7 @@ - + @@ -86,7 +86,7 @@ - + @@ -94,7 +94,7 @@ - + @@ -102,7 +102,7 @@ - + @@ -110,7 +110,7 @@ - + @@ -121,7 +121,7 @@ - + @@ -129,7 +129,7 @@ - + @@ -137,7 +137,7 @@ - + @@ -145,7 +145,7 @@ - + @@ -153,7 +153,7 @@ - + @@ -164,7 +164,7 @@ - + @@ -172,7 +172,7 @@ - + diff --git a/setup/FSharp.Setup.props b/setup/FSharp.Setup.props index ea36f75549e..904e5215544 100644 --- a/setup/FSharp.Setup.props +++ b/setup/FSharp.Setup.props @@ -1,23 +1,113 @@ - - 2.0 - 3.10 - 3.10.0.1503 - $(SetupRootFolder)\..\packages\WiX.Toolset.2015.$(WiXToolset2015Version)\tools\wix - $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Core.Redist.1.0.0 - $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Type.Providers.Redist.1.0.0 - - - net40 - Debug - AnyCPU - - - $(SetupRootFolder)\..\$(Configuration) - obj\$(Configuration)\ - $(BinariesDir)\setup - $(BinariesDir)\setup\$(Lang) - + + 2.0 + 3.10 + 3.10.0.1503 + $(SetupRootFolder)\..\packages\WiX.Toolset.2015.$(WiXToolset2015Version)\tools\wix + $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Core.Redist.1.0.0 + $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Type.Providers.Redist.1.0.0 + + + + net40 + Debug + AnyCPU + + + + $(SetupRootFolder)\..\$(Configuration) + obj\$(Configuration)\ + $(BinariesDir)\setup + $(BinariesDir)\setup\$(Lang) + + + + + ENU + 1033 + en-us + false + + + CHT + 1028 + zh-tw + true + + + CSY + 1029 + cs-cz + true + + + DEU + 1031 + de-de + true + + + FRA + 1036 + fr-fr + true + + + ITA + 1040 + it-it + true + + + JPN + 1041 + ja-jp + true + + + KOR + 1042 + ko-kr + true + + + PLK + 1045 + pl-pl + true + + + PTB + 1046 + pt-br + true + + + RUS + 1049 + ru-ru + true + + + TRK + 1055 + tr-tr + true + + + CHS + 2052 + zh-cn + true + + + ESN + 3082 + es-es + true + + + diff --git a/setup/FSharp.Wix.Extensions/FSharpPreprocessorExtension.cs b/setup/FSharp.Wix.Extensions/FSharpPreprocessorExtension.cs index 27e7663be5a..d6736218edc 100644 --- a/setup/FSharp.Wix.Extensions/FSharpPreprocessorExtension.cs +++ b/setup/FSharp.Wix.Extensions/FSharpPreprocessorExtension.cs @@ -14,24 +14,6 @@ public class FSharpPreprocessorExtension : PreprocessorExtension { private readonly string[] prefixes = new string[] { "fsharp" }; - private readonly List supportedLanguages = new List() - { - new CultureInfo(1028), // CHT - new CultureInfo(1029), // CSY - new CultureInfo(1031), // DEU - new CultureInfo(1033), // ENU - new CultureInfo(1036), // FRA - new CultureInfo(1040), // ITA - new CultureInfo(1041), // JPN - new CultureInfo(1042), // KOR - new CultureInfo(1045), // PLK - new CultureInfo(1046), // PTB - new CultureInfo(1049), // RUS - new CultureInfo(1055), // TRK - new CultureInfo(2052), // CHS - new CultureInfo(3082), // ESN - }; - public override string[] Prefixes { get { return this.prefixes; } @@ -45,10 +27,6 @@ public override string EvaluateFunction(string prefix, string function, string[] { case "guid": return this.Guid(args); - case "localeToId": - return this.LocaleToId(args); - case "localeToCulture": - return this.LocaleToCulture(args); } } @@ -63,34 +41,5 @@ private string Guid(string[] args) return new Guid(output).ToString(); } - - private string LocaleToId(string[] args) - { - return this.GetSupportedLanguage(args).LCID.ToString(); - } - - private string LocaleToCulture(string[] args) - { - return this.GetSupportedLanguage(args).Name; - } - - private CultureInfo GetSupportedLanguage(string[] args) - { - if (args.Length != 1) - { - throw new ArgumentException("Exactly one argument (locale) should be provided."); - } - - var language = this.supportedLanguages.FirstOrDefault(l => l.ThreeLetterWindowsLanguageName.ToString() == args[0]); - - if (language == null) - { - throw new ArgumentException($"Locale '{args[0]}' is not supported."); - } - else - { - return language; - } - } } } diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj index be9ad8f2a22..455d151ab82 100644 --- a/setup/fsharp-setup-build.proj +++ b/setup/fsharp-setup-build.proj @@ -6,13 +6,10 @@ . net40 - ENU Debug - - @@ -23,13 +20,17 @@ - + + - + + @@ -41,7 +42,11 @@ - + + + @@ -53,7 +58,11 @@ - + + + From be0e744358a5583c3737f29630e9153e0646ba97 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 20 Jun 2016 16:18:51 -0700 Subject: [PATCH 03/32] Removed Compiler_OtherResources --- setup/FSharp.SDK/FSharp.SDK.wixproj | 1 - setup/FSharp.SDK/FSharp.SDK.wxs | 1 - .../Compiler_OtherResources.wxs | 32 ------------------- .../component-groups/Compiler_Redist.wxs | 22 +++++++++++++ 4 files changed, 22 insertions(+), 34 deletions(-) delete mode 100644 setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 7d412ac9803..552567012fc 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -48,7 +48,6 @@ - diff --git a/setup/FSharp.SDK/FSharp.SDK.wxs b/setup/FSharp.SDK/FSharp.SDK.wxs index 1a1f9247d42..ca798e15ff6 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wxs +++ b/setup/FSharp.SDK/FSharp.SDK.wxs @@ -23,7 +23,6 @@ - diff --git a/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs b/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs deleted file mode 100644 index f60d1589306..00000000000 --- a/setup/FSharp.SDK/component-groups/Compiler_OtherResources.wxs +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs index 751877540ba..e9dbab8d114 100644 --- a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs +++ b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs @@ -19,6 +19,10 @@ + + + + @@ -104,5 +108,23 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file From 754823491d46e4ba2e0e810621451042686249df Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 20 Jun 2016 18:30:17 -0700 Subject: [PATCH 04/32] Localized VS Insertion --- setup/FSharp.SDK/FSharp.SDK.wixproj | 2 +- setup/Swix/FSharp.SDK/FSharp.SDK.swixproj | 10 +++ setup/Swix/FSharp.SDK/Files.swr | 9 +- setup/Swix/Microsoft.FSharp.vsmanproj | 29 ++++--- .../{ => Files}/CommonFiles.swr | 9 +- .../{ => Files}/DesktopTemplates.swr | 27 +++--- .../{ => Files}/ProfessionalTemplates.swr | 37 ++++---- .../{ => Files}/WebDevelopmentTemplates.swr | 27 +++--- .../LangPack/CommonFiles.LangPack.swr | 22 +++++ .../LangPack/DesktopTemplates.LangPack.swr | 25 ++++++ .../ProfessionalTemplates.LangPack.swr | 60 +++++++++++++ .../WebDevelopmentTemplates.LangPack.swr | 25 ++++++ .../VisualFSharpVSIX.Desktop.swixproj | 35 -------- .../VisualFSharpVSIX.Professional.swixproj | 35 -------- .../VisualFSharpVSIX.WebDevelopment.swixproj | 35 -------- .../VisualFSharpVSIX.swixproj | 51 +++++++++++ setup/fsharp-setup-build.proj | 86 ++++++++++--------- 17 files changed, 298 insertions(+), 226 deletions(-) rename setup/Swix/VisualFSharpVSIX/{ => Files}/CommonFiles.swr (91%) rename setup/Swix/VisualFSharpVSIX/{ => Files}/DesktopTemplates.swr (72%) rename setup/Swix/VisualFSharpVSIX/{ => Files}/ProfessionalTemplates.swr (79%) rename setup/Swix/VisualFSharpVSIX/{ => Files}/WebDevelopmentTemplates.swr (72%) create mode 100644 setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr create mode 100644 setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr create mode 100644 setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr create mode 100644 setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr delete mode 100644 setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Desktop.swixproj delete mode 100644 setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Professional.swixproj delete mode 100644 setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.WebDevelopment.swixproj create mode 100644 setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 552567012fc..302a27c570f 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -75,6 +75,6 @@ - + \ No newline at end of file diff --git a/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj b/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj index 4b66278ec8a..9cb63fb34a7 100644 --- a/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj +++ b/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj @@ -5,6 +5,7 @@ neutral false manifest + FSharp.SDK.$(LocaleCode) true Debug $(FSharpSourcesRoot)\..\$(Configuration) @@ -15,9 +16,18 @@ $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) + $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) + $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) + $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) + + + + + + diff --git a/setup/Swix/FSharp.SDK/Files.swr b/setup/Swix/FSharp.SDK/Files.swr index 9b9e952323b..bcca0e56c1d 100644 --- a/setup/Swix/FSharp.SDK/Files.swr +++ b/setup/Swix/FSharp.SDK/Files.swr @@ -4,12 +4,7 @@ package name=Microsoft.FSharp.Msi version=4.1 vs.package.type=msi vs.package.chip=neutral - vs.package.language=neutral - -vs.localizedResources - vs.localizedResource language=en-us - title="Visual F# Tools" - description="Deploy Visual F# Tools templates to Visual Studio" + vs.package.language=$(LocaleRegion) vs.payloads - vs.payload source=$(BinariesFolder)\msi\FSharp.SDK.ENU.msi + vs.payload source=$(BinariesFolder)\msi\FSharp.SDK.$(LocaleCode).msi diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj index 300150a6576..4e5f0551410 100644 --- a/setup/Swix/Microsoft.FSharp.vsmanproj +++ b/setup/Swix/Microsoft.FSharp.vsmanproj @@ -1,19 +1,22 @@ - - ..\..\src - true - true - true - $(FSharpSourcesRoot)\..\$(Configuration)\insertion - - + + + + ..\..\src + true + true + true + $(FSharpSourcesRoot)\..\$(Configuration)\insertion + - + - - - - + + + + + + \ No newline at end of file diff --git a/setup/Swix/VisualFSharpVSIX/CommonFiles.swr b/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr similarity index 91% rename from setup/Swix/VisualFSharpVSIX/CommonFiles.swr rename to setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr index 6bba4346f6f..03ea7b814f7 100644 --- a/setup/Swix/VisualFSharpVSIX/CommonFiles.swr +++ b/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr @@ -1,14 +1,9 @@ use vs -package name=Microsoft.FSharp.Vsix +package name=Microsoft.FSharp.Vsix.$(VSSku) version=4.1 vs.package.chip=neutral - vs.package.language=en-us - -vs.localizedResources - vs.localizedResource language=en-us - title="Visual F# Tools" - description="Deploy Visual F# Tools templates to Visual Studio" + vs.package.language=$(LocaleRegion) folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets" diff --git a/setup/Swix/VisualFSharpVSIX/DesktopTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr similarity index 72% rename from setup/Swix/VisualFSharpVSIX/DesktopTemplates.swr rename to setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr index 3e3beb3fdfc..65cd58b3b71 100644 --- a/setup/Swix/VisualFSharpVSIX/DesktopTemplates.swr +++ b/setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr @@ -1,54 +1,49 @@ use vs -package name=Microsoft.FSharp.Vsix +package name=Microsoft.FSharp.Vsix.$(VSSku) version=4.1 vs.package.chip=neutral - vs.package.language=en-us + vs.package.language=$(LocaleRegion) -vs.localizedResources - vs.localizedResource language=en-us - title="Visual F# Tools" - description="Deploy Visual F# Tools templates to Visual Studio" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\AppConfig" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\CodeFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\ScriptFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\SignatureFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\TextFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\XMLFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\ConsoleProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\Program.fs" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\LibraryProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\TutorialProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/ProfessionalTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr similarity index 79% rename from setup/Swix/VisualFSharpVSIX/ProfessionalTemplates.swr rename to setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr index e0e8a0e1e34..39981ffc5e0 100644 --- a/setup/Swix/VisualFSharpVSIX/ProfessionalTemplates.swr +++ b/setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr @@ -1,89 +1,84 @@ use vs -package name=Microsoft.FSharp.Vsix +package name=Microsoft.FSharp.Vsix.$(VSSku) version=4.1 vs.package.chip=neutral - vs.package.language=en-us + vs.package.language=$(LocaleRegion) -vs.localizedResources - vs.localizedResource language=en-us - title="Visual F# Tools" - description="Deploy Visual F# Tools templates to Visual Studio" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\AppConfig" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\CodeFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\ScriptFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\SignatureFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\TextFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\XMLFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\ConsoleProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\Program.fs" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\LibraryProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\NetCore259Project" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore259Project" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\NETCore259PortableLibrary.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\NetCore78Project" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore78Project" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\NETCore78PortableLibrary.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\NetCoreProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCoreProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\NETCore7PortableLibrary.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\PortableLibraryProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\PortableLibraryProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\SilverlightProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Script.fsx" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\TutorialProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/WebDevelopmentTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr similarity index 72% rename from setup/Swix/VisualFSharpVSIX/WebDevelopmentTemplates.swr rename to setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr index ef2bc075cc4..768234fec59 100644 --- a/setup/Swix/VisualFSharpVSIX/WebDevelopmentTemplates.swr +++ b/setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr @@ -1,54 +1,49 @@ use vs -package name=Microsoft.FSharp.Vsix +package name=Microsoft.FSharp.Vsix.$(VSSku) version=4.1 vs.package.chip=neutral - vs.package.language=en-us + vs.package.language=$(LocaleRegion) -vs.localizedResources - vs.localizedResource language=en-us - title="Visual F# Tools" - description="Deploy Visual F# Tools templates to Visual Studio" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\AppConfig" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\CodeFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\ScriptFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\SignatureFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\TextFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\XMLFile" +folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\LibraryProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\SilverlightProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Script.fsx" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\TutorialProject" +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr b/setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr new file mode 100644 index 00000000000..3e21d50e1a0 --- /dev/null +++ b/setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr @@ -0,0 +1,22 @@ +use vs + +package name=Microsoft.FSharp.Vsix.$(VSSku) + version=4.1 + vs.package.chip=neutral + vs.package.language=$(LocaleRegion) + +folder "InstallDir:Common7\IDE\PublicAssemblies\$(LocaleRegion)" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.Core.resources.dll" vs.file.ngen=yes + +folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp\$(LocaleRegion)" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.Compiler.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.Core.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.LanguageService.Base.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.LanguageService.Compiler.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.LanguageService.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.ProjectSystem.Base.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.ProjectSystem.FSharp.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.ProjectSystem.PropertyPages.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.VS.FSI.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\fsi.resources.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FsiAnyCPU.resources.dll" vs.file.ngen=yes diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr b/setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr new file mode 100644 index 00000000000..12d89642f58 --- /dev/null +++ b/setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr @@ -0,0 +1,25 @@ +use vs + +package name=Microsoft.FSharp.Vsix.$(VSSku) + version=4.1 + vs.package.chip=neutral + vs.package.language=$(LocaleRegion) + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\Program.fs" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\TutorialProject\Tutorial.fsx" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr b/setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr new file mode 100644 index 00000000000..fc5ea82c0fd --- /dev/null +++ b/setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr @@ -0,0 +1,60 @@ +use vs + +package name=Microsoft.FSharp.Vsix.$(VSSku) + version=4.1 + vs.package.chip=neutral + vs.package.language=$(LocaleRegion) + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\Program.fs" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore259Project" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCore259Project\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\NETCore259PortableLibrary.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCore259Project\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore78Project" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCore78Project\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\NETCore78PortableLibrary.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCore78Project\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCoreProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCoreProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\NETCore7PortableLibrary.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\NetCoreProject\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\PortableLibraryProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\PortableLibraryProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\PortableLibraryProject\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\SilverlightProject\Script.fsx" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\TutorialProject\Tutorial.fsx" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr b/setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr new file mode 100644 index 00000000000..db8584fca2b --- /dev/null +++ b/setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr @@ -0,0 +1,25 @@ +use vs + +package name=Microsoft.FSharp.Vsix.$(VSSku) + version=4.1 + vs.package.chip=neutral + vs.package.language=$(LocaleRegion) + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\Script.fsx" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\SilverlightProject\Script.fsx" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" + +folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" + file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\TutorialProject\Tutorial.fsx" + file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Desktop.swixproj b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Desktop.swixproj deleted file mode 100644 index cc70a56b5e6..00000000000 --- a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Desktop.swixproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - ..\..\..\src - neutral - false - vsix - true - Debug - $(FSharpSourcesRoot)\..\$(Configuration) - $(BinariesFolder)\insertion - VisualFSharpVSIX.Desktop - $(MSBuildThisFileDirectory)obj - - - - - - $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) - - - - - - - - - - - - VsixSHA2 - - - - diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Professional.swixproj b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Professional.swixproj deleted file mode 100644 index 12cd1f9139e..00000000000 --- a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.Professional.swixproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - ..\..\..\src - neutral - false - vsix - true - Debug - $(FSharpSourcesRoot)\..\$(Configuration) - $(BinariesFolder)\insertion - VisualFSharpVSIX.Professional - $(MSBuildThisFileDirectory)obj - - - - - - $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) - - - - - - - - - - - - VsixSHA2 - - - - diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.WebDevelopment.swixproj b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.WebDevelopment.swixproj deleted file mode 100644 index 30414a951c3..00000000000 --- a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.WebDevelopment.swixproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - ..\..\..\src - neutral - false - vsix - true - Debug - $(FSharpSourcesRoot)\..\$(Configuration) - $(BinariesFolder)\insertion - VisualFSharpVSIX.WebDevelopment - $(MSBuildThisFileDirectory)obj - - - - - - $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) - - - - - - - - - - - - VsixSHA2 - - - - diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj new file mode 100644 index 00000000000..db001358996 --- /dev/null +++ b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj @@ -0,0 +1,51 @@ + + + + ..\..\..\src + neutral + false + vsix + true + Debug + $(FSharpSourcesRoot)\..\$(Configuration) + $(BinariesFolder)\insertion + VisualFSharpVSIX.$(VSSku).$(LocaleCode) + $(MSBuildThisFileDirectory)obj + + + + + + $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) + $(PackagePreprocessorDefinitions);VSSku=$(VSSku) + $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) + $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) + $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) + $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) + + + + + + + + + + + + + + + VsixSHA2 + + + + + + + + + + + + diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj index 455d151ab82..4c52de553a3 100644 --- a/setup/fsharp-setup-build.proj +++ b/setup/fsharp-setup-build.proj @@ -10,65 +10,71 @@ - - - - - - - - - + + FSharp.SDK\FSharp.SDK.wixproj + None + + + FSharp.SDK\FSharp.SDK.wixproj + None + + + Swix\FSharp.SDK\FSharp.SDK.swixproj + None + + + Swix\VisualFSharpVSIX\VisualFSharpVSIX.swixproj + Professional + + + + + + + + + - + - + Properties="LocaleCode=%(LocalizedSetupProjects.LocaleCode);LocaleId=%(LocalizedSetupProjects.LocaleId);LocaleRegion=%(LocalizedSetupProjects.LocaleRegion);IsLangPack=%(LocalizedSetupProjects.IsLangPack);VSSku=%(LocalizedSetupProjects.VSSku)"/> - - - - - - - + - - - - - - - - - + Properties="LocaleCode=%(LocalizedSetupProjects.LocaleCode);LocaleId=%(LocalizedSetupProjects.LocaleId);LocaleRegion=%(LocalizedSetupProjects.LocaleRegion);IsLangPack=%(LocalizedSetupProjects.IsLangPack);VSSku=%(LocalizedSetupProjects.VSSku)"/> + - + - - - - - - - - - + Properties="LocaleCode=%(LocalizedSetupProjects.LocaleCode);LocaleId=%(LocalizedSetupProjects.LocaleId);LocaleRegion=%(LocalizedSetupProjects.LocaleRegion);IsLangPack=%(LocalizedSetupProjects.IsLangPack);VSSku=%(LocalizedSetupProjects.VSSku)"/> + From e4cc128e986c7b38f7a75f21889c4b26c0ada857 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Tue, 21 Jun 2016 14:07:41 -0700 Subject: [PATCH 05/32] Fix vsix signing --- setup/FSharp.SDK/FSharp.SDK.wixproj | 2 +- setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj | 9 ++------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 302a27c570f..11f8548abbb 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -63,7 +63,7 @@ - + diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj index db001358996..69810279ccb 100644 --- a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj +++ b/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj @@ -33,15 +33,10 @@ - - - - VsixSHA2 - - + - + From 83748d10c0162ab38e4c6f9b55fcf853c06dbe3d Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Tue, 28 Jun 2016 19:11:18 -0700 Subject: [PATCH 06/32] Using MSBuild 15.0 binaries from nuget --- packages.config | 1 + setup/FSharp.SDK/FSharp.SDK.wixproj | 3 +- .../component-groups/Compiler_Redist.wxs | 35 ++++++- .../component-groups/Runtime_LangPack.wxs | 48 +++++----- .../component-groups/Runtime_Redist.wxs | 96 +++++++++---------- setup/FSharp.Setup.props | 3 +- .../VisualFSharpVSIX/Files/CommonFiles.swr | 4 +- setup/resources/Fsi.Shipping.In.VS.config | 43 +++++++++ .../FSharp.Build-proto.fsproj | 17 +++- src/fsharp/FSharp.Build/FSharp.Build.fsproj | 17 +++- .../FSharp.Compiler-proto.fsproj | 34 +++++-- .../FSharp.Compiler/FSharp.Compiler.fsproj | 33 +++++-- .../FSharp.LanguageService.Compiler.fsproj | 33 +++++-- src/fsharp/ReferenceResolution.fs | 1 - .../VisualFSharpVsix/VisualFSharpVsix.csproj | 3 +- .../FSharp.LanguageService.Base.csproj | 5 +- .../FSharp.LanguageService.fsproj | 5 +- .../Project/AssemblyReferenceNode.cs | 1 - .../Project/ConfigProvider.cs | 1 - .../Project/ConfigurationProperties.cs | 1 - .../Project/FileNode.cs | 1 - .../Project/GroupingReferenceNode.cs | 1 - .../Project/Interfaces.cs | 1 - .../Project/LinkedFileNode.cs | 1 - .../Project/OutputGroup.cs | 1 - .../Project/ProjectConfig.cs | 1 - .../Project/ProjectDesignerDocumentManager.cs | 1 - .../Project/ProjectElement.cs | 6 +- .../Project/ProjectFactory.cs | 3 +- .../Project/ProjectNode.cs | 1 - .../Project/ProjectReferenceNode.cs | 1 - .../Project/ProjectSystem.Base.csproj | 21 ++-- .../Project/ReferenceContainerNode.cs | 1 - .../Project/Utilities.cs | 1 - .../AppConfigHelper.fs | 1 - .../FSharp.ProjectSystem.FSharp/Project.fs | 1 - .../ProjectSystem.fsproj | 16 +++- .../tests/Salsa/VisualFSharp.Salsa.fsproj | 16 +++- vsintegration/tests/Salsa/VsMocks.fs | 1 - vsintegration/tests/Salsa/salsa.fs | 6 +- .../tests/unittests/TestLib.ProjectSystem.fs | 1 - vsintegration/tests/unittests/Tests.Build.fs | 1 - .../tests/unittests/Tests.Powerpack.fs | 1 - .../tests/unittests/Tests.TaskReporter.fs | 1 - .../unittests/VisualFSharp.Unittests.fsproj | 16 +++- 45 files changed, 314 insertions(+), 172 deletions(-) create mode 100644 setup/resources/Fsi.Shipping.In.VS.config diff --git a/packages.config b/packages.config index c8c0d183d1d..c07f1ca1dba 100644 --- a/packages.config +++ b/packages.config @@ -16,4 +16,5 @@ + diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 11f8548abbb..6fc2909ca11 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -28,8 +28,7 @@ $(DefineConstants);BinariesDir=$(BinariesDir) $(DefineConstants);FSharpTreeRoot=$(FSharpTreeRoot) - $(DefineConstants);FSharpCoreRedistDir=$(FSharpCoreRedistDir) - $(DefineConstants);FSharpTypeProvidersRedistDir=$(FSharpTypeProvidersRedistDir) + $(DefineConstants);NugetPackagesDir=$(NugetPackagesDir) diff --git a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs index e9dbab8d114..9621c76c106 100644 --- a/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs +++ b/setup/FSharp.SDK/component-groups/Compiler_Redist.wxs @@ -18,6 +18,13 @@ + + + + + + + @@ -54,7 +61,7 @@ - + @@ -107,11 +114,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs index d0c41709743..8dc3c0d6bc9 100644 --- a/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs +++ b/setup/FSharp.SDK/component-groups/Runtime_LangPack.wxs @@ -75,32 +75,32 @@ - - + + - - + + - - + + - - + + - - + + @@ -108,32 +108,32 @@ - - + + - - + + - - + + - - + + - - + + @@ -141,14 +141,14 @@ - - + + - - + + diff --git a/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs index 0cd71f534fd..89d5a7fdc8f 100644 --- a/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs +++ b/setup/FSharp.SDK/component-groups/Runtime_Redist.wxs @@ -79,42 +79,42 @@ - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -122,42 +122,42 @@ - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -165,18 +165,18 @@ - - - - + + + + - - - - + + + + diff --git a/setup/FSharp.Setup.props b/setup/FSharp.Setup.props index 904e5215544..683a8929c52 100644 --- a/setup/FSharp.Setup.props +++ b/setup/FSharp.Setup.props @@ -6,8 +6,7 @@ 3.10 3.10.0.1503 $(SetupRootFolder)\..\packages\WiX.Toolset.2015.$(WiXToolset2015Version)\tools\wix - $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Core.Redist.1.0.0 - $(SetupRootFolder)\..\packages\Microsoft.VisualFSharp.Type.Providers.Redist.1.0.0 + $(SetupRootFolder)\..\packages diff --git a/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr b/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr index 03ea7b814f7..12b550de7cd 100644 --- a/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr +++ b/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr @@ -31,8 +31,6 @@ folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp" file source="$(BinariesFolder)\net40\bin\FsiAnyCPU.exe" vs.file.ngen=yes file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata" file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata" - file source="$(BinariesFolder)\net40\bin\fsi.exe.config" - file source="$(BinariesFolder)\net40\bin\fsiAnyCpu.exe.config" file source="$(BinariesFolder)\..\License.txt" file source="$(BinariesFolder)\net40\bin\RegisterFsharpPackage.pkgdef" file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Server.Shared.pkgdef" @@ -44,3 +42,5 @@ folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp" file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.FSharp.pkgdef" file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.PropertyPages.pkgdef" file source="$(BinariesFolder)\net40\bin\FSharp.VS.FSI.pkgdef" + file "fsi.exe.config" source="$(BinariesFolder)\setup\resources\Fsi.Shipping.In.VS.config" + file "fsiAnyCpu.exe.config" source="$(BinariesFolder)\setup\resources\Fsi.Shipping.In.VS.config" diff --git a/setup/resources/Fsi.Shipping.In.VS.config b/setup/resources/Fsi.Shipping.In.VS.config new file mode 100644 index 00000000000..9d5330422de --- /dev/null +++ b/setup/resources/Fsi.Shipping.In.VS.config @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/fsharp/FSharp.Build-proto/FSharp.Build-proto.fsproj b/src/fsharp/FSharp.Build-proto/FSharp.Build-proto.fsproj index d8db6885063..31d192aceab 100644 --- a/src/fsharp/FSharp.Build-proto/FSharp.Build-proto.fsproj +++ b/src/fsharp/FSharp.Build-proto/FSharp.Build-proto.fsproj @@ -47,11 +47,18 @@ - - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + diff --git a/src/fsharp/FSharp.Build/FSharp.Build.fsproj b/src/fsharp/FSharp.Build/FSharp.Build.fsproj index 407bc789856..e835d52c57a 100644 --- a/src/fsharp/FSharp.Build/FSharp.Build.fsproj +++ b/src/fsharp/FSharp.Build/FSharp.Build.fsproj @@ -55,11 +55,18 @@ - - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + diff --git a/src/fsharp/FSharp.Compiler-proto/FSharp.Compiler-proto.fsproj b/src/fsharp/FSharp.Compiler-proto/FSharp.Compiler-proto.fsproj index 7eb20114970..b0a6728d7a5 100644 --- a/src/fsharp/FSharp.Compiler-proto/FSharp.Compiler-proto.fsproj +++ b/src/fsharp/FSharp.Compiler-proto/FSharp.Compiler-proto.fsproj @@ -467,16 +467,30 @@ - - - - - - - ..\..\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll - ..\..\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll - ..\..\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll - ..\..\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll + + + $(FSharpSourcesRoot)\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll + + + $(FSharpSourcesRoot)\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + diff --git a/src/fsharp/FSharp.Compiler/FSharp.Compiler.fsproj b/src/fsharp/FSharp.Compiler/FSharp.Compiler.fsproj index 9ba9ef50d9f..8ee6a0dbb75 100644 --- a/src/fsharp/FSharp.Compiler/FSharp.Compiler.fsproj +++ b/src/fsharp/FSharp.Compiler/FSharp.Compiler.fsproj @@ -518,15 +518,30 @@ - - - - - - ..\..\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll - ..\..\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll - ..\..\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll - ..\..\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll + + + $(FSharpSourcesRoot)\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll + + + $(FSharpSourcesRoot)\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + diff --git a/src/fsharp/FSharp.LanguageService.Compiler/FSharp.LanguageService.Compiler.fsproj b/src/fsharp/FSharp.LanguageService.Compiler/FSharp.LanguageService.Compiler.fsproj index bc4892ad7a0..b97a87771c1 100644 --- a/src/fsharp/FSharp.LanguageService.Compiler/FSharp.LanguageService.Compiler.fsproj +++ b/src/fsharp/FSharp.LanguageService.Compiler/FSharp.LanguageService.Compiler.fsproj @@ -577,15 +577,30 @@ - - - - - - ..\..\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll - ..\..\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll - ..\..\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll - ..\..\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.PortablePdb.1.0.0-rc-60301\lib\portable-net45+win8\Microsoft.DiaSymReader.PortablePdb.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.DiaSymReader.1.0.7\lib\portable-net45+win8\Microsoft.DiaSymReader.dll + + + $(FSharpSourcesRoot)\..\packages\System.Reflection.Metadata.1.3.0-beta-23816\lib\portable-net45+win8\System.Reflection.Metadata.dll + + + $(FSharpSourcesRoot)\..\packages\System.Collections.Immutable.1.2.0-rc3-23805\lib\portable-net45+win8+wp8+wpa81 + {DED3BBD7-53F4-428A-8C9F-27968E768605} FSharp.Core diff --git a/src/fsharp/ReferenceResolution.fs b/src/fsharp/ReferenceResolution.fs index 7340b8a429f..6c0685349b1 100644 --- a/src/fsharp/ReferenceResolution.fs +++ b/src/fsharp/ReferenceResolution.fs @@ -39,7 +39,6 @@ module internal MSBuildResolver = open Microsoft.Build.Tasks open Microsoft.Build.Utilities open Microsoft.Build.Framework - open Microsoft.Build.BuildEngine open System.IO type ResolvedFile = diff --git a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj b/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj index 49c86e14e52..e0aa3e642cb 100644 --- a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj +++ b/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj @@ -40,13 +40,12 @@ None Debug AnyCPU - false Library Properties FSharp true False - True + False {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} true VisualFSharpVsix diff --git a/vsintegration/src/FSharp.LanguageService.Base/FSharp.LanguageService.Base.csproj b/vsintegration/src/FSharp.LanguageService.Base/FSharp.LanguageService.Base.csproj index 6e59ea3017b..e3a184ecc8f 100644 --- a/vsintegration/src/FSharp.LanguageService.Base/FSharp.LanguageService.Base.csproj +++ b/vsintegration/src/FSharp.LanguageService.Base/FSharp.LanguageService.Base.csproj @@ -62,8 +62,9 @@ {991dcf75-c2eb-42b6-9a0d-aa1d2409d519} FSharp.VS.FSI - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + diff --git a/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj b/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj index 32d2da7fa46..55cb901c84c 100644 --- a/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj +++ b/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj @@ -63,8 +63,9 @@ - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/AssemblyReferenceNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/AssemblyReferenceNode.cs index 274d3a72854..8d1260a2ffc 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/AssemblyReferenceNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/AssemblyReferenceNode.cs @@ -13,7 +13,6 @@ using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.OLE.Interop; -using MSBuild = Microsoft.Build.BuildEngine; using Microsoft.Build.Utilities; using System.Diagnostics.CodeAnalysis; using ShellConstants = Microsoft.VisualStudio.Shell.Interop.Constants; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigProvider.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigProvider.cs index 7f239e8ce9a..eb713f4e23b 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigProvider.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigProvider.cs @@ -9,7 +9,6 @@ using System.Globalization; using System.Collections; using System.IO; -using MSBuild = Microsoft.Build.BuildEngine; using System.Collections.Generic; using System.Linq; using EnvDTE; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigurationProperties.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigurationProperties.cs index c2a2395d271..6cfb318c897 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigurationProperties.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ConfigurationProperties.cs @@ -10,7 +10,6 @@ using System.Collections; using System.IO; using System.Linq; -using MSBuild = Microsoft.Build.BuildEngine; using System.Collections.Generic; using Microsoft.VisualStudio.FSharp.LanguageService; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/FileNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/FileNode.cs index a9f6837ecee..761e092518f 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/FileNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/FileNode.cs @@ -18,7 +18,6 @@ using OleConstants = Microsoft.VisualStudio.OLE.Interop.Constants; using VsCommands = Microsoft.VisualStudio.VSConstants.VSStd97CmdID; using VsCommands2K = Microsoft.VisualStudio.VSConstants.VSStd2KCmdID; -using MSBuild = Microsoft.Build.BuildEngine; using System.Diagnostics.CodeAnalysis; namespace Microsoft.VisualStudio.FSharp.ProjectSystem diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/GroupingReferenceNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/GroupingReferenceNode.cs index 102d0386bcf..62435b8fb79 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/GroupingReferenceNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/GroupingReferenceNode.cs @@ -13,7 +13,6 @@ using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.OLE.Interop; -using MSBuild = Microsoft.Build.BuildEngine; using Microsoft.Build.Utilities; using System.Diagnostics.CodeAnalysis; using ShellConstants = Microsoft.VisualStudio.Shell.Interop.Constants; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/Interfaces.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/Interfaces.cs index 9dc9d738c12..11e79a8bfd5 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/Interfaces.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/Interfaces.cs @@ -7,7 +7,6 @@ using OleConstants = Microsoft.VisualStudio.OLE.Interop.Constants; using VsCommands = Microsoft.VisualStudio.VSConstants.VSStd97CmdID; using VsCommands2K = Microsoft.VisualStudio.VSConstants.VSStd2KCmdID; -using MSBuild = Microsoft.Build.BuildEngine; using System.Diagnostics.CodeAnalysis; namespace Microsoft.VisualStudio.FSharp.ProjectSystem diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/LinkedFileNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/LinkedFileNode.cs index cacfe667299..0c2c54bfab3 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/LinkedFileNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/LinkedFileNode.cs @@ -17,7 +17,6 @@ using OleConstants = Microsoft.VisualStudio.OLE.Interop.Constants; using VsCommands = Microsoft.VisualStudio.VSConstants.VSStd97CmdID; using VsCommands2K = Microsoft.VisualStudio.VSConstants.VSStd2KCmdID; -using MSBuild = Microsoft.Build.BuildEngine; namespace Microsoft.VisualStudio.FSharp.ProjectSystem { diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/OutputGroup.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/OutputGroup.cs index 5fb282c22b3..64026b6164b 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/OutputGroup.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/OutputGroup.cs @@ -11,7 +11,6 @@ using Microsoft.VisualStudio.OLE.Interop; using Microsoft.VisualStudio.Shell; -using MSBuild = Microsoft.Build.BuildEngine; using System.Diagnostics.CodeAnalysis; namespace Microsoft.VisualStudio.FSharp.ProjectSystem diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectConfig.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectConfig.cs index 04ff876e1d9..1244c515964 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectConfig.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectConfig.cs @@ -10,7 +10,6 @@ using System.Security; using System.IO; using System.Collections.Generic; -using MSBuild = Microsoft.Build.BuildEngine; using System.Diagnostics.CodeAnalysis; using System.Linq; using Microsoft.VisualStudio.FSharp.LanguageService; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectDesignerDocumentManager.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectDesignerDocumentManager.cs index b64056cec30..07e4b08ad9f 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectDesignerDocumentManager.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectDesignerDocumentManager.cs @@ -16,7 +16,6 @@ using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Shell; using System.Net; -using MSBuild = Microsoft.Build.BuildEngine; using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider; using IServiceProvider = System.IServiceProvider; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectElement.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectElement.cs index 67efa9c8cf5..662feff90ff 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectElement.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectElement.cs @@ -6,7 +6,7 @@ using System.Globalization; using System.IO; using System.Runtime.InteropServices; -using MSBuild = Microsoft.Build.BuildEngine; +using Microsoft.Build.Evaluation; namespace Microsoft.VisualStudio.FSharp.ProjectSystem { @@ -135,7 +135,7 @@ public ProjectElement(ProjectNode project, string itemPath, string itemType) private void DoAdd(string itemType, string itemPath) { - var added = this.itemProject.BuildProject.AddItem(itemType, Microsoft.Build.BuildEngine.Utilities.Escape(itemPath)); + var added = this.itemProject.BuildProject.AddItem(itemType, ProjectCollection.Escape(itemPath)); Debug.Assert(added.Count == 1, "adding a file created more than 1 new item, should not be possible since we escape wildcard characters"); this.item = added[0]; @@ -328,7 +328,7 @@ public string GetMetadataAndThrow(string attributeName, Exception exception) public void Rename(string newPath) { - string escapedPath = Microsoft.Build.BuildEngine.Utilities.Escape(newPath); + string escapedPath = ProjectCollection.Escape(newPath); if (this.IsVirtual) { virtualProperties[ProjectFileConstants.Include] = escapedPath; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectFactory.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectFactory.cs index ba7f8633ef3..3f234434209 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectFactory.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectFactory.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; -using MSBuild = Microsoft.Build.BuildEngine; using Microsoft.VisualStudio.OLE.Interop; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Shell; @@ -184,7 +183,7 @@ public ProjectInspector(string filename) { xmlProj = Microsoft.Build.Construction.ProjectRootElement.Open(filename); } - catch (Microsoft.Build.BuildEngine.InvalidProjectFileException) + catch (Microsoft.Build.Exceptions.InvalidProjectFileException) { // leave xmlProj non-initialized, other methods will check its state in prologue } diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs index ed5588d7eca..35f568bad04 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs @@ -21,7 +21,6 @@ using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Shell; using System.Net; -using MSBuild = Microsoft.Build.BuildEngine; using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider; using IServiceProvider = System.IServiceProvider; using OleConstants = Microsoft.VisualStudio.OLE.Interop.Constants; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectReferenceNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectReferenceNode.cs index db036ba8fbb..a2b1136dc4b 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectReferenceNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectReferenceNode.cs @@ -14,7 +14,6 @@ using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.OLE.Interop; -using MSBuild = Microsoft.Build.BuildEngine; using Microsoft.Build.Utilities; using VSConstants = Microsoft.VisualStudio.VSConstants; using Task = Microsoft.VisualStudio.Shell.Task; diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj index db75ba7bb00..dd355c602a5 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj @@ -57,12 +57,21 @@ true - - - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Conversion.Core.dll + diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ReferenceContainerNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ReferenceContainerNode.cs index a210ddcc6f0..5c8c1ca8ea1 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ReferenceContainerNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ReferenceContainerNode.cs @@ -17,7 +17,6 @@ using OleConstants = Microsoft.VisualStudio.OLE.Interop.Constants; using VsCommands = Microsoft.VisualStudio.VSConstants.VSStd97CmdID; using VsCommands2K = Microsoft.VisualStudio.VSConstants.VSStd2KCmdID; -using MSBuild = Microsoft.Build.BuildEngine; namespace Microsoft.VisualStudio.FSharp.ProjectSystem diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/Utilities.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/Utilities.cs index 61d3307b9cb..95575e46522 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/Utilities.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/Utilities.cs @@ -15,7 +15,6 @@ using System.Text.RegularExpressions; using System.Net; using System.Reflection; -using MSBuild = Microsoft.Build.BuildEngine; using Microsoft.VisualStudio.TextManager.Interop; using Microsoft.VisualStudio.OLE.Interop; using Microsoft.VisualStudio.Shell.Interop; diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/AppConfigHelper.fs b/vsintegration/src/FSharp.ProjectSystem.FSharp/AppConfigHelper.fs index 6067a8d8505..1923b2c027a 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/AppConfigHelper.fs +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/AppConfigHelper.fs @@ -22,7 +22,6 @@ namespace Microsoft.VisualStudio.FSharp.ProjectSystem open System.Globalization open System.Text - open Microsoft.Build.BuildEngine open Microsoft.Win32 open Microsoft.VisualStudio diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs index 915b061e157..444fc7f28f9 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs @@ -40,7 +40,6 @@ namespace rec Microsoft.VisualStudio.FSharp.ProjectSystem open EnvDTE - open Microsoft.Build.BuildEngine open Internal.Utilities.Debug module internal VSHiveUtilities = diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj b/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj index b85b500e75d..8aca56ce9dc 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj @@ -84,10 +84,18 @@ - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + $(VS150COMNTOOLS)\..\IDE\Microsoft.VisualStudio.Shell.UI.Internal.dll diff --git a/vsintegration/tests/Salsa/VisualFSharp.Salsa.fsproj b/vsintegration/tests/Salsa/VisualFSharp.Salsa.fsproj index dda8dcf7114..bdae5cf923a 100644 --- a/vsintegration/tests/Salsa/VisualFSharp.Salsa.fsproj +++ b/vsintegration/tests/Salsa/VisualFSharp.Salsa.fsproj @@ -38,10 +38,18 @@ - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + diff --git a/vsintegration/tests/Salsa/VsMocks.fs b/vsintegration/tests/Salsa/VsMocks.fs index f8142f22fb1..c2b953ca33d 100644 --- a/vsintegration/tests/Salsa/VsMocks.fs +++ b/vsintegration/tests/Salsa/VsMocks.fs @@ -14,7 +14,6 @@ open Microsoft.VisualStudio.Shell open Microsoft.VisualStudio.Shell.Interop open Microsoft.VisualStudio.TextManager.Interop open Microsoft.VisualStudio.OLE.Interop -open Microsoft.Build.BuildEngine open System.Diagnostics open Microsoft.Build.Execution open Microsoft.Build.Framework diff --git a/vsintegration/tests/Salsa/salsa.fs b/vsintegration/tests/Salsa/salsa.fs index c16cdc461d1..4580e3b0ed9 100644 --- a/vsintegration/tests/Salsa/salsa.fs +++ b/vsintegration/tests/Salsa/salsa.fs @@ -84,10 +84,10 @@ module internal Salsa = if logRegular || logPerf then let l = if logRegular then Trace.PrintLine("MSBuild", fun () -> "Detailed logging.") - new Microsoft.Build.BuildEngine.ConsoleLogger(LoggerVerbosity.Detailed) + new Microsoft.Build.Logging.ConsoleLogger(LoggerVerbosity.Detailed) else Trace.PrintLine("MSBuild", fun () -> "Quiet logging.") - new Microsoft.Build.BuildEngine.ConsoleLogger(LoggerVerbosity.Quiet) + new Microsoft.Build.Logging.ConsoleLogger(LoggerVerbosity.Quiet) Trace.PrintLine("MSBuild", fun () -> "About to attach MSBuild console logger.") // For Dev10 build we pass the logger to the Build call on the project object. theAttachedLogger <- l @@ -222,7 +222,7 @@ module internal Salsa = let loggers = if Trace.ShouldLog("MSBuild") then - seq { yield (new Microsoft.Build.BuildEngine.ConsoleLogger(LoggerVerbosity.Detailed) :> ILogger) } + seq { yield (new Microsoft.Build.Logging.ConsoleLogger(LoggerVerbosity.Detailed) :> ILogger) } else [] :> seq diff --git a/vsintegration/tests/unittests/TestLib.ProjectSystem.fs b/vsintegration/tests/unittests/TestLib.ProjectSystem.fs index b37120877e6..82326737454 100644 --- a/vsintegration/tests/unittests/TestLib.ProjectSystem.fs +++ b/vsintegration/tests/unittests/TestLib.ProjectSystem.fs @@ -20,7 +20,6 @@ open Microsoft.Win32 open Microsoft.VisualStudio.FSharp.ProjectSystem open Microsoft.VisualStudio.Shell.Interop -open Microsoft.Build.BuildEngine open Microsoft.Build.Execution open Microsoft.Build.Framework diff --git a/vsintegration/tests/unittests/Tests.Build.fs b/vsintegration/tests/unittests/Tests.Build.fs index 09975b2ab94..2df82c4a2e5 100644 --- a/vsintegration/tests/unittests/Tests.Build.fs +++ b/vsintegration/tests/unittests/Tests.Build.fs @@ -7,7 +7,6 @@ open System open System.IO open System.Diagnostics open Microsoft.FSharp.Build -open Microsoft.Build.BuildEngine open Microsoft.Build.Framework open Microsoft.Build.Utilities open UnitTests.TestLib.Utils.FilesystemHelpers diff --git a/vsintegration/tests/unittests/Tests.Powerpack.fs b/vsintegration/tests/unittests/Tests.Powerpack.fs index 677978711f3..a93f7f57fbe 100644 --- a/vsintegration/tests/unittests/Tests.Powerpack.fs +++ b/vsintegration/tests/unittests/Tests.Powerpack.fs @@ -7,7 +7,6 @@ open System open System.IO open System.Diagnostics open Microsoft.FSharp.Build -open Microsoft.Build.BuildEngine open Microsoft.Build.Framework open Microsoft.Build.Utilities open UnitTests.TestLib.Utils.FilesystemHelpers diff --git a/vsintegration/tests/unittests/Tests.TaskReporter.fs b/vsintegration/tests/unittests/Tests.TaskReporter.fs index 5bc53a95b53..6792fb5ef6f 100644 --- a/vsintegration/tests/unittests/Tests.TaskReporter.fs +++ b/vsintegration/tests/unittests/Tests.TaskReporter.fs @@ -7,7 +7,6 @@ open System open System.IO open System.Diagnostics open Microsoft.FSharp.Build -open Microsoft.Build.BuildEngine open Microsoft.Build.Framework open Microsoft.Build.Utilities open UnitTests.TestLib.Utils diff --git a/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj b/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj index 2b97603522c..6b43b77a470 100644 --- a/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj +++ b/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj @@ -99,10 +99,18 @@ - - - - + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll + + + $(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll + From ffe7246cb69282cf1b5fe14165c81fc0fcd2ab55 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Wed, 22 Jun 2016 17:10:43 -0700 Subject: [PATCH 07/32] Fixed template imports in VSIX --- VisualFSharp.sln | 80 +------- .../ItemTemplates/AppConfig/AppConfig.csproj | 15 ++ .../ItemTemplates/CodeFile/CodeFile.csproj | 15 ++ .../ScriptFile/ScriptFile.csproj | 15 ++ .../SignatureFile/SignatureFile.csproj | 15 ++ .../ItemTemplates/TextFile/TextFile.csproj | 15 ++ .../ItemTemplates/XMLFile/XMLFile.csproj | 15 ++ .../ConsoleProject/ConsoleProject.csproj | 16 ++ .../LibraryProject/LibraryProject.csproj | 16 ++ .../NetCore259Project.csproj | 15 ++ .../NetCore78Project/NetCore78Project.csproj | 16 ++ .../NetCoreProject/NetCoreProject.csproj | 16 ++ .../PortableLibraryProject.csproj | 16 ++ .../SilverlightProject.csproj | 16 ++ .../TutorialProject/TutorialProject.csproj | 16 ++ .../Source.extension.vsixmanifest | 35 ++-- .../VisualFSharpVsix/VisualFSharpVsix.csproj | 191 ++++++++++-------- 17 files changed, 341 insertions(+), 182 deletions(-) diff --git a/VisualFSharp.sln b/VisualFSharp.sln index 6224d843be1..99d03d490e0 100644 --- a/VisualFSharp.sln +++ b/VisualFSharp.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 +# Visual Studio 15 +VisualStudioVersion = 15.0.25123.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Compiler", "src\fsharp\FSharp.Compiler\FSharp.Compiler.fsproj", "{2E4D67B4-522D-4CF7-97E4-BA940F0B18F3}" EndProject @@ -130,54 +130,6 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Debug|x86.ActiveCfg = Debug|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Debug|x86.Build.0 = Debug|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Proto|Any CPU.ActiveCfg = Proto|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Proto|Any CPU.Build.0 = Proto|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Proto|x86.ActiveCfg = Proto|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Proto|x86.Build.0 = Proto|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Release|Any CPU.Build.0 = Release|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Release|x86.ActiveCfg = Release|Any CPU - {4D7BE558-E6BF-44DA-8CE2-46AA6E0DC2E7}.Release|x86.Build.0 = Release|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Debug|Any CPU.Build.0 = Debug|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Debug|x86.ActiveCfg = Debug|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Debug|x86.Build.0 = Debug|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Proto|Any CPU.ActiveCfg = Proto|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Proto|Any CPU.Build.0 = Proto|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Proto|x86.ActiveCfg = Proto|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Proto|x86.Build.0 = Proto|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Release|Any CPU.ActiveCfg = Release|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Release|Any CPU.Build.0 = Release|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Release|x86.ActiveCfg = Release|Any CPU - {493D19F9-35A4-4D0B-9B25-CA948823B709}.Release|x86.Build.0 = Release|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Debug|x86.ActiveCfg = Debug|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Debug|x86.Build.0 = Debug|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Proto|Any CPU.ActiveCfg = Proto|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Proto|Any CPU.Build.0 = Proto|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Proto|x86.ActiveCfg = Proto|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Proto|x86.Build.0 = Proto|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Release|Any CPU.Build.0 = Release|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Release|x86.ActiveCfg = Release|Any CPU - {530DF8CA-7996-407A-B533-D0C2873257AF}.Release|x86.Build.0 = Release|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Debug|Any CPU.Build.0 = Debug|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Debug|x86.ActiveCfg = Debug|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Debug|x86.Build.0 = Debug|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Proto|Any CPU.ActiveCfg = Proto|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Proto|Any CPU.Build.0 = Proto|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Proto|x86.ActiveCfg = Proto|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Proto|x86.Build.0 = Proto|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Release|Any CPU.ActiveCfg = Release|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Release|Any CPU.Build.0 = Release|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Release|x86.ActiveCfg = Release|Any CPU - {98ABDE09-9E08-49C7-B006-FB3CB5365B54}.Release|x86.Build.0 = Release|Any CPU {2E4D67B4-522D-4CF7-97E4-BA940F0B18F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2E4D67B4-522D-4CF7-97E4-BA940F0B18F3}.Debug|Any CPU.Build.0 = Debug|Any CPU {2E4D67B4-522D-4CF7-97E4-BA940F0B18F3}.Debug|x86.ActiveCfg = Debug|Any CPU @@ -502,18 +454,6 @@ Global {C94C257C-3C0A-4858-B5D8-D746498D1F08}.Release|Any CPU.Build.0 = Release|Any CPU {C94C257C-3C0A-4858-B5D8-D746498D1F08}.Release|x86.ActiveCfg = Release|Any CPU {C94C257C-3C0A-4858-B5D8-D746498D1F08}.Release|x86.Build.0 = Release|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Debug|x86.ActiveCfg = Debug|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Debug|x86.Build.0 = Debug|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Proto|Any CPU.ActiveCfg = Proto|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Proto|Any CPU.Build.0 = Proto|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Proto|x86.ActiveCfg = Proto|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Proto|x86.Build.0 = Proto|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Release|Any CPU.Build.0 = Release|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Release|x86.ActiveCfg = Release|Any CPU - {CB7D20C4-6506-406D-9144-5342C3595F03}.Release|x86.Build.0 = Release|Any CPU {649FA588-F02E-457C-9FCF-87E46407481E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {649FA588-F02E-457C-9FCF-87E46407481E}.Debug|Any CPU.Build.0 = Debug|Any CPU {649FA588-F02E-457C-9FCF-87E46407481E}.Debug|x86.ActiveCfg = Debug|Any CPU @@ -753,14 +693,6 @@ Global {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.Release|Any CPU.Build.0 = Release|Any CPU {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.Release|x86.ActiveCfg = Release|Any CPU {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.Release|x86.Build.0 = Release|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSDebug|Any CPU.ActiveCfg = VSDebug|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSDebug|Any CPU.Build.0 = VSDebug|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSDebug|x86.ActiveCfg = VSDebug|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSDebug|x86.Build.0 = VSDebug|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSRelease|Any CPU.ActiveCfg = VSRelease|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSRelease|Any CPU.Build.0 = VSRelease|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSRelease|x86.ActiveCfg = VSRelease|Any CPU - {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}.VSRelease|x86.Build.0 = VSRelease|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Debug|Any CPU.Build.0 = Debug|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Debug|x86.ActiveCfg = Debug|Any CPU @@ -773,14 +705,6 @@ Global {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|Any CPU.Build.0 = Release|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|x86.ActiveCfg = Release|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|x86.Build.0 = Release|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSDebug|Any CPU.ActiveCfg = VSDebug|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSDebug|Any CPU.Build.0 = VSDebug|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSDebug|x86.ActiveCfg = VSDebug|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSDebug|x86.Build.0 = VSDebug|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSRelease|Any CPU.ActiveCfg = VSRelease|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSRelease|Any CPU.Build.0 = VSRelease|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSRelease|x86.ActiveCfg = VSRelease|Any CPU - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.VSRelease|x86.Build.0 = VSRelease|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/vsintegration/ItemTemplates/AppConfig/AppConfig.csproj b/vsintegration/ItemTemplates/AppConfig/AppConfig.csproj index 76d5830b2ab..51459896268 100644 --- a/vsintegration/ItemTemplates/AppConfig/AppConfig.csproj +++ b/vsintegration/ItemTemplates/AppConfig/AppConfig.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ItemTemplates/CodeFile/CodeFile.csproj b/vsintegration/ItemTemplates/CodeFile/CodeFile.csproj index af65940e8fc..62d04e9abdf 100644 --- a/vsintegration/ItemTemplates/CodeFile/CodeFile.csproj +++ b/vsintegration/ItemTemplates/CodeFile/CodeFile.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ItemTemplates/ScriptFile/ScriptFile.csproj b/vsintegration/ItemTemplates/ScriptFile/ScriptFile.csproj index 53e45efd0c2..aaaee9d49df 100644 --- a/vsintegration/ItemTemplates/ScriptFile/ScriptFile.csproj +++ b/vsintegration/ItemTemplates/ScriptFile/ScriptFile.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ItemTemplates/SignatureFile/SignatureFile.csproj b/vsintegration/ItemTemplates/SignatureFile/SignatureFile.csproj index 556a222f1da..0ef37b0d2ce 100644 --- a/vsintegration/ItemTemplates/SignatureFile/SignatureFile.csproj +++ b/vsintegration/ItemTemplates/SignatureFile/SignatureFile.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ItemTemplates/TextFile/TextFile.csproj b/vsintegration/ItemTemplates/TextFile/TextFile.csproj index 858f48a45b7..49d3fd4931d 100644 --- a/vsintegration/ItemTemplates/TextFile/TextFile.csproj +++ b/vsintegration/ItemTemplates/TextFile/TextFile.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ItemTemplates/XMLFile/XMLFile.csproj b/vsintegration/ItemTemplates/XMLFile/XMLFile.csproj index dee1bb2c2e0..fa24d80c794 100644 --- a/vsintegration/ItemTemplates/XMLFile/XMLFile.csproj +++ b/vsintegration/ItemTemplates/XMLFile/XMLFile.csproj @@ -7,6 +7,17 @@ ItemTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -16,6 +27,10 @@ + + + + diff --git a/vsintegration/ProjectTemplates/ConsoleProject/ConsoleProject.csproj b/vsintegration/ProjectTemplates/ConsoleProject/ConsoleProject.csproj index 2b13fd8e53b..8d11aabaea9 100644 --- a/vsintegration/ProjectTemplates/ConsoleProject/ConsoleProject.csproj +++ b/vsintegration/ProjectTemplates/ConsoleProject/ConsoleProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/LibraryProject/LibraryProject.csproj b/vsintegration/ProjectTemplates/LibraryProject/LibraryProject.csproj index e1afe08cefa..7d7dc3fb15a 100644 --- a/vsintegration/ProjectTemplates/LibraryProject/LibraryProject.csproj +++ b/vsintegration/ProjectTemplates/LibraryProject/LibraryProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/NetCore259Project/NetCore259Project.csproj b/vsintegration/ProjectTemplates/NetCore259Project/NetCore259Project.csproj index 6110d368738..2b961b74159 100644 --- a/vsintegration/ProjectTemplates/NetCore259Project/NetCore259Project.csproj +++ b/vsintegration/ProjectTemplates/NetCore259Project/NetCore259Project.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -31,6 +42,10 @@ + + + + diff --git a/vsintegration/ProjectTemplates/NetCore78Project/NetCore78Project.csproj b/vsintegration/ProjectTemplates/NetCore78Project/NetCore78Project.csproj index 303e9f18612..c809eda8d74 100644 --- a/vsintegration/ProjectTemplates/NetCore78Project/NetCore78Project.csproj +++ b/vsintegration/ProjectTemplates/NetCore78Project/NetCore78Project.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/NetCoreProject/NetCoreProject.csproj b/vsintegration/ProjectTemplates/NetCoreProject/NetCoreProject.csproj index 24c9d8bcf3a..2aa6eec186b 100644 --- a/vsintegration/ProjectTemplates/NetCoreProject/NetCoreProject.csproj +++ b/vsintegration/ProjectTemplates/NetCoreProject/NetCoreProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/PortableLibraryProject/PortableLibraryProject.csproj b/vsintegration/ProjectTemplates/PortableLibraryProject/PortableLibraryProject.csproj index 125c0fbf8bd..6e0987435f0 100644 --- a/vsintegration/ProjectTemplates/PortableLibraryProject/PortableLibraryProject.csproj +++ b/vsintegration/ProjectTemplates/PortableLibraryProject/PortableLibraryProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/SilverlightProject/SilverlightProject.csproj b/vsintegration/ProjectTemplates/SilverlightProject/SilverlightProject.csproj index abfc6423b5f..cbc0816a9e6 100644 --- a/vsintegration/ProjectTemplates/SilverlightProject/SilverlightProject.csproj +++ b/vsintegration/ProjectTemplates/SilverlightProject/SilverlightProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -30,6 +41,11 @@ false + + + + + diff --git a/vsintegration/ProjectTemplates/TutorialProject/TutorialProject.csproj b/vsintegration/ProjectTemplates/TutorialProject/TutorialProject.csproj index fc41a78cf21..a5a9595ea17 100644 --- a/vsintegration/ProjectTemplates/TutorialProject/TutorialProject.csproj +++ b/vsintegration/ProjectTemplates/TutorialProject/TutorialProject.csproj @@ -7,6 +7,17 @@ ProjectTemplates true true + false + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + false + false + false + false + false + false + false + false + false Debug @@ -24,6 +35,11 @@ false + + + + + diff --git a/vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest b/vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest index 2701f6f7c7a..d071c01451b 100644 --- a/vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest +++ b/vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest @@ -33,7 +33,7 @@ - + @@ -43,21 +43,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj b/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj index e0aa3e642cb..ccabcb48d11 100644 --- a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj +++ b/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj @@ -5,7 +5,7 @@ ..\..\src ..\src net40 - 14.0 + 15.0 11.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) @@ -42,7 +42,7 @@ AnyCPU Library Properties - FSharp + FSharpDev true False False @@ -52,13 +52,14 @@ $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin VisualFSharpVsix $(RootBinPath) + 15.4.1.0 + cs - Program $(DevEnvDir)devenv.exe - /rootsuffix FSharp /log - FSharp + /rootsuffix $(VSRootSuffix) /log + $(VSRootSuffix) true @@ -67,10 +68,7 @@ true /rootsuffix $(VSRootSuffix) /log $(VSRootSuffix) - 15.4.1.0 - cs - Designer @@ -85,83 +83,6 @@ true - - - - Always - true - ProjectTemplates\SilverlightProject.zip - - - Always - true - ProjectTemplates\NetCoreProject.zip - - - Always - true - ProjectTemplates\NetCore78Project.zip - - - Always - true - ProjectTemplates\NetCore259Project.zip - - - Always - true - ProjectTemplates\PortableLibraryProject.zip - - - Always - true - ProjectTemplates\TutorialProject.zip - - - Always - true - ProjectTemplates\ConsoleProject.zip - - - Always - true - ProjectTemplates\LibraryProject.zip - - - - - - Always - true - ItemTemplates\AppConfig.zip - - - Always - true - ItemTemplates\CodeFile.zip - - - Always - true - ItemTemplates\ScriptFile.zip - - - Always - true - ItemTemplates\SignatureFile.zip - - - Always - true - ItemTemplates\TextFile.zip - - - Always - true - ItemTemplates\XMLFile.zip - - - False @@ -179,7 +100,6 @@ false - {649FA588-F02E-457C-9FCF-87E46407481E} @@ -278,8 +198,105 @@ DebugSymbolsProjectOutputGroup%3b false + + {6ba13aa4-c25f-480f-856b-8e8000299a72} + AppConfig + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {12ac2813-e895-4aaa-ae6c-94e21da09f64} + CodeFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {a333b85a-dc23-49b6-9797-b89a7951e92d} + ScriptFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {e3fdd4ac-46b6-4b9f-b672-317d1202cc50} + SignatureFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {d11fc318-8f5d-4c8c-9287-ab40a016d13c} + TextFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {1fb1dd07-06aa-45b4-b5ac-20ff5bee98b6} + XMLFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {604f0daa-2d33-48dd-b162-edf0b672803d} + ConsoleProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {01678cda-a11f-4dee-9344-2edf91cf1ae7} + LibraryProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {d9d95330-3626-4199-b7af-17b8e4af6d87} + NetCore259Project + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {1a8dbf70-4178-4ae3-af5f-39ddd5692210} + NetCore78Project + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {5b739cf3-1116-4eb4-b598-6c16bea81ce5} + NetCoreProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {db374a0c-7560-479f-9b21-d37c81f7624f} + PortableLibraryProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {15a57828-f9f5-4fb4-8e1e-ae7622a10f70} + SilverlightProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {2facee44-48bd-40b5-a2ee-b54a0c9bb7c4} + TutorialProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + - \ No newline at end of file From 54000763ca2ba0ce7ba0b47b021931960d31b131 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Thu, 30 Jun 2016 11:18:31 -0700 Subject: [PATCH 08/32] Converted back to v2 vsix --- setup/FSharp.SDK/FSharp.SDK.wixproj | 2 +- .../Microsoft.FSharp.Dependencies/Files.swr | 23 ++ .../Microsoft.FSharp.Dependencies.swixproj | 31 ++ .../DesktopTemplates.swr} | 2 +- .../Files.swr} | 2 +- .../FullTemplates.swr} | 2 +- .../Microsoft.FSharp.LangPack.swixproj} | 11 +- .../WebTemplates.swr} | 2 +- .../Files.swr | 4 +- .../Microsoft.FSharp.SDK.swixproj} | 4 +- setup/Swix/Microsoft.FSharp.Vsix/Files.swr | 22 ++ .../Microsoft.FSharp.Vsix.swixproj | 34 +++ setup/Swix/Microsoft.FSharp.vsmanproj | 9 +- .../VisualFSharpVSIX/Files/CommonFiles.swr | 46 --- .../Files/DesktopTemplates.swr | 49 ---- .../Files/ProfessionalTemplates.swr | 84 ------ .../Files/WebDevelopmentTemplates.swr | 49 ---- setup/fsharp-setup-build.proj | 125 ++++---- setup/resources/Fsi.Shipping.In.VS.config | 43 --- .../RegisterFsharpPackage.pkgdef | 0 .../Source.extension.vsixmanifest | 59 ++++ .../VisualFSharpDesktop.csproj | 276 ++++++++++++++++++ .../Source.extension.vsixmanifest | 0 .../VisualFSharpFull/VisualFSharpFull.csproj} | 63 ++-- .../Source.extension.vsixmanifest | 58 ++++ .../VisualFSharpWeb/VisualFSharpWeb.csproj | 276 ++++++++++++++++++ .../fsharp-vsintegration-vsix-build.proj | 19 +- .../ProjectSystem.fsproj | 9 +- 28 files changed, 913 insertions(+), 391 deletions(-) create mode 100644 setup/Swix/Microsoft.FSharp.Dependencies/Files.swr create mode 100644 setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj rename setup/Swix/{VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr => Microsoft.FSharp.LangPack/DesktopTemplates.swr} (97%) rename setup/Swix/{VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr => Microsoft.FSharp.LangPack/Files.swr} (97%) rename setup/Swix/{VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr => Microsoft.FSharp.LangPack/FullTemplates.swr} (99%) rename setup/Swix/{VisualFSharpVSIX/VisualFSharpVSIX.swixproj => Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj} (82%) rename setup/Swix/{VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr => Microsoft.FSharp.LangPack/WebTemplates.swr} (97%) rename setup/Swix/{FSharp.SDK => Microsoft.FSharp.SDK}/Files.swr (55%) rename setup/Swix/{FSharp.SDK/FSharp.SDK.swixproj => Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj} (93%) create mode 100644 setup/Swix/Microsoft.FSharp.Vsix/Files.swr create mode 100644 setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj delete mode 100644 setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr delete mode 100644 setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr delete mode 100644 setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr delete mode 100644 setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr delete mode 100644 setup/resources/Fsi.Shipping.In.VS.config rename vsintegration/{VisualFSharpVsix => Vsix}/RegisterFsharpPackage.pkgdef (100%) create mode 100644 vsintegration/Vsix/VisualFSharpDesktop/Source.extension.vsixmanifest create mode 100644 vsintegration/Vsix/VisualFSharpDesktop/VisualFSharpDesktop.csproj rename vsintegration/{VisualFSharpVsix => Vsix/VisualFSharpFull}/Source.extension.vsixmanifest (100%) rename vsintegration/{VisualFSharpVsix/VisualFSharpVsix.csproj => Vsix/VisualFSharpFull/VisualFSharpFull.csproj} (84%) create mode 100644 vsintegration/Vsix/VisualFSharpWeb/Source.extension.vsixmanifest create mode 100644 vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj index 6fc2909ca11..3814288bc8c 100644 --- a/setup/FSharp.SDK/FSharp.SDK.wixproj +++ b/setup/FSharp.SDK/FSharp.SDK.wixproj @@ -10,7 +10,7 @@ - FSharp.SDK + Microsoft.FSharp.SDK da0da41f-0e00-4598-8eee-b29d31b0ca04 Package net diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr new file mode 100644 index 00000000000..a38d915a90e --- /dev/null +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr @@ -0,0 +1,23 @@ +use vs + +package name=Microsoft.FSharp.Dependencies + version=4.1 + vs.package.chip=neutral + vs.package.language=en-us + +folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" + file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets" + file "Microsoft.Portable.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.Portable.FSharp.Shim.targets" + +folder "InstallDir:Common7\IDE\PublicAssemblies" + file source="$(BinariesFolder)\net40\bin\FSharp.Core.dll" vs.file.ngen=yes + file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata" + file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata" + +folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Conversion.Core.dll" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.dll" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Engine.dll" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Framework.dll" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Tasks.Core.dll" + file source="$(PackagesFolder)\Microsoft.VisualFSharp.Msbuild.15.0.1.0.0\lib\net45\Microsoft.Build.Utilities.Core.dll" \ No newline at end of file diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj new file mode 100644 index 00000000000..31fb47a151c --- /dev/null +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj @@ -0,0 +1,31 @@ + + + + ..\..\..\src + neutral + false + vsix + true + Debug + $(FSharpSourcesRoot)\..\$(Configuration) + $(FSharpSourcesRoot)\..\packages + $(BinariesFolder)\insertion + Microsoft.FSharp.Dependencies + $(MSBuildThisFileDirectory)obj + + + + + + $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) + $(PackagePreprocessorDefinitions);PackagesFolder=$(PackagesFolder) + + + + + + + + + + diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr b/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr similarity index 97% rename from setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr rename to setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr index 12d89642f58..3c5fa8a7711 100644 --- a/setup/Swix/VisualFSharpVSIX/LangPack/DesktopTemplates.LangPack.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr @@ -1,6 +1,6 @@ use vs -package name=Microsoft.FSharp.Vsix.$(VSSku) +package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 vs.package.chip=neutral vs.package.language=$(LocaleRegion) diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr b/setup/Swix/Microsoft.FSharp.LangPack/Files.swr similarity index 97% rename from setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr rename to setup/Swix/Microsoft.FSharp.LangPack/Files.swr index 3e21d50e1a0..444bd5c3a85 100644 --- a/setup/Swix/VisualFSharpVSIX/LangPack/CommonFiles.LangPack.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/Files.swr @@ -1,6 +1,6 @@ use vs -package name=Microsoft.FSharp.Vsix.$(VSSku) +package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 vs.package.chip=neutral vs.package.language=$(LocaleRegion) diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr b/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr similarity index 99% rename from setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr rename to setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr index fc5ea82c0fd..f970a599f93 100644 --- a/setup/Swix/VisualFSharpVSIX/LangPack/ProfessionalTemplates.LangPack.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr @@ -1,6 +1,6 @@ use vs -package name=Microsoft.FSharp.Vsix.$(VSSku) +package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 vs.package.chip=neutral vs.package.language=$(LocaleRegion) diff --git a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj b/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj similarity index 82% rename from setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj rename to setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj index 69810279ccb..36ed844ed8e 100644 --- a/setup/Swix/VisualFSharpVSIX/VisualFSharpVSIX.swixproj +++ b/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj @@ -3,13 +3,13 @@ ..\..\..\src neutral - false + true vsix true Debug $(FSharpSourcesRoot)\..\$(Configuration) $(BinariesFolder)\insertion - VisualFSharpVSIX.$(VSSku).$(LocaleCode) + Microsoft.FSharp.LangPack.$(VSSku).$(LocaleCode) $(MSBuildThisFileDirectory)obj @@ -25,11 +25,8 @@ - - - - - + + diff --git a/setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr b/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr similarity index 97% rename from setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr rename to setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr index db8584fca2b..8174d541ebb 100644 --- a/setup/Swix/VisualFSharpVSIX/LangPack/WebDevelopmentTemplates.LangPack.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr @@ -1,6 +1,6 @@ use vs -package name=Microsoft.FSharp.Vsix.$(VSSku) +package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 vs.package.chip=neutral vs.package.language=$(LocaleRegion) diff --git a/setup/Swix/FSharp.SDK/Files.swr b/setup/Swix/Microsoft.FSharp.SDK/Files.swr similarity index 55% rename from setup/Swix/FSharp.SDK/Files.swr rename to setup/Swix/Microsoft.FSharp.SDK/Files.swr index bcca0e56c1d..2ca406b24ba 100644 --- a/setup/Swix/FSharp.SDK/Files.swr +++ b/setup/Swix/Microsoft.FSharp.SDK/Files.swr @@ -1,10 +1,10 @@ use vs -package name=Microsoft.FSharp.Msi +package name=Microsoft.FSharp.SDK version=4.1 vs.package.type=msi vs.package.chip=neutral vs.package.language=$(LocaleRegion) vs.payloads - vs.payload source=$(BinariesFolder)\msi\FSharp.SDK.$(LocaleCode).msi + vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.$(LocaleCode).msi" diff --git a/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj similarity index 93% rename from setup/Swix/FSharp.SDK/FSharp.SDK.swixproj rename to setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj index 9cb63fb34a7..3f19bbb3103 100644 --- a/setup/Swix/FSharp.SDK/FSharp.SDK.swixproj +++ b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj @@ -3,9 +3,9 @@ ..\..\..\src neutral - false + true manifest - FSharp.SDK.$(LocaleCode) + Microsoft.FSharp.SDK.$(LocaleCode) true Debug $(FSharpSourcesRoot)\..\$(Configuration) diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr new file mode 100644 index 00000000000..2eca81d3eee --- /dev/null +++ b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr @@ -0,0 +1,22 @@ +use vs + +package name=Microsoft.FSharp.VSIX.$(VSSku) + version=4.1 + vs.package.type=vsix + vs.package.chip=neutral + vs.package.language=en-us + +vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) + version=4.1 + type=Required + +vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + +vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + +vs.payloads + vs.payload source="$(BinariesFolder)\net40\bin\VisualFSharp$(VSSku).vsix" \ No newline at end of file diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj b/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj new file mode 100644 index 00000000000..f675f6d339f --- /dev/null +++ b/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj @@ -0,0 +1,34 @@ + + + + ..\..\..\src + neutral + false + manifest + true + Debug + $(FSharpSourcesRoot)\..\$(Configuration) + $(BinariesFolder)\insertion + Microsoft.FSharp.VSIX.$(VSSku) + $(MSBuildThisFileDirectory)obj + + + + + + $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) + $(PackagePreprocessorDefinitions);VSSku=$(VSSku) + + + + + + + + + + + + + + diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj index 4e5f0551410..a67cd245569 100644 --- a/setup/Swix/Microsoft.FSharp.vsmanproj +++ b/setup/Swix/Microsoft.FSharp.vsmanproj @@ -15,8 +15,13 @@ - - + + + + + + \ No newline at end of file diff --git a/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr b/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr deleted file mode 100644 index 12b550de7cd..00000000000 --- a/setup/Swix/VisualFSharpVSIX/Files/CommonFiles.swr +++ /dev/null @@ -1,46 +0,0 @@ -use vs - -package name=Microsoft.FSharp.Vsix.$(VSSku) - version=4.1 - vs.package.chip=neutral - vs.package.language=$(LocaleRegion) - -folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" - file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets" - file "Microsoft.Portable.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.Portable.FSharp.Shim.targets" - -folder "InstallDir:Common7\IDE\PublicAssemblies" - file source="$(BinariesFolder)\net40\bin\FSharp.Core.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata" - file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata" - -folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp" - file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Interactive.Settings.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Server.Shared.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Core.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Editor.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.Base.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.Compiler.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.Base.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.FSharp.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.PropertyPages.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.VS.FSI.dll" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\fsi.exe" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FsiAnyCPU.exe" vs.file.ngen=yes - file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata" - file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata" - file source="$(BinariesFolder)\..\License.txt" - file source="$(BinariesFolder)\net40\bin\RegisterFsharpPackage.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Server.Shared.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.Editor.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.Base.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.Compiler.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.LanguageService.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.Base.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.FSharp.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.ProjectSystem.PropertyPages.pkgdef" - file source="$(BinariesFolder)\net40\bin\FSharp.VS.FSI.pkgdef" - file "fsi.exe.config" source="$(BinariesFolder)\setup\resources\Fsi.Shipping.In.VS.config" - file "fsiAnyCpu.exe.config" source="$(BinariesFolder)\setup\resources\Fsi.Shipping.In.VS.config" diff --git a/setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr deleted file mode 100644 index 65cd58b3b71..00000000000 --- a/setup/Swix/VisualFSharpVSIX/Files/DesktopTemplates.swr +++ /dev/null @@ -1,49 +0,0 @@ -use vs - -package name=Microsoft.FSharp.Vsix.$(VSSku) - version=4.1 - vs.package.chip=neutral - vs.package.language=$(LocaleRegion) - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\Program.fs" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr deleted file mode 100644 index 39981ffc5e0..00000000000 --- a/setup/Swix/VisualFSharpVSIX/Files/ProfessionalTemplates.swr +++ /dev/null @@ -1,84 +0,0 @@ -use vs - -package name=Microsoft.FSharp.Vsix.$(VSSku) - version=4.1 - vs.package.chip=neutral - vs.package.language=$(LocaleRegion) - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\ConsoleApplication.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\Program.fs" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore259Project" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\NETCore259PortableLibrary.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\PortableLibrary1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore259Project\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCore78Project" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\NETCore78PortableLibrary.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\PortableLibrary1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCore78Project\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\NetCoreProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\NETCore7PortableLibrary.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\PortableLibrary1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\NetCoreProject\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\PortableLibraryProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\PortableLibrary1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\PortableLibraryProject\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Script.fsx" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr b/setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr deleted file mode 100644 index 768234fec59..00000000000 --- a/setup/Swix/VisualFSharpVSIX/Files/WebDevelopmentTemplates.swr +++ /dev/null @@ -1,49 +0,0 @@ -use vs - -package name=Microsoft.FSharp.Vsix.$(VSSku) - version=4.1 - vs.package.chip=neutral - vs.package.language=$(LocaleRegion) - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\AppConfig" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\App.config" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\AppConfig\AppConfig.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\CodeFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\CodeFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\CodeFile\File.fs" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\ScriptFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\File.fsx" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\ScriptFile\ScriptFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\SignatureFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\File.fsi" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\SignatureFile\SignatureFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\TextFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.txt" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\TextFile\TextFile.vstemplate" - -folder "InstallDir:Common7\IDE\ItemTemplates\FSharp\$(LocaleId)\XMLFile" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.vstemplate" - file source="$(BinariesFolder)\net40\bin\ItemTemplates\XMLFile\XMLFile.xml" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.vstemplate" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Script.fsx" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\SilverlightProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\AssemblyInfo.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Library1.fs" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\Script.fsx" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\SilverlightProject\SilverlightLibrary.vstemplate" - -folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\TutorialProject" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsproj" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.fsx" - file source="$(BinariesFolder)\net40\bin\ProjectTemplates\TutorialProject\Tutorial.vstemplate" diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj index 4c52de553a3..202134ec056 100644 --- a/setup/fsharp-setup-build.proj +++ b/setup/fsharp-setup-build.proj @@ -9,73 +9,90 @@ Debug - - - FSharp.SDK\FSharp.SDK.wixproj - None - - - FSharp.SDK\FSharp.SDK.wixproj - None - - - Swix\FSharp.SDK\FSharp.SDK.swixproj - None - - - Swix\VisualFSharpVSIX\VisualFSharpVSIX.swixproj - Professional - - - - - - - - + + + + FSharp.Wix.Extensions\FSharp.Wix.Extensions.csproj + + + + + + + + + + + + + + + + + + Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj + + + Swix\Microsoft.FSharp.Vsix\Microsoft.FSharp.Vsix.swixproj + Full + + + + Swix\Microsoft.FSharp.vsmanproj + + - - - + - - - + Properties="LocaleCode=%(SetupProjects.LocaleCode);LocaleId=%(SetupProjects.LocaleId);LocaleRegion=%(SetupProjects.LocaleRegion);IsLangPack=%(SetupProjects.IsLangPack);VSSku=%(SetupProjects.VSSku)"/> - - - - + - - + Properties="LocaleCode=%(SetupProjects.LocaleCode);LocaleId=%(SetupProjects.LocaleId);LocaleRegion=%(SetupProjects.LocaleRegion);IsLangPack=%(SetupProjects.IsLangPack);VSSku=%(SetupProjects.VSSku)"/> - - - - + - - + Properties="LocaleCode=%(SetupProjects.LocaleCode);LocaleId=%(SetupProjects.LocaleId);LocaleRegion=%(SetupProjects.LocaleRegion);IsLangPack=%(SetupProjects.IsLangPack);VSSku=%(SetupProjects.VSSku)"/> diff --git a/setup/resources/Fsi.Shipping.In.VS.config b/setup/resources/Fsi.Shipping.In.VS.config deleted file mode 100644 index 9d5330422de..00000000000 --- a/setup/resources/Fsi.Shipping.In.VS.config +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/vsintegration/VisualFSharpVsix/RegisterFsharpPackage.pkgdef b/vsintegration/Vsix/RegisterFsharpPackage.pkgdef similarity index 100% rename from vsintegration/VisualFSharpVsix/RegisterFsharpPackage.pkgdef rename to vsintegration/Vsix/RegisterFsharpPackage.pkgdef diff --git a/vsintegration/Vsix/VisualFSharpDesktop/Source.extension.vsixmanifest b/vsintegration/Vsix/VisualFSharpDesktop/Source.extension.vsixmanifest new file mode 100644 index 00000000000..77be4b5a276 --- /dev/null +++ b/vsintegration/Vsix/VisualFSharpDesktop/Source.extension.vsixmanifest @@ -0,0 +1,59 @@ + + + + + + Visual F# Tools + Deploy Visual F# Tools templates to Visual Studio + ..\CommonExtensions\Microsoft\FSharp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vsintegration/Vsix/VisualFSharpDesktop/VisualFSharpDesktop.csproj b/vsintegration/Vsix/VisualFSharpDesktop/VisualFSharpDesktop.csproj new file mode 100644 index 00000000000..1e6f6234fa0 --- /dev/null +++ b/vsintegration/Vsix/VisualFSharpDesktop/VisualFSharpDesktop.csproj @@ -0,0 +1,276 @@ + + + + + ..\..\..\src + net40 + 15.0 + 11.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + 15.0 + 2.0 + true + {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + + + publish\ + true + Disk + false + Foreground + 7 + Days + true + false + true + 0 + v4.6 + false + false + false + false + false + false + false + false + true + None + Debug + AnyCPU + Library + Properties + FSharpDev + true + False + False + {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} + true + VisualFSharpDesktop + $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin + VisualFSharpDesktop + $(RootBinPath) + 15.4.1.0 + cs + + + Program + $(DevEnvDir)devenv.exe + /rootsuffix $(VSRootSuffix) /log + $(VSRootSuffix) + true + + + Program + $(DevEnvDir)devenv.exe + true + /rootsuffix $(VSRootSuffix) /log + $(VSRootSuffix) + + + + Designer + + + Always + true + RegisterFsharpPackage.pkgdef + + + PreserveNewest + true + + + + + False + Microsoft .NET Framework 4.6 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + + + {649FA588-F02E-457C-9FCF-87E46407481E} + FSharp.Compiler.Interactive.Settings + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {D5870CF0-ED51-4CBC-B3D7-6F56DA84AC06} + FSharp.Compiler.Server.Shared + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {2E4D67B4-522D-4CF7-97E4-BA940F0B18F3} + FSharp.Compiler + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {DED3BBD7-53F4-428A-8C9F-27968E768605} + FSharp.Core + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + + + {A437A6EC-5323-47C2-8F86-E2CAC54FF152} + FSharp.LanguageService.Compiler + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {8B3E283D-B5FE-4055-9D80-7E3A32F3967B} + FsiAnyCPU + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {D0E98C0D-490B-4C61-9329-0862F6E87645} + Fsi + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {65e0e82a-eace-4787-8994-888674c2fe87} + FSharp.Editor + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {1C5C163C-37EA-4A3C-8CCC-0D34B74BF8EF} + FSharp.LanguageService.Base + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {EE85AAB7-CDA0-4C4E-BDA0-A64CCC413E3F} + FSharp.LanguageService + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {B700E38B-F8C0-4E49-B5EC-DB7B7AC0C4E7} + ProjectSystem.Base + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {6196B0F8-CAEA-4CF1-AF82-1B520F77FE44} + ProjectSystem + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {FCFB214C-462E-42B3-91CA-FC557EFEE74F} + FSharp.PropertiesPages + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {991DCF75-C2EB-42B6-9A0D-AA1D2409D519} + FSharp.VS.FSI + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {6ba13aa4-c25f-480f-856b-8e8000299a72} + AppConfig + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {12ac2813-e895-4aaa-ae6c-94e21da09f64} + CodeFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {a333b85a-dc23-49b6-9797-b89a7951e92d} + ScriptFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {e3fdd4ac-46b6-4b9f-b672-317d1202cc50} + SignatureFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {d11fc318-8f5d-4c8c-9287-ab40a016d13c} + TextFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {1fb1dd07-06aa-45b4-b5ac-20ff5bee98b6} + XMLFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {604f0daa-2d33-48dd-b162-edf0b672803d} + ConsoleProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {01678cda-a11f-4dee-9344-2edf91cf1ae7} + LibraryProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {2facee44-48bd-40b5-a2ee-b54a0c9bb7c4} + TutorialProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + + + + + + + + + VsixSHA2 + + + + \ No newline at end of file diff --git a/vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest b/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest similarity index 100% rename from vsintegration/VisualFSharpVsix/Source.extension.vsixmanifest rename to vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest diff --git a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj similarity index 84% rename from vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj rename to vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj index ccabcb48d11..fd0ad6584d1 100644 --- a/vsintegration/VisualFSharpVsix/VisualFSharpVsix.csproj +++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj @@ -2,8 +2,7 @@ - ..\..\src - ..\src + ..\..\..\src net40 15.0 11.0 @@ -48,9 +47,9 @@ False {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} true - VisualFSharpVsix + VisualFSharpFull $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin - VisualFSharpVsix + VisualFSharpFull $(RootBinPath) 15.4.1.0 cs @@ -73,7 +72,7 @@ Designer - + Always true RegisterFsharpPackage.pkgdef @@ -149,147 +148,147 @@ DebugSymbolsProjectOutputGroup%3b false - + {65e0e82a-eace-4787-8994-888674c2fe87} FSharp.Editor BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {1C5C163C-37EA-4A3C-8CCC-0D34B74BF8EF} FSharp.LanguageService.Base BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {EE85AAB7-CDA0-4C4E-BDA0-A64CCC413E3F} FSharp.LanguageService BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {B700E38B-F8C0-4E49-B5EC-DB7B7AC0C4E7} ProjectSystem.Base BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {6196B0F8-CAEA-4CF1-AF82-1B520F77FE44} ProjectSystem BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {FCFB214C-462E-42B3-91CA-FC557EFEE74F} FSharp.PropertiesPages BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {991DCF75-C2EB-42B6-9A0D-AA1D2409D519} FSharp.VS.FSI BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b DebugSymbolsProjectOutputGroup%3b false - + {6ba13aa4-c25f-480f-856b-8e8000299a72} AppConfig ItemTemplates false TemplateProjectOutputGroup%3b - + {12ac2813-e895-4aaa-ae6c-94e21da09f64} CodeFile ItemTemplates false TemplateProjectOutputGroup%3b - + {a333b85a-dc23-49b6-9797-b89a7951e92d} ScriptFile ItemTemplates false TemplateProjectOutputGroup%3b - + {e3fdd4ac-46b6-4b9f-b672-317d1202cc50} SignatureFile ItemTemplates false TemplateProjectOutputGroup%3b - + {d11fc318-8f5d-4c8c-9287-ab40a016d13c} TextFile ItemTemplates false TemplateProjectOutputGroup%3b - + {1fb1dd07-06aa-45b4-b5ac-20ff5bee98b6} XMLFile ItemTemplates false TemplateProjectOutputGroup%3b - + {604f0daa-2d33-48dd-b162-edf0b672803d} ConsoleProject ProjectTemplates false TemplateProjectOutputGroup%3b - + {01678cda-a11f-4dee-9344-2edf91cf1ae7} LibraryProject ProjectTemplates false TemplateProjectOutputGroup%3b - + {d9d95330-3626-4199-b7af-17b8e4af6d87} NetCore259Project ProjectTemplates false TemplateProjectOutputGroup%3b - + {1a8dbf70-4178-4ae3-af5f-39ddd5692210} NetCore78Project ProjectTemplates false TemplateProjectOutputGroup%3b - + {5b739cf3-1116-4eb4-b598-6c16bea81ce5} NetCoreProject ProjectTemplates false TemplateProjectOutputGroup%3b - + {db374a0c-7560-479f-9b21-d37c81f7624f} PortableLibraryProject ProjectTemplates false TemplateProjectOutputGroup%3b - + {15a57828-f9f5-4fb4-8e1e-ae7622a10f70} SilverlightProject ProjectTemplates false TemplateProjectOutputGroup%3b - + {2facee44-48bd-40b5-a2ee-b54a0c9bb7c4} TutorialProject ProjectTemplates @@ -297,6 +296,16 @@ TemplateProjectOutputGroup%3b - + + + + + + + + VsixSHA2 + + + \ No newline at end of file diff --git a/vsintegration/Vsix/VisualFSharpWeb/Source.extension.vsixmanifest b/vsintegration/Vsix/VisualFSharpWeb/Source.extension.vsixmanifest new file mode 100644 index 00000000000..7c8c944a5c0 --- /dev/null +++ b/vsintegration/Vsix/VisualFSharpWeb/Source.extension.vsixmanifest @@ -0,0 +1,58 @@ + + + + + + Visual F# Tools + Deploy Visual F# Tools templates to Visual Studio + ..\CommonExtensions\Microsoft\FSharp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj b/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj new file mode 100644 index 00000000000..2223f5aa0b3 --- /dev/null +++ b/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj @@ -0,0 +1,276 @@ + + + + + ..\..\..\src + net40 + 15.0 + 11.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + 15.0 + 2.0 + true + {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + + + publish\ + true + Disk + false + Foreground + 7 + Days + true + false + true + 0 + v4.6 + false + false + false + false + false + false + false + false + true + None + Debug + AnyCPU + Library + Properties + FSharpDev + true + False + False + {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} + true + VisualFSharpWeb + $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin + VisualFSharpWeb + $(RootBinPath) + 15.4.1.0 + cs + + + Program + $(DevEnvDir)devenv.exe + /rootsuffix $(VSRootSuffix) /log + $(VSRootSuffix) + true + + + Program + $(DevEnvDir)devenv.exe + true + /rootsuffix $(VSRootSuffix) /log + $(VSRootSuffix) + + + + Designer + + + Always + true + RegisterFsharpPackage.pkgdef + + + PreserveNewest + true + + + + + False + Microsoft .NET Framework 4.6 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + + + {649FA588-F02E-457C-9FCF-87E46407481E} + FSharp.Compiler.Interactive.Settings + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {D5870CF0-ED51-4CBC-B3D7-6F56DA84AC06} + FSharp.Compiler.Server.Shared + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {2E4D67B4-522D-4CF7-97E4-BA940F0B18F3} + FSharp.Compiler + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {DED3BBD7-53F4-428A-8C9F-27968E768605} + FSharp.Core + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + + + {A437A6EC-5323-47C2-8F86-E2CAC54FF152} + FSharp.LanguageService.Compiler + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {8B3E283D-B5FE-4055-9D80-7E3A32F3967B} + FsiAnyCPU + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {D0E98C0D-490B-4C61-9329-0862F6E87645} + Fsi + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {65e0e82a-eace-4787-8994-888674c2fe87} + FSharp.Editor + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {1C5C163C-37EA-4A3C-8CCC-0D34B74BF8EF} + FSharp.LanguageService.Base + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {EE85AAB7-CDA0-4C4E-BDA0-A64CCC413E3F} + FSharp.LanguageService + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {B700E38B-F8C0-4E49-B5EC-DB7B7AC0C4E7} + ProjectSystem.Base + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {6196B0F8-CAEA-4CF1-AF82-1B520F77FE44} + ProjectSystem + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {FCFB214C-462E-42B3-91CA-FC557EFEE74F} + FSharp.PropertiesPages + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {991DCF75-C2EB-42B6-9A0D-AA1D2409D519} + FSharp.VS.FSI + BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bSatelliteDllsProjectOutputGroup%3bPkgDefProjectOutputGroup%3b + DebugSymbolsProjectOutputGroup%3b + false + + + {6ba13aa4-c25f-480f-856b-8e8000299a72} + AppConfig + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {12ac2813-e895-4aaa-ae6c-94e21da09f64} + CodeFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {a333b85a-dc23-49b6-9797-b89a7951e92d} + ScriptFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {e3fdd4ac-46b6-4b9f-b672-317d1202cc50} + SignatureFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {d11fc318-8f5d-4c8c-9287-ab40a016d13c} + TextFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {1fb1dd07-06aa-45b4-b5ac-20ff5bee98b6} + XMLFile + ItemTemplates + false + TemplateProjectOutputGroup%3b + + + {01678cda-a11f-4dee-9344-2edf91cf1ae7} + LibraryProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {15a57828-f9f5-4fb4-8e1e-ae7622a10f70} + SilverlightProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + {2facee44-48bd-40b5-a2ee-b54a0c9bb7c4} + TutorialProject + ProjectTemplates + false + TemplateProjectOutputGroup%3b + + + + + + + + + + + VsixSHA2 + + + + \ No newline at end of file diff --git a/vsintegration/fsharp-vsintegration-vsix-build.proj b/vsintegration/fsharp-vsintegration-vsix-build.proj index 1eb3e5c22a2..96cc78da026 100644 --- a/vsintegration/fsharp-vsintegration-vsix-build.proj +++ b/vsintegration/fsharp-vsintegration-vsix-build.proj @@ -5,25 +5,12 @@ - - - - - - - - - - - - - - + + + - - diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj b/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj index 8aca56ce9dc..746f2b15af7 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/ProjectSystem.fsproj @@ -8,6 +8,7 @@ $(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\VSSDK 11 + Debug AnyCPU @@ -22,7 +23,6 @@ $(OtherFlags) --warnon:1182 --subsystemversion:6.00 FX_ATLEAST_45 false - true ProjectResources.rc true false @@ -31,7 +31,6 @@ true true - $(FSharpSourcesRoot)\..\loc\lcl\{Lang}\$(AssemblyName).dll.lcl @@ -53,9 +52,9 @@ true - + fsiCommands.vsct - + @@ -151,8 +150,8 @@ FSharp.Core - + true VSCTCompile;CopyCtoFile;$(BuildDependsOn) From 673fe427c29e3d563737e1be863605d083caa7d9 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Thu, 30 Jun 2016 14:43:59 -0700 Subject: [PATCH 09/32] Fix build errors --- VisualFSharp.sln | 46 +++++++++++++++---- .../Microsoft.FSharp.LangPack.swixproj | 2 +- .../Microsoft.FSharp.SDK.swixproj | 2 +- .../VisualFSharpFull/VisualFSharpFull.csproj | 6 +-- .../VisualFSharpWeb/VisualFSharpWeb.csproj | 6 +-- .../FSharp.ProjectSystem.FSharp/Project.fs | 2 +- 6 files changed, 44 insertions(+), 20 deletions(-) diff --git a/VisualFSharp.sln b/VisualFSharp.sln index b0b8dcc603c..510cf7db4c0 100644 --- a/VisualFSharp.sln +++ b/VisualFSharp.sln @@ -1,9 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 -VisualStudioVersion = 15.0.25123.0 -# Visual Studio 14 -VisualStudioVersion = 14.0.24720.0 +VisualStudioVersion = 15.0.25302.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Compiler", "src\fsharp\FSharp.Compiler\FSharp.Compiler.fsproj", "{2E4D67B4-522D-4CF7-97E4-BA940F0B18F3}" EndProject @@ -120,17 +118,20 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextFile", "vsintegration\I EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLFile", "vsintegration\ItemTemplates\XMLFile\XMLFile.csproj", "{1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VisualFSharpVsix", "vsintegration\VisualFSharpVsix\VisualFSharpVsix.csproj", "{E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{A83A9A70-8C33-4253-BF6F-3AADB509F21C}" ProjectSection(SolutionItems) = preProject Performance1.psess = Performance1.psess EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Vsix", "Vsix", "{141F6C23-E1B1-4D89-9F10-F0B8AD58E71F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VisualFSharpDesktop", "vsintegration\Vsix\VisualFSharpDesktop\VisualFSharpDesktop.csproj", "{E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VisualFSharpFull", "vsintegration\Vsix\VisualFSharpFull\VisualFSharpFull.csproj", "{59ADCE46-9740-4079-834D-9A03A3494EBC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VisualFSharpWeb", "vsintegration\Vsix\VisualFSharpWeb\VisualFSharpWeb.csproj", "{58730C8B-16F5-4956-9291-BB68E17C9142}" +EndProject Global - GlobalSection(Performance) = preSolution - HasPerformanceSessions = true - EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Debug|x86 = Debug|x86 @@ -715,6 +716,30 @@ Global {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|Any CPU.Build.0 = Release|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|x86.ActiveCfg = Release|Any CPU {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090}.Release|x86.Build.0 = Release|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Debug|x86.ActiveCfg = Debug|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Debug|x86.Build.0 = Debug|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Proto|Any CPU.ActiveCfg = Proto|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Proto|Any CPU.Build.0 = Proto|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Proto|x86.ActiveCfg = Proto|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Proto|x86.Build.0 = Proto|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Release|Any CPU.Build.0 = Release|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Release|x86.ActiveCfg = Release|Any CPU + {59ADCE46-9740-4079-834D-9A03A3494EBC}.Release|x86.Build.0 = Release|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Debug|Any CPU.Build.0 = Debug|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Debug|x86.ActiveCfg = Debug|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Debug|x86.Build.0 = Debug|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Proto|Any CPU.ActiveCfg = Proto|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Proto|Any CPU.Build.0 = Proto|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Proto|x86.ActiveCfg = Proto|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Proto|x86.Build.0 = Proto|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Release|Any CPU.ActiveCfg = Release|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Release|Any CPU.Build.0 = Release|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Release|x86.ActiveCfg = Release|Any CPU + {58730C8B-16F5-4956-9291-BB68E17C9142}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -771,6 +796,9 @@ Global {E3FDD4AC-46B6-4B9F-B672-317D1202CC50} = {F6DAEE9A-8BE1-4C4A-BC83-09215517C7DA} {D11FC318-8F5D-4C8C-9287-AB40A016D13C} = {F6DAEE9A-8BE1-4C4A-BC83-09215517C7DA} {1FB1DD07-06AA-45B4-B5AC-20FF5BEE98B6} = {F6DAEE9A-8BE1-4C4A-BC83-09215517C7DA} - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} = {4C7B48D7-19AF-4AE7-9D1D-3BB289D5480D} + {141F6C23-E1B1-4D89-9F10-F0B8AD58E71F} = {4C7B48D7-19AF-4AE7-9D1D-3BB289D5480D} + {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} = {141F6C23-E1B1-4D89-9F10-F0B8AD58E71F} + {59ADCE46-9740-4079-834D-9A03A3494EBC} = {141F6C23-E1B1-4D89-9F10-F0B8AD58E71F} + {58730C8B-16F5-4956-9291-BB68E17C9142} = {141F6C23-E1B1-4D89-9F10-F0B8AD58E71F} EndGlobalSection EndGlobal diff --git a/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj b/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj index 36ed844ed8e..0b04e1513d6 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj +++ b/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj @@ -3,7 +3,7 @@ ..\..\..\src neutral - true + false vsix true Debug diff --git a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj index 3f19bbb3103..d2275165d07 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj +++ b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj @@ -3,7 +3,7 @@ ..\..\..\src neutral - true + false manifest Microsoft.FSharp.SDK.$(LocaleCode) true diff --git a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj index fd0ad6584d1..616fad1b666 100644 --- a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj +++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj @@ -45,7 +45,7 @@ true False False - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} + {59ADCE46-9740-4079-834D-9A03A3494EBC} true VisualFSharpFull $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin @@ -296,15 +296,13 @@ TemplateProjectOutputGroup%3b - - - VsixSHA2 + VsixSHA2 diff --git a/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj b/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj index 2223f5aa0b3..d697213f935 100644 --- a/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj +++ b/vsintegration/Vsix/VisualFSharpWeb/VisualFSharpWeb.csproj @@ -45,7 +45,7 @@ true False False - {E7EC4A3E-9D57-45B8-83F5-EDDFD6CEF090} + {58730C8B-16F5-4956-9291-BB68E17C9142} true VisualFSharpWeb $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetFramework)\bin @@ -261,15 +261,13 @@ TemplateProjectOutputGroup%3b - - - VsixSHA2 + VsixSHA2 diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs index 444fc7f28f9..a9052f01ffa 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs @@ -389,7 +389,7 @@ namespace rec Microsoft.VisualStudio.FSharp.ProjectSystem let mutable sourcesAndFlags : option<(array * array)> = None #if DEBUG let mutable shouldLog = false // can poke this in the debugger to turn on logging - let logger = new Microsoft.Build.BuildEngine.ConsoleLogger(Microsoft.Build.Framework.LoggerVerbosity.Diagnostic, + let logger = new Microsoft.Build.Logging.ConsoleLogger(Microsoft.Build.Framework.LoggerVerbosity.Diagnostic, (fun s -> let self = this ignore self // ensure debugger has local in scope, so can poke self.shouldLog From 9d037c0b0d23c6ab25e48dc4174ad0b2bfdc159e Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Thu, 30 Jun 2016 15:06:12 -0700 Subject: [PATCH 10/32] Fix swix dependencies --- .../Microsoft.FSharp.Dependencies/Files.swr | 1 - .../DesktopTemplates.swr | 1 - .../Swix/Microsoft.FSharp.LangPack/Files.swr | 1 - .../FullTemplates.swr | 1 - .../WebTemplates.swr | 1 - setup/Swix/Microsoft.FSharp.SDK/Files.swr | 1 - setup/Swix/Microsoft.FSharp.Vsix/Files.swr | 24 +++++++++---------- 7 files changed, 12 insertions(+), 18 deletions(-) diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr index a38d915a90e..8014e5775ad 100644 --- a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr @@ -2,7 +2,6 @@ use vs package name=Microsoft.FSharp.Dependencies version=4.1 - vs.package.chip=neutral vs.package.language=en-us folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr b/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr index 3c5fa8a7711..cf1ebf19279 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr @@ -2,7 +2,6 @@ use vs package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - vs.package.chip=neutral vs.package.language=$(LocaleRegion) folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/Files.swr b/setup/Swix/Microsoft.FSharp.LangPack/Files.swr index 444bd5c3a85..91f00fa807e 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/Files.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/Files.swr @@ -2,7 +2,6 @@ use vs package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - vs.package.chip=neutral vs.package.language=$(LocaleRegion) folder "InstallDir:Common7\IDE\PublicAssemblies\$(LocaleRegion)" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr b/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr index f970a599f93..fb4dce3d970 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr @@ -2,7 +2,6 @@ use vs package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - vs.package.chip=neutral vs.package.language=$(LocaleRegion) folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr b/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr index 8174d541ebb..f311f8c3b9b 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr @@ -2,7 +2,6 @@ use vs package name=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - vs.package.chip=neutral vs.package.language=$(LocaleRegion) folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" diff --git a/setup/Swix/Microsoft.FSharp.SDK/Files.swr b/setup/Swix/Microsoft.FSharp.SDK/Files.swr index 2ca406b24ba..d161ff0fb99 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Files.swr +++ b/setup/Swix/Microsoft.FSharp.SDK/Files.swr @@ -3,7 +3,6 @@ use vs package name=Microsoft.FSharp.SDK version=4.1 vs.package.type=msi - vs.package.chip=neutral vs.package.language=$(LocaleRegion) vs.payloads diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr index 2eca81d3eee..1ce1678adaa 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr @@ -3,20 +3,20 @@ use vs package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.type=vsix - vs.package.chip=neutral vs.package.language=en-us - -vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) - version=4.1 - type=Required -vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - -vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required +vs.dependencies + vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required vs.payloads vs.payload source="$(BinariesFolder)\net40\bin\VisualFSharp$(VSSku).vsix" \ No newline at end of file From 93b54c88a264a97e52895165681f28fc7d68b02b Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Fri, 1 Jul 2016 13:22:09 -0700 Subject: [PATCH 11/32] Make language packs optional --- setup/Swix/Microsoft.FSharp.Dependencies/Files.swr | 2 +- setup/Swix/Microsoft.FSharp.SDK/Files.swr | 2 +- .../Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj | 6 ++++++ setup/Swix/Microsoft.FSharp.Vsix/Files.swr | 4 ++-- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr index 8014e5775ad..f0cb85b20a7 100644 --- a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr @@ -2,7 +2,7 @@ use vs package name=Microsoft.FSharp.Dependencies version=4.1 - vs.package.language=en-us + vs.package.language=neutral folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets" diff --git a/setup/Swix/Microsoft.FSharp.SDK/Files.swr b/setup/Swix/Microsoft.FSharp.SDK/Files.swr index d161ff0fb99..1c363a7f9a6 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Files.swr +++ b/setup/Swix/Microsoft.FSharp.SDK/Files.swr @@ -3,7 +3,7 @@ use vs package name=Microsoft.FSharp.SDK version=4.1 vs.package.type=msi - vs.package.language=$(LocaleRegion) + vs.package.language=$(SwixPackageLanguage) vs.payloads vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.$(LocaleCode).msi" diff --git a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj index d2275165d07..ca6d6196e0c 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj +++ b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj @@ -15,10 +15,15 @@ + $(LocaleRegion) + neutral + $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) + $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) + $(PackagePreprocessorDefinitions);SwixPackageLanguage=$(SwixPackageLanguage) @@ -29,5 +34,6 @@ + diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr index 1ce1678adaa..4c66cb8c569 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr @@ -3,12 +3,12 @@ use vs package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.type=vsix - vs.package.language=en-us + vs.package.language=neutral vs.dependencies vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - type=Required + type=Optional vs.dependency id=Microsoft.FSharp.Dependencies version=4.1 From 9c2978661e0f9ce1e43a819a729b0b35ad92d578 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Fri, 1 Jul 2016 16:53:55 -0700 Subject: [PATCH 12/32] Fixed selectable package dependencies --- setup/Swix/Microsoft.FSharp.SDK/Files.swr | 2 +- .../Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj | 10 +++++----- setup/Swix/Microsoft.FSharp.Vsix/Files.swr | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/setup/Swix/Microsoft.FSharp.SDK/Files.swr b/setup/Swix/Microsoft.FSharp.SDK/Files.swr index 1c363a7f9a6..d161ff0fb99 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Files.swr +++ b/setup/Swix/Microsoft.FSharp.SDK/Files.swr @@ -3,7 +3,7 @@ use vs package name=Microsoft.FSharp.SDK version=4.1 vs.package.type=msi - vs.package.language=$(SwixPackageLanguage) + vs.package.language=$(LocaleRegion) vs.payloads vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.$(LocaleCode).msi" diff --git a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj index ca6d6196e0c..3e836ccb657 100644 --- a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj +++ b/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj @@ -15,21 +15,21 @@ - $(LocaleRegion) - neutral - $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) - $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) - $(PackagePreprocessorDefinitions);SwixPackageLanguage=$(SwixPackageLanguage) + $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) + + + + diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr index 4c66cb8c569..d96a9264d2b 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/Files.swr @@ -8,7 +8,7 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) vs.dependencies vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) version=4.1 - type=Optional + type=Required vs.dependency id=Microsoft.FSharp.Dependencies version=4.1 From 2025060eeceb58e3881d3ef761325cf4db3cf572 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Mon, 4 Jul 2016 17:48:59 +0100 Subject: [PATCH 13/32] Fix 1265 --- src/fsharp/LexFilter.fs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index e4ef817ca77..dc1df6a5cbf 100755 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -927,6 +927,7 @@ type LexFilterImpl (lightSyntaxStatus:LightSyntaxStatus, compilingFsLib, lexer, | MINUS | GLOBAL | CONST + | KEYWORD_STRING _ | NULL | INT8 _ | INT16 _ | INT32 _ | INT64 _ | NATIVEINT _ | UINT8 _ | UINT16 _ | UINT32 _ | UINT64 _ | UNATIVEINT _ From 56b82d8ccd0bc5f6b0e1e33b0eaddf63ea41ed1f Mon Sep 17 00:00:00 2001 From: Don Syme Date: Mon, 4 Jul 2016 18:03:36 +0100 Subject: [PATCH 14/32] add testing --- tests/fsharp/typecheck/sigs/neg96.bsl | 6 +++++- tests/fsharp/typecheck/sigs/neg96.fs | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/fsharp/typecheck/sigs/neg96.bsl b/tests/fsharp/typecheck/sigs/neg96.bsl index 99319706645..994e057b521 100644 --- a/tests/fsharp/typecheck/sigs/neg96.bsl +++ b/tests/fsharp/typecheck/sigs/neg96.bsl @@ -1,4 +1,8 @@ neg95.fs(11,9,11,21): typecheck error FS0039: The value or constructor 'StructRecord' is not defined -neg96.fs(14,17,14,18): typecheck error FS3205: This feature is deprecated. A 'use' binding may not be marked 'mutable'. \ No newline at end of file +neg96.fs(14,17,14,18): typecheck error FS3205: This feature is deprecated. A 'use' binding may not be marked 'mutable'. + +neg96.fs(18,10,18,11): typecheck error FS0039: The type 'X' is not defined + +neg96.fs(18,10,18,11): typecheck error FS0039: The type 'X' is not defined \ No newline at end of file diff --git a/tests/fsharp/typecheck/sigs/neg96.fs b/tests/fsharp/typecheck/sigs/neg96.fs index d823086822a..fef81522e0b 100644 --- a/tests/fsharp/typecheck/sigs/neg96.fs +++ b/tests/fsharp/typecheck/sigs/neg96.fs @@ -13,3 +13,7 @@ let x = StructRecord () let invalidUse() = use mutable x = (null : System.IDisposable) () + + +type T = X<__SOURCE_DIRECTORY__> + From 1257b3e14e6d45324e2c9d6b7b9dc3b3ae34bd41 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 4 Jul 2016 20:17:03 -0700 Subject: [PATCH 15/32] Merged LangPack to Vsix swixproj --- .../Microsoft.FSharp.LangPack.swixproj | 43 ------------------- .../{Files.swr => Core.Files.swr} | 6 +-- .../LangPack.Desktop.Templates.swr} | 11 ++++- .../LangPack.Files.swr} | 11 ++++- .../LangPack.Full.Templates.swr} | 11 ++++- .../LangPack.Web.Templates.swr} | 11 ++++- .../Microsoft.FSharp.Vsix.swixproj | 28 ++++++++++-- setup/Swix/Microsoft.FSharp.vsmanproj | 7 +-- setup/fsharp-setup-build.proj | 32 +------------- 9 files changed, 69 insertions(+), 91 deletions(-) delete mode 100644 setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj rename setup/Swix/Microsoft.FSharp.Vsix/{Files.swr => Core.Files.swr} (73%) rename setup/Swix/{Microsoft.FSharp.LangPack/DesktopTemplates.swr => Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr} (85%) rename setup/Swix/{Microsoft.FSharp.LangPack/Files.swr => Microsoft.FSharp.Vsix/LangPack.Files.swr} (85%) rename setup/Swix/{Microsoft.FSharp.LangPack/FullTemplates.swr => Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr} (94%) rename setup/Swix/{Microsoft.FSharp.LangPack/WebTemplates.swr => Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr} (86%) diff --git a/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj b/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj deleted file mode 100644 index 0b04e1513d6..00000000000 --- a/setup/Swix/Microsoft.FSharp.LangPack/Microsoft.FSharp.LangPack.swixproj +++ /dev/null @@ -1,43 +0,0 @@ - - - - ..\..\..\src - neutral - false - vsix - true - Debug - $(FSharpSourcesRoot)\..\$(Configuration) - $(BinariesFolder)\insertion - Microsoft.FSharp.LangPack.$(VSSku).$(LocaleCode) - $(MSBuildThisFileDirectory)obj - - - - - - $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) - $(PackagePreprocessorDefinitions);VSSku=$(VSSku) - $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) - $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) - $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) - $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) - - - - - - - - - - - - - - - - - - - diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr similarity index 73% rename from setup/Swix/Microsoft.FSharp.Vsix/Files.swr rename to setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr index d96a9264d2b..8dcb89d8736 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr @@ -3,13 +3,9 @@ use vs package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.type=vsix - vs.package.language=neutral + vs.package.language=$(LocaleRegion) vs.dependencies - vs.dependency id=Microsoft.FSharp.LangPack.$(VSSku) - version=4.1 - type=Required - vs.dependency id=Microsoft.FSharp.Dependencies version=4.1 type=Required diff --git a/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr similarity index 85% rename from setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr rename to setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr index cf1ebf19279..dfed31203a6 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/DesktopTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr @@ -1,9 +1,18 @@ use vs -package name=Microsoft.FSharp.LangPack.$(VSSku) +package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) +vs.dependencies + vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr similarity index 85% rename from setup/Swix/Microsoft.FSharp.LangPack/Files.swr rename to setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr index 91f00fa807e..16847960228 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr @@ -1,9 +1,18 @@ use vs -package name=Microsoft.FSharp.LangPack.$(VSSku) +package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) +vs.dependencies + vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + folder "InstallDir:Common7\IDE\PublicAssemblies\$(LocaleRegion)" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.Core.resources.dll" vs.file.ngen=yes diff --git a/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr similarity index 94% rename from setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr rename to setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr index fb4dce3d970..9664fd655ec 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/FullTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr @@ -1,9 +1,18 @@ use vs -package name=Microsoft.FSharp.LangPack.$(VSSku) +package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) +vs.dependencies + vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" diff --git a/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr similarity index 86% rename from setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr rename to setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr index f311f8c3b9b..0d3f2aef8dc 100644 --- a/setup/Swix/Microsoft.FSharp.LangPack/WebTemplates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr @@ -1,9 +1,18 @@ use vs -package name=Microsoft.FSharp.LangPack.$(VSSku) +package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) +vs.dependencies + vs.dependency id=Microsoft.FSharp.Dependencies + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj b/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj index f675f6d339f..9cc2d0f1199 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj +++ b/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj @@ -4,24 +4,40 @@ ..\..\..\src neutral false - manifest true Debug $(FSharpSourcesRoot)\..\$(Configuration) $(BinariesFolder)\insertion - Microsoft.FSharp.VSIX.$(VSSku) + Microsoft.FSharp.VSIX.$(VSSku).$(LocaleCode) $(MSBuildThisFileDirectory)obj + + + manifest + + + + vsix + $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) $(PackagePreprocessorDefinitions);VSSku=$(VSSku) + $(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode) + $(PackagePreprocessorDefinitions);LocaleId=$(LocaleId) + $(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion) + $(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack) - - + + + + + + + @@ -30,5 +46,9 @@ + + + + diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj index a67cd245569..ba4a33c81a4 100644 --- a/setup/Swix/Microsoft.FSharp.vsmanproj +++ b/setup/Swix/Microsoft.FSharp.vsmanproj @@ -16,12 +16,9 @@ - - + + - - \ No newline at end of file diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj index 202134ec056..0eb7e6bbceb 100644 --- a/setup/fsharp-setup-build.proj +++ b/setup/fsharp-setup-build.proj @@ -30,46 +30,18 @@ TaskParameter="Include"/> - - - + - Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj - - Swix\Microsoft.FSharp.Vsix\Microsoft.FSharp.Vsix.swixproj - Full - - Swix\Microsoft.FSharp.vsmanproj From 7c9b3afc53ce7bfe7fe07e2009d6076a764c5c66 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Tue, 5 Jul 2016 13:55:55 +0100 Subject: [PATCH 16/32] add testing --- src/fsharp/TypeChecker.fs | 87 +++++++++++++++++++--------- tests/fsharp/core/longnames/test.fsx | 75 ++++++++++++++++++++++++ 2 files changed, 135 insertions(+), 27 deletions(-) diff --git a/src/fsharp/TypeChecker.fs b/src/fsharp/TypeChecker.fs index b5da2a0281b..eccec0ac0c7 100755 --- a/src/fsharp/TypeChecker.fs +++ b/src/fsharp/TypeChecker.fs @@ -3463,7 +3463,7 @@ module MutRecShapes = | MutRecShape.Tycon a -> MutRecShape.Tycon (f2 parent a) | MutRecShape.Lets b -> MutRecShape.Lets (f3 parent b) | MutRecShape.Module (c,d) -> - let c2, parent2 = f1 parent c + let c2, parent2 = f1 parent c d MutRecShape.Module (c2, mapWithParent parent2 f1 f2 f3 d)) let rec computeEnvs f1 f2 (env: 'Env) xs = @@ -14111,24 +14111,32 @@ module EstablishTypeDefinitionCores = | _ -> () ] - let ComputeModuleOrNamespaceKind g isModule attribs = + let ComputeModuleOrNamespaceKind g isModule typeNames attribs nm = if not isModule then Namespace - elif ModuleNameIsMangled g attribs then FSharpModuleWithSuffix + elif ModuleNameIsMangled g attribs || Set.contains nm typeNames then FSharpModuleWithSuffix else ModuleOrType let AdjustModuleName modKind nm = (match modKind with FSharpModuleWithSuffix -> nm+FSharpModuleSuffix | _ -> nm) - let TcTyconDefnCore_Phase1A_BuildInitialModule cenv envInitial parent compInfo = + let TypeNamesInMutRecDecls (compDecls: MutRecShapes) = + [ for d in compDecls do + match d with + | MutRecShape.Tycon (MutRecDefnsPhase1DataForTycon(ComponentInfo(_,_,_,ids,_,_,_,_),_,_,_,_,isAtOriginalTyconDefn),_) -> + if isAtOriginalTyconDefn then + yield (List.last ids).idText + | _ -> () ] + |> set + + let TcTyconDefnCore_Phase1A_BuildInitialModule cenv envInitial parent typeNames compInfo compDecls = let (ComponentInfo(attribs,_parms, _constraints,longPath,xml,_,vis,im)) = compInfo let id = ComputeModuleName longPath let modAttrs = TcAttributes cenv envInitial AttributeTargets.ModuleDecl attribs - let modKind = ComputeModuleOrNamespaceKind cenv.g true modAttrs + let modKind = ComputeModuleOrNamespaceKind cenv.g true typeNames modAttrs id.idText let modName = AdjustModuleName modKind id.idText let vis,_ = ComputeAccessAndCompPath envInitial None id.idRange vis parent - CheckForDuplicateModule envInitial id.idText id.idRange let id = ident (modName, id.idRange) CheckForDuplicateConcreteType envInitial id.idText im CheckNamespaceModuleOrTypeName cenv.g id @@ -14136,7 +14144,8 @@ module EstablishTypeDefinitionCores = let envForDecls, mtypeAcc = MakeInnerEnv envInitial id modKind let mspec = NewModuleOrNamespace (Some envInitial.eCompPath) vis id (xml.ToXmlDoc()) modAttrs (notlazy (NewEmptyModuleOrNamespaceType modKind)) let innerParent = Parent (mkLocalModRef mspec) - MutRecDefnsPhase2DataForModule (mtypeAcc, mspec), (innerParent, envForDecls) + let typeNames = TypeNamesInMutRecDecls compDecls + MutRecDefnsPhase2DataForModule (mtypeAcc, mspec), (innerParent, typeNames, envForDecls) /// Establish 'type C < T1... TN > = ...' including /// - computing the mangled name for C @@ -14154,7 +14163,7 @@ module EstablishTypeDefinitionCores = // Augmentations of type definitions are allowed within the same file as long as no new type representation or abbreviation is given CheckForDuplicateConcreteType env id.idText id.idRange - CheckForDuplicateModule env id.idText id.idRange + //CheckForDuplicateModule env id.idText id.idRange let vis,cpath = ComputeAccessAndCompPath env None id.idRange synVis parent // Establish the visibility of the representation, e.g. @@ -15202,20 +15211,20 @@ module EstablishTypeDefinitionCores = | _ -> ()) - let TcMutRecDefns_Phase1 mkLetInfo cenv envInitial parent inSig tpenv m scopem mutRecNSInfo (typeDefCores:MutRecShapes) = + let TcMutRecDefns_Phase1 mkLetInfo cenv envInitial parent inSig tpenv m scopem mutRecNSInfo (mutRecDefns:MutRecShapes) = // Phase1A - build Entity for type definitions, exception definitions and module definitions. // Also for abbreviations of any of these. Augmentations are skipped in this phase. let withEntities = - typeDefCores + mutRecDefns |> MutRecShapes.mapWithParent - (parent, envInitial) + (parent, TypeNamesInMutRecDecls mutRecDefns, envInitial) // Build the initial entity for each module definition - (fun (innerParent, envForDecls) compInfo -> - TcTyconDefnCore_Phase1A_BuildInitialModule cenv envForDecls innerParent compInfo) + (fun (innerParent, typeNames, envForDecls) compInfo decls -> + TcTyconDefnCore_Phase1A_BuildInitialModule cenv envForDecls innerParent typeNames compInfo decls) // Build the initial Tycon for each type definition - (fun (innerParent, envForDecls) (typeDefCore,tyconMemberInfo) -> + (fun (innerParent, _, envForDecls) (typeDefCore,tyconMemberInfo) -> let (MutRecDefnsPhase1DataForTycon(_,_,_,_,_,isAtOriginalTyconDefn)) = typeDefCore let tyconOpt = if isAtOriginalTyconDefn then @@ -15225,7 +15234,7 @@ module EstablishTypeDefinitionCores = (typeDefCore, tyconMemberInfo, innerParent), tyconOpt) // Bundle up the data for each 'val', 'member' or 'let' definition (just package up the data, no processing yet) - (fun (innerParent,_) synBinds -> + (fun (innerParent, _, _) synBinds -> let containerInfo = ModuleOrNamespaceContainerInfo(match innerParent with Parent p -> p | _ -> failwith "unreachable") mkLetInfo containerInfo synBinds) @@ -15246,7 +15255,6 @@ module EstablishTypeDefinitionCores = tyconOpt |> Option.iter (fun tycon -> // recheck these in case type is a duplicate in a mutually recursive set CheckForDuplicateConcreteType envAbove tycon.LogicalName tycon.Range - CheckForDuplicateModule envAbove tycon.LogicalName tycon.Range PublishTypeDefn cenv envAbove tycon)) // Updates the types of the modules to contain the contents so far @@ -15657,7 +15665,7 @@ module TcDeclarations = | SynTypeDefnRepr.Simple(repr,_) -> let members = [] - let isAtOriginalTyconDefn = not (isAugmentationTyconDefnRepr repr) + let isAtOriginalTyconDefn = true let core = MutRecDefnsPhase1DataForTycon(synTyconInfo, repr, implements1, false, false, isAtOriginalTyconDefn) core, members @ extraMembers @@ -15738,8 +15746,10 @@ module TcDeclarations = /// Separates the signature declaration into core (shape) and body. let rec private SplitTyconSignature (TypeDefnSig(synTyconInfo,trepr,extraMembers,_)) = + let implements1 = extraMembers |> List.choose (function SynMemberSig.Interface (f,m) -> Some(f,m) | _ -> None) + match trepr with | SynTypeDefnSigRepr.ObjectModel(kind,cspec,m) -> let fields = cspec |> List.choose (function SynMemberSig.ValField (f,_) -> Some(f) | _ -> None) @@ -15847,7 +15857,7 @@ module TcDeclarations = // Bind module types //------------------------------------------------------------------------- -let rec TcSignatureElementNonMutRec cenv parent endm (env: TcEnv) synSigDecl : Eventually = +let rec TcSignatureElementNonMutRec cenv parent typeNames endm (env: TcEnv) synSigDecl : Eventually = eventually { try match synSigDecl with @@ -15888,10 +15898,9 @@ let rec TcSignatureElementNonMutRec cenv parent endm (env: TcEnv) synSigDecl : E let vis,_ = ComputeAccessAndCompPath env None im vis parent let attribs = TcAttributes cenv env AttributeTargets.ModuleDecl attribs CheckNamespaceModuleOrTypeName cenv.g id - let modKind = EstablishTypeDefinitionCores.ComputeModuleOrNamespaceKind cenv.g true attribs + let modKind = EstablishTypeDefinitionCores.ComputeModuleOrNamespaceKind cenv.g true typeNames attribs id.idText let modName = EstablishTypeDefinitionCores.AdjustModuleName modKind id.idText CheckForDuplicateConcreteType env modName id.idRange - CheckForDuplicateModule env id.idText id.idRange // Now typecheck the signature, accumulating and then recording the submodule description. let id = ident (modName, id.idRange) @@ -15999,7 +16008,19 @@ and TcSignatureElements cenv parent endm env xml mutRecNSInfo defs = and TcSignatureElementsNonMutRec cenv parent endm env defs = eventually { - return! Eventually.fold (TcSignatureElementNonMutRec cenv parent endm ) env defs + // Collect the type names so we can implicitly add the compilation suffix to module names + let typeNames = + [ for def in defs do + match def with + | SynModuleSigDecl.Types (typeSpecs,_) -> + for (TypeDefnSig(ComponentInfo(_,_,_,ids,_,_,_,_),trepr,extraMembers,_)) in typeSpecs do + match trepr with + | SynTypeDefnSigRepr.Simple((SynTypeDefnSimpleRepr.None _),_) when nonNil extraMembers -> () + | _ -> yield (List.last ids).idText + | _ -> () ] + |> set + + return! Eventually.fold (TcSignatureElementNonMutRec cenv parent typeNames endm) env defs } and TcSignatureElementsMutRec cenv parent endm mutRecNSInfo envInitial (defs: SynModuleSigDecl list) = @@ -16116,7 +16137,7 @@ let CheckLetOrDoInNamespace binds m = error(NumberedError(FSComp.SR.tcNamespaceCannotContainValues(),binds.Head.RangeOfHeadPat)) /// The non-mutually recursive case for a declaration -let rec TcModuleOrNamespaceElementNonMutRec (cenv:cenv) parent scopem env synDecl = +let rec TcModuleOrNamespaceElementNonMutRec (cenv:cenv) parent typeNames scopem env synDecl = eventually { cenv.synArgNameGenerator.Reset() let tpenv = emptyUnscopedTyparEnv @@ -16188,7 +16209,7 @@ let rec TcModuleOrNamespaceElementNonMutRec (cenv:cenv) parent scopem env synDec let id = ComputeModuleName longPath let modAttrs = TcAttributes cenv env AttributeTargets.ModuleDecl attribs - let modKind = EstablishTypeDefinitionCores.ComputeModuleOrNamespaceKind cenv.g true modAttrs + let modKind = EstablishTypeDefinitionCores.ComputeModuleOrNamespaceKind cenv.g true typeNames modAttrs id.idText let modName = EstablishTypeDefinitionCores.AdjustModuleName modKind id.idText CheckForDuplicateConcreteType env modName im CheckForDuplicateModule env id.idText id.idRange @@ -16292,7 +16313,7 @@ let rec TcModuleOrNamespaceElementNonMutRec (cenv:cenv) parent scopem env synDec } /// The non-mutually recursive case for a sequence of declarations -and TcModuleOrNamespaceElementsNonMutRec cenv parent endm (defsSoFar, env, envAtEnd) (moreDefs: SynModuleDecl list) = +and TcModuleOrNamespaceElementsNonMutRec cenv parent typeNames endm (defsSoFar, env, envAtEnd) (moreDefs: SynModuleDecl list) = eventually { match moreDefs with | (firstDef :: otherDefs) -> @@ -16304,9 +16325,9 @@ and TcModuleOrNamespaceElementsNonMutRec cenv parent endm (defsSoFar, env, envAt // Possibly better: //let scopem = unionRanges h1.Range.EndRange endm - let! firstDef',env', envAtEnd' = TcModuleOrNamespaceElementNonMutRec cenv parent scopem env firstDef + let! firstDef',env', envAtEnd' = TcModuleOrNamespaceElementNonMutRec cenv parent typeNames scopem env firstDef // tail recursive - return! TcModuleOrNamespaceElementsNonMutRec cenv parent endm ( (firstDef' :: defsSoFar), env', envAtEnd') otherDefs + return! TcModuleOrNamespaceElementsNonMutRec cenv parent typeNames endm ( (firstDef' :: defsSoFar), env', envAtEnd') otherDefs | [] -> return List.rev defsSoFar, envAtEnd } @@ -16416,7 +16437,19 @@ and TcModuleOrNamespaceElements cenv parent endm env xml mutRecNSInfo defs = return (mexpr, topAttrsNew, envAtEnd) | None -> - let! compiledDefs, envAtEnd = TcModuleOrNamespaceElementsNonMutRec cenv parent endm ([], env, env) defs + // Collect the type names so we can implicitly add the compilation suffix to module names + let typeNames = + [ for def in defs do + match def with + | SynModuleDecl.Types (typeSpecs,_) -> + for (TypeDefn(ComponentInfo(_,_,_,ids,_,_,_,_),trepr,_,_)) in typeSpecs do + match trepr with + | SynTypeDefnRepr.ObjectModel(TyconAugmentation,_,_) -> () + | _ -> yield (List.last ids).idText + | _ -> () ] + |> set + + let! compiledDefs, envAtEnd = TcModuleOrNamespaceElementsNonMutRec cenv parent typeNames endm ([], env, env) defs // Apply the functions for each declaration to build the overall expression-builder let mexpr = TMDefs(List.foldBack (fun (f,_) x -> f x) compiledDefs []) diff --git a/tests/fsharp/core/longnames/test.fsx b/tests/fsharp/core/longnames/test.fsx index e4b1b879e6f..750df5d5d6f 100644 --- a/tests/fsharp/core/longnames/test.fsx +++ b/tests/fsharp/core/longnames/test.fsx @@ -413,6 +413,81 @@ module TestsForUsingTypeNamesAsValuesWhenTheTypeHasAConstructor = begin end +module Ok1 = + + module A = + let create() = 1 + + + type A() = + member x.P = 1 + +module Ok2 = + + type A() = + member x.P = 1 + + + module A = + let create() = 1 + +module Ok3 = + + [] + module A = + let create() = 1 + + type A() = + member x.P = 1 + +module Ok4 = + + type A() = + member x.P = 1 + + [] + module A = + let create() = 1 + + + +module rec Ok5 = + + module A = + let create() = 1 + + + type A() = + member x.P = 1 + +module rec Ok6 = + + type A() = + member x.P = 1 + + + module A = + let create() = 1 + +module rec Ok7 = + + [] + module A = + let create() = 1 + + type A() = + member x.P = 1 + +module rec Ok8 = + + type A() = + member x.P = 1 + + [] + module A = + let create() = 1 + + let aa = if !failures then (stdout.WriteLine "Test Failed"; exit 1) From f835b5f39d91cf1140068bf4fb4e9c2019dab20a Mon Sep 17 00:00:00 2001 From: Don Syme Date: Tue, 5 Jul 2016 14:15:21 +0100 Subject: [PATCH 17/32] add more tests --- tests/fsharp/core/longnames/test.fsx | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/fsharp/core/longnames/test.fsx b/tests/fsharp/core/longnames/test.fsx index 750df5d5d6f..9b98f37b092 100644 --- a/tests/fsharp/core/longnames/test.fsx +++ b/tests/fsharp/core/longnames/test.fsx @@ -488,6 +488,29 @@ module rec Ok8 = let create() = 1 +module Ok9 = + + type A() = + member x.P = 1 + + type A<'T>() = + member x.P = 1 + + module A = + let create() = 1 + + +module rec Ok10 = + + type A() = + member x.P = 1 + + type A<'T>() = + member x.P = 1 + + module A = + let create() = 1 + let aa = if !failures then (stdout.WriteLine "Test Failed"; exit 1) From 7ee01f1052b0c3e109cc5bcff602a339a7406a38 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Tue, 5 Jul 2016 14:16:59 +0100 Subject: [PATCH 18/32] add testing --- tests/fsharp/core/longnames/test.fsx | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tests/fsharp/core/longnames/test.fsx b/tests/fsharp/core/longnames/test.fsx index 9b98f37b092..4adcee74628 100644 --- a/tests/fsharp/core/longnames/test.fsx +++ b/tests/fsharp/core/longnames/test.fsx @@ -511,6 +511,27 @@ module rec Ok10 = module A = let create() = 1 +module Ok11 = + + type A = int + + module A = + let create() = 1 + +module Ok12 = + + type A = A + + module A = + let create() = 1 + +module Ok13 = + + type A = A of string + + module A = + let create() = 1 + let aa = if !failures then (stdout.WriteLine "Test Failed"; exit 1) From a5a4c5a7bb9fca965f1c0a3901aa753a99a391a9 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Tue, 5 Jul 2016 14:28:47 +0100 Subject: [PATCH 19/32] add testing --- tests/fsharp/core/longnames/test.fsx | 76 ++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/tests/fsharp/core/longnames/test.fsx b/tests/fsharp/core/longnames/test.fsx index 4adcee74628..184d827a505 100644 --- a/tests/fsharp/core/longnames/test.fsx +++ b/tests/fsharp/core/longnames/test.fsx @@ -417,11 +417,15 @@ module Ok1 = module A = let create() = 1 + type Dummy = A | B type A() = member x.P = 1 + test "lkneecec09iew1" (typeof.FullName.Contains("AModule") ) + + module Ok2 = type A() = @@ -430,16 +434,24 @@ module Ok2 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew2" (typeof.FullName.Contains("AModule") ) + module Ok3 = [] module A = let create() = 1 + type Dummy = A | B type A() = member x.P = 1 + test "lkneecec09iew3" (typeof.FullName.Contains("AModule") ) + + module Ok4 = type A() = @@ -448,6 +460,9 @@ module Ok4 = [] module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew4" (typeof.FullName.Contains("AModule") ) @@ -455,11 +470,15 @@ module rec Ok5 = module A = let create() = 1 + type Dummy = A | B type A() = member x.P = 1 + test "lkneecec09iew5" (typeof.FullName.Contains("AModule") ) + + module rec Ok6 = type A() = @@ -468,16 +487,24 @@ module rec Ok6 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew6" (typeof.FullName.Contains("AModule") ) + module rec Ok7 = [] module A = let create() = 1 + type Dummy = A | B type A() = member x.P = 1 + test "lkneecec09iew7" (typeof.FullName.Contains("AModule") ) + + module rec Ok8 = type A() = @@ -486,6 +513,9 @@ module rec Ok8 = [] module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew8" (typeof.FullName.Contains("AModule") ) module Ok9 = @@ -498,8 +528,11 @@ module Ok9 = module A = let create() = 1 + type Dummy = A | B + test "lkneecec09iew9" (typeof.FullName.Contains("AModule") ) + module rec Ok10 = type A() = @@ -510,6 +543,9 @@ module rec Ok10 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew10" (typeof.FullName.Contains("AModule") ) module Ok11 = @@ -517,6 +553,9 @@ module Ok11 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew11" (typeof.FullName.Contains("AModule") ) module Ok12 = @@ -524,6 +563,9 @@ module Ok12 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew12" (typeof.FullName.Contains("AModule") ) module Ok13 = @@ -531,6 +573,40 @@ module Ok13 = module A = let create() = 1 + type Dummy = A | B + + test "lkneecec09iew13" (typeof.FullName.Contains("AModule") ) + + +module Ok14 = + + module X = + type A = A of string + + type X.A with + member x.P = 1 + + module A = // the type definition is an augmentation so doesn't get the suffix + let create() = 1 + type Dummy = A | B + + test "lkneecec09iew14" (not (typeof.FullName.Contains("AModule") )) + +module rec Ok15 = + + open X + + module X = + type A = A of string + + type A with + member x.P = 1 + + module A = // the type definition is an augmentation so doesn't get the suffix + let create() = 1 + type Dummy = A | B + + test "lkneecec09iew15" (not (typeof.FullName.Contains("AModule") )) let aa = if !failures then (stdout.WriteLine "Test Failed"; exit 1) From a197cd09051e2e4395526e4b3c4e498a6047fee4 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Tue, 5 Jul 2016 14:30:44 +0100 Subject: [PATCH 20/32] add testing --- tests/fsharp/core/longnames/test.fsx | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/fsharp/core/longnames/test.fsx b/tests/fsharp/core/longnames/test.fsx index 184d827a505..2035466fc8b 100644 --- a/tests/fsharp/core/longnames/test.fsx +++ b/tests/fsharp/core/longnames/test.fsx @@ -533,6 +533,19 @@ module Ok9 = test "lkneecec09iew9" (typeof.FullName.Contains("AModule") ) + +module Ok9b = + + type A<'T>() = + member x.P = 1 + + module A = + let create() = 1 + type Dummy = A | B + + + test "lkneecec09iew9" (typeof.FullName.Contains("AModule") ) + module rec Ok10 = type A() = From c2aae8227961e2fc51b2654379225705979ee440 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Tue, 5 Jul 2016 13:24:43 -0700 Subject: [PATCH 21/32] Removing duplicate dependencies --- .../Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr | 9 --------- .../Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr | 9 --------- .../Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr | 9 --------- 3 files changed, 27 deletions(-) diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr index dfed31203a6..a3977cc67f0 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr @@ -4,15 +4,6 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) -vs.dependencies - vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - - vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required - folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr index 9664fd655ec..745b0f32f5e 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr @@ -4,15 +4,6 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) -vs.dependencies - vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - - vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required - folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\ConsoleProject" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\ConsoleProject\App.config" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\ConsoleProject\AssemblyInfo.fs" diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr index 0d3f2aef8dc..e87f881c0e7 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr @@ -4,15 +4,6 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) -vs.dependencies - vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - - vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required - folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)\LibraryProject" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\ProjectTemplates\LibraryProject\AssemblyInfo.fs" file source="$(BinariesFolder)\net40\bin\ProjectTemplates\LibraryProject\Library.fsproj" From f08fb925a47cb30623720ea9577ab2a9aa5459db Mon Sep 17 00:00:00 2001 From: Don Syme Date: Wed, 6 Jul 2016 11:43:08 +0100 Subject: [PATCH 22/32] Update TypeChecker.fs --- src/fsharp/TypeChecker.fs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/fsharp/TypeChecker.fs b/src/fsharp/TypeChecker.fs index eccec0ac0c7..cabce769be8 100755 --- a/src/fsharp/TypeChecker.fs +++ b/src/fsharp/TypeChecker.fs @@ -14163,7 +14163,6 @@ module EstablishTypeDefinitionCores = // Augmentations of type definitions are allowed within the same file as long as no new type representation or abbreviation is given CheckForDuplicateConcreteType env id.idText id.idRange - //CheckForDuplicateModule env id.idText id.idRange let vis,cpath = ComputeAccessAndCompPath env None id.idRange synVis parent // Establish the visibility of the representation, e.g. From c6e03f43679b660ae52fbcf0b35a2b3f06d8e3b5 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Wed, 6 Jul 2016 11:45:17 +0100 Subject: [PATCH 23/32] Update TypeChecker.fs --- src/fsharp/TypeChecker.fs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/fsharp/TypeChecker.fs b/src/fsharp/TypeChecker.fs index cabce769be8..ee9b9daa651 100755 --- a/src/fsharp/TypeChecker.fs +++ b/src/fsharp/TypeChecker.fs @@ -14138,6 +14138,7 @@ module EstablishTypeDefinitionCores = let vis,_ = ComputeAccessAndCompPath envInitial None id.idRange vis parent let id = ident (modName, id.idRange) + CheckForDuplicateModule env id.idText id.idRange CheckForDuplicateConcreteType envInitial id.idText im CheckNamespaceModuleOrTypeName cenv.g id From 15aac085d5c90ff99b68b95b3c9f3f6caa3ba5db Mon Sep 17 00:00:00 2001 From: Don Syme Date: Wed, 6 Jul 2016 11:45:55 +0100 Subject: [PATCH 24/32] Update TypeChecker.fs --- src/fsharp/TypeChecker.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsharp/TypeChecker.fs b/src/fsharp/TypeChecker.fs index ee9b9daa651..3cafdbf04d8 100755 --- a/src/fsharp/TypeChecker.fs +++ b/src/fsharp/TypeChecker.fs @@ -14137,8 +14137,8 @@ module EstablishTypeDefinitionCores = let vis,_ = ComputeAccessAndCompPath envInitial None id.idRange vis parent - let id = ident (modName, id.idRange) CheckForDuplicateModule env id.idText id.idRange + let id = ident (modName, id.idRange) CheckForDuplicateConcreteType envInitial id.idText im CheckNamespaceModuleOrTypeName cenv.g id From e3cf4ec2016d6a236b3e70cc71d38d822603b0b6 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Wed, 6 Jul 2016 11:46:49 +0100 Subject: [PATCH 25/32] Update TypeChecker.fs --- src/fsharp/TypeChecker.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsharp/TypeChecker.fs b/src/fsharp/TypeChecker.fs index 3cafdbf04d8..c77de8b545f 100755 --- a/src/fsharp/TypeChecker.fs +++ b/src/fsharp/TypeChecker.fs @@ -14137,7 +14137,7 @@ module EstablishTypeDefinitionCores = let vis,_ = ComputeAccessAndCompPath envInitial None id.idRange vis parent - CheckForDuplicateModule env id.idText id.idRange + CheckForDuplicateModule envInitial id.idText id.idRange let id = ident (modName, id.idRange) CheckForDuplicateConcreteType envInitial id.idText im CheckNamespaceModuleOrTypeName cenv.g id From 1ec7d74814b1b0a64dee9dd93a1af2aaf9dfcf5b Mon Sep 17 00:00:00 2001 From: Don Syme Date: Thu, 7 Jul 2016 13:20:24 +0100 Subject: [PATCH 26/32] improve error message related to 1293 --- src/fsharp/FSComp.txt | 2 +- tests/fsharp/typecheck/sigs/neg16.bsl | 2 +- .../TypeExtensions/basic/E_ExtensionInNamespace01.fs | 2 +- .../TypeExtensions/optional/E_NotInModule.fs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/fsharp/FSComp.txt b/src/fsharp/FSComp.txt index 6d8fa92b46d..bd59274f936 100644 --- a/src/fsharp/FSComp.txt +++ b/src/fsharp/FSComp.txt @@ -464,7 +464,7 @@ tcUnexpectedConstByteArray,"Unexpected Const_bytearray" 641,tcReturnValuesCannotHaveNames,"Return values cannot have names" tcMemberKindPropertyGetSetNotExpected,"MemberKind.PropertyGetSet only expected in parse trees" 201,tcNamespaceCannotContainValues,"Namespaces cannot contain values. Consider using a module to hold your value declarations." -644,tcNamespaceCannotContainExtensionMembers,"Namespaces cannot contain extension members except in the same file and namespace where the type is defined. Consider using a module to hold declarations of extension members." +644,tcNamespaceCannotContainExtensionMembers,"Namespaces cannot contain extension members except in the same file and namespace declaration group where the type is defined. Consider using a module to hold declarations of extension members." 645,tcMultipleVisibilityAttributes,"Multiple visibility attributes have been specified for this identifier" 646,tcMultipleVisibilityAttributesWithLet,"Multiple visibility attributes have been specified for this identifier. 'let' bindings in classes are always private, as are any 'let' bindings inside expressions." tcInvalidMethodNameForRelationalOperator,"The name '(%s)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name '%s' instead." diff --git a/tests/fsharp/typecheck/sigs/neg16.bsl b/tests/fsharp/typecheck/sigs/neg16.bsl index 77fd1b5ea23..f73c0cb6c15 100644 --- a/tests/fsharp/typecheck/sigs/neg16.bsl +++ b/tests/fsharp/typecheck/sigs/neg16.bsl @@ -1,5 +1,5 @@ -neg16.fs(7,13,7,16): typecheck error FS0644: Namespaces cannot contain extension members except in the same file and namespace where the type is defined. Consider using a module to hold declarations of extension members. +neg16.fs(7,13,7,16): typecheck error FS0644: Namespaces cannot contain extension members except in the same file and namespace declaration group where the type is defined. Consider using a module to hold declarations of extension members. neg16.fs(23,10,23,11): typecheck error FS0935: Types with the 'AllowNullLiteral' attribute may only inherit from or implement types which also allow the use of the null literal diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/E_ExtensionInNamespace01.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/E_ExtensionInNamespace01.fs index 9ac297509b4..642ce3025fa 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/E_ExtensionInNamespace01.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/E_ExtensionInNamespace01.fs @@ -2,7 +2,7 @@ // Verify error associated with placing type extensions // inside namespaces. (They must only be placed in modules.) -//Namespaces cannot contain extension members except in the same file and namespace where the type is defined\. Consider using a module to hold declarations of extension members\.$ +//Namespaces cannot contain extension members except in the same file and namespace declaration group where the type is defined\. Consider using a module to hold declarations of extension members\.$ namespace System diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/optional/E_NotInModule.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/optional/E_NotInModule.fs index bbaef6165b4..b8301f534b2 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/optional/E_NotInModule.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/optional/E_NotInModule.fs @@ -1,6 +1,6 @@ // #Regression #Conformance #ObjectOrientedTypes #TypeExtensions // Verify that optional extension must be inside a module -//Namespaces cannot contain extension members except in the same file and namespace where the type is defined\. Consider using a module to hold declarations of extension members\.$ +//Namespaces cannot contain extension members except in the same file and namespace declaration group where the type is defined\. Consider using a module to hold declarations of extension members\.$ namespace NS type Lib with From de6d264f9485acaa6f3d6eb33887f384d502c161 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Thu, 7 Jul 2016 13:52:26 +0100 Subject: [PATCH 27/32] fix help text --- src/fsharp/CompileOptions.fs | 32 +++---- src/fsharp/FSComp.txt | 2 +- .../fsc/help/help20.437.1033.bsl | 94 ------------------- .../fsc/help/help40.437.1033.bsl | 7 +- .../fsi/exename/help40.437.1033.bsl | 7 +- .../fsi/help/help-nologo.437.1033.bsl | 7 +- .../fsi/help/help.437.1033.bsl | 7 +- .../fsi/help/help40-nologo.437.1033.bsl | 7 +- .../fsi/help/help40.437.1033.bsl | 7 +- 9 files changed, 41 insertions(+), 129 deletions(-) delete mode 100644 tests/fsharpqa/Source/CompilerOptions/fsc/help/help20.437.1033.bsl diff --git a/src/fsharp/CompileOptions.fs b/src/fsharp/CompileOptions.fs index a0558eab336..7c3cbaa431d 100644 --- a/src/fsharp/CompileOptions.fs +++ b/src/fsharp/CompileOptions.fs @@ -656,13 +656,13 @@ let resourcesFlagsFsc (tcConfigB : TcConfigBuilder) = // OptionBlock: Code generation //----------------------------- -let codeGenerationFlags (tcConfigB : TcConfigBuilder) = +let codeGenerationFlags isFsi (tcConfigB : TcConfigBuilder) = [ CompilerOption("debug", tagNone, OptionSwitch (SetDebugSwitch tcConfigB None), None, Some (FSComp.SR.optsDebugPM())); CompilerOption("debug", tagFullPDBOnlyPortable, OptionString (fun s -> SetDebugSwitch tcConfigB (Some(s)) OptionSwitch.On), None, - Some (FSComp.SR.optsDebug())); + Some (FSComp.SR.optsDebug(if isFsi then "pdbonly" else "full"))); CompilerOption("optimize", tagNone, OptionSwitch (SetOptimizeSwitch tcConfigB) , None, Some (FSComp.SR.optsOptimize())); @@ -1057,14 +1057,14 @@ let testingAndQAFlags _tcConfigB = /// The core/common options used by fsc.exe. [not currently extended by fsc.fs]. let GetCoreFscCompilerOptions (tcConfigB: TcConfigBuilder) = - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles(), outputFileFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerInputFiles(), inputFileFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerResources(), resourcesFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerCodeGen(), codeGenerationFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns(), errorsAndWarningsFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerLanguage(), languageFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerMisc(), miscFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerAdvanced(), advancedFlagsFsc tcConfigB); + [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles(), outputFileFlagsFsc tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerInputFiles(), inputFileFlagsFsc tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerResources(), resourcesFlagsFsc tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerCodeGen(), codeGenerationFlags false tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns(), errorsAndWarningsFlags tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerLanguage(), languageFlags tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerMisc(), miscFlagsFsc tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerAdvanced(), advancedFlagsFsc tcConfigB); PrivateOptions(List.concat [ internalFlags tcConfigB; abbreviatedFlagsFsc tcConfigB; deprecatedFlagsFsc tcConfigB; @@ -1079,12 +1079,12 @@ let GetCoreServiceCompilerOptions (tcConfigB:TcConfigBuilder) = /// The core/common options used by fsi.exe. [note, some additional options are added in fsi.fs]. let GetCoreFsiCompilerOptions (tcConfigB: TcConfigBuilder) = - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles() , outputFileFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerInputFiles() , inputFileFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerResources() , resourcesFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerCodeGen() , codeGenerationFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns() , errorsAndWarningsFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerLanguage() , languageFlags tcConfigB); + [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles() , outputFileFlagsFsi tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerInputFiles() , inputFileFlagsFsi tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerResources() , resourcesFlagsFsi tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerCodeGen() , codeGenerationFlags true tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns() , errorsAndWarningsFlags tcConfigB); + PublicOptions(FSComp.SR.optsHelpBannerLanguage() , languageFlags tcConfigB); // Note: no HTML block for fsi.exe PublicOptions(FSComp.SR.optsHelpBannerMisc() , miscFlagsFsi tcConfigB); PublicOptions(FSComp.SR.optsHelpBannerAdvanced() , advancedFlagsFsi tcConfigB); diff --git a/src/fsharp/FSComp.txt b/src/fsharp/FSComp.txt index 6d8fa92b46d..56493dad0dd 100644 --- a/src/fsharp/FSComp.txt +++ b/src/fsharp/FSComp.txt @@ -835,7 +835,7 @@ optsNowin32manifest,"Do not include the default Win32 manifest" optsResource,"Embed the specified managed resource" optsLinkresource,"Link the specified resource to this assembly where the resinfo format is [,[,public|private]]" optsDebugPM,"Emit debug information (Short form: -g)" -optsDebug,"Specify debugging type: full, portable, pdbonly. ('full' is the default and enables attaching a debugger to a running program. 'portable' is a cross-platform format)." +optsDebug,"Specify debugging type: full, portable, pdbonly. ('%s' is the default if no debuggging type specified and enables attaching a debugger to a running program. 'portable' is a cross-platform format)." optsOptimize,"Enable optimizations (Short form: -O)" optsTailcalls,"Enable or disable tailcalls" optsCrossoptimize,"Enable or disable cross-module optimizations" diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/help/help20.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsc/help/help20.437.1033.bsl deleted file mode 100644 index ab95ad0aca7..00000000000 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/help/help20.437.1033.bsl +++ /dev/null @@ -1,94 +0,0 @@ -Microsoft (R) F# 2.0 Compiler build 2.0.50727.0 -Copyright (c) Microsoft Corporation. All Rights Reserved. - - - - OUTPUT FILES - ---out: Name of the output file (Short form: -o) ---target:exe Build a console executable ---target:winexe Build a Windows executable ---target:library Build a library (Short form: -a) ---target:module Build a module that can be added to another - assembly ---delaysign[+|-] Delay-sign the assembly using only the public - portion of the strong name key ---doc: Write the xmldoc of the assembly to the given - file ---keyfile: Specify a strong name key file ---keycontainer: Specify a strong name key container ---platform: Limit which platforms this code can run on: x86, - Itanium, x64 or anycpu. The default is anycpu. ---nooptimizationdata Only include optimization information essential - for implementing inlined constructs. Inhibits - cross-module inlining but improves binary - compatibility. ---nointerfacedata Don't add a resource to the generated assembly - containing F#-specific metadata ---sig: Print the inferred interface of the assembly to - a file - - - - INPUT FILES - ---reference: Reference an assembly (Short form: -r) - - - - RESOURCES - ---win32res: Specify a Win32 resource file (.res) ---win32manifest: Specify a Win32 manifest file ---nowin32manifest Do not include the default Win32 manifest ---resource: Embed the specified managed resource ---linkresource: Link the specified resource to this assembly - where the resinfo format is [,[,public|private]] - - - - CODE GENERATION - ---debug[+|-] Emit debug information (Short form: -g) ---debug:{full|pdbonly} Specify debugging type: full, pdbonly. ('full' - is the default and enables attaching a debugger - to a running program). ---optimize[+|-] Enable optimizations (Short form: -O) ---tailcalls[+|-] Enable or disable tailcalls ---crossoptimize[+|-] Enable or disable cross-module optimizations - - - - ERRORS AND WARNINGS - ---warnaserror[+|-] Report all warnings as errors ---warnaserror[+|-]: Report specific warnings as errors ---warn: Set a warning level (0-4) ---nowarn: Disable specific warning messages ---consolecolors[+|-] Output warning and error messages in color - - - - LANGUAGE - ---checked[+|-] Generate overflow checks ---define: Define conditional compilation symbols (Short - form: -d) ---mlcompatibility Ignore ML compatibility warnings - - - - MISCELLANEOUS - ---nologo Suppress compiler copyright message ---help Display this usage message (Short form: -?) - - - - ADVANCED - ---codepage: Specify the codepage used to read source files ---utf8output Output messages in UTF-8 encoding ---fullpaths Output messages with fully qualified paths ---lib: Specify a directory for the include path which - is used to resolve source files and assemblies - (Short form: -I) ---baseaddress:
Base address for the library to be built ---noframework Do not reference the default CLI assemblies by - default ---standalone Statically link the F# library and all - referenced DLLs that depend on it into the - assembly being generated ---staticlink: Statically link the given assembly and all - referenced DLLs that depend on this assembly. - Use an assembly name e.g. mylib, not a DLL name. ---pdb: Name the output debug file ---simpleresolution Resolve assembly references using - directory-based mono rules rather than MSBuild - resolution (Default=false except when running - fsc.exe under mono) diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/help/help40.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsc/help/help40.437.1033.bsl index b9cdeedccad..227de6e5682 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/help/help40.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsc/help/help40.437.1033.bsl @@ -50,9 +50,10 @@ Copyright (c) Microsoft Corporation. All Rights Reserved. - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('full' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/exename/help40.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/exename/help40.437.1033.bsl index a18d704a47a..3aaba1fffc8 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsi/exename/help40.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsi/exename/help40.437.1033.bsl @@ -13,9 +13,10 @@ Usage: fsharpi [script.fsx []] - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('pdbonly' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help-nologo.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help-nologo.437.1033.bsl index fef422e77b2..272f7d9eb65 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help-nologo.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help-nologo.437.1033.bsl @@ -13,9 +13,10 @@ Usage: fsi.exe [script.fsx []] - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('pdbonly' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help.437.1033.bsl index 19560e30d6e..5afc1c8249d 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help.437.1033.bsl @@ -15,9 +15,10 @@ Usage: fsi.exe [script.fsx []] - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('pdbonly' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40-nologo.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40-nologo.437.1033.bsl index 1f3c40955f3..3ffd8e94bdf 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40-nologo.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40-nologo.437.1033.bsl @@ -13,9 +13,10 @@ Usage: Fsi.exe [script.fsx []] - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('pdbonly' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40.437.1033.bsl index 7863c44e924..722596ffd71 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40.437.1033.bsl +++ b/tests/fsharpqa/Source/CompilerOptions/fsi/help/help40.437.1033.bsl @@ -15,9 +15,10 @@ Usage: Fsi.exe [script.fsx []] - CODE GENERATION - --debug[+|-] Emit debug information (Short form: -g) --debug:{full|pdbonly|portable} Specify debugging type: full, portable, pdbonly. - ('full' is the default and enables attaching a - debugger to a running program. 'portable' is a - cross-platform format). + ('pdbonly' is the default if no debuggging type + specified and enables attaching a debugger to a + running program. 'portable' is a cross-platform + format). --optimize[+|-] Enable optimizations (Short form: -O) --tailcalls[+|-] Enable or disable tailcalls --crossoptimize[+|-] Enable or disable cross-module optimizations From 663b097d770865aed778f9b733d0e6a1f804497a Mon Sep 17 00:00:00 2001 From: Don Syme Date: Fri, 8 Jul 2016 13:49:50 +0100 Subject: [PATCH 28/32] Fix for 1332 --- src/fsharp/AccessibilityLogic.fs | 9 ++++++++- src/fsharp/infos.fs | 2 +- .../fsharp/core/internalsvisible/librarycs.cs | 14 +++++++++++++- tests/fsharp/core/internalsvisible/main.fs | 18 ++++++++++++++++++ 4 files changed, 40 insertions(+), 3 deletions(-) diff --git a/src/fsharp/AccessibilityLogic.fs b/src/fsharp/AccessibilityLogic.fs index 38354e674e2..525995cca1f 100644 --- a/src/fsharp/AccessibilityLogic.fs +++ b/src/fsharp/AccessibilityLogic.fs @@ -70,11 +70,14 @@ let private IsILMemberAccessible g amap m (tcrefOfViewedItem : TyconRef) ad acce match ad with | AccessibleFromEverywhere -> access = ILMemberAccess.Public + | AccessibleFromSomeFSharpCode -> (access = ILMemberAccess.Public || access = ILMemberAccess.Family || access = ILMemberAccess.FamilyOrAssembly) + | AccessibleFrom (cpaths,tcrefViewedFromOption) -> + let accessibleByFamily = ((access = ILMemberAccess.Family || access = ILMemberAccess.FamilyOrAssembly) && @@ -82,9 +85,13 @@ let private IsILMemberAccessible g amap m (tcrefOfViewedItem : TyconRef) ad acce | None -> false | Some tcrefViewedFrom -> ExistsHeadTypeInEntireHierarchy g amap m (generalizedTyconRef tcrefViewedFrom) tcrefOfViewedItem) + let accessibleByInternalsVisibleTo = - (access = ILMemberAccess.Assembly && canAccessFromOneOf cpaths tcrefOfViewedItem.CompilationPath) + (access = ILMemberAccess.Assembly || access = ILMemberAccess.FamilyOrAssembly) && + canAccessFromOneOf cpaths tcrefOfViewedItem.CompilationPath + (access = ILMemberAccess.Public) || accessibleByFamily || accessibleByInternalsVisibleTo + | AccessibleFromSomewhere -> true diff --git a/src/fsharp/infos.fs b/src/fsharp/infos.fs index 3a42fd6c1a8..67dbd720573 100755 --- a/src/fsharp/infos.fs +++ b/src/fsharp/infos.fs @@ -732,7 +732,7 @@ type ILMethInfo = let md = x.RawMetadata not md.IsConstructor && not md.IsClassInitializer && - (md.Access = ILMemberAccess.Family) + (md.Access = ILMemberAccess.Family || md.Access = ILMemberAccess.FamilyOrAssembly) /// Indicates if the IL method is marked virtual. member x.IsVirtual = x.RawMetadata.IsVirtual diff --git a/tests/fsharp/core/internalsvisible/librarycs.cs b/tests/fsharp/core/internalsvisible/librarycs.cs index 8b2c3eaaac4..f985db4f4ca 100644 --- a/tests/fsharp/core/internalsvisible/librarycs.cs +++ b/tests/fsharp/core/internalsvisible/librarycs.cs @@ -15,5 +15,17 @@ internal class APrivateClass { private static int PrivateProperty { get { return 2; } } internal static int InternalProperty { get { return 2; } } - } + } + public class Class1 + { + public Class1() { } + protected static int ProtectedStatic; + internal static int InternalStatic; + protected internal static int ProtectedInternalStatic; + public static int PublicStatic; + protected int Protected; + internal int Internal; + protected internal int ProtectedInternal; + public int Public; + } } diff --git a/tests/fsharp/core/internalsvisible/main.fs b/tests/fsharp/core/internalsvisible/main.fs index fbe6256ad27..7c8119827b7 100644 --- a/tests/fsharp/core/internalsvisible/main.fs +++ b/tests/fsharp/core/internalsvisible/main.fs @@ -18,6 +18,24 @@ printf "APrivateClass.InternalProperty = %2d\n" LibraryCS.APrivateClass.Inter //printf "privateF 2 = %d\n" (Library.M.privateF 2) // inaccessable +module internal Repro1332 = + let c = LibraryCS.Class1() + //c.Protected |> ignore + c.Internal |> ignore + c.ProtectedInternal |> ignore + LibraryCS.Class1.InternalStatic |> ignore + LibraryCS.Class1.ProtectedInternalStatic |> ignore + +type internal Class2() = + inherit LibraryCS.Class1() + member c.M() = + c.Internal |> ignore + c.ProtectedInternal |> ignore + c.Protected |> ignore + LibraryCS.Class1.InternalStatic |> ignore + LibraryCS.Class1.ProtectedInternalStatic |> ignore + LibraryCS.Class1.ProtectedStatic |> ignore + (* Check that internalVisibleTo items can be used in internal items *) module internal Repro3737 = From a7ba7c2ef955dd6868a3d84b1e14144413a2804d Mon Sep 17 00:00:00 2001 From: Don Syme Date: Sat, 9 Jul 2016 11:21:07 +0100 Subject: [PATCH 29/32] fix integration --- src/fsharp/CompileOptions.fs | 51 ++++++++++-------------------------- 1 file changed, 14 insertions(+), 37 deletions(-) diff --git a/src/fsharp/CompileOptions.fs b/src/fsharp/CompileOptions.fs index c52748ba63e..45e95ef3408 100644 --- a/src/fsharp/CompileOptions.fs +++ b/src/fsharp/CompileOptions.fs @@ -1057,31 +1057,17 @@ let testingAndQAFlags _tcConfigB = /// The core/common options used by fsc.exe. [not currently extended by fsc.fs]. let GetCoreFscCompilerOptions (tcConfigB: TcConfigBuilder) = -<<<<<<< HEAD - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles(), outputFileFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerInputFiles(), inputFileFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerResources(), resourcesFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerCodeGen(), codeGenerationFlags false tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns(), errorsAndWarningsFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerLanguage(), languageFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerMisc(), miscFlagsFsc tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerAdvanced(), advancedFlagsFsc tcConfigB); - PrivateOptions(List.concat [ internalFlags tcConfigB; - abbreviatedFlagsFsc tcConfigB; - deprecatedFlagsFsc tcConfigB; -======= - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles(), outputFileFlagsFsc tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerInputFiles(), inputFileFlagsFsc tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerResources(), resourcesFlagsFsc tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerCodeGen(), codeGenerationFlags tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns(), errorsAndWarningsFlags tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerLanguage(), languageFlags tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerMisc(), miscFlagsFsc tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerAdvanced(), advancedFlagsFsc tcConfigB) + [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles(), outputFileFlagsFsc tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerInputFiles(), inputFileFlagsFsc tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerResources(), resourcesFlagsFsc tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerCodeGen(), codeGenerationFlags false tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns(), errorsAndWarningsFlags tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerLanguage(), languageFlags tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerMisc(), miscFlagsFsc tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerAdvanced(), advancedFlagsFsc tcConfigB) PrivateOptions(List.concat [ internalFlags tcConfigB abbreviatedFlagsFsc tcConfigB deprecatedFlagsFsc tcConfigB ->>>>>>> 47dd515cbd581145629cf53f1f97317093a05e8e testingAndQAFlags tcConfigB]) ] @@ -1093,21 +1079,12 @@ let GetCoreServiceCompilerOptions (tcConfigB:TcConfigBuilder) = /// The core/common options used by fsi.exe. [note, some additional options are added in fsi.fs]. let GetCoreFsiCompilerOptions (tcConfigB: TcConfigBuilder) = -<<<<<<< HEAD - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles() , outputFileFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerInputFiles() , inputFileFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerResources() , resourcesFlagsFsi tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerCodeGen() , codeGenerationFlags true tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns() , errorsAndWarningsFlags tcConfigB); - PublicOptions(FSComp.SR.optsHelpBannerLanguage() , languageFlags tcConfigB); -======= - [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles() , outputFileFlagsFsi tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerInputFiles() , inputFileFlagsFsi tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerResources() , resourcesFlagsFsi tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerCodeGen() , codeGenerationFlags tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns() , errorsAndWarningsFlags tcConfigB) - PublicOptions(FSComp.SR.optsHelpBannerLanguage() , languageFlags tcConfigB) ->>>>>>> 47dd515cbd581145629cf53f1f97317093a05e8e + [ PublicOptions(FSComp.SR.optsHelpBannerOutputFiles() , outputFileFlagsFsi tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerInputFiles() , inputFileFlagsFsi tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerResources() , resourcesFlagsFsi tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerCodeGen() , codeGenerationFlags true tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerErrsAndWarns() , errorsAndWarningsFlags tcConfigB) + PublicOptions(FSComp.SR.optsHelpBannerLanguage() , languageFlags tcConfigB) // Note: no HTML block for fsi.exe PublicOptions(FSComp.SR.optsHelpBannerMisc() , miscFlagsFsi tcConfigB) PublicOptions(FSComp.SR.optsHelpBannerAdvanced() , advancedFlagsFsi tcConfigB) From cc5b395ba36414fd191db2d6c1bf1bd3cc9c5115 Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Mon, 11 Jul 2016 14:05:37 -0700 Subject: [PATCH 30/32] Remove SQM usage SQM is being deprecated as our telemetry mechanism. It is being removed entirely at this point from the Visual Studio related code bases to prevent accidental consumption. --- .../Project/IVsSQM.cs | 312 ------------------ .../Project/ProjectNode.cs | 9 - .../Project/ProjectSystem.Base.csproj | 3 +- 3 files changed, 1 insertion(+), 323 deletions(-) delete mode 100644 vsintegration/src/FSharp.ProjectSystem.Base/Project/IVsSQM.cs diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/IVsSQM.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/IVsSQM.cs deleted file mode 100644 index 04d8e7fce4e..00000000000 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/IVsSQM.cs +++ /dev/null @@ -1,312 +0,0 @@ -// Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -#pragma warning disable 3001 - -namespace Microsoft.VisualStudio.Shell.Interop -{ - using System; - using System.Runtime.InteropServices; - - [ComImport()] - [ComVisible(false)] - [Guid("C1F63D0C-4CAE-4907-BE74-EEB75D386ECB")] - [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] - public interface IVsSqm - { - void GetSessionStartTime( - [Out] out System.Runtime.InteropServices.ComTypes.FILETIME time - ); - void GetFlags( - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 flags - ); - void SetFlags( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 flags - ); - void ClearFlags( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 flags - ); - void AddItemToStream( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void SetDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - // OBSOLETE IN SQMAPI.DLL. DO NOT CALL. - void GetDatapoint ( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 value - ); - void EnterTaggedAssert( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dwTag, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dwPossibleBuild, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dwActualBuild - ); - void RecordCmdData( - [In] ref Guid pguidCmdGroup, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void GetHashOfGuid ( - [In] ref Guid hashGuid, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 resultantHash - ); - void GetHashOfString ( - [In, MarshalAs(UnmanagedType.BStr)] string hashString, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 resultantHash - ); - void IncrementDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - - void SetDatapointBits( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - - void SetDatapointIfMax( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void SetDatapointIfMin( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void AddToDatapointAverage( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void StartDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void RecordDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AccumulateDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AddTimerToDatapointAverage( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AddArrayToStream( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.U4, SizeParamIndex = 2)] System.UInt32[] data, - [In, MarshalAs(UnmanagedType.I4)] int count - ); - } - - [ComImport()] - [ComVisible(false)] - [Guid("BE5F55EB-F02D-4217-BCB6-A290800AF6C4")] - [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] - public interface IVsSqm2 - { - void SetBoolDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 fValue - ); - - void SetStringDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.BStr)] string strValue - ); - - void AddToStreamDWord( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 cTuple, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - - void AddToStreamString( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 cTuple, - [In, MarshalAs(UnmanagedType.BStr)] string strValue - ); - - void GetObfuscatedString( - [In, MarshalAs(UnmanagedType.BStr)] string input, - [Out, MarshalAs(UnmanagedType.BStr)] out string output - ); - } - - [ComImport()] - [ComVisible(false)] - [Guid("B17A7D4A-C1A3-45A2-B916-826C3ABA067E")] - [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] - public interface IVsSqmMulti - { - [return: MarshalAs(UnmanagedType.VariantBool)] - bool GetOptInStatus(); - void UnloadSessions( - ); - void EndAllSessionsAndAbortUploads( - ); - void BeginSession( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionType, - [In, MarshalAs(UnmanagedType.VariantBool)] System.Boolean alwaysSend, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 sessionHandle - ); - void EndSession( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle - ); - void RegisterSessionHandle( - [In] ref Guid sessionIdentifier, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dwSessionHandle - ) ; - [return: MarshalAs(UnmanagedType.U4)] - int GetSessionHandleByIdentifier( - [In] ref Guid sessionIdentifier - ); - void GetSessionStartTime( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [Out] out System.Runtime.InteropServices.ComTypes.FILETIME time - ); - Guid GetGlobalSessionGuid(); - [return: MarshalAs(UnmanagedType.U4)] - int GetGlobalSessionHandle(); - void SetGlobalSessionGuid( - [In] ref Guid pguidSessionGuid - ); - void GetFlags( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 flags - ); - void SetFlags( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 flags - ); - void ClearFlags( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 flags - ); - void SetDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void SetBoolDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 fValue - ); - void SetStringDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.BStr)] string strValue - ); - void SetDatapointBits( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void IncrementDatapoint( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - - void SetDatapointIfMax( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void SetDatapointIfMin( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void AddToDatapointAverage( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void StartDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void RecordDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AccumulateDatapointTimer( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AddTimerToDatapointAverage( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID - ); - void AddItemToStream( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void AddArrayToStream( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.U4, SizeParamIndex = 2)] System.UInt32[] data, - [In, MarshalAs(UnmanagedType.I4)] int count - ); - void AddToStreamDWord( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 cTuple, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void AddToStreamString( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 cTuple, - [In, MarshalAs(UnmanagedType.BStr)] string strValue - ); - void RecordCmdData( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 sessionHandle, - [In] ref Guid pguidCmdGroup, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 dataPointID, - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 value - ); - void GetHashOfGuid ( - [In] ref Guid hashGuid, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 resultantHash - ); - void GetHashOfString ( - [In, MarshalAs(UnmanagedType.BStr)] string hashString, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 resultantHash - ); - void SetProperty( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 propid, - [In] ref Guid varKey, - [In] object varValue - ); - void Get64BitHashOfString ( - [In, MarshalAs(UnmanagedType.BStr)] string hashString, - [Out, MarshalAs(UnmanagedType.U8)] out System.UInt64 resultantHash - ); - } - - [ComImport()] - [ComVisible(false)] - [Guid("16be4288-950b-4265-b0dc-280b89ca9979")] - [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] - public interface IVsSqmOptinManager - { - void GetOptinStatus( - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 optinStatus, - [Out, MarshalAs(UnmanagedType.U4)] out System.UInt32 preferences - ); - - void SetOptinStatus( - [In, MarshalAs(UnmanagedType.U4)] System.UInt32 optinStatus - ); - } - - [ComImport()] - [ComVisible(false)] - [Guid("2508FDF0-EF80-4366-878E-C9F024B8D981")] - public interface SVsLog - { - } - -} diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs index a5b803a2738..9504d05b851 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectNode.cs @@ -3412,15 +3412,6 @@ internal virtual BuildSubmission DoMSBuildSubmission(BuildKind buildKind, string // F#-specific properties projectInstance.SetProperty(GlobalProperty.VisualStudioStyleErrors.ToString(), "true"); - // Get SQM GlobalSessionGuid from Visual Studio to pass FSC.exe, - // so multiple SQM sessions can be correlated later when analying SQM data. - IVsSqmMulti sqm = this.GetService(typeof(Microsoft.VisualStudio.Shell.Interop.SVsLog)) as IVsSqmMulti; - if (sqm != null) - { - var sessionGuid = sqm.GetGlobalSessionGuid(); - projectInstance.SetProperty(GlobalProperty.SqmSessionGuid.ToString(), sessionGuid.ToString()); - } - if (extraProperties != null) { foreach (var prop in extraProperties) diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj index db75ba7bb00..9580be1064c 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj +++ b/vsintegration/src/FSharp.ProjectSystem.Base/Project/ProjectSystem.Base.csproj @@ -150,7 +150,6 @@ - @@ -229,4 +228,4 @@ - \ No newline at end of file + From aab0002afe32ca108f9379a4326ebe8d15435486 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Mon, 11 Jul 2016 15:43:28 -0700 Subject: [PATCH 31/32] Reverse dependencies order to work around vsix v2/v3 mismatch --- setup/Swix/Microsoft.FSharp.Dependencies/Files.swr | 11 ++++++++++- .../Microsoft.FSharp.Dependencies.swixproj | 7 ++++++- setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr | 9 --------- setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr | 9 --------- setup/Swix/Microsoft.FSharp.vsmanproj | 6 +++--- setup/fsharp-setup-build.proj | 6 +++++- 6 files changed, 24 insertions(+), 24 deletions(-) diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr index f0cb85b20a7..d7bf4f4775e 100644 --- a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr @@ -1,9 +1,18 @@ use vs -package name=Microsoft.FSharp.Dependencies +package name=Microsoft.FSharp.Dependencies.$(VSSku) version=4.1 vs.package.language=neutral +vs.dependencies + vs.dependency id=Microsoft.FSharp.VSIX.$(VSSku) + version=4.1 + type=Required + + vs.dependency id=Microsoft.FSharp.SDK + version=4.1 + type=Required + folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp" file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets" file "Microsoft.Portable.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.Portable.FSharp.Shim.targets" diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj index 31fb47a151c..071b86deb08 100644 --- a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj +++ b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj @@ -10,7 +10,7 @@ $(FSharpSourcesRoot)\..\$(Configuration) $(FSharpSourcesRoot)\..\packages $(BinariesFolder)\insertion - Microsoft.FSharp.Dependencies + Microsoft.FSharp.Dependencies.$(VSSku) $(MSBuildThisFileDirectory)obj @@ -19,6 +19,7 @@ $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder) $(PackagePreprocessorDefinitions);PackagesFolder=$(PackagesFolder) + $(PackagePreprocessorDefinitions);VSSku=$(VSSku) @@ -28,4 +29,8 @@ + + + + diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr index 8dcb89d8736..952aab4ebc4 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr @@ -5,14 +5,5 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) vs.package.type=vsix vs.package.language=$(LocaleRegion) -vs.dependencies - vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - - vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required - vs.payloads vs.payload source="$(BinariesFolder)\net40\bin\VisualFSharp$(VSSku).vsix" \ No newline at end of file diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr index 16847960228..fa907fa0edf 100644 --- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr +++ b/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr @@ -4,15 +4,6 @@ package name=Microsoft.FSharp.VSIX.$(VSSku) version=4.1 vs.package.language=$(LocaleRegion) -vs.dependencies - vs.dependency id=Microsoft.FSharp.Dependencies - version=4.1 - type=Required - - vs.dependency id=Microsoft.FSharp.SDK - version=4.1 - type=Required - folder "InstallDir:Common7\IDE\PublicAssemblies\$(LocaleRegion)" file source="$(BinariesFolder)\net40\bin\localize\$(LocaleCode)\FSharp.Core.resources.dll" vs.file.ngen=yes diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj index ba4a33c81a4..736ea5bdb51 100644 --- a/setup/Swix/Microsoft.FSharp.vsmanproj +++ b/setup/Swix/Microsoft.FSharp.vsmanproj @@ -10,15 +10,15 @@ true $(FSharpSourcesRoot)\..\$(Configuration)\insertion - + - + - + \ No newline at end of file diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj index 0eb7e6bbceb..87ca1c6d400 100644 --- a/setup/fsharp-setup-build.proj +++ b/setup/fsharp-setup-build.proj @@ -30,7 +30,7 @@ TaskParameter="Include"/> - + @@ -39,9 +39,13 @@ + + Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj + Full + Swix\Microsoft.FSharp.vsmanproj From 3b4119f7422663d6c0fb2600e34e9d68febc6f92 Mon Sep 17 00:00:00 2001 From: Omar Tawfik Date: Tue, 12 Jul 2016 13:49:50 -0700 Subject: [PATCH 32/32] Remove OPEN_BUILD build flag --- src/FSharpSource.targets | 1 - src/fsharp/CompileOps.fs | 2 +- .../Microsoft.FSharp.Control/AsyncModule.fs | 92 ------------------- .../FSharp.Core.Unittests/LibraryTestFx.fs | 7 +- src/fsharp/fsi/fsi.fs | 2 +- src/utils/CompilerLocationUtils.fs | 10 +- .../FSharp.ProjectSystem.FSharp/Project.fs | 2 - .../tests/unittests/Tests.BaseLine.fs | 57 ------------ .../unittests/Tests.LanguageService.Script.fs | 6 +- .../unittests/VisualFSharp.Unittests.fsproj | 1 - 10 files changed, 6 insertions(+), 174 deletions(-) delete mode 100644 vsintegration/tests/unittests/Tests.BaseLine.fs diff --git a/src/FSharpSource.targets b/src/FSharpSource.targets index 7070670ca36..617313d2fbb 100644 --- a/src/FSharpSource.targets +++ b/src/FSharpSource.targets @@ -119,7 +119,6 @@ - $(DefineConstants);OPEN_BUILD false diff --git a/src/fsharp/CompileOps.fs b/src/fsharp/CompileOps.fs index 5205429894e..0366f8ce930 100755 --- a/src/fsharp/CompileOps.fs +++ b/src/fsharp/CompileOps.fs @@ -2252,7 +2252,7 @@ type TcConfigBuilder = lcid = None #endif // See bug 6071 for product banner spec - productNameForBannerText = (FSComp.SR.buildProductName(FSharpEnvironment.DotNetBuildString)) + productNameForBannerText = (FSComp.SR.buildProductName(FSharpEnvironment.FSharpBannerVersion)) showBanner = true showTimes = false showLoadedAssemblies = false diff --git a/src/fsharp/FSharp.Core.Unittests/FSharp.Core/Microsoft.FSharp.Control/AsyncModule.fs b/src/fsharp/FSharp.Core.Unittests/FSharp.Core/Microsoft.FSharp.Control/AsyncModule.fs index cfa03d36597..3f5aff83e1f 100644 --- a/src/fsharp/FSharp.Core.Unittests/FSharp.Core/Microsoft.FSharp.Control/AsyncModule.fs +++ b/src/fsharp/FSharp.Core.Unittests/FSharp.Core/Microsoft.FSharp.Control/AsyncModule.fs @@ -584,96 +584,4 @@ type AsyncModule() = Assert.AreEqual(0, !okCount) Assert.AreEqual(0, !errCount) #endif -#endif - -#if FSHARP_CORE_PORTABLE -// nothing -#else -#if FSHARP_CORE_2_0 -// nothing -#else -#if FSHARP_CORE_NETCORE_PORTABLE || coreclr -//nothing -#else -// we are on the desktop - member this.RunExeAndExpectOutput(exeName, expected:string) = - let curDir = (new Uri(System.Reflection.Assembly.GetExecutingAssembly().CodeBase)).LocalPath |> System.IO.Path.GetDirectoryName - let psi = System.Diagnostics.ProcessStartInfo(exeName) - psi.WorkingDirectory <- curDir - psi.RedirectStandardOutput <- true - psi.UseShellExecute <- false - let p = System.Diagnostics.Process.Start(psi) - let out = p.StandardOutput.ReadToEnd() - p.WaitForExit() - let out = out.Replace("\r\n", "\n") - let expected = expected.Replace("\r\n", "\n") - Assert.AreEqual(expected, out) -#if OPEN_BUILD -#else - [] - member this.``ContinuationsThreadingDetails.AsyncWithSyncContext``() = - this.RunExeAndExpectOutput("AsyncWithSyncContext.exe", """ -EmptyParallel [|("ok", true); ("caught:boom", true)|] -NonEmptyParallel [|("ok", true); ("form exception:boom", true)|] -ParallelSeqArgumentThrows [|("error", true)|] -Sleep1Return [|("ok", true); ("form exception:boom", true)|] -Sleep0Return [|("ok", true); ("form exception:boom", true)|] -Return [|("ok", true); ("caught:boom", true)|] -FromContinuationsSuccess [|("ok", true); ("caught:boom", true)|] -FromContinuationsError [|("error", true)|] -FromContinuationsCancel [|("cancel", true)|] -FromContinuationsThrows [|("error", true)|] -FromContinuationsSchedulesFutureSuccess [|("ok", false); ("unhandled", false)|] -FromContinuationsSchedulesFutureError [|("error", false)|] -FromContinuationsSchedulesFutureCancel [|("cancel", false)|] -FromContinuationsSchedulesFutureSuccessAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureErrorAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureCancelAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureSuccessAndThrowsSlowly [|("ok", false); ("unhandled", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -FromContinuationsSchedulesFutureErrorAndThrowsSlowly [|("error", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -FromContinuationsSchedulesFutureCancelAndThrowsSlowly [|("cancel", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -AwaitWaitHandleAlreadySignaled0 [|("ok", true); ("caught:boom", true)|] -AwaitWaitHandleAlreadySignaled1 [|("ok", true); ("form exception:boom", true)|] -""" ) - [] - member this.``ContinuationsThreadingDetails.AsyncSansSyncContext``() = - this.RunExeAndExpectOutput("AsyncSansSyncContext.exe", """ -EmptyParallel [|("ok", true); ("caught:boom", true)|] -NonEmptyParallel [|("ok", false); ("unhandled", false)|] -ParallelSeqArgumentThrows [|("error", true)|] -Sleep1Return [|("ok", false); ("unhandled", false)|] -Sleep0Return [|("ok", false); ("unhandled", false)|] -Return [|("ok", true); ("caught:boom", true)|] -FromContinuationsSuccess [|("ok", true); ("caught:boom", true)|] -FromContinuationsError [|("error", true)|] -FromContinuationsCancel [|("cancel", true)|] -FromContinuationsThrows [|("error", true)|] -FromContinuationsSchedulesFutureSuccess [|("ok", false); ("unhandled", false)|] -FromContinuationsSchedulesFutureError [|("error", false)|] -FromContinuationsSchedulesFutureCancel [|("cancel", false)|] -FromContinuationsSchedulesFutureSuccessAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureErrorAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureCancelAndThrowsQuickly [|("error", true); ("unhandled", false)|] -FromContinuationsSchedulesFutureSuccessAndThrowsSlowly [|("ok", false); ("unhandled", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -FromContinuationsSchedulesFutureErrorAndThrowsSlowly [|("error", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -FromContinuationsSchedulesFutureCancelAndThrowsSlowly [|("cancel", false); - ("caught:A continuation provided by Async.FromContinuations was invoked multiple times", - true)|] -AwaitWaitHandleAlreadySignaled0 [|("ok", true); ("caught:boom", true)|] -AwaitWaitHandleAlreadySignaled1 [|("ok", false); ("unhandled", false)|] -""" ) -#endif - -#endif -#endif #endif \ No newline at end of file diff --git a/src/fsharp/FSharp.Core.Unittests/LibraryTestFx.fs b/src/fsharp/FSharp.Core.Unittests/LibraryTestFx.fs index af62c8ffb75..6fe9224d6a8 100644 --- a/src/fsharp/FSharp.Core.Unittests/LibraryTestFx.fs +++ b/src/fsharp/FSharp.Core.Unittests/LibraryTestFx.fs @@ -126,12 +126,7 @@ module SurfaceArea = // verify public surface area matches expected let verify expected platform fileName = - let workDir = - #if OPEN_BUILD - TestContext.CurrentContext.WorkDirectory - #else - "" - #endif + let workDir = TestContext.CurrentContext.WorkDirectory let logFile = sprintf "%s\\CoreUnit_%s_Xml.xml" workDir platform let normalize (s:string) = Regex.Replace(s, "(\\r\\n|\\n)+", "\r\n").Trim([|'\r';'\n'|]) diff --git a/src/fsharp/fsi/fsi.fs b/src/fsharp/fsi/fsi.fs index 54ff244a89e..d662bf4f1a4 100644 --- a/src/fsharp/fsi/fsi.fs +++ b/src/fsharp/fsi/fsi.fs @@ -2246,7 +2246,7 @@ type internal FsiEvaluationSession (argv:string[], inReader:TextReader, outWrite do InstallErrorLoggingOnThisThread errorLogger // FSI error logging on main thread. let updateBannerText() = - tcConfigB.productNameForBannerText <- FSIstrings.SR.fsiProductName(FSharpEnvironment.DotNetBuildString) + tcConfigB.productNameForBannerText <- FSIstrings.SR.fsiProductName(FSharpEnvironment.FSharpBannerVersion) do updateBannerText() // setting the correct banner so that 'fsi -?' display the right thing diff --git a/src/utils/CompilerLocationUtils.fs b/src/utils/CompilerLocationUtils.fs index f607293cfb5..85efb2e5735 100644 --- a/src/utils/CompilerLocationUtils.fs +++ b/src/utils/CompilerLocationUtils.fs @@ -12,15 +12,7 @@ open System.Runtime.InteropServices module internal FSharpEnvironment = /// The F# version reported in the banner -#if OPEN_BUILD - let DotNetBuildString = "(private)" -#else - /// The .NET runtime version that F# was built against (e.g. "v4.0.21104") - let DotNetRuntime = sprintf "v%s.%s.%s" Microsoft.BuildSettings.Version.Major Microsoft.BuildSettings.Version.Minor Microsoft.BuildSettings.Version.ProductBuild - - /// The .NET build string that F# was built against (e.g. "4.0.21104.0") - let DotNetBuildString = Microsoft.BuildSettings.Version.OfFile -#endif + let FSharpBannerVersion = "4.1" let versionOf<'t> = #if FX_RESHAPED_REFLECTION diff --git a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs index b093c69a6c9..ba8a2a8178e 100644 --- a/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs +++ b/vsintegration/src/FSharp.ProjectSystem.FSharp/Project.fs @@ -40,8 +40,6 @@ namespace rec Microsoft.VisualStudio.FSharp.ProjectSystem open EnvDTE - open Internal.Utilities.Debug - module internal VSHiveUtilities = /// For a given sub-hive, check to see if a 3rd party has specified any /// custom/extended property pages. diff --git a/vsintegration/tests/unittests/Tests.BaseLine.fs b/vsintegration/tests/unittests/Tests.BaseLine.fs deleted file mode 100644 index af766763185..00000000000 --- a/vsintegration/tests/unittests/Tests.BaseLine.fs +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -namespace Tests -open NUnit.Framework -open System -open System.IO -open System.Diagnostics -open UnitTests.TestLib.Utils -open Microsoft.BuildSettings - -#if OPEN_BUILD -#else -[] -type Script() = - let replaceIfNotNull (search:string) (replace:string) (s:string) = - match s with - | null -> s - | s -> s.Replace(search,replace) - let replaceConstants(line:string) = - line - |> replaceIfNotNull Version.OfFile "{VersionOfFile}" - |> replaceIfNotNull Version.OfAssembly "{VersionOfAssembly}" - |> replaceIfNotNull Version.ProductBuild "{VersionOfProductBuild}" - |> replaceIfNotNull "4.0" "{DotNetMajorMinor}" - |> replaceIfNotNull "4.5" "{DotNetMajorMinor}" - |> replaceIfNotNull (sprintf "%s.%s" Version.Major Version.Minor) "{DotNetMajorMinor}" - |> replaceIfNotNull "10.0" "{VsMajorMinor}" - |> replaceIfNotNull "F# 3.0" "F# {FSharpCompilerVersion}" - |> replaceIfNotNull (Environment.GetEnvironmentVariable("ProgramFiles")) "{ProgramFiles}" - - let runCheck(script:string,baseline:string) = - let code,lines = Spawn.Batch script - let combinedLines = String.Join("\r\n",lines).Trim([|'\r';'\n'|]) |> replaceConstants - let baseline = baseline.Trim([|'\r';'\n'|]) - if baseline<>combinedLines then - for line in lines do - printfn "%s" (replaceConstants line) - Assert.AreEqual(baseline,combinedLines) - - [] - member public __.NetModules_Bug915449() = - let script = @" -@echo off -echo>a.cs public class A {} -echo>b.cs public class B {} -echo>r.fs let a = new A() -echo>>r.fs let b = new B() -echo>>r.fs System.Console.WriteLine(a.GetType()) -echo>>r.fs System.Console.WriteLine(b.GetType()) -csc /nologo /t:module a.cs -csc /nologo /t:module b.cs -al /nologo /out:c.dll a.netmodule b.netmodule -fsc /nologo /r:c.dll r.fs -" - let baseline = @"" - runCheck(script,baseline) -#endif \ No newline at end of file diff --git a/vsintegration/tests/unittests/Tests.LanguageService.Script.fs b/vsintegration/tests/unittests/Tests.LanguageService.Script.fs index 3ef1233219e..ac0d017f308 100644 --- a/vsintegration/tests/unittests/Tests.LanguageService.Script.fs +++ b/vsintegration/tests/unittests/Tests.LanguageService.Script.fs @@ -1237,8 +1237,6 @@ type UsingMSBuild() as this = Assert.AreEqual(Path.Combine(projectFolder,"File1.fsx"), fas.ProjectFileNames.[0]) Assert.AreEqual(1, fas.ProjectFileNames.Length) -#if OPEN_BUILD -#else /// FEATURE: #reference against a strong name should work. [] @@ -1246,7 +1244,7 @@ type UsingMSBuild() as this = let code = ["#light" #if FX_ATLEAST_40 - sprintf "#reference \"System.Core, Version=%s, Culture=neutral, PublicKeyToken=b77a5c561934e089\"" Microsoft.BuildSettings.Version.OfAssembly + sprintf "#reference \"System.Core, Version=%s, Culture=neutral, PublicKeyToken=b77a5c561934e089\"" (System.Environment.Version.ToString()) #else "#reference \"System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\"" #endif @@ -1255,7 +1253,7 @@ type UsingMSBuild() as this = MoveCursorToEndOfMarker(file,"open System.") let completions = AutoCompleteAtCursor file AssertCompListContains(completions,"Linq") -#endif + /// Try out some bogus file names in #r, #I and #load. [] diff --git a/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj b/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj index 6b43b77a470..3bf42be0c10 100644 --- a/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj +++ b/vsintegration/tests/unittests/VisualFSharp.Unittests.fsproj @@ -35,7 +35,6 @@ -