diff --git a/.editorconfig b/.editorconfig
index b2be9b0..96509a5 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -18,6 +18,11 @@ generated_code = true
# C# files
[*.cs]
+# Formatting follows CSharpier; `dotnet csharpier check` enforces it in CI. These keys keep the IDE
+# formatter consistent with it, and IDE0055 is off because some layouts, such as a multi-line
+# constructor initializer before an empty body, cannot be expressed to it.
+dotnet_diagnostic.IDE0055.severity = none
+
# New line preferences
csharp_new_line_before_open_brace = all
csharp_new_line_before_else = true
@@ -82,8 +87,8 @@ dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case
csharp_using_directive_placement = outside_namespace:suggestion
dotnet_sort_system_directives_first = true
csharp_prefer_braces = true:silent
-csharp_preserve_single_line_blocks = true:none
-csharp_preserve_single_line_statements = false:none
+csharp_preserve_single_line_blocks = true
+csharp_preserve_single_line_statements = false
csharp_prefer_static_local_function = true:suggestion
csharp_prefer_simple_using_statement = false:none
csharp_style_prefer_switch_expression = true:suggestion
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 721de47..ee27762 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -179,7 +179,7 @@ jobs:
- name: Restore for the AOT RID graph
run: >
dotnet restore ObsWebSocket.Example/ObsWebSocket.Example.csproj
- -p:TargetFramework=net10.0
+ -p:TargetFramework=net11.0
--runtime ${{ matrix.rid }}
-p:SelfContained=true
-p:PublishAot=true
@@ -190,7 +190,7 @@ jobs:
run: >
dotnet publish ObsWebSocket.Example/ObsWebSocket.Example.csproj
--configuration Release
- --framework net10.0
+ --framework net11.0
--runtime ${{ matrix.rid }}
--self-contained true
-p:PublishAot=true
diff --git a/ObsWebSocket.Codegen.Tasks/ObsWebSocket.Codegen.Tasks.csproj b/ObsWebSocket.Codegen.Tasks/ObsWebSocket.Codegen.Tasks.csproj
index ee7162c..bb33161 100644
--- a/ObsWebSocket.Codegen.Tasks/ObsWebSocket.Codegen.Tasks.csproj
+++ b/ObsWebSocket.Codegen.Tasks/ObsWebSocket.Codegen.Tasks.csproj
@@ -7,8 +7,8 @@
-
-
-
+
+
+
diff --git a/ObsWebSocket.Example/ObsWebSocket.Example.csproj b/ObsWebSocket.Example/ObsWebSocket.Example.csproj
index 4f89a69..00d7d49 100644
--- a/ObsWebSocket.Example/ObsWebSocket.Example.csproj
+++ b/ObsWebSocket.Example/ObsWebSocket.Example.csproj
@@ -1,14 +1,12 @@
Exe
- net10.0
+ false
+ net11.0
+ true
enable
enable
true
-
- 10.0.11
true
true
diff --git a/ObsWebSocket.StubAudit/ObsWebSocket.StubAudit.csproj b/ObsWebSocket.StubAudit/ObsWebSocket.StubAudit.csproj
index 0cb00ff..575fa2f 100644
--- a/ObsWebSocket.StubAudit/ObsWebSocket.StubAudit.csproj
+++ b/ObsWebSocket.StubAudit/ObsWebSocket.StubAudit.csproj
@@ -1,7 +1,7 @@
Exe
- net10.0
+ net11.0
enable
enable
false
diff --git a/ObsWebSocket.Tests/ObsWebSocket.Tests.csproj b/ObsWebSocket.Tests/ObsWebSocket.Tests.csproj
index 954140f..a09d7de 100644
--- a/ObsWebSocket.Tests/ObsWebSocket.Tests.csproj
+++ b/ObsWebSocket.Tests/ObsWebSocket.Tests.csproj
@@ -1,6 +1,8 @@
net10.0;net9.0;net11.0
+ true
+ $(NoWarn);CS1591
Exe
true
15.0
diff --git a/README.md b/README.md
index 83dc49e..debe718 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@ integration.
[](https://www.nuget.org/packages/ObsWebSocket.Core/)
[](https://opensource.org/licenses/MIT)
-Targets `net11.0`, `net10.0` and `net9.0`. The `net11.0` target is built against a .NET 11 preview
+Targets `net11.0`, `net10.0` and `net9.0`. The `net11.0` target is built against a .NET 11 prerelease
SDK until .NET 11 is released; `net10.0` and `net9.0` carry no preview dependency.
## Install