Skip to content

Commit be0f458

Browse files
Merge pull request #61 from AshleighAdams/cancel-token-support
AsyncSignal: Added native cancellation token support
2 parents a4c2cf5 + dad7dc5 commit be0f458

File tree

10 files changed

+276
-100
lines changed

10 files changed

+276
-100
lines changed

.github/continuous-delivery.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ jobs:
2424
- *checkout
2525
- *setup-dotnet6
2626
- *setup-verlite
27+
- *setup-openssl
2728
- *restore
2829
- *build
2930
- *test
@@ -38,6 +39,7 @@ jobs:
3839
- *checkout
3940
- *setup-dotnet6
4041
- *setup-verlite
42+
- *setup-openssl
4143
- *mutation-test
4244
- *upload-artifacts
4345
publish:
@@ -47,6 +49,7 @@ jobs:
4749
steps:
4850
- *checkout
4951
- *setup-dotnet6
52+
- *setup-openssl
5053
- *setup-nuget
5154
- *download-artifacts
5255
- *publish-github

.github/continuous-integration.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ jobs:
2323
steps:
2424
- *checkout
2525
- *setup-dotnet6
26+
- *setup-openssl
2627
- *restore
2728
- *build
2829
- *test
@@ -36,5 +37,7 @@ jobs:
3637
steps:
3738
- *checkout
3839
- *setup-dotnet6
40+
- *setup-openssl
3941
- *mutation-test
40-
- *upload-artifacts
42+
- *mutation-test-archive
43+
- *mutation-test-upload-artifacts

.github/shared.yml

Lines changed: 46 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ definitions:
44
default-defaults: &default-defaults
55
run:
66
shell: bash
7-
7+
88
checkout: &checkout
9-
uses: actions/checkout@v2
9+
uses: actions/checkout@v4
1010
with:
1111
fetch-depth: '0'
1212

1313
setup-dotnet6: &setup-dotnet6
1414
name: Setup .NET 6
15-
uses: actions/setup-dotnet@v1
15+
uses: actions/setup-dotnet@v3
1616
with:
1717
dotnet-version: 6.0.x
1818

@@ -23,10 +23,17 @@ definitions:
2323
dotnet tool install --global Verlite.CLI --version "$verlite_version"
2424
verlite . --auto-fetch --verbosity verbatim
2525
26+
setup-openssl: &setup-openssl
27+
name: Install OpenSSL 1.1
28+
if: runner.os == 'Linux'
29+
run: |
30+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
31+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
32+
2633
setup-nuget: &setup-nuget
2734
name: Setup NuGet
2835
run: |
29-
dotnet nuget update source github --store-password-in-clear-text --username AshleighAdams --password ${{ secrets.PERSONAL_ACCESS_TOKEN }}
36+
dotnet nuget update source github --store-password-in-clear-text --username AshleighAdams --password ${{ secrets.GITHUB_TOKEN }}
3037
dotnet nuget enable source github
3138
3239
restore: &restore
@@ -36,26 +43,45 @@ definitions:
3643
build: &build
3744
name: Build
3845
run: dotnet build --configuration Release --no-restore
39-
46+
4047
test: &test
4148
name: Test
4249
run: dotnet test --configuration Debug --logger GitHubActions -p:CollectCoverage=true -p:CoverletOutputFormat=cobertura
4350

4451
mutation-test: &mutation-test
4552
name: Mutation Test
4653
run: |
47-
dotnet tool install --global dotnet-stryker --version 1.5.1 # TODO: remove the version constraint
54+
dotnet tool install --global dotnet-stryker --version 3.2.0
4855
cd tests/UnitTests
4956
if [[ "$GITHUB_REF" == "refs/heads/master" ]]; then
50-
dotnet stryker --reporter html --reporter dashboard --reporter progress --version master
57+
dotnet stryker --reporter html --reporter dashboard --reporter progress --version master # --log-to-file
5158
else
52-
dotnet stryker --reporter html --reporter progress
59+
dotnet stryker --reporter html --reporter progress # --log-to-file
5360
fi
54-
mkdir -p ../../artifacts
55-
find StrykerOutput -name mutation-report.html -exec cp {} ../../artifacts/ \;
5661
env:
5762
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
5863

