Weekly Project News

Archives
Subscribe

Weekly GitHub Report for Maui: August 17, 2026 - August 24, 2026 (22:00:59)

Weekly GitHub Report for Maui

Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.


Table of Contents

  • I. News
    • 1.1. Recent Version Releases
    • 1.2. Other Noteworthy Updates
  • II. Issues
    • 2.1. Top 5 Active Issues
    • 2.2. Top 5 Stale Issues
    • 2.3. Open Issues
    • 2.4. Closed Issues
    • 2.5. Issue Discussion Insights
  • III. Pull Requests
    • 3.1. Open Pull Requests
    • 3.2. Closed Pull Requests
    • 3.3. Pull Request Discussion Insights
  • IV. Contributors
    • 4.1. Contributors

I. News

1.1 Recent Version Releases:

The current version of this repository is 9.0.90

1.2 Version Information:

The .NET MAUI 9.0.90 SR9 release, published on July 11, 2025, includes over 141 commits primarily focused on critical product fixes across iOS, Android, and Windows platforms, testing enhancements, and infrastructure updates. Key highlights include numerous bug fixes addressing UI behavior, threading issues, and control improvements, alongside dependency version bumps and expanded automated testing coverage.

II. Issues

2.1 Top 5 Active Issues:

We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.

  1. [T/BUG] [PLATFORM/ANDROID] [AREA-CONTROLS-SWIPEVIEW] [S/VERIFIED] [S/TRIAGED] [S/NEEDS-ATTENTION] [I/REGRESSION] [PARTNER/SYNCFUSION] [REGRESSED-IN-10.0.100] [Android] SwipeView Threshold is ignored in Microsoft.Maui.Controls 10.0.100 (regression from 10.0.90): This issue reports that in Microsoft.Maui.Controls version 10.0.100 for Android, the SwipeView.Threshold property is ignored, causing the swipe behavior to differ from previous versions where the threshold was respected, indicating a regression from version 10.0.90. The user highlights that this change affects swipe gesture activation distance and that the workaround is to downgrade to 10.0.90, while also noting concerns about the lack of announcement for this breaking change and the increased complexity when using SwipeItemView as an alternative.

    • Comments confirm the issue reproduces on Android with version 10.0.100 and provide visual comparisons; a response clarifies that the Threshold property’s intended behavior changed in a prior release and suggests using SwipeItemView for width control, but users express frustration over the unannounced breaking change, increased code complexity, and related UI issues such as dark mode visibility problems.
    • Number of comments this week: 6
  2. [T/BUG] [PLATFORM/IOS] [S/VERIFIED] [S/TRIAGED] [I/REGRESSION] [AREA-SAFEAREA] [REGRESSED-IN-10.0.100] [REGRESSION: iOS, 10.0.100] Page scrolling behavior upon keyboard hide is broken: This issue reports a regression in .NET MAUI version 10.0.100 on iOS where dismissing a modal page with the soft keyboard visible causes the underlying page to remain permanently shrunk, leaving a large empty area where the keyboard was previously displayed. The root cause is identified as a missing call to SetNeedsLayout() in the keyboard state cleanup code, introduced by a recent commit that replaced a helper method with inline code omitting this crucial layout trigger, resulting in improper page layout restoration after keyboard dismissal.

    • The comments confirm the diagnosis of the regression caused by the removal of SetNeedsLayout() in the unsubscribe method, discuss the detailed root cause analysis tracing back to specific pull requests, and indicate that a fix is planned for an upcoming servicing release to restore the previous correct behavior while maintaining the memory leak fix.
    • Number of comments this week: 5
  3. [T/BUG] [PLATFORM/ANDROID] [PLATFORM/IOS] [T/NATIVE-EMBEDDING] [S/VERIFIED] [AREA-CONTROLS-DIALOGALERT] [S/TRIAGED] [MIGRATION-COMPATIBILITY] Page.DisplayAlert and Page.DisplayActionSheet do not work in MAUI Embedded Use Case: This issue describes a problem where the Page.DisplayAlert and Page.DisplayActionSheet methods do not function when using MAUI in an embedded scenario within native .NET Android or iOS applications, despite working correctly in pure MAUI and previously in Xamarin.Forms. The user suspects the issue arises because the MessagingCenter subscriptions required for these methods are not properly registered in the embedded use case, resulting in no dialogs appearing and breakpoints after the calls never being hit.

    • The comments confirm the issue is reproducible with the latest Visual Studio preview versions, discuss whether to test with the latest MAUI version, and report that attempts to fix or verify the problem with updated samples still result in the alert dialogs not appearing despite breakpoints being hit, indicating the problem persists.
    • Number of comments this week: 3
  4. [T/BUG] [AREA-NAVIGATION] [PLATFORM/IOS] [S/VERIFIED] [S/TRIAGED] [VERSION/IOS-26] iOS Large Title display disappears: This issue reports that on iOS, the large title in navigation bars does not properly transition to the standard title size and position when scrolling, a behavior that previously worked in Xamarin.Forms but is now broken in .NET MAUI version 10.0.11. The problem affects both NavigationPage and Shell implementations and appears to be related to changes in iOS 26+, with discussions revealing that the issue stems from UIKit behavior and safe-area layout constraints rather than MAUI itself, and that workarounds involve using transparent navigation bars and adjusting safe-area edges.

    • The comments confirm the issue is reproducible on iOS 26 but not earlier versions, explain that Apple’s design changes require transparent navigation bars for large title collapsing, and share code samples and demos illustrating this; further investigation identified safe-area layout as a root cause, leading to a draft PR that fixes the problem by preserving native scroll view frames and adjusting safe-area handling, with ongoing review and testing to finalize the solution.
    • Number of comments this week: 3
  5. [PROPOSAL/OPEN] [AREA-CORE-HOSTING] [Enhancement] Add appsettings support: This issue proposes adding support for appsettings.json configuration files in .NET MAUI applications to enable build-time injection of settings, potentially using source generators to avoid runtime performance costs. It addresses the need for a standardized way to manage environment-specific settings and user secrets, which is currently handled through workarounds or hardcoded values, and discusses challenges related to startup performance and configuration reload scenarios.

    • The comments include questions about implementation details like source generation versus IL injection, requests for user secrets and runtime reload support, alternative approaches using compiler constants, concerns about startup delays, and a discussion on the use cases and necessity of appsettings in MAUI; the issue was mistakenly closed as a duplicate but later reopened to continue exploring a distinct, broader solution.
    • Number of comments this week: 2

