Skip to content
This repository has been archived by the owner on Jun 19, 2023. It is now read-only.

Commit

Permalink
Merge pull request #118 from Particular/release-8.1
Browse files Browse the repository at this point in the history
Release 8.1
  • Loading branch information
boblangley committed Sep 27, 2018
2 parents cd9ba58 + e0c2c51 commit 677ec38
Show file tree
Hide file tree
Showing 13 changed files with 135 additions and 56 deletions.
9 changes: 0 additions & 9 deletions src/GitVersionWorkaround.targets

This file was deleted.

25 changes: 24 additions & 1 deletion src/NServiceBus.Host.AzureCloudService.sln.DotSettings
@@ -1,12 +1,17 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">

<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp70</s:String>
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">Default</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=InheritdocConsiderUsage/@EntryIndexedValue">DO_NOT_SHOW</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=InlineOutVariableDeclaration/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=MergeCastWithTypeCheck/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UsePatternMatching/@EntryIndexedValue">ERROR</s:String>
<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/AutoCompleteBasicCompletion/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/IntelliSenseCompletingCharacters/IntelliSenseCompletingCharactersSettingCSharp/UpgradedFromVSSettings/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeEditing/Intellisense/LookupWindow/ShowSummary/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeEditing/Localization/CSharpLocalizationOptions/DontAnalyseVerbatimStrings/@EntryValue">False</s:Boolean>

<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002A_005C_002APackages_005C_002A_002A_005C_002A_002E_002A/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=3D880FCA_002DD2DA_002D4AB9_002D8017_002DBA8B7C86D359_002Fd_003AApp_005FPackages/@EntryIndexedValue">ExplicitlyExcluded</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/AnalysisEnabled/@EntryValue">SOLUTION</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ArrangeTypeMemberModifiers/@EntryIndexedValue">SUGGESTION</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ArrangeTypeModifiers/@EntryIndexedValue">SUGGESTION</s:String>
Expand Down Expand Up @@ -45,6 +50,13 @@
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EmptyGeneralCatchClause/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EmptyNamespace/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EmptyStatement/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceDoWhileStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceFixedStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceForeachStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceForStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceIfStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceLockStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceWhileStatementBraces/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EventNeverInvoked/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ExpressionIsAlwaysNull/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=FieldCanBeMadeReadOnly_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
Expand Down Expand Up @@ -112,6 +124,7 @@
<s:String x:Key="/Default/CodeInspection/Highlighting/CodeIssueFilter/IssueTypesToHide/=_003CConfigurableSeverity_0020Id_003D_0022TryStatementsCanBeMerged_0022_0020_002F_003E/@EntryIndexedValue">DoHide</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/CodeIssueFilter/IssueTypesToHide/=_003CConfigurableSeverity_0020Id_003D_0022UnknownCssVendorExtension_0022_0020_002F_003E/@EntryIndexedValue">DoHide</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/CodeIssueFilter/IssueTypesToHide/=_003CStaticSeverity_0020Severity_003D_00222_0022_0020Title_003D_0022Structural_0020Search_0020Hints_0022_0020GroupId_003D_0022StructuralSearch_0022_0020_002F_003E/@EntryIndexedValue">DoHide</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=RemoveRedundantBraces/@EntryIndexedValue">WARNING</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SealedMemberInSealedClass/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=StaticFieldInGenericType/@EntryIndexedValue">ERROR</s:String>
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestUseVarKeywordEverywhere/@EntryIndexedValue">ERROR</s:String>
Expand Down Expand Up @@ -139,6 +152,10 @@
<s:String x:Key="/Default/CodeStyle/CodeCleanup/Profiles/=Format_0020My_0020Code_0020Using_0020_0022Particular_0022_0020conventions/@EntryIndexedValue">&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;Profile name="Format My Code Using &amp;quot;Particular&amp;quot; conventions"&gt;&lt;CSMakeFieldReadonly&gt;True&lt;/CSMakeFieldReadonly&gt;&lt;CSUseVar&gt;&lt;BehavourStyle&gt;CAN_CHANGE_TO_IMPLICIT&lt;/BehavourStyle&gt;&lt;LocalVariableStyle&gt;ALWAYS_IMPLICIT&lt;/LocalVariableStyle&gt;&lt;ForeachVariableStyle&gt;ALWAYS_IMPLICIT&lt;/ForeachVariableStyle&gt;&lt;/CSUseVar&gt;&lt;CSOptimizeUsings&gt;&lt;OptimizeUsings&gt;True&lt;/OptimizeUsings&gt;&lt;EmbraceInRegion&gt;False&lt;/EmbraceInRegion&gt;&lt;RegionName&gt;&lt;/RegionName&gt;&lt;/CSOptimizeUsings&gt;&lt;CSReformatCode&gt;True&lt;/CSReformatCode&gt;&lt;CSReorderTypeMembers&gt;True&lt;/CSReorderTypeMembers&gt;&lt;JsInsertSemicolon&gt;True&lt;/JsInsertSemicolon&gt;&lt;JsReformatCode&gt;True&lt;/JsReformatCode&gt;&lt;CssReformatCode&gt;True&lt;/CssReformatCode&gt;&lt;CSArrangeThisQualifier&gt;True&lt;/CSArrangeThisQualifier&gt;&lt;RemoveCodeRedundancies&gt;True&lt;/RemoveCodeRedundancies&gt;&lt;CSUseAutoProperty&gt;True&lt;/CSUseAutoProperty&gt;&lt;HtmlReformatCode&gt;True&lt;/HtmlReformatCode&gt;&lt;CSShortenReferences&gt;True&lt;/CSShortenReferences&gt;&lt;CSharpFormatDocComments&gt;True&lt;/CSharpFormatDocComments&gt;&lt;CssAlphabetizeProperties&gt;True&lt;/CssAlphabetizeProperties&gt;&lt;/Profile&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/CodeCleanup/RecentlyUsedProfile/@EntryValue">Default: Reformat Code</s:String>
<s:String x:Key="/Default/CodeStyle/CodeCleanup/SilentCleanupProfile/@EntryValue">Format My Code Using "Particular" conventions</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_FOR/@EntryValue">Required</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_FOREACH/@EntryValue">Required</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_IFELSE/@EntryValue">Required</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_WHILE/@EntryValue">Required</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/DEFAULT_INTERNAL_MODIFIER/@EntryValue">Implicit</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/DEFAULT_PRIVATE_MODIFIER/@EntryValue">Implicit</s:String>
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/EXPLICIT_INTERNAL_MODIFIER/@EntryValue">False</s:Boolean>
Expand All @@ -148,6 +165,7 @@
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_IFELSE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_USING_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_WHILE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_ACCESSORHOLDER_ATTRIBUTE_ON_SAME_LINE_EX/@EntryValue">NEVER</s:String>
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_AFTER_TYPECAST_PARENTHESES/@EntryValue">False</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_FIXED_PARENTHESES/@EntryValue">False</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_SIZEOF_PARENTHESES/@EntryValue">False</s:Boolean>
Expand Down Expand Up @@ -590,9 +608,14 @@ II.2.12 &lt;HandlesEvent /&gt;&#xD;
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/UserRules/=NAMESPACE_005FALIAS/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/UserRules/=XAML_005FFIELD/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/UserRules/=XAML_005FRESOURCE/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpAttributeForSingleLineMethodUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpFileLayoutPatternsUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpKeepExistingMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpPlaceEmbeddedOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpRenamePlacementToArrangementMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAlwaysTreatStructAsNotReorderableMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002ECSharpPlaceAttributeOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002EJavaScript_002ECodeStyle_002ESettingsUpgrade_002EJsCodeFormatterSettingsUpgrader/@EntryIndexedValue">True</s:Boolean>
Expand Down
Expand Up @@ -15,13 +15,8 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Particular.CodeRules" Version="0.2.0" PrivateAssets="All" />
<PackageReference Include="Particular.Packaging" Version="0.1.0" PrivateAssets="All" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="SourceLink.Create.GitHub" Version="2.5.0" PrivateAssets="All" />
<DotNetCliToolReference Include="dotnet-sourcelink-git" Version="2.5.0" />
<PackageReference Include="Particular.CodeRules" Version="0.2.1" PrivateAssets="All" />
<PackageReference Include="Particular.Packaging" Version="0.2.0" PrivateAssets="All" />
</ItemGroup>

