Skip to content

v1.0.0 cherry picks round 2#591

Open
prathikr wants to merge 1 commit intoreleases/rel-1.0.0from
prathikrao/cherry-pick-rel-1.0.0-rc2
Open

v1.0.0 cherry picks round 2#591
prathikr wants to merge 1 commit intoreleases/rel-1.0.0from
prathikrao/cherry-pick-rel-1.0.0-rc2

Conversation

@prathikr
Copy link
Copy Markdown
Contributor

@prathikr prathikr commented Apr 5, 2026

No description provided.

Co-authored-by: Prathik Rao <prathikrao@microsoft.com>
Copilot AI review requested due to automatic review settings April 5, 2026 00:19
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 5, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
foundry-local Ready Ready Preview, Comment Apr 5, 2026 0:19am

Request Review

@prathikr prathikr changed the base branch from main to releases/rel-1.0.0 April 5, 2026 00:19
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR consolidates “v1.0.0” cherry-picks across Python/JS/C# SDKs and samples, including API updates (streaming as async iteration, model variant selection via IModel), explicit Execution Provider (EP) management, packaging/versioning updates, and expanded multi-language tutorials.

Changes:

  • Introduces Python SDK packaging scaffolding (pyproject + requirements), core types, logging helpers, and tests README.
  • Updates JS SDK streaming APIs to return AsyncIterable, adds EP types/APIs, and aligns examples/tests/docs accordingly.
  • Refactors C# SDK to use IModel consistently (variants + selection) and adds EP discovery/download types; adds/updates tutorial samples and CI workflow changes.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
