Skip to content

Commit

Permalink
Merge branch 'master' into dev/ramez/fluent-samplesapp
Browse files Browse the repository at this point in the history
  • Loading branch information
Youssef1313 committed Jul 8, 2024
2 parents 3d3446e + 1c3aece commit 1ec1c73
Show file tree
Hide file tree
Showing 422 changed files with 7,283 additions and 3,520 deletions.
10 changes: 3 additions & 7 deletions .github/workflows/uwp-autoconvert.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,7 @@ concurrency:
cancel-in-progress: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
UnoCheck_Version: '1.20.2'

# Only convert using NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true
UnoCheck_Version: '1.25.0-dev.7'

jobs:
build:
Expand All @@ -31,7 +27,7 @@ jobs:

- name: Pin .NET Version
run: |
cp build/ci/net8/global.json global.json
cp build/ci/net9/global.json global.json
- name: Setup .NET SDK
uses: actions/setup-dotnet@3447fd6a9f9e57506b15f895c5b76d3b197dc7c2 # v3
Expand Down Expand Up @@ -73,7 +69,7 @@ jobs:
& dotnet tool update --global uno.check --version $env:UnoCheck_Version --add-source https://api.nuget.org/v3/index.json
name: Install Uno Check
- run: |
& uno-check -v --ci --non-interactive --fix --skip androidsdk --skip androidemulator --skip xcode --skip gtk3 --skip vswin --skip vsmac
& uno-check -v --ci --non-interactive --fix --skip androidsdk --skip androidemulator --skip xcode --skip gtk3 --skip vswin --skip vsmac --pre-major
name: Run uno-check
- name: Convert source tree to UWP
Expand Down
2 changes: 2 additions & 0 deletions NuGet.Config
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
<packageSources>
<clear />
<add key="NuGet official package source" value="https://api.nuget.org/v3/index.json" />
<!-- Needed for .NET 9 preview 4 as we need to reference roslyn 4.11 which isn't (yet) published to NuGet.org -->
<add key="dotnet-tools" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json" />
<add key="Solution Packages" value="src/PackageCache" />
</packageSources>
</configuration>
56 changes: 40 additions & 16 deletions build/PackageDiffIgnore.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1859,30 +1859,54 @@
<Methods>
<Member fullName=".* Microsoft\.UI\.Windowing\.AppWindowTitleBar\..*" reason="Not in UWP" isRegex="true" />

<!-- AutomationPeers -->
<Member fullName="System.Void Windows.UI.Xaml.Automation.Peers.CalendarDatePickerAutomationPeer.SetValueImpl(System.String value)" reason="Not previously implemented." />
<Member fullName="System.Void Microsoft.UI.Xaml.Automation.Peers.CalendarDatePickerAutomationPeer.SetValueImpl(System.String value)" reason="Not previously implemented." />

<!-- BEGIN Keyboard accelerators -->
<Member fullName="System.Void Windows.UI.Xaml.UIElement.set_KeyboardAccelerators(System.Collections.Generic.IList`1&lt;Windows.UI.Xaml.Input.KeyboardAccelerator&gt; value)" reason="Keyboard Accelerators setter is not public" />
<Member fullName="System.Void Microsoft.UI.Xaml.UIElement.set_KeyboardAccelerators(System.Collections.Generic.IList`1&lt;Microsoft.UI.Xaml.Input.KeyboardAccelerator&gt; value)" reason="Keyboard Accelerators setter is not public" />
<!-- END Keyboard accelerators -->
</Methods>
</IgnoreSet>
<!--
Supported nodes (please keep at the bottom of this file):
<IgnoreSet baseVersion="0.0">
<Types>
</Types>

<Events>
</Events>
<!-- MarkupExtensions\XamlServiceProvider -->
<Member fullName="Microsoft.UI.Xaml.IXamlServiceProvider Uno.UI.Helpers.MarkupHelper.CreateParserContext(System.Object target, Microsoft.UI.Xaml.Markup.ProvideValueTargetProperty property)" reason="Not in WinUI; refactored out" />
<Member fullName="Windows.UI.Xaml.IXamlServiceProvider Uno.UI.Helpers.MarkupHelper.CreateParserContext(System.Object target, Windows.UI.Xaml.Markup.ProvideValueTargetProperty property)" reason="Not in WinUI; refactored out" />

<Fields>
</Fields>
<Properties>
</Properties>
<Methods>
</Methods>
</IgnoreSet>

