Docs/2.1 - #2940
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 1248b12e-ca12-4c73-82f3-af8f8a586cca
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 1248b12e-ca12-4c73-82f3-af8f8a586cca
- Add C# pages for AI integrations (ExtAIBot, McpServer, A2ABot samples) - Rewrite user-authentication C# include with 2.0/2.1 tabs and multi-auth - Update tabs, static-pages, functions C# includes for 2.1 route-based patterns - Fix message-reactions, meeting-events, feedback C# includes for 2.1 APIs - Add dialogs, message-extensions, adaptive-cards C# 2.1 corrections - Remove C# from observability middleware/logging pages (TS/Python only) - Fix http-server duplicate languages frontmatter key leak - Update agentic-identity: fix logger call, modernize reaction API - Remove dedicated dotnet-2-1 migration page - Add BotBuilder migration C# 2.1 guidance to integration.mdx - Condense BotBuilder plugin content for C# into info box; restore full TS/Python sections - Remove C# from BotBuilder sending-activities, proactive, api-client, user-auth subpages - Rewrite BotBuilder README intro to correctly reference Microsoft.Teams.Apps.BotBuilder for C# - Fix message-extensions settings C# 2.1 tab: use generic invoke handler pattern - Fix Language component array syntax for typescript/python multi-language block Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 301a0bb2-5c2f-46a7-b196-d25f7d2fe7eb
There was a problem hiding this comment.
Pull request overview
Updates teams.md documentation/templates to reflect Teams SDK .NET 2.1 (Preview) and expands multi-language docs structure (new pages, updated includes, refreshed “missing pages” manifest), plus adjusts the docs generator watch behavior.
Changes:
- Add/refresh SDK 2.1 (.NET) guidance across Essentials, Getting Started, AI Integrations, and BotBuilder migration docs.
- Introduce new doc content (for example Agentic Identity, Middleware) and rework language-gated sections/tabs.
- Update docs generator watch settings and multiple CLI/docs snippets for the new patterns.
Reviewed changes
Copilot reviewed 83 out of 83 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| teams.md/static/missing-pages.json | Update missing-language manifest entries |
| teams.md/src/pages/templates/migrations/botbuilder/user-authentication.mdx | Remove C# from supported languages frontmatter |
| teams.md/src/pages/templates/migrations/botbuilder/the-api-client.mdx | Remove C# from supported languages frontmatter |
| teams.md/src/pages/templates/migrations/botbuilder/sending-activities.mdx | Remove C# from supported languages frontmatter |
| teams.md/src/pages/templates/migrations/botbuilder/README.mdx | Update BotBuilder migration intro + SDK version note |
| teams.md/src/pages/templates/migrations/botbuilder/proactive-activities.mdx | Remove C# from supported languages frontmatter |
| teams.md/src/pages/templates/migrations/botbuilder/integration.mdx | Rework BotBuilder integration + SDK 2.1 migration steps |
| teams.md/src/pages/templates/migrations/botbuilder/category.json | Rename category label |
| teams.md/src/pages/templates/in-depth-guides/user-authentication.mdx | Restructure auth guide; add language gating |
| teams.md/src/pages/templates/in-depth-guides/observability/middleware.mdx | Add languages frontmatter |
| teams.md/src/pages/templates/in-depth-guides/observability/logging.mdx | Add languages frontmatter |
| teams.md/src/pages/templates/in-depth-guides/ai-integrations/teams-enhancements.mdx | Add C# language + SDK 2.0 deprecation warning |
| teams.md/src/pages/templates/in-depth-guides/ai-integrations/README.mdx | Add C# language + SDK 2.0 deprecation warning |
| teams.md/src/pages/templates/in-depth-guides/ai-integrations/mcp-server.mdx | Add C# language + SDK 2.0 deprecation warning |
| teams.md/src/pages/templates/in-depth-guides/ai-integrations/build-agent.mdx | Add C# language + SDK 2.0 deprecation warning |
| teams.md/src/pages/templates/in-depth-guides/ai-integrations/a2a.mdx | Add C# language + SDK 2.0 deprecation warning |
| teams.md/src/pages/templates/in-depth-guides/agentic-identity.mdx | New C# Agentic Identity page |
| teams.md/src/pages/templates/getting-started/quickstart.mdx | Add SDK 2.1 CLI track guidance; adjust content |
| teams.md/src/pages/templates/getting-started/code-basics.mdx | Add imports + language-gated sections |
| teams.md/src/pages/templates/essentials/sending-messages/README.mdx | Add tabs + SDK 2.1 streaming note; fix method naming |
| teams.md/src/pages/templates/essentials/sending-messages/proactive-messaging.mdx | Clarify per-language proactive send method names |
| teams.md/src/pages/templates/essentials/README.mdx | Add C# 2.1 pipeline diagram + language gating |
| teams.md/src/pages/templates/essentials/on-event.mdx | Add languages frontmatter |
| teams.md/src/pages/templates/essentials/on-activity/README.mdx | Clarify handler chaining differences by SDK version |
| teams.md/src/pages/templates/essentials/middleware-and-errors.mdx | New C# middleware/errors page (2.1 focus) |
| teams.md/src/pages/templates/essentials/app-basics.mdx | Add C# 2.1 app model; gate TS/Python section |
| teams.md/src/pages/templates/essentials/app-authentication/trust-model.mdx | Move examples into includes; add Tabs imports |
| teams.md/src/pages/templates/essentials/app-authentication/README.mdx | Replace inline config blocks with LanguageInclude sections |
| teams.md/src/pages/templates/essentials/api.mdx | Add Tabs imports for multi-version examples |
| teams.md/src/components/include/migrations/botbuilder/proactive-activities/csharp.incl.md | Update C# proactive sample to 2.1 naming |
| teams.md/src/components/include/migrations/botbuilder/integration/typescript.incl.md | Add plugin overview content + examples |
| teams.md/src/components/include/migrations/botbuilder/integration/python.incl.md | Add plugin overview content + examples |
| teams.md/src/components/include/migrations/botbuilder/integration/csharp.incl.md | Update C# integration example to SDK 2.1 adapter wiring |
| teams.md/src/components/include/in-depth-guides/user-authentication/typescript.incl.md | Add missing doc blocks (setup/notes) |
| teams.md/src/components/include/in-depth-guides/user-authentication/python.incl.md | Add missing doc blocks (setup/notes) |
| teams.md/src/components/include/in-depth-guides/user-authentication/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed auth examples |
| teams.md/src/components/include/in-depth-guides/tabs/functions/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed “functions” guidance |
| teams.md/src/components/include/in-depth-guides/tabs/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed tabs-hosting guidance |
| teams.md/src/components/include/in-depth-guides/server/static-pages/csharp.incl.md | Add SDK 2.1 route-based static hosting example |
| teams.md/src/components/include/in-depth-guides/server/http-server/csharp.incl.md | Remove unused/empty include |
| teams.md/src/components/include/in-depth-guides/observability/middleware/csharp.incl.md | Remove old C# middleware include |
| teams.md/src/components/include/in-depth-guides/observability/logging/csharp.incl.md | Remove old C# logging include |
| teams.md/src/components/include/in-depth-guides/message-reactions/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed reaction examples |
| teams.md/src/components/include/in-depth-guides/message-extensions/settings/csharp.incl.md | Add SDK 2.1 guidance for settings handling |
| teams.md/src/components/include/in-depth-guides/message-extensions/search-commands/csharp.incl.md | Add SDK 2.1 minimal API examples |
| teams.md/src/components/include/in-depth-guides/message-extensions/link-unfurling/csharp.incl.md | Add SDK 2.1 minimal API examples |
| teams.md/src/components/include/in-depth-guides/message-extensions/action-commands/csharp.incl.md | Add SDK 2.1 minimal API examples |
| teams.md/src/components/include/in-depth-guides/meeting-events/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed meeting event examples |
| teams.md/src/components/include/in-depth-guides/feedback/csharp.incl.md | Add SDK 2.0 vs 2.1 feedback handling examples |
| teams.md/src/components/include/in-depth-guides/dialogs/handling-multi-step-forms/csharp.incl.md | Add SDK 2.1 task module examples |
| teams.md/src/components/include/in-depth-guides/dialogs/handling-dialog-submissions/csharp.incl.md | Add SDK 2.1 task submit examples |
| teams.md/src/components/include/in-depth-guides/dialogs/creating-dialogs/csharp.incl.md | Add SDK 2.1 dialog open/render examples |
| teams.md/src/components/include/in-depth-guides/ai-integrations/teams-enhancements/csharp.incl.md | New C# AI enhancements snippets |
| teams.md/src/components/include/in-depth-guides/ai-integrations/mcp-server/csharp.incl.md | New C# MCP server snippets |
| teams.md/src/components/include/in-depth-guides/ai-integrations/csharp.incl.md | New C# AI integrations “samples” list |
| teams.md/src/components/include/in-depth-guides/ai-integrations/build-agent/csharp.incl.md | New C# build-agent snippets |
| teams.md/src/components/include/in-depth-guides/ai-integrations/a2a/csharp.incl.md | New C# A2A snippets |
| teams.md/src/components/include/in-depth-guides/adaptive-cards/executing-actions/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed examples |
| teams.md/src/components/include/in-depth-guides/adaptive-cards/building-adaptive-cards/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed examples |
| teams.md/src/components/include/getting-started/quickstart/csharp.incl.md | Update .NET prereq + add SDK-version tabs |
| teams.md/src/components/include/getting-started/csharp.incl.md | Add 2.1 preview announcement callout |
| teams.md/src/components/include/getting-started/code-basics/typescript.incl.md | Add “plugins-note” placeholder |
| teams.md/src/components/include/getting-started/code-basics/python.incl.md | Add “plugins-note” placeholder |
| teams.md/src/components/include/getting-started/code-basics/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed code basics content |
| teams.md/src/components/include/essentials/sending-messages/typescript.incl.md | Move signin event explanation into prose |
| teams.md/src/components/include/essentials/sending-messages/python.incl.md | Move signin event explanation into prose |
| teams.md/src/components/include/essentials/sending-messages/proactive-messaging/csharp.incl.md | Add SDK 2.0 vs 2.1 proactive examples |
| teams.md/src/components/include/essentials/sending-messages/csharp.incl.md | Add SDK 2.0 vs 2.1 tabbed messaging examples |
| teams.md/src/components/include/essentials/on-event/csharp.incl.md | Remove old on-event include (2.0-centric) |
| teams.md/src/components/include/essentials/on-activity/csharp.incl.md | Add SDK 2.0 vs 2.1 handler/middleware guidance |
| teams.md/src/components/include/essentials/graph/csharp.incl.md | Update Graph guidance + add SDK version tabs |
| teams.md/src/components/include/essentials/csharp.incl.md | Update key terms + diagram labels |
| teams.md/src/components/include/essentials/app-configuration/sovereign-cloud/csharp.incl.md | Add SDK 2.1 sovereign cloud note |
| teams.md/src/components/include/essentials/app-authentication/typescript.incl.md | Reorganize auth sections + add shared-secret example |
| teams.md/src/components/include/essentials/app-authentication/trust-model/typescript.incl.md | New trust-model shared-secret example |
| teams.md/src/components/include/essentials/app-authentication/trust-model/python.incl.md | New trust-model shared-secret example |
| teams.md/src/components/include/essentials/app-authentication/trust-model/csharp.incl.md | New trust-model shared-secret example |
| teams.md/src/components/include/essentials/app-authentication/python.incl.md | Reorganize auth sections + add shared-secret example |
| teams.md/src/components/include/essentials/app-authentication/csharp.incl.md | Add SDK 2.0 vs 2.1 auth config tabs + FIC content |
| teams.md/src/components/include/essentials/api/csharp.incl.md | Add SDK 2.0 vs 2.1 API usage examples |
| teams.md/scripts/generate-language-docs.ts | Force chokidar polling in watch mode |
| teams.md/docs/main/get-started/quickstart-register.md | Add CLI stable vs preview guidance |
| teams.md/docs/main/get-started/quickstart-build.md | Remove unused Handlers using |
| packages/cli/templates/csharp/echo/{{name}}.hbs/Program.cs.hbs | Remove unused Handlers using |
Comments suppressed due to low confidence (2)
teams.md/src/components/include/in-depth-guides/user-authentication/csharp.incl.md:210
- [CRITICAL] Same snippet still uses undefined
ctforGetStringAsyncandSendAsync, causing copy/paste compilation errors.
teams.md/src/pages/templates/migrations/botbuilder/integration.mdx:12 - [NIT] Header capitalization: prefer "BotBuilder Compatibility" to match title/product name.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
| teams.OnMeetingEnd(async (context, cancellationToken) => | ||
| { | ||
| var activity = context.Activity.Value; | ||
| var endTime = activity.EndTime.ToLocalTime(); |
There was a problem hiding this comment.
Are these (and StartTime) strings in core?
There was a problem hiding this comment.
Then would this cause a compile error?
| } | ||
| ``` | ||
|
|
||
| Available override properties: `LoginEndpoint`, `LoginTenant`, `BotScope`, `TokenServiceUrl`, `OpenIdMetadataUrl`, `TokenIssuer`, `GraphScope` |
There was a problem hiding this comment.
wasn't in the docs before, this PR is only to target 2.1 changes
| @@ -1,5 +1,25 @@ | |||
| <!-- configuration --> | |||
|
|
|||
| :::info[SDK 2.1 Preview] | |||
There was a problem hiding this comment.
Is not using <Tabs> here intentional?
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 159b0d5c-228f-4d1f-be76-9b3fb52c1b49
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 159b0d5c-228f-4d1f-be76-9b3fb52c1b49
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 159b0d5c-228f-4d1f-be76-9b3fb52c1b49
Summary
This PR updates the Teams SDK docs to make .NET 2.1 the current/default path, adds a dedicated .NET 2.0 → 2.1 migration guide, and fixes migration/language routing issues that were causing broken links and 404s.
What changed
• Removed/trimmed “preview” messaging where 2.1 is now current.
• Updated C# tab labeling/defaults to favor SDK 2.1 (current).
• Updated quickstart/welcome and related C# includes accordingly.
• Added migrations/v2-dotnet with structured migration content:
• package/API rename guidance
• OAuth migration notes
• cards serialization guidance
• streaming changes
• state model updates
• namespace moves (message extensions / task modules / files / meetings)
• AI section (legacy libs vs newer framework direction)
• Reworked content to be 2.1-first.
• Moved legacy 2.0-specific guidance into clearly scoped notes.
• Switched to include-based language content to reduce template duplication.
• Scoped v2-dotnet links so TS/Python pages don’t point to non-existent C# content.
• Updated static/missing-pages.json with migrations/v2-dotnet language availability.
• Removed suppressLanguageIncludeWarning usage where it masked missing-page setup.
• Added runtime fallback behavior for missing localized pages to prefer TypeScript instead of hard 404.
• Updated the .NET 2.1 preview blog migration-guide link to point to the new migration doc.
Why
• Reduce confusion between 2.0 and 2.1.
• Give existing .NET users a clear upgrade path.
• Eliminate doc build/runtime failures from cross-language link mismatches.
• Improve UX when a language-specific page does not exist.