</Project>
2 changes: 2 additions & 0 deletions src/NServiceBus.Hosting.Azure.HostProcess/Program.cs
Expand Up @@ -41,7 +41,9 @@ static void AssertThatEndpointConfigurationTypeHasDefaultConstructor(Type type)
var constructor = type.GetConstructor(Type.EmptyTypes);

if (constructor == null)
{
throw new InvalidOperationException("Endpoint configuration type needs to have a default constructor: " + type.FullName);
}
}

static string GetEndpointConfigurationFile(Type endpointConfigurationType)
Expand Down
Expand Up @@ -12,11 +12,12 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="NServiceBus" Version="7.0.0" />
<PackageReference Include="WindowsAzure.Storage" Version="8.*" />
<PackageReference Include="NServiceBus" Version="7.1.1" />
<PackageReference Include="WindowsAzure.Storage" Version="9.*" />
<PackageReference Include="ApprovalTests" Version="3.0.13" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
<PackageReference Include="NUnit" Version="3.7.1" />
<PackageReference Include="NUnit" Version="3.10.1" />
<!-- requires a version that works with PublicApiGenerator (Mono.Cecil) -->
<PackageReference Include="NUnit3TestAdapter" Version="3.8.0-alpha1" />
<PackageReference Include="PublicApiGenerator" Version="6.4.0" />
</ItemGroup>
Expand Down
Expand Up @@ -4,7 +4,10 @@ class AzureConfigurationSettings : IAzureConfigurationSettings
{
public string GetSetting(string name)
{
if (!SafeRoleEnvironment.IsAvailable) return string.Empty;
if (!SafeRoleEnvironment.IsAvailable)
{
return string.Empty;
}

return SafeRoleEnvironment.GetConfigurationSettingValue(name);
}
Expand All @@ -13,7 +16,10 @@ public bool TryGetSetting(string name, out string setting)
{
setting = null;

if (!SafeRoleEnvironment.IsAvailable) return false;
if (!SafeRoleEnvironment.IsAvailable)
{
return false;
}

return SafeRoleEnvironment.TryGetConfigurationSettingValue(name, out setting);
}
Expand Down
Expand Up @@ -30,13 +30,19 @@ public void Provision(IEnumerable<EndpointToHost> endpoints)
{
logger.Error(e.Message);

if (RecycleRoleOnError) SafeRoleEnvironment.RequestRecycle();
if (RecycleRoleOnError)
{
SafeRoleEnvironment.RequestRecycle();
}
}
}

