Skip to content

Commit 2628ce1

Browse files
committed
bring branch up to date with develop
2 parents d763b6d + f3bdea1 commit 2628ce1

File tree

155 files changed

+2914
-935
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

155 files changed

+2914
-935
lines changed

.config/dotnet-tools.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"dotnet-t4": {
6+
"version": "2.0.5",
7+
"commands": [
8+
"t4"
9+
]
10+
}
11+
}
12+
}

.editorconfig

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,7 @@ indent_size = 2
2020
indent_style = space
2121
indent_size = 2
2222
tab_size = 2
23+
24+
[*.yml]
25+
intent_style = space
26+
indent_size = 2

.github/workflows/build.yml

Lines changed: 52 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@ on:
66
pull_request:
77
branches: [ develop ]
88
release:
9-
types: [ published ]
9+
types: [ released ]
1010

1111
env:
12-
DotNetVersion: "3.1.301"
12+
DotNetVersion: "5.0.100"
1313
BuildConfiguration: "Release"
14-
BuildParameters: "build/Build.proj /v:Minimal /p:Configuration=Release /p:BuildVersion=${{ github.run_id }} /p:BuildBranch=${{ github.ref }}"
14+
BuildParameters: "build/Build.proj /v:Minimal /consoleLoggerParameters:NoSummary /p:Configuration=Release /p:BuildVersion=${{ github.run_id }} /p:BuildBranch=${{ github.ref }}"
1515

1616
jobs:
1717
build-windows:
@@ -23,6 +23,18 @@ jobs:
2323
with:
2424
submodules: true
2525

26+
# needed for dotnet-t4
27+
- name: Setup .NET Core 2.1.x
28+
uses: actions/setup-dotnet@v1
29+
with:
30+
dotnet-version: "2.1.x"
31+
32+
# Can't use .NET 5 with msbuild until VS is updated to 16.8 in GitHub Actions
33+
- name: Setup .NET Core 3.1.x
34+
uses: actions/setup-dotnet@v1
35+
with:
36+
dotnet-version: "3.1.x"
37+
2638
- name: Setup .NET Core
2739
uses: actions/setup-dotnet@v1
2840
with:
@@ -32,7 +44,7 @@ jobs:
3244
uses: microsoft/setup-msbuild@v1
3345

3446
- name: Build
35-
run: msbuild ${{ env.BuildParameters }} /p:Platform=Windows /t:Package /bl:artifacts/log/Build.Windows.binlog
47+
run: dotnet build ${{ env.BuildParameters }} /p:Platform=Windows /t:Package /bl:artifacts/log/Build.Windows.binlog
3648

3749
- name: Build VS/Win Extension
3850
run: msbuild ${{ env.BuildParameters }} /t:BuildAddins /bl:artifacts/log/Addin.Windows.binlog
@@ -53,7 +65,9 @@ jobs:
5365
uses: actions/upload-artifact@v2
5466
with:
5567
name: test
56-
path: artifacts/test/${{ env.BuildConfiguration }}/**/*
68+
path: |
69+
artifacts/test/${{ env.BuildConfiguration }}/**/*
70+
!artifacts/test/${{ env.BuildConfiguration }}/**/*Mac64.*
5771
5872
- name: Upload sample artifacts
5973
uses: actions/upload-artifact@v2
@@ -82,17 +96,34 @@ jobs:
8296
with:
8397
dotnet-version: ${{ env.DotNetVersion }}
8498

85-
- name: setup-xamarin
86-
uses: maxim-lobanov/setup-xamarin@v1.1
99+
- name: Setup Xamarin and XCode
100+
uses: maxim-lobanov/setup-xamarin@v1
87101
with:
88102
mono-version: latest
89103
xamarin-mac-version: latest
90104
xcode-version: latest
91105

