Skip to content

[Storage] File Share Typespec Migration - #50103

Draft
Isabelle (ibrandes) wants to merge 14 commits into
Azure:feature/storage/typespecMigrationfrom
ibrandes:typespecMigration/fileShare
Draft

[Storage] File Share Typespec Migration#50103
Isabelle (ibrandes) wants to merge 14 commits into
Azure:feature/storage/typespecMigrationfrom
ibrandes:typespecMigration/fileShare

Conversation

@ibrandes

Copy link
Copy Markdown
Member

No description provided.

@github-actions github-actions Bot added the Storage Storage Service (Queues, Blobs, Files) label Aug 11, 2026
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
34 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

gunjansingh-msft added a commit that referenced this pull request Aug 17, 2026
Mirrors the File Share migration (PR #50103) so the two libraries share the
same structure:

- Add RequestOptionsHelper that owns request construction (RequestOptions
  building + query params), separate from ModelHelper (response
  transformation). Moves requestOptions/listQueuesRequestOptions/
  addOptionalQueryParam out of ModelHelper.
- Keep the generated impl at the account-scoped service URL and scope each
  queue/message/message-id operation to its resource path per request via
  RequestOptionsHelper.scopeRequestToResourcePath (UrlBuilder.setPath in an
  addRequestCallback), identical to ShareStorageCustomization's approach.
- Delete QueueUrlTrailingSlashPolicy -- the URL is now correct by
  construction, so the trailing-slash-stripping pipeline policy is no longer
  needed.
- getQueueUrl() reconstructs the queue URL from the account base URL +
  queueName (the base URL no longer carries the queue name), matching
  ShareClient.

Difference from File Share: the scoped builders reintroduce the base URL's
account path (present for path-style endpoints like the Azurite emulator's
/devstoreaccount1, empty for account-in-host endpoints). File Share has no
Azurite tests; queue does, and plain setPath(resourcePath) would drop the
account segment.

323 playback tests pass; SpotBugs and revapi clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019uaMNtk1vxEK8FSsfCUTwQ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Storage Storage Service (Queues, Blobs, Files)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant