Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed"
file source="$(VisualStudioXamlRulesDir)DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ProjectDebugger.xaml"
file source="$(VisualStudioXamlRulesDir)ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ProjectItemsSchema.CSharp.xaml"
Expand Down Expand Up @@ -86,6 +87,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\cs"
file source="$(VisualStudioXamlRulesDir)cs\PackageReference.xaml"
file source="$(VisualStudioXamlRulesDir)cs\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)cs\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)cs\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)cs\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)cs\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)cs\ProjectItemsSchema.CSharp.xaml"
Expand Down Expand Up @@ -123,6 +125,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\de"
file source="$(VisualStudioXamlRulesDir)de\PackageReference.xaml"
file source="$(VisualStudioXamlRulesDir)de\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)de\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)de\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)de\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)de\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)de\ProjectItemsSchema.CSharp.xaml"
Expand Down Expand Up @@ -161,6 +164,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\es"
file source="$(VisualStudioXamlRulesDir)es\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)es\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)es\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)es\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)es\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)es\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)es\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -198,6 +202,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\fr"
file source="$(VisualStudioXamlRulesDir)fr\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)fr\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)fr\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)fr\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)fr\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)fr\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)fr\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -235,6 +240,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\it"
file source="$(VisualStudioXamlRulesDir)it\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)it\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)it\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)it\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)it\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)it\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)it\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -269,6 +275,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\ja"
file source="$(VisualStudioXamlRulesDir)ja\None.BrowseObject.xaml"
file source="$(VisualStudioXamlRulesDir)ja\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ja\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ja\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ja\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ja\PackagePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ja\PackageReference.xaml"
Expand Down Expand Up @@ -309,6 +316,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\ko"
file source="$(VisualStudioXamlRulesDir)ko\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ko\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ko\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ko\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ko\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ko\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)ko\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -346,6 +354,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\pl"
file source="$(VisualStudioXamlRulesDir)pl\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pl\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pl\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pl\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pl\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pl\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)pl\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -383,6 +392,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\pt-BR"
file source="$(VisualStudioXamlRulesDir)pt-BR\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)pt-BR\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -420,6 +430,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\ru"
file source="$(VisualStudioXamlRulesDir)ru\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ru\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ru\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ru\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ru\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)ru\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)ru\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -457,6 +468,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\tr"
file source="$(VisualStudioXamlRulesDir)tr\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)tr\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)tr\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)tr\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)tr\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)tr\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)tr\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -494,6 +506,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\zh-Hans"
file source="$(VisualStudioXamlRulesDir)zh-Hans\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hans\ProjectItemsSchema.FSharp.xaml"
Expand Down Expand Up @@ -531,6 +544,7 @@ folder "InstallDir:MSBuild\Microsoft\VisualStudio\Managed\zh-Hant"
file source="$(VisualStudioXamlRulesDir)zh-Hant\DebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\SettingsPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\ResourcesPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\RuntimePropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\ProjectDebugPropertyPage.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\ProjectItemsSchema.CSharp.xaml"
file source="$(VisualStudioXamlRulesDir)zh-Hant\ProjectItemsSchema.FSharp.xaml"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\DebugPropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\SettingsPropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\ResourcesPropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\RuntimePropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\ExecutableDebugPropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\PackagePropertyPage.xaml" />
<XamlPropertyRuleNoCodeBehind Include="ProjectSystem\Rules\PropertyPages\ProjectDebugPropertyPage.xaml" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,10 @@
<Context>Project</Context>
</PropertyPageSchema>

<PropertyPageSchema Include="$(ManagedXamlResourcesDirectory)RuntimePropertyPage.xaml">
<Context>Project</Context>
</PropertyPageSchema>

<PropertyPageSchema Include="$(ManagedXamlResourcesDirectory)PackagePropertyPage.xaml">
<Context>Project</Context>
</PropertyPageSchema>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,221 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE.md file in the project root for more information. -->
<Rule Name="Runtime"
Description="Specifies the applications's runtime configuration properties."
DisplayName="Runtime"
PageTemplate="generic"
Order="150"
xmlns="http://schemas.microsoft.com/build/2009/properties">

<Rule.Categories>
<Category Name="GarbageCollection"
DisplayName="Garbage collection"
Description="Garbage collection settings for the application." />
<Category Name="Globalization"
DisplayName="Globalization"
Description="Globalization settings for the application." />
<Category Name="ThreadPool"
DisplayName="Thread pool"
Description="Thread pool settings for the application." />
<Category Name="TieredCompilation"
DisplayName="Tiered compilation"
Description="Tiered compilation settings for the application." />
</Rule.Categories>

<Rule.DataSource>
<DataSource Persistence="ProjectFile"
SourceOfDefaultValue="AfterContext"
HasConfigurationCondition="False" />
</Rule.DataSource>

<BoolProperty Name="ConcurrentGarbageCollection"
DisplayName="Concurrent garbage collection"
Description="Enable background (concurrent) garbage collection."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/background-gc"
Category="GarbageCollection">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "1.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

<EnumProperty Name="ServerGarbageCollection"
DisplayName="Garbage collection mode"
Description="Configures whether the application uses workstation garbage collection or server garbage collection."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/garbage-collector#workstation-vs-server"
Category="GarbageCollection">
<EnumProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "1.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</EnumProperty.Metadata>
<EnumValue Name="true"
DisplayName="Server garbage collection" />
<EnumValue Name="false"
DisplayName="Workstation garbage collection" />
</EnumProperty>

<EnumProperty Name="RetainVMGarbageCollection"
DisplayName="Retain VM"
Description="Configures whether segments that should be deleted are put on a standby list for future use, or are released back to the operating system."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/garbage-collector#retain-vm"
Category="GarbageCollection">
<EnumProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "1.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</EnumProperty.Metadata>
<EnumValue Name="true"
DisplayName="Retain segments on a standby list" />
<EnumValue Name="false"
DisplayName="Release segments back to the operating system" />
</EnumProperty>

<BoolProperty Name="InvariantGlobalization"
DisplayName="Invariant mode"
Description="Run in globalization-invariant mode, without access to culture-specific data and behavior."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/globalization#invariant-mode"
Category="Globalization">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "2.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

<BoolProperty Name="PredefinedCulturesOnly"
DisplayName="Predefined cultures only"
Description="Allow creating cultures other than the invariant culture when globalization-invariant mode is enabled."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/compatibility/globalization/6.0/culture-creation-invariant-mode"
Category="Globalization">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-evaluated-value "Runtime" "InvariantGlobalization" true)
(has-net-core-app-version-or-greater "6.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

<IntProperty Name="ThreadPoolMinThreads"
DisplayName="Minimimum thread pool threads"
Description="Specifies the minimum number of threads for the worker thread pool."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/threading#minimum-threads"
Category="ThreadPool">
<IntProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "1.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</IntProperty.Metadata>
</IntProperty>

<IntProperty Name="ThreadPoolMaxThreads"
DisplayName="Maximum thread pool threads"
Description="Specifies the maximum number of threads for the worker thread pool."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/threading#maximum-threads"
Category="ThreadPool">
<IntProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "1.0")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</IntProperty.Metadata>
</IntProperty>

<BoolProperty Name="TieredCompilation"
DisplayName="Tiered compilation"
Description="Use tiered compilation in the just-in-time (JIT) compiler."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/compilation#tiered-compilation"
Category="TieredCompilation">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "2.1")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

<BoolProperty Name="TieredCompilationQuickJit"
DisplayName="Quick JIT"
Description="Enable quick just-in-time (JIT) compilation."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/compilation#quick-jit"
Category="TieredCompilation">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-net-core-app-version-or-greater "2.1")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

<BoolProperty Name="TieredCompilationQuickJitForLoops"
DisplayName="Quick JIT for loops"
Description="Enable quick JIT for methods that contain loops."
HelpUrl="https://docs.microsoft.com/en-us/dotnet/core/run-time-config/compilation#quick-jit-for-loops"
Category="TieredCompilation">
<BoolProperty.Metadata>
<NameValuePair Name="VisibilityCondition">
<NameValuePair.Value>
(and
(has-evaluated-value "Runtime" "TieredCompilation" true)
(has-net-core-app-version-or-greater "2.1")
(or
(has-evaluated-value "Application" "OutputType" "Exe")
(has-evaluated-value "Application" "OutputType" "WinExe")))
</NameValuePair.Value>
</NameValuePair>
</BoolProperty.Metadata>
</BoolProperty>

</Rule>
Loading