docs: document solution-less builds, .slnx, and CPM with implicit packages - #24008
docs: document solution-less builds, .slnx, and CPM with implicit packages#24008ajpinedam wants to merge 4 commits into
Conversation
…kages Documents the already-working frictionless paths of the Uno.Sdk: - using-the-uno-sdk.md: new sections for solution-less builds and .slnx solutions, Central Package Management coexistence with implicit packages (with a worked Directory.Packages.props example), VersionOverride, per-TargetFramework versions under CPM, and NuGet audit behavior for implicit packages. - dev-server.md: solution-less workspace resolution via global.json, --solution-dir wording, and the Uno.Sdk 6.6+ add-ins requirement. - devserver-disco.md / common-issues-ai-agents.md: troubleshooting entries no longer instruct users to locate a .sln when a solution file is not required. - additional-vscode-topics.md: working with solution-less workspaces in VS Code. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017J78oYYJ7rSMaewD9b9Fhs
There was a problem hiding this comment.
Pull request overview
Documentation updates to better surface the Uno.Sdk’s “solution-less” workflows, .slnx support, and Central Package Management (CPM) behavior with Uno.Sdk implicit packages, plus aligned Dev Server and VS Code guidance.
Changes:
- Document solution-less build/run/publish and
.slnxusage in the Uno.Sdk feature doc, includingglobal.jsonplacement guidance. - Add CPM + implicit package coexistence guidance (including
VersionOverride, per-TFM central versions, and NuGet audit behavior). - Update Dev Server / disco / VS Code docs to reflect solution-less workspace resolution via
global.json.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| doc/articles/features/using-the-uno-sdk.md | Adds solution-less + .slnx guidance and CPM/implicit-packages behavior documentation. |
| doc/articles/features/devserver-disco.md | Updates “No global.json found” remediation to focus on solution-less workspaces via global.json. |
| doc/articles/dev-server.md | Updates Dev Server usage docs for solution-less workspaces and clarifies --solution-dir. |
| doc/articles/common-issues-ai-agents.md | Adjusts troubleshooting guidance to include solution-less (global.json) workflows. |
| doc/articles/additional-vscode-topics.md | Adds VS Code guidance for working without .sln/.slnx. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017J78oYYJ7rSMaewD9b9Fhs
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.
Suppressed comments (3)
doc/articles/features/devserver-disco.md:168
- This troubleshooting text states that solution-less workspaces are resolved via
global.json, butuno-devserver discocurrently short-circuits discovery when no.sln/.slnxcan be found (workspace resolution returnsNoCandidates), so users in a truly solution-less repo may need to pass--solution-dirpointing to the directory that containsglobal.json. Consider updating the guidance to mention the--solution-diroverride (and/or clarify the.sln/.slnxdiscovery requirement fordisco).
You are running `disco` outside of an Uno Platform workspace. Change to a directory that contains — or is beneath — the `global.json` file declaring your `Uno.Sdk` version. A solution file is not required: solution-less workspaces are resolved through `global.json`.
doc/articles/common-issues-ai-agents.md:43
- This sentence implies
global.jsonmust be in the current directory for solution-less projects, but most tooling resolves it from the current directory or any parent directory. Wording this as “the folder containing (or beneath)global.json” would better match howglobal.jsondiscovery works and reduce unnecessary directory hopping.
To fix this issue, change directories to a folder that contains the `.sln` or `.slnx` file of your project — or, for solution-less projects, the folder containing the `global.json` file that declares your `Uno.Sdk` version.
doc/articles/dev-server.md:57
- This paragraph implies
uno-devservercan resolve a solution-less workspace solely fromglobal.json, but the CLI’s workspace resolution path still relies on discovering a.sln/.slnxunless--solution-direxplicitly points to a directory containingglobal.json. To avoid misleading users (especially fordisco/health), consider rewording to clarify the difference between starting from a subdirectory vs the explicit--solution-diroverride.
A solution file is not required to use the Dev Server. When no `.sln` or `.slnx` file is present, the workspace is resolved from the `global.json` file that declares your `Uno.Sdk` version — run `uno-devserver start` from the project directory, or pass `--solution-dir <path>` to select it explicitly.
- disco: add guidance for creating a global.json when the workspace has none. - ai-agents common issues: make the disco TIP consistent with solution-less workspaces. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017J78oYYJ7rSMaewD9b9Fhs
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-24008/docs/index.html |
|
Tick the box to add this pull request to the merge queue (same as
|
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-24008/docs/index.html |
GitHub Issue: Internal — unoplatform/uno-private#2167 (part of epic unoplatform/uno-private#2166)
PR Type:
📚 Documentation content changes
What changed? 🚀
Documents the already-working frictionless paths of the Uno.Sdk, which were previously invisible to users (docs only showed the
.sln+global.jsonflow):using-the-uno-sdk.md:.slnxsolutions section: a single.csprojbuilds/runs/publishes without a solution file,global.jsonplacement, and the tooling version requirements (Uno.Sdk 6.6+ for Dev Server add-ins, VS Code extension 0.25.3+ with C# Dev Kit) — validated against a real solution-less project on Uno.Sdk 6.5/6.6/6.7-dev.ImplicitPackagesResolver(colliding<PackageVersion>entries are removed at restore; explicitPackageReferences versioned via CPM/Version/VersionOverridewin), with a workedDirectory.Packages.propsexample.VersionOverride, per-TargetFramework versions under CPM (conditional item groups), and NuGet audit behavior for implicit packages.dev-server.md: solution-less workspace resolution viaglobal.json, updated--solution-dirdescription, and a note on the Uno.Sdk 6.6+ requirement for Studio add-ins.devserver-disco.md/common-issues-ai-agents.md: troubleshooting entries no longer instruct users to locate a.slnwhen a solution file is not required (the disco "No global.json found" fix now correctly points atglobal.json).additional-vscode-topics.md: new Working with solution-less workspaces section for VS Code users.PR Checklist ✅
Screenshots Compare Test Runresults — N/A (docs only)🤖 Generated with Claude Code
https://claude.ai/code/session_017J78oYYJ7rSMaewD9b9Fhs