106+
- name: Import code signing certificate
107+
if: github.event_name != 'pull_request'
108+
uses: apple-actions/import-codesign-certs@v1
109+
with:
110+
p12-file-base64: ${{ secrets.DEVID_CERTIFICATE_P12 }}
111+
p12-password: ${{ secrets.DEVID_CERTIFICATE_P12_PASSWORD }}
112+
113+
- name: Enable code signing
114+
if: github.event_name != 'pull_request'
115+
run: echo "BuildParameters=${{ env.BuildParameters }} /p:EnableCodeSignBuild=True" >> $GITHUB_ENV
116+
117+
- name: Set notarization credentials
118+
if: startsWith(github.ref, 'refs/tags/')
119+
run: |
120+
xcrun altool --store-password-in-keychain-item "AC_PASSWORD" -u "${{ secrets.AC_USERNAME }}" -p "${{ secrets.AC_PASSWORD }}"
121+
echo "BuildParameters=${{ env.BuildParameters }} /p:EnableNotarizationBuild=True" >> $GITHUB_ENV
122+
92123
- name: Build
93-
run: msbuild ${{ env.BuildParameters }} /p:Platform=Mac /t:Package /bl:artifacts/log/Build.Mac.binlog
124+
run: dotnet build ${{ env.BuildParameters }} /p:Platform=Mac /t:Package /bl:artifacts/log/Build.Mac.binlog
94125

95-
- name: Build VS/Mac Extension
126+
- name: Build VS/Mac extension
96127
run: msbuild ${{ env.BuildParameters }} /t:BuildAddins /bl:artifacts/log/Addin.Mac.binlog
97128

98129
- name: Upload nuget artifacts
@@ -109,12 +140,23 @@ jobs:
109140
name: addins
110141
path: artifacts/addin/${{ env.BuildConfiguration }}/net472/Eto.Addin.MonoDevelop*.mpack
111142

143+
- name: Upload test artifacts
144+
uses: actions/upload-artifact@v2
145+
with:
146+
name: test
147+
path: |
148+
artifacts/test/${{ env.BuildConfiguration }}/**/*XamMac2.*
149+
artifacts/test/${{ env.BuildConfiguration }}/**/*Mac64.*
150+
artifacts/test/${{ env.BuildConfiguration }}/**/*Gtk2.*
151+
112152
- name: Upload log files
113153
if: ${{ failure() }}
114154
uses: actions/upload-artifact@v2
115155
with:
116156
name: log
117-
path: artifacts/log/**/*
157+
path: |
158+
artifacts/log/**/*
159+
lib/monomac/artifacts/generated/**/*.binlog
118160
119161
update-release:
120162
needs: [ build-windows, build-mac ]

.github/workflows/create-release.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,10 @@ jobs:
1717
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1818

1919
- name: Add Milestone Description
20-
run: echo -e "${{ github.event.milestone.description }}\n\n$(cat release_file.md)" > release_file.md
20+
run: |
21+
echo "${{ github.event.milestone.description }}" > release_file_combined.md
22+
echo -e "\n\n" >> release_file_combined.md
23+
cat release_file.md >> release_file_combined.md
2124
2225
- name: Create Release
2326
id: create_release
@@ -27,6 +30,6 @@ jobs:
2730
with:
2831
tag_name: ${{ github.event.milestone.title }}
2932
release_name: ${{ github.event.milestone.title }}
30-
body_path: release_file.md
33+
body_path: release_file_combined.md
3134
draft: false
3235
prerelease: false

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ AppPackages
1313
[Tt]humbs.db
1414
/artifacts
1515
packages/
16+
.store

.vscode/launch.json

