Skip to content

Conversation

@ysmoradi
Copy link
Member

@ysmoradi ysmoradi commented Nov 4, 2025

closes #11560

Summary by CodeRabbit

  • Chores
    • Updated Android bundle publishing workflow in CI/CD pipeline with optimized build parameters
    • Configured Demo and Boilerplate client applications to use source-generated XAML processing
    • Enhanced project build configuration settings to improve compilation efficiency across multiple applications

@coderabbitai
Copy link

coderabbitai bot commented Nov 4, 2025

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Updates MAUI projects to adopt .NET 10 RC 2 features by removing explicit XAML compile-time attributes, configuring source generation-based XAML inflator, disabling Mono runtime in Android publishing, and updating CI/CD artifact export.

Changes

Cohort / File(s) Change Summary
CI/CD Build Configuration
.github/workflows/admin-sample.cd.yml
Added -p:UseMonoRuntime=false parameter to the Publish aab dotnet command; introduced new "android-bundle" artifact upload step to export signed Android bundle from AdminPanel/src/Client/AdminPanel.Client.Maui/bin/Release/net10.0-android/.
Demo XAML Configuration
src/BlazorUI/Demo/Client/Bit.BlazorUI.Demo.Client.Maui/App.xaml.cs
src/BlazorUI/Demo/Client/Bit.BlazorUI.Demo.Client.Maui/Bit.BlazorUI.Demo.Client.Maui.csproj
Removed [assembly: XamlCompilation(XamlCompilationOptions.Compile)] attribute; added <MauiXamlInflator>SourceGen</MauiXamlInflator> property to configure source generation-based XAML inflator.
Boilerplate XAML Configuration
src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/App.xaml.cs
src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj
Removed [assembly: XamlCompilation(XamlCompilationOptions.Compile)] attribute; added <MauiXamlInflator>SourceGen</MauiXamlInflator> property to configure source generation-based XAML inflator.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify consistency of XAML attribute removal across both Demo and Boilerplate projects
  • Confirm MauiXamlInflator property correctly targets source generation in both .csproj files
  • Review Android bundle artifact path pattern matches expected output structure
  • Validate -p:UseMonoRuntime=false parameter compatibility with .NET 10 RC 2

Poem

🐰 A source of joy, our XAML shall flow,
No compilation chains to slow us down,
Source generation's gleam—watch our projects grow,
Through .NET 10's realm, we proudly leap and bound!

Pre-merge checks and finishing touches

✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: applying MAUI .NET 10 RC 2 improvements to multiple projects, which aligns with the changeset modifications.
Linked Issues check ✅ Passed The PR successfully applies MAUI .NET 10 RC 2 improvements across projects: adding MauiXamlInflator SourceGen configuration, removing XamlCompilation attributes, and updating build parameters.
Out of Scope Changes check ✅ Passed All changes directly relate to implementing MAUI .NET 10 RC 2 improvements; no unrelated or out-of-scope modifications detected.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting

📥 Commits

Reviewing files that changed from the base of the PR and between f2b1d1f and 04c165d.

📒 Files selected for processing (5)
  • .github/workflows/admin-sample.cd.yml (1 hunks)
  • src/BlazorUI/Demo/Client/Bit.BlazorUI.Demo.Client.Maui/App.xaml.cs (1 hunks)
  • src/BlazorUI/Demo/Client/Bit.BlazorUI.Demo.Client.Maui/Bit.BlazorUI.Demo.Client.Maui.csproj (1 hunks)
  • src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/App.xaml.cs (0 hunks)
  • src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj (2 hunks)
💤 Files with no reviewable changes (1)
  • src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/App.xaml.cs
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (19)
  • GitHub Check: build api + blazor web
  • GitHub Check: build blazor hybrid (windows)
  • GitHub Check: build blazor hybrid (android)
  • GitHub Check: build blazor wasm standalone (small)
  • GitHub Check: build blazor hybrid (iOS-macOS)
  • GitHub Check: build api + blazor web
  • GitHub Check: build blazor wasm standalone (AOT)
  • GitHub Check: build blazor hybrid (windows)
  • GitHub Check: build api + blazor web
  • GitHub Check: build api + blazor web
  • GitHub Check: build blazor hybrid (windows)
  • GitHub Check: build api + blazor web
  • GitHub Check: build blazor hybrid (iOS-macOS)
  • GitHub Check: build blazor hybrid (android)
  • GitHub Check: build and test
  • GitHub Check: build blazor hybrid (iOS-macOS)
  • GitHub Check: build blazor hybrid (android)
  • GitHub Check: build blazor wasm standalone
  • GitHub Check: build and test
🔇 Additional comments (4)
src/BlazorUI/Demo/Client/Bit.BlazorUI.Demo.Client.Maui/App.xaml.cs (1)

1-11: LGTM! Correctly removes obsolete XAML compilation attribute.

The removal of [assembly: XamlCompilation(XamlCompilationOptions.Compile)] is appropriate when using the new source generation-based XAML inflator. This attribute is no longer needed and would conflict with the MauiXamlInflator set to SourceGen in the project file.

src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj (1)

12-12: ✓ Verified: XamlCompilation attribute correctly removed, MAUI source generation migration complete.

The App.xaml.cs file has been properly updated—the [assembly: XamlCompilation] attribute is not present. The addition of <MauiXamlInflator>SourceGen</MauiXamlInflator> in the .csproj file is correctly paired with this removal, completing the migration to .NET MAUI 10 RC 2's source generation-based XAML compilation.

.github/workflows/admin-sample.cd.yml (2)

307-307: MAUI .NET 10 RC 2 improvement: Mono runtime disabled for Android publishing.

The addition of -p:UseMonoRuntime=false correctly applies the .NET 10 RC 2 enhancement for Android AAB publishing, aligning with the PR objectives. The parameter is properly positioned in the publish command targeting net10.0-android.


309-313: Glob pattern *-Signed.* is correct and consistently applied across workflows.

Verification confirms the artifact upload configuration is appropriate. When you run dotnet publish for a .NET MAUI Android app, the produced bundle gets a "-Signed" suffix, with signed artifacts named as {packageId}-Signed.aab. The glob pattern in line 313 correctly captures this naming convention. The same pattern is consistently used in related workflows (todo-sample.cd.yml, blazorui.demo.cd.yml), and the publish command on line 307 enables signing with -p:AndroidKeyStore=true, confirming the signed artifact will be produced as expected.

@msynk msynk merged commit 54ac056 into bitfoundation:develop Nov 5, 2025
9 checks passed
@ysmoradi ysmoradi deleted the 11560 branch November 10, 2025 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New features of MAUI .NET 10 RC 2 have not been applied to projects

2 participants