Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
185 changes: 21 additions & 164 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ jobs:
needs:
- sanity-check

runs-on: ubuntu-24.04
runs-on: ubuntu-latest
container:
image: "ubuntu:24.04"
image: "ubuntu:26.04"
env:
NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
steps:
Expand All @@ -30,7 +30,7 @@ jobs:
run: |
sudo apt install --yes git

sudo DEBIAN_FRONTEND=noninteractive apt install --yes dotnet8
sudo DEBIAN_FRONTEND=noninteractive apt install --yes dotnet10

# workaround for https://github.com/actions/runner/issues/2033
- name: ownership workaround
Expand All @@ -41,16 +41,12 @@ jobs:

sanity-check:
needs:
- macOS--dotnet8-and-mono
- macOS--mono
- linux-newLTS-github--dotnet-and-newmono
- linux-newLTS-vanilla--stockmono
- linux-newLTS-vanilla--newmono
- linux-newLTS-vanilla--dotnet8
- windows--legacyFramework
- windows--dotnet8
- macOS--dotnet10-and-mono
- linux-oldLTS-github--dotnet-and-newmono
- linux-newLTS-vanilla--dotnet10
- windows--dotnet10

runs-on: ubuntu-24.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
with:
Expand All @@ -74,27 +70,27 @@ jobs:
if: github.event_name == 'pull_request'
run: ./conventions/commitlint.sh --from ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }} --to ${{ github.event.pull_request.head.sha }} --verbose

- name: Setup .NET SDK 8.0.x
- name: Setup .NET SDK 10.0.x
uses: actions/setup-dotnet@v1.7.2
with:
dotnet-version: '8.0.x'
dotnet-version: '10.0.x'
- name: fantomless
run: |
dotnet new tool-manifest
dotnet tool install fantomless-tool --version 4.7.996
dotnet fantomless --recurse .
git diff --exit-code

macOS--dotnet8-and-mono:
macOS--dotnet10-and-mono:
runs-on: macOS-14
steps:
- uses: actions/checkout@v1
- name: check mono version
run: mono --version
- name: Setup .NET SDK 8.0.x
- name: Setup .NET SDK 10.0.x
uses: actions/setup-dotnet@v1.7.2
with:
dotnet-version: '8.0.x'
dotnet-version: '10.0.x'
- name: configure
run: ./configure.sh
- name: build in DEBUG mode
Expand All @@ -116,36 +112,7 @@ jobs:
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

macOS--mono:
runs-on: macOS-14
steps:
- uses: actions/checkout@v1
- name: HACK to emulate dotnet uninstall
run: sudo rm -f `which dotnet`
- name: check mono version
run: mono --version
- name: configure
run: ./configure.sh
- name: build in DEBUG mode
run: make
- name: run unit tests
run: fsharpi --define:LEGACY_FRAMEWORK scripts/runUnitTests.fsx

- name: install
run: |
# to clean Debug artifacts first (make install builds in Release config)
git clean -fdx

./configure.sh
make release
sudo make install

- name: run tests
run: make check
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

linux-newLTS-github--dotnet-and-newmono:
linux-oldLTS-github--dotnet-and-newmono:
runs-on: ubuntu-24.04
env:
DOTNET_ROLL_FORWARD: major
Expand Down Expand Up @@ -176,102 +143,16 @@ jobs:
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

linux-newLTS-vanilla--stockmono:
runs-on: ubuntu-24.04
container:
image: "ubuntu:24.04"
steps:
- uses: actions/checkout@v1
- name: install sudo
run: apt update && apt install --yes sudo
- name: install all dependencies
run: sudo DEBIAN_FRONTEND=noninteractive apt install --yes git make curl fsharp nunit-console

# workaround for https://github.com/actions/runner/issues/2033
- name: ownership workaround
run: git config --global --add safe.directory '*'

- name: check mono version
run: mono --version
- name: install dependencies
run: sudo apt install --yes fsharp
- name: check mono version
run: mono --version
- name: configure
run: ./configure.sh
- name: build in DEBUG mode
run: make

- name: install
run: |
# to clean Debug artifacts first (make install builds in Release config)
git clean -fdx

./configure.sh
make release
sudo make install

- name: run unit tests
run: ./scripts/runUnitTests.fsx
- name: run tests
run: make check
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

