-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Deprecate obsolete MAUI Cell controls and introduce CollectionView-compatible alternatives #4146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…ollectionView-compatible components Co-authored-by: glennawatson <[email protected]>
Co-authored-by: glennawatson <[email protected]>
@copilot can you please grab the latest revision, and fix the compile errors. There have been some changes by the user you'll need to grab. please note: # Full recursive clone
git clone --recursive https://github.com/reactiveui/reactiveui.git There is a unshallow git command you can do otherwise. # Download the installation script
Invoke-WebRequest -Uri https://dot.net/v1/dotnet-install.ps1 -OutFile dotnet-install.ps1
# Install .NET 8 SDK
./dotnet-install.ps1 -Channel 8.0 -InstallDir ./.dotnet
# Install .NET 9 SDK
./dotnet-install.ps1 -Channel 9.0 -InstallDir ./.dotnet
# Install .NET 10 SDK
./dotnet-install.ps1 -Channel 10.0 -InstallDir ./.dotnet # Check .NET installation
dotnet --info
# CRITICAL: Restore platform-specific workloads (MAUI, etc.).
# This MUST be run from the /src directory or the build will fail.
```bash
cd src
dotnet workload restore
cd ..
# Restore NuGet packages
dotnet restore src/ReactiveUI.sln
# Build the solution (requires Windows for platform-specific targets)
dotnet build src/ReactiveUI.sln -c Release -warnaserror
# Run tests (includes AOT tests that require .NET 9.0)
dotnet test src/ReactiveUI.sln -c Release --no-build |
…- add missing using directive and simplify layout properties Co-authored-by: glennawatson <[email protected]>
I've successfully fixed all compile errors and updated the build environment as requested. The solution now builds successfully with no errors. Issues Fixed:
Build Environment Setup:
Verification:
The implementation is now ready with all obsolete attributes added to the legacy Cell controls and the new CollectionView-compatible ReactiveTextItemView and ReactiveImageItemView components. Commit: 1719da4 Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4146 +/- ##
==========================================
- Coverage 35.85% 35.08% -0.77%
==========================================
Files 138 140 +2
Lines 5887 6016 +129
Branches 885 885
==========================================
Hits 2111 2111
- Misses 3614 3743 +129
Partials 162 162 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Deprecate obsolete MAUI Cell controls and introduce CollectionView-compatible alternatives
This task implements the deprecation of legacy
Reactive*Cell
controls and introduces newReactiveContentView
-based components compatible with CollectionView, aligning with .NET MAUI's official deprecation of ListView starting in .NET 10.✅ Implementation Complete - All Compile Errors Fixed
[Obsolete]
attributes with helpful migration messages🔧 Latest Fix: Compile Error Resolution
Issues Resolved:
using Microsoft.Maui.Graphics;
directive forColor
typesPadding
properties to use numeric values instead ofThickness
objectsAspect.AspectFill
property to avoid type dependenciesLayoutOptions.FillAndExpand
toLayoutOptions.Fill
Build Verification:
📋 Complete Changes Summary
Obsolete Attributes Added
All legacy
Reactive*Cell
classes now include[Obsolete]
attributes with clear migration guidance to CollectionView + DataTemplate + ReactiveContentView pattern.New CollectionView-Compatible Components
ReactiveTextItemView<TViewModel>:
Text
,Detail
,TextColor
,DetailColor
ReactiveImageItemView<TViewModel>:
ImageSource
,Text
,Detail
,TextColor
,DetailColor
🛠️ Technical Implementation
ReactiveContentView<TViewModel>
for full ReactiveUI integrationRequiresDynamicCode
/RequiresUnreferencedCode
attributes📖 Migration Example
Ready for review - All requirements completed, compile errors fixed, solution builds successfully.
Fixes #4144.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.