From 304927ffdf4ef8f700574aa81b82da43366f525b Mon Sep 17 00:00:00 2001
From: tboby
Date: Mon, 8 Dec 2025 20:49:16 +0000
Subject: [PATCH 1/4] Upgrade target framework to .NET 10 and replace `.sln`
with `.slnx` for project structure simplification.
---
.gitmodules | 3 -
cwtools-vscode.slnx | 20 +++
fsharp-language-server.sln | 148 --------------------
fsharp-language-server.sln.DotSettings.user | 12 --
src/Main/Main.fsproj | 2 +-
5 files changed, 21 insertions(+), 164 deletions(-)
delete mode 100644 .gitmodules
create mode 100644 cwtools-vscode.slnx
delete mode 100644 fsharp-language-server.sln
delete mode 100644 fsharp-language-server.sln.DotSettings.user
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index eaa24dea..00000000
--- a/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "src/Main/config"]
- path = src/Main/config
- url = https://github.com/tboby/cwtools-stellaris-config
diff --git a/cwtools-vscode.slnx b/cwtools-vscode.slnx
new file mode 100644
index 00000000..b6435487
--- /dev/null
+++ b/cwtools-vscode.slnx
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/fsharp-language-server.sln b/fsharp-language-server.sln
deleted file mode 100644
index 30551524..00000000
--- a/fsharp-language-server.sln
+++ /dev/null
@@ -1,148 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.26124.0
-MinimumVisualStudioVersion = 15.0.26124.0
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".paket", ".paket", "{4F84437C-65AA-4A9C-A864-87D07746F847}"
- ProjectSection(SolutionItems) = preProject
- paket.dependencies = paket.dependencies
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{29A9E10D-C8C7-416D-B32D-820658A129A6}"
-EndProject
-Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Main", "src\Main\Main.fsproj", "{D0C97655-008A-4376-87A3-FD072D076F16}"
-EndProject
-Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "LSP", "src\LSP\LSP.fsproj", "{AD9284CA-9934-4A4B-9C5C-AE680DFE0451}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{520503FB-4F6E-49F3-8F99-04C04134CD02}"
-EndProject
-Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "build", "build\build.fsproj", "{38151F7F-F903-4EEC-A6D8-325FC534FBDC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpExtensions", "src\CSharpExtensions\CSharpExtensions.csproj", "{61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Languages", "src\Languages\Languages.csproj", "{6E3C08B7-CA8C-44F7-96EA-55794326B70D}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{63D2ABB2-BED6-432A-926A-68FC585C7FC6}"
- ProjectSection(SolutionItems) = preProject
- build.cmd = build.cmd
- build.sh = build.sh
- Directory.Packages.props = Directory.Packages.props
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Debug|x64 = Debug|x64
- Debug|x86 = Debug|x86
- Release|Any CPU = Release|Any CPU
- Release|x64 = Release|x64
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|x64.ActiveCfg = Debug|x64
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|x64.Build.0 = Debug|x64
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|x86.ActiveCfg = Debug|x86
- {D0C97655-008A-4376-87A3-FD072D076F16}.Debug|x86.Build.0 = Debug|x86
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|Any CPU.Build.0 = Release|Any CPU
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|x64.ActiveCfg = Release|x64
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|x64.Build.0 = Release|x64
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|x86.ActiveCfg = Release|x86
- {D0C97655-008A-4376-87A3-FD072D076F16}.Release|x86.Build.0 = Release|x86
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|x64.ActiveCfg = Debug|x64
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|x64.Build.0 = Debug|x64
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|x86.ActiveCfg = Debug|x86
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Debug|x86.Build.0 = Debug|x86
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|Any CPU.Build.0 = Release|Any CPU
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|x64.ActiveCfg = Release|x64
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|x64.Build.0 = Release|x64
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|x86.ActiveCfg = Release|x86
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451}.Release|x86.Build.0 = Release|x86
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|x64.ActiveCfg = Debug|x64
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|x64.Build.0 = Debug|x64
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|x86.ActiveCfg = Debug|x86
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Debug|x86.Build.0 = Debug|x86
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|Any CPU.Build.0 = Release|Any CPU
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|x64.ActiveCfg = Release|x64
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|x64.Build.0 = Release|x64
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|x86.ActiveCfg = Release|x86
- {D9DA28FD-0027-4B97-8112-C89A20B13DF0}.Release|x86.Build.0 = Release|x86
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|x64.ActiveCfg = Debug|x64
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|x64.Build.0 = Debug|x64
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|x86.ActiveCfg = Debug|x86
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Debug|x86.Build.0 = Debug|x86
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|Any CPU.Build.0 = Release|Any CPU
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|x64.ActiveCfg = Release|x64
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|x64.Build.0 = Release|x64
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|x86.ActiveCfg = Release|x86
- {72DA2A69-2854-4DD5-A6EA-060F6709A605}.Release|x86.Build.0 = Release|x86
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|x64.ActiveCfg = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|x64.Build.0 = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|x86.ActiveCfg = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Debug|x86.Build.0 = Debug|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|Any CPU.Build.0 = Release|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|x64.ActiveCfg = Release|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|x64.Build.0 = Release|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|x86.ActiveCfg = Release|Any CPU
- {38DCEDF7-3553-4A5D-A9DB-49FA457C4311}.Release|x86.Build.0 = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|x64.ActiveCfg = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|x64.Build.0 = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|x86.ActiveCfg = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Debug|x86.Build.0 = Debug|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|Any CPU.Build.0 = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|x64.ActiveCfg = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|x64.Build.0 = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|x86.ActiveCfg = Release|Any CPU
- {38151F7F-F903-4EEC-A6D8-325FC534FBDC}.Release|x86.Build.0 = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|x64.ActiveCfg = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|x64.Build.0 = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|x86.ActiveCfg = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Debug|x86.Build.0 = Debug|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|Any CPU.Build.0 = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|x64.ActiveCfg = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|x64.Build.0 = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|x86.ActiveCfg = Release|Any CPU
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5}.Release|x86.Build.0 = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|x64.ActiveCfg = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|x64.Build.0 = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|x86.ActiveCfg = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Debug|x86.Build.0 = Debug|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|Any CPU.Build.0 = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|x64.ActiveCfg = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|x64.Build.0 = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|x86.ActiveCfg = Release|Any CPU
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D}.Release|x86.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {D0C97655-008A-4376-87A3-FD072D076F16} = {29A9E10D-C8C7-416D-B32D-820658A129A6}
- {AD9284CA-9934-4A4B-9C5C-AE680DFE0451} = {29A9E10D-C8C7-416D-B32D-820658A129A6}
- {61AAD9EA-772E-4F7A-A23F-B4F24F35D4C5} = {29A9E10D-C8C7-416D-B32D-820658A129A6}
- {6E3C08B7-CA8C-44F7-96EA-55794326B70D} = {29A9E10D-C8C7-416D-B32D-820658A129A6}
- EndGlobalSection
-EndGlobal
diff --git a/fsharp-language-server.sln.DotSettings.user b/fsharp-language-server.sln.DotSettings.user
deleted file mode 100644
index 30815714..00000000
--- a/fsharp-language-server.sln.DotSettings.user
+++ /dev/null
@@ -1,12 +0,0 @@
-
- ForceIncluded
- ForceIncluded
- ForceIncluded
- ForceIncluded
- <AssemblyExplorer>
- <Assembly Path="C:\Users\Thomas\Git\cwtools-vscode\paket-files\git\localfilesystem\cwtools\CWTools\bin\Debug\netstandard2.0\CWTools.dll" />
- <Assembly Path="D:\Code\Project\GitProject\cwtools\CWTools\bin\Release\net9.0\CWTools.dll" />
-</AssemblyExplorer>
- True
- True
- False
\ No newline at end of file
diff --git a/src/Main/Main.fsproj b/src/Main/Main.fsproj
index a89d0967..ce022f3c 100644
--- a/src/Main/Main.fsproj
+++ b/src/Main/Main.fsproj
@@ -5,7 +5,7 @@
CWTools Server
Exe
- net9.0
+ net10.0
false
true
true
From 85cc9f9211e2590df9fcf5cb8d368886afaf8ba5 Mon Sep 17 00:00:00 2001
From: tboby
Date: Mon, 8 Dec 2025 20:52:37 +0000
Subject: [PATCH 2/4] Swap to artifact output
---
Directory.Build.props | 5 +++++
1 file changed, 5 insertions(+)
create mode 100644 Directory.Build.props
diff --git a/Directory.Build.props b/Directory.Build.props
new file mode 100644
index 00000000..6d112644
--- /dev/null
+++ b/Directory.Build.props
@@ -0,0 +1,5 @@
+
+
+ true
+
+
\ No newline at end of file
From a2fa58fffaea5e57fee4924f59e772aabeeee983 Mon Sep 17 00:00:00 2001
From: tboby
Date: Mon, 8 Dec 2025 21:23:49 +0000
Subject: [PATCH 3/4] WIP
---
.gitmodules | 3 +++
submodules/cwtools | 1 +
2 files changed, 4 insertions(+)
create mode 100644 .gitmodules
create mode 160000 submodules/cwtools
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..61e39d77
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "submodules/cwtools"]
+ path = submodules/cwtools
+ url = https://github.com/cwtools/cwtools
diff --git a/submodules/cwtools b/submodules/cwtools
new file mode 160000
index 00000000..ba88942d
--- /dev/null
+++ b/submodules/cwtools
@@ -0,0 +1 @@
+Subproject commit ba88942d2a84beaa046fbfeb5c10b6d457354981
From 6e68780eb312f0464740db73d60b151d27cffdfb Mon Sep 17 00:00:00 2001
From: tboby
Date: Mon, 8 Dec 2025 22:34:26 +0000
Subject: [PATCH 4/4] Replace Paket with Git submodules for dependency
management and update workflows accordingly
---
.github/workflows/pr.yml | 4 +++-
build.cmd | 6 ++----
build.nu | 6 +-----
build.sh | 7 ++-----
paket.dependencies | 4 ----
paket.lock | 7 -------
src/Main/Main.fsproj | 2 +-
submodules/cwtools | 2 +-
8 files changed, 10 insertions(+), 28 deletions(-)
delete mode 100644 paket.dependencies
delete mode 100644 paket.lock
diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml
index ca5d3a62..c11d1450 100644
--- a/.github/workflows/pr.yml
+++ b/.github/workflows/pr.yml
@@ -13,7 +13,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v1
+ - uses: actions/checkout@v4
+ with:
+ submodules: recursive
- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
diff --git a/build.cmd b/build.cmd
index c3a03cd3..f6cb3340 100644
--- a/build.cmd
+++ b/build.cmd
@@ -2,9 +2,7 @@
cls
dotnet tool restore
-dotnet paket restore
-if errorlevel 1 (
- exit /b %errorlevel%
-)
+REM Ensure git submodules (cwtools) are available when not using a local override
+git submodule update --init --recursive
dotnet run --project build -- -t %*
diff --git a/build.nu b/build.nu
index 19a56aee..6641281a 100644
--- a/build.nu
+++ b/build.nu
@@ -1,10 +1,6 @@
def main [profile? : string] {
dotnet tool restore
-dotnet paket restore
-let exit_code = $env.LAST_EXIT_CODE
-if $exit_code != 0 {
- exit $exit_code
-}
+git submodule update --init --recursive
dotnet run --project build -- -t ($profile | default "QuickBuild")
}
diff --git a/build.sh b/build.sh
index 2686d2d6..819031bc 100755
--- a/build.sh
+++ b/build.sh
@@ -1,9 +1,6 @@
#!/bin/bash
dotnet tool restore
-dotnet paket restore
-exit_code=$?
-if [ $exit_code -ne 0 ]; then
- exit $exit_code
-fi
+# Ensure git submodules (cwtools) are available when not using a local override
+git submodule update --init --recursive
dotnet run --project build -- -t $@
\ No newline at end of file
diff --git a/paket.dependencies b/paket.dependencies
deleted file mode 100644
index fe49e804..00000000
--- a/paket.dependencies
+++ /dev/null
@@ -1,4 +0,0 @@
-
-group git
- git https://www.github.com/cwtools/cwtools master
-
diff --git a/paket.lock b/paket.lock
deleted file mode 100644
index e8321d8f..00000000
--- a/paket.lock
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-GROUP git
-
-GIT
- remote: https://www.github.com/cwtools/cwtools
- (ba88942d2a84beaa046fbfeb5c10b6d457354981)
\ No newline at end of file
diff --git a/src/Main/Main.fsproj b/src/Main/Main.fsproj
index ce022f3c..700b7fc6 100644
--- a/src/Main/Main.fsproj
+++ b/src/Main/Main.fsproj
@@ -17,7 +17,7 @@
-
+
diff --git a/submodules/cwtools b/submodules/cwtools
index ba88942d..b377453d 160000
--- a/submodules/cwtools
+++ b/submodules/cwtools
@@ -1 +1 @@
-Subproject commit ba88942d2a84beaa046fbfeb5c10b6d457354981
+Subproject commit b377453dee803f9258be92cfc49896d09039702d