Lines changed: 87 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,31 @@
66
"type": "coreclr",
77
"request": "launch",
88
"preLaunchTask": "build-mac64",
9-
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/netcoreapp3.1/Eto.Test.Mac64.app/Contents/MacOS/Eto.Test.Mac64",
9+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net5.0/Eto.Test.Mac64.app/Contents/MacOS/Eto.Test.Mac64",
1010
"args": [],
1111
"console": "internalConsole",
1212
"internalConsoleOptions": "openOnSessionStart"
1313
},
14-
{
15-
// requires mono extension from https://github.com/cwensley/vscode-mono-debug/releases
14+
{
15+
"name": "Eto.Test.Mac64 - mono",
16+
"type": "mono",
17+
"request": "launch",
18+
"preLaunchTask": "build-mac64",
19+
"program": ".",
20+
"runtimeExecutable": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.Mac64.app/Contents/MacOS/Eto.Test.Mac64",
21+
"passDebugOptionsViaEnvironmentVariable": true,
22+
"args": [],
23+
"console": "internalConsole",
24+
"internalConsoleOptions": "openOnSessionStart"
25+
},
26+
{
1627
"name": "Eto.Test.XamMac2",
1728
"type": "mono",
1829
"request": "launch",
1930
"preLaunchTask": "build-xammac2",
20-
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.XamMac2.app/Contents/MacOS/Eto.Test.XamMac2",
21-
"useRuntime": false,
31+
"program": ".",
32+
"runtimeExecutable": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.XamMac2.app/Contents/MacOS/Eto.Test.XamMac2",
33+
"passDebugOptionsViaEnvironmentVariable": true,
2234
"args": [],
2335
"console": "internalConsole",
2436
"internalConsoleOptions": "openOnSessionStart"
@@ -28,18 +40,50 @@
2840
"type": "coreclr",
2941
"request": "launch",
3042
"preLaunchTask": "build-gtk",
31-
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/netcoreapp3.1/Eto.Test.Gtk.dll",
43+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net5.0/Eto.Test.Gtk.dll",
3244
"args": [],
3345
"console": "internalConsole",
3446
"stopAtEntry": false,
3547
"internalConsoleOptions": "openOnSessionStart"
3648
},
49+
{
50+
"name": "Eto.Test.Gtk - mono",
51+
"type": "mono",
52+
"request": "launch",
53+
"preLaunchTask": "build-gtk",
54+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.Gtk.exe",
55+
"passDebugOptionsViaEnvironmentVariable": true,
56+
"args": [],
57+
"console": "internalConsole",
58+
"internalConsoleOptions": "openOnSessionStart"
59+
},
60+
{
61+
"name": "Eto.Test.Gtk2",
62+
"type": "mono",
63+
"request": "launch",
64+
"preLaunchTask": "build-gtk2",
65+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.Gtk2.exe",
66+
"passDebugOptionsViaEnvironmentVariable": true,
67+
"args": [],
68+
"console": "internalConsole",
69+
"internalConsoleOptions": "openOnSessionStart"
70+
},
3771
{
3872
"name": "Eto.Test.Wpf",
3973
"type": "coreclr",
4074
"request": "launch",
4175
"preLaunchTask": "build-wpf",
42-
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/netcoreapp3.1/Eto.Test.Wpf.exe",
76+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net5.0-windows/Eto.Test.Wpf.exe",
77+
"args": [],
78+
"console": "internalConsole",
79+
"internalConsoleOptions": "openOnSessionStart"
80+
},
81+
{
82+
"name": "Eto.Test.Wpf - .NET 4.7.2",
83+
"type": "clr",
84+
"request": "launch",
85+
"preLaunchTask": "build-wpf",
86+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.Wpf.exe",
4387
"args": [],
4488
"console": "internalConsole",
4589
"internalConsoleOptions": "openOnSessionStart"
@@ -49,10 +93,44 @@
4993
"type": "coreclr",
5094
"request": "launch",
5195
"preLaunchTask": "build-winforms",
52-
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/netcoreapp3.1/Eto.Test.WinForms.exe",
96+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net5.0-windows/Eto.Test.WinForms.exe",
97+
"args": [],
98+
"console": "internalConsole",
99+
"internalConsoleOptions": "openOnSessionStart"
100+
},
101+
{
102+
"name": "Eto.Test.WinForms - .NET 4.7.2",
103+
"type": "clr",
104+
"request": "launch",
105+
"preLaunchTask": "build-winforms",
106+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net472/Eto.Test.WinForms.exe",
107+
"args": [],
108+
"console": "internalConsole",
109+
"internalConsoleOptions": "openOnSessionStart"
110+
},
111+
{
112+
"name": "Eto.Test.Direct2D",
113+
"type": "coreclr",
114+
"request": "launch",
115+
"preLaunchTask": "build-direct2d",
116+
"program": "${workspaceFolder}/artifacts/test/${config:var.configuration}/net5.0-windows/Eto.Test.Direct2D.exe",
53117
"args": [],
54118
"console": "internalConsole",
55119
"internalConsoleOptions": "openOnSessionStart"
56-
}
120+
},
121+
{
122+
"name": "Eto.Addin.VisualStudio.Mac",
123+
"type": "mono",
124+
"request": "launch",
125+
"preLaunchTask": "build-addins",
126+
"program": ".",
127+
"runtimeExecutable": "/Applications/Visual Studio.app/Contents/MacOS/VisualStudio",
128+
"passDebugOptionsViaEnvironmentVariable": true,
129+
"args": [ "--no-redirect" ],
130+
"env": {
131+
"MONODEVELOP_CONSOLE_LOG_LEVEL": "All",
132+
"MONODEVELOP_DEV_ADDINS": "${workspaceFolder}/artifacts/addin/${config:var.configuration}/net472/"
133+
}
134+
}
57135
]
58136
}

