diff --git a/.github/workflows/build-gtk.yml b/.github/workflows/build-gtk.yml
index 939b0ed2582f..446f9091ecc6 100644
--- a/.github/workflows/build-gtk.yml
+++ b/.github/workflows/build-gtk.yml
@@ -29,15 +29,21 @@ jobs:
chmod 764 $WORKLOAD_MANIFEST_DIR/*
dotnet workload search
dotnet workload install gtk --skip-manifest-update
+ - name: Generate pre-release version suffix
+ run: dotnet fsi nugetPreRelease.fsx "" > PreReleaseVersionSuffix.txt
- name: Build MAUI
run: |
- sed -i 's/_IncludeAndroid>true/_IncludeAndroid>/g' Directory.Build.Override.props
+ mv Directory.Build.Override.props.in Directory.Build.Override.props
dotnet build Microsoft.Maui.BuildTasks.slnf
- dotnet build Microsoft.Maui.Gtk.slnf
- - name: Build ZXing.Net.Maui
- run: |
- dotnet build ./src/ZXing.Net.Maui/ZXing.Net.MAUI/ZXing.Net.MAUI.csproj --framework=net8.0-gtk
- dotnet build ./src/ZXing.Net.Maui/ZXing.Net.MAUI.Controls/ZXing.Net.MAUI.Controls.csproj --framework=net8.0-gtk
+ dotnet build -c Release Mali.slnf
+ - name: Pack MAUI
+ run: dotnet pack Mali.slnf --no-build --no-restore
+ - name: Upload binaries to nuget (if tag or main branch, and nugetKey is present)
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ NUGET_KEY: ${{ secrets.NUGET_KEY }}
+ if: ${{ env.NUGET_KEY != '' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/')) }}
+ run: dotnet nuget push **/*.nupkg --api-key ${{ secrets.NUGET_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
dotnet-format:
needs: build_and_test
diff --git a/Mali.slnf b/Mali.slnf
new file mode 100644
index 000000000000..5e4e4819a3cf
--- /dev/null
+++ b/Mali.slnf
@@ -0,0 +1,15 @@
+{
+ "solution": {
+ "path": "Microsoft.Maui.sln",
+ "projects": [
+ "src\\BlazorWebView\\src\\Maui\\Microsoft.AspNetCore.Components.WebView.Maui.csproj",
+ "src\\Essentials\\src\\Essentials.csproj",
+ "src\\Controls\\src\\Core\\Controls.Core.csproj",
+ "src\\Controls\\src\\Xaml\\Controls.Xaml.csproj",
+ "src\\Core\\src\\Core.csproj",
+ "src\\Compatibility\\Core\\src\\Compatibility.csproj",
+ "src\\Controls\\Foldable\\src\\Controls.Foldable.csproj",
+ "src\\Graphics\\src\\Graphics\\Graphics.csproj"
+ ]
+ }
+}
\ No newline at end of file
diff --git a/eng/Versions.props b/eng/Versions.props
index 0404b437333b..dfd2e0833b27 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -56,6 +56,9 @@
4.5.0
4.5.5
4.5.1
+ 8.0.5
+ 8.0.0
+ 8.0.0
4.3.0
4.3.0
6.0.0
diff --git a/eng/Versions.targets b/eng/Versions.targets
index b6fbc83806b7..9107f01a2c68 100644
--- a/eng/Versions.targets
+++ b/eng/Versions.targets
@@ -48,6 +48,7 @@
+ $(GITHUB_REF_NAME)
$([System.Text.RegularExpressions.Regex]::Match($(GitTag), $(RegexTag)))
main
true
@@ -64,13 +65,17 @@
-
+
+
+
@(VersionMetadata -> '%(Identity)', '-')
- +$(VersionMetadataLabel)
+ 0+$(VersionMetadataLabel)
$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch)
$(GitSemVerMajor).$(GitSemVerMinor).$(GitSemVerPatch)$(GitSemVerDashLabel)
$(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch)$(GitSemVerDashLabel).$(BUILDVERSION)
@@ -79,6 +84,11 @@
$(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch).$(BUILDVERSION)
$(GitSemVerMajor).$(GitSemVerMinor).$(GitSemVerPatch).0
$(PackageReferenceVersion)$(VersionMetadataPlusLabel)
+
+ $(GitSemVerMajor).$(GitSemVerMinor).$(GitSemVerPatch)
+
+ $([System.IO.File]::ReadAllText($(MSBuildThisFileDirectory)../PreReleaseVersionSuffix.txt))
+ $(GitSemVerMajor).$(GitSemVerMinor).$(GitSemVerPatch)$(PreReleaseVersionSuffix)
diff --git a/nugetPreRelease.fsx b/nugetPreRelease.fsx
new file mode 100644
index 000000000000..71cadf764e97
--- /dev/null
+++ b/nugetPreRelease.fsx
@@ -0,0 +1,6 @@
+#r "nuget: Fsdk, Version=0.6.0--date20231213-0703.git-d7a5962"
+
+let args = fsi.CommandLineArgs
+
+Fsdk.Network.GetNugetPrereleaseVersionFromBaseVersion args.[1]
+|> System.Console.WriteLine
diff --git a/src/BlazorWebView/src/Maui/Microsoft.AspNetCore.Components.WebView.Maui.csproj b/src/BlazorWebView/src/Maui/Microsoft.AspNetCore.Components.WebView.Maui.csproj
index 018faf01004f..1aae8cf5dae0 100644
--- a/src/BlazorWebView/src/Maui/Microsoft.AspNetCore.Components.WebView.Maui.csproj
+++ b/src/BlazorWebView/src/Maui/Microsoft.AspNetCore.Components.WebView.Maui.csproj
@@ -10,7 +10,7 @@
true
- Microsoft.AspNetCore.Components.WebView.Maui
+ Mali.AspNetCore.Components.WebView
$(DefaultPackageTags);blazor;webview;aspnet
$(MauiRootDirectory)Assets\aspnet-icon.png
Build .NET Multi-platform App UI (.NET MAUI) apps with Blazor web UI in the BlazorWebView control.
diff --git a/src/BlazorWebView/src/Maui/build/Microsoft.AspNetCore.Components.WebView.Maui.props b/src/BlazorWebView/src/Maui/build/Mali.AspNetCore.Components.WebView.props
similarity index 100%
rename from src/BlazorWebView/src/Maui/build/Microsoft.AspNetCore.Components.WebView.Maui.props
rename to src/BlazorWebView/src/Maui/build/Mali.AspNetCore.Components.WebView.props
diff --git a/src/BlazorWebView/src/Maui/build/Microsoft.AspNetCore.Components.WebView.Maui.targets b/src/BlazorWebView/src/Maui/build/Mali.AspNetCore.Components.WebView.targets
similarity index 100%
rename from src/BlazorWebView/src/Maui/build/Microsoft.AspNetCore.Components.WebView.Maui.targets
rename to src/BlazorWebView/src/Maui/build/Mali.AspNetCore.Components.WebView.targets
diff --git a/src/Compatibility/Core/src/Compatibility.csproj b/src/Compatibility/Core/src/Compatibility.csproj
index 87b7e03894ac..aedf985e41a8 100644
--- a/src/Compatibility/Core/src/Compatibility.csproj
+++ b/src/Compatibility/Core/src/Compatibility.csproj
@@ -24,7 +24,7 @@
True
- Microsoft.Maui.Controls.Compatibility
+ Mali.Controls.Compatibility
$(DefaultPackageTags);compatibility;xamarin.forms;migration
Compatibility APIs and objects for .NET Multi-platform App UI (.NET MAUI) apps. This package contains a collection of APIs and views that allow for easier migration from Xamarin.Forms.
diff --git a/src/Controls/Foldable/src/Controls.Foldable.csproj b/src/Controls/Foldable/src/Controls.Foldable.csproj
index 8f2e10d0d09e..f30601e2fcfc 100644
--- a/src/Controls/Foldable/src/Controls.Foldable.csproj
+++ b/src/Controls/Foldable/src/Controls.Foldable.csproj
@@ -3,6 +3,7 @@
$(_MauiDotNetTfm);$(MauiPlatforms)
Microsoft.Maui.Controls.Foldable
Microsoft.Maui.Controls.Foldable
+ Mali.Controls.Foldable
BI1234
false
true
diff --git a/src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj b/src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj
index 80a8fdcad902..f720e79bd75a 100644
--- a/src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj
+++ b/src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj
@@ -1,6 +1,6 @@
-
+
$(MauiPlatforms);$(_MauiDotNetTfm)
@@ -93,7 +93,7 @@
-
+
diff --git a/src/Controls/src/Core/Controls.Core.csproj b/src/Controls/src/Core/Controls.Core.csproj
index d097f01da636..4b276080f586 100644
--- a/src/Controls/src/Core/Controls.Core.csproj
+++ b/src/Controls/src/Core/Controls.Core.csproj
@@ -17,7 +17,7 @@
true
- Microsoft.Maui.Controls.Core
+ Mali.Controls.Core
.NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. This package only contains the core C# and XAML objects used by .NET MAUI. Please install the Microsoft.Maui.Controls package to start using .NET MAUI.
diff --git a/src/Controls/src/Xaml/Controls.Xaml.csproj b/src/Controls/src/Xaml/Controls.Xaml.csproj
index 58f68a6fb626..2fb310a29919 100644
--- a/src/Controls/src/Xaml/Controls.Xaml.csproj
+++ b/src/Controls/src/Xaml/Controls.Xaml.csproj
@@ -18,7 +18,7 @@
true
- Microsoft.Maui.Controls.Xaml
+ Mali.Controls.Xaml
.NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. This package only contains the XAML tooling. Please install the Microsoft.Maui.Controls package to start using .NET MAUI.
diff --git a/src/Core/src/Core.csproj b/src/Core/src/Core.csproj
index 14529a12ee3d..c2dc2efb0205 100644
--- a/src/Core/src/Core.csproj
+++ b/src/Core/src/Core.csproj
@@ -14,7 +14,7 @@
true
- Microsoft.Maui.Core
+ Mali.Core
.NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. This package only contains the core objects used by .NET MAUI. Please install the Microsoft.Maui.Controls package to start using .NET MAUI.
diff --git a/src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.After.targets b/src/Core/src/nuget/buildTransitive/Mali.Core.After.targets
similarity index 100%
rename from src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.After.targets
rename to src/Core/src/nuget/buildTransitive/Mali.Core.After.targets
diff --git a/src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.Before.targets b/src/Core/src/nuget/buildTransitive/Mali.Core.Before.targets
similarity index 100%
rename from src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.Before.targets
rename to src/Core/src/nuget/buildTransitive/Mali.Core.Before.targets
diff --git a/src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.props b/src/Core/src/nuget/buildTransitive/Mali.Core.props
similarity index 100%
rename from src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.props
rename to src/Core/src/nuget/buildTransitive/Mali.Core.props
diff --git a/src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.targets b/src/Core/src/nuget/buildTransitive/Mali.Core.targets
similarity index 56%
rename from src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.targets
rename to src/Core/src/nuget/buildTransitive/Mali.Core.targets
index 337db9f84f00..33c25d60f90a 100644
--- a/src/Core/src/nuget/buildTransitive/Microsoft.Maui.Core.targets
+++ b/src/Core/src/nuget/buildTransitive/Mali.Core.targets
@@ -4,10 +4,10 @@
true
-
+
- $(AfterMicrosoftNETSdkTargets);$(MSBuildThisFileDirectory)Microsoft.Maui.Core.After.targets
+ $(AfterMicrosoftNETSdkTargets);$(MSBuildThisFileDirectory)Mali.Core.After.targets
\ No newline at end of file
diff --git a/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.props b/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.props
similarity index 85%
rename from src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.props
rename to src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.props
index 28406ccb7d5e..94b7aad480ca 100644
--- a/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.props
+++ b/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.props
@@ -7,6 +7,6 @@
false
-
+
\ No newline at end of file
diff --git a/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.targets b/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.targets
new file mode 100644
index 000000000000..b4d8d14f9381
--- /dev/null
+++ b/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Mali.Core.targets
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.targets b/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.targets
deleted file mode 100644
index 05f86306a1d3..000000000000
--- a/src/Core/src/nuget/buildTransitive/net6.0-windows10.0.17763.0/Microsoft.Maui.Core.targets
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Essentials/src/Essentials.csproj b/src/Essentials/src/Essentials.csproj
index 1195c2fec16e..85da56a9420f 100644
--- a/src/Essentials/src/Essentials.csproj
+++ b/src/Essentials/src/Essentials.csproj
@@ -14,7 +14,7 @@
true
- Microsoft.Maui.Essentials
+ Mali.Essentials
$(DefaultPackageTags);essentials;sensors
.NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. This package contains a collection of cross-platform APIs for working with device sensors and other features.
diff --git a/src/Graphics/src/Graphics/Graphics.csproj b/src/Graphics/src/Graphics/Graphics.csproj
index ccf351316238..084e169bd480 100644
--- a/src/Graphics/src/Graphics/Graphics.csproj
+++ b/src/Graphics/src/Graphics/Graphics.csproj
@@ -16,7 +16,7 @@
true
- Microsoft.Maui.Graphics
+ Mali.Graphics
$(DefaultPackageTags);graphics;drawing
.NET Multi-platform App UI (.NET MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. This package contains a collection of cross-platform graphics and drawing APIs.
diff --git a/src/Maui.InTree.props b/src/Maui.InTree.props
index 0d44d03d3844..e9dd2c79cf6b 100644
--- a/src/Maui.InTree.props
+++ b/src/Maui.InTree.props
@@ -3,8 +3,8 @@
-
-
+
+
diff --git a/src/Maui.InTree.targets b/src/Maui.InTree.targets
index 354f15fd8bc2..270d34631383 100644
--- a/src/Maui.InTree.targets
+++ b/src/Maui.InTree.targets
@@ -16,8 +16,8 @@
-
-
+
+