Move install_latest_maui inside MauiNuGetConfigContext for package source resolution#5087
Conversation
…cenarios Co-authored-by: LoopedBard3 <15679138+LoopedBard3@users.noreply.github.com>
Co-authored-by: LoopedBard3 <15679138+LoopedBard3@users.noreply.github.com>
… android/ios projects so they succeed in installing Maui as well.
|
Working performance_script build: https://dev.azure.com/dnceng/internal/_build/results?buildId=2880973&view=results (some jobs are still failing due to devices being offline, but we are getting to the send to helix step). There also seems to be some one device startup failures, but those should be investigated in another PR. |
There was a problem hiding this comment.
Pull request overview
This PR fixes package resolution failures by ensuring install_latest_maui() has access to MAUI-specific NuGet package sources. The function queries package feeds via dotnet package search, which requires the merged NuGet.config containing MAUI sources.
Changes:
- Moved
install_latest_maui(precommands)call insideMauiNuGetConfigContextblock for all MAUI and .NET mobile scenarios - Added
MauiNuGetConfigContextwrapper to netios and netandroid scenarios - Updated comments to clarify that the context provides sources for
dotnet package search,dotnet new, anddotnet build/publish
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/scenarios/netios/pre.py | Added MauiNuGetConfigContext wrapper and moved install_latest_maui inside it |
| src/scenarios/netandroid/pre.py | Added MauiNuGetConfigContext wrapper and moved install_latest_maui inside it |
| src/scenarios/mauisamplecontentandroid/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauiios/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauidesktop/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauiblazorios/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauiblazordesktop/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauiblazorandroid/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
| src/scenarios/mauiandroid/pre.py | Moved install_latest_maui inside existing MauiNuGetConfigContext |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
install_latest_maui()queries package feeds viadotnet package search, which requires access to MAUI-specific NuGet sources. The function was called before enteringMauiNuGetConfigContext, causing package resolution failures when dependencies exist only in MAUI feeds.Changes
Moved
install_latest_maui(precommands)inside theMauiNuGetConfigContextblock for all MAUI scenarios:mauiandroid/pre.pymauiios/pre.pymauiblazorandroid/pre.pymauiblazorios/pre.pymauisamplecontentandroid/pre.pymauidesktop/pre.pymauiblazordesktop/pre.pyThis ensures the merged NuGet.config (containing MAUI package sources) is active during workload installation, not just during
dotnet newanddotnet build.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.