2.2 Top 5 Stale Issues:

We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.

As of our latest update, there are no stale issues for the project this week.

2.3 Open Issues

This section lists, groups, and then summarizes issues that were created within the last week in the repository.

Issues Opened This Week: 24

Summarized Issues:

  • UI Rendering and Layout Issues: Several issues describe problems with UI rendering and layout behavior across platforms, including CollectionView failing to render items with converters asynchronously, modal pages remaining shrunk after keyboard dismissal on iOS, and visual glitches like black panels appearing when dismissing the keyboard on Android. These problems cause inconsistent or broken UI experiences that differ from previous versions or expected behavior.
  • issues/37550, issues/37656, issues/37691
  • Back Button Handling Regressions: Multiple regressions affect the handling of back button presses on Android, where overridden methods like Shell.OnBackButtonPressed() and Page.OnBackButtonPressed() are no longer called in Release builds or certain versions, causing back button events to be unhandled. This breaks navigation flows that previously worked correctly in earlier versions.
  • issues/37657, issues/37706, issues/37781
  • Android Map Clustering and Pin Icon Issues: Several issues describe problems with map clustering on Android, including lost custom pin icons due to improper image disposal, clusters not updating after small zoom changes, redundant pin icon reloads causing flickering, and excessive bitmap creation from bypassing cluster icon caches. These issues degrade map performance and visual consistency during zoom and cluster operations.
  • issues/37767, issues/37768, issues/37773, issues/37775
  • Theme and Styling Problems: There are issues with theme application and styling updates, such as Android apps failing to update theme styling correctly when switching between light and dark modes, and UseMaterial3 causing unreadable status bar icons due to color conflicts. These regressions affect app appearance and user experience.
  • issues/37705, issues/37718
  • Build and Tooling Failures: Problems related to build processes and tooling include race conditions caused by Resizetizer during Visual Studio DesignTimeBuilds leading to intermittent build failures, and debugger attachment failures on Android after the first debug launch. These issues disrupt development workflows and debugging.
  • issues/37748, issues/37760
  • Performance and Freezing Issues: Performance regressions and deadlocks are reported, such as window resizing on Mac causing slowdowns and freezes, and deadlocks on Android when awaiting Screenshot.CaptureAsync() synchronously on the UI thread. These problems impact app responsiveness and stability.
  • issues/37638, issues/37667
  • XAML Compilation and Attribute Parsing Errors: Issues include XAML compilation failures due to multiple DataTemplates using x:Reference causing build errors in .NET 11 Preview 7, and the need to correctly handle empty space separators in multivalued attributes like Margin to prevent silent errors. These affect build success and code portability.
  • issues/37551, issues/37605
  • Project Configuration and Workload Requirements: A problem is described where setting UseMaui=true on a non-platform TargetFramework incorrectly requires the maui-tizen workload during restore, even when Tizen is not targeted, causing unnecessary workload installation requirements.
  • issues/37714
  • Release Preparation and Coordination: One issue tracks the preparation and integration of the .NET MAUI 10.0.101 release, including backporting fixes for regressions and coordinating validation and approvals before shipping.
  • issues/37723
  • Platform-Specific Review Routing: An issue describes how certain path patterns do not match rows in the dimension routing table used by the maui-expert-reviewer, causing platform-specific review dimensions to be omitted for Maps assembly files, suggesting the need to add specific path patterns for correct routing.
  • issues/37776
  • UI Test Failures: A regression causes the NavigateForwardWhenLooped and NavigateBackWhenLooped UI tests on iOS to fail due to a recent fix, representing a break from previous behavior.
  • issues/37571
  • UI Text Truncation: An issue reports that the monkey's name is truncated after minimizing the window in a layout test case on Windows and macOS, affecting text display in Microsoft.Maui.Controls.
  • issues/37668
  • SwipeView Threshold Regression: The SwipeView.Threshold property is ignored or applied incorrectly in Microsoft.Maui.Controls 10.0.100 for Android, causing unexpected swipe behavior and requiring downgrading as a workaround.
  • issues/37700

