Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ This script applies azure-ai-projects-specific corrections to the emitted code (

---

## Step 6: Fix patched code
## Step 6: Fix patched code related to preview feature headers

The emitted code may have introduced another beta sub-client (a new property on class `BetaOperations`). It may have also added another enum value to the existing internal class `_FoundryFeaturesOptInKeys`. This means that the client library needs to set a new HTTP request header when making REST API calls to the service, to opt-in to the new service features which are still in preview. If that's the case, do the following:

Expand All @@ -119,13 +119,22 @@ If a new enum value was added to `_AgentDefinitionOptInKeys`, please print a not

---

## Step 7: Install package from sources
## Step 7: Update samples and tests

If there were any breaking changes in existing APIs, like class or method renames:
* update the patched code accordingly in the client library to reflect those changes. Changes should be made to Python source file names that start with "_patch", under the `azure\ai\projects` folder.
* update the samples accordingly to reflect those changes. Changes should be made under `sdk/ai/azure-ai-projects/samples` folder.
* update the tests accordingly to reflect those changes. Changes should be made under `sdk/ai/azure-ai-projects/tests` folder.

---

## Step 8: Install package from sources

In the folder `sdk\ai\azure-ai-projects`, run `pip install -e .` to install the package from sources. If there are any errors, stop and report the error to the user. Do not continue.

---

## Step 8: Update CHANGELOG.md
## Step 9: Update CHANGELOG.md

Use the **`azsdk-common-generate-sdk-locally`** skill's changelog capability (`azsdk_package_update_changelog_content`) to update `CHANGELOG.md` in the `sdk/ai/azure-ai-projects` folder with a summary of changes from the TypeSpec emit. Some guidelines to follow:
* Start by examining the public SDK API surface of the latest released version of the azure-ai-projects package. The source code for this version can be found in the Main branch of the `azure-sdk-for-python` repository, in the folder `sdk\ai\azure-ai-projects`.
Expand All @@ -136,12 +145,6 @@ Use the **`azsdk-common-generate-sdk-locally`** skill's changelog capability (`a

---

## Step 9: Update samples and tests

If there were any breaking changes in existing APIs, like class or method renames, update the samples and tests accordingly to reflect those changes. Changes should be made in the "samples" and "tests" folders under `sdk/ai/azure-ai-projects`.

---

## Step 10: Commit and push

Stage all changes (excluding file names that start with `.env`), commit, and push the topic branch:
Expand All @@ -167,7 +170,9 @@ gh pr create --draft --base <BASE_BRANCH> --head <topic-branch> --assignee @me -
- **Title:** Use a descriptive title such as `[azure-ai-projects] Emit SDK from TypeSpec (<short description>)`.
- **Body:** Include which TypeSpec source was used and a summary of the changelog entry.

Show the user the PR URL when done.
You must show the user the resulting PR URL on screen when done, before you continue to the next step.

Open a new tab in the default browser and navigate to the PR URL.

---

Expand Down
22 changes: 16 additions & 6 deletions sdk/ai/azure-ai-projects/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,29 @@

* New Agent tool `FabricIQPreviewTool`.
* New Agent tool `ToolboxSearchPreviewTool`.
* New string properties `description` and `name` added to all Agent tools.
* New optional string properties `description` and `name` added to Agent tools which did not have them before.
* New `.beta.datasets` sub-client with data generation job operations: `create_generation_job`, `get_generation_job`, `list_generation_jobs`, `cancel_generation_job`, `delete_generation_job`.
* New read-only property `content_hash` on `CodeConfiguration`, returning the SHA-256 hex digest of the uploaded code zip.
* New evaluator generation job operations on `.beta.evaluators`: `create_generation_job`, `get_generation_job`, `list_generation_jobs`, `cancel_generation_job`, `delete_generation_job`.
* New methods on `.beta.agents` sub-client for code-based hosted agents: `update_agent_from_code()`, `create_agent_version_from_code()`, `download_agent_version_code()`, `download_agent_code()`.
* New read-only property `content_hash` on `CodeConfiguration`, returning the SHA-256 hex digest of the uploaded code zip.

### Breaking Changes

Breaking changes in beta operations:
* Renamed model `AgentEndpoint` to `AgentEndpointConfig`.
* Required property `isolation_key_source` removed from class `EntraAuthorizationScheme`.
* Required keyword argument `isolation_key` removed from `.beta.agents.create_session()` and `.beta.agents.delete_session()` methods.
Breaking changes in beta methods:
* Required keyword `isolation_key` removed from `.beta.agents.create_session()` and `.beta.agents.delete_session()` methods.
* Argument `body` in methods `.beta.evaluation_taxonomies.create()` and `.beta.evaluation_taxonomies.update()` renamed to `taxonomy`.
* Argument `body` in method `.beta.skills.create_from_package()` renamed to `content`.

Breaking changes in beta classes:
* Required property `isolation_key_source` removed from class `EntraAuthorizationScheme`.
* Renamed class `AgentEndpoint` to `AgentEndpointConfig`.
* Renamed class `DeleteSkillResponse` to `DeleteSkillResult`.
* Renamed class `PendingUploadResponse` to `PendingUploadResult`.
* Renamed class `SessionDirectoryListResponse` to `SessionDirectoryListResult`.
* Renamed class `SessionFileWriteResponse` to `SessionFileWriteResult`.
* Renamed class `SkillObject` to `SkillDetails`.
* Removed class `FabricIQPreviewToolParameters`.
* Removed class `WorkIQPreviewToolParameters`.

### Bugs Fixed

Expand Down
12 changes: 5 additions & 7 deletions sdk/ai/azure-ai-projects/apiview-properties.json
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
"azure.ai.projects.models.DeleteAgentResponse": "Azure.AI.Projects.DeleteAgentResponse",
"azure.ai.projects.models.DeleteAgentVersionResponse": "Azure.AI.Projects.DeleteAgentVersionResponse",
"azure.ai.projects.models.DeleteMemoryStoreResult": "Azure.AI.Projects.DeleteMemoryStoreResponse",
"azure.ai.projects.models.DeleteSkillResponse": "Azure.AI.Projects.DeleteSkillResponse",
"azure.ai.projects.models.DeleteSkillResult": "Azure.AI.Projects.DeleteSkillResponse",
"azure.ai.projects.models.Deployment": "Azure.AI.Projects.Deployment",
"azure.ai.projects.models.EmbeddingConfiguration": "Azure.AI.Projects.EmbeddingConfiguration",
"azure.ai.projects.models.EntraAuthorizationScheme": "Azure.AI.Projects.EntraAuthorizationScheme",
Expand Down Expand Up @@ -140,7 +140,6 @@
"azure.ai.projects.models.EvaluatorVersion": "Azure.AI.Projects.EvaluatorVersion",
"azure.ai.projects.models.FabricDataAgentToolParameters": "Azure.AI.Projects.FabricDataAgentToolParameters",
"azure.ai.projects.models.FabricIQPreviewTool": "Azure.AI.Projects.FabricIQPreviewTool",
"azure.ai.projects.models.FabricIQPreviewToolParameters": "Azure.AI.Projects.FabricIQPreviewToolParameters",
"azure.ai.projects.models.FieldMapping": "Azure.AI.Projects.FieldMapping",
"azure.ai.projects.models.FileDataGenerationJobOutput": "Azure.AI.Projects.FileDataGenerationJobOutput",
"azure.ai.projects.models.FileDataGenerationJobSource": "Azure.AI.Projects.FileDataGenerationJobSource",
Expand Down Expand Up @@ -208,7 +207,7 @@
"azure.ai.projects.models.TelemetryEndpoint": "Azure.AI.Projects.TelemetryEndpoint",
"azure.ai.projects.models.OtlpTelemetryEndpoint": "Azure.AI.Projects.OtlpTelemetryEndpoint",
"azure.ai.projects.models.PendingUploadRequest": "Azure.AI.Projects.PendingUploadRequest",
"azure.ai.projects.models.PendingUploadResponse": "Azure.AI.Projects.PendingUploadResponse",
"azure.ai.projects.models.PendingUploadResult": "Azure.AI.Projects.PendingUploadResponse",
"azure.ai.projects.models.PromptAgentDefinition": "Azure.AI.Projects.PromptAgentDefinition",
"azure.ai.projects.models.PromptAgentDefinitionTextOptions": "Azure.AI.Projects.PromptAgentDefinitionTextOptions",
"azure.ai.projects.models.PromptBasedEvaluatorDefinition": "Azure.AI.Projects.PromptBasedEvaluatorDefinition",
Expand All @@ -228,13 +227,13 @@
"azure.ai.projects.models.Schedule": "Azure.AI.Projects.Schedule",
"azure.ai.projects.models.ScheduleRun": "Azure.AI.Projects.ScheduleRun",
"azure.ai.projects.models.SessionDirectoryEntry": "Azure.AI.Projects.SessionDirectoryEntry",
"azure.ai.projects.models.SessionDirectoryListResponse": "Azure.AI.Projects.SessionDirectoryListResponse",
"azure.ai.projects.models.SessionFileWriteResponse": "Azure.AI.Projects.SessionFileWriteResponse",
"azure.ai.projects.models.SessionDirectoryListResult": "Azure.AI.Projects.SessionDirectoryListResponse",
"azure.ai.projects.models.SessionFileWriteResult": "Azure.AI.Projects.SessionFileWriteResponse",
"azure.ai.projects.models.SessionLogEvent": "Azure.AI.Projects.SessionLogEvent",
"azure.ai.projects.models.SharepointGroundingToolParameters": "Azure.AI.Projects.SharepointGroundingToolParameters",
"azure.ai.projects.models.SharepointPreviewTool": "Azure.AI.Projects.SharepointPreviewTool",
"azure.ai.projects.models.SimpleQnADataGenerationJobOptions": "Azure.AI.Projects.SimpleQnADataGenerationJobOptions",
"azure.ai.projects.models.SkillObject": "Azure.AI.Projects.SkillObject",
"azure.ai.projects.models.SkillDetails": "Azure.AI.Projects.SkillObject",
"azure.ai.projects.models.SkillReferenceParam": "OpenAI.SkillReferenceParam",
"azure.ai.projects.models.ToolChoiceParam": "OpenAI.ToolChoiceParam",
"azure.ai.projects.models.SpecificApplyPatchParam": "OpenAI.SpecificApplyPatchParam",
Expand Down Expand Up @@ -281,7 +280,6 @@
"azure.ai.projects.models.WeeklyRecurrenceSchedule": "Azure.AI.Projects.WeeklyRecurrenceSchedule",
"azure.ai.projects.models.WorkflowAgentDefinition": "Azure.AI.Projects.WorkflowAgentDefinition",
"azure.ai.projects.models.WorkIQPreviewTool": "Azure.AI.Projects.WorkIQPreviewTool",
"azure.ai.projects.models.WorkIQPreviewToolParameters": "Azure.AI.Projects.WorkIQPreviewToolParameters",
"azure.ai.projects.models.AgentObjectType": "Azure.AI.Projects.AgentObjectType",
"azure.ai.projects.models.AgentKind": "Azure.AI.Projects.AgentKind",
"azure.ai.projects.models.ToolType": "OpenAI.ToolType",
Expand Down
Loading
Loading