.vscode/tasks.json

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,7 @@
33
"tasks": [
44
{
55
"label": "build",
6-
"command": "msbuild /t:Build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/build/Build.proj",
7-
"windows": {
8-
"command": "${workspaceFolder}/build/msbuild.cmd /t:Build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/build/Build.proj"
9-
},
6+
"command": "dotnet build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/build/Build.proj",
107
"type": "shell",
118
"problemMatcher": "$msCompile",
129
"group": {
@@ -18,7 +15,7 @@
1815
}
1916
},
2017
{
21-
"label": "build addins",
18+
"label": "build-addins",
2219
"command": "msbuild /t:BuildAddins ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/build/Build.proj",
2320
"windows": {
2421
"command": "${workspaceFolder}/build/msbuild.cmd /t:BuildAddins ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/build/Build.proj"
@@ -40,6 +37,16 @@
4037
"clear": true
4138
}
4239
},
40+
{
41+
"label": "build-gtk2",
42+
"command": "dotnet build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/test/Eto.Test.Gtk/Eto.Test.Gtk2.csproj",
43+
"type": "shell",
44+
"group": "build",
45+
"problemMatcher": "$msCompile",
46+
"presentation": {
47+
"clear": true
48+
}
49+
},
4350
{
4451
"label": "build-mac64",
4552
"command": "dotnet build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/test/Eto.Test.Mac/Eto.Test.Mac64.csproj",
@@ -52,7 +59,7 @@
5259
},
5360
{
5461
"label": "build-xammac2",
55-
"command": "msbuild /restore ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/test/Eto.Test.Mac/Eto.Test.XamMac2.csproj",
62+
"command": "dotnet build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/test/Eto.Test.Mac/Eto.Test.XamMac2.csproj",
5663
"type": "shell",
5764
"group": "build",
5865
"problemMatcher": "$msCompile",
@@ -80,6 +87,16 @@
8087
"clear": true
8188
}
8289
},
90+
{
91+
"label": "build-direct2d",
92+
"command": "dotnet build ${config:var.buildProperties} /p:Configuration=${config:var.configuration} ${workspaceFolder}/test/Eto.Test.Direct2D/Eto.Test.Direct2D.csproj",
93+
"type": "shell",
94+
"group": "build",
95+
"problemMatcher": "$msCompile",
96+
"presentation": {
97+
"clear": true
98+
}
99+
},
83100
{
84101
"label": "restore",
85102
"command": "dotnet restore /v:Minimal ${workspaceFolder}/src/Eto.sln",
@@ -97,7 +114,16 @@
97114
"presentation": {
98115
"clear": true
99116
}
100-
},
117+
},
118+
{
119+
"label": "Set Eto version",
120+
"type": "shell",
121+
"command": "dotnet msbuild ${workspaceFolder}/build/Build.proj /t:UpdateVersion /p:SetVersion=${input:version}",
122+
"problemMatcher": "$msCompile",
123+
"presentation": {
124+
"clear": true
125+
}
126+
}
101127
],
102128
"inputs": [
103129
{
@@ -108,6 +134,12 @@
108134
"No",
109135
"Yes"
110136
]
137+
},
138+
{
139+
"type": "promptString",
140+
"id": "version",
141+
"description": "Enter the version to update to",
142+
"default": "2.5.x"
111143
}
112144
]
113145
}

0 commit comments

Comments
 (0)