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