Skip to content

Commit 4a0d426

Browse files
catalinaperaltacperaltahjeremymengl0lawrencejorgerangel-msft
authored
Migrate Storage Files to TypeSpec (#40710)
* initial tsp * copilot routes and main definition completion * use templates, simplify, docs * fix copilot template updates * more template usage * fix templates * file op templates * add missing template * clean up createPermission * update error def * generate swagger * add auth * fix metadata header and shared quota optional header * standard op suppression and some header fixes * configure tspconfig.yaml * regen the swagger * clean up 200 status code * add docs * more docs * more docs * format * process more operation params * more agent fixes * namespace and other fixes * models clean up * more models clean up * routes.tsp updates * clean up and formatting * add examples dir * swagger checks * v2 structure * regen the swagger * sdk configs and suppressions * format * suppressions * cspell * comment out sdk configs until migration work * breaking changes check * address breaking changes * breaking changes check * make date header private * format * misc fixes * fix error def * fix file type param * header fixes * accuracy fixes * update constant * breaking changes check * fix template * fix enum * misc fixes * improve accuracy * add paging * remove shareName, directoryName, fileName * JS: customization * JS: enable emitter options * Add LeaseTimeResponseHeader and update routes to use it - rename leaseTime to leaseTimeInSeconds for JS * Add LeaseActionParameter and refactor code * Add client option for metadata headers and update metadata alias for multiple languages * Add experimental extensible enums option to JS emitter configuration * Add client name mapping for signedDelegatedUserTenantId in UserDelegationKey * rename "mode" => "fileMode" to match swagger * Add legacy pageable disabling for listHandles in Directory and File * Rename to match swagger client names fileCopyModeCopyMode => fileModeCopyMode fileCopyOwnerCopyMode => fileOwnerCopyMode * Remove client name mappings for HandleItem properties in FileStorage client * Rename numberOfHandlesFailed to numberOfHandlesFailedToClose in Directory and File interfaces * wip -revert * JS adjust renames * Add CopyStatus enum and update copyStatus type in File interface * Update fileLastWriteTime type to utcDateTime and add RFC 7231 encoding * Add AllowTrailingDotParameter to File interface * Rename sourceAllowTrailingDot to allowSourceTrailingDot in AllowTrailingDotParameter alias * Add LeaseActionParameter to Share interface operations * Renames based on x-ms-client-name in swagger * remove @route("?comp=copy") from startCopy operation the rest api doc doesn't have it and it causes mismatch with recordings. https://learn.microsoft.com/en-us/rest/api/storageservices/copy-file * Rename structuredBodyGet and structuredBodyPut to structuredBodyType in File interface to follow swagger client name customization * Undo incorrect JS renames of maxResults * rename contentMd5 => contentMD5 to follow client name customization in swagger. use `bytes` as input type * copy SignedIdentifiers code from Blob * remove lease action names from route path * remove `fromURL` from uploadRangeFromUrl route path * fix xml names - StorageServiceProperties.protocol - ShareProtocolSettings.{Nfs,Smb} * update getAccessPolicy request body to SignedIdentifiers * port renames - structuredBody => structuredBodyType to follow swgger client name - apiVersion => version expected by storage * update list files and directories response by following existing Blob pattern * JS: remove incorrect rename on FileProperty.lastAccessTime * update xml name for Range and ClearRange arrays * rename to match x-ms-client-name in swagger for headers - x-ms-share-max-burst-credits-for-iops - x-ms-share-next-allowed-quota-downgrade-time - x-ms-share-next-allowed-provisioned-iops-downgrade-time - x-ms-share-next-allowed-provisioned-bandwidth-downgrade-time - x-ms-share-provisioned-iops - x-ms-share-provisioned-bandwidth-mibps - x-ms-share-provisioned-ingress-mbps - x-ms-share-provisioned-egress-mbps * update *DowngradeTime data type to utcDatetime * update fileContentMD5 type from string to bytes * update abortCopy route to remove `&copyid` * update etag types and regen * clean up aliases * update range headers and regen swagger * clean up empty routes * update AccessPolicy definition * more AccessPolicy updates * add encoding for date time types * python -> omitSlashFromEmptyRoute * python -> generation * python -> datetime to str * file and upload page optional content_type, alternatetype string python * opt content-type for shareAcl * utcdatetime-> str python * forward to stg102 * reset original swagger * enable csharp generation (#41852) * move inline params to aliases for maintainability * regen the swagger * add client.tsp suppressions and format * format * update readme * go first generation * go clients * csharp: more customizations (#42134) * go customizations * more go renames * more go customizations * update content-type definition * regen the swagger * pytohn -> config * update data time types * increase type format specificity * fix ref and regen * clean up header defs * format * suppression * more header and param clean up * add fixed width encoding * move customization to client.tsp * etag -> python * update props to int32 * clean up customizations * csharp customizations for backcompat (#42431) * add missing headers * rust customizations * update file interface ref * regen the swaggers * format * go customizations * more go customizations * format * make the new namespace opt in * clean up repeat headers * JS: use Dates in FileCreationTimeResponseHeader Co-authored-by: Copilot <copilot@github.com> * JS: namespaces is irrelevant so removing * datetime issue python * typo * fix FileProperty * fix lastmodified * File storage: update keyinfo start and expiry types for accuracy (#42874) * accuracy fixes * add encoding for 7 digit precision * clean up --------- Co-authored-by: catalinaperalta <caperal@microsoft.com> * more type fixes * clean up comments * go time fixes * Go signedDelegatedUserTid * ProvisionedBandwidthMibps * fix doc * RequestID * optionalbody * fix download response headers * remove rust customizations * standardize comments with copilot --------- Co-authored-by: catalinaperalta <caperal@microsoft.com> Co-authored-by: Jeremy Meng <jeremy.ymeng@gmail.com> Co-authored-by: Libba Lawrence <llawrence@microsoft.com> Co-authored-by: Jorge Rangel <102122018+jorgerangel-msft@users.noreply.github.com> Co-authored-by: gracewilcox <graceawilcox@gmail.com> Co-authored-by: Copilot <copilot@github.com>
1 parent d498419 commit 4a0d426

10 files changed

Lines changed: 16684 additions & 0 deletions

File tree

specification/storage/cspell.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,6 @@ overrides:
5050
words:
5151
- hardlink
5252
- symboliclink
53+
- filename: "**/specification/storage/data-plane/FileStorage/*.yaml"
54+
words:
55+
- azfile

0 commit comments

Comments
 (0)