From 757f55d19f5c19ea38bcde779e3e96b24f2ec1af Mon Sep 17 00:00:00 2001 From: elachlan <2433737+elachlan@users.noreply.github.com> Date: Sun, 2 Jan 2022 20:07:52 +1000 Subject: [PATCH 1/3] SA1002 The spacing around a semicolon is incorrect --- .../Construction/ConstructionEditing_Tests.cs | 2 +- .../Construction/ProjectRootElement_Tests.cs | 2 +- .../Definition/DefinitionEditing_Tests.cs | 2 +- .../Definition/Project_Tests.cs | 2 +- .../LinkedSpecialCasesScenarios.cs | 2 +- .../MockProjectUsingTaskParameterElementLink.cs | 2 +- .../Construction/ProjectElementContainer.cs | 2 +- src/Build/Graph/ProjectGraph.cs | 2 +- .../Conversion/OldVSProjectFileReader.cs | 2 +- .../Engine/Collections/CopyOnWriteHashtable.cs | 16 ++++++++-------- src/Deprecated/Engine/Engine/NodeManager.cs | 2 +- .../Engine/ProjectSchemaValidationHandler.cs | 2 +- src/Deprecated/Engine/Engine/Utilities.cs | 2 +- src/Deprecated/Engine/Shared/SolutionParser.cs | 2 +- src/Framework/Sdk/SdkResultItem.cs | 2 +- src/Shared/FileUtilities.cs | 4 ++-- src/Tasks.UnitTests/ResolveSDKReference_Tests.cs | 2 +- 17 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/Build.OM.UnitTests/Construction/ConstructionEditing_Tests.cs b/src/Build.OM.UnitTests/Construction/ConstructionEditing_Tests.cs index f3003665a5c..7808e663d3a 100644 --- a/src/Build.OM.UnitTests/Construction/ConstructionEditing_Tests.cs +++ b/src/Build.OM.UnitTests/Construction/ConstructionEditing_Tests.cs @@ -935,7 +935,7 @@ public static IEnumerable InsertMetadataElemenetBeforeSiblingsTestData [MemberData(nameof(InsertMetadataElemenetBeforeSiblingsTestData))] public void InsertMetadataElementBeforeSiblings(AddMetadata addMetadata, int position, string expectedItem) { - Action act = (i, c, r) => { i.InsertBeforeChild(c, r);}; + Action act = (i, c, r) => { i.InsertBeforeChild(c, r); }; AssertMetadataConstruction(addMetadata, position, expectedItem, act); } diff --git a/src/Build.OM.UnitTests/Construction/ProjectRootElement_Tests.cs b/src/Build.OM.UnitTests/Construction/ProjectRootElement_Tests.cs index 3c88ebe1567..17b4433bcdc 100644 --- a/src/Build.OM.UnitTests/Construction/ProjectRootElement_Tests.cs +++ b/src/Build.OM.UnitTests/Construction/ProjectRootElement_Tests.cs @@ -1718,7 +1718,7 @@ public void ReloadFromFileWhenProjectIsInMemorySetsProjectFile() AssertProjectFileAfterReload( true, false, - (initial, reload, actualFile) => { Assert.Equal(reload, actualFile);}); + (initial, reload, actualFile) => { Assert.Equal(reload, actualFile); }); } [Fact] diff --git a/src/Build.OM.UnitTests/Definition/DefinitionEditing_Tests.cs b/src/Build.OM.UnitTests/Definition/DefinitionEditing_Tests.cs index fed092e5bdc..35ce44d1ed2 100644 --- a/src/Build.OM.UnitTests/Definition/DefinitionEditing_Tests.cs +++ b/src/Build.OM.UnitTests/Definition/DefinitionEditing_Tests.cs @@ -1154,7 +1154,7 @@ public void RenameItem_StillMatchesWildcard() [MemberData(nameof(ItemElementsWithGlobsThatRequireSplitting))] public void RenameThrowsWhenItemElementSplittingIsDisabled(string projectContents, int itemIndex, SetupProject setupProject) { - AssertDisabledItemSplitting(projectContents, itemIndex, setupProject, (p, i) => {i.Rename("foo");}); + AssertDisabledItemSplitting(projectContents, itemIndex, setupProject, (p, i) => {i.Rename("foo"); }); } /// diff --git a/src/Build.OM.UnitTests/Definition/Project_Tests.cs b/src/Build.OM.UnitTests/Definition/Project_Tests.cs index afaf6ecf8ab..24d691bd88a 100644 --- a/src/Build.OM.UnitTests/Definition/Project_Tests.cs +++ b/src/Build.OM.UnitTests/Definition/Project_Tests.cs @@ -4255,7 +4255,7 @@ private static void AssertGlobResult(GlobResultList expected, string project) private static void AssertGlobResult(GlobResultList expected, string project, string itemType) { - var globs = ObjectModelHelpers.CreateInMemoryProject(project).GetAllGlobs(itemType) ; + var globs = ObjectModelHelpers.CreateInMemoryProject(project).GetAllGlobs(itemType); AssertGlobResultsEqual(expected, globs); } diff --git a/src/Build.OM.UnitTests/ObjectModelRemoting/LinkedSpecialCasesScenarios.cs b/src/Build.OM.UnitTests/ObjectModelRemoting/LinkedSpecialCasesScenarios.cs index 8f1a864574a..8de3fda905a 100644 --- a/src/Build.OM.UnitTests/ObjectModelRemoting/LinkedSpecialCasesScenarios.cs +++ b/src/Build.OM.UnitTests/ObjectModelRemoting/LinkedSpecialCasesScenarios.cs @@ -186,7 +186,7 @@ private void CopyFromInternal(ProjectRootElement sourceProject) Assert.NotSame(realExistingItemGroup, newDeepCopy.Real); // TODO XmlLocation is (correctly) different for the items, need to find a way to bypass it. var context = new ValidationContext(); - context.ValidateLocation = delegate (ElementLocation a, ElementLocation e) { return;}; + context.ValidateLocation = delegate (ElementLocation a, ElementLocation e) { return; }; ViewValidation.Verify(newDeepCopy.View, realExistingItemGroup, context); newDeepCopy.View.Label = "DeepCopyFrom"; diff --git a/src/Build.OM.UnitTests/ObjectModelRemoting/RemoteProjectsProviderMock/ConstructionLinkMocks/MockProjectUsingTaskParameterElementLink.cs b/src/Build.OM.UnitTests/ObjectModelRemoting/RemoteProjectsProviderMock/ConstructionLinkMocks/MockProjectUsingTaskParameterElementLink.cs index 3c5674aaa91..d247bbe0a21 100644 --- a/src/Build.OM.UnitTests/ObjectModelRemoting/RemoteProjectsProviderMock/ConstructionLinkMocks/MockProjectUsingTaskParameterElementLink.cs +++ b/src/Build.OM.UnitTests/ObjectModelRemoting/RemoteProjectsProviderMock/ConstructionLinkMocks/MockProjectUsingTaskParameterElementLink.cs @@ -38,7 +38,7 @@ public MockProjectUsingTaskParameterElementLink(MockProjectUsingTaskParameterEle object ILinkMock.Remoter => this.Proxy; MockProjectElementLinkRemoter IProjectElementLinkHelper.ElementProxy => this.Proxy; - public override string Name { get => Proxy.Name ; set =>Proxy.Name = value; } + public override string Name { get => Proxy.Name; set =>Proxy.Name = value; } #region ProjectElementLink redirectors private IProjectElementLinkHelper EImpl => (IProjectElementLinkHelper)this; public override ProjectElementContainer Parent => EImpl.GetParent(); diff --git a/src/Build/Construction/ProjectElementContainer.cs b/src/Build/Construction/ProjectElementContainer.cs index 3c4c0d6f269..5639fe78fca 100644 --- a/src/Build/Construction/ProjectElementContainer.cs +++ b/src/Build/Construction/ProjectElementContainer.cs @@ -95,7 +95,7 @@ public ICollection ChildrenReversed /// /// Number of children of any kind /// - public int Count { get => Link != null ? ContainerLink.Count : _count ; private set => _count = value; } + public int Count { get => Link != null ? ContainerLink.Count : _count; private set => _count = value; } /// /// First child, if any, otherwise null. diff --git a/src/Build/Graph/ProjectGraph.cs b/src/Build/Graph/ProjectGraph.cs index 40cf6aee0ed..6e50eb88880 100644 --- a/src/Build/Graph/ProjectGraph.cs +++ b/src/Build/Graph/ProjectGraph.cs @@ -60,7 +60,7 @@ public delegate ProjectInstance ProjectInstanceFactoryFunc( internal GraphBuilder.GraphEdges TestOnly_Edges => Edges; - public GraphConstructionMetrics ConstructionMetrics { get; private set;} + public GraphConstructionMetrics ConstructionMetrics { get; private set; } /// /// Various metrics on graph construction. diff --git a/src/Deprecated/Conversion/OldVSProjectFileReader.cs b/src/Deprecated/Conversion/OldVSProjectFileReader.cs index cbfce91cf0b..459e71707d5 100644 --- a/src/Deprecated/Conversion/OldVSProjectFileReader.cs +++ b/src/Deprecated/Conversion/OldVSProjectFileReader.cs @@ -456,7 +456,7 @@ string xmlAttributeText // should only get executed in fairly rare circumstances. It's not very // common for people to have these embedded into their project files. bool foundEntity = false; - for (int i = 0 ; i < entities.Length ; i++) + for (int i = 0; i < entities.Length; i++) { // Case-sensitive comparison to see if the entity name matches any of // the well-known ones that were emitted by the XML writer in the VS.NET diff --git a/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs b/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs index 9ca7eca684f..671d88b0530 100644 --- a/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs +++ b/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs @@ -138,8 +138,8 @@ internal bool IsShallowCopy } #endregion #region Pass-through Hashtable methods. - public bool Contains(Object key) {return ReadOperation.Contains(key);} - public void Add(Object key, Object value) {WriteOperation.Add(key, value);} + public bool Contains(Object key) {return ReadOperation.Contains(key); } + public void Add(Object key, Object value) {WriteOperation.Add(key, value); } public void Clear() { lock (sharedLock) @@ -152,17 +152,17 @@ public void Clear() } IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)ReadOperation).GetEnumerator(); } - public IDictionaryEnumerator GetEnumerator() {return ReadOperation.GetEnumerator();} - public void Remove(Object key) {WriteOperation.Remove(key);} + public IDictionaryEnumerator GetEnumerator() {return ReadOperation.GetEnumerator(); } + public void Remove(Object key) {WriteOperation.Remove(key); } public bool IsFixedSize { get { return ReadOperation.IsFixedSize; }} - public bool IsReadOnly {get {return ReadOperation.IsFixedSize;}} - public ICollection Keys {get {return ReadOperation.Keys;}} - public ICollection Values {get {return ReadOperation.Values;}} + public bool IsReadOnly {get {return ReadOperation.IsFixedSize; }} + public ICollection Keys {get {return ReadOperation.Keys; }} + public ICollection Values {get {return ReadOperation.Values; }} public void CopyTo(Array array, int arrayIndex) { ReadOperation.CopyTo(array, arrayIndex); } public int Count{get { return ReadOperation.Count; }} public bool IsSynchronized {get { return ReadOperation.IsSynchronized; }} public Object SyncRoot {get { return ReadOperation.SyncRoot; }} - public bool ContainsKey(Object key) {return ReadOperation.Contains(key);} + public bool ContainsKey(Object key) {return ReadOperation.Contains(key); } public Object this[Object key] { diff --git a/src/Deprecated/Engine/Engine/NodeManager.cs b/src/Deprecated/Engine/Engine/NodeManager.cs index c963d35e73c..b2f12b528f2 100644 --- a/src/Deprecated/Engine/Engine/NodeManager.cs +++ b/src/Deprecated/Engine/Engine/NodeManager.cs @@ -60,7 +60,7 @@ internal bool RegisterNodeProvider(INodeProvider nodeProviderToRegister) nodeProviderToRegister.AssignNodeIdentifiers(nodeIds); // Go through all of the nodes as described by nodeDescriptions and add them to out list of nodes - for(int i=0; i < nodeDescriptions.Length;i++) + for(int i=0; i < nodeDescriptions.Length; i++) { ProvidersNodeInformation nodeToAddFromProvider = new ProvidersNodeInformation(i, nodeIds[i], nodeDescriptions[i], nodeProviderToRegister); diff --git a/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs b/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs index ab4840d7004..51b8759b991 100644 --- a/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs +++ b/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs @@ -18,7 +18,7 @@ namespace Microsoft.Build.BuildEngine internal sealed class ProjectSchemaValidationHandler { // The parent Engine object for this project. - private EngineLoggingServices engineLoggingServices ; + private EngineLoggingServices engineLoggingServices; // the location of the MSBuild binaries private string binPath; diff --git a/src/Deprecated/Engine/Engine/Utilities.cs b/src/Deprecated/Engine/Engine/Utilities.cs index 6f7cb535570..80b8ad2c619 100644 --- a/src/Deprecated/Engine/Engine/Utilities.cs +++ b/src/Deprecated/Engine/Engine/Utilities.cs @@ -58,7 +58,7 @@ string rightValueExpanded // The fully expanded value on the right string[] leftValuePieces = leftValue.Split(new char[]{'|'}); // Loop through each of the pieces. - for (int i = 0 ; i < leftValuePieces.Length ; i++) + for (int i = 0; i < leftValuePieces.Length; i++) { Match singlePropertyMatch = singlePropertyRegex.Match(leftValuePieces[i]); diff --git a/src/Deprecated/Engine/Shared/SolutionParser.cs b/src/Deprecated/Engine/Shared/SolutionParser.cs index 7790ff7d26e..e681d5ec344 100644 --- a/src/Deprecated/Engine/Shared/SolutionParser.cs +++ b/src/Deprecated/Engine/Shared/SolutionParser.cs @@ -425,7 +425,7 @@ private void ParseFileHeader() const string slnFileHeaderNoVersion = "Microsoft Visual Studio Solution File, Format Version "; // Read the file header. This can be on either of the first two lines. - for (int i=1 ; i<=2 ; i++) + for (int i=1; i<=2; i++) { string str = ReadLine(); if (str == null) diff --git a/src/Framework/Sdk/SdkResultItem.cs b/src/Framework/Sdk/SdkResultItem.cs index baaa023f4f3..cff07bb8bf7 100644 --- a/src/Framework/Sdk/SdkResultItem.cs +++ b/src/Framework/Sdk/SdkResultItem.cs @@ -17,7 +17,7 @@ namespace Microsoft.Build.Framework public class SdkResultItem { public string ItemSpec { get; set; } - public Dictionary? Metadata { get;} + public Dictionary? Metadata { get; } public SdkResultItem() { diff --git a/src/Shared/FileUtilities.cs b/src/Shared/FileUtilities.cs index 940bcd46ce9..ebb84d7e000 100644 --- a/src/Shared/FileUtilities.cs +++ b/src/Shared/FileUtilities.cs @@ -285,7 +285,7 @@ internal static String GetDirectoryNameOfFullPath(String fullPath) if (fullPath != null) { int i = fullPath.Length; - while (i > 0 && fullPath[--i] != Path.DirectorySeparatorChar && fullPath[i] != Path.AltDirectorySeparatorChar) ; + while (i > 0 && fullPath[--i] != Path.DirectorySeparatorChar && fullPath[i] != Path.AltDirectorySeparatorChar); return FixFilePath(fullPath.Substring(0, i)); } return null; @@ -447,7 +447,7 @@ From Path.cs in the CLR internal static string FixFilePath(string path) { - return string.IsNullOrEmpty(path) || Path.DirectorySeparatorChar == '\\' ? path : path.Replace('\\', '/');//.Replace("//", "/"); + return string.IsNullOrEmpty(path) || Path.DirectorySeparatorChar == '\\' ? path : path.Replace('\\', '/'); //.Replace("//", "/"); } #if !CLR2COMPATIBILITY diff --git a/src/Tasks.UnitTests/ResolveSDKReference_Tests.cs b/src/Tasks.UnitTests/ResolveSDKReference_Tests.cs index 74dfedd39d1..53424ad0c5f 100644 --- a/src/Tasks.UnitTests/ResolveSDKReference_Tests.cs +++ b/src/Tasks.UnitTests/ResolveSDKReference_Tests.cs @@ -405,7 +405,7 @@ public void VerifyUnResolvedSDKMessage() reference4.DependsOnSDK = "NotThere, Version=1.0"; references.Add(reference4); - ResolveSDKReference.VerifySDKDependsOn(log, references);//, new Version(8, 1), "Windows", null); + ResolveSDKReference.VerifySDKDependsOn(log, references); //, new Version(8, 1), "Windows", null); Assert.Equal(4, engine.Warnings); Assert.Equal(0, engine.Errors); From ddb823709d2c21a3b2391cc190fe07813dbd5f3a Mon Sep 17 00:00:00 2001 From: elachlan <2433737+elachlan@users.noreply.github.com> Date: Tue, 4 Jan 2022 09:09:49 +1000 Subject: [PATCH 2/3] revert changes to deprecated --- .../Conversion/OldVSProjectFileReader.cs | 2 +- .../Engine/Collections/CopyOnWriteHashtable.cs | 16 ++++++++-------- src/Deprecated/Engine/Engine/NodeManager.cs | 2 +- .../Engine/ProjectSchemaValidationHandler.cs | 2 +- src/Deprecated/Engine/Engine/Utilities.cs | 2 +- src/Deprecated/Engine/Shared/SolutionParser.cs | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/Deprecated/Conversion/OldVSProjectFileReader.cs b/src/Deprecated/Conversion/OldVSProjectFileReader.cs index 459e71707d5..cbfce91cf0b 100644 --- a/src/Deprecated/Conversion/OldVSProjectFileReader.cs +++ b/src/Deprecated/Conversion/OldVSProjectFileReader.cs @@ -456,7 +456,7 @@ string xmlAttributeText // should only get executed in fairly rare circumstances. It's not very // common for people to have these embedded into their project files. bool foundEntity = false; - for (int i = 0; i < entities.Length; i++) + for (int i = 0 ; i < entities.Length ; i++) { // Case-sensitive comparison to see if the entity name matches any of // the well-known ones that were emitted by the XML writer in the VS.NET diff --git a/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs b/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs index 671d88b0530..9ca7eca684f 100644 --- a/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs +++ b/src/Deprecated/Engine/Collections/CopyOnWriteHashtable.cs @@ -138,8 +138,8 @@ internal bool IsShallowCopy } #endregion #region Pass-through Hashtable methods. - public bool Contains(Object key) {return ReadOperation.Contains(key); } - public void Add(Object key, Object value) {WriteOperation.Add(key, value); } + public bool Contains(Object key) {return ReadOperation.Contains(key);} + public void Add(Object key, Object value) {WriteOperation.Add(key, value);} public void Clear() { lock (sharedLock) @@ -152,17 +152,17 @@ public void Clear() } IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)ReadOperation).GetEnumerator(); } - public IDictionaryEnumerator GetEnumerator() {return ReadOperation.GetEnumerator(); } - public void Remove(Object key) {WriteOperation.Remove(key); } + public IDictionaryEnumerator GetEnumerator() {return ReadOperation.GetEnumerator();} + public void Remove(Object key) {WriteOperation.Remove(key);} public bool IsFixedSize { get { return ReadOperation.IsFixedSize; }} - public bool IsReadOnly {get {return ReadOperation.IsFixedSize; }} - public ICollection Keys {get {return ReadOperation.Keys; }} - public ICollection Values {get {return ReadOperation.Values; }} + public bool IsReadOnly {get {return ReadOperation.IsFixedSize;}} + public ICollection Keys {get {return ReadOperation.Keys;}} + public ICollection Values {get {return ReadOperation.Values;}} public void CopyTo(Array array, int arrayIndex) { ReadOperation.CopyTo(array, arrayIndex); } public int Count{get { return ReadOperation.Count; }} public bool IsSynchronized {get { return ReadOperation.IsSynchronized; }} public Object SyncRoot {get { return ReadOperation.SyncRoot; }} - public bool ContainsKey(Object key) {return ReadOperation.Contains(key); } + public bool ContainsKey(Object key) {return ReadOperation.Contains(key);} public Object this[Object key] { diff --git a/src/Deprecated/Engine/Engine/NodeManager.cs b/src/Deprecated/Engine/Engine/NodeManager.cs index b2f12b528f2..c963d35e73c 100644 --- a/src/Deprecated/Engine/Engine/NodeManager.cs +++ b/src/Deprecated/Engine/Engine/NodeManager.cs @@ -60,7 +60,7 @@ internal bool RegisterNodeProvider(INodeProvider nodeProviderToRegister) nodeProviderToRegister.AssignNodeIdentifiers(nodeIds); // Go through all of the nodes as described by nodeDescriptions and add them to out list of nodes - for(int i=0; i < nodeDescriptions.Length; i++) + for(int i=0; i < nodeDescriptions.Length;i++) { ProvidersNodeInformation nodeToAddFromProvider = new ProvidersNodeInformation(i, nodeIds[i], nodeDescriptions[i], nodeProviderToRegister); diff --git a/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs b/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs index 51b8759b991..ab4840d7004 100644 --- a/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs +++ b/src/Deprecated/Engine/Engine/ProjectSchemaValidationHandler.cs @@ -18,7 +18,7 @@ namespace Microsoft.Build.BuildEngine internal sealed class ProjectSchemaValidationHandler { // The parent Engine object for this project. - private EngineLoggingServices engineLoggingServices; + private EngineLoggingServices engineLoggingServices ; // the location of the MSBuild binaries private string binPath; diff --git a/src/Deprecated/Engine/Engine/Utilities.cs b/src/Deprecated/Engine/Engine/Utilities.cs index 80b8ad2c619..6f7cb535570 100644 --- a/src/Deprecated/Engine/Engine/Utilities.cs +++ b/src/Deprecated/Engine/Engine/Utilities.cs @@ -58,7 +58,7 @@ string rightValueExpanded // The fully expanded value on the right string[] leftValuePieces = leftValue.Split(new char[]{'|'}); // Loop through each of the pieces. - for (int i = 0; i < leftValuePieces.Length; i++) + for (int i = 0 ; i < leftValuePieces.Length ; i++) { Match singlePropertyMatch = singlePropertyRegex.Match(leftValuePieces[i]); diff --git a/src/Deprecated/Engine/Shared/SolutionParser.cs b/src/Deprecated/Engine/Shared/SolutionParser.cs index e681d5ec344..7790ff7d26e 100644 --- a/src/Deprecated/Engine/Shared/SolutionParser.cs +++ b/src/Deprecated/Engine/Shared/SolutionParser.cs @@ -425,7 +425,7 @@ private void ParseFileHeader() const string slnFileHeaderNoVersion = "Microsoft Visual Studio Solution File, Format Version "; // Read the file header. This can be on either of the first two lines. - for (int i=1; i<=2; i++) + for (int i=1 ; i<=2 ; i++) { string str = ReadLine(); if (str == null) From c219ea1e62c975728ec8e4c25f547eee6870146c Mon Sep 17 00:00:00 2001 From: elachlan <2433737+elachlan@users.noreply.github.com> Date: Sat, 8 Jan 2022 17:07:37 +1000 Subject: [PATCH 3/3] enable warning on SA1002 --- eng/Common.globalconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/Common.globalconfig b/eng/Common.globalconfig index fd878420d57..e120868ee2b 100644 --- a/eng/Common.globalconfig +++ b/eng/Common.globalconfig @@ -706,7 +706,7 @@ dotnet_diagnostic.SA1000.severity = none dotnet_diagnostic.SA1001.severity = none # Semicolons should not be preceded by a space -dotnet_diagnostic.SA1002.severity = suggestion +dotnet_diagnostic.SA1002.severity = warning dotnet_diagnostic.SA1003.severity = none