public void Remove(IEnumerable<EndpointToHost> endpoints)
{
if (!SafeRoleEnvironment.TryGetRootPath(LocalResource, out var localResource)) return;
if (!SafeRoleEnvironment.TryGetRootPath(LocalResource, out var localResource))
{
return;
}

foreach (var endpoint in endpoints)
{
Expand Down
20 changes: 16 additions & 4 deletions src/NServiceBus.Hosting.Azure/DynamicHost/DynamicEndpointRunner.cs
Expand Up @@ -40,7 +40,10 @@ public void Start(IEnumerable<EndpointToHost> toHost)
logger.Error(args.Data);
if (process.ExitCode != 0 && !processWasKilledOnPurpose)
{
if (RecycleRoleOnError) SafeRoleEnvironment.RequestRecycle();
if (RecycleRoleOnError)
{
SafeRoleEnvironment.RequestRecycle();
}
}
};

Expand All @@ -51,7 +54,10 @@ public void Start(IEnumerable<EndpointToHost> toHost)
processWasKilledOnPurpose = StoppedProcessIds.TryRemove(process.Id, out _);
if (process.ExitCode != 0 && !processWasKilledOnPurpose)
{
if (RecycleRoleOnError) SafeRoleEnvironment.RequestRecycle();
if (RecycleRoleOnError)
{
SafeRoleEnvironment.RequestRecycle();
}
}
};

Expand All @@ -66,7 +72,10 @@ public void Start(IEnumerable<EndpointToHost> toHost)
{
logger.Error(e.Message);

if (RecycleRoleOnError) SafeRoleEnvironment.RequestRecycle();
if (RecycleRoleOnError)
{
SafeRoleEnvironment.RequestRecycle();
}
}
}
}
Expand All @@ -75,7 +84,10 @@ public void Stop(IEnumerable<EndpointToHost> runningServices)
{
foreach (var runningService in runningServices)
{
if (runningService.ProcessId == 0) continue;
if (runningService.ProcessId == 0)
{
continue;
}

KillProcess(runningService.ProcessId, TimeToWaitUntilProcessIsKilled);

Expand Down
12 changes: 10 additions & 2 deletions src/NServiceBus.Hosting.Azure/DynamicHost/DynamicHostController.cs
Expand Up @@ -27,15 +27,21 @@ public void Start()

var endpointsToHost = loader.LoadEndpoints();

if (endpointsToHost == null) return;
if (endpointsToHost == null)
{
return;
}

runningServices = new List<EndpointToHost>(endpointsToHost);

provisioner.Provision(runningServices);

runner.Start(runningServices);

if (!settings.AutoUpdate) return;
if (!settings.AutoUpdate)
{
return;
}

monitor = new DynamicHostMonitor
{
Expand Down Expand Up @@ -82,7 +88,9 @@ void RemovedEndpoints(object sender, EndpointsEventArgs e)
runner.Stop(e.Endpoints);
provisioner.Remove(e.Endpoints);
foreach (var endpoint in e.Endpoints)
{
runningServices.Remove(endpoint);
}
}

DynamicEndpointLoader loader;
Expand Down
11 changes: 10 additions & 1 deletion src/NServiceBus.Hosting.Azure/DynamicHost/DynamicHostMonitor.cs
Expand Up @@ -98,17 +98,26 @@ void CheckForUpdates()
{
var endpointNotFound =
loadedEndpoints.SingleOrDefault(l => l.EndpointName == endpoint.EndpointName) == null;
if (endpointNotFound) removedEndpoints.Add(endpoint);
if (endpointNotFound)
{
removedEndpoints.Add(endpoint);
}
}

if (updatedEndpoints.Count > 0)
{
OnUpdatedEndpoints(new EndpointsEventArgs {Endpoints = updatedEndpoints});
}

if (newEndpoints.Count > 0)
{
OnNewEndpoints(new EndpointsEventArgs {Endpoints = newEndpoints});
}

if (removedEndpoints.Count > 0)
{
OnRemovedEndpoints(new EndpointsEventArgs {Endpoints = removedEndpoints});
}
}
catch(StorageException ex) //prevent azure storage hickups from hurting us
{
Expand Down

0 comments on commit 677ec38

Please sign in to comment.