2.4 Closed Issues

This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.

Issues Closed This Week: 35

Summarized Issues:

  • UI Interaction and Visual Effects Issues: Several issues describe problems with UI elements losing expected interactive or visual behaviors. On Windows, changing a button's background color removes hover and press effects, leaving the button static during interactions. On Android, the Shell Title Bar incorrectly shows a hamburger icon instead of a back arrow after multiple navigations, confusing users.
    • issues/9552, issues/37532
  • iOS WebView and Navigation Delegate Problems: There are issues with iOS WebView navigation delegates causing crashes or incomplete callback executions. The completion handler in webView:decidePolicyForNavigationAction:decisionHandler: is not always called due to early returns, leading to intermittent NSInternalInconsistencyException crashes in production.
    • issues/17699
  • iOS Lifecycle and Delegate Extensions: The absence of an extension method for the deprecated PerformFetch iOS lifecycle delegate forces developers to use a less direct pattern, complicating lifecycle event handling.
    • issues/17960
  • Layout and Orientation Handling on Android: Using FlexLayout with non-standard margins causes element overlap when changing orientation from vertical to landscape on Android devices, an issue resolved in .NET 10.
    • issues/18010
  • MacCatalyst Compatibility in WebViewHandler: The WebViewHandler.cs file lacks conditional compilation directives for MacCatalyst, causing code paths to fail or behave inconsistently compared to iOS.
    • issues/18394
  • Map Pins and Collection Reset Handling: When the ItemsSource collection triggers a Reset event, map pins are improperly cleared instead of updated, causing the MapHandler to lose track of pins during dramatic collection changes.
    • issues/18503
  • Resizetizer and Image Cleanup Problems: The Resizetizer tool fails to clean up resized image files from obj folders after original images are deleted, resulting in deleted images still appearing in build outputs despite cleaning.
    • issues/19373
  • UITest Failures on iOS 17: Legacy UITests such as Issue10300Test and RemoveItemsQuickly fail on iOS 17, with exceptions like ArgumentOutOfRangeException raised during collection modifications, breaking UI test reliability.
    • issues/19487, issues/19488
  • Navigation Bar Button Regression in .NET 8: The TopViewController.NavigationItem.SetLeftBarButtonItem method no longer works as expected in .NET 8 MAUI projects, breaking functionality that was present in .NET 7.
    • issues/20391
  • Flyout Menu "More" Option Behavior: Users request an option to disable the automatic "more" menu in Flyout menus when more than five items exist, to avoid forced navigation to a separate "more" screen.
    • issues/20579
  • iOS Entry Control Crash on ClearButtonVisibility: Using ClearButtonVisibility="WhileEditing" on an Entry control causes a crash on iOS 12.5.7 devices in release mode, impacting app stability on older hardware.
    • issues/21313
  • Android TabbedViewHandler OffscreenPageLimit Regression: The OffscreenPageLimit property does not function correctly on Android due to missing MapUpdateOffscreenPageLimit, representing a regression from Xamarin.Forms behavior.
    • issues/23128
  • Windows Splash Screen and Font Packaging Issues: Windows app packages intermittently miss splash screen icons or fonts from Resources/Fonts during build and publish, causing app startup failures or missing assets. Workarounds include cleaning build directories or using MauiAsset instead of MauiFont.
    • issues/23576, issues/23659
  • Android File Picker Hangs on Large Files: The Android File Picker hangs and makes the app unresponsive when selecting large video files due to synchronous file copy operations that should be asynchronous.
    • issues/24505
  • CollectionView InvalidateMeasure Event Missing on Windows and Android: The InvalidateMeasure event is not triggered on CollectionView when content size changes on Windows and Android, causing inconsistent layout updates compared to iOS.
    • issues/24672
  • Android Splash Screen and Theme Colors Not Updating Dynamically: On Android, splash screen and status/navigation bar colors do not update dynamically when the device theme changes, requiring app restart to apply new colors.
    • issues/25693
  • MacCatalyst FilePicker Returns Temporary Path: The FilePicker on MacCatalyst returns a temporary file path instead of the actual physical file path, complicating file access scenarios.
    • issues/25873
  • iOS CollectionView Header Padding and Accessibility Issues: Padding and margin on the left side of CollectionView headers cause text cutoff on iOS, and VoiceOver screen reader skips all child elements inside the header during forward navigation, breaking accessibility.
    • issues/26937, issues/30038
  • iOS Pull-to-Refresh Horizontal Scrollbar Regression: A horizontal scrollbar briefly appears during pull-to-refresh gestures on iOS in .NET 10, a regression from previous versions where no horizontal scrolling was expected.
    • issues/31960
  • Android Back Button Does Not Cancel Web Authentication: Pressing the Android system Back button on the Microsoft account chooser screen during WebAuthenticator.Default.AuthenticateAsync() does not cancel or complete the authentication task, causing the app to hang indefinitely.
    • issues/32766
  • MAUI Grid Horizontal Spacing Update Issue: Updating horizontal item spacing in the MAUI I2_Vertical grid only affects the second column instead of all columns, causing inconsistent spacing across macOS, iOS, and Android.
    • issues/34257
  • iOS Simulator Rotation Obscures Text by Notch: Rotating the iOS Simulator 90° counter-clockwise causes text to be obscured by the notch in various test cases, affecting versions 9.0.120 through 10.0.90 and fixed in later versions.
    • issues/35410
  • Windows Splash Screen Asset Generation Race Condition: In .NET 10, MSBuild's timestamp-based checks combined with Resizetizer's WriteOnlyWhenDifferent="true" cause intermittent failure to generate splash screen files in Windows unpackaged mode, resulting in missing assets.
    • issues/36341
  • Publish Pipeline Script Replacement Proposal: A proposal suggests replacing MAUI's custom NuGet publishing script with the approved 1ES.PublishNuget@1 task to improve security, validation, and maintainability in the official release pipeline.
    • issues/36567
  • Resizetizer and DesignTimeBuild Race Condition in Publish: Visual Studio background DesignTimeBuilds overwrite Resizetizer-generated icon files with stale unpackaged icons during Publish builds targeting MSIX, causing incorrect icons in the final package.
    • issues/36594
  • Android 14 Crash with Telerik RadGridView on .NET MAUI 10.0.90: A NullReferenceException crash occurs on Android 14 when navigating to certain screens after upgrading to .NET MAUI 10.0.90, linked to Telerik RadGridView components and not present in 10.0.80.
    • issues/36744
  • iOS TextKit 1 vs TextKit 2 Tap Target Offset: On iOS 16+, RecalculateSpanPositions uses legacy TextKit 1 API causing tap target regions for text spans to be vertically offset by 30–45 points from visible text, making tap gestures fail unless tapped above the text.
    • issues/37013
  • Internal GestureRecognizer Implementations Cause Compilation Errors: Several GestureRecognizer implementations in .NET 11 are internal, causing compilation errors in Avalonia.Controls.Maui builds and requiring them to be made public to avoid workarounds.
    • issues/37338
  • Windows CollectionView Enumerator Exception in .NET 11 Preview: Selecting the first item in CollectionView on Windows triggers an "Unexpected type for enumerator" exception in .NET 11 Preview 7, an issue not present in .NET 10.
    • issues/37535
  • Request for Official Firebase Plugin for .NET MAUI: Developers request an official Firebase plugin to enable native push notification support in .NET MAUI apps without relying on third-party libraries, easing migration and integration.
    • issues/37547
  • Windows Dispatcher Extension Method Access Failure: The UserStoppedTypingBehavior throws an exception on Windows 11 in .NET MAUI 11.0.0-preview.7 due to failed access to a dispatcher extension method, with no current workaround.
    • issues/37694

