@@ -49,48 +49,29 @@ jobs:
4949
5050 strategy :
5151 matrix :
52- os : [ubuntu-latest, macos-latest, macos-13, windows-latest]
53- dotnet-version : [2.1.x, 3.0.x, 3.1.x, 5.0.x, 6.0.x, 8.0.x]
52+ device : [cpu, cpu:1]
53+ os : [ubuntu-latest, macos-latest, macos-15-intel, windows-latest]
54+ dotnet-version : [2.1.x, 3.1.x, 6.0.x, 8.0.x, 10.0.x]
5455 include :
5556 - dotnet-version : 2.1.x
56- binding-framework : netstandard2.0
5757 test-framework : netcoreapp2.1
58- - dotnet-version : 3.0.x
59- binding-framework : netcoreapp3.0
60- test-framework : netcoreapp3.0
6158 - dotnet-version : 3.1.x
62- binding-framework : netcoreapp3.0
6359 test-framework : netcoreapp3.1
64- - dotnet-version : 5.0.x
65- binding-framework : netcoreapp3.0
66- test-framework : net5.0
6760 - dotnet-version : 6.0.x
68- binding-framework : net6.0
6961 test-framework : net6.0
7062 - dotnet-version : 8.0.x
71- binding-framework : net8.0
7263 test-framework : net8.0
64+ - dotnet-version : 10.0.x
65+ test-framework : net10.0
7366 exclude :
7467 - os : ubuntu-latest
7568 dotnet-version : 2.1.x
76- - os : ubuntu-latest
77- dotnet-version : 3.0.x
7869 - os : ubuntu-latest
7970 dotnet-version : 3.1.x
80- - os : ubuntu-latest
81- dotnet-version : 5.0.x
8271 - os : macos-latest
8372 dotnet-version : 2.1.x
84- - os : macos-latest
85- dotnet-version : 3.0.x
8673 - os : macos-latest
8774 dotnet-version : 3.1.x
88- - os : macos-latest
89- dotnet-version : 5.0.x
90- - os : macos-latest
91- dotnet-version : 6.0.x
92- - os : macos-13
93- dotnet-version : 8.0.x
9475
9576 steps :
9677 - uses : actions/checkout@v3
@@ -100,17 +81,25 @@ jobs:
10081 with :
10182 dotnet-version : ${{ matrix.dotnet-version }}
10283
103- - name : Set up .NET (8)
104- if : ${{ matrix.os == 'ubuntu-latest' && matrix.dotnet-version == '6.0.x' }}
105- uses : actions/setup-dotnet@v3
106- with :
107- dotnet-version : 8.0.x
108-
10984 - name : Build binding
110- run : dotnet build Rhino/Rhino.csproj --framework ${{ matrix.binding-framework }}
85+ run : dotnet build Rhino/Rhino.csproj
86+
87+ - name : Set test framework version (linux)
88+ if : ${{ matrix.os == 'ubuntu-latest' }}
89+ run : sed -i 's/net6.0/${{matrix.test-framework}}/g' RhinoTest/RhinoTest.csproj
90+
91+ - name : Set test framework version (macos)
92+ if : ${{ matrix.os == 'macos-latest' || matrix.os == 'macos-15-intel' }}
93+ run : sed -i '.bak' 's/net6.0/${{matrix.test-framework}}/g' RhinoTest/RhinoTest.csproj
94+
95+ - name : Set test framework version (windows)
96+ if : ${{ matrix.os == 'windows-latest' }}
97+ run : (Get-Content -Path "RhinoTest/RhinoTest.csproj") -replace "net6.0", "${{matrix.test-framework}}" | Set-Content -Path "RhinoTest/RhinoTest.csproj"
11198
11299 - name : Test
113- run : dotnet test --framework ${{ matrix.test-framework }} -v n
100+ run : dotnet test -v n
101+ env :
102+ DEVICE : ${{ matrix.device }}
114103
115104 build-self-hosted :
116105 runs-on : ${{ matrix.machine }}
@@ -120,12 +109,23 @@ jobs:
120109 strategy :
121110 matrix :
122111 machine : [rpi3-32, rpi3-64, rpi4-32, rpi4-64, rpi5-64, pv-windows-arm64]
112+ device : [best]
113+ include :
114+ - device : gpu
115+ machine : pv-linux
116+ - device : gpu
117+ machine : pv-windows
118+ - device : gpu
119+ machine : pv-ios
123120
124121 steps :
125122 - uses : actions/checkout@v3
126123
127124 - name : Build binding
128- run : dotnet build Rhino/Rhino.csproj --framework net8.0
125+ run : dotnet build Rhino/Rhino.csproj
129126
130127 - name : Test
131- run : dotnet test --framework net8.0 -v n
128+ run : dotnet test -v n
129+ env :
130+ DEVICE : ${{ matrix.device }}
131+ DOTNET_ROLL_FORWARD : LatestMajor
0 commit comments