<![CDATA[
The 'baseVersion' should be the current latest stable version published on nuget,
NOT what will be published by the PR in progress.
To test locally, you need to install:
; the tool version can be found from the failed task OR look for "ValidatePackage" in Uno.UI.Build.csproj
dotnet tool install --global Uno.PackageDiff --version 1.1.0-dev.25
Then, run this command: // the command is supposed to be one line
generatepkgdiff
--base=path/to/the-latest-stable-from-nuget-org/uno.winui.5.2.175.nupkg
--other=path/to/nupkg-from-the-pr-artifact/Uno.WinUI.5.4.0-PullRequest-17260-131308-17260.nupkg
--diffignore=path/to/this-repo/build/PackageDiffIgnore.xml
--outfile=diff.md
| findstr Error
]]>
<!--
Supported nodes (please keep at the bottom of this file):
<IgnoreSet baseVersion="0.0">
<Types>
</Types>
<Events>
</Events>
<Fields>
</Fields>
<Properties>
</Properties>
<Methods>
</Methods>
</IgnoreSet>
-->
</IgnoreSets>
</DiffIgnore>
7 changes: 1 addition & 6 deletions build/Uno.UI.Build.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,8 @@
</Target>

<Target Name="BuildCIMobile">

<PropertyGroup>
<NetCoreMobileFilter>filters\Uno.UI-packages-netcoremobile-net8.slnf</NetCoreMobileFilter>
<NetCoreMobileFilter Condition="'$(UnoDisableNetCurrentMobile)'=='true'">filters\Uno.UI-packages-netcoremobile.slnf</NetCoreMobileFilter>
</PropertyGroup>
<MSBuild Properties="Configuration=Release;InformationalVersion=$(GITVERSION_InformationalVersion);CI_Build=true;_IsCIBuild=true;PackageOutputPath=$(BUILD_ARTIFACTSTAGINGDIRECTORY)\vslatest-netcoremobile;PackageVersion=$(GITVERSION_SemVer)"
Projects="$(NetCoreMobileFilter)"
Projects="filters\Uno.UI-packages-netcoremobile.slnf"
Targets="Restore;Build"
RebaseOutputs="false"
BuildInParallel="true" />
Expand Down
4 changes: 0 additions & 4 deletions build/ci/.azure-devops-android-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,6 @@ jobs:
SourceLinkEnabled: false
NUGET_PACKAGES: $(Agent.WorkFolder)/.nuget

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

steps:
- checkout: self
clean: true
Expand Down
4 changes: 0 additions & 4 deletions build/ci/.azure-devops-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,6 @@ jobs:
UNO_UWP_BUILD: false
XAML_FLAVOR_BUILD: WinUI

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

steps:
- template: templates/nuget-cache.yml
parameters:
Expand Down
4 changes: 0 additions & 4 deletions build/ci/.azure-devops-ios-tests-run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@ jobs:
SourceLinkEnabled: false
NUGET_PACKAGES: $(Pipeline.Workspace)/.nuget/packages
UITEST_ALLOW_RERUN: ${{ parameters.UITEST_ALLOW_RERUN }}

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

UNO_UITEST_BUCKET_COUNT: 5

Expand Down
10 changes: 0 additions & 10 deletions build/ci/.azure-devops-ios-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,6 @@ jobs:
SourceLinkEnabled: falses
NUGET_PACKAGES: $(Pipeline.Workspace)/.nuget/packages

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

steps:
- checkout: self
clean: true
Expand Down Expand Up @@ -121,12 +117,6 @@ jobs:
- name: NUGET_PACKAGES
value: $(Pipeline.Workspace)/.nuget/packages

# Only build for NetPrevious
- name: UnoDisableNetCurrentMobile
value: true
- name: UnoDisableNetCurrent
value: true

steps:
- checkout: self
clean: true
Expand Down
3 changes: 0 additions & 3 deletions build/ci/.azure-devops-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ jobs:
NUGET_PACKAGES: $(build.sourcesdirectory)/.nuget
XCODE_ROOT: /Applications/Xcode_10.3.app

UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

pool:
vmImage: ${{ parameters.vmImage }}

Expand Down
22 changes: 4 additions & 18 deletions build/ci/.azure-devops-package-netcoremobile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,6 @@ jobs:

pool: ${{ parameters.poolName }}

strategy:
matrix:
NET9:
UnoDisableNetPreviousMobile: true
ZipFileTargetFramework: net9

NET8:
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true
ZipFileTargetFramework: net8

variables:
CombinedConfiguration: Release|Any CPU
CI_Build: true
Expand Down Expand Up @@ -49,22 +38,20 @@ jobs:

- template: templates/gitversion.yml

# Building with .NET 9 SDK for net8.0-ios17.0 to work.
# It looks like building net8.0-ios17.0 with .NET 8 SDK will end up using Microsoft.iOS 17.2 assembly.
- template: templates/dotnet9-mobile-install-windows.yml
- template: templates/dotnet-mobile-install-windows.yml