sdk/python/test/README.md Adds Python test-suite setup and execution guidance.
sdk/python/src/version.py Adds Python SDK version constant.
sdk/python/src/openai/init.py Exposes OpenAI-compatible Python clients.
sdk/python/src/logging_helper.py Adds shared log-level mapping and logger severity setter.
sdk/python/src/exception.py Defines SDK base exception type.
sdk/python/src/ep_types.py Adds Pydantic models for EP discovery/download results.
sdk/python/src/detail/model_data_types.py Adds Pydantic models for catalog/model metadata.
sdk/python/src/detail/init.py Adds detail package init and re-exports.
sdk/python/src/init.py Adds package exports and configures default logging.
sdk/python/requirements.txt Adds Python runtime dependencies and native core pins.
sdk/python/requirements-winml.txt Adds WinML-specific Python dependency pins.
sdk/python/requirements-dev.txt Adds Python dev/test dependencies.
sdk/python/pyproject.toml Adds Python packaging metadata, entrypoints, pytest config.
sdk/python/examples/chat_completion.py Adds Python chat completion example.
sdk/python/LICENSE.txt Adds Python package license file.
sdk/python/.gitignore Adds Python SDK-specific ignore rules.
sdk/js/test/openai/responsesClient.test.ts Updates tests to use IModel typing.
sdk/js/test/openai/chatClient.test.ts Migrates streaming tests to async iteration; removes callback validation tests.
sdk/js/test/openai/audioClient.test.ts Migrates streaming transcription tests to async iteration; removes callback validation tests.
sdk/js/test/model.test.ts Fixes variant selection in tests using variant lookup.
sdk/js/test/foundryLocalManager.test.ts Adds tests for EP download param behavior.
sdk/js/test/catalog.test.ts Adds unit test for latest-version resolution using synthetic model data.
sdk/js/src/types.ts Extends ModelInfo; adds EP type interfaces.
sdk/js/src/index.ts Exposes Model/ModelVariant from detail as internal exports.
sdk/js/src/imodel.ts Expands IModel surface (info + capabilities + variants + selection).
sdk/js/src/detail/modelVariant.ts Updates imports; implements new IModel members for variant metadata.
sdk/js/src/detail/model.ts Updates imports; adjusts variant selection & exposes new IModel members.
sdk/js/src/detail/coreInterop.ts Changes streaming command return to Promise<string> with response payload.
sdk/js/script/pack.cjs Adds packaging script to produce standard vs WinML npm tarballs.
sdk/js/script/install-winml.cjs Adds WinML installer script for native artifacts.
sdk/js/script/install-standard.cjs Adds standard installer script for native artifacts.
sdk/js/package.json Renames package, bumps to 1.0.0, updates install/pack scripts and files list.
sdk/js/examples/tool-calling.ts Updates streaming usage to async iteration.
sdk/js/examples/chat-completion.ts Adds EP discovery/download and updates streaming example to async iteration.
sdk/js/examples/audio-transcription.ts Updates streaming transcription example to async iteration.
sdk/js/docs/classes/ResponsesClientSettings.md Updates generated docs package name and optional property markers.
sdk/js/docs/classes/ResponsesClient.md Updates generated docs package name.
sdk/js/docs/classes/ModelLoadManager.md Updates generated docs package name.
sdk/js/docs/classes/FoundryLocalManager.md Documents new EP APIs and overloads.
sdk/js/docs/classes/ChatClientSettings.md Updates generated docs package name and optional property markers.
sdk/js/docs/classes/ChatClient.md Documents streaming API change to async iterable; adds examples.
sdk/js/docs/classes/AudioClientSettings.md Updates generated docs package name and optional property markers.
sdk/js/docs/classes/AudioClient.md Documents streaming API change to async iterable; adds examples.
sdk/js/.npmrc Pins npm registry to Azure Artifacts feed for CI/packaging scenarios.
sdk/cs/test/FoundryLocal.Tests/appsettings.Test.json Sets default test cache dir name to test-data-shared.
sdk/cs/test/FoundryLocal.Tests/Utils.cs Reads cache dir from config and logs a critical error if missing.
sdk/cs/test/FoundryLocal.Tests/TestAssemblySetupCleanup.cs Ensures cleanup checks manager initialization before unloading.
sdk/cs/test/FoundryLocal.Tests/ModelTests.cs Removes obsolete test file (latest version behavior moved/changed).
sdk/cs/test/FoundryLocal.Tests/Microsoft.AI.Foundry.Local.Tests.csproj Adjusts test project settings (WinAppSDK self-contained toggle).
sdk/cs/test/FoundryLocal.Tests/LOCAL_MODEL_TESTING.md Updates local model testing instructions and path resolution rules.
sdk/cs/test/FoundryLocal.Tests/FoundryLocalManagerTest.cs Updates selected-variant printing via model.Id.
sdk/cs/test/FoundryLocal.Tests/EndToEnd.cs Uses catalog model + SelectVariant instead of constructing Model directly.
sdk/cs/test/FoundryLocal.Tests/ChatCompletionsTests.cs Switches tests to IModel and uses variant directly.
sdk/cs/test/FoundryLocal.Tests/AudioClientTests.cs Switches tests to IModel.
sdk/cs/src/Microsoft.AI.Foundry.Local.csproj Moves to net9.0; updates WinML constants; bumps core versions to rc1.
sdk/cs/src/IModel.cs Adds Info, Variants, SelectVariant to the public model interface.
sdk/cs/src/ICatalog.cs Switches catalog APIs to IModel and adds GetLatestVersionAsync.
sdk/cs/src/FoundryModelInfo.cs Adds new model metadata fields (context/modalities/capabilities).
sdk/cs/src/EpInfo.cs Adds EP discovery/download result record types.
sdk/cs/src/Detail/ModelVariant.cs Makes ModelVariant internal; implements Variants and throws on SelectVariant.
sdk/cs/src/Detail/Model.cs Refactors variants to IModel; adds Info; updates variant selection behavior.
sdk/cs/src/Detail/JsonSerializationContext.cs Adds EP types to source-generated JSON context.
sdk/cs/src/Detail/CoreInterop.cs Adds WinML bootstrap param under IS_WINML.
sdk/cs/docs/api/microsoft.ai.foundry.local.openaichatclient.md Documents tool-aware chat completion overloads and streaming.
sdk/cs/docs/api/microsoft.ai.foundry.local.openaiaudioclient.md Documents live transcription session creation.
sdk/cs/docs/api/microsoft.ai.foundry.local.modelinfo.md Documents new metadata fields.
sdk/cs/docs/api/microsoft.ai.foundry.local.model.md Updates docs for IModel variants and Info; removes old latest-version method docs.
sdk/cs/docs/api/microsoft.ai.foundry.local.imodel.md Documents new Info, Variants, SelectVariant.
sdk/cs/docs/api/microsoft.ai.foundry.local.epinfo.md Adds EP discovery type docs.
sdk/cs/docs/api/microsoft.ai.foundry.local.epdownloadresult.md Adds EP download result docs.
sdk/cs/docs/api/index.md Adds EP types and OpenAI namespace entries; removes ModelVariant listing.
sdk/cs/README.md Updates guidance for explicit EP management and IModel usage.
sdk/cs/NuGet.config Removes nuget.org source (ORT feed only).
samples/rust/tutorial-voice-to-text/src/main.rs Adds Rust voice-to-text tutorial sample.
samples/rust/tutorial-voice-to-text/Cargo.toml Adds Rust voice-to-text tutorial crate.
samples/rust/tutorial-tool-calling/Cargo.toml Adds Rust tool-calling tutorial crate.
samples/rust/tutorial-document-summarizer/Cargo.toml Adds Rust document summarizer tutorial crate.
samples/rust/tutorial-chat-assistant/src/main.rs Adds Rust chat assistant tutorial sample.
samples/rust/tutorial-chat-assistant/Cargo.toml Adds Rust chat assistant tutorial crate.
samples/rust/tool-calling-foundry-local/src/main.rs Adds snippet markers and organizes sections for docs/tutorial extraction.
samples/rust/native-chat-completions/src/main.rs Adds snippet markers and organizes sections for docs/tutorial extraction.
samples/rust/foundry-local-webserver/src/main.rs Adds snippet markers and organizes sections for docs/tutorial extraction.
samples/rust/audio-transcription-example/src/main.rs Adjusts CLI arg behavior; adds snippet markers and sections.
samples/rust/Cargo.toml Adds new tutorial crates to workspace.
samples/rust/.cargo/config.toml Redirects crates-io to Azure Artifacts feed for compliance.
samples/python/web-server/src/app.py Adds Python web-server sample using OpenAI SDK against local endpoint.
samples/python/web-server/requirements.txt Adds sample dependencies.
samples/python/tutorial-voice-to-text/src/app.py Adds Python voice-to-text tutorial sample.
samples/python/tutorial-voice-to-text/requirements.txt Adds tutorial dependency list.
samples/python/tutorial-tool-calling/requirements.txt Adds tutorial dependency list.
samples/python/tutorial-document-summarizer/src/app.py Adds Python document summarizer tutorial sample.
samples/python/tutorial-document-summarizer/requirements.txt Adds tutorial dependency list.
samples/python/tutorial-chat-assistant/src/app.py Adds Python chat assistant tutorial sample.
samples/python/tutorial-chat-assistant/requirements.txt Adds tutorial dependency list.
samples/python/tool-calling/requirements.txt Adds sample dependency list.
samples/python/summarize/summarize.py Removes legacy summarizer script.
samples/python/summarize/requirements.txt Removes legacy summarizer deps.
samples/python/summarize/README.md Removes legacy summarizer docs.
samples/python/summarize/.vscode/launch.json Removes legacy VS Code debug config.
samples/python/native-chat-completions/src/app.py Adds Python native chat completions sample.
samples/python/native-chat-completions/requirements.txt Adds sample dependency list.
samples/python/langchain-integration/src/app.py Adds Python LangChain integration sample against local endpoint.
samples/python/langchain-integration/requirements.txt Adds LangChain + OpenAI deps for sample.
samples/python/hello-foundry-local/src/app.py Removes legacy hello sample using older API.
samples/python/hello-foundry-local/README.md Removes legacy hello sample docs.
samples/python/functioncalling/README.md Removes legacy function-calling configuration doc.
samples/python/audio-transcription/src/app.py Adds Python audio transcription sample.
samples/python/audio-transcription/requirements.txt Adds sample dependency list.
samples/js/web-server-example/app.js Adds snippet markers and sections for docs/tutorial extraction.
samples/js/tutorial-voice-to-text/package.json Adds JS voice-to-text tutorial package manifest.
samples/js/tutorial-voice-to-text/app.js Adds JS voice-to-text tutorial app.
samples/js/tutorial-tool-calling/package.json Adds JS tool-calling tutorial package manifest.
samples/js/tutorial-document-summarizer/package.json Adds JS document summarizer tutorial package manifest.
samples/js/tutorial-document-summarizer/app.js Adds JS document summarizer tutorial app.
samples/js/tutorial-chat-assistant/package.json Adds JS chat assistant tutorial package manifest.
samples/js/tutorial-chat-assistant/app.js Adds JS chat assistant tutorial app.
samples/js/tool-calling-foundry-local/src/app.js Adds snippet markers; aligns appName and organizes setup/cleanup sections.
samples/js/tool-calling-foundry-local/.npmrc Pins npm registry to Azure Artifacts for sample environment.
samples/js/native-chat-completions/app.js Adds EP discovery/download progress; updates streaming to async iteration; adds snippet markers.
samples/js/langchain-integration-example/app.js Adds snippet markers and sections for docs/tutorial extraction.
samples/js/electron-chat-application/.npmrc Pins npm registry to Azure Artifacts for sample environment.
samples/js/copilot-sdk-foundry-local/.npmrc Pins npm registry to Azure Artifacts for sample environment.
samples/js/chat-and-audio-foundry-local/src/app.js Aligns appName and updates streaming to async iteration.
samples/js/chat-and-audio-foundry-local/.npmrc Pins npm registry to Azure Artifacts for sample environment.
samples/js/audio-transcription-example/app.js Uses CLI arg for audio file; converts streaming to async iteration; adds snippet markers.
samples/cs/tutorial-voice-to-text/TutorialVoiceToText.sln Adds C# voice-to-text tutorial solution.
samples/cs/tutorial-voice-to-text/TutorialVoiceToText.csproj Adds unified cross-platform/WinML tutorial project file.
samples/cs/tutorial-voice-to-text/Program.cs Adds voice-to-text tutorial program with streaming transcription + summarization.
samples/cs/tutorial-tool-calling/TutorialToolCalling.sln Adds C# tool-calling tutorial solution.
samples/cs/tutorial-tool-calling/TutorialToolCalling.csproj Adds unified cross-platform/WinML tutorial project file.
samples/cs/tutorial-document-summarizer/TutorialDocumentSummarizer.sln Adds C# document summarizer tutorial solution.
samples/cs/tutorial-document-summarizer/TutorialDocumentSummarizer.csproj Adds unified cross-platform/WinML tutorial project file.
samples/cs/tutorial-document-summarizer/Program.cs Adds C# document summarizer tutorial program.
samples/cs/tutorial-chat-assistant/TutorialChatAssistant.sln Adds C# chat assistant tutorial solution.
samples/cs/tutorial-chat-assistant/TutorialChatAssistant.csproj Adds unified cross-platform/WinML tutorial project file.
samples/cs/tutorial-chat-assistant/Program.cs Adds C# interactive chat assistant tutorial program.
samples/cs/tool-calling-foundry-local-web-server/ToolCallingFoundryLocalWebServer.sln Adds C# web-server tool-calling sample solution.
samples/cs/tool-calling-foundry-local-web-server/ToolCallingFoundryLocalWebServer.csproj Adds unified cross-platform/WinML sample project file.
samples/cs/tool-calling-foundry-local-web-server/Program.cs Updates sample to new EP API and adds snippet markers.
samples/cs/tool-calling-foundry-local-sdk/ToolCallingFoundryLocalSdk.sln Adds C# SDK tool-calling sample solution.
samples/cs/tool-calling-foundry-local-sdk/ToolCallingFoundryLocalSdk.csproj Adds unified cross-platform/WinML sample project file.
samples/cs/tool-calling-foundry-local-sdk/Program.cs Updates sample to new EP API and adds snippet markers.
samples/cs/nuget.config Adds sample-scoped NuGet config with source mapping (nuget + ORT + local).
samples/cs/native-chat-completions/Program.cs Updates sample for EP discovery/download progress; adds snippet markers.
samples/cs/native-chat-completions/NativeChatCompletions.sln Adds C# native chat completions sample solution.
samples/cs/native-chat-completions/NativeChatCompletions.csproj Adds unified cross-platform/WinML sample project file.
samples/cs/model-management-example/Program.cs Updates sample for new EP API and IModel/variants selection semantics.
samples/cs/model-management-example/ModelManagementExample.sln Adds C# model management sample solution.
samples/cs/model-management-example/ModelManagementExample.csproj Adds unified cross-platform/WinML sample project file.
samples/cs/foundry-local-web-server/Program.cs Updates sample for new EP API and adds snippet markers.
samples/cs/foundry-local-web-server/FoundryLocalWebServer.sln Adds C# web server sample solution.
samples/cs/foundry-local-web-server/FoundryLocalWebServer.csproj Adds unified cross-platform/WinML sample project file.
samples/cs/audio-transcription-example/Program.cs Updates sample for new EP API, CLI arg audio file, adds snippet markers.
samples/cs/audio-transcription-example/AudioTranscriptionExample.sln Adds C# audio transcription sample solution.
samples/cs/audio-transcription-example/AudioTranscriptionExample.csproj Adds unified cross-platform/WinML sample project file; ensures audio asset copied.
samples/cs/README.md Adds consolidated C# samples index and run instructions.
samples/cs/GettingStarted/windows/ToolCallingFoundryLocalWebServer/ToolCallingFoundryLocalWebServer.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/windows/ToolCallingFoundryLocalSdk/ToolCallingFoundryLocalSdk.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/windows/ModelManagementExample/ModelManagementExample.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/windows/HelloFoundryLocalSdk/HelloFoundryLocalSdk.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/windows/FoundryLocalWebServer/FoundryLocalWebServer.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/windows/AudioTranscriptionExample/AudioTranscriptionExample.csproj Removes legacy platform-specific GettingStarted project.
samples/cs/GettingStarted/nuget.config Removes legacy GettingStarted NuGet config.
samples/cs/GettingStarted/cross-platform/ToolCallingFoundryLocalWebServer/ToolCallingFoundryLocalWebServer.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/cross-platform/ToolCallingFoundryLocalSdk/ToolCallingFoundryLocalSdk.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/cross-platform/ModelManagementExample/ModelManagementExample.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/cross-platform/HelloFoundryLocalSdk/HelloFoundryLocalSdk.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/cross-platform/FoundryLocalWebServer/FoundryLocalWebServer.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/cross-platform/AudioTranscriptionExample/AudioTranscriptionExample.csproj Removes legacy cross-platform GettingStarted project.
samples/cs/GettingStarted/README.md Removes legacy GettingStarted README in favor of unified samples.
samples/cs/Directory.Packages.props Bumps SDK package versions to 1.0.0-rc1 and adds shared dependency versions.
README.md Updates root README examples to async-iter streaming transcription.
.github/workflows/foundry-local-sdk-build.yml Switches CI to macOS builds and bumps version to 1.0.0.*.
.github/workflows/build-rust-steps.yml Ensures CI uses crates.io (removes local redirect) and adds nightly feature flags.
.github/workflows/build-js-steps.yml Removes CI reliance on Azure feed .npmrc and adds standard/winml pack scripts.
.github/workflows/build-cs-steps.yml Generates temporary NuGet config with credentials; clears cache; restores using temp config.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants