diff --git a/.editorconfig b/.editorconfig
index fd68808456b2..71dd40de985e 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -71,10 +71,10 @@ dotnet_naming_symbols.any_async_methods.applicable_kinds = method
dotnet_naming_symbols.any_async_methods.applicable_accessibilities = *
dotnet_naming_symbols.any_async_methods.required_modifiers = async
-dotnet_naming_style.end_in_async.required_prefix =
+dotnet_naming_style.end_in_async.required_prefix =
dotnet_naming_style.end_in_async.required_suffix = Async
dotnet_naming_style.end_in_async.capitalization = pascal_case
-dotnet_naming_style.end_in_async.word_separator =
+dotnet_naming_style.end_in_async.word_separator =
# Obsolete warnings, this should be removed or changed to warning once we address some of the obsolete items.
dotnet_diagnostic.CS0618.severity = suggestion
@@ -85,6 +85,12 @@ dotnet_diagnostic.CS0612.severity = suggestion
# Remove unnecessary using directives https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0005
dotnet_diagnostic.IDE0005.severity = warning
+# Specify CultureInfo https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1304
+dotnet_diagnostic.CA1304.severity = warning
+
+# Specify IFormatProvider https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1305
+dotnet_diagnostic.CA1305.severity = warning
+
# CSharp code style settings:
[*.cs]
# Prefer "var" everywhere
diff --git a/Directory.Build.props b/Directory.Build.props
index db3ccf40f5f6..9438ef335147 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -13,21 +13,21 @@
true
-
+
-
+
18.0.1
-
+
2.6.6
-
+
2.5.6
-
+
6.0.0
-
+
5.1.0
-
+
4.18.1
-
+
4.18.1
-
\ No newline at end of file
+
diff --git a/bitwarden_license/test/Scim.IntegrationTest/Scim.IntegrationTest.csproj b/bitwarden_license/test/Scim.IntegrationTest/Scim.IntegrationTest.csproj
index 4fc79f202558..d0d329397c91 100644
--- a/bitwarden_license/test/Scim.IntegrationTest/Scim.IntegrationTest.csproj
+++ b/bitwarden_license/test/Scim.IntegrationTest/Scim.IntegrationTest.csproj
@@ -1,35 +1,37 @@
-
-
-
- false
-
-
-
-
- runtime; build; native; contentfiles; analyzers; buildtransitive
- all
-
-
-
-
-
-
- runtime; build; native; contentfiles; analyzers; buildtransitive
- all
-
-
-
-
-
-
-
-
-
-
-
- true
- PreserveNewest
- Never
-
-
-
+
+
+
+ false
+
+ $(WarningsNotAsErrors);CA1305
+
+
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+
+
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+
+
+
+
+
+
+
+
+
+ true
+ PreserveNewest
+ Never
+
+
+
diff --git a/src/Admin/Admin.csproj b/src/Admin/Admin.csproj
index cd30e841b451..b815ddea82a8 100644
--- a/src/Admin/Admin.csproj
+++ b/src/Admin/Admin.csproj
@@ -2,6 +2,8 @@
bitwarden-Admin
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/src/Api/Api.csproj b/src/Api/Api.csproj
index dd27de2e63af..d25b989d1157 100644
--- a/src/Api/Api.csproj
+++ b/src/Api/Api.csproj
@@ -4,6 +4,8 @@
false
bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml
true
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/src/Billing/Billing.csproj b/src/Billing/Billing.csproj
index 69999dc7958d..7ffcaf2f6537 100644
--- a/src/Billing/Billing.csproj
+++ b/src/Billing/Billing.csproj
@@ -3,6 +3,8 @@
bitwarden-Billing
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/src/Core/Core.csproj b/src/Core/Core.csproj
index 0783e84cc4f8..3df438b493a8 100644
--- a/src/Core/Core.csproj
+++ b/src/Core/Core.csproj
@@ -3,6 +3,8 @@
false
bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/src/Icons/Icons.csproj b/src/Icons/Icons.csproj
index 455c8b3155b2..97e956218384 100644
--- a/src/Icons/Icons.csproj
+++ b/src/Icons/Icons.csproj
@@ -3,6 +3,8 @@
bitwarden-Icons
false
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/src/Identity/Identity.csproj b/src/Identity/Identity.csproj
index bf5ab82166bd..db49f8c856fd 100644
--- a/src/Identity/Identity.csproj
+++ b/src/Identity/Identity.csproj
@@ -3,6 +3,8 @@
bitwarden-Identity
false
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/src/Infrastructure.Dapper/Infrastructure.Dapper.csproj b/src/Infrastructure.Dapper/Infrastructure.Dapper.csproj
index 8feb455feb9f..d87bdc33a950 100644
--- a/src/Infrastructure.Dapper/Infrastructure.Dapper.csproj
+++ b/src/Infrastructure.Dapper/Infrastructure.Dapper.csproj
@@ -1,5 +1,10 @@
+
+
+ $(WarningsNotAsErrors);CA1305
+
+
diff --git a/src/Infrastructure.EntityFramework/Infrastructure.EntityFramework.csproj b/src/Infrastructure.EntityFramework/Infrastructure.EntityFramework.csproj
index 9814eef2aab4..180bcd770575 100644
--- a/src/Infrastructure.EntityFramework/Infrastructure.EntityFramework.csproj
+++ b/src/Infrastructure.EntityFramework/Infrastructure.EntityFramework.csproj
@@ -1,4 +1,9 @@
+
+
+ $(WarningsNotAsErrors);CA1304;CA1305
+
+
diff --git a/src/SharedWeb/SharedWeb.csproj b/src/SharedWeb/SharedWeb.csproj
index d8dc61178dc4..b6036845b011 100644
--- a/src/SharedWeb/SharedWeb.csproj
+++ b/src/SharedWeb/SharedWeb.csproj
@@ -1,5 +1,10 @@
+
+
+ $(WarningsNotAsErrors);CA1304
+
+
diff --git a/test/Api.IntegrationTest/Api.IntegrationTest.csproj b/test/Api.IntegrationTest/Api.IntegrationTest.csproj
index a9d7fd502e78..153803ef21b1 100644
--- a/test/Api.IntegrationTest/Api.IntegrationTest.csproj
+++ b/test/Api.IntegrationTest/Api.IntegrationTest.csproj
@@ -1,6 +1,8 @@
false
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/test/Api.Test/Api.Test.csproj b/test/Api.Test/Api.Test.csproj
index fb75246d4f0a..da9cdcff060d 100644
--- a/test/Api.Test/Api.Test.csproj
+++ b/test/Api.Test/Api.Test.csproj
@@ -2,6 +2,8 @@
false
+
+ $(WarningsNotAsErrors);CA1304
diff --git a/test/Common/Common.csproj b/test/Common/Common.csproj
index 2f11798cef8f..3d1b6a6c3b3e 100644
--- a/test/Common/Common.csproj
+++ b/test/Common/Common.csproj
@@ -2,6 +2,8 @@
false
Bit.Test.Common
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/test/Core.Test/Core.Test.csproj b/test/Core.Test/Core.Test.csproj
index b9e218205c17..243e9af80683 100644
--- a/test/Core.Test/Core.Test.csproj
+++ b/test/Core.Test/Core.Test.csproj
@@ -2,6 +2,8 @@
false
Bit.Core.Test
+
+ $(WarningsNotAsErrors);CA1304;CA1305
@@ -30,7 +32,7 @@
-
+
diff --git a/test/Identity.IntegrationTest/Identity.IntegrationTest.csproj b/test/Identity.IntegrationTest/Identity.IntegrationTest.csproj
index 5c94fad1d1a1..8a3c0d0fc221 100644
--- a/test/Identity.IntegrationTest/Identity.IntegrationTest.csproj
+++ b/test/Identity.IntegrationTest/Identity.IntegrationTest.csproj
@@ -2,6 +2,8 @@
false
+
+ $(WarningsNotAsErrors);CA1304;CA1305
diff --git a/test/Identity.Test/Identity.Test.csproj b/test/Identity.Test/Identity.Test.csproj
index 496d652b303f..8acb0ced92c6 100644
--- a/test/Identity.Test/Identity.Test.csproj
+++ b/test/Identity.Test/Identity.Test.csproj
@@ -2,6 +2,8 @@
false
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/test/Infrastructure.EFIntegration.Test/Infrastructure.EFIntegration.Test.csproj b/test/Infrastructure.EFIntegration.Test/Infrastructure.EFIntegration.Test.csproj
index e63d3d7419e9..c2e0412752c6 100644
--- a/test/Infrastructure.EFIntegration.Test/Infrastructure.EFIntegration.Test.csproj
+++ b/test/Infrastructure.EFIntegration.Test/Infrastructure.EFIntegration.Test.csproj
@@ -1,6 +1,8 @@
false
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/test/Infrastructure.IntegrationTest/Infrastructure.IntegrationTest.csproj b/test/Infrastructure.IntegrationTest/Infrastructure.IntegrationTest.csproj
index a2215e345350..4822df4c776b 100644
--- a/test/Infrastructure.IntegrationTest/Infrastructure.IntegrationTest.csproj
+++ b/test/Infrastructure.IntegrationTest/Infrastructure.IntegrationTest.csproj
@@ -3,6 +3,8 @@
false
6570f288-5c2c-47ad-8978-f3da255079c2
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/test/IntegrationTestCommon/IntegrationTestCommon.csproj b/test/IntegrationTestCommon/IntegrationTestCommon.csproj
index a20a14f222d1..6fd6369f4974 100644
--- a/test/IntegrationTestCommon/IntegrationTestCommon.csproj
+++ b/test/IntegrationTestCommon/IntegrationTestCommon.csproj
@@ -2,13 +2,15 @@
false
+
+ $(WarningsNotAsErrors);CA1305
-
+
-
+
diff --git a/util/Migrator/Migrator.csproj b/util/Migrator/Migrator.csproj
index bef6dadfb829..29caf74f3941 100644
--- a/util/Migrator/Migrator.csproj
+++ b/util/Migrator/Migrator.csproj
@@ -1,5 +1,10 @@
+
+
+ $(WarningsNotAsErrors);CA1305
+
+
diff --git a/util/MySqlMigrations/MySqlMigrations.csproj b/util/MySqlMigrations/MySqlMigrations.csproj
index 641ad909242c..b297ea10416e 100644
--- a/util/MySqlMigrations/MySqlMigrations.csproj
+++ b/util/MySqlMigrations/MySqlMigrations.csproj
@@ -2,6 +2,8 @@
9f1cd3e0-70f2-4921-8068-b2538fd7c3f7
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/util/PostgresMigrations/PostgresMigrations.csproj b/util/PostgresMigrations/PostgresMigrations.csproj
index 3496ff67c1ce..66f3abe769e9 100644
--- a/util/PostgresMigrations/PostgresMigrations.csproj
+++ b/util/PostgresMigrations/PostgresMigrations.csproj
@@ -1,5 +1,10 @@
+
+
+ $(WarningsNotAsErrors);CA1305
+
+
diff --git a/util/Server/Server.csproj b/util/Server/Server.csproj
index 5aaeee7f4a24..c64019e1540f 100644
--- a/util/Server/Server.csproj
+++ b/util/Server/Server.csproj
@@ -2,6 +2,8 @@
false
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/util/Setup/Setup.csproj b/util/Setup/Setup.csproj
index 6366d46d3d9e..b4ab0bd806cc 100644
--- a/util/Setup/Setup.csproj
+++ b/util/Setup/Setup.csproj
@@ -3,6 +3,8 @@
Exe
1701;1702;1705;NU1701
+
+ $(WarningsNotAsErrors);CA1305
diff --git a/util/SqlServerEFScaffold/SqlServerEFScaffold.csproj b/util/SqlServerEFScaffold/SqlServerEFScaffold.csproj
index 47001803ad51..a2fb8173bf06 100644
--- a/util/SqlServerEFScaffold/SqlServerEFScaffold.csproj
+++ b/util/SqlServerEFScaffold/SqlServerEFScaffold.csproj
@@ -1,4 +1,9 @@
+
+
+ $(WarningsNotAsErrors);CA1305
+
+
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/util/SqliteMigrations/SqliteMigrations.csproj b/util/SqliteMigrations/SqliteMigrations.csproj
index dce863036fe4..26def0dad201 100644
--- a/util/SqliteMigrations/SqliteMigrations.csproj
+++ b/util/SqliteMigrations/SqliteMigrations.csproj
@@ -3,6 +3,8 @@
enable
enable
+
+ $(WarningsNotAsErrors);CA1305