# This task is required to run in separately to avoid hitting targets file
# caching issues with msbuild 17.3 or later
- task: DotNetCoreCLI@2
inputs:
workingDirectory: Build
arguments: Uno.UI.Build.csproj /nr:false /r /m /t:PrepareBuildAssets "/p:CombinedConfiguration=$(CombinedConfiguration)" /detailedsummary /bl:$(build.artifactstagingdirectory)\build-$(GitVersion.FullSemVer)-netcoremobile-$(ZipFileTargetFramework)-prepare-$(XAML_FLAVOR_BUILD).binlog
arguments: Uno.UI.Build.csproj /nr:false /r /m /t:PrepareBuildAssets "/p:CombinedConfiguration=$(CombinedConfiguration)" /detailedsummary /bl:$(build.artifactstagingdirectory)\build-$(GitVersion.FullSemVer)-netcoremobile-prepare-$(XAML_FLAVOR_BUILD).binlog
displayName: Preparing assets

- task: DotNetCoreCLI@2
inputs:
workingDirectory: Build
arguments: Uno.UI.Build.csproj /r /m /t:BuildCIMobile "/p:CombinedConfiguration=$(CombinedConfiguration)" /detailedsummary /bl:$(build.artifactstagingdirectory)\build-$(GitVersion.FullSemVer)-netcoremobile-$(ZipFileTargetFramework)-$(XAML_FLAVOR_BUILD).binlog
arguments: Uno.UI.Build.csproj /r /m /t:BuildCIMobile "/p:CombinedConfiguration=$(CombinedConfiguration)" /detailedsummary /bl:$(build.artifactstagingdirectory)\build-$(GitVersion.FullSemVer)-netcoremobile-$(XAML_FLAVOR_BUILD).binlog
displayName: Building package binaries

- task: MSBuild@1
Expand All @@ -78,7 +65,6 @@ jobs:
restoreNugetPackages: false
logProjectEvents: false
createLogFile: false
condition: and(succeeded(), eq(variables['ZipFileTargetFramework'], 'net8'))
displayName: Building WinAppSDK/UWP package binaries

- template: templates/copy-package-assets.yml
Expand All @@ -88,7 +74,7 @@ jobs:
rootFolderOrFile: $(build.sourcesdirectory)\build-artifacts\bin-$(XAML_FLAVOR_BUILD)
includeRootFolder: false
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/windows-netcoremobile-$(ZipFileTargetFramework)-bin-$(XAML_FLAVOR_BUILD).zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/windows-netcoremobile-bin-$(XAML_FLAVOR_BUILD).zip'

- task: PublishBuildArtifacts@1
condition: always()
Expand Down
3 changes: 0 additions & 3 deletions build/ci/.azure-devops-package-wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,6 @@ jobs:

NUGET_PACKAGES: $(build.sourcesdirectory)/.nuget

# Disabled until the wasm bootstrap can be updated to .NET 8 Pre 3 or later
UnoDisableNetCurrentMobile: true

UNO_UWP_BUILD: ${{ parameters.UNO_UWP_BUILD }}
XAML_FLAVOR_BUILD: ${{ parameters.XAML_FLAVOR_BUILD }}

Expand Down
20 changes: 0 additions & 20 deletions build/ci/.azure-devops-project-template-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,6 @@ jobs:
dependsOn:
- Generate_Packages

variables:
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

steps:
- task: DownloadBuildArtifacts@0
inputs:
Expand Down Expand Up @@ -59,21 +55,13 @@ jobs:
dependsOn:
- Generate_Packages

variables:
UnoDisableNetCurrent: true
UnoDisableNetCurrentMobile: true

steps:
- task: DownloadBuildArtifacts@0
inputs:
artifactName: NugetPackages

- template: templates/gitversion.yml

- bash: |
sed -i.bu 's/8.0.100/8.0.200/' build/ci/net8/global.json
displayName: Replace global.json with .NET 8.0.200
- template: templates/ios-build-select-version.yml
parameters:
xCodeRoot: ${{ parameters.xCodeRoot }}
Expand Down Expand Up @@ -103,10 +91,6 @@ jobs:
dependsOn:
- Generate_Packages

variables:
UnoDisableNetCurrent: true
UnoDisableNetCurrentMobile: true

pool: ${{ parameters.vmPoolLinux }}

container: unoplatform/wasm-build:2.3
Expand All @@ -116,10 +100,6 @@ jobs:
inputs:
artifactName: NugetPackages

- script: |
sed -i 's/8.0.100/8.0.200/g' build/ci/net8/global.json
displayName: Replace global.json with .NET 8.0.200
- template: templates/dotnet-mobile-install-linux.yml