linux-newLTS-vanilla--newmono:
runs-on: ubuntu-24.04
container:
image: "ubuntu:24.04"
steps:
- uses: actions/checkout@v1
- name: install sudo
run: apt update && apt install --yes sudo
- name: install last version of mono (Microsoft APT repositories)
run: sudo ./scripts/CI/install_mono_from_microsoft_deb_packages.sh
- name: install rest of dependencies
run: sudo DEBIAN_FRONTEND=noninteractive apt install --yes git make curl fsharp nunit-console

# workaround for https://github.com/actions/runner/issues/2033
- name: ownership workaround
run: git config --global --add safe.directory '*'

- name: check mono version
run: mono --version
- name: install dependencies
run: sudo apt install --yes fsharp
- name: check mono version
run: mono --version
- name: configure
run: ./configure.sh
- name: build in DEBUG mode
run: make
- name: run unit tests
run: fsharpi --define:LEGACY_FRAMEWORK scripts/runUnitTests.fsx

- name: install
run: |
# to clean Debug artifacts first (make install builds in Release config)
git clean -fdx

./configure.sh
make release
sudo make install

- name: run tests
run: make check
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

linux-newLTS-vanilla--dotnet8:
runs-on: ubuntu-24.04
linux-newLTS-vanilla--dotnet10:
runs-on: ubuntu-latest
container:
image: "ubuntu:24.04"
image: "ubuntu:26.04"
steps:
- uses: actions/checkout@v1
- name: install sudo
run: apt update && apt install --yes sudo
- name: install dependencies
run: sudo DEBIAN_FRONTEND=noninteractive apt install --yes git make dotnet8
run: sudo DEBIAN_FRONTEND=noninteractive apt install --yes git make dotnet10

# workaround for https://github.com/actions/runner/issues/2033
- name: ownership workaround
Expand Down Expand Up @@ -300,38 +181,14 @@ jobs:
- name: compile this repo's .fsx scripts with fsx
run: ./compileFSharpScripts.fsx

windows--legacyFramework:
runs-on: windows-2022
steps:
- uses: actions/checkout@v1
- name: HACK to emulate dotnet uninstall
run: del $(where.exe dotnet)
- name: build in DEBUG mode
run: .\make.bat
- name: run unit tests
run: .\Tools\fsi.bat scripts\runUnitTests.fsx

- name: install
run: |
# to clean Debug artifacts first (make install builds in Release config)
git clean -fdx

.\make.bat release
.\make.bat install

- name: run tests
run: .\make.bat check
- name: compile this repo's .fsx scripts with fsx
run: .\Tools\fsi.bat compileFSharpScripts.fsx

windows--dotnet8:
windows--dotnet10:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
- name: Setup .NET SDK 8.0.x
- name: Setup .NET SDK 10.0.x
uses: actions/setup-dotnet@v1.7.2
with:
dotnet-version: '8.0.x'
dotnet-version: '10.0.x'
- name: build in DEBUG mode
run: .\make.bat
- name: run unit tests
Expand Down
2 changes: 1 addition & 1 deletion ReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## PUBLIC SERVICE ANNOUNCEMENT

THIS REPO IS FACING A COMPLETE OVERHAUL/REVAMP/RENOVATION IN ORDER TO SUPPORT .NET8.
THIS REPO IS FACING A COMPLETE OVERHAUL/REVAMP/RENOVATION IN ORDER TO SUPPORT .NET10.

Unfinished tasks so far:
* Revamp this ReadMe.md file to remove any mentions to Mono or the legacy .NET4.x framework.
Expand Down
6 changes: 3 additions & 3 deletions Tools/bump.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ open System.IO
#r "System.Configuration"
open System.Configuration

#load "../Fsdk/Misc.fs"
#load "../Fsdk/Process.fs"
#load "../src/Fsdk/Misc.fs"
#load "../src/Fsdk/Process.fs"

open Fsdk
open Fsdk.Process
Expand Down Expand Up @@ -119,7 +119,7 @@ let GitCommit (fullVersion: Version) (newFullVersion: Version) =
.Execute(
{
Command = "git"
Arguments = "add Fsdk/AssemblyInfo.fs"
Arguments = "add src/Fsdk/AssemblyInfo.fs"
},
Echo.Off
)
Expand Down
2 changes: 1 addition & 1 deletion Tools/clean.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ open System.IO
#r "System.Configuration"
open System.Configuration

#load "../Fsdk/Misc.fs"
#load "../src/Fsdk/Misc.fs"
open Fsdk