2.5 Issue Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.


III. Pull Requests

3.1 Open Pull Requests

This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Opened This Week: 23

Key Open Pull Requests

1. [release/10.0.1xx-sr10] Integrate .NET MAUI 10.0.101 VS insertion payload: This pull request integrates the staged .NET MAUI 10.0.101 Visual Studio insertion payload into the release/10.0.1xx-sr10 branch, including seven servicing-regression backports and an update to SkiaSharp 4.150.1, while addressing various component fixes and requiring thorough CI validation and human approval before merging.

  • URL: pull/37746
  • Associated Commits: 4a223, 7f27a, f4963, f1f38, b4efe, 2dc09, a380d, 7e107, 7c523

2. Add badge support to TabbedPage: This pull request adds badge support to the regular TabbedPage in .NET MAUI by implementing attached properties for badge text, color, and text color, with platform-specific integrations for Android, iOS, Mac Catalyst, Windows, and Tizen, including comprehensive testing and handling of platform-specific limitations.

  • URL: pull/37755
  • Associated Commits: d8aac, 65d29, b492f, b6afb, c8bea, 8ca3e, c7282

3. Fix AnimationExtensions.Insert — disposed non-starting manager leaves callback statically rooted: This pull request fixes a memory leak in AnimationExtensions.Insert caused by disposed AnimationManagers with AutoStartTicker set to false leaving callback references statically rooted in a static ConcurrentDictionary, by adding disposal notifications and cleanup logic that removes these entries when the manager is disposed.

  • URL: pull/37572
  • Associated Commits: bfe29, c6a9f, 64596, cb8db, 2cf25, 03bdd