- template: templates/gitversion.yml
Expand Down
23 changes: 11 additions & 12 deletions build/ci/.azure-devops-skia-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,6 @@ jobs:
# Use pre-defined local nuget cache for restore
NUGET_PACKAGES: 'C:\NugetPackages'

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

UNO_UWP_BUILD: ${{ parameters.UNO_UWP_BUILD }}
XAML_FLAVOR_BUILD: ${{ parameters.XAML_FLAVOR_BUILD }}

Expand All @@ -63,7 +59,7 @@ jobs:
artifact: NugetPackages-Artifacts-skia-macos-native-SamplesApp-$(XAML_FLAVOR_BUILD)
path: $(Build.SourcesDirectory)/src/Uno.UI.Runtime.Skia.MacOS/UnoNativeMac/build/Release

- powershell: dotnet msbuild src/SamplesApp/SamplesApp.Skia.Gtk/SamplesApp.Skia.Gtk.csproj /r /m /p:Configuration=Release /detailedsummary /m /bl:$(build.artifactstagingdirectory)\build-gtk.binlog
- powershell: dotnet msbuild src/SamplesApp/SamplesApp.Skia.Gtk/SamplesApp.Skia.Gtk.csproj /r /m /p:UnoTargetFrameworkOverride=net8.0 /p:Configuration=Release /detailedsummary /m /bl:$(build.artifactstagingdirectory)\build-gtk.binlog
displayName: Build GTK Head

- task: PublishBuildArtifacts@1
Expand All @@ -74,7 +70,7 @@ jobs:
ArtifactName: skia-gtk-samples-app-$(XAML_FLAVOR_BUILD)
ArtifactType: Container

- powershell: dotnet msbuild src/SamplesApp/UnoIslandsSamplesApp.Skia.WPF/UnoIslandsSamplesApp.Skia.Wpf.csproj /r /m /p:Configuration=Release /detailedsummary /m /bl:$(build.artifactstagingdirectory)\build-wpf-islands.binlog
- powershell: dotnet msbuild src/SamplesApp/UnoIslandsSamplesApp.Skia.WPF/UnoIslandsSamplesApp.Skia.Wpf.csproj /r /m /p:UnoTargetFrameworkOverride=net8.0 /p:Configuration=Release /detailedsummary /m /bl:$(build.artifactstagingdirectory)\build-wpf-islands.binlog
displayName: Build WPF Islands Head

- task: PublishBuildArtifacts@1
Expand All @@ -85,7 +81,7 @@ jobs:
ArtifactName: uno-islands-skia-wpf-samples-app-$(XAML_FLAVOR_BUILD)
ArtifactType: Container

- powershell: dotnet publish src/SamplesApp/SamplesApp.Skia.Generic/SamplesApp.Skia.Generic.csproj -c Release -f net8.0 /bl:$(build.artifactstagingdirectory)\build-x11.binlog
- powershell: dotnet publish src/SamplesApp/SamplesApp.Skia.Generic/SamplesApp.Skia.Generic.csproj -c Release -p:UnoTargetFrameworkOverride=net8.0 -f net8.0 /bl:$(build.artifactstagingdirectory)\build-generic.binlog
displayName: Build Generic Skia Head

- task: PublishBuildArtifacts@1
Expand Down Expand Up @@ -184,10 +180,6 @@ jobs:

CI_Build: true

# Only build for NetPrevious
UnoDisableNetCurrentMobile: true
UnoDisableNetCurrent: true

UNO_UWP_BUILD: ${{ parameters.UNO_UWP_BUILD }}
XAML_FLAVOR_BUILD: ${{ parameters.XAML_FLAVOR_BUILD }}

Expand All @@ -211,9 +203,16 @@ jobs:
cd $(build.sourcesdirectory)/src/SourceGenerators/Uno.UI.SourceGenerators
dotnet build -c Debug
cd $(build.sourcesdirectory)/src/Uno.UI.RemoteControl.Host
dotnet build -c Debug -p:UnoDisableNetCurrent=true
dotnet build -c Debug
displayName: Build HR dependencies
# We need just the .NET 8 runtime (not the SDK).
# Building with .NET 9 SDK is fine, but running the app when the TFM is net8.0 requires the .NET 8 runtime
- task: UseDotNet@2
inputs:
packageType: 'runtime'
version: '8.x'

- script: |
cd $(SamplesAppArtifactPath)
dotnet SamplesApp.Skia.Gtk.dll --runtime-tests=$(build.sourcesdirectory)/build/skia-gtk-runtime-tests-results.xml
Expand Down
Loading

0 comments on commit 1ec1c73

Please sign in to comment.