64+
mutation-test-archive: &mutation-test-archive
65+
name: Archive mutation output
66+
if: success() || failure()
67+
run: |
68+
cd tests/UnitTests
69+
mkdir -p ../../artifacts
70+
find StrykerOutput -name mutation-report.html -exec cp {} ../../artifacts/ \;
71+
if [[ -d StrykerOutput ]]; then
72+
mv StrykerOutput ../../artifacts/StrykerOutput
73+
fi
74+
75+
mutation-test-upload-artifacts: &mutation-test-upload-artifacts
76+
name: Upload mutation test artifacts
77+
uses: actions/upload-artifact@v4
78+
if: success() || failure()
79+
with:
80+
name: artifacts-mutation-test
81+
if-no-files-found: error
82+
path: |
83+
artifacts/*
84+
5985
publish-codecov: &publish-codecov
6086
name: Publish Codecov
6187
uses: codecov/codecov-action@v2
@@ -65,19 +91,25 @@ definitions:
6591

6692
pack: &pack
6793
name: Pack
68-
run: dotnet pack -o artifacts --configuration Release --no-restore
69-
94+
run: dotnet pack -p:PackageOutputPath="$(pwd)/artifacts" --configuration Release --no-restore
95+
7096
upload-artifacts: &upload-artifacts
7197
name: Upload Artifacts
72-
uses: actions/upload-artifact@v2
98+
uses: actions/upload-artifact@v4
99+
if: success() || failure()
73100
with:
74101
name: artifacts
102+
if-no-files-found: error
75103
path: |
76104
artifacts/*
77105
78106
download-artifacts: &download-artifacts
79107
name: Download Artifacts
80-
uses: actions/download-artifact@v2
108+
uses: actions/download-artifact@v4
109+
with:
110+
path: artifacts
111+
pattern: '*'
112+
merge-multiple: true
81113

82114
publish-github: &publish-github
83115
name: Publish Nuget GitHub

.github/workflows/continuous-delivery.yml

Lines changed: 45 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,27 @@ jobs:
2626
name: Build & Test
2727
runs-on: ubuntu-latest
2828
steps:
29-
- uses: actions/checkout@v2
29+
- uses: actions/checkout@v4
3030
with:
3131
fetch-depth: '0'
3232

33-
- name: Setup .NET
33+
- name: Setup .NET 6
3434
uses: actions/setup-dotnet@v3
3535
with:
36-
dotnet-version: 6.x
36+
dotnet-version: 6.0.x
3737

3838
- name: Setup Verlite
3939
run: |
4040
verlite_version="$(grep '"Verlite\.MsBuild"' Directory.Build.props | LC_ALL=en_US.utf8 grep -Po 'Version="\K[^"]+')"
4141
dotnet tool install --global Verlite.CLI --version "$verlite_version"
4242
verlite . --auto-fetch --verbosity verbatim
4343
44+
- name: Install OpenSSL 1.1
45+
if: runner.os == 'Linux'
46+
run: |
47+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
48+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
49+
4450
- name: Restore
4551
run: dotnet restore
4652

@@ -52,7 +58,8 @@ jobs:
5258
-p:CoverletOutputFormat=cobertura
5359

5460
- name: Pack
55-
run: dotnet pack -o artifacts --configuration Release --no-restore
61+
run: dotnet pack -p:PackageOutputPath="$(pwd)/artifacts" --configuration Release
62+
--no-restore
5663

5764
- name: Publish Codecov
5865
uses: codecov/codecov-action@v2
@@ -61,9 +68,11 @@ jobs:
6168
files: ./tests/UnitTests/coverage.cobertura.xml
6269

6370
- name: Upload Artifacts
64-
uses: actions/upload-artifact@v2
71+
uses: actions/upload-artifact@v4
72+
if: success() || failure()
6573
with:
6674
name: artifacts
75+
if-no-files-found: error
6776
path: |
6877
artifacts/*
6978
@@ -72,14 +81,26 @@ jobs:
7281
needs: build-and-test
7382
runs-on: ubuntu-latest
7483
steps:
75-
- uses: actions/checkout@v2
84+
- uses: actions/checkout@v4
7685
with:
7786
fetch-depth: '0'
7887

79-
- name: Setup .NET
88+
- name: Setup .NET 6
8089
uses: actions/setup-dotnet@v3
8190
with:
82-
dotnet-version: 6.x
91+
dotnet-version: 6.0.x
92+
93+
- name: Setup Verlite
94+
run: |
95+
verlite_version="$(grep '"Verlite\.MsBuild"' Directory.Build.props | LC_ALL=en_US.utf8 grep -Po 'Version="\K[^"]+')"
96+
dotnet tool install --global Verlite.CLI --version "$verlite_version"
97+
verlite . --auto-fetch --verbosity verbatim
98+
99+
- name: Install OpenSSL 1.1
100+
if: runner.os == 'Linux'
101+
run: |
102+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
103+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
83104
84105
- name: Mutation Test
85106
run: |
@@ -93,21 +114,12 @@ jobs:
93114
env:
94115
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
95116

96-
- name: Archive mutation output
97-
if: success() || failure()
98-
run: |
99-
cd tests/UnitTests
100-
mkdir -p ../../artifacts
101-
find StrykerOutput -name mutation-report.html -exec cp {} ../../artifacts/ \;
102-
if [[ -d StrykerOutput ]]; then
103-
mv StrykerOutput ../../artifacts/StrykerOutput
104-
fi
105-
106117
- name: Upload Artifacts
107-
uses: actions/upload-artifact@v2
118+
uses: actions/upload-artifact@v4
108119
if: success() || failure()
109120
with:
110121
name: artifacts
122+
if-no-files-found: error
111123
path: |
112124
artifacts/*
113125
@@ -116,22 +128,32 @@ jobs:
116128
needs: build-and-test
117129
runs-on: ubuntu-latest
118130
steps:
119-
- uses: actions/checkout@v2
131+
- uses: actions/checkout@v4
120132
with:
121133
fetch-depth: '0'
122134

123135
- name: Setup .NET 6
124-
uses: actions/setup-dotnet@v1
136+
uses: actions/setup-dotnet@v3
125137
with:
126138
dotnet-version: 6.0.x
127139

140+
- name: Install OpenSSL 1.1
141+
if: runner.os == 'Linux'
142+
run: |
143+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
144+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
145+
128146
- name: Setup NuGet
129147
run: |
130-
dotnet nuget update source github --store-password-in-clear-text --username AshleighAdams --password ${{ secrets.PERSONAL_ACCESS_TOKEN }}
148+
dotnet nuget update source github --store-password-in-clear-text --username AshleighAdams --password ${{ secrets.GITHUB_TOKEN }}
131149
dotnet nuget enable source github
132150
133151
- name: Download Artifacts
134-
uses: actions/download-artifact@v2
152+
uses: actions/download-artifact@v4
153+
with:
154+
path: artifacts
155+
pattern: '*'
156+
merge-multiple: true
135157

136158
- name: Publish Nuget GitHub
137159
run: dotnet nuget push 'artifacts/*.nupkg' -k ${GITHUB_TOKEN} -s github --skip-duplicate

.github/workflows/continuous-integration.yml

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,20 @@ jobs:
2626
name: Build & Test
2727
runs-on: ubuntu-latest
2828
steps:
29-
- uses: actions/checkout@v2
29+
- uses: actions/checkout@v4
3030
with:
3131
fetch-depth: '0'
3232

33-
- name: Setup .NET
33+
- name: Setup .NET 6
3434
uses: actions/setup-dotnet@v3
3535
with:
36-
dotnet-version: 6.x
36+
dotnet-version: 6.0.x
37+
38+
- name: Install OpenSSL 1.1
39+
if: runner.os == 'Linux'
40+
run: |
41+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
42+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
3743
3844
- name: Restore
3945
run: dotnet restore
@@ -46,7 +52,8 @@ jobs:
4652
-p:CoverletOutputFormat=cobertura
4753

4854
- name: Pack
49-
run: dotnet pack -o artifacts --configuration Release --no-restore
55+
run: dotnet pack -p:PackageOutputPath="$(pwd)/artifacts" --configuration Release
56+
--no-restore
5057

5158
- name: Publish Codecov
5259
uses: codecov/codecov-action@v2
@@ -55,9 +62,11 @@ jobs:
5562
files: ./tests/UnitTests/coverage.cobertura.xml
5663

5764
- name: Upload Artifacts
58-
uses: actions/upload-artifact@v2
65+
uses: actions/upload-artifact@v4
66+
if: success() || failure()
5967
with:
6068
name: artifacts
69+
if-no-files-found: error
6170
path: |
6271
artifacts/*
6372
@@ -66,14 +75,20 @@ jobs:
6675
needs: build-and-test
6776
runs-on: ubuntu-latest
6877
steps:
69-
- uses: actions/checkout@v2
78+
- uses: actions/checkout@v4
7079
with:
7180
fetch-depth: '0'
7281

73-
- name: Setup .NET
82+
- name: Setup .NET 6
7483
uses: actions/setup-dotnet@v3
7584
with:
76-
dotnet-version: 6.x
85+
dotnet-version: 6.0.x
86+
87+
- name: Install OpenSSL 1.1
88+
if: runner.os == 'Linux'
89+
run: |
90+
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb
91+
sudo apt-get install ./libssl1.1_1.1.1f-1ubuntu2.24_amd64.deb -f
7792
7893
- name: Mutation Test
7994
run: |
@@ -97,11 +112,12 @@ jobs:
97112
mv StrykerOutput ../../artifacts/StrykerOutput
98113
fi
99114
100-
- name: Upload Artifacts
101-
uses: actions/upload-artifact@v2
115+
- name: Upload mutation test artifacts
116+
uses: actions/upload-artifact@v4
102117
if: success() || failure()
103118
with:
104-
name: artifacts
119+
name: artifacts-mutation-test
120+
if-no-files-found: error
105121
path: |
106122
artifacts/*
107123

0 commit comments

Comments
 (0)