Other Open Pull Requests

  • Accessibility improvements for Mac Catalyst CollectionView: This pull request fixes the VoiceOver accessibility issue by applying the UIAccessibilityTrait.Button trait directly to the first accessible child element instead of a non-accessible container. This change improves the clarity of VoiceOver announcements for selectable CollectionView items.
    pull/37674
  • UI test maintenance and optimization: These pull requests update outdated UI test screenshot baselines to fix build failures and rebalance the oversized CollectionView UI test category by splitting it into two fixture-level shards. The changes reduce test execution time across platforms while preserving complete test coverage and add support for reusable raw VSTest filter expressions.
    pull/37702, pull/37732
  • ShellContent query parameter enhancements: This pull request adds two new bindable, XAML-friendly APIs—QueryString and QueryParameters—to the ShellContent class. These enable multiple statically declared shell entries to reuse the same page template while supplying different instance data declaratively without explicit navigation calls.
    pull/37689
  • GitHub Actions workflow security and reliability: This pull request prevents scheduled workflows from running in forked repositories by gating jobs to the canonical repository and securing agent activation jobs. It also enforces trusted-branch checks, sets expiration policies for action-failure issues, and regenerates lock files to maintain consistent workflow behavior.
    pull/37749
  • Safe area contracts exposure and enhancements: This pull request makes interfaces like ISafeAreaView2 and ISafeAreaElement public to expose safe area contracts for custom views. It migrates built-in controls to use these helpers, adds regression tests, and refines platform-specific inset handling for improved layout on iOS and Android targeting .NET 11.0.
    pull/37750
  • Android Screenshot.CaptureAsync deadlock fix: This pull request resolves a deadlock caused by synchronous UI-thread callers waiting on an asynchronous PixelCopy callback by moving the callback to a shared HandlerThread. It modifies the await chain to avoid resuming on the UI thread, preventing circular dependencies and safely handling failure scenarios.
    pull/37680
  • Scoped release-readiness process enforcement: This pull request enables a human-gated release-readiness process by allowing scoped release repository change PRs from a release-agent/* fork branch. It requires two distinct non-bot maintainer approvals and prohibits direct upstream pushes, self-approval, and automated merges to enhance approval enforcement.
    pull/37693
  • Verified agentic workflow failure fixes: This pull request addresses multiple workflow failures by canonicalizing apostrophes, restoring hardened Skill Validation fork checkouts, refining memory workflows, handling anonymous AzDO access, and relocating Action Pin Refresh setup. These changes pass comprehensive validation tests and improve workflow reliability.
    pull/37722
  • OneLocBuild authentication and localization pipeline fixes: This pull request fixes OneLocBuild authentication by using a federated Ceapex service connection with a short-lived Entra token. It removes the legacy localization stage and template to prevent duplicate handoffs and corrects job indentation and conditions in the new localization stage.
    pull/37747
  • Windows WebView navigation state fix: This pull request updates the Windows WebView handler to use CoreWebView2.CanGoBack and CanGoForward properties instead of stale control properties. It adds a regression test to ensure CanGoBack returns false after navigating back to the first page.
    pull/37648
  • UriImageSource disk caching restoration and enhancement: This pull request restores and enhances disk caching for UriImageSource stream consumers by implementing a shared file-system cache that respects caching policies and coalesces concurrent requests. It manages cache eviction, streams network responses to temporary files, preserves platform-specific stream requirements, and improves iOS caching behavior.
    pull/37690
  • BackButtonBehavior.Command memory leak fix: This pull request fixes a memory leak by updating the CanExecuteChanged subscription to use WeakCommandSubscription. This ensures discarded behaviors and their binding contexts are properly released when commands change.
    pull/37771
  • Android safe-area inset padding fix for translated views: This pull request fixes an issue where views translated offscreen using TranslationY incorrectly preserved the top safe-area inset. It updates vertical animation detection to apply padding only to full-screen Shell navigation transitions, excluding smaller translated controls.
    pull/37772
  • Darc-based official release pipeline generalization: This pull request generalizes the Darc-based official release pipeline to enable publishing shipping NuGet packages from allowlisted non-workload repositories like dotnet/android-libraries. It maintains the current MAUI workload-release process and adds validation, auditing, and dry-run capabilities.
    pull/37658
  • Android status bar icon contrast revert: This pull request reverts a previous change that fixed the status bar icon contrast on Android by restoring the original theme-based appearance logic. It removes the new luminance-based color resolution methods introduced in the prior fix.
    pull/37719
  • iOS ScrollView SafeAreaEdges double reservation fix: This pull request addresses an issue where ScrollView with SafeAreaEdges="Container" reserved the safe area twice, causing phantom scroll range and over-scroll space. It modifies padding logic to trust UIKit's native inset when active, eliminating double reservation while maintaining other inset adjustment modes.
    pull/37765
  • Android map pin icon disposal and performance fix: This pull request fixes an issue where custom pin icons loaded from rooted file paths reverted to the default marker after leaving a cluster due to improper disposal timing. It defers image resource release to the next main loop cycle and prevents redundant image reloads during reclustering to improve performance.
    pull/37769
  • Android map reclustering zoom level fix: This pull request fixes reclustering of map pins by making the zoom level comparison inclusive, allowing reclustering to trigger correctly on single-step zoom changes such as Google Maps zoom buttons or double-tap gestures.
    pull/37770
  • Android map pin icon caching optimization: This pull request optimizes the Android map implementation by caching pin icons based on their image source to prevent redundant reloading on every cluster pass during zoom changes. This reduces unnecessary image fetches and decoding, improving performance.
    pull/37774

3.2 Closed Pull Requests

This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Closed This Week: 68

Key Closed Pull Requests

1. [release/10.0.1xx-sr10] Integrate .NET MAUI 10.0.101 VS insertion payload: This pull request proposes integrating the staged .NET MAUI 10.0.101 Visual Studio insertion payload, including seven servicing-regression backports and an update to SkiaSharp 4.150.1, from the vs/10.0.101 branch into the release/10.0.1xx-sr10 branch, with detailed component fixes and updates across multiple platforms and features pending final release-owner approval and CI validation.

  • URL: pull/37745
  • Associated Commits: c5312, 7b53a, ac4c0, b453e, dbdf1, c3c26, c6cf2, 9f573, fa8f3, 36636, 577ff, 2b0d9, 9b0dc, 506ea, 6c898, 361dc, 2efca, d632d, 94793, 34bc3, e349d, 8b42f, 09393, 5130c, 48ec5, 77859, 9557d, 3d05f, f0329, 0f318, 8ef8e, aed94, 13778, c2867, 13e4e, ef104, 72ca8, a02bc, 470a2, 848b0, 06346, 8b696, f537b, ac04d

2. [Perf] Optimize allocations in the layout engine: This pull request optimizes the Core layout engine in the .NET MAUI project by eliminating all managed heap allocations during steady-state measure and arrange passes in Grid and Flex layouts through extensive use of struct conversions, ArrayPool for array reuse, dictionary reuse, and other allocation-reducing techniques, resulting in zero managed allocations on the hot path and significantly reducing GC pressure to improve layout performance, especially on mobile devices.

  • URL: pull/34155
  • Associated Commits: cc146, 08dbf, 6c3f6, e06a1, fce81, 91b04, 4287b, 4f779, 0d623, 3bc89, 577ff, 0ac49, f623c, 43a23, 34cb1, 5fe48, 5e212, 9d59f, 4ae11, 3640e, 95a18, 5080e, 039ff, 2ed02

3. [Extensibility] Essentials: Bridge DI implementations to static facades: This pull request forward-ports the bridging of dependency-injected Essentials implementations to their corresponding static facades during MauiApp initialization, enhancing lifecycle management, platform-specific token forwarding, and test stability without introducing new public APIs.

  • URL: pull/36657
  • Associated Commits: 14450, 0bd37, 33602, 681fb, 0df92, 70a89, 3daaf, bd685, af4bd, 8be37, baddb, 27eba, 74088, 02bcb, 9dc9d, 2d72d, e9518

Other Closed Pull Requests

  • Android UI and Icon Improvements: Multiple pull requests address UI issues on Android, including fixing the status bar icon contrast in Material 3 by using colorSurface instead of colorPrimary and resolving the Shell toolbar icon showing a hamburger instead of a back arrow by introducing a separate drawable for the back-arrow icon. These changes improve visual consistency and user experience across Android devices.
    • pull/37710, pull/37642
  • Memory Leak Fixes: Several pull requests fix memory leaks by replacing strong-reference static events with WeakEventManagers and refactoring test code to avoid false-positive leak reports. These fixes improve resource management and ensure accurate leak detection across multiple platforms including Android, Windows, iOS, and Mac.
    • pull/37382, pull/37310, pull/37645
  • ScrollView and Gesture Handling on iOS: A pull request completes and refines ScrollView scroll request handling inside collapsed branches on iOS by properly releasing or replaying parked scroll requests and repairing safe area inset logic. This ensures correct view lifecycle behavior and is verified with comprehensive unit and UI tests.
    • pull/37409
  • Release Pipeline and Publishing Enhancements: Improvements include replacing a custom NuGet publishing script with the standardized 1ES.PublishNuget task to enhance validation and recovery, and adding automated local readiness checks for the net11 official build pipeline with sanitized reporting. These changes streamline release processes without public API changes.
    • pull/36568, pull/36915
  • SwipeItem Icon Color Customization: A new bindable property SwipeItem.IconColor was introduced to explicitly control swipe item icon tinting across Android, iOS, and Windows in .NET 11. This replaces implicit tinting with configurable support that responds to theme changes, improving icon visibility and customization.
    • pull/36884
  • Automated PR Review Workflow Enhancements: An autonomous feature was added to detect eligible pull requests for re-review based on deterministic signals and automatically apply a label to trigger rerun-review-scanner, closing the loop for automated review reruns with robust error handling and test coverage.
    • pull/36358
  • Gesture Recognizer API Hardening: The gesture recognizer dispatch API was hardened by adding input validation, enforcing non-nullable annotations, and improving documentation to ensure safer usage for third-party implementations. This enhances robustness and clarity in gesture handling.
    • pull/37671
  • ReadyToRun Publishing Opt-in Feature: An opt-in feature for full ReadyToRun publishing in the Android CoreCLR release was introduced via the MauiEnableFullReadyToRunPublishing property, improving runtime performance while preserving partial R2R by default. Documentation and MSBuild coverage outline the tradeoffs between APK size and performance.
    • pull/36588
  • Release-Readiness Skill Enhancements: The release-readiness skill was extended to generate deterministic, public-safe Preview and servicing-release handoff artifacts with strict validation of metadata and package sources, maintaining distinct semantics within a unified public handoff format.
    • pull/37408
  • AnimationManager Disposal Fix: Disposal logic in AnimationManager.Dispose was fixed to properly detach ticker callbacks, clear active animations, and prevent memory leaks by ensuring idempotent disposal. Comprehensive unit tests verify correct behavior across platforms.
    • pull/37639
  • Memory Leak Workflow Improvements: Memory Leak workflows were improved by increasing cadence, preventing re-processing of already fixed leaks, auto-closing related issues, and enhancing the Daily Leak Hunter to avoid re-filing fixed leaks, all while ensuring safe dry-run modes and updated permissions.
    • pull/36524
  • iOS Pull-to-Refresh Gesture Fix: The pull-to-refresh gesture on iOS was fixed for empty CollectionViews by moving the EmptyView inside the native CollectionView and adding a right-to-left counter-transform to prevent mirrored content, preserving correct layout and flow direction.
    • pull/37404
  • Dependency and SDK Alignment: All 35 dotnet/dotnet dependencies were aligned and repository SDK and Arcade/Helix toolset selections updated in global.json to match the .NET 11 RC1 SDK/runtime build, preserving existing package pins.
    • pull/37688
  • Visual Tree Visibility Propagation Fix: The propagation of effective visibility in the visual tree was fixed by maintaining local VisualElement.IsVisible values while ensuring handler-facing IView.Visibility reflects cumulative ancestor visibility, optimizing change propagation and handling reparenting and measure invalidation correctly.
    • pull/37546
  • Windows Border Clipping Fix: A fix was introduced for Windows where transformed content inside a Border was clipped incorrectly by adding a stationary native clip host that preserves correct clipping during transforms without adding public APIs.
    • pull/37424
  • .NET SDK Workload Path Normalization: The issue of incorrect workload paths caused by missing trailing directory separators in MSBuildExtensionsPath was fixed by normalizing the path with a trailing slash before appending relative paths, ensuring correct resolution of workload manifests and the dotnet host.
    • pull/37711
  • WebAuthenticator Request Lifecycle Centralization: The WebAuthenticator request lifecycle was centralized with a process-wide, identity-safe request manager ensuring exactly-once completion, strict callback validation, consistent cancellation, and cleanup across platforms, preserving the public API and improving reliability and test coverage.
    • pull/37426
  • MacCatalyst CI Click Optimization: The MacCatalyst click operation in the CI/PR pipeline was optimized by deferring costly element TagName lookups until click failures occur, eliminating unnecessary remote requests on success and improving test performance and reliability.
    • pull/37433
  • Copilot CLI Path and Workflow Reliability Fixes: Copilot CLI path issues in agentic workflows were fixed by regenerating workflows to stage the CLI in a portable runner-local path, disabling shell access in the automatic labeler, and adopting a new disabled-expiry sentinel for action-failure issues, improving workflow reliability.
    • pull/37447
  • Agentic Workflows Upgrade: All 14 agentic workflows were upgraded to use stable gh-aw version 0.86.2, resolving hardcoded Copilot CLI path issues by adopting a consistent runtime that locates Copilot via PATH and staging it in a sandboxed directory, while maintaining existing logic and passing validation.
    • pull/37549

3.3 Pull Request Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.


IV. Contributors

4.1 Contributors

Active Contributors:

We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.

If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.

Contributor Commits Pull Requests Issues Comments
Copilot 375 2 0 80
245 0 0 0
kubaflo 109 22 1 84
jfversluis 113 16 0 41
mattleibow 111 0 0 0
devanathan-vaithiyanathan 88 4 1 0
PureWeen 50 3 0 24
HarishwaranVijayakumar 58 1 2 4
Dhivya-SF4094 44 4 1 0
missymessa 23 19 0 7

Don't miss what's next. Subscribe to Weekly Project News:
Powered by Buttondown, the easiest way to start and grow your newsletter.