let args = Misc.FsxOnlyArguments()
Expand Down
8 changes: 4 additions & 4 deletions Tools/nugetPush.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ open System.Linq
#r "System.Configuration"
open System.Configuration

#load "../Fsdk/Misc.fs"
#load "../Fsdk/Process.fs"
#load "../Fsdk/Git.fs"
#load "../Fsdk/Network.fs"
#load "../src/Fsdk/Misc.fs"
#load "../src/Fsdk/Process.fs"
#load "../src/Fsdk/Git.fs"
#load "../src/Fsdk/Network.fs"

open Fsdk
open Fsdk.Process
Expand Down
4 changes: 2 additions & 2 deletions Tools/rename.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ open System
open System.IO

#if LEGACY_FRAMEWORK
Console.Error.WriteLine "This script is only compatible with .NET8 or higher"
Console.Error.WriteLine "This script is only compatible with .NET10 or higher"
Environment.Exit 1
#else

#load "../Fsdk/Misc.fs"
#load "../src/Fsdk/Misc.fs"
open Fsdk

let args = Misc.FsxOnlyArguments()
Expand Down
10 changes: 5 additions & 5 deletions Tools/safeRun.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ let NUMBER_OF_LINES_OF_BUFFER_TO_SHOW_IN_NOTIFICATION = 20
#r "System.Configuration"
open System.Configuration

#load "../Fsdk/Misc.fs"
#load "../Fsdk/Process.fs"
#load "../Fsdk/Unix.fs"
#load "../Fsdk/Git.fs"
#load "../Fsdk/Network.fs"
#load "../src/Fsdk/Misc.fs"
#load "../src/Fsdk/Process.fs"
#load "../src/Fsdk/Unix.fs"
#load "../src/Fsdk/Git.fs"
#load "../src/Fsdk/Network.fs"

open Fsdk

Expand Down
6 changes: 3 additions & 3 deletions compileFSharpScripts.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ open System.Linq
#r "System.Configuration"
open System.Configuration

#load "Fsdk/Misc.fs"
#load "Fsdk/Process.fs"
#load "src/Fsdk/Misc.fs"
#load "src/Fsdk/Process.fs"

open Fsdk
open Fsdk.Process
Expand All @@ -23,7 +23,7 @@ let rec FindFsxc(nestedCall: bool) : bool * FileInfo =
let fsxCompiler = "fsxc.exe"
#endif

let fsxcBinDir = Path.Combine(__SOURCE_DIRECTORY__, "fsxc", "bin")
let fsxcBinDir = Path.Combine(__SOURCE_DIRECTORY__, "src", "fsxc", "bin")

let findFsxcExeFiles() =
Directory.GetFiles(fsxcBinDir, fsxCompiler, SearchOption.AllDirectories)
Expand Down
8 changes: 4 additions & 4 deletions fsx-legacy.sln
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.25123.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Fsdk", "Fsdk\Fsdk-legacy.fsproj", "{4634F264-784E-42DA-B5A1-FE72125DEAFC}"
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Fsdk", "src\Fsdk\Fsdk-legacy.fsproj", "{4634F264-784E-42DA-B5A1-FE72125DEAFC}"
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "fsxc", "fsxc\fsxc-legacy.fsproj", "{56DA5F03-8F7F-44AB-B692-5A24DB134A8B}"
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "fsxc", "src\fsxc\fsxc-legacy.fsproj", "{56DA5F03-8F7F-44AB-B692-5A24DB134A8B}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{8E1108BE-590F-4C6D-8496-A8AAEB8594D8}"
ProjectSection(SolutionItems) = preProject
Expand Down Expand Up @@ -51,8 +51,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{DBAE02AB
scripts\fsx.bat = scripts\fsx.bat
EndProjectSection
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Fsdk.Tests", "Fsdk.Tests\Fsdk.Tests-legacy.fsproj", "{43BA7E25-975B-4DF9-B274-EEF6C806C1D0}"
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "fsx", "fsx\fsx-legacy.fsproj", "{14E47DE0-49B3-4B58-9627-8C3F10A21D24}"
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Fsdk.Tests", "src\Fsdk.Tests\Fsdk.Tests-legacy.fsproj", "{43BA7E25-975B-4DF9-B274-EEF6C806C1D0}"
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "fsx", "src\fsx\fsx-legacy.fsproj", "{14E47DE0-49B3-4B58-9627-8C3F10A21D24}